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

Analysis Run

bcd4586e-de87-48ab-b48b-5b7155755114

complete
Chain ID
1
Address
Block Number
Created
Thu, Jan 1, 2026 4:03 PM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Unprotected v6 reinitializer allows arbitrary role assignment and escrow drain
crit 0 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31073 report.consolidate complete 1 / 1 3 months ago
76252 artifact.fetch complete 1 / 3 1 week ago
76253 tool.cast_disasm complete 1 / 3 1 week ago
76254 analysis.bundle complete 1 / 3 1 week ago
76255 capability.graph complete 1 / 3 1 week ago
76256 detector.run complete 1 / 3 1 week ago
76257 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
1
No findings?
no
Summary
Found 1 critical upgradeability issue: the v6 reinitializer is externally callable without access control, enabling role takeover and forged finalizations that can drain escrowed ETH.
View stderr
[codex:915622] OpenAI Codex v0.77.0 (research preview)
[codex:915622] --------
[codex:915622] workdir: /tmp/codex-multi-ohvf7sx5
[codex:915622] model: gpt-5.2-codex
[codex:915622] provider: openai
[codex:915622] approval: never
[codex:915622] sandbox: read-only
[codex:915622] reasoning effort: xhigh
[codex:915622] reasoning summaries: auto
[codex:915622] session id: 019b7a48-ee20-7242-96b3-00a4e4cb09db
[codex:915622] --------
[codex:915622] user
[codex:915622] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:915622] 
[codex:915622] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:915622] 
[codex:915622] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:915622] - Gas inefficiency, code quality, naming, or best practices
[codex:915622] - Theoretical vulnerabilities without a clear extraction path
[codex:915622] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:915622] - Front-running unless it enables theft beyond MEV
[codex:915622] - DoS, griefing, or issues that don't result in attacker profit
[codex:915622] - Missing events, view function issues, or informational findings
[codex:915622] 
[codex:915622] HIGH-VALUE PATTERNS TO HUNT:
[codex:915622] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:915622] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:915622] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:915622] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:915622] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:915622] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:915622] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:915622] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:915622] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:915622] 
[codex:915622] For each finding, you MUST provide:
[codex:915622] 1. Exact file and line numbers of vulnerable code
[codex:915622] 2. Step-by-step exploit transaction sequence
[codex:915622] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:915622] 
[codex:915622] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:915622] 
[codex:915622] Output MUST be valid JSON matching the provided schema.
[codex:915622] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:915622] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:915622] mcp startup: no servers
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Checking for relevant skills**
[codex:915622] exec
[codex:915622] /bin/bash -lc ls in /tmp/codex-multi-ohvf7sx5 succeeded in 5ms:
[codex:915622] AUDIT_BUNDLE.txt
[codex:915622] codex-output-schema.json
[codex:915622] contracts
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Reading AUDIT_BUNDLE.txt**
[codex:915622] exec
[codex:915622] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-ohvf7sx5 succeeded in 5ms:
[codex:915622] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:915622] 
[codex:915622] ================================================================================
[codex:915622] FILE: contracts/contracts/LineaRollup.sol
[codex:915622] ================================================================================
[codex:915622] // SPDX-License-Identifier: AGPL-3.0
[codex:915622] pragma solidity 0.8.26;
[codex:915622] 
[codex:915622] import { Initializable } from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:915622] import { AccessControlUpgradeable } from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:915622] import { L1MessageService } from "./messageService/l1/L1MessageService.sol";
[codex:915622] import { ZkEvmV2 } from "./ZkEvmV2.sol";
[codex:915622] import { ILineaRollup } from "./interfaces/l1/ILineaRollup.sol";
[codex:915622] import { PermissionsManager } from "./lib/PermissionsManager.sol";
[codex:915622] 
[codex:915622] import { Utils } from "./lib/Utils.sol";
[codex:915622] /**
[codex:915622]  * @title Contract to manage cross-chain messaging on L1, L2 data submission, and rollup proof verification.
[codex:915622]  * @author ConsenSys Software Inc.
[codex:915622]  * @custom:security-contact security-report@linea.build
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Investigating withdrawal and claim functions for vulnerabilities**
[codex:915622] exec
[codex:915622] /bin/bash -lc 'rg -n "withdraw|claim|transfer|mint|burn|deposit" contracts/contracts' in /tmp/codex-multi-ohvf7sx5 succeeded in 9ms:
[codex:915622] contracts/contracts/interfaces/IMessageService.sol:17:   * @param _calldata The calldata being passed to the intended recipient when being called on claiming.
[codex:915622] contracts/contracts/interfaces/IMessageService.sol:34:   * @notice Emitted when a message is claimed.
[codex:915622] contracts/contracts/interfaces/IMessageService.sol:35:   * @param _messageHash The indexed hash of the message that was claimed.
[codex:915622] contracts/contracts/interfaces/IMessageService.sol:74:   * @param _value The value to be transferred to the destination address.
[codex:915622] contracts/contracts/interfaces/IMessageService.sol:80:  function claimMessage(
[codex:915622] contracts/contracts/messageService/lib/RateLimiter.sol:19:  uint256 public limitInWei; // max ether to withdraw per period.
[codex:915622] contracts/contracts/messageService/lib/RateLimiter.sol:26:  /// @notice Amounts already withdrawn this period.
[codex:915622] contracts/contracts/messageService/l1/L1MessageManager.sol:21:  /// @notice This maps which message numbers have been claimed to prevent duplicate claiming.
[codex:915622] contracts/contracts/messageService/l1/L1MessageManager.sol:46:   * @notice Set the L2->L1 message as claimed when a user claims a message on L1.
[codex:915622] contracts/contracts/messageService/l1/L1MessageManager.sol:100:   * @notice Checks if the L2->L1 message is claimed or not.
[codex:915622] contracts/contracts/messageService/l1/L1MessageManager.sol:102:   * @return isClaimed Returns whether or not the message with _messageNumber has been claimed.
[codex:915622] contracts/contracts/LineaRollup.sol:396:   * @param _dataEvaluationClaim The data evaluation claim.
[codex:915622] contracts/contracts/LineaRollup.sol:421:   * @param _dataEvaluationClaim The data evaluation claim.
[codex:915622] contracts/contracts/messageService/l1/L1MessageService.sol:39:   * @param _rateLimitAmount The limit allowed for withdrawing the period.
[codex:915622] contracts/contracts/messageService/l1/L1MessageService.sol:85:   * @param _params Collection of claim data with proof and supporting data.
[codex:915622] contracts/contracts/messageService/l1/L1MessageService.sol:87:  function claimMessageWithProof(
[codex:915622] contracts/contracts/messageService/l1/L1MessageService.sol:146:   * @dev The message sender address is set temporarily in the transient storage when claiming.
[codex:915622] contracts/contracts/messageService/l1/L1MessageService.sol:147:   * @return originalSender The message sender address that is stored temporarily in the transient storage when claiming.
[codex:915622] contracts/contracts/interfaces/l1/IL1MessageManager.sol:29:   * @dev This is used externally in the logic for determining which messages belong to which Merkle root when claiming.
[codex:915622] contracts/contracts/interfaces/l1/IL1MessageManager.sol:34:   * @dev Thrown when the message has already been claimed.
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Examining RateLimiter usage**
[codex:915622] exec
[codex:915622] /bin/bash -lc "sed -n '1,200p' contracts/contracts/messageService/lib/RateLimiter.sol" in /tmp/codex-multi-ohvf7sx5 succeeded in 6ms:
[codex:915622] // SPDX-License-Identifier: AGPL-3.0
[codex:915622] pragma solidity >=0.8.19 <=0.8.26;
[codex:915622] 
[codex:915622] import { Initializable } from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:915622] import { AccessControlUpgradeable } from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:915622] import { IRateLimiter } from "../../interfaces/IRateLimiter.sol";
[codex:915622] 
[codex:915622] /**
[codex:915622]  * @title Rate Limiter by period and amount using the block timestamp.
[codex:915622]  * @author ConsenSys Software Inc.
[codex:915622]  * @notice You can use this control numeric limits over a period using timestamp.
[codex:915622]  * @custom:security-contact security-report@linea.build
[codex:915622]  */
[codex:915622] contract RateLimiter is Initializable, IRateLimiter, AccessControlUpgradeable {
[codex:915622]   bytes32 public constant RATE_LIMIT_SETTER_ROLE = keccak256("RATE_LIMIT_SETTER_ROLE");
[codex:915622]   bytes32 public constant USED_RATE_LIMIT_RESETTER_ROLE = keccak256("USED_RATE_LIMIT_RESETTER_ROLE");
[codex:915622] 
[codex:915622]   uint256 public periodInSeconds; // how much time before limit resets.
[codex:915622]   uint256 public limitInWei; // max ether to withdraw per period.
[codex:915622] 
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Planning full AUDIT_BUNDLE review**
[codex:915622] 
[codex:915622] I need to read the entire AUDIT_BUNDLE.txt carefully to spot vulnerabilities since the initial output was truncated. I'll divide the file into smaller segments using line ranges with sed to ensure I don't miss anything, and I'll use ripgrep on file separators to identify contract boundaries for thorough inspection.
[codex:915622] exec
[codex:915622] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-ohvf7sx5 succeeded in 7ms:
[codex:915622] 4:FILE: contracts/contracts/LineaRollup.sol
[codex:915622] 738:FILE: contracts/contracts/ZkEvmV2.sol
[codex:915622] 824:FILE: contracts/contracts/interfaces/IGenericErrors.sol
[codex:915622] 852:FILE: contracts/contracts/interfaces/IMessageService.sol
[codex:915622] 951:FILE: contracts/contracts/interfaces/IPauseManager.sol
[codex:915622] 1052:FILE: contracts/contracts/interfaces/IPermissionsManager.sol
[codex:915622] 1075:FILE: contracts/contracts/interfaces/IRateLimiter.sol
[codex:915622] 1150:FILE: contracts/contracts/interfaces/l1/IL1MessageManager.sol
[codex:915622] 1208:FILE: contracts/contracts/interfaces/l1/IL1MessageManagerV1.sol
[codex:915622] 1226:FILE: contracts/contracts/interfaces/l1/IL1MessageService.sol
[codex:915622] 1288:FILE: contracts/contracts/interfaces/l1/ILineaRollup.sol
[codex:915622] 1646:FILE: contracts/contracts/interfaces/l1/IPlonkVerifier.sol
[codex:915622] 1667:FILE: contracts/contracts/interfaces/l1/IZkEvmV2.sol
[codex:915622] 1705:FILE: contracts/contracts/messageService/l1/L1MessageManager.sol
[codex:915622] 1816:FILE: contracts/contracts/messageService/l1/L1MessageService.sol
[codex:915622] 1972:FILE: contracts/contracts/messageService/l1/TransientStorageReentrancyGuardUpgradeable.sol
[codex:915622] 2026:FILE: contracts/contracts/messageService/l1/v1/L1MessageManagerV1.sol
[codex:915622] 2083:FILE: contracts/contracts/messageService/l1/v1/L1MessageServiceV1.sol
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Opening ZkEvmV2 file**
[codex:915622] exec
[codex:915622] /bin/bash -lc "sed -n '738,900p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ohvf7sx5 succeeded in 5ms:
[codex:915622] FILE: contracts/contracts/ZkEvmV2.sol
[codex:915622] ================================================================================
[codex:915622] // SPDX-License-Identifier: AGPL-3.0
[codex:915622] pragma solidity 0.8.26;
[codex:915622] 
[codex:915622] import { Initializable } from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:915622] import { AccessControlUpgradeable } from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:915622] import { L1MessageServiceV1 } from "./messageService/l1/v1/L1MessageServiceV1.sol";
[codex:915622] import { IZkEvmV2 } from "./interfaces/l1/IZkEvmV2.sol";
[codex:915622] import { IPlonkVerifier } from "./interfaces/l1/IPlonkVerifier.sol";
[codex:915622] /**
[codex:915622]  * @title Contract to manage cross-chain L1 rollup proving.
[codex:915622]  * @author ConsenSys Software Inc.
[codex:915622]  * @custom:security-contact security-report@linea.build
[codex:915622]  */
[codex:915622] abstract contract ZkEvmV2 is Initializable, AccessControlUpgradeable, L1MessageServiceV1, IZkEvmV2 {
[codex:915622]   uint256 internal constant MODULO_R = 21888242871839275222246405745257275088548364400416034343698204186575808495617;
[codex:915622]   bytes32 public constant OPERATOR_ROLE = keccak256("OPERATOR_ROLE");
[codex:915622] 
[codex:915622]   /// @dev DEPRECATED in favor of currentFinalizedState hash.
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Analyzing message claim and finalize security**
[codex:915622] 
[codex:915622] I'm reviewing the LineaRollup functions to spot vulnerabilities like reentrancy or flawed access controls, focusing on message claiming with and without proofs. I’m considering if message numbers or claim tracking mappings could be misused for double claims or replay attacks between legacy and new systems. To clarify, I plan to inspect finalizeBlocks closely to understand how messages from L2 to L1 are finalized and whether deprecated and current claim states overlap or allow exploits. This feels like a crucial step to ensure robust message handling and profit extraction prevention.
[codex:915622] exec
[codex:915622] /bin/bash -lc "sed -n '1,200p' contracts/contracts/LineaRollup.sol" in /tmp/codex-multi-ohvf7sx5 succeeded in 6ms:
[codex:915622] // SPDX-License-Identifier: AGPL-3.0
[codex:915622] pragma solidity 0.8.26;
[codex:915622] 
[codex:915622] import { Initializable } from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:915622] import { AccessControlUpgradeable } from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:915622] import { L1MessageService } from "./messageService/l1/L1MessageService.sol";
[codex:915622] import { ZkEvmV2 } from "./ZkEvmV2.sol";
[codex:915622] import { ILineaRollup } from "./interfaces/l1/ILineaRollup.sol";
[codex:915622] import { PermissionsManager } from "./lib/PermissionsManager.sol";
[codex:915622] 
[codex:915622] import { Utils } from "./lib/Utils.sol";
[codex:915622] /**
[codex:915622]  * @title Contract to manage cross-chain messaging on L1, L2 data submission, and rollup proof verification.
[codex:915622]  * @author ConsenSys Software Inc.
[codex:915622]  * @custom:security-contact security-report@linea.build
[codex:915622]  */
[codex:915622] contract LineaRollup is
[codex:915622]   Initializable,
[codex:915622]   AccessControlUpgradeable,
[codex:915622]   ZkEvmV2,
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Searching LineaRollup for key functions**
[codex:915622] exec
[codex:915622] /bin/bash -lc 'rg -n "finalize|_finalizeBlocks|anchor|claim|withdraw|message" contracts/contracts/LineaRollup.sol' in /tmp/codex-multi-ohvf7sx5 succeeded in 7ms:
[codex:915622] 6:import { L1MessageService } from "./messageService/l1/L1MessageService.sol";
[codex:915622] 86:  /// @notice Contains the most recent finalized shnarf.
[codex:915622] 95:  /// @notice Hash of the L2 computed L1 message number, rolling hash and finalized timestamp.
[codex:915622] 208:   * @param _messageNumber Last finalized L1 message number as part of the feedback loop.
[codex:915622] 209:   * @param _rollingHash Last finalized L1 rolling hash as part of the feedback loop.
[codex:915622] 210:   * @param _lastFinalizedTimestamp Last finalized L2 block timestamp.
[codex:915622] 212:  function setFallbackOperator(uint256 _messageNumber, bytes32 _rollingHash, uint256 _lastFinalizedTimestamp) external {
[codex:915622] 216:    if (currentFinalizedState != _computeLastFinalizedState(_messageNumber, _rollingHash, _lastFinalizedTimestamp)) {
[codex:915622] 219:        _computeLastFinalizedState(_messageNumber, _rollingHash, _lastFinalizedTimestamp)
[codex:915622] 371:   * @param _messageNumber Is the last L2 computed L1 message number in the finalization.
[codex:915622] 376:    uint256 _messageNumber,
[codex:915622] 382:      mstore(mPtr, _messageNumber)
[codex:915622] 396:   * @param _dataEvaluationClaim The data evaluation claim.
[codex:915622] 421:   * @param _dataEvaluationClaim The data evaluation claim.
[codex:915622] 466:  function finalizeBlocks(
[codex:915622] 481:    /// @dev currentFinalizedShnarf is updated in _finalizeBlocks and lastFinalizedShnarf MUST be set beforehand for the transition.
[codex:915622] 484:    bytes32 finalShnarf = _finalizeBlocks(_finalizationData, lastFinalizedBlockNumber);
[codex:915622] 498:   * @notice Internal function to finalize compressed blocks.
[codex:915622] 500:   * @param _lastFinalizedBlock The last finalized block.
[codex:915622] 503:  function _finalizeBlocks(
[codex:915622] exec
[codex:915622] /bin/bash -lc "sed -n '450,750p' contracts/contracts/LineaRollup.sol" in /tmp/codex-multi-ohvf7sx5 succeeded in 5ms:
[codex:915622]     assembly {
[codex:915622]       fieldElements := mload(add(returnData, 0x20))
[codex:915622]       blsCurveModulus := mload(add(returnData, POINT_EVALUATION_RETURN_DATA_LENGTH))
[codex:915622]     }
[codex:915622]     if (fieldElements != POINT_EVALUATION_FIELD_ELEMENTS_LENGTH || blsCurveModulus != BLS_CURVE_MODULUS) {
[codex:915622]       revert PointEvaluationResponseInvalid(fieldElements, blsCurveModulus);
[codex:915622]     }
[codex:915622]   }
[codex:915622] 
[codex:915622]   /**
[codex:915622]    * @notice Finalize compressed blocks with proof.
[codex:915622]    * @dev OPERATOR_ROLE is required to execute.
[codex:915622]    * @param _aggregatedProof The aggregated proof.
[codex:915622]    * @param _proofType The proof type.
[codex:915622]    * @param _finalizationData The full finalization data.
[codex:915622]    */
[codex:915622]   function finalizeBlocks(
[codex:915622]     bytes calldata _aggregatedProof,
[codex:915622]     uint256 _proofType,
[codex:915622]     FinalizationDataV3 calldata _finalizationData
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Identifying unprotected reinitializer vulnerability**
[codex:915622] 
[codex:915622] I'm inspecting a critical issue where the external reinitializer function lacks access control, potentially allowing anyone to call it once after an upgrade and assign themselves operator and verifier roles. This could let an attacker finalize blocks with fake proofs and drain funds by forging message claims, assuming the reinitializer hasn't already been executed by the admin. I'm considering the implications of this role takeover and the trusted status of related libraries in my analysis.
[codex:915622] exec
[codex:915622] /bin/bash -lc "nl -ba contracts/contracts/LineaRollup.sol | sed -n '120,220p'" in /tmp/codex-multi-ohvf7sx5 succeeded in 8ms:
[codex:915622]    120	
[codex:915622]    121	    __PauseManager_init(_initializationData.pauseTypeRoles, _initializationData.unpauseTypeRoles);
[codex:915622]    122	
[codex:915622]    123	    __MessageService_init(_initializationData.rateLimitPeriodInSeconds, _initializationData.rateLimitAmountInWei);
[codex:915622]    124	
[codex:915622]    125	    /**
[codex:915622]    126	     * @dev DEFAULT_ADMIN_ROLE is set for the security council explicitly,
[codex:915622]    127	     * as the permissions init purposefully does not allow DEFAULT_ADMIN_ROLE to be set.
[codex:915622]    128	     */
[codex:915622]    129	    _grantRole(DEFAULT_ADMIN_ROLE, _initializationData.defaultAdmin);
[codex:915622]    130	
[codex:915622]    131	    __Permissions_init(_initializationData.roleAddresses);
[codex:915622]    132	
[codex:915622]    133	    verifiers[0] = _initializationData.defaultVerifier;
[codex:915622]    134	
[codex:915622]    135	    fallbackOperator = _initializationData.fallbackOperator;
[codex:915622]    136	    emit FallbackOperatorAddressSet(msg.sender, _initializationData.fallbackOperator);
[codex:915622]    137	
[codex:915622]    138	    currentL2BlockNumber = _initializationData.initialL2BlockNumber;
[codex:915622]    139	    stateRootHashes[_initializationData.initialL2BlockNumber] = _initializationData.initialStateRootHash;
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Analyzing potential reinitializer risks and access controls**
[codex:915622] exec
[codex:915622] /bin/bash -lc 'rg --files contracts/contracts/lib' in /tmp/codex-multi-ohvf7sx5 succeeded in 9ms:
[codex:915622] contracts/contracts/lib/PermissionsManager.sol
[codex:915622] contracts/contracts/lib/Utils.sol
[codex:915622] contracts/contracts/lib/LineaRollupPauseManager.sol
[codex:915622] contracts/contracts/lib/PauseManager.sol
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Analyzing trusted contract libraries**
[codex:915622] exec
[codex:915622] /bin/bash -lc "sed -n '1,200p' contracts/contracts/lib/PermissionsManager.sol" in /tmp/codex-multi-ohvf7sx5 succeeded in 5ms:
[codex:915622] // SPDX-License-Identifier: AGPL-3.0
[codex:915622] pragma solidity >=0.8.19 <=0.8.26;
[codex:915622] 
[codex:915622] import { Initializable } from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:915622] import { AccessControlUpgradeable } from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:915622] import { IGenericErrors } from "../interfaces/IGenericErrors.sol";
[codex:915622] import { IPermissionsManager } from "../interfaces/IPermissionsManager.sol";
[codex:915622] 
[codex:915622] /**
[codex:915622]  * @title Contract to manage permissions initialization.
[codex:915622]  * @author ConsenSys Software Inc.
[codex:915622]  * @custom:security-contact security-report@linea.build
[codex:915622]  */
[codex:915622] abstract contract PermissionsManager is Initializable, AccessControlUpgradeable, IPermissionsManager, IGenericErrors {
[codex:915622]   /**
[codex:915622]    * @notice Sets permissions for a list of addresses and their roles.
[codex:915622]    * @param _roleAddresses The list of addresses and roles to assign permissions to.
[codex:915622]    */
[codex:915622]   function __Permissions_init(RoleAddress[] calldata _roleAddresses) internal onlyInitializing {
[codex:915622]     for (uint256 i; i < _roleAddresses.length; i++) {
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Analyzing reinitializer access control vulnerability**
[codex:915622] exec
[codex:915622] /bin/bash -lc "nl -ba contracts/contracts/lib/PermissionsManager.sol | sed -n '1,120p'" in /tmp/codex-multi-ohvf7sx5 succeeded in 6ms:
[codex:915622]      1	// SPDX-License-Identifier: AGPL-3.0
[codex:915622]      2	pragma solidity >=0.8.19 <=0.8.26;
[codex:915622]      3	
[codex:915622]      4	import { Initializable } from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:915622]      5	import { AccessControlUpgradeable } from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:915622]      6	import { IGenericErrors } from "../interfaces/IGenericErrors.sol";
[codex:915622]      7	import { IPermissionsManager } from "../interfaces/IPermissionsManager.sol";
[codex:915622]      8	
[codex:915622]      9	/**
[codex:915622]     10	 * @title Contract to manage permissions initialization.
[codex:915622]     11	 * @author ConsenSys Software Inc.
[codex:915622]     12	 * @custom:security-contact security-report@linea.build
[codex:915622]     13	 */
[codex:915622]     14	abstract contract PermissionsManager is Initializable, AccessControlUpgradeable, IPermissionsManager, IGenericErrors {
[codex:915622]     15	  /**
[codex:915622]     16	   * @notice Sets permissions for a list of addresses and their roles.
[codex:915622]     17	   * @param _roleAddresses The list of addresses and roles to assign permissions to.
[codex:915622]     18	   */
[codex:915622]     19	  function __Permissions_init(RoleAddress[] calldata _roleAddresses) internal onlyInitializing {
[codex:915622]     20	    for (uint256 i; i < _roleAddresses.length; i++) {
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Reviewing AUDIT_BUNDLE for vulnerabilities**
[codex:915622] 
[codex:915622] I'll methodically read through the entire AUDIT_BUNDLE file in segments to ensure no other issues besides the critical unprotected reinitializer that allows role hijacking and ETH draining. I want to confirm no alternative exploit paths or overlooked vulnerabilities remain.
[codex:915622] exec
[codex:915622] /bin/bash -lc "sed -n '900,1500p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ohvf7sx5 succeeded in 5ms:
[codex:915622]    */
[codex:915622]   error ValueSentTooLow();
[codex:915622] 
[codex:915622]   /**
[codex:915622]    * @dev Thrown when the destination address reverts.
[codex:915622]    */
[codex:915622]   error MessageSendingFailed(address destination);
[codex:915622] 
[codex:915622]   /**
[codex:915622]    * @dev Thrown when the recipient address reverts.
[codex:915622]    */
[codex:915622]   error FeePaymentFailed(address recipient);
[codex:915622] 
[codex:915622]   /**
[codex:915622]    * @notice Sends a message for transporting from the given chain.
[codex:915622]    * @dev This function should be called with a msg.value = _value + _fee. The fee will be paid on the destination chain.
[codex:915622]    * @param _to The destination address on the destination chain.
[codex:915622]    * @param _fee The message service fee on the origin chain.
[codex:915622]    * @param _calldata The calldata used by the destination message service to call the destination contract.
[codex:915622]    */
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Continuing to read file to completion**
[codex:915622] exec
[codex:915622] /bin/bash -lc "sed -n '1500,2235p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ohvf7sx5 succeeded in 5ms:
[codex:915622]    * @dev Thrown when a blob has been submitted but there is no data for it.
[codex:915622]    */
[codex:915622]   error BlobSubmissionDataEmpty(uint256 emptyBlobIndex);
[codex:915622] 
[codex:915622]   /**
[codex:915622]    * @dev Thrown when the current data was already submitted.
[codex:915622]    */
[codex:915622]   error DataAlreadySubmitted(bytes32 currentDataHash);
[codex:915622] 
[codex:915622]   /**
[codex:915622]    * @dev Thrown when submissionData is empty.
[codex:915622]    */
[codex:915622]   error EmptySubmissionData();
[codex:915622] 
[codex:915622]   /**
[codex:915622]    * @dev Thrown when finalizationData.l1RollingHash does not exist on L1 (Feedback loop).
[codex:915622]    */
[codex:915622]   error L1RollingHashDoesNotExistOnL1(uint256 messageNumber, bytes32 rollingHash);
[codex:915622] 
[codex:915622]   /**
[codex:915622] 
[codex:915622] thinking
[codex:915622] **Composing detailed vulnerability report JSON**
[codex:915622] codex
[codex:915622] {"no_findings":false,"summary":"Found 1 critical upgradeability issue: the v6 reinitializer is externally callable without access control, enabling role takeover and forged finalizations that can drain escrowed ETH.","findings":[{"severity":"critical","category":"upgradeability","title":"Unprotected v6 reinitializer allows arbitrary role assignment and escrow drain","exploit_scenario":"Precondition: the proxy has been upgraded to v6 but `reinitializeLineaRollupV6` has not yet been called. 1) Attacker calls `reinitializeLineaRollupV6` with `_roleAddresses` granting themselves OPERATOR_ROLE, VERIFIER_SETTER_ROLE, RATE_LIMIT_SETTER_ROLE, and USED_RATE_LIMIT_RESETTER_ROLE. 2) Attacker calls `setVerifierAddress` to point a proof type at a malicious verifier that always returns true. 3) Attacker calls `submitDataAsCalldata` to register a shnarf they control, then `finalizeBlocks` with fabricated `_finalizationData` that anchors an L2 Merkle root containing a message paying the attacker. The malicious verifier makes `_verifyProof` pass. 4) Attacker calls `claimMessageWithProof` using that Merkle root/proof to withdraw ETH to themselves, optionally raising/resetting the rate limit first. Profit: up to the full ETH balance held by the message service escrow (bridge funds), limited only by the rate limit unless the attacker also raises it via the granted role.","recommendation":"Gate `reinitializeLineaRollupV6` with an admin role (e.g., `onlyRole(DEFAULT_ADMIN_ROLE)`) or `onlyProxy` + admin checks, and ensure upgrades always use `upgradeToAndCall` so reinitializers are executed atomically.","evidence":"`reinitializeLineaRollupV6` is `external` with no access control and calls `__Permissions_init`, which `_grantRole`s arbitrary roles for caller-supplied addresses.","locations":["contracts/contracts/LineaRollup.sol:155","contracts/contracts/LineaRollup.sol:161","contracts/contracts/lib/PermissionsManager.sol:19","contracts/contracts/lib/PermissionsManager.sol:29"]}]}
[codex:915622] tokens used
[codex:915622] 52,441
[codex:915622] {"no_findings":false,"summary":"Found 1 critical upgradeability issue: the v6 reinitializer is externally callable without access control, enabling role takeover and forged finalizations that can drain escrowed ETH.","findings":[{"severity":"critical","category":"upgradeability","title":"Unprotected v6 reinitializer allows arbitrary role assignment and escrow drain","exploit_scenario":"Precondition: the proxy has been upgraded to v6 but `reinitializeLineaRollupV6` has not yet been called. 1) Attacker calls `reinitializeLineaRollupV6` with `_roleAddresses` granting themselves OPERATOR_ROLE, VERIFIER_SETTER_ROLE, RATE_LIMIT_SETTER_ROLE, and USED_RATE_LIMIT_RESETTER_ROLE. 2) Attacker calls `setVerifierAddress` to point a proof type at a malicious verifier that always returns true. 3) Attacker calls `submitDataAsCalldata` to register a shnarf they control, then `finalizeBlocks` with fabricated `_finalizationData` that anchors an L2 Merkle root containing a message paying the attacker. The malicious verifier makes `_verifyProof` pass. 4) Attacker calls `claimMessageWithProof` using that Merkle root/proof to withdraw ETH to themselves, optionally raising/resetting the rate limit first. Profit: up to the full ETH balance held by the message service escrow (bridge funds), limited only by the rate limit unless the attacker also raises it via the granted role.","recommendation":"Gate `reinitializeLineaRollupV6` with an admin role (e.g., `onlyRole(DEFAULT_ADMIN_ROLE)`) or `onlyProxy` + admin checks, and ensure upgrades always use `upgradeToAndCall` so reinitializers are executed atomically.","evidence":"`reinitializeLineaRollupV6` is `external` with no access control and calls `__Permissions_init`, which `_grantRole`s arbitrary roles for caller-supplied addresses.","locations":["contracts/contracts/LineaRollup.sol:155","contracts/contracts/LineaRollup.sol:161","contracts/contracts/lib/PermissionsManager.sol:19","contracts/contracts/lib/PermissionsManager.sol:29"]}]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-01T16:03:40.492947+00:00",
        "returncode": 0
    },
    "summary": "Found 1 critical upgradeability issue: the v6 reinitializer is externally callable without access control, enabling role takeover and forged finalizations that can drain escrowed ETH.",
    "raw_final": {
        "summary": "Found 1 critical upgradeability issue: the v6 reinitializer is externally callable without access control, enabling role takeover and forged finalizations that can drain escrowed ETH.",
        "findings": [
            {
                "title": "Unprotected v6 reinitializer allows arbitrary role assignment and escrow drain",
                "category": "upgradeability",
                "evidence": "`reinitializeLineaRollupV6` is `external` with no access control and calls `__Permissions_init`, which `_grantRole`s arbitrary roles for caller-supplied addresses.",
                "severity": "critical",
                "locations": [
                    "contracts/contracts/LineaRollup.sol:155",
                    "contracts/contracts/LineaRollup.sol:161",
                    "contracts/contracts/lib/PermissionsManager.sol:19",
                    "contracts/contracts/lib/PermissionsManager.sol:29"
                ],
                "recommendation": "Gate `reinitializeLineaRollupV6` with an admin role (e.g., `onlyRole(DEFAULT_ADMIN_ROLE)`) or `onlyProxy` + admin checks, and ensure upgrades always use `upgradeToAndCall` so reinitializers are executed atomically.",
                "exploit_scenario": "Precondition: the proxy has been upgraded to v6 but `reinitializeLineaRollupV6` has not yet been called. 1) Attacker calls `reinitializeLineaRollupV6` with `_roleAddresses` granting themselves OPERATOR_ROLE, VERIFIER_SETTER_ROLE, RATE_LIMIT_SETTER_ROLE, and USED_RATE_LIMIT_RESETTER_ROLE. 2) Attacker calls `setVerifierAddress` to point a proof type at a malicious verifier that always returns true. 3) Attacker calls `submitDataAsCalldata` to register a shnarf they control, then `finalizeBlocks` with fabricated `_finalizationData` that anchors an L2 Merkle root containing a message paying the attacker. The malicious verifier makes `_verifyProof` pass. 4) Attacker calls `claimMessageWithProof` using that Merkle root/proof to withdraw ETH to themselves, optionally raising/resetting the rate limit first. Profit: up to the full ETH balance held by the message service escrow (bridge funds), limited only by the rate limit unless the attacker also raises it via the granted role."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
9
EXT*/BALANCE
3
Total opcodes
11006
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x049d
0000000c: JUMPI
0000000d: PUSH0
0000000e: CALLDATALOAD
0000000f: PUSH1 0xe0
00000011: SHR
00000012: DUP1
00000013: PUSH4 0x73bd07b7
00000018: GT
00000019: PUSH2 0x026b
0000001c: JUMPI
0000001d: DUP1
0000001e: PUSH4 0xb837dbe9
00000023: GT
00000024: PUSH2 0x0156
00000027: JUMPI
00000028: DUP1
00000029: PUSH4 0xcc5782f6
0000002e: GT
0000002f: PUSH2 0x00d1
00000032: JUMPI
00000033: DUP1
00000034: PUSH4 0xd5d4b835
00000039: GT
0000003a: PUSH2 0x0087
0000003d: JUMPI
0000003e: DUP1
0000003f: PUSH4 0xe196fb5d
00000044: GT
00000045: PUSH2 0x006d
00000048: JUMPI
00000049: DUP1
0000004a: PUSH4 0xe196fb5d
0000004f: EQ
00000050: PUSH2 0x0ea0
00000053: JUMPI
00000054: DUP1
00000055: PUSH4 0xe97a1e9e
0000005a: EQ
0000005b: PUSH2 0x0ebf
0000005e: JUMPI
0000005f: DUP1
00000060: PUSH4 0xf5b541a6
00000065: EQ
00000066: PUSH2 0x0f31
00000069: JUMPI
0000006a: PUSH0
0000006b: DUP1
0000006c: REVERT
0000006d: JUMPDEST
0000006e: DUP1
0000006f: PUSH4 0xd5d4b835
00000074: EQ
00000075: PUSH2 0x0e57
00000078: JUMPI
00000079: DUP1
0000007a: PUSH4 0xd722bbfc
0000007f: EQ
00000080: PUSH2 0x0e6d
00000083: JUMPI
00000084: PUSH0
00000085: DUP1
00000086: REVERT
00000087: JUMPDEST
00000088: DUP1
00000089: PUSH4 0xcd9b9e9a
0000008e: GT
0000008f: PUSH2 0x00b7
00000092: JUMPI
00000093: DUP1
00000094: PUSH4 0xcd9b9e9a
00000099: EQ
0000009a: PUSH2 0x0e02
0000009d: JUMPI
0000009e: DUP1
0000009f: PUSH4 0xcf5b2764
000000a4: EQ
000000a5: PUSH2 0x0e18
000000a8: JUMPI
000000a9: DUP1
000000aa: PUSH4 0xd547741f
000000af: EQ
000000b0: PUSH2 0x0e38
000000b3: JUMPI
000000b4: PUSH0
000000b5: DUP1
000000b6: REVERT
000000b7: JUMPDEST
000000b8: DUP1
000000b9: PUSH4 0xcc5782f6
000000be: EQ
000000bf: PUSH2 0x0da1
000000c2: JUMPI
000000c3: DUP1
000000c4: PUSH4 0xcc6f7251
000000c9: EQ
000000ca: PUSH2 0x0dcf
000000cd: JUMPI
000000ce: PUSH0
000000cf: DUP1
000000d0: REVERT
000000d1: JUMPDEST
000000d2: DUP1
000000d3: PUSH4 0xbf3e7505
000000d8: GT
000000d9: PUSH2 0x0126
000000dc: JUMPI
000000dd: DUP1
000000de: PUSH4 0xc0c4e584
000000e3: GT
000000e4: PUSH2 0x010c
000000e7: JUMPI
000000e8: DUP1
000000e9: PUSH4 0xc0c4e584
000000ee: EQ
000000ef: PUSH2 0x0d4e
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0xc1dc0f07
000000f9: EQ
000000fa: PUSH2 0x0d6d
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0xc2116974
00000104: EQ
00000105: PUSH2 0x0d82
00000108: JUMPI
00000109: PUSH0
0000010a: DUP1
0000010b: REVERT
0000010c: JUMPDEST
0000010d: DUP1
0000010e: PUSH4 0xbf3e7505
00000113: EQ
00000114: PUSH2 0x0d06
00000117: JUMPI
00000118: DUP1
00000119: PUSH4 0xc0729ab1
0000011e: EQ
0000011f: PUSH2 0x0d39
00000122: JUMPI
00000123: PUSH0
00000124: DUP1
00000125: REVERT
00000126: JUMPDEST
00000127: DUP1
00000128: PUSH4 0xb837dbe9
0000012d: EQ
0000012e: PUSH2 0x0c80
00000131: JUMPI
00000132: DUP1
00000133: PUSH4 0xb9174ba3
00000138: EQ
00000139: PUSH2 0x0c95
0000013c: JUMPI
0000013d: DUP1
0000013e: PUSH4 0xbc61e733
00000143: EQ
00000144: PUSH2 0x0cc8
00000147: JUMPI
00000148: DUP1
00000149: PUSH4 0xbcc3003d
0000014e: EQ
0000014f: PUSH2 0x0ce7
00000152: JUMPI
00000153: PUSH0
00000154: DUP1
00000155: REVERT
00000156: JUMPDEST
00000157: DUP1
00000158: PUSH4 0x9ac25d08
0000015d: GT
0000015e: PUSH2 0x01e6
00000161: JUMPI
00000162: DUP1
00000163: PUSH4 0xa98e773d
00000168: GT
00000169: PUSH2 0x01b6
0000016c: JUMPI
0000016d: DUP1
0000016e: PUSH4 0xad422ff0
00000173: GT
00000174: PUSH2 0x019c
00000177: JUMPI
00000178: DUP1
00000179: PUSH4 0xad422ff0
0000017e: EQ
0000017f: PUSH2 0x0c24
00000182: JUMPI
00000183: DUP1
00000184: PUSH4 0xaea4f745
00000189: EQ
0000018a: PUSH2 0x0c39
0000018d: JUMPI
0000018e: DUP1
0000018f: PUSH4 0xb59faa60
00000194: EQ
00000195: PUSH2 0x0c4d
00000198: JUMPI
00000199: PUSH0
0000019a: DUP1
0000019b: REVERT
0000019c: JUMPDEST
0000019d: DUP1
0000019e: PUSH4 0xa98e773d
000001a3: EQ
000001a4: PUSH2 0x0bd0
000001a7: JUMPI
000001a8: DUP1
000001a9: PUSH4 0xac1eff68
000001ae: EQ
000001af: PUSH2 0x0bef
000001b2: JUMPI
000001b3: PUSH0
000001b4: DUP1
000001b5: REVERT
000001b6: JUMPDEST
000001b7: DUP1
000001b8: PUSH4 0x9ac25d08
000001bd: EQ
000001be: PUSH2 0x0b58
000001c1: JUMPI
000001c2: DUP1
000001c3: PUSH4 0x9ee8b211
000001c8: EQ
000001c9: PUSH2 0x0b8b
000001cc: JUMPI
000001cd: DUP1
000001ce: PUSH4 0x9f3ce55a
000001d3: EQ
000001d4: PUSH2 0x0baa
000001d7: JUMPI
000001d8: DUP1
000001d9: PUSH4 0xa217fddf
000001de: EQ
000001df: PUSH2 0x0bbd
000001e2: JUMPI
000001e3: PUSH0
000001e4: DUP1
000001e5: REVERT
000001e6: JUMPDEST
000001e7: DUP1
000001e8: PUSH4 0x914e57eb
000001ed: GT
000001ee: PUSH2 0x023b
000001f1: JUMPI
000001f2: DUP1
000001f3: PUSH4 0x921b278e
000001f8: GT
000001f9: PUSH2 0x0221
000001fc: JUMPI
000001fd: DUP1
000001fe: PUSH4 0x921b278e
00000203: EQ
00000204: PUSH2 0x0b23
00000207: JUMPI
00000208: DUP1
00000209: PUSH4 0x986fcddd
0000020e: EQ
0000020f: PUSH2 0x0a41
00000212: JUMPI
00000213: DUP1
00000214: PUSH4 0x99467a35
00000219: EQ
0000021a: PUSH2 0x0b39
0000021d: JUMPI
0000021e: PUSH0
0000021f: DUP1
00000220: REVERT
00000221: JUMPDEST
00000222: DUP1
00000223: PUSH4 0x914e57eb
00000228: EQ
00000229: PUSH2 0x0ab3
0000022c: JUMPI
0000022d: DUP1
0000022e: PUSH4 0x91d14854
00000233: EQ
00000234: PUSH2 0x0adf
00000237: JUMPI
00000238: PUSH0
00000239: DUP1
0000023a: REVERT
0000023b: JUMPDEST
0000023c: DUP1
0000023d: PUSH4 0x73bd07b7
00000242: EQ
00000243: PUSH2 0x0a2d
00000246: JUMPI
00000247: DUP1
00000248: PUSH4 0x7d1e8c55
0000024d: EQ
0000024e: PUSH2 0x0a41
00000251: JUMPI
00000252: DUP1
00000253: PUSH4 0x8be745d1
00000258: EQ
00000259: PUSH2 0x0a54
0000025c: JUMPI
0000025d: DUP1
0000025e: PUSH4 0x8de49487
00000263: EQ
00000264: PUSH2 0x0a80
00000267: JUMPI
00000268: PUSH0
00000269: DUP1
0000026a: REVERT
0000026b: JUMPDEST
0000026c: DUP1
0000026d: PUSH4 0x4cdd389b
00000272: GT
00000273: PUSH2 0x038b
00000276: JUMPI
00000277: DUP1
00000278: PUSH4 0x60e83cf3
0000027d: GT
0000027e: PUSH2 0x0306
00000281: JUMPI
00000282: DUP1
00000283: PUSH4 0x67e404ce
00000288: GT
00000289: PUSH2 0x02d6
0000028c: JUMPI
0000028d: DUP1
0000028e: PUSH4 0x695378f5
00000293: GT
00000294: PUSH2 0x02bc
00000297: JUMPI
00000298: DUP1
00000299: PUSH4 0x695378f5
0000029e: EQ
0000029f: PUSH2 0x09b1
000002a2: JUMPI
000002a3: DUP1
000002a4: PUSH4 0x6a906b80
000002a9: EQ
000002aa: PUSH2 0x09c7
000002ad: JUMPI
000002ae: DUP1
000002af: PUSH4 0x6e673843
000002b4: EQ
000002b5: PUSH2 0x09fa
000002b8: JUMPI
000002b9: PUSH0
000002ba: DUP1
000002bb: REVERT
000002bc: JUMPDEST
000002bd: DUP1
000002be: PUSH4 0x67e404ce
000002c3: EQ
000002c4: PUSH2 0x0966
000002c7: JUMPI
000002c8: DUP1
000002c9: PUSH4 0x6854f6bc
000002ce: EQ
000002cf: PUSH2 0x0992
000002d2: JUMPI
000002d3: PUSH0
000002d4: DUP1
000002d5: REVERT
000002d6: JUMPDEST
000002d7: DUP1
000002d8: PUSH4 0x60e83cf3
000002dd: EQ
000002de: PUSH2 0x08bc
000002e1: JUMPI
000002e2: DUP1
000002e3: PUSH4 0x63213155
000002e8: EQ
000002e9: PUSH2 0x08e8
000002ec: JUMPI
000002ed: DUP1
000002ee: PUSH4 0x6463fb2a
000002f3: EQ
000002f4: PUSH2 0x091b
000002f7: JUMPI
000002f8: DUP1
000002f9: PUSH4 0x66f96e98
000002fe: EQ
000002ff: PUSH2 0x093a
00000302: JUMPI
00000303: PUSH0
00000304: DUP1
00000305: REVERT
00000306: JUMPDEST
00000307: DUP1
00000308: PUSH4 0x58794456
0000030d: GT
0000030e: PUSH2 0x035b
00000311: JUMPI
00000312: DUP1
00000313: PUSH4 0x5c721a0c
00000318: GT
00000319: PUSH2 0x0341
0000031c: JUMPI
0000031d: DUP1
0000031e: PUSH4 0x5c721a0c
00000323: EQ
00000324: PUSH2 0x0839
00000327: JUMPI
00000328: DUP1
00000329: PUSH4 0x5ed73ceb
0000032e: EQ
0000032f: PUSH2 0x0864
00000332: JUMPI
00000333: DUP1
00000334: PUSH4 0x6078bfd8
00000339: EQ
0000033a: PUSH2 0x0890
0000033d: JUMPI
0000033e: PUSH0
0000033f: DUP1
00000340: REVERT
00000341: JUMPDEST
00000342: DUP1
00000343: PUSH4 0x58794456
00000348: EQ
00000349: PUSH2 0x0824
0000034c: JUMPI
0000034d: DUP1
0000034e: PUSH4 0x5b7eb4bd
00000353: EQ
00000354: PUSH2 0x0742
00000357: JUMPI
00000358: PUSH0
00000359: DUP1
0000035a: REVERT
0000035b: JUMPDEST
0000035c: DUP1
0000035d: PUSH4 0x4cdd389b
00000362: EQ
00000363: PUSH2 0x0787
00000366: JUMPI
00000367: DUP1
00000368: PUSH4 0x5230eef2
0000036d: EQ
0000036e: PUSH2 0x07b3
00000371: JUMPI
00000372: DUP1
00000373: PUSH4 0x557eac73
00000378: EQ
00000379: PUSH2 0x07e6
0000037c: JUMPI
0000037d: DUP1
0000037e: PUSH4 0x5603c65f
00000383: EQ
00000384: PUSH2 0x0805
00000387: JUMPI
00000388: PUSH0
00000389: DUP1
0000038a: REVERT
0000038b: JUMPDEST
0000038c: DUP1
0000038d: PUSH4 0x28958174
00000392: GT
00000393: PUSH2 0x041b
00000396: JUMPI
00000397: DUP1
00000398: PUSH4 0x38b90333
0000039d: GT
0000039e: PUSH2 0x03eb
000003a1: JUMPI
000003a2: DUP1
000003a3: PUSH4 0x3fc08b65
000003a8: GT
000003a9: PUSH2 0x03d1
000003ac: JUMPI
000003ad: DUP1
000003ae: PUSH4 0x3fc08b65
000003b3: EQ
000003b4: PUSH2 0x0717
000003b7: JUMPI
000003b8: DUP1
000003b9: PUSH4 0x48922ab7
000003be: EQ
000003bf: PUSH2 0x0742
000003c2: JUMPI
000003c3: DUP1
000003c4: PUSH4 0x491e0936
000003c9: EQ
000003ca: PUSH2 0x0768
000003cd: JUMPI
000003ce: PUSH0
000003cf: DUP1
000003d0: REVERT
000003d1: JUMPDEST
000003d2: DUP1
000003d3: PUSH4 0x38b90333
000003d8: EQ
000003d9: PUSH2 0x068f
000003dc: JUMPI
000003dd: DUP1
000003de: PUSH4 0x3b12eccb
000003e3: EQ
000003e4: PUSH2 0x06e4
000003e7: JUMPI
000003e8: PUSH0
000003e9: DUP1
000003ea: REVERT
000003eb: JUMPDEST
000003ec: DUP1
000003ed: PUSH4 0x28958174
000003f2: EQ
000003f3: PUSH2 0x061c
000003f6: JUMPI
000003f7: DUP1
000003f8: PUSH4 0x2c70645c
000003fd: EQ
000003fe: PUSH2 0x063b
00000401: JUMPI
00000402: DUP1
00000403: PUSH4 0x2f2ff15d
00000408: EQ
00000409: PUSH2 0x0651
0000040c: JUMPI
0000040d: DUP1
0000040e: PUSH4 0x36568abe
00000413: EQ
00000414: PUSH2 0x0670
00000417: JUMPI
00000418: PUSH0
00000419: DUP1
0000041a: REVERT
0000041b: JUMPDEST
0000041c: DUP1
0000041d: PUSH4 0x12d3fa9a
00000422: GT
00000423: PUSH2 0x0470
00000426: JUMPI
00000427: DUP1
00000428: PUSH4 0x1f443da0
0000042d: GT
0000042e: PUSH2 0x0456
00000431: JUMPI
00000432: DUP1
00000433: PUSH4 0x1f443da0
00000438: EQ
00000439: PUSH2 0x0596
0000043c: JUMPI
0000043d: DUP1
0000043e: PUSH4 0x2130d812
00000443: EQ
00000444: PUSH2 0x05c2
00000447: JUMPI
00000448: DUP1
00000449: PUSH4 0x248a9ca3
0000044e: EQ
0000044f: PUSH2 0x05ee
00000452: JUMPI
00000453: PUSH0
00000454: DUP1
00000455: REVERT
00000456: JUMPDEST
00000457: DUP1
00000458: PUSH4 0x12d3fa9a
0000045d: EQ
0000045e: PUSH2 0x054d
00000461: JUMPI
00000462: DUP1
00000463: PUSH4 0x1e2ff94f
00000468: EQ
00000469: PUSH2 0x0580
0000046c: JUMPI
0000046d: PUSH0
0000046e: DUP1
0000046f: REVERT
00000470: JUMPDEST
00000471: DUP1
00000472: PUSH4 0x01ffc9a7
00000477: EQ
00000478: PUSH2 0x04a1
0000047b: JUMPI
0000047c: DUP1
0000047d: PUSH4 0x03134d1d
00000482: EQ
00000483: PUSH2 0x04d5
00000486: JUMPI
00000487: DUP1
00000488: PUSH4 0x05861180
0000048d: EQ
0000048e: PUSH2 0x0516
00000491: JUMPI
00000492: DUP1
00000493: PUSH4 0x1065a399
00000498: EQ
00000499: PUSH2 0x052c
0000049c: JUMPI
0000049d: JUMPDEST
0000049e: PUSH0
0000049f: DUP1
000004a0: REVERT
000004a1: JUMPDEST
000004a2: CALLVALUE
000004a3: DUP1
000004a4: ISZERO
000004a5: PUSH2 0x04ac
000004a8: JUMPI
000004a9: PUSH0
000004aa: DUP1
000004ab: REVERT
000004ac: JUMPDEST
000004ad: POP
000004ae: PUSH2 0x04c0
000004b1: PUSH2 0x04bb
000004b4: CALLDATASIZE
000004b5: PUSH1 0x04
000004b7: PUSH2 0x47a5
000004ba: JUMP
000004bb: JUMPDEST
000004bc: PUSH2 0x0f64
000004bf: JUMP
000004c0: JUMPDEST
000004c1: PUSH1 0x40
000004c3: MLOAD
000004c4: SWAP1
000004c5: ISZERO
000004c6: ISZERO
000004c7: DUP2
000004c8: MSTORE
000004c9: PUSH1 0x20
000004cb: ADD
000004cc: JUMPDEST
000004cd: PUSH1 0x40
000004cf: MLOAD
000004d0: DUP1
000004d1: SWAP2
000004d2: SUB
000004d3: SWAP1
000004d4: RETURN
000004d5: JUMPDEST
000004d6: CALLVALUE
000004d7: DUP1
000004d8: ISZERO
000004d9: PUSH2 0x04e0
000004dc: JUMPI
000004dd: PUSH0
000004de: DUP1
000004df: REVERT
000004e0: JUMPDEST
000004e1: POP
000004e2: PUSH2 0x0508
000004e5: PUSH32 0x1ab87f7458c0e3d07e9881c14ee67f0141703614fd48ea5b15ed987e5f4b030e
00000506: DUP2
00000507: JUMP
00000508: JUMPDEST
00000509: PUSH1 0x40
0000050b: MLOAD
0000050c: SWAP1
0000050d: DUP2
0000050e: MSTORE
0000050f: PUSH1 0x20
00000511: ADD
00000512: PUSH2 0x04cc
00000515: JUMP
00000516: JUMPDEST
00000517: CALLVALUE
00000518: DUP1
00000519: ISZERO
0000051a: PUSH2 0x0521
0000051d: JUMPI
0000051e: PUSH0
0000051f: DUP1
00000520: REVERT
00000521: JUMPDEST
00000522: POP
00000523: PUSH2 0x0508
00000526: PUSH2 0x01bb
00000529: SLOAD
0000052a: DUP2
0000052b: JUMP
0000052c: JUMPDEST
0000052d: CALLVALUE
0000052e: DUP1
0000052f: ISZERO
00000530: PUSH2 0x0537
00000533: JUMPI
00000534: PUSH0
00000535: DUP1
00000536: REVERT
00000537: JUMPDEST
00000538: POP
00000539: PUSH2 0x054b
0000053c: PUSH2 0x0546
0000053f: CALLDATASIZE
00000540: PUSH1 0x04
00000542: PUSH2 0x47e4
00000545: JUMP
00000546: JUMPDEST
00000547: PUSH2 0x0ffc
0000054a: JUMP
0000054b: JUMPDEST
0000054c: STOP
0000054d: JUMPDEST
0000054e: CALLVALUE
0000054f: DUP1
00000550: ISZERO
00000551: PUSH2 0x0558
00000554: JUMPI
00000555: PUSH0
00000556: DUP1
00000557: REVERT
00000558: JUMPDEST
00000559: POP
0000055a: PUSH2 0x0508
0000055d: PUSH32 0x67c2dca7476ee0fe1dd3cba13428c6760bfe2599a6dfe26a9ad7ef27317c6e77
0000057e: DUP2
0000057f: JUMP
00000580: JUMPDEST
00000581: CALLVALUE
00000582: DUP1
00000583: ISZERO
00000584: PUSH2 0x058b
00000587: JUMPI
00000588: PUSH0
00000589: DUP1
0000058a: REVERT
0000058b: JUMPDEST
0000058c: POP
0000058d: PUSH2 0x0508
00000590: PUSH2 0x0118
00000593: SLOAD
00000594: DUP2
00000595: JUMP
00000596: JUMPDEST
00000597: CALLVALUE
00000598: DUP1
00000599: ISZERO
0000059a: PUSH2 0x05a1
0000059d: JUMPI
0000059e: PUSH0
0000059f: DUP1
000005a0: REVERT
000005a1: JUMPDEST
000005a2: POP
000005a3: PUSH2 0x0508
000005a6: PUSH2 0x05b0
000005a9: CALLDATASIZE
000005aa: PUSH1 0x04
000005ac: PUSH2 0x4802
000005af: JUMP
000005b0: JUMPDEST
000005b1: PUSH2 0x01b9
000005b4: PUSH1 0x20
000005b6: MSTORE
000005b7: PUSH0
000005b8: SWAP1
000005b9: DUP2
000005ba: MSTORE
000005bb: PUSH1 0x40
000005bd: SWAP1
000005be: KECCAK256
000005bf: SLOAD
000005c0: DUP2
000005c1: JUMP
000005c2: JUMPDEST
000005c3: CALLVALUE
000005c4: DUP1
000005c5: ISZERO
000005c6: PUSH2 0x05cd
000005c9: JUMPI
000005ca: PUSH0
000005cb: DUP1
000005cc: REVERT
000005cd: JUMPDEST
000005ce: POP
000005cf: PUSH2 0x0508
000005d2: PUSH2 0x05dc
000005d5: CALLDATASIZE
000005d6: PUSH1 0x04
000005d8: PUSH2 0x4802
000005db: JUMP
000005dc: JUMPDEST
000005dd: PUSH2 0x01be
000005e0: PUSH1 0x20
000005e2: MSTORE
000005e3: PUSH0
000005e4: SWAP1
000005e5: DUP2
000005e6: MSTORE
000005e7: PUSH1 0x40
000005e9: SWAP1
000005ea: KECCAK256
000005eb: SLOAD
000005ec: DUP2
000005ed: JUMP
000005ee: JUMPDEST
000005ef: CALLVALUE
000005f0: DUP1
000005f1: ISZERO
000005f2: PUSH2 0x05f9
000005f5: JUMPI
000005f6: PUSH0
000005f7: DUP1
000005f8: REVERT
000005f9: JUMPDEST
000005fa: POP
000005fb: PUSH2 0x0508
000005fe: PUSH2 0x0608
00000601: CALLDATASIZE
00000602: PUSH1 0x04
00000604: PUSH2 0x4802
00000607: JUMP
00000608: JUMPDEST
00000609: PUSH0
0000060a: SWAP1
0000060b: DUP2
0000060c: MSTORE
0000060d: PUSH1 0x65
0000060f: PUSH1 0x20
00000611: MSTORE
00000612: PUSH1 0x40
00000614: SWAP1
00000615: KECCAK256
00000616: PUSH1 0x01
00000618: ADD
00000619: SLOAD
0000061a: SWAP1
0000061b: JUMP
0000061c: JUMPDEST
0000061d: CALLVALUE
0000061e: DUP1
0000061f: ISZERO
00000620: PUSH2 0x0627
00000623: JUMPI
00000624: PUSH0
00000625: DUP1
00000626: REVERT
00000627: JUMPDEST
00000628: POP
00000629: PUSH2 0x054b
0000062c: PUSH2 0x0636
0000062f: CALLDATASIZE
00000630: PUSH1 0x04
00000632: PUSH2 0x4802
00000635: JUMP
00000636: JUMPDEST
00000637: PUSH2 0x10f8
0000063a: JUMP
0000063b: JUMPDEST
0000063c: CALLVALUE
0000063d: DUP1
0000063e: ISZERO
0000063f: PUSH2 0x0646
00000642: JUMPI
00000643: PUSH0
00000644: DUP1
00000645: REVERT
00000646: JUMPDEST
00000647: POP
00000648: PUSH2 0x0508
0000064b: PUSH2 0x0183
0000064e: SLOAD
0000064f: DUP2
00000650: JUMP
00000651: JUMPDEST
00000652: CALLVALUE
00000653: DUP1
00000654: ISZERO
00000655: PUSH2 0x065c
00000658: JUMPI
00000659: PUSH0
0000065a: DUP1
0000065b: REVERT
0000065c: JUMPDEST
0000065d: POP
0000065e: PUSH2 0x054b
00000661: PUSH2 0x066b
00000664: CALLDATASIZE
00000665: PUSH1 0x04
00000667: PUSH2 0x482d
0000066a: JUMP
0000066b: JUMPDEST
0000066c: PUSH2 0x11ab
0000066f: JUMP
00000670: JUMPDEST
00000671: CALLVALUE
00000672: DUP1
00000673: ISZERO
00000674: PUSH2 0x067b
00000677: JUMPI
00000678: PUSH0
00000679: DUP1
0000067a: REVERT
0000067b: JUMPDEST
0000067c: POP
0000067d: PUSH2 0x054b
00000680: PUSH2 0x068a
00000683: CALLDATASIZE
00000684: PUSH1 0x04
00000686: PUSH2 0x482d
00000689: JUMP
0000068a: JUMPDEST
0000068b: PUSH2 0x11d4
0000068e: JUMP
0000068f: JUMPDEST
00000690: CALLVALUE
00000691: DUP1
00000692: ISZERO
00000693: PUSH2 0x069a
00000696: JUMPI
00000697: PUSH0
00000698: DUP1
00000699: REVERT
0000069a: JUMPDEST
0000069b: POP
0000069c: PUSH2 0x06d7
0000069f: PUSH1 0x40
000006a1: MLOAD
000006a2: DUP1
000006a3: PUSH1 0x40
000006a5: ADD
000006a6: PUSH1 0x40
000006a8: MSTORE
000006a9: DUP1
000006aa: PUSH1 0x03
000006ac: DUP2
000006ad: MSTORE
000006ae: PUSH1 0x20
000006b0: ADD
000006b1: PUSH32 0x362e300000000000000000000000000000000000000000000000000000000000
000006d2: DUP2
000006d3: MSTORE
000006d4: POP
000006d5: DUP2
000006d6: JUMP
000006d7: JUMPDEST
000006d8: PUSH1 0x40
000006da: MLOAD
000006db: PUSH2 0x04cc
000006de: SWAP2
000006df: SWAP1
000006e0: PUSH2 0x485b
000006e3: JUMP
000006e4: JUMPDEST
000006e5: CALLVALUE
000006e6: DUP1
000006e7: ISZERO
000006e8: PUSH2 0x06ef
000006eb: JUMPI
000006ec: PUSH0
000006ed: DUP1
000006ee: REVERT
000006ef: JUMPDEST
000006f0: POP
000006f1: PUSH2 0x0508
000006f4: PUSH32 0xb6cc65f42901ed602aec1619cc1ead29d487cd489094a37615153eaeb991d770
00000715: DUP2
00000716: JUMP
00000717: JUMPDEST
00000718: CALLVALUE
00000719: DUP1
0000071a: ISZERO
0000071b: PUSH2 0x0722
0000071e: JUMPI
0000071f: PUSH0
00000720: DUP1
00000721: REVERT
00000722: JUMPDEST
00000723: POP
00000724: PUSH2 0x0508
00000727: PUSH2 0x0731
0000072a: CALLDATASIZE
0000072b: PUSH1 0x04
0000072d: PUSH2 0x4802
00000730: JUMP
00000731: JUMPDEST
00000732: PUSH1 0xa5
00000734: PUSH1 0x20
00000736: MSTORE
00000737: PUSH0
00000738: SWAP1
00000739: DUP2
0000073a: MSTORE
0000073b: PUSH1 0x40
0000073d: SWAP1
0000073e: KECCAK256
0000073f: SLOAD
00000740: DUP2
00000741: JUMP
00000742: JUMPDEST
00000743: CALLVALUE
00000744: DUP1
00000745: ISZERO
00000746: PUSH2 0x074d
00000749: JUMPI
0000074a: PUSH0
0000074b: DUP1
0000074c: REVERT
0000074d: JUMPDEST
0000074e: POP
0000074f: PUSH2 0x0756
00000752: PUSH1 0x01
00000754: DUP2
00000755: JUMP
00000756: JUMPDEST
00000757: PUSH1 0x40
00000759: MLOAD
0000075a: PUSH1 0xff
0000075c: SWAP1
0000075d: SWAP2
0000075e: AND
0000075f: DUP2
00000760: MSTORE
00000761: PUSH1 0x20
00000763: ADD
00000764: PUSH2 0x04cc
00000767: JUMP
00000768: JUMPDEST
00000769: CALLVALUE
0000076a: DUP1
0000076b: ISZERO
0000076c: PUSH2 0x0773
0000076f: JUMPI
00000770: PUSH0
00000771: DUP1
00000772: REVERT
00000773: JUMPDEST
00000774: POP
00000775: PUSH2 0x054b
00000778: PUSH2 0x0782
0000077b: CALLDATASIZE
0000077c: PUSH1 0x04
0000077e: PUSH2 0x48d5
00000781: JUMP
00000782: JUMPDEST
00000783: PUSH2 0x122b
00000786: JUMP
00000787: JUMPDEST
00000788: CALLVALUE
00000789: DUP1
0000078a: ISZERO
0000078b: PUSH2 0x0792
0000078e: JUMPI
0000078f: PUSH0
00000790: DUP1
00000791: REVERT
00000792: JUMPDEST
00000793: POP
00000794: PUSH2 0x0508
00000797: PUSH2 0x07a1
0000079a: CALLDATASIZE
0000079b: PUSH1 0x04
0000079d: PUSH2 0x4802
000007a0: JUMP
000007a1: JUMPDEST
000007a2: PUSH2 0x01b7
000007a5: PUSH1 0x20
000007a7: MSTORE
000007a8: PUSH0
000007a9: SWAP1
000007aa: DUP2
000007ab: MSTORE
000007ac: PUSH1 0x40
000007ae: SWAP1
000007af: KECCAK256
000007b0: SLOAD
000007b1: DUP2
000007b2: JUMP
000007b3: JUMPDEST
000007b4: CALLVALUE
000007b5: DUP1
000007b6: ISZERO
000007b7: PUSH2 0x07be
000007ba: JUMPI
000007bb: PUSH0
000007bc: DUP1
000007bd: REVERT
000007be: JUMPDEST
000007bf: POP
000007c0: PUSH2 0x0508
000007c3: PUSH32 0x0cf0d2deb70d7bdac2fa48c4ac99bc558170be0ce5fcb994caefa4bf7b96edf9
000007e4: DUP2
000007e5: JUMP
000007e6: JUMPDEST
000007e7: CALLVALUE
000007e8: DUP1
000007e9: ISZERO
000007ea: PUSH2 0x07f1
000007ed: JUMPI
000007ee: PUSH0
000007ef: DUP1
000007f0: REVERT
000007f1: JUMPDEST
000007f2: POP
000007f3: PUSH2 0x054b
000007f6: PUSH2 0x0800
000007f9: CALLDATASIZE
000007fa: PUSH1 0x04
000007fc: PUSH2 0x4802
000007ff: JUMP
00000800: JUMPDEST
00000801: PUSH2 0x14e1
00000804: JUMP
00000805: JUMPDEST
00000806: CALLVALUE
00000807: DUP1
00000808: ISZERO
00000809: PUSH2 0x0810
0000080c: JUMPI
0000080d: PUSH0
0000080e: DUP1
0000080f: REVERT
00000810: JUMPDEST
00000811: POP
00000812: PUSH2 0x054b
00000815: PUSH2 0x081f
00000818: CALLDATASIZE
00000819: PUSH1 0x04
0000081b: PUSH2 0x4965
0000081e: JUMP
0000081f: JUMPDEST
00000820: PUSH2 0x15a7
00000823: JUMP
00000824: JUMPDEST
00000825: CALLVALUE
00000826: DUP1
00000827: ISZERO
00000828: PUSH2 0x082f
0000082b: JUMPI
0000082c: PUSH0
0000082d: DUP1
0000082e: REVERT
0000082f: JUMPDEST
00000830: POP
00000831: PUSH2 0x0508
00000834: PUSH1 0x99
00000836: SLOAD
00000837: DUP2
00000838: JUMP
00000839: JUMPDEST
0000083a: CALLVALUE
0000083b: DUP1
0000083c: ISZERO
0000083d: PUSH2 0x0844
00000840: JUMPI
00000841: PUSH0
00000842: DUP1
00000843: REVERT
00000844: JUMPDEST
00000845: POP
00000846: PUSH2 0x0508
00000849: PUSH2 0x0853
0000084c: CALLDATASIZE
0000084d: PUSH1 0x04
0000084f: PUSH2 0x4802
00000852: JUMP
00000853: JUMPDEST
00000854: PUSH1 0xa6
00000856: PUSH1 0x20
00000858: MSTORE
00000859: PUSH0
0000085a: SWAP1
0000085b: DUP2
0000085c: MSTORE
0000085d: PUSH1 0x40
0000085f: SWAP1
00000860: KECCAK256
00000861: SLOAD
00000862: DUP2
00000863: JUMP
00000864: JUMPDEST
00000865: CALLVALUE
00000866: DUP1
00000867: ISZERO
00000868: PUSH2 0x086f
0000086b: JUMPI
0000086c: PUSH0
0000086d: DUP1
0000086e: REVERT
0000086f: JUMPDEST
00000870: POP
00000871: PUSH2 0x0508
00000874: PUSH2 0x087e
00000877: CALLDATASIZE
00000878: PUSH1 0x04
0000087a: PUSH2 0x4802
0000087d: JUMP
0000087e: JUMPDEST
0000087f: PUSH2 0x01ba
00000882: PUSH1 0x20
00000884: MSTORE
00000885: PUSH0
00000886: SWAP1
00000887: DUP2
00000888: MSTORE
00000889: PUSH1 0x40
0000088b: SWAP1
0000088c: KECCAK256
0000088d: SLOAD
0000088e: DUP2
0000088f: JUMP
00000890: JUMPDEST
00000891: CALLVALUE
00000892: DUP1
00000893: ISZERO
00000894: PUSH2 0x089b
00000897: JUMPI
00000898: PUSH0
00000899: DUP1
0000089a: REVERT
0000089b: JUMPDEST
0000089c: POP
0000089d: PUSH2 0x0508
000008a0: PUSH2 0x08aa
000008a3: CALLDATASIZE
000008a4: PUSH1 0x04
000008a6: PUSH2 0x4802
000008a9: JUMP
000008aa: JUMPDEST
000008ab: PUSH2 0x01b6
000008ae: PUSH1 0x20
000008b0: MSTORE
000008b1: PUSH0
000008b2: SWAP1
000008b3: DUP2
000008b4: MSTORE
000008b5: PUSH1 0x40
000008b7: SWAP1
000008b8: KECCAK256
000008b9: SLOAD
000008ba: DUP2
000008bb: JUMP
000008bc: JUMPDEST
000008bd: CALLVALUE
000008be: DUP1
000008bf: ISZERO
000008c0: PUSH2 0x08c7
000008c3: JUMPI
000008c4: PUSH0
000008c5: DUP1
000008c6: REVERT
000008c7: JUMPDEST
000008c8: POP
000008c9: PUSH2 0x0508
000008cc: PUSH2 0x08d6
000008cf: CALLDATASIZE
000008d0: PUSH1 0x04
000008d2: PUSH2 0x4802
000008d5: JUMP
000008d6: JUMPDEST
000008d7: PUSH2 0x0150
000008da: PUSH1 0x20
000008dc: MSTORE
000008dd: PUSH0
000008de: SWAP1
000008df: DUP2
000008e0: MSTORE
000008e1: PUSH1 0x40
000008e3: SWAP1
000008e4: KECCAK256
000008e5: SLOAD
000008e6: DUP2
000008e7: JUMP
000008e8: JUMPDEST
000008e9: CALLVALUE
000008ea: DUP1
000008eb: ISZERO
000008ec: PUSH2 0x08f3
000008ef: JUMPI
000008f0: PUSH0
000008f1: DUP1
000008f2: REVERT
000008f3: JUMPDEST
000008f4: POP
000008f5: PUSH2 0x0508
000008f8: PUSH32 0xe37c272ea30e2bb381ad7cf89ae754b49153250609f36d0cbdad8b64c184bb5c
00000919: DUP2
0000091a: JUMP
0000091b: JUMPDEST
0000091c: CALLVALUE
0000091d: DUP1
0000091e: ISZERO
0000091f: PUSH2 0x0926
00000922: JUMPI
00000923: PUSH0
00000924: DUP1
00000925: REVERT
00000926: JUMPDEST
00000927: POP
00000928: PUSH2 0x054b
0000092b: PUSH2 0x0935
0000092e: CALLDATASIZE
0000092f: PUSH1 0x04
00000931: PUSH2 0x49dd
00000934: JUMP
00000935: JUMPDEST
00000936: PUSH2 0x169f
00000939: JUMP
0000093a: JUMPDEST
0000093b: CALLVALUE
0000093c: DUP1
0000093d: ISZERO
0000093e: PUSH2 0x0945
00000941: JUMPI
00000942: PUSH0
00000943: DUP1
00000944: REVERT
00000945: JUMPDEST
00000946: POP
00000947: PUSH2 0x0508
0000094a: PUSH2 0x0954
0000094d: CALLDATASIZE
0000094e: PUSH1 0x04
00000950: PUSH2 0x4802
00000953: JUMP
00000954: JUMPDEST
00000955: PUSH2 0x01b8
00000958: PUSH1 0x20
0000095a: MSTORE
0000095b: PUSH0
0000095c: SWAP1
0000095d: DUP2
0000095e: MSTORE
0000095f: PUSH1 0x40
00000961: SWAP1
00000962: KECCAK256
00000963: SLOAD
00000964: DUP2
00000965: JUMP
00000966: JUMPDEST
00000967: CALLVALUE
00000968: DUP1
00000969: ISZERO
0000096a: PUSH2 0x0971
0000096d: JUMPI
0000096e: PUSH0
0000096f: DUP1
00000970: REVERT
00000971: JUMPDEST
00000972: POP
00000973: PUSH2 0x097a
00000976: PUSH2 0x1af8
00000979: JUMP
0000097a: JUMPDEST
0000097b: PUSH1 0x40
0000097d: MLOAD
0000097e: PUSH1 0x01
00000980: PUSH1 0x01
00000982: PUSH1 0xa0
00000984: SHL
00000985: SUB
00000986: SWAP1
00000987: SWAP2
00000988: AND
00000989: DUP2
0000098a: MSTORE
0000098b: PUSH1 0x20
0000098d: ADD
0000098e: PUSH2 0x04cc
00000991: JUMP
00000992: JUMPDEST
00000993: CALLVALUE
00000994: DUP1
00000995: ISZERO
00000996: PUSH2 0x099d
00000999: JUMPI
0000099a: PUSH0
0000099b: DUP1
0000099c: REVERT
0000099d: JUMPDEST
0000099e: POP
0000099f: PUSH2 0x054b
000009a2: PUSH2 0x09ac
000009a5: CALLDATASIZE
000009a6: PUSH1 0x04
000009a8: PUSH2 0x4a15
000009ab: JUMP
000009ac: JUMPDEST
000009ad: PUSH2 0x1b30
000009b0: JUMP
000009b1: JUMPDEST
000009b2: CALLVALUE
000009b3: DUP1
000009b4: ISZERO
000009b5: PUSH2 0x09bc
000009b8: JUMPI
000009b9: PUSH0
000009ba: DUP1
000009bb: REVERT
000009bc: JUMPDEST
000009bd: POP
000009be: PUSH2 0x0508
000009c1: PUSH2 0x0119
000009c4: SLOAD
000009c5: DUP2
000009c6: JUMP
000009c7: JUMPDEST
000009c8: CALLVALUE
000009c9: DUP1
000009ca: ISZERO
000009cb: PUSH2 0x09d2
000009ce: JUMPI
000009cf: PUSH0
000009d0: DUP1
000009d1: REVERT
000009d2: JUMPDEST
000009d3: POP
000009d4: PUSH2 0x0508
000009d7: PUSH32 0xd8b4c34c2ec1f3194471108c64ad2beda340c0337ee4ca35592f9ef270f4228b
000009f8: DUP2
000009f9: JUMP
000009fa: JUMPDEST
000009fb: CALLVALUE
000009fc: DUP1
000009fd: ISZERO
000009fe: PUSH2 0x0a05
00000a01: JUMPI
00000a02: PUSH0
00000a03: DUP1
00000a04: REVERT
00000a05: JUMPDEST
00000a06: POP
00000a07: PUSH2 0x0508
00000a0a: PUSH32 0x32937fd5162e282df7e9a14a5073a2425321c7966eaf70ed6c838a1006d84c4c
00000a2b: DUP2
00000a2c: JUMP
00000a2d: JUMPDEST
00000a2e: CALLVALUE
00000a2f: DUP1
00000a30: ISZERO
00000a31: PUSH2 0x0a38
00000a34: JUMPI
00000a35: PUSH0
00000a36: DUP1
00000a37: REVERT
00000a38: JUMPDEST
00000a39: POP
00000a3a: PUSH2 0x0756
00000a3d: PUSH1 0x02
00000a3f: DUP2
00000a40: JUMP
00000a41: JUMPDEST
00000a42: CALLVALUE
00000a43: DUP1
00000a44: ISZERO
00000a45: PUSH2 0x0a4c
00000a48: JUMPI
00000a49: PUSH0
00000a4a: DUP1
00000a4b: REVERT
00000a4c: JUMPDEST
00000a4d: POP
00000a4e: PUSH2 0x0756
00000a51: PUSH0
00000a52: DUP2
00000a53: JUMP
00000a54: JUMPDEST
00000a55: CALLVALUE
00000a56: DUP1
00000a57: ISZERO
00000a58: PUSH2 0x0a5f
00000a5b: JUMPI
00000a5c: PUSH0
00000a5d: DUP1
00000a5e: REVERT
00000a5f: JUMPDEST
00000a60: POP
00000a61: PUSH2 0x0508
00000a64: PUSH2 0x0a6e
00000a67: CALLDATASIZE
00000a68: PUSH1 0x04
00000a6a: PUSH2 0x4802
00000a6d: JUMP
00000a6e: JUMPDEST
00000a6f: PUSH2 0x011a
00000a72: PUSH1 0x20
00000a74: MSTORE
00000a75: PUSH0
00000a76: SWAP1
00000a77: DUP2
00000a78: MSTORE
00000a79: PUSH1 0x40
00000a7b: SWAP1
00000a7c: KECCAK256
00000a7d: SLOAD
00000a7e: DUP2
00000a7f: JUMP
00000a80: JUMPDEST
00000a81: CALLVALUE
00000a82: DUP1
00000a83: ISZERO
00000a84: PUSH2 0x0a8b
00000a87: JUMPI
00000a88: PUSH0
00000a89: DUP1
00000a8a: REVERT
00000a8b: JUMPDEST
00000a8c: POP
00000a8d: PUSH2 0x0508
00000a90: PUSH32 0xe1fce82838dd7a42cfe783f60dc6233c8aa2c4fc66e77817805e767ec5e349b6
00000ab1: DUP2
00000ab2: JUMP
00000ab3: JUMPDEST
00000ab4: CALLVALUE
00000ab5: DUP1
00000ab6: ISZERO
00000ab7: PUSH2 0x0abe
00000aba: JUMPI
00000abb: PUSH0
00000abc: DUP1
00000abd: REVERT
00000abe: JUMPDEST
00000abf: POP
00000ac0: PUSH2 0x0508
00000ac3: PUSH2 0x0acd
00000ac6: CALLDATASIZE
00000ac7: PUSH1 0x04
00000ac9: PUSH2 0x4802
00000acc: JUMP
00000acd: JUMPDEST
00000ace: PUSH2 0x014e
00000ad1: PUSH1 0x20
00000ad3: MSTORE
00000ad4: PUSH0
00000ad5: SWAP1
00000ad6: DUP2
00000ad7: MSTORE
00000ad8: PUSH1 0x40
00000ada: SWAP1
00000adb: KECCAK256
00000adc: SLOAD
00000add: DUP2
00000ade: JUMP
00000adf: JUMPDEST
00000ae0: CALLVALUE
00000ae1: DUP1
00000ae2: ISZERO
00000ae3: PUSH2 0x0aea
00000ae6: JUMPI
00000ae7: PUSH0
00000ae8: DUP1
00000ae9: REVERT
00000aea: JUMPDEST
00000aeb: POP
00000aec: PUSH2 0x04c0
00000aef: PUSH2 0x0af9
00000af2: CALLDATASIZE
00000af3: PUSH1 0x04
00000af5: PUSH2 0x482d
00000af8: JUMP
00000af9: JUMPDEST
00000afa: PUSH0
00000afb: SWAP2
00000afc: DUP3
00000afd: MSTORE
00000afe: PUSH1 0x65
00000b00: PUSH1 0x20
00000b02: SWAP1
00000b03: DUP2
00000b04: MSTORE
00000b05: PUSH1 0x40
00000b07: DUP1
00000b08: DUP5
00000b09: KECCAK256
00000b0a: PUSH1 0x01
00000b0c: PUSH1 0x01
00000b0e: PUSH1 0xa0
00000b10: SHL
00000b11: SUB
00000b12: SWAP4
00000b13: SWAP1
00000b14: SWAP4
00000b15: AND
00000b16: DUP5
00000b17: MSTORE
00000b18: SWAP2
00000b19: SWAP1
00000b1a: MSTORE
00000b1b: SWAP1
00000b1c: KECCAK256
00000b1d: SLOAD
00000b1e: PUSH1 0xff
00000b20: AND
00000b21: SWAP1
00000b22: JUMP
00000b23: JUMPDEST
00000b24: CALLVALUE
00000b25: DUP1
00000b26: ISZERO
00000b27: PUSH2 0x0b2e
00000b2a: JUMPI
00000b2b: PUSH0
00000b2c: DUP1
00000b2d: REVERT
00000b2e: JUMPDEST
00000b2f: POP
00000b30: PUSH2 0x0508
00000b33: PUSH2 0x01bf
00000b36: SLOAD
00000b37: DUP2
00000b38: JUMP
00000b39: JUMPDEST
00000b3a: CALLVALUE
00000b3b: DUP1
00000b3c: ISZERO
00000b3d: PUSH2 0x0b44
00000b40: JUMPI
00000b41: PUSH0
00000b42: DUP1
00000b43: REVERT
00000b44: JUMPDEST
00000b45: POP
00000b46: PUSH2 0x054b
00000b49: PUSH2 0x0b53
00000b4c: CALLDATASIZE
00000b4d: PUSH1 0x04
00000b4f: PUSH2 0x4a63
00000b52: JUMP
00000b53: JUMPDEST
00000b54: PUSH2 0x1d70
00000b57: JUMP
00000b58: JUMPDEST
00000b59: CALLVALUE
00000b5a: DUP1
00000b5b: ISZERO
00000b5c: PUSH2 0x0b63
00000b5f: JUMPI
00000b60: PUSH0
00000b61: DUP1
00000b62: REVERT
00000b63: JUMPDEST
00000b64: POP
00000b65: PUSH2 0x0508
00000b68: PUSH32 0x56bdc3c9ec86cb7db110a7699b2ade72f0b8819727d9f7d906b012641505fa77
00000b89: DUP2
00000b8a: JUMP
00000b8b: JUMPDEST
00000b8c: CALLVALUE
00000b8d: DUP1
00000b8e: ISZERO
00000b8f: PUSH2 0x0b96
00000b92: JUMPI
00000b93: PUSH0
00000b94: DUP1
00000b95: REVERT
00000b96: JUMPDEST
00000b97: POP
00000b98: PUSH2 0x04c0
00000b9b: PUSH2 0x0ba5
00000b9e: CALLDATASIZE
00000b9f: PUSH1 0x04
00000ba1: PUSH2 0x4802
00000ba4: JUMP
00000ba5: JUMPDEST
00000ba6: PUSH2 0x2054
00000ba9: JUMP
00000baa: JUMPDEST
00000bab: PUSH2 0x054b
00000bae: PUSH2 0x0bb8
00000bb1: CALLDATASIZE
00000bb2: PUSH1 0x04
00000bb4: PUSH2 0x4ae0
00000bb7: JUMP
00000bb8: JUMPDEST
00000bb9: PUSH2 0x2077
00000bbc: JUMP
00000bbd: JUMPDEST
00000bbe: CALLVALUE
00000bbf: DUP1
00000bc0: ISZERO
00000bc1: PUSH2 0x0bc8
00000bc4: JUMPI
00000bc5: PUSH0
00000bc6: DUP1
00000bc7: REVERT
00000bc8: JUMPDEST
00000bc9: POP
00000bca: PUSH2 0x0508
00000bcd: PUSH0
00000bce: DUP2
00000bcf: JUMP
00000bd0: JUMPDEST
00000bd1: CALLVALUE
00000bd2: DUP1
00000bd3: ISZERO
00000bd4: PUSH2 0x0bdb
00000bd7: JUMPI
00000bd8: PUSH0
00000bd9: DUP1
00000bda: REVERT
00000bdb: JUMPDEST
00000bdc: POP
00000bdd: PUSH2 0x054b
00000be0: PUSH2 0x0bea
00000be3: CALLDATASIZE
00000be4: PUSH1 0x04
00000be6: PUSH2 0x4b38
00000be9: JUMP
00000bea: JUMPDEST
00000beb: PUSH2 0x2199
00000bee: JUMP
00000bef: JUMPDEST
00000bf0: CALLVALUE
00000bf1: DUP1
00000bf2: ISZERO
00000bf3: PUSH2 0x0bfa
00000bf6: JUMPI
00000bf7: PUSH0
00000bf8: DUP1
00000bf9: REVERT
00000bfa: JUMPDEST
00000bfb: POP
00000bfc: PUSH2 0x097a
00000bff: PUSH2 0x0c09
00000c02: CALLDATASIZE
00000c03: PUSH1 0x04
00000c05: PUSH2 0x4802
00000c08: JUMP
00000c09: JUMPDEST
00000c0a: PUSH2 0x011b
00000c0d: PUSH1 0x20
00000c0f: MSTORE
00000c10: PUSH0
00000c11: SWAP1
00000c12: DUP2
00000c13: MSTORE
00000c14: PUSH1 0x40
00000c16: SWAP1
00000c17: KECCAK256
00000c18: SLOAD
00000c19: PUSH1 0x01
00000c1b: PUSH1 0x01
00000c1d: PUSH1 0xa0
00000c1f: SHL
00000c20: SUB
00000c21: AND
00000c22: DUP2
00000c23: JUMP
00000c24: JUMPDEST
00000c25: CALLVALUE
00000c26: DUP1
00000c27: ISZERO
00000c28: PUSH2 0x0c2f
00000c2b: JUMPI
00000c2c: PUSH0
00000c2d: DUP1
00000c2e: REVERT
00000c2f: JUMPDEST
00000c30: POP
00000c31: PUSH2 0x0508
00000c34: PUSH1 0x98
00000c36: SLOAD
00000c37: DUP2
00000c38: JUMP
00000c39: JUMPDEST
00000c3a: CALLVALUE
00000c3b: DUP1
00000c3c: ISZERO
00000c3d: PUSH2 0x0c44
00000c40: JUMPI
00000c41: PUSH0
00000c42: DUP1
00000c43: REVERT
00000c44: JUMPDEST
00000c45: POP
00000c46: PUSH2 0x054b
00000c49: PUSH2 0x25cb
00000c4c: JUMP
00000c4d: JUMPDEST
00000c4e: CALLVALUE
00000c4f: DUP1
00000c50: ISZERO
00000c51: PUSH2 0x0c58
00000c54: JUMPI
00000c55: PUSH0
00000c56: DUP1
00000c57: REVERT
00000c58: JUMPDEST
00000c59: POP
00000c5a: PUSH2 0x0508
00000c5d: PUSH32 0xe4831f9e4316ac2c65117d1f602fbf56d38128a9973d5e3fdbc5b77265c18d40
00000c7e: DUP2
00000c7f: JUMP
00000c80: JUMPDEST
00000c81: CALLVALUE
00000c82: DUP1
00000c83: ISZERO
00000c84: PUSH2 0x0c8b
00000c87: JUMPI
00000c88: PUSH0
00000c89: DUP1
00000c8a: REVERT
00000c8b: JUMPDEST
00000c8c: POP
00000c8d: PUSH2 0x0508
00000c90: PUSH1 0xe4
00000c92: SLOAD
00000c93: DUP2
00000c94: JUMP
00000c95: JUMPDEST
00000c96: CALLVALUE
00000c97: DUP1
00000c98: ISZERO
00000c99: PUSH2 0x0ca0
00000c9c: JUMPI
00000c9d: PUSH0
00000c9e: DUP1
00000c9f: REVERT
00000ca0: JUMPDEST
00000ca1: POP
00000ca2: PUSH2 0x0508
00000ca5: PUSH32 0x430a7f0cb00b5ebbe63cecc96e82cf959a883e7c13a95110854f1fa6b3fbf598
00000cc6: DUP2
00000cc7: JUMP
00000cc8: JUMPDEST
00000cc9: CALLVALUE
00000cca: DUP1
00000ccb: ISZERO
00000ccc: PUSH2 0x0cd3
00000ccf: JUMPI
00000cd0: PUSH0
00000cd1: DUP1
00000cd2: REVERT
00000cd3: JUMPDEST
00000cd4: POP
00000cd5: PUSH2 0x04c0
00000cd8: PUSH2 0x0ce2
00000cdb: CALLDATASIZE
00000cdc: PUSH1 0x04
00000cde: PUSH2 0x47e4
00000ce1: JUMP
00000ce2: JUMPDEST
00000ce3: PUSH2 0x2626
00000ce6: JUMP
00000ce7: JUMPDEST
00000ce8: CALLVALUE
00000ce9: DUP1
00000cea: ISZERO
00000ceb: PUSH2 0x0cf2
00000cee: JUMPI
00000cef: PUSH0
00000cf0: DUP1
00000cf1: REVERT
00000cf2: JUMPDEST
00000cf3: POP
00000cf4: PUSH2 0x054b
00000cf7: PUSH2 0x0d01
00000cfa: CALLDATASIZE
00000cfb: PUSH1 0x04
00000cfd: PUSH2 0x4b70
00000d00: JUMP
00000d01: JUMPDEST
00000d02: PUSH2 0x264a
00000d05: JUMP
00000d06: JUMPDEST
00000d07: CALLVALUE
00000d08: DUP1
00000d09: ISZERO
00000d0a: PUSH2 0x0d11
00000d0d: JUMPI
00000d0e: PUSH0
00000d0f: DUP1
00000d10: REVERT
00000d11: JUMPDEST
00000d12: POP
00000d13: PUSH2 0x0508
00000d16: PUSH32 0x1185e52d62bfbbea270e57d3d09733d221b53ab7a18bae82bb3c6c74bab16d82
00000d37: DUP2
00000d38: JUMP
00000d39: JUMPDEST
00000d3a: CALLVALUE
00000d3b: DUP1
00000d3c: ISZERO
00000d3d: PUSH2 0x0d44
00000d40: JUMPI
00000d41: PUSH0
00000d42: DUP1
00000d43: REVERT
00000d44: JUMPDEST
00000d45: POP
00000d46: PUSH2 0x0508
00000d49: PUSH1 0x9a
00000d4b: SLOAD
00000d4c: DUP2
00000d4d: JUMP
00000d4e: JUMPDEST
00000d4f: CALLVALUE
00000d50: DUP1
00000d51: ISZERO
00000d52: PUSH2 0x0d59
00000d55: JUMPI
00000d56: PUSH0
00000d57: DUP1
00000d58: REVERT
00000d59: JUMPDEST
00000d5a: POP
00000d5b: PUSH2 0x054b
00000d5e: PUSH2 0x0d68
00000d61: CALLDATASIZE
00000d62: PUSH1 0x04
00000d64: PUSH2 0x4bda
00000d67: JUMP
00000d68: JUMPDEST
00000d69: PUSH2 0x277a
00000d6c: JUMP
00000d6d: JUMPDEST
00000d6e: CALLVALUE
00000d6f: DUP1
00000d70: ISZERO
00000d71: PUSH2 0x0d78
00000d74: JUMPI
00000d75: PUSH0
00000d76: DUP1
00000d77: REVERT
00000d78: JUMPDEST
00000d79: POP
00000d7a: PUSH2 0x0508
00000d7d: PUSH1 0x97
00000d7f: SLOAD
00000d80: DUP2
00000d81: JUMP
00000d82: JUMPDEST
00000d83: CALLVALUE
00000d84: DUP1
00000d85: ISZERO
00000d86: PUSH2 0x0d8d
00000d89: JUMPI
00000d8a: PUSH0
00000d8b: DUP1
00000d8c: REVERT
00000d8d: JUMPDEST
00000d8e: POP
00000d8f: PUSH2 0x054b
00000d92: PUSH2 0x0d9c
00000d95: CALLDATASIZE
00000d96: PUSH1 0x04
00000d98: PUSH2 0x4c8c
00000d9b: JUMP
00000d9c: JUMPDEST
00000d9d: PUSH2 0x29e0
00000da0: JUMP
00000da1: JUMPDEST
00000da2: CALLVALUE
00000da3: DUP1
00000da4: ISZERO
00000da5: PUSH2 0x0dac
00000da8: JUMPI
00000da9: PUSH0
00000daa: DUP1
00000dab: REVERT
00000dac: JUMPDEST
00000dad: POP
00000dae: PUSH2 0x04c0
00000db1: PUSH2 0x0dbb
00000db4: CALLDATASIZE
00000db5: PUSH1 0x04
00000db7: PUSH2 0x4802
00000dba: JUMP
00000dbb: JUMPDEST
00000dbc: PUSH1 0xd9
00000dbe: PUSH1 0x20
00000dc0: MSTORE
00000dc1: PUSH0
00000dc2: SWAP1
00000dc3: DUP2
00000dc4: MSTORE
00000dc5: PUSH1 0x40
00000dc7: SWAP1
00000dc8: KECCAK256
00000dc9: SLOAD
00000dca: PUSH1 0xff
00000dcc: AND
00000dcd: DUP2
00000dce: JUMP
00000dcf: JUMPDEST
00000dd0: CALLVALUE
00000dd1: DUP1
00000dd2: ISZERO
00000dd3: PUSH2 0x0dda
00000dd6: JUMPI
00000dd7: PUSH0
00000dd8: DUP1
00000dd9: REVERT
00000dda: JUMPDEST
00000ddb: POP
00000ddc: PUSH2 0x0508
00000ddf: PUSH32 0xe8cb6172fcf5cbaae022b7c910224a4f0c20d53227e630056efff182155a5abc
00000e00: DUP2
00000e01: JUMP
00000e02: JUMPDEST
00000e03: CALLVALUE
00000e04: DUP1
00000e05: ISZERO
00000e06: PUSH2 0x0e0d
00000e09: JUMPI
00000e0a: PUSH0
00000e0b: DUP1
00000e0c: REVERT
00000e0d: JUMPDEST
00000e0e: POP
00000e0f: PUSH2 0x0508
00000e12: PUSH2 0x01bd
00000e15: SLOAD
00000e16: DUP2
00000e17: JUMP
00000e18: JUMPDEST
00000e19: CALLVALUE
00000e1a: DUP1
00000e1b: ISZERO
00000e1c: PUSH2 0x0e23
00000e1f: JUMPI
00000e20: PUSH0
00000e21: DUP1
00000e22: REVERT
00000e23: JUMPDEST
00000e24: POP
00000e25: PUSH2 0x01c0
00000e28: SLOAD
00000e29: PUSH2 0x097a
00000e2c: SWAP1
00000e2d: PUSH1 0x01
00000e2f: PUSH1 0x01
00000e31: PUSH1 0xa0
00000e33: SHL
00000e34: SUB
00000e35: AND
00000e36: DUP2
00000e37: JUMP
00000e38: JUMPDEST
00000e39: CALLVALUE
00000e3a: DUP1
00000e3b: ISZERO
00000e3c: PUSH2 0x0e43
00000e3f: JUMPI
00000e40: PUSH0
00000e41: DUP1
00000e42: REVERT
00000e43: JUMPDEST
00000e44: POP
00000e45: PUSH2 0x054b
00000e48: PUSH2 0x0e52
00000e4b: CALLDATASIZE
00000e4c: PUSH1 0x04
00000e4e: PUSH2 0x482d
00000e51: JUMP
00000e52: JUMPDEST
00000e53: PUSH2 0x2ae6
00000e56: JUMP
00000e57: JUMPDEST
00000e58: CALLVALUE
00000e59: DUP1
00000e5a: ISZERO
00000e5b: PUSH2 0x0e62
00000e5e: JUMPI
00000e5f: PUSH0
00000e60: DUP1
00000e61: REVERT
00000e62: JUMPDEST
00000e63: POP
00000e64: PUSH2 0x0508
00000e67: PUSH2 0x01bc
00000e6a: SLOAD
00000e6b: DUP2
00000e6c: JUMP
00000e6d: JUMPDEST
00000e6e: CALLVALUE
00000e6f: DUP1
00000e70: ISZERO
00000e71: PUSH2 0x0e78
00000e74: JUMPI
00000e75: PUSH0
00000e76: DUP1
00000e77: REVERT
00000e78: JUMPDEST
00000e79: POP
00000e7a: PUSH2 0x0508
00000e7d: PUSH32 0x6b5661ddfbd1fbd525c902a513e0f47d9c74f1c1ee8a2d4f1937ad305fb8f41a
00000e9e: DUP2
00000e9f: JUMP
00000ea0: JUMPDEST
00000ea1: CALLVALUE
00000ea2: DUP1
00000ea3: ISZERO
00000ea4: PUSH2 0x0eab
00000ea7: JUMPI
00000ea8: PUSH0
00000ea9: DUP1
00000eaa: REVERT
00000eab: JUMPDEST
00000eac: POP
00000ead: PUSH2 0x054b
00000eb0: PUSH2 0x0eba
00000eb3: CALLDATASIZE
00000eb4: PUSH1 0x04
00000eb6: PUSH2 0x47e4
00000eb9: JUMP
00000eba: JUMPDEST
00000ebb: PUSH2 0x2b0a
00000ebe: JUMP
00000ebf: JUMPDEST
00000ec0: CALLVALUE
00000ec1: DUP1
00000ec2: ISZERO
00000ec3: PUSH2 0x0eca
00000ec6: JUMPI
00000ec7: PUSH0
00000ec8: DUP1
00000ec9: REVERT
00000eca: JUMPDEST
00000ecb: POP
00000ecc: PUSH2 0x0508
00000ecf: PUSH1 0x40
00000ed1: DUP1
00000ed2: MLOAD
00000ed3: PUSH0
00000ed4: PUSH1 0x20
00000ed6: DUP3
00000ed7: ADD
00000ed8: DUP2
00000ed9: SWAP1
00000eda: MSTORE
00000edb: SWAP2
00000edc: DUP2
00000edd: ADD
00000ede: DUP3
00000edf: SWAP1
00000ee0: MSTORE
00000ee1: PUSH32 0x072ead6777750dc20232d1cee8dc9a395c2d350df4bbaa5096c6f59b214dcecd
00000f02: PUSH1 0x60
00000f04: DUP3
00000f05: ADD
00000f06: MSTORE
00000f07: PUSH1 0x80
00000f09: DUP2
00000f0a: ADD
00000f0b: DUP3
00000f0c: SWAP1
00000f0d: MSTORE
00000f0e: PUSH1 0xa0
00000f10: DUP2
00000f11: ADD
00000f12: SWAP2
00000f13: SWAP1
00000f14: SWAP2
00000f15: MSTORE
00000f16: PUSH1 0xc0
00000f18: ADD
00000f19: PUSH1 0x40
00000f1b: MLOAD
00000f1c: PUSH1 0x20
00000f1e: DUP2
00000f1f: DUP4
00000f20: SUB
00000f21: SUB
00000f22: DUP2
00000f23: MSTORE
00000f24: SWAP1
00000f25: PUSH1 0x40
00000f27: MSTORE
00000f28: DUP1
00000f29: MLOAD
00000f2a: SWAP1
00000f2b: PUSH1 0x20
00000f2d: ADD
00000f2e: KECCAK256
00000f2f: DUP2
00000f30: JUMP
00000f31: JUMPDEST
00000f32: CALLVALUE
00000f33: DUP1
00000f34: ISZERO
00000f35: PUSH2 0x0f3c
00000f38: JUMPI
00000f39: PUSH0
00000f3a: DUP1
00000f3b: REVERT
00000f3c: JUMPDEST
00000f3d: POP
00000f3e: PUSH2 0x0508
00000f41: PUSH32 0x97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929
00000f62: DUP2
00000f63: JUMP
00000f64: JUMPDEST
00000f65: PUSH0
00000f66: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000f87: DUP3
00000f88: AND
00000f89: PUSH32 0x7965db0b00000000000000000000000000000000000000000000000000000000
00000faa: EQ
00000fab: DUP1
00000fac: PUSH2 0x0ff6
00000faf: JUMPI
00000fb0: POP
00000fb1: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000
00000fd2: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000ff3: DUP4
00000ff4: AND
00000ff5: EQ
00000ff6: JUMPDEST
00000ff7: SWAP3
00000ff8: SWAP2
00000ff9: POP
00000ffa: POP
00000ffb: JUMP
00000ffc: JUMPDEST
00000ffd: PUSH1 0xdc
00000fff: PUSH0
00001000: DUP3
00001001: PUSH1 0x08
00001003: DUP2
00001004: GT
00001005: ISZERO
00001006: PUSH2 0x1011
00001009: JUMPI
0000100a: PUSH2 0x1011
0000100d: PUSH2 0x4cb6
00001010: JUMP
00001011: JUMPDEST
00001012: PUSH1 0x08
00001014: DUP2
00001015: GT
00001016: ISZERO
00001017: PUSH2 0x1022
0000101a: JUMPI
0000101b: PUSH2 0x1022
0000101e: PUSH2 0x4cb6
00001021: JUMP
00001022: JUMPDEST
00001023: DUP2
00001024: MSTORE
00001025: PUSH1 0x20
00001027: ADD
00001028: SWAP1
00001029: DUP2
0000102a: MSTORE
0000102b: PUSH1 0x20
0000102d: ADD
0000102e: PUSH0
0000102f: KECCAK256
00001030: SLOAD
00001031: PUSH2 0x1039
00001034: DUP2
00001035: PUSH2 0x2be2
00001038: JUMP
00001039: JUMPDEST
0000103a: PUSH2 0x1042
0000103d: DUP3
0000103e: PUSH2 0x2626
00001041: JUMP
00001042: JUMPDEST
00001043: PUSH2 0x1083
00001046: JUMPI
00001047: DUP2
00001048: PUSH1 0x40
0000104a: MLOAD
0000104b: PUSH32 0x1865965400000000000000000000000000000000000000000000000000000000
0000106c: DUP2
0000106d: MSTORE
0000106e: PUSH1 0x04
00001070: ADD
00001071: PUSH2 0x107a
00001074: SWAP2
00001075: SWAP1
00001076: PUSH2 0x4ce3
00001079: JUMP
0000107a: JUMPDEST
0000107b: PUSH1 0x40
0000107d: MLOAD
0000107e: DUP1
0000107f: SWAP2
00001080: SUB
00001081: SWAP1
00001082: REVERT
00001083: JUMPDEST
00001084: DUP2
00001085: PUSH1 0x08
00001087: DUP2
00001088: GT
00001089: ISZERO
0000108a: PUSH2 0x1095
0000108d: JUMPI
0000108e: PUSH2 0x1095
00001091: PUSH2 0x4cb6
00001094: JUMP
00001095: JUMPDEST
00001096: PUSH1 0xda
00001098: DUP1
00001099: SLOAD
0000109a: PUSH1 0x01
0000109c: SWAP1
0000109d: SWAP3
0000109e: SHL
0000109f: NOT
000010a0: SWAP1
000010a1: SWAP2
000010a2: AND
000010a3: SWAP1
000010a4: SSTORE
000010a5: DUP2
000010a6: PUSH1 0x08
000010a8: DUP2
000010a9: GT
000010aa: ISZERO
000010ab: PUSH2 0x10b6
000010ae: JUMPI
000010af: PUSH2 0x10b6
000010b2: PUSH2 0x4cb6
000010b5: JUMP
000010b6: JUMPDEST
000010b7: PUSH32 0xd071d2b85dec4489435b541d2f0e2570db09b09db9efd8703948d44a433df65a
000010d8: CALLER
000010d9: JUMPDEST
000010da: PUSH1 0x40
000010dc: MLOAD
000010dd: PUSH1 0x01
000010df: PUSH1 0x01
000010e1: PUSH1 0xa0
000010e3: SHL
000010e4: SUB
000010e5: SWAP1
000010e6: SWAP2
000010e7: AND
000010e8: DUP2
000010e9: MSTORE
000010ea: PUSH1 0x20
000010ec: ADD
000010ed: PUSH1 0x40
000010ef: MLOAD
000010f0: DUP1
000010f1: SWAP2
000010f2: SUB
000010f3: SWAP1
000010f4: LOG2
000010f5: POP
000010f6: POP
000010f7: JUMP
000010f8: JUMPDEST
000010f9: PUSH32 0x6b5661ddfbd1fbd525c902a513e0f47d9c74f1c1ee8a2d4f1937ad305fb8f41a
0000111a: PUSH2 0x1122
0000111d: DUP2
0000111e: PUSH2 0x2be2
00001121: JUMP
00001122: JUMPDEST
00001123: PUSH0
00001124: DUP3
00001125: DUP2
00001126: MSTORE
00001127: PUSH2 0x011b
0000112a: PUSH1 0x20
0000112c: SWAP1
0000112d: DUP2
0000112e: MSTORE
0000112f: PUSH1 0x40
00001131: DUP1
00001132: DUP4
00001133: KECCAK256
00001134: SLOAD
00001135: SWAP1
00001136: MLOAD
00001137: PUSH1 0x01
00001139: PUSH1 0x01
0000113b: PUSH1 0xa0
0000113d: SHL
0000113e: SUB
0000113f: SWAP1
00001140: SWAP2
00001141: AND
00001142: DUP2
00001143: MSTORE
00001144: CALLER
00001145: SWAP3
00001146: DUP6
00001147: SWAP3
00001148: SWAP1
00001149: SWAP2
0000114a: PUSH32 0x4a29db3fc6b42bda201e4b4d69ce8d575eeeba5f153509c0d0a342af0f1bd021
0000116b: SWAP2
0000116c: ADD
0000116d: PUSH1 0x40
0000116f: MLOAD
00001170: DUP1
00001171: SWAP2
00001172: SUB
00001173: SWAP1
00001174: LOG4
00001175: POP
00001176: PUSH0
00001177: SWAP1
00001178: DUP2
00001179: MSTORE
0000117a: PUSH2 0x011b
0000117d: PUSH1 0x20
0000117f: MSTORE
00001180: PUSH1 0x40
00001182: SWAP1
00001183: KECCAK256
00001184: DUP1
00001185: SLOAD
00001186: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000011a7: AND
000011a8: SWAP1
000011a9: SSTORE
000011aa: JUMP
000011ab: JUMPDEST
000011ac: PUSH0
000011ad: DUP3
000011ae: DUP2
000011af: MSTORE
000011b0: PUSH1 0x65
000011b2: PUSH1 0x20
000011b4: MSTORE
000011b5: PUSH1 0x40
000011b7: SWAP1
000011b8: KECCAK256
000011b9: PUSH1 0x01
000011bb: ADD
000011bc: SLOAD
000011bd: PUSH2 0x11c5
000011c0: DUP2
000011c1: PUSH2 0x2be2
000011c4: JUMP
000011c5: JUMPDEST
000011c6: PUSH2 0x11cf
000011c9: DUP4
000011ca: DUP4
000011cb: PUSH2 0x2bec
000011ce: JUMP
000011cf: JUMPDEST
000011d0: POP
000011d1: POP
000011d2: POP
000011d3: JUMP
000011d4: JUMPDEST
000011d5: PUSH2 0x01c0
000011d8: SLOAD
000011d9: PUSH1 0x01
000011db: PUSH1 0x01
000011dd: PUSH1 0xa0
000011df: SHL
000011e0: SUB
000011e1: SWAP1
000011e2: DUP2
000011e3: AND
000011e4: SWAP1
000011e5: DUP3
000011e6: AND
000011e7: SUB
000011e8: PUSH2 0x121d
000011eb: JUMPI
000011ec: PUSH1 0x40
000011ee: MLOAD
000011ef: PUSH32 0x7f7497e900000000000000000000000000000000000000000000000000000000
00001210: DUP2
00001211: MSTORE
00001212: PUSH1 0x04
00001214: ADD
00001215: PUSH1 0x40
00001217: MLOAD
00001218: DUP1
00001219: SWAP2
0000121a: SUB
0000121b: SWAP1
0000121c: REVERT
0000121d: JUMPDEST
0000121e: PUSH2 0x1227
00001221: DUP3
00001222: DUP3
00001223: PUSH2 0x2caa
00001226: JUMP
00001227: JUMPDEST
00001228: POP
00001229: POP
0000122a: JUMP
0000122b: JUMPDEST
0000122c: PUSH2 0x1233
0000122f: PUSH2 0x2d4c
00001232: JUMP
00001233: JUMPDEST
00001234: DUP6
00001235: DUP8
00001236: DUP5
00001237: DUP5
00001238: DUP8
00001239: PUSH0
0000123a: GAS
0000123b: SWAP1
0000123c: POP
0000123d: PUSH2 0x1246
00001240: PUSH1 0x03
00001242: PUSH2 0x2de9
00001245: JUMP
00001246: JUMPDEST
00001247: PUSH2 0x127a
0000124a: PUSH2 0x1274
0000124d: PUSH1 0x01
0000124f: PUSH32 0x3095e8dc547eeb8bf90020768c67e29e974614469d8f71638ac29f39b96e4893
00001270: PUSH2 0x4d4f
00001273: JUMP
00001274: JUMPDEST
00001275: DUP16
00001276: PUSH2 0x2e7b
00001279: JUMP
0000127a: JUMPDEST
0000127b: PUSH0
0000127c: PUSH2 0x128a
0000127f: DUP16
00001280: DUP16
00001281: DUP16
00001282: DUP16
00001283: DUP13
00001284: DUP16
00001285: DUP16
00001286: PUSH2 0x2e82
00001289: JUMP
0000128a: JUMPDEST
0000128b: SWAP1
0000128c: POP
0000128d: PUSH2 0x1295
00001290: DUP2
00001291: PUSH2 0x2edb
00001294: JUMP
00001295: JUMPDEST
00001296: PUSH2 0x12a7
00001299: PUSH2 0x12a2
0000129c: DUP14
0000129d: DUP16
0000129e: PUSH2 0x4d62
000012a1: JUMP
000012a2: JUMPDEST
000012a3: PUSH2 0x2f35
000012a6: JUMP
000012a7: JUMPDEST
000012a8: PUSH0
000012a9: DUP1
000012aa: DUP16
000012ab: PUSH1 0x01
000012ad: PUSH1 0x01
000012af: PUSH1 0xa0
000012b1: SHL
000012b2: SUB
000012b3: AND
000012b4: DUP15
000012b5: DUP14
000012b6: DUP14
000012b7: PUSH1 0x40
000012b9: MLOAD
000012ba: PUSH2 0x12c4
000012bd: SWAP3
000012be: SWAP2
000012bf: SWAP1
000012c0: PUSH2 0x4d75
000012c3: JUMP
000012c4: JUMPDEST
000012c5: PUSH0
000012c6: PUSH1 0x40
000012c8: MLOAD
000012c9: DUP1
000012ca: DUP4
000012cb: SUB
000012cc: DUP2
000012cd: DUP6
000012ce: DUP8
000012cf: GAS
000012d0: CALL
000012d1: SWAP3
000012d2: POP
000012d3: POP
000012d4: POP
000012d5: RETURNDATASIZE
000012d6: DUP1
000012d7: PUSH0
000012d8: DUP2
000012d9: EQ
000012da: PUSH2 0x12fe
000012dd: JUMPI
000012de: PUSH1 0x40
000012e0: MLOAD
000012e1: SWAP2
000012e2: POP
000012e3: PUSH1 0x1f
000012e5: NOT
000012e6: PUSH1 0x3f
000012e8: RETURNDATASIZE
000012e9: ADD
000012ea: AND
000012eb: DUP3
000012ec: ADD
000012ed: PUSH1 0x40
000012ef: MSTORE
000012f0: RETURNDATASIZE
000012f1: DUP3
000012f2: MSTORE
000012f3: RETURNDATASIZE
000012f4: PUSH0
000012f5: PUSH1 0x20
000012f7: DUP5
000012f8: ADD
000012f9: RETURNDATACOPY
000012fa: PUSH2 0x1303
000012fd: JUMP
000012fe: JUMPDEST
000012ff: PUSH1 0x60
00001301: SWAP2
00001302: POP
00001303: JUMPDEST
00001304: POP
00001305: SWAP2
00001306: POP
00001307: SWAP2
00001308: POP
00001309: DUP2
0000130a: PUSH2 0x1360
0000130d: JUMPI
0000130e: DUP1
0000130f: MLOAD
00001310: ISZERO
00001311: PUSH2 0x131d
00001314: JUMPI
00001315: DUP1
00001316: MLOAD
00001317: DUP1
00001318: DUP3
00001319: PUSH1 0x20
0000131b: ADD
0000131c: REVERT
0000131d: JUMPDEST
0000131e: DUP16
0000131f: PUSH1 0x40
00001321: MLOAD
00001322: PUSH32 0x5461344300000000000000000000000000000000000000000000000000000000
00001343: DUP2
00001344: MSTORE
00001345: PUSH1 0x04
00001347: ADD
00001348: PUSH2 0x107a
0000134b: SWAP2
0000134c: SWAP1
0000134d: PUSH1 0x01
0000134f: PUSH1 0x01
00001351: PUSH1 0xa0
00001353: SHL
00001354: SUB
00001355: SWAP2
00001356: SWAP1
00001357: SWAP2
00001358: AND
00001359: DUP2
0000135a: MSTORE
0000135b: PUSH1 0x20
0000135d: ADD
0000135e: SWAP1
0000135f: JUMP
00001360: JUMPDEST
00001361: PUSH2 0x1394
00001364: PUSH2 0x138e
00001367: PUSH1 0x01
00001369: PUSH32 0x3095e8dc547eeb8bf90020768c67e29e974614469d8f71638ac29f39b96e4893
0000138a: PUSH2 0x4d4f
0000138d: JUMP
0000138e: JUMPDEST
0000138f: PUSH0
00001390: PUSH2 0x2e7b
00001393: JUMP
00001394: JUMPDEST
00001395: PUSH1 0x40
00001397: MLOAD
00001398: DUP4
00001399: SWAP1
0000139a: PUSH32 0xa4c827e719e911e8f19393ccdb85b5102f08f0910604d340ba38390b7ff2ab0e
000013bb: SWAP1
000013bc: PUSH0
000013bd: SWAP1
000013be: LOG2
000013bf: POP
000013c0: POP
000013c1: DUP7
000013c2: ISZERO
000013c3: SWAP1
000013c4: POP
000013c5: PUSH2 0x14c9
000013c8: JUMPI
000013c9: DUP6
000013ca: PUSH0
000013cb: DUP5
000013cc: SWAP1
000013cd: SUB
000013ce: PUSH2 0x143f
000013d1: JUMPI
000013d2: DUP6
000013d3: EXTCODESIZE
000013d4: ISZERO
000013d5: DUP1
000013d6: ISZERO
000013d7: PUSH2 0x143d
000013da: JUMPI
000013db: GASPRICE
000013dc: GAS
000013dd: PUSH2 0x13e8
000013e0: PUSH2 0xbc7c
000013e3: DUP7
000013e4: PUSH2 0x4d62
000013e7: JUMP
000013e8: JUMPDEST
000013e9: PUSH2 0x13f2
000013ec: SWAP2
000013ed: SWAP1
000013ee: PUSH2 0x4d4f
000013f1: JUMP
000013f2: JUMPDEST
000013f3: PUSH2 0x13fc
000013f6: SWAP2
000013f7: SWAP1
000013f8: PUSH2 0x4d84
000013fb: JUMP
000013fc: JUMPDEST
000013fd: SWAP2
000013fe: POP
000013ff: DUP2
00001400: DUP9
00001401: GT
00001402: ISZERO
00001403: PUSH2 0x1439
00001406: JUMPI
00001407: PUSH1 0x01
00001409: PUSH1 0x01
0000140b: PUSH1 0xa0
0000140d: SHL
0000140e: SUB
0000140f: DUP8
00001410: AND
00001411: PUSH2 0x08fc
00001414: PUSH2 0x141d
00001417: DUP5
00001418: DUP12
00001419: PUSH2 0x4d4f
0000141c: JUMP
0000141d: JUMPDEST
0000141e: PUSH1 0x40
00001420: MLOAD
00001421: DUP2
00001422: ISZERO
00001423: SWAP1
00001424: SWAP3
00001425: MUL
00001426: SWAP2
00001427: PUSH0
00001428: DUP2
00001429: DUP2
0000142a: DUP2
0000142b: DUP6
0000142c: DUP9
0000142d: DUP9
0000142e: CALL
0000142f: SWAP4
00001430: POP
00001431: POP
00001432: POP
00001433: POP
00001434: POP
00001435: PUSH2 0x143d
00001438: JUMP
00001439: JUMPDEST
0000143a: DUP8
0000143b: SWAP2
0000143c: POP
0000143d: JUMPDEST
0000143e: POP
0000143f: JUMPDEST
00001440: PUSH0
00001441: PUSH1 0x01
00001443: PUSH1 0x01
00001445: PUSH1 0xa0
00001447: SHL
00001448: SUB
00001449: DUP5
0000144a: AND
0000144b: ISZERO
0000144c: PUSH2 0x1455
0000144f: JUMPI
00001450: DUP4
00001451: PUSH2 0x1457
00001454: JUMP
00001455: JUMPDEST
00001456: CALLER
00001457: JUMPDEST
00001458: SWAP1
00001459: POP
0000145a: PUSH0
0000145b: DUP2
0000145c: PUSH1 0x01
0000145e: PUSH1 0x01
00001460: PUSH1 0xa0
00001462: SHL
00001463: SUB
00001464: AND
00001465: PUSH2 0x08fc
00001468: DUP5
00001469: SWAP1
0000146a: DUP2
0000146b: ISZERO
0000146c: MUL
0000146d: SWAP1
0000146e: PUSH1 0x40
00001470: MLOAD
00001471: PUSH0
00001472: PUSH1 0x40
00001474: MLOAD
00001475: DUP1
00001476: DUP4
00001477: SUB
00001478: DUP2
00001479: DUP6
0000147a: DUP9
0000147b: DUP9
0000147c: CALL
0000147d: SWAP4
0000147e: POP
0000147f: POP
00001480: POP
00001481: POP
00001482: SWAP1
00001483: POP
00001484: DUP1
00001485: PUSH2 0x14c5
00001488: JUMPI
00001489: PUSH1 0x40
0000148b: MLOAD
0000148c: PUSH32 0xa57c4df400000000000000000000000000000000000000000000000000000000
000014ad: DUP2
000014ae: MSTORE
000014af: PUSH1 0x01
000014b1: PUSH1 0x01
000014b3: PUSH1 0xa0
000014b5: SHL
000014b6: SUB
000014b7: DUP4
000014b8: AND
000014b9: PUSH1 0x04
000014bb: DUP3
000014bc: ADD
000014bd: MSTORE
000014be: PUSH1 0x24
000014c0: ADD
000014c1: PUSH2 0x107a
000014c4: JUMP
000014c5: JUMPDEST
000014c6: POP
000014c7: POP
000014c8: POP
000014c9: JUMPDEST
000014ca: POP
000014cb: POP
000014cc: POP
000014cd: POP
000014ce: POP
000014cf: POP
000014d0: PUSH2 0x14d7
000014d3: PUSH2 0x2fab
000014d6: JUMP
000014d7: JUMPDEST
000014d8: POP
000014d9: POP
000014da: POP
000014db: POP
000014dc: POP
000014dd: POP
000014de: POP
000014df: POP
000014e0: JUMP
000014e1: JUMPDEST
000014e2: PUSH32 0x1185e52d62bfbbea270e57d3d09733d221b53ab7a18bae82bb3c6c74bab16d82
00001503: PUSH2 0x150b
00001506: DUP2
00001507: PUSH2 0x2be2
0000150a: JUMP
0000150b: JUMPDEST
0000150c: PUSH0
0000150d: DUP1
0000150e: PUSH0
0000150f: TIMESTAMP
00001510: PUSH1 0x99
00001512: SLOAD
00001513: LT
00001514: ISZERO
00001515: PUSH2 0x1530
00001518: JUMPI
00001519: PUSH1 0x97
0000151b: SLOAD
0000151c: PUSH2 0x1525
0000151f: SWAP1
00001520: TIMESTAMP
00001521: PUSH2 0x4d62
00001524: JUMP
00001525: JUMPDEST
00001526: PUSH1 0x99
00001528: SSTORE
00001529: POP
0000152a: PUSH1 0x01
0000152c: PUSH2 0x1542
0000152f: JUMP
00001530: JUMPDEST
00001531: PUSH1 0x9a
00001533: SLOAD
00001534: DUP6
00001535: LT
00001536: ISZERO
00001537: PUSH2 0x1542
0000153a: JUMPI
0000153b: DUP5
0000153c: SWAP3
0000153d: POP
0000153e: PUSH1 0x01
00001540: SWAP2
00001541: POP
00001542: JUMPDEST
00001543: PUSH1 0x98
00001545: DUP6
00001546: SWAP1
00001547: SSTORE
00001548: DUP1
00001549: DUP1
0000154a: PUSH2 0x1550
0000154d: JUMPI
0000154e: POP
0000154f: DUP2
00001550: JUMPDEST
00001551: ISZERO
00001552: PUSH2 0x155b
00001555: JUMPI
00001556: PUSH1 0x9a
00001558: DUP4
00001559: SWAP1
0000155a: SSTORE
0000155b: JUMPDEST
0000155c: PUSH1 0x40
0000155e: DUP1
0000155f: MLOAD
00001560: DUP7
00001561: DUP2
00001562: MSTORE
00001563: DUP4
00001564: ISZERO
00001565: ISZERO
00001566: PUSH1 0x20
00001568: DUP3
00001569: ADD
0000156a: MSTORE
0000156b: DUP3
0000156c: ISZERO
0000156d: ISZERO
0000156e: DUP2
0000156f: DUP4
00001570: ADD
00001571: MSTORE
00001572: SWAP1
00001573: MLOAD
00001574: CALLER
00001575: SWAP2
00001576: PUSH32 0xbc3dc0cb5c15c51c81316450d44048838bb478b9809447d01c766a06f3e9f2c8
00001597: SWAP2
00001598: SWAP1
00001599: DUP2
0000159a: SWAP1
0000159b: SUB
0000159c: PUSH1 0x60
0000159e: ADD
0000159f: SWAP1
000015a0: LOG2
000015a1: POP
000015a2: POP
000015a3: POP
000015a4: POP
000015a5: POP
000015a6: JUMP
000015a7: JUMPDEST
000015a8: PUSH1 0x06
000015aa: PUSH2 0x15b2
000015ad: DUP2
000015ae: PUSH2 0x2de9
000015b1: JUMP
000015b2: JUMPDEST
000015b3: PUSH32 0x97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929
000015d4: PUSH2 0x15dc
000015d7: DUP2
000015d8: PUSH2 0x2be2
000015db: JUMP
000015dc: JUMPDEST
000015dd: PUSH0
000015de: DUP6
000015df: SWAP1
000015e0: SUB
000015e1: PUSH2 0x1616
000015e4: JUMPI
000015e5: PUSH1 0x40
000015e7: MLOAD
000015e8: PUSH32 0x7907d79b00000000000000000000000000000000000000000000000000000000
00001609: DUP2
0000160a: MSTORE
0000160b: PUSH1 0x04
0000160d: ADD
0000160e: PUSH1 0x40
00001610: MLOAD
00001611: DUP1
00001612: SWAP2
00001613: SUB
00001614: SWAP1
00001615: REVERT
00001616: JUMPDEST
00001617: PUSH2 0x0119
0000161a: SLOAD
0000161b: PUSH0
0000161c: DUP2
0000161d: DUP2
0000161e: MSTORE
0000161f: PUSH2 0x011a
00001622: PUSH1 0x20
00001624: MSTORE
00001625: PUSH1 0x40
00001627: SWAP1
00001628: KECCAK256
00001629: SLOAD
0000162a: DUP5
0000162b: CALLDATALOAD
0000162c: EQ
0000162d: PUSH2 0x1662
00001630: JUMPI
00001631: PUSH1 0x40
00001633: MLOAD
00001634: PUSH32 0xead4c30e00000000000000000000000000000000000000000000000000000000
00001655: DUP2
00001656: MSTORE
00001657: PUSH1 0x04
00001659: ADD
0000165a: PUSH1 0x40
0000165c: MLOAD
0000165d: DUP1
0000165e: SWAP2
0000165f: SUB
00001660: SWAP1
00001661: REVERT
00001662: JUMPDEST
00001663: PUSH2 0x01bd
00001666: SLOAD
00001667: PUSH0
00001668: PUSH2 0x1671
0000166b: DUP7
0000166c: DUP5
0000166d: PUSH2 0x2fd9
00001670: JUMP
00001671: JUMPDEST
00001672: SWAP1
00001673: POP
00001674: PUSH0
00001675: PUSH2 0x1685
00001678: DUP8
00001679: DUP5
0000167a: DUP5
0000167b: DUP8
0000167c: DUP12
0000167d: PUSH1 0x20
0000167f: ADD
00001680: CALLDATALOAD
00001681: PUSH2 0x32c6
00001684: JUMP
00001685: JUMPDEST
00001686: SWAP1
00001687: POP
00001688: PUSH2 0x1693
0000168b: DUP2
0000168c: DUP10
0000168d: DUP13
0000168e: DUP13
0000168f: PUSH2 0x334e
00001692: JUMP
00001693: JUMPDEST
00001694: POP
00001695: POP
00001696: POP
00001697: POP
00001698: POP
00001699: POP
0000169a: POP
0000169b: POP
0000169c: POP
0000169d: POP
0000169e: JUMP
0000169f: JUMPDEST
000016a0: PUSH2 0x16a7
000016a3: PUSH2 0x2d4c
000016a6: JUMP
000016a7: JUMPDEST
000016a8: PUSH1 0xa0
000016aa: DUP2
000016ab: ADD
000016ac: DUP1
000016ad: CALLDATALOAD
000016ae: SWAP1
000016af: PUSH2 0x16bb
000016b2: SWAP1
000016b3: PUSH1 0x80
000016b5: DUP5
000016b6: ADD
000016b7: PUSH2 0x4d9b
000016ba: JUMP
000016bb: JUMPDEST
000016bc: PUSH2 0x16c9
000016bf: PUSH2 0x0120
000016c2: DUP5
000016c3: ADD
000016c4: DUP5
000016c5: PUSH2 0x4db6
000016c8: JUMP
000016c9: JUMPDEST
000016ca: PUSH2 0x16da
000016cd: PUSH2 0x0100
000016d0: DUP7
000016d1: ADD
000016d2: PUSH1 0xe0
000016d4: DUP8
000016d5: ADD
000016d6: PUSH2 0x4d9b
000016d9: JUMP
000016da: JUMPDEST
000016db: PUSH0
000016dc: GAS
000016dd: SWAP1
000016de: POP
000016df: PUSH2 0x16e8
000016e2: PUSH1 0x03
000016e4: PUSH2 0x2de9
000016e7: JUMP
000016e8: JUMPDEST
000016e9: PUSH2 0x0100
000016ec: DUP8
000016ed: ADD
000016ee: CALLDATALOAD
000016ef: PUSH0
000016f0: SWAP1
000016f1: DUP2
000016f2: MSTORE
000016f3: PUSH2 0x0150
000016f6: PUSH1 0x20
000016f8: MSTORE
000016f9: PUSH1 0x40
000016fb: DUP2
000016fc: KECCAK256
000016fd: SLOAD
000016fe: SWAP1
000016ff: DUP2
00001700: SWAP1
00001701: SUB
00001702: PUSH2 0x1737
00001705: JUMPI
00001706: PUSH1 0x40
00001708: MLOAD
00001709: PUSH32 0x4e68667500000000000000000000000000000000000000000000000000000000
0000172a: DUP2
0000172b: MSTORE
0000172c: PUSH1 0x04
0000172e: ADD
0000172f: PUSH1 0x40
00001731: MLOAD
00001732: DUP1
00001733: SWAP2
00001734: SUB
00001735: SWAP1
00001736: REVERT
00001737: JUMPDEST
00001738: PUSH2 0x1741
0000173b: DUP9
0000173c: DUP1
0000173d: PUSH2 0x4e17
00001740: JUMP
00001741: JUMPDEST
00001742: SWAP1
00001743: POP
00001744: DUP2
00001745: EQ
00001746: PUSH2 0x1790
00001749: JUMPI
0000174a: DUP1
0000174b: PUSH2 0x1754
0000174e: DUP10
0000174f: DUP1
00001750: PUSH2 0x4e17
00001753: JUMP
00001754: JUMPDEST
00001755: PUSH1 0x40
00001757: MLOAD
00001758: PUSH32 0x5e3fd6ad00000000000000000000000000000000000000000000000000000000
00001779: DUP2
0000177a: MSTORE
0000177b: PUSH1 0x04
0000177d: DUP2
0000177e: ADD
0000177f: SWAP4
00001780: SWAP1
00001781: SWAP4
00001782: MSTORE
00001783: PUSH1 0x24
00001785: DUP4
00001786: ADD
00001787: MSTORE
00001788: POP
00001789: PUSH1 0x44
0000178b: ADD
0000178c: PUSH2 0x107a
0000178f: JUMP
00001790: JUMPDEST
00001791: PUSH2 0x179d
00001794: DUP9
00001795: PUSH1 0x20
00001797: ADD
00001798: CALLDATALOAD
00001799: PUSH2 0x35b2
0000179c: JUMP
0000179d: JUMPDEST
0000179e: PUSH2 0x17b2
000017a1: PUSH2 0x12a2
000017a4: PUSH1 0xc0
000017a6: DUP11
000017a7: ADD
000017a8: CALLDATALOAD
000017a9: PUSH1 0xa0
000017ab: DUP12
000017ac: ADD
000017ad: CALLDATALOAD
000017ae: PUSH2 0x4d62
000017b1: JUMP
000017b2: JUMPDEST
000017b3: PUSH0
000017b4: PUSH2 0x17fb
000017b7: PUSH2 0x17c6
000017ba: PUSH1 0x80
000017bc: DUP12
000017bd: ADD
000017be: PUSH1 0x60
000017c0: DUP13
000017c1: ADD
000017c2: PUSH2 0x4d9b
000017c5: JUMP
000017c6: JUMPDEST
000017c7: PUSH2 0x17d6
000017ca: PUSH1 0xa0
000017cc: DUP13
000017cd: ADD
000017ce: PUSH1 0x80
000017d0: DUP14
000017d1: ADD
000017d2: PUSH2 0x4d9b
000017d5: JUMP
000017d6: JUMPDEST
000017d7: DUP12
000017d8: PUSH1 0xa0
000017da: ADD
000017db: CALLDATALOAD
000017dc: DUP13
000017dd: PUSH1 0xc0
000017df: ADD
000017e0: CALLDATALOAD
000017e1: DUP14
000017e2: PUSH1 0x20
000017e4: ADD
000017e5: CALLDATALOAD
000017e6: DUP15
000017e7: DUP1
000017e8: PUSH2 0x0120
000017eb: ADD
000017ec: SWAP1
000017ed: PUSH2 0x17f6
000017f0: SWAP2
000017f1: SWAP1
000017f2: PUSH2 0x4db6
000017f5: JUMP
000017f6: JUMPDEST
000017f7: PUSH2 0x2e82
000017fa: JUMP
000017fb: JUMPDEST
000017fc: SWAP1
000017fd: POP
000017fe: PUSH2 0x1826
00001801: DUP2
00001802: PUSH2 0x180b
00001805: DUP12
00001806: DUP1
00001807: PUSH2 0x4e17
0000180a: JUMP
0000180b: JUMPDEST
0000180c: PUSH2 0x181b
0000180f: PUSH1 0x60
00001811: DUP15
00001812: ADD
00001813: PUSH1 0x40
00001815: DUP16
00001816: ADD
00001817: PUSH2 0x4e7b
0000181a: JUMP
0000181b: JUMPDEST
0000181c: DUP14
0000181d: PUSH2 0x0100
00001820: ADD
00001821: CALLDATALOAD
00001822: PUSH2 0x362a
00001825: JUMP
00001826: JUMPDEST
00001827: PUSH2 0x185c
0000182a: JUMPI
0000182b: PUSH1 0x40
0000182d: MLOAD
0000182e: PUSH32 0xb05e92fa00000000000000000000000000000000000000000000000000000000
0000184f: DUP2
00001850: MSTORE
00001851: PUSH1 0x04
00001853: ADD
00001854: PUSH1 0x40
00001856: MLOAD
00001857: DUP1
00001858: SWAP2
00001859: SUB
0000185a: SWAP1
0000185b: REVERT
0000185c: JUMPDEST
0000185d: PUSH2 0x189f
00001860: PUSH2 0x188a
00001863: PUSH1 0x01
00001865: PUSH32 0x3095e8dc547eeb8bf90020768c67e29e974614469d8f71638ac29f39b96e4893
00001886: PUSH2 0x4d4f
00001889: JUMP
0000188a: JUMPDEST
0000188b: PUSH2 0x189a
0000188e: PUSH1 0x80
00001890: DUP13
00001891: ADD
00001892: PUSH1 0x60
00001894: DUP14
00001895: ADD
00001896: PUSH2 0x4d9b
00001899: JUMP
0000189a: JUMPDEST
0000189b: PUSH2 0x2e7b
0000189e: JUMP
0000189f: JUMPDEST
000018a0: PUSH0
000018a1: DUP1
000018a2: PUSH2 0x18b1
000018a5: PUSH1 0xa0
000018a7: DUP13
000018a8: ADD
000018a9: PUSH1 0x80
000018ab: DUP14
000018ac: ADD
000018ad: PUSH2 0x4d9b
000018b0: JUMP
000018b1: JUMPDEST
000018b2: PUSH1 0x01
000018b4: PUSH1 0x01
000018b6: PUSH1 0xa0
000018b8: SHL
000018b9: SUB
000018ba: AND
000018bb: PUSH1 0xc0
000018bd: DUP13
000018be: ADD
000018bf: CALLDATALOAD
000018c0: PUSH2 0x18cd
000018c3: PUSH2 0x0120
000018c6: DUP15
000018c7: ADD
000018c8: DUP15
000018c9: PUSH2 0x4db6
000018cc: JUMP
000018cd: JUMPDEST
000018ce: PUSH1 0x40
000018d0: MLOAD
000018d1: PUSH2 0x18db
000018d4: SWAP3
000018d5: SWAP2
000018d6: SWAP1
000018d7: PUSH2 0x4d75
000018da: JUMP
000018db: JUMPDEST
000018dc: PUSH0
000018dd: PUSH1 0x40
000018df: MLOAD
000018e0: DUP1
000018e1: DUP4
000018e2: SUB
000018e3: DUP2
000018e4: DUP6
000018e5: DUP8
000018e6: GAS
000018e7: CALL
000018e8: SWAP3
000018e9: POP
000018ea: POP
000018eb: POP
000018ec: RETURNDATASIZE
000018ed: DUP1
000018ee: PUSH0
000018ef: DUP2
000018f0: EQ
000018f1: PUSH2 0x1915
000018f4: JUMPI
000018f5: PUSH1 0x40
000018f7: MLOAD
000018f8: SWAP2
000018f9: POP
000018fa: PUSH1 0x1f
000018fc: NOT
000018fd: PUSH1 0x3f
000018ff: RETURNDATASIZE
00001900: ADD
00001901: AND
00001902: DUP3
00001903: ADD
00001904: PUSH1 0x40
00001906: MSTORE
00001907: RETURNDATASIZE
00001908: DUP3
00001909: MSTORE
0000190a: RETURNDATASIZE
0000190b: PUSH0
0000190c: PUSH1 0x20
0000190e: DUP5
0000190f: ADD
00001910: RETURNDATACOPY
00001911: PUSH2 0x191a
00001914: JUMP
00001915: JUMPDEST
00001916: PUSH1 0x60
00001918: SWAP2
00001919: POP
0000191a: JUMPDEST
0000191b: POP
0000191c: SWAP2
0000191d: POP
0000191e: SWAP2
0000191f: POP
00001920: DUP2
00001921: PUSH2 0x1982
00001924: JUMPI
00001925: DUP1
00001926: MLOAD
00001927: ISZERO
00001928: PUSH2 0x1934
0000192b: JUMPI
0000192c: DUP1
0000192d: MLOAD
0000192e: DUP1
0000192f: DUP3
00001930: PUSH1 0x20
00001932: ADD
00001933: REVERT
00001934: JUMPDEST
00001935: PUSH2 0x1944
00001938: PUSH1 0xa0
0000193a: DUP13
0000193b: ADD
0000193c: PUSH1 0x80
0000193e: DUP14
0000193f: ADD
00001940: PUSH2 0x4d9b
00001943: JUMP
00001944: JUMPDEST
00001945: PUSH1 0x40
00001947: MLOAD
00001948: PUSH32 0x5461344300000000000000000000000000000000000000000000000000000000
00001969: DUP2
0000196a: MSTORE
0000196b: PUSH1 0x01
0000196d: PUSH1 0x01
0000196f: PUSH1 0xa0
00001971: SHL
00001972: SUB
00001973: SWAP1
00001974: SWAP2
00001975: AND
00001976: PUSH1 0x04
00001978: DUP3
00001979: ADD
0000197a: MSTORE
0000197b: PUSH1 0x24
0000197d: ADD
0000197e: PUSH2 0x107a
00001981: JUMP
00001982: JUMPDEST
00001983: PUSH2 0x19b0
00001986: PUSH2 0x138e
00001989: PUSH1 0x01
0000198b: PUSH32 0x3095e8dc547eeb8bf90020768c67e29e974614469d8f71638ac29f39b96e4893
000019ac: PUSH2 0x4d4f
000019af: JUMP
000019b0: JUMPDEST
000019b1: PUSH1 0x40
000019b3: MLOAD
000019b4: DUP4
000019b5: SWAP1
000019b6: PUSH32 0xa4c827e719e911e8f19393ccdb85b5102f08f0910604d340ba38390b7ff2ab0e
000019d7: SWAP1
000019d8: PUSH0
000019d9: SWAP1
000019da: LOG2
000019db: POP
000019dc: POP
000019dd: POP
000019de: POP
000019df: PUSH0
000019e0: DUP7
000019e1: GT
000019e2: ISZERO
000019e3: PUSH2 0x1ae7
000019e6: JUMPI
000019e7: DUP6
000019e8: PUSH0
000019e9: DUP5
000019ea: SWAP1
000019eb: SUB
000019ec: PUSH2 0x1a5d
000019ef: JUMPI
000019f0: DUP6
000019f1: EXTCODESIZE
000019f2: ISZERO
000019f3: DUP1
000019f4: ISZERO
000019f5: PUSH2 0x1a5b
000019f8: JUMPI
000019f9: GASPRICE
000019fa: GAS
000019fb: PUSH2 0x1a06
000019fe: PUSH2 0xbc7c
00001a01: DUP7
00001a02: PUSH2 0x4d62
00001a05: JUMP
00001a06: JUMPDEST
00001a07: PUSH2 0x1a10
00001a0a: SWAP2
00001a0b: SWAP1
00001a0c: PUSH2 0x4d4f
00001a0f: JUMP
00001a10: JUMPDEST
00001a11: PUSH2 0x1a1a
00001a14: SWAP2
00001a15: SWAP1
00001a16: PUSH2 0x4d84
00001a19: JUMP
00001a1a: JUMPDEST
00001a1b: SWAP2
00001a1c: POP
00001a1d: DUP2
00001a1e: DUP9
00001a1f: GT
00001a20: ISZERO
00001a21: PUSH2 0x1a57
00001a24: JUMPI
00001a25: PUSH1 0x01
00001a27: PUSH1 0x01
00001a29: PUSH1 0xa0
00001a2b: SHL
00001a2c: SUB
00001a2d: DUP8
00001a2e: AND
00001a2f: PUSH2 0x08fc
00001a32: PUSH2 0x1a3b
00001a35: DUP5
00001a36: DUP12
00001a37: PUSH2 0x4d4f
00001a3a: JUMP
00001a3b: JUMPDEST
00001a3c: PUSH1 0x40
00001a3e: MLOAD
00001a3f: DUP2
00001a40: ISZERO
00001a41: SWAP1
00001a42: SWAP3
00001a43: MUL
00001a44: SWAP2
00001a45: PUSH0
00001a46: DUP2
00001a47: DUP2
00001a48: DUP2
00001a49: DUP6
00001a4a: DUP9
00001a4b: DUP9
00001a4c: CALL
00001a4d: SWAP4
00001a4e: POP
00001a4f: POP
00001a50: POP
00001a51: POP
00001a52: POP
00001a53: PUSH2 0x1a5b
00001a56: JUMP
00001a57: JUMPDEST
00001a58: DUP8
00001a59: SWAP2
00001a5a: POP
00001a5b: JUMPDEST
00001a5c: POP
00001a5d: JUMPDEST
00001a5e: PUSH0
00001a5f: PUSH1 0x01
00001a61: PUSH1 0x01
00001a63: PUSH1 0xa0
00001a65: SHL
00001a66: SUB
00001a67: DUP5
00001a68: AND
00001a69: ISZERO
00001a6a: PUSH2 0x1a73
00001a6d: JUMPI
00001a6e: DUP4
00001a6f: PUSH2 0x1a75
00001a72: JUMP
00001a73: JUMPDEST
00001a74: CALLER
00001a75: JUMPDEST
00001a76: SWAP1
00001a77: POP
00001a78: PUSH0
00001a79: DUP2
00001a7a: PUSH1 0x01
00001a7c: PUSH1 0x01
00001a7e: PUSH1 0xa0
00001a80: SHL
00001a81: SUB
00001a82: AND
00001a83: PUSH2 0x08fc
00001a86: DUP5
00001a87: SWAP1
00001a88: DUP2
00001a89: ISZERO
00001a8a: MUL
00001a8b: SWAP1
00001a8c: PUSH1 0x40
00001a8e: MLOAD
00001a8f: PUSH0
00001a90: PUSH1 0x40
00001a92: MLOAD
00001a93: DUP1
00001a94: DUP4
00001a95: SUB
00001a96: DUP2
00001a97: DUP6
00001a98: DUP9
00001a99: DUP9
00001a9a: CALL
00001a9b: SWAP4
00001a9c: POP
00001a9d: POP
00001a9e: POP
00001a9f: POP
00001aa0: SWAP1
00001aa1: POP
00001aa2: DUP1
00001aa3: PUSH2 0x1ae3
00001aa6: JUMPI
00001aa7: PUSH1 0x40
00001aa9: MLOAD
00001aaa: PUSH32 0xa57c4df400000000000000000000000000000000000000000000000000000000
00001acb: DUP2
00001acc: MSTORE
00001acd: PUSH1 0x01
00001acf: PUSH1 0x01
00001ad1: PUSH1 0xa0
00001ad3: SHL
00001ad4: SUB
00001ad5: DUP4
00001ad6: AND
00001ad7: PUSH1 0x04
00001ad9: DUP3
00001ada: ADD
00001adb: MSTORE
00001adc: PUSH1 0x24
00001ade: ADD
00001adf: PUSH2 0x107a
00001ae2: JUMP
00001ae3: JUMPDEST
00001ae4: POP
00001ae5: POP
00001ae6: POP
00001ae7: JUMPDEST
00001ae8: POP
00001ae9: POP
00001aea: POP
00001aeb: POP
00001aec: POP
00001aed: POP
00001aee: PUSH2 0x1af5
00001af1: PUSH2 0x2fab
00001af4: JUMP
00001af5: JUMPDEST
00001af6: POP
00001af7: JUMP
00001af8: JUMPDEST
00001af9: PUSH0
00001afa: PUSH2 0x1b2b
00001afd: PUSH2 0x1b27
00001b00: PUSH1 0x01
00001b02: PUSH32 0x3095e8dc547eeb8bf90020768c67e29e974614469d8f71638ac29f39b96e4893
00001b23: PUSH2 0x4d4f
00001b26: JUMP
00001b27: JUMPDEST
00001b28: TLOAD
00001b29: SWAP1
00001b2a: JUMP
00001b2b: JUMPDEST
00001b2c: SWAP1
00001b2d: POP
00001b2e: SWAP1
00001b2f: JUMP
00001b30: JUMPDEST
00001b31: PUSH1 0x05
00001b33: PUSH2 0x1b3b
00001b36: DUP2
00001b37: PUSH2 0x2de9
00001b3a: JUMP
00001b3b: JUMPDEST
00001b3c: PUSH32 0x97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929
00001b5d: PUSH2 0x1b65
00001b60: DUP2
00001b61: PUSH2 0x2be2
00001b64: JUMP
00001b65: JUMPDEST
00001b66: PUSH2 0x1b72
00001b69: PUSH1 0x40
00001b6b: DUP7
00001b6c: ADD
00001b6d: DUP7
00001b6e: PUSH2 0x4db6
00001b71: JUMP
00001b72: JUMPDEST
00001b73: SWAP1
00001b74: POP
00001b75: PUSH0
00001b76: SUB
00001b77: PUSH2 0x1bac
00001b7a: JUMPI
00001b7b: PUSH1 0x40
00001b7d: MLOAD
00001b7e: PUSH32 0xc01eab5600000000000000000000000000000000000000000000000000000000
00001b9f: DUP2
00001ba0: MSTORE
00001ba1: PUSH1 0x04
00001ba3: ADD
00001ba4: PUSH1 0x40
00001ba6: MLOAD
00001ba7: DUP1
00001ba8: SWAP2
00001ba9: SUB
00001baa: SWAP1
00001bab: REVERT
00001bac: JUMPDEST
00001bad: PUSH0
00001bae: DUP4
00001baf: DUP2
00001bb0: MSTORE
00001bb1: PUSH2 0x01be
00001bb4: PUSH1 0x20
00001bb6: MSTORE
00001bb7: PUSH1 0x40
00001bb9: SWAP1
00001bba: KECCAK256
00001bbb: SLOAD
00001bbc: ISZERO
00001bbd: PUSH2 0x1bf5
00001bc0: JUMPI
00001bc1: PUSH1 0x40
00001bc3: MLOAD
00001bc4: PUSH32 0x0f06cd1500000000000000000000000000000000000000000000000000000000
00001be5: DUP2
00001be6: MSTORE
00001be7: PUSH1 0x04
00001be9: DUP2
00001bea: ADD
00001beb: DUP5
00001bec: SWAP1
00001bed: MSTORE
00001bee: PUSH1 0x24
00001bf0: ADD
00001bf1: PUSH2 0x107a
00001bf4: JUMP
00001bf5: JUMPDEST
00001bf6: PUSH0
00001bf7: DUP5
00001bf8: DUP2
00001bf9: MSTORE
00001bfa: PUSH2 0x01be
00001bfd: PUSH1 0x20
00001bff: MSTORE
00001c00: PUSH1 0x40
00001c02: DUP2
00001c03: KECCAK256
00001c04: SLOAD
00001c05: SWAP1
00001c06: SUB
00001c07: PUSH2 0x1c3f
00001c0a: JUMPI
00001c0b: PUSH1 0x40
00001c0d: MLOAD
00001c0e: PUSH32 0x6e5424c200000000000000000000000000000000000000000000000000000000
00001c2f: DUP2
00001c30: MSTORE
00001c31: PUSH1 0x04
00001c33: DUP2
00001c34: ADD
00001c35: DUP6
00001c36: SWAP1
00001c37: MSTORE
00001c38: PUSH1 0x24
00001c3a: ADD
00001c3b: PUSH2 0x107a
00001c3e: JUMP
00001c3f: JUMPDEST
00001c40: PUSH0
00001c41: PUSH2 0x1c4d
00001c44: PUSH1 0x40
00001c46: DUP8
00001c47: ADD
00001c48: DUP8
00001c49: PUSH2 0x4db6
00001c4c: JUMP
00001c4d: JUMPDEST
00001c4e: PUSH1 0x40
00001c50: MLOAD
00001c51: PUSH2 0x1c5b
00001c54: SWAP3
00001c55: SWAP2
00001c56: SWAP1
00001c57: PUSH2 0x4d75
00001c5a: JUMP
00001c5b: JUMPDEST
00001c5c: PUSH1 0x40
00001c5e: MLOAD
00001c5f: DUP1
00001c60: SWAP2
00001c61: SUB
00001c62: SWAP1
00001c63: KECCAK256
00001c64: SWAP1
00001c65: POP
00001c66: PUSH0
00001c67: PUSH2 0x1c7d
00001c6a: DUP8
00001c6b: PUSH1 0x20
00001c6d: ADD
00001c6e: CALLDATALOAD
00001c6f: DUP4
00001c70: PUSH0
00001c71: SWAP2
00001c72: DUP3
00001c73: MSTORE
00001c74: PUSH1 0x20
00001c76: MSTORE
00001c77: PUSH1 0x40
00001c79: SWAP1
00001c7a: KECCAK256
00001c7b: SWAP1
00001c7c: JUMP
00001c7d: JUMPDEST
00001c7e: SWAP1
00001c7f: POP
00001c80: PUSH0
00001c81: PUSH2 0x1cc9
00001c84: DUP8
00001c85: PUSH1 0x20
00001c87: DUP11
00001c88: ADD
00001c89: CALLDATALOAD
00001c8a: DUP11
00001c8b: CALLDATALOAD
00001c8c: DUP6
00001c8d: PUSH2 0x1ca2
00001c90: PUSH2 0x1c9c
00001c93: PUSH1 0x40
00001c95: DUP16
00001c96: ADD
00001c97: DUP16
00001c98: PUSH2 0x4db6
00001c9b: JUMP
00001c9c: JUMPDEST
00001c9d: DUP10
00001c9e: PUSH2 0x3737
00001ca1: JUMP
00001ca2: JUMPDEST
00001ca3: PUSH1 0x40
00001ca5: DUP1
00001ca6: MLOAD
00001ca7: SWAP6
00001ca8: DUP7
00001ca9: MSTORE
00001caa: PUSH1 0x20
00001cac: DUP7
00001cad: ADD
00001cae: SWAP5
00001caf: SWAP1
00001cb0: SWAP5
00001cb1: MSTORE
00001cb2: SWAP3
00001cb3: DUP5
00001cb4: ADD
00001cb5: SWAP2
00001cb6: SWAP1
00001cb7: SWAP2
00001cb8: MSTORE
00001cb9: PUSH1 0x60
00001cbb: DUP4
00001cbc: ADD
00001cbd: MSTORE
00001cbe: PUSH1 0x80
00001cc0: DUP3
00001cc1: ADD
00001cc2: MSTORE
00001cc3: PUSH1 0xa0
00001cc5: SWAP1
00001cc6: KECCAK256
00001cc7: SWAP1
00001cc8: JUMP
00001cc9: JUMPDEST
00001cca: SWAP1
00001ccb: POP
00001ccc: DUP1
00001ccd: DUP7
00001cce: EQ
00001ccf: PUSH2 0x1d0e
00001cd2: JUMPI
00001cd3: PUSH1 0x40
00001cd5: MLOAD
00001cd6: PUSH32 0xd3664fb300000000000000000000000000000000000000000000000000000000
00001cf7: DUP2
00001cf8: MSTORE
00001cf9: PUSH1 0x04
00001cfb: DUP2
00001cfc: ADD
00001cfd: DUP8
00001cfe: SWAP1
00001cff: MSTORE
00001d00: PUSH1 0x24
00001d02: DUP2
00001d03: ADD
00001d04: DUP3
00001d05: SWAP1
00001d06: MSTORE
00001d07: PUSH1 0x44
00001d09: ADD
00001d0a: PUSH2 0x107a
00001d0d: JUMP
00001d0e: JUMPDEST
00001d0f: PUSH0
00001d10: DUP2
00001d11: DUP2
00001d12: MSTORE
00001d13: PUSH2 0x01be
00001d16: PUSH1 0x20
00001d18: MSTORE
00001d19: PUSH1 0x40
00001d1b: SWAP1
00001d1c: DUP2
00001d1d: SWAP1
00001d1e: KECCAK256
00001d1f: PUSH1 0x01
00001d21: SWAP1
00001d22: SSTORE
00001d23: MLOAD
00001d24: DUP2
00001d25: SWAP1
00001d26: PUSH32 0x55f4c645c36aa5cd3f443d6be44d7a7a5df9d2100d7139dfc69d4289ee072319
00001d47: SWAP1
00001d48: PUSH2 0x1d5e
00001d4b: SWAP1
00001d4c: DUP11
00001d4d: SWAP1
00001d4e: DUP13
00001d4f: CALLDATALOAD
00001d50: SWAP1
00001d51: SWAP2
00001d52: DUP3
00001d53: MSTORE
00001d54: PUSH1 0x20
00001d56: DUP3
00001d57: ADD
00001d58: MSTORE
00001d59: PUSH1 0x40
00001d5b: ADD
00001d5c: SWAP1
00001d5d: JUMP
00001d5e: JUMPDEST
00001d5f: PUSH1 0x40
00001d61: MLOAD
00001d62: DUP1
00001d63: SWAP2
00001d64: SUB
00001d65: SWAP1
00001d66: LOG2
00001d67: POP
00001d68: POP
00001d69: POP
00001d6a: POP
00001d6b: POP
00001d6c: POP
00001d6d: POP
00001d6e: POP
00001d6f: JUMP
00001d70: JUMPDEST
00001d71: PUSH1 0x04
00001d73: PUSH2 0x1d7b
00001d76: DUP2
00001d77: PUSH2 0x2de9
00001d7a: JUMP
00001d7b: JUMPDEST
00001d7c: PUSH32 0x97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929
00001d9d: PUSH2 0x1da5
00001da0: DUP2
00001da1: PUSH2 0x2be2
00001da4: JUMP
00001da5: JUMPDEST
00001da6: PUSH0
00001da7: DUP6
00001da8: SWAP1
00001da9: SUB
00001daa: PUSH2 0x1ddf
00001dad: JUMPI
00001dae: PUSH1 0x40
00001db0: MLOAD
00001db1: PUSH32 0xb1504a5f00000000000000000000000000000000000000000000000000000000
00001dd2: DUP2
00001dd3: MSTORE
00001dd4: PUSH1 0x04
00001dd6: ADD
00001dd7: PUSH1 0x40
00001dd9: MLOAD
00001dda: DUP1
00001ddb: SWAP2
00001ddc: SUB
00001ddd: SWAP1
00001dde: REVERT
00001ddf: JUMPDEST
00001de0: DUP5
00001de1: BLOBHASH
00001de2: ISZERO
00001de3: PUSH2 0x1e1b
00001de6: JUMPI
00001de7: PUSH1 0x40
00001de9: MLOAD
00001dea: PUSH32 0x8019aff700000000000000000000000000000000000000000000000000000000
00001e0b: DUP2
00001e0c: MSTORE
00001e0d: PUSH1 0x04
00001e0f: DUP2
00001e10: ADD
00001e11: DUP7
00001e12: SWAP1
00001e13: MSTORE
00001e14: PUSH1 0x24
00001e16: ADD
00001e17: PUSH2 0x107a
00001e1a: JUMP
00001e1b: JUMPDEST
00001e1c: PUSH0
00001e1d: DUP5
00001e1e: DUP2
00001e1f: MSTORE
00001e20: PUSH2 0x01be
00001e23: PUSH1 0x20
00001e25: MSTORE
00001e26: PUSH1 0x40
00001e28: DUP2
00001e29: KECCAK256
00001e2a: SLOAD
00001e2b: SWAP1
00001e2c: SUB
00001e2d: PUSH2 0x1e65
00001e30: JUMPI
00001e31: PUSH1 0x40
00001e33: MLOAD
00001e34: PUSH32 0x6e5424c200000000000000000000000000000000000000000000000000000000
00001e55: DUP2
00001e56: MSTORE
00001e57: PUSH1 0x04
00001e59: DUP2
00001e5a: ADD
00001e5b: DUP6
00001e5c: SWAP1
00001e5d: MSTORE
00001e5e: PUSH1 0x24
00001e60: ADD
00001e61: PUSH2 0x107a
00001e64: JUMP
00001e65: JUMPDEST
00001e66: PUSH0
00001e67: DUP4
00001e68: DUP2
00001e69: MSTORE
00001e6a: PUSH2 0x01be
00001e6d: PUSH1 0x20
00001e6f: MSTORE
00001e70: PUSH1 0x40
00001e72: SWAP1
00001e73: KECCAK256
00001e74: SLOAD
00001e75: ISZERO
00001e76: PUSH2 0x1eae
00001e79: JUMPI
00001e7a: PUSH1 0x40
00001e7c: MLOAD
00001e7d: PUSH32 0x0f06cd1500000000000000000000000000000000000000000000000000000000
00001e9e: DUP2
00001e9f: MSTORE
00001ea0: PUSH1 0x04
00001ea2: DUP2
00001ea3: ADD
00001ea4: DUP5
00001ea5: SWAP1
00001ea6: MSTORE
00001ea7: PUSH1 0x24
00001ea9: ADD
00001eaa: PUSH2 0x107a
00001ead: JUMP
00001eae: JUMPDEST
00001eaf: PUSH1 0x40
00001eb1: DUP1
00001eb2: MLOAD
00001eb3: PUSH1 0xa0
00001eb5: DUP2
00001eb6: ADD
00001eb7: DUP3
00001eb8: MSTORE
00001eb9: PUSH0
00001eba: DUP1
00001ebb: DUP3
00001ebc: MSTORE
00001ebd: PUSH1 0x60
00001ebf: PUSH1 0x20
00001ec1: DUP4
00001ec2: ADD
00001ec3: DUP2
00001ec4: SWAP1
00001ec5: MSTORE
00001ec6: SWAP3
00001ec7: DUP3
00001ec8: ADD
00001ec9: DUP4
00001eca: SWAP1
00001ecb: MSTORE
00001ecc: SWAP2
00001ecd: DUP2
00001ece: ADD
00001ecf: DUP3
00001ed0: SWAP1
00001ed1: MSTORE
00001ed2: PUSH1 0x80
00001ed4: DUP2
00001ed5: ADD
00001ed6: DUP3
00001ed7: SWAP1
00001ed8: MSTORE
00001ed9: DUP2
00001eda: SWAP1
00001edb: DUP7
00001edc: PUSH0
00001edd: JUMPDEST
00001ede: DUP10
00001edf: DUP2
00001ee0: LT
00001ee1: ISZERO
00001ee2: PUSH2 0x1fb3
00001ee5: JUMPI
00001ee6: DUP11
00001ee7: DUP11
00001ee8: DUP3
00001ee9: DUP2
00001eea: DUP2
00001eeb: LT
00001eec: PUSH2 0x1ef7
00001eef: JUMPI
00001ef0: PUSH2 0x1ef7
00001ef3: PUSH2 0x4e9e
00001ef6: JUMP
00001ef7: JUMPDEST
00001ef8: SWAP1
00001ef9: POP
00001efa: PUSH1 0x20
00001efc: MUL
00001efd: DUP2
00001efe: ADD
00001eff: SWAP1
00001f00: PUSH2 0x1f09
00001f03: SWAP2
00001f04: SWAP1
00001f05: PUSH2 0x4ecb
00001f08: JUMP
00001f09: JUMPDEST
00001f0a: PUSH2 0x1f12
00001f0d: SWAP1
00001f0e: PUSH2 0x4fe8
00001f11: JUMP
00001f12: JUMPDEST
00001f13: DUP2
00001f14: BLOBHASH
00001f15: SWAP5
00001f16: POP
00001f17: SWAP3
00001f18: POP
00001f19: DUP4
00001f1a: PUSH2 0x1f52
00001f1d: JUMPI
00001f1e: PUSH1 0x40
00001f20: MLOAD
00001f21: PUSH32 0xc0e41e1d00000000000000000000000000000000000000000000000000000000
00001f42: DUP2
00001f43: MSTORE
00001f44: PUSH1 0x04
00001f46: DUP2
00001f47: ADD
00001f48: DUP3
00001f49: SWAP1
00001f4a: MSTORE
00001f4b: PUSH1 0x24
00001f4d: ADD
00001f4e: PUSH2 0x107a
00001f51: JUMP
00001f52: JUMPDEST
00001f53: PUSH1 0x80
00001f55: DUP4
00001f56: ADD
00001f57: MLOAD
00001f58: PUSH0
00001f59: DUP2
00001f5a: DUP2
00001f5b: MSTORE
00001f5c: PUSH1 0x20
00001f5e: DUP7
00001f5f: SWAP1
00001f60: MSTORE
00001f61: PUSH1 0x40
00001f63: SWAP1
00001f64: KECCAK256
00001f65: SWAP6
00001f66: POP
00001f67: PUSH2 0x1f80
00001f6a: DUP6
00001f6b: DUP8
00001f6c: PUSH0
00001f6d: SHR
00001f6e: DUP7
00001f6f: PUSH0
00001f70: ADD
00001f71: MLOAD
00001f72: DUP8
00001f73: PUSH1 0x20
00001f75: ADD
00001f76: MLOAD
00001f77: DUP9
00001f78: PUSH1 0x40
00001f7a: ADD
00001f7b: MLOAD
00001f7c: PUSH2 0x3838
00001f7f: JUMP
00001f80: JUMPDEST
00001f81: PUSH1 0x60
00001f83: DUP5
00001f84: DUP2
00001f85: ADD
00001f86: MLOAD
00001f87: DUP6
00001f88: MLOAD
00001f89: PUSH1 0x40
00001f8b: DUP1
00001f8c: MLOAD
00001f8d: SWAP7
00001f8e: DUP8
00001f8f: MSTORE
00001f90: PUSH1 0x20
00001f92: DUP8
00001f93: ADD
00001f94: SWAP5
00001f95: SWAP1
00001f96: SWAP5
00001f97: MSTORE
00001f98: SWAP3
00001f99: DUP6
00001f9a: ADD
00001f9b: MSTORE
00001f9c: DUP4
00001f9d: ADD
00001f9e: DUP7
00001f9f: SWAP1
00001fa0: MSTORE
00001fa1: PUSH1 0x80
00001fa3: DUP4
00001fa4: ADD
00001fa5: MSTORE
00001fa6: PUSH1 0xa0
00001fa8: SWAP1
00001fa9: SWAP2
00001faa: KECCAK256
00001fab: SWAP1
00001fac: PUSH1 0x01
00001fae: ADD
00001faf: PUSH2 0x1edd
00001fb2: JUMP
00001fb3: JUMPDEST
00001fb4: POP
00001fb5: DUP1
00001fb6: DUP8
00001fb7: EQ
00001fb8: PUSH2 0x1ff7
00001fbb: JUMPI
00001fbc: PUSH1 0x40
00001fbe: MLOAD
00001fbf: PUSH32 0xd3664fb300000000000000000000000000000000000000000000000000000000
00001fe0: DUP2
00001fe1: MSTORE
00001fe2: PUSH1 0x04
00001fe4: DUP2
00001fe5: ADD
00001fe6: DUP9
00001fe7: SWAP1
00001fe8: MSTORE
00001fe9: PUSH1 0x24
00001feb: DUP2
00001fec: ADD
00001fed: DUP3
00001fee: SWAP1
00001fef: MSTORE
00001ff0: PUSH1 0x44
00001ff2: ADD
00001ff3: PUSH2 0x107a
00001ff6: JUMP
00001ff7: JUMPDEST
00001ff8: PUSH0
00001ff9: DUP2
00001ffa: DUP2
00001ffb: MSTORE
00001ffc: PUSH2 0x01be
00001fff: PUSH1 0x20
00002001: SWAP1
00002002: DUP2
00002003: MSTORE
00002004: PUSH1 0x40
00002006: SWAP2
00002007: DUP3
00002008: SWAP1
00002009: KECCAK256
0000200a: PUSH1 0x01
0000200c: SWAP1
0000200d: SSTORE
0000200e: PUSH1 0x60
00002010: DUP5
00002011: ADD
00002012: MLOAD
00002013: DUP3
00002014: MLOAD
00002015: DUP12
00002016: DUP2
00002017: MSTORE
00002018: SWAP2
00002019: DUP3
0000201a: ADD
0000201b: MSTORE
0000201c: DUP3
0000201d: SWAP2
0000201e: PUSH32 0x55f4c645c36aa5cd3f443d6be44d7a7a5df9d2100d7139dfc69d4289ee072319
0000203f: SWAP2
00002040: ADD
00002041: PUSH1 0x40
00002043: MLOAD
00002044: DUP1
00002045: SWAP2
00002046: SUB
00002047: SWAP1
00002048: LOG2
00002049: POP
0000204a: POP
0000204b: POP
0000204c: POP
0000204d: POP
0000204e: POP
0000204f: POP
00002050: POP
00002051: POP
00002052: POP
00002053: JUMP
00002054: JUMPDEST
00002055: PUSH1 0x08
00002057: DUP2
00002058: SWAP1
00002059: SHR
0000205a: PUSH0
0000205b: SWAP1
0000205c: DUP2
0000205d: MSTORE
0000205e: PUSH2 0x014f
00002061: PUSH1 0x20
00002063: MSTORE
00002064: PUSH1 0x40
00002066: DUP2
00002067: KECCAK256
00002068: SLOAD
00002069: PUSH1 0x01
0000206b: PUSH1 0xff
0000206d: DUP5
0000206e: AND
0000206f: SHL
00002070: AND
00002071: ISZERO
00002072: ISZERO
00002073: PUSH2 0x0ff6
00002076: JUMP
00002077: JUMPDEST
00002078: PUSH1 0x02
0000207a: PUSH2 0x2082
0000207d: DUP2
0000207e: PUSH2 0x2de9
00002081: JUMP
00002082: JUMPDEST
00002083: PUSH1 0x01
00002085: PUSH1 0x01
00002087: PUSH1 0xa0
00002089: SHL
0000208a: SUB
0000208b: DUP6
0000208c: AND
0000208d: PUSH2 0x20c2
00002090: JUMPI
00002091: PUSH1 0x40
00002093: MLOAD
00002094: PUSH32 0x8579befe00000000000000000000000000000000000000000000000000000000
000020b5: DUP2
000020b6: MSTORE
000020b7: PUSH1 0x04
000020b9: ADD
000020ba: PUSH1 0x40
000020bc: MLOAD
000020bd: DUP1
000020be: SWAP2
000020bf: SUB
000020c0: SWAP1
000020c1: REVERT
000020c2: JUMPDEST
000020c3: CALLVALUE
000020c4: DUP5
000020c5: GT
000020c6: ISZERO
000020c7: PUSH2 0x20fc
000020ca: JUMPI
000020cb: PUSH1 0x40
000020cd: MLOAD
000020ce: PUSH32 0xb03b693200000000000000000000000000000000000000000000000000000000
000020ef: DUP2
000020f0: MSTORE
000020f1: PUSH1 0x04
000020f3: ADD
000020f4: PUSH1 0x40
000020f6: MLOAD
000020f7: DUP1
000020f8: SWAP2
000020f9: SUB
000020fa: SWAP1
000020fb: REVERT
000020fc: JUMPDEST
000020fd: PUSH1 0xe4
000020ff: DUP1
00002100: SLOAD
00002101: PUSH0
00002102: SWAP2
00002103: DUP3
00002104: PUSH2 0x210c
00002107: DUP4
00002108: PUSH2 0x5075
0000210b: JUMP
0000210c: JUMPDEST
0000210d: SWAP1
0000210e: SWAP2
0000210f: SSTORE
00002110: POP
00002111: SWAP1
00002112: POP
00002113: PUSH0
00002114: PUSH2 0x211d
00002117: DUP7
00002118: CALLVALUE
00002119: PUSH2 0x4d4f
0000211c: JUMP
0000211d: JUMPDEST
0000211e: SWAP1
0000211f: POP
00002120: PUSH0
00002121: PUSH2 0x212f
00002124: CALLER
00002125: DUP10
00002126: DUP10
00002127: DUP6
00002128: DUP8
00002129: DUP12
0000212a: DUP12
0000212b: PUSH2 0x2e82
0000212e: JUMP
0000212f: JUMPDEST
00002130: SWAP1
00002131: POP
00002132: PUSH2 0x213b
00002135: DUP4
00002136: DUP3
00002137: PUSH2 0x39da
0000213a: JUMP
0000213b: JUMPDEST
0000213c: DUP1
0000213d: DUP9
0000213e: PUSH1 0x01
00002140: PUSH1 0x01
00002142: PUSH1 0xa0
00002144: SHL
00002145: SUB
00002146: AND
00002147: CALLER
00002148: PUSH1 0x01
0000214a: PUSH1 0x01
0000214c: PUSH1 0xa0
0000214e: SHL
0000214f: SUB
00002150: AND
00002151: PUSH32 0xe856c2b8bd4eb0027ce32eeaf595c21b0b6b4644b326e5b7bd80a1cf8db72e6c
00002172: DUP11
00002173: DUP7
00002174: DUP9
00002175: DUP13
00002176: DUP13
00002177: PUSH1 0x40
00002179: MLOAD
0000217a: PUSH2 0x2187
0000217d: SWAP6
0000217e: SWAP5
0000217f: SWAP4
00002180: SWAP3
00002181: SWAP2
00002182: SWAP1
00002183: PUSH2 0x50d5
00002186: JUMP
00002187: JUMPDEST
00002188: PUSH1 0x40
0000218a: MLOAD
0000218b: DUP1
0000218c: SWAP2
0000218d: SUB
0000218e: SWAP1
0000218f: LOG4
00002190: POP
00002191: POP
00002192: POP
00002193: POP
00002194: POP
00002195: POP
00002196: POP
00002197: POP
00002198: JUMP
00002199: JUMPDEST
0000219a: PUSH0
0000219b: SLOAD
0000219c: PUSH2 0x0100
0000219f: SWAP1
000021a0: DIV
000021a1: PUSH1 0xff
000021a3: AND
000021a4: ISZERO
000021a5: DUP1
000021a6: DUP1
000021a7: ISZERO
000021a8: PUSH2 0x21b7
000021ab: JUMPI
000021ac: POP
000021ad: PUSH0
000021ae: SLOAD
000021af: PUSH1 0x01
000021b1: PUSH1 0xff
000021b3: SWAP1
000021b4: SWAP2
000021b5: AND
000021b6: LT
000021b7: JUMPDEST
000021b8: DUP1
000021b9: PUSH2 0x21d0
000021bc: JUMPI
000021bd: POP
000021be: ADDRESS
000021bf: EXTCODESIZE
000021c0: ISZERO
000021c1: DUP1
000021c2: ISZERO
000021c3: PUSH2 0x21d0
000021c6: JUMPI
000021c7: POP
000021c8: PUSH0
000021c9: SLOAD
000021ca: PUSH1 0xff
000021cc: AND
000021cd: PUSH1 0x01
000021cf: EQ
000021d0: JUMPDEST
000021d1: PUSH2 0x225c
000021d4: JUMPI
000021d5: PUSH1 0x40
000021d7: MLOAD
000021d8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000021f9: DUP2
000021fa: MSTORE
000021fb: PUSH1 0x20
000021fd: PUSH1 0x04
000021ff: DUP3
00002200: ADD
00002201: MSTORE
00002202: PUSH1 0x2e
00002204: PUSH1 0x24
00002206: DUP3
00002207: ADD
00002208: MSTORE
00002209: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561
0000222a: PUSH1 0x44
0000222c: DUP3
0000222d: ADD
0000222e: MSTORE
0000222f: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000
00002250: PUSH1 0x64
00002252: DUP3
00002253: ADD
00002254: MSTORE
00002255: PUSH1 0x84
00002257: ADD
00002258: PUSH2 0x107a
0000225b: JUMP
0000225c: JUMPDEST
0000225d: PUSH0
0000225e: DUP1
0000225f: SLOAD
00002260: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00002281: AND
00002282: PUSH1 0x01
00002284: OR
00002285: SWAP1
00002286: SSTORE
00002287: DUP1
00002288: ISZERO
00002289: PUSH2 0x22b8
0000228c: JUMPI
0000228d: PUSH0
0000228e: DUP1
0000228f: SLOAD
00002290: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
000022b1: AND
000022b2: PUSH2 0x0100
000022b5: OR
000022b6: SWAP1
000022b7: SSTORE
000022b8: JUMPDEST
000022b9: PUSH0
000022ba: PUSH2 0x22c9
000022bd: PUSH1 0x80
000022bf: DUP5
000022c0: ADD
000022c1: PUSH1 0x60
000022c3: DUP6
000022c4: ADD
000022c5: PUSH2 0x4d9b
000022c8: JUMP
000022c9: JUMPDEST
000022ca: PUSH1 0x01
000022cc: PUSH1 0x01
000022ce: PUSH1 0xa0
000022d0: SHL
000022d1: SUB
000022d2: AND
000022d3: SUB
000022d4: PUSH2 0x2309
000022d7: JUMPI
000022d8: PUSH1 0x40
000022da: MLOAD
000022db: PUSH32 0x8579befe00000000000000000000000000000000000000000000000000000000
000022fc: DUP2
000022fd: MSTORE
000022fe: PUSH1 0x04
00002300: ADD
00002301: PUSH1 0x40
00002303: MLOAD
00002304: DUP1
00002305: SWAP2
00002306: SUB
00002307: SWAP1
00002308: REVERT
00002309: JUMPDEST
0000230a: PUSH2 0x232c
0000230d: PUSH2 0x2319
00002310: PUSH1 0xe0
00002312: DUP5
00002313: ADD
00002314: DUP5
00002315: PUSH2 0x5105
00002318: JUMP
00002319: JUMPDEST
0000231a: PUSH2 0x2327
0000231d: PUSH2 0x0100
00002320: DUP7
00002321: ADD
00002322: DUP7
00002323: PUSH2 0x5105
00002326: JUMP
00002327: JUMPDEST
00002328: PUSH2 0x3a56
0000232b: JUMP
0000232c: JUMPDEST
0000232d: PUSH2 0x233e
00002330: DUP3
00002331: PUSH1 0x80
00002333: ADD
00002334: CALLDATALOAD
00002335: DUP4
00002336: PUSH1 0xa0
00002338: ADD
00002339: CALLDATALOAD
0000233a: PUSH2 0x3d04
0000233d: JUMP
0000233e: JUMPDEST
0000233f: PUSH2 0x2359
00002342: PUSH0
00002343: PUSH2 0x2354
00002346: PUSH2 0x0160
00002349: DUP6
0000234a: ADD
0000234b: PUSH2 0x0140
0000234e: DUP7
0000234f: ADD
00002350: PUSH2 0x4d9b
00002353: JUMP
00002354: JUMPDEST
00002355: PUSH2 0x2bec
00002358: JUMP
00002359: JUMPDEST
0000235a: PUSH2 0x236e
0000235d: PUSH2 0x2369
00002360: PUSH1 0xc0
00002362: DUP5
00002363: ADD
00002364: DUP5
00002365: PUSH2 0x5105
00002368: JUMP
00002369: JUMPDEST
0000236a: PUSH2 0x3dc5
0000236d: JUMP
0000236e: JUMPDEST
0000236f: PUSH2 0x237e
00002372: PUSH1 0x80
00002374: DUP4
00002375: ADD
00002376: PUSH1 0x60
00002378: DUP5
00002379: ADD
0000237a: PUSH2 0x4d9b
0000237d: JUMP
0000237e: JUMPDEST
0000237f: PUSH0
00002380: DUP1
00002381: MSTORE
00002382: PUSH2 0x011b
00002385: PUSH1 0x20
00002387: MSTORE
00002388: PUSH32 0x033d11f27e62ab919708ec716731da80d261a6e4253259b7acde9bf89d28ec18
000023a9: DUP1
000023aa: SLOAD
000023ab: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000023cc: AND
000023cd: PUSH1 0x01
000023cf: PUSH1 0x01
000023d1: PUSH1 0xa0
000023d3: SHL
000023d4: SUB
000023d5: SWAP3
000023d6: SWAP1
000023d7: SWAP3
000023d8: AND
000023d9: SWAP2
000023da: SWAP1
000023db: SWAP2
000023dc: OR
000023dd: SWAP1
000023de: SSTORE
000023df: PUSH2 0x23f0
000023e2: PUSH2 0x0140
000023e5: DUP4
000023e6: ADD
000023e7: PUSH2 0x0120
000023ea: DUP5
000023eb: ADD
000023ec: PUSH2 0x4d9b
000023ef: JUMP
000023f0: JUMPDEST
000023f1: PUSH2 0x01c0
000023f4: DUP1
000023f5: SLOAD
000023f6: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
00002417: AND
00002418: PUSH1 0x01
0000241a: PUSH1 0x01
0000241c: PUSH1 0xa0
0000241e: SHL
0000241f: SUB
00002420: SWAP3
00002421: SWAP1
00002422: SWAP3
00002423: AND
00002424: SWAP2
00002425: SWAP1
00002426: SWAP2
00002427: OR
00002428: SWAP1
00002429: SSTORE
0000242a: PUSH2 0x243b
0000242d: PUSH2 0x0140
00002430: DUP4
00002431: ADD
00002432: PUSH2 0x0120
00002435: DUP5
00002436: ADD
00002437: PUSH2 0x4d9b
0000243a: JUMP
0000243b: JUMPDEST
0000243c: PUSH1 0x01
0000243e: PUSH1 0x01
00002440: PUSH1 0xa0
00002442: SHL
00002443: SUB
00002444: AND
00002445: CALLER
00002446: PUSH1 0x01
00002448: PUSH1 0x01
0000244a: PUSH1 0xa0
0000244c: SHL
0000244d: SUB
0000244e: AND
0000244f: PUSH32 0x1f82add12d98b5eaed4d6a6d5f74cfc7a85e5c90c335ab5562f77f220ed45d5f
00002470: PUSH1 0x40
00002472: MLOAD
00002473: PUSH1 0x40
00002475: MLOAD
00002476: DUP1
00002477: SWAP2
00002478: SUB
00002479: SWAP1
0000247a: LOG3
0000247b: PUSH1 0x20
0000247d: DUP3
0000247e: DUP2
0000247f: ADD
00002480: CALLDATALOAD
00002481: PUSH2 0x0119
00002484: DUP2
00002485: SWAP1
00002486: SSTORE
00002487: PUSH0
00002488: SWAP1
00002489: DUP2
0000248a: MSTORE
0000248b: PUSH2 0x011a
0000248e: DUP3
0000248f: MSTORE
00002490: PUSH1 0x40
00002492: DUP1
00002493: DUP3
00002494: KECCAK256
00002495: DUP6
00002496: CALLDATALOAD
00002497: SWAP1
00002498: SSTORE
00002499: DUP1
0000249a: MLOAD
0000249b: DUP1
0000249c: DUP5
0000249d: ADD
0000249e: DUP4
0000249f: SWAP1
000024a0: MSTORE
000024a1: DUP1
000024a2: DUP3
000024a3: ADD
000024a4: DUP4
000024a5: SWAP1
000024a6: MSTORE
000024a7: PUSH32 0x072ead6777750dc20232d1cee8dc9a395c2d350df4bbaa5096c6f59b214dcecd
000024c8: PUSH1 0x60
000024ca: DUP1
000024cb: DUP4
000024cc: ADD
000024cd: DUP3
000024ce: SWAP1
000024cf: MSTORE
000024d0: PUSH1 0x80
000024d2: DUP4
000024d3: ADD
000024d4: DUP6
000024d5: SWAP1
000024d6: MSTORE
000024d7: PUSH1 0xa0
000024d9: DUP1
000024da: DUP5
000024db: ADD
000024dc: DUP7
000024dd: SWAP1
000024de: MSTORE
000024df: DUP5
000024e0: MLOAD
000024e1: DUP1
000024e2: DUP6
000024e3: SUB
000024e4: SWAP1
000024e5: SWAP2
000024e6: ADD
000024e7: DUP2
000024e8: MSTORE
000024e9: PUSH1 0xc0
000024eb: DUP5
000024ec: ADD
000024ed: DUP6
000024ee: MSTORE
000024ef: DUP1
000024f0: MLOAD
000024f1: SWAP1
000024f2: DUP8
000024f3: ADD
000024f4: KECCAK256
000024f5: DUP6
000024f6: MSTORE
000024f7: PUSH2 0x01be
000024fa: DUP7
000024fb: MSTORE
000024fc: DUP4
000024fd: DUP6
000024fe: KECCAK256
000024ff: PUSH1 0x01
00002501: SWAP1
00002502: SSTORE
00002503: PUSH1 0xe0
00002505: DUP4
00002506: ADD
00002507: DUP6
00002508: SWAP1
00002509: MSTORE
0000250a: PUSH2 0x0100
0000250d: DUP4
0000250e: ADD
0000250f: DUP6
00002510: SWAP1
00002511: MSTORE
00002512: PUSH2 0x0120
00002515: DUP4
00002516: ADD
00002517: SWAP2
00002518: SWAP1
00002519: SWAP2
0000251a: MSTORE
0000251b: PUSH2 0x0140
0000251e: DUP3
0000251f: ADD
00002520: DUP5
00002521: SWAP1
00002522: MSTORE
00002523: PUSH2 0x0160
00002526: DUP1
00002527: DUP4
00002528: ADD
00002529: DUP6
0000252a: SWAP1
0000252b: MSTORE
0000252c: DUP4
0000252d: MLOAD
0000252e: DUP1
0000252f: DUP5
00002530: SUB
00002531: SWAP1
00002532: SWAP2
00002533: ADD
00002534: DUP2
00002535: MSTORE
00002536: PUSH2 0x0180
00002539: DUP4
0000253a: ADD
0000253b: DUP1
0000253c: DUP6
0000253d: MSTORE
0000253e: DUP2
0000253f: MLOAD
00002540: SWAP2
00002541: SWAP1
00002542: SWAP7
00002543: ADD
00002544: KECCAK256
00002545: PUSH2 0x01bd
00002548: SSTORE
00002549: DUP4
0000254a: DUP6
0000254b: MSTORE
0000254c: PUSH2 0x01a0
0000254f: DUP3
00002550: ADD
00002551: SWAP4
00002552: SWAP1
00002553: SWAP4
00002554: MSTORE
00002555: SWAP1
00002556: DUP6
00002557: ADD
00002558: CALLDATALOAD
00002559: PUSH2 0x01c0
0000255c: SWAP1
0000255d: SWAP2
0000255e: ADD
0000255f: MSTORE
00002560: SWAP1
00002561: KECCAK256
00002562: PUSH2 0x01bf
00002565: SSTORE
00002566: DUP1
00002567: ISZERO
00002568: PUSH2 0x1227
0000256b: JUMPI
0000256c: PUSH0
0000256d: DUP1
0000256e: SLOAD
0000256f: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
00002590: AND
00002591: SWAP1
00002592: SSTORE
00002593: PUSH1 0x40
00002595: MLOAD
00002596: PUSH1 0x01
00002598: DUP2
00002599: MSTORE
0000259a: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498
000025bb: SWAP1
000025bc: PUSH1 0x20
000025be: ADD
000025bf: JUMPDEST
000025c0: PUSH1 0x40
000025c2: MLOAD
000025c3: DUP1
000025c4: SWAP2
000025c5: SUB
000025c6: SWAP1
000025c7: LOG1
000025c8: POP
000025c9: POP
000025ca: JUMP
000025cb: JUMPDEST
000025cc: PUSH32 0x0cf0d2deb70d7bdac2fa48c4ac99bc558170be0ce5fcb994caefa4bf7b96edf9
000025ed: PUSH2 0x25f5
000025f0: DUP2
000025f1: PUSH2 0x2be2
000025f4: JUMP
000025f5: JUMPDEST
000025f6: PUSH0
000025f7: PUSH1 0x9a
000025f9: DUP2
000025fa: SWAP1
000025fb: SSTORE
000025fc: PUSH1 0x40
000025fe: MLOAD
000025ff: CALLER
00002600: SWAP2
00002601: PUSH32 0xba88c025b0cbb77022c0c487beef24f759f1e4be2f51a205bc427cee19c2eaa6
00002622: SWAP2
00002623: LOG2
00002624: POP
00002625: JUMP
00002626: JUMPDEST
00002627: PUSH0
00002628: DUP2
00002629: PUSH1 0x08
0000262b: DUP2
0000262c: GT
0000262d: ISZERO
0000262e: PUSH2 0x2639
00002631: JUMPI
00002632: PUSH2 0x2639
00002635: PUSH2 0x4cb6
00002638: JUMP
00002639: JUMPDEST
0000263a: PUSH1 0xda
0000263c: SLOAD
0000263d: PUSH1 0x01
0000263f: SWAP1
00002640: SWAP2
00002641: SHL
00002642: AND
00002643: ISZERO
00002644: ISZERO
00002645: SWAP3
00002646: SWAP2
00002647: POP
00002648: POP
00002649: JUMP
0000264a: JUMPDEST
0000264b: PUSH2 0x2657
0000264e: PUSH3 0xf099c0
00002652: DUP3
00002653: PUSH2 0x4d62
00002656: JUMP
00002657: JUMPDEST
00002658: TIMESTAMP
00002659: LT
0000265a: ISZERO
0000265b: PUSH2 0x2690
0000265e: JUMPI
0000265f: PUSH1 0x40
00002661: MLOAD
00002662: PUSH32 0x4306cbb100000000000000000000000000000000000000000000000000000000
00002683: DUP2
00002684: MSTORE
00002685: PUSH1 0x04
00002687: ADD
00002688: PUSH1 0x40
0000268a: MLOAD
0000268b: DUP1
0000268c: SWAP2
0000268d: SUB
0000268e: SWAP1
0000268f: REVERT
00002690: JUMPDEST
00002691: PUSH1 0x40
00002693: DUP1
00002694: MLOAD
00002695: DUP5
00002696: DUP2
00002697: MSTORE
00002698: PUSH1 0x20
0000269a: DUP2
0000269b: ADD
0000269c: DUP5
0000269d: SWAP1
0000269e: MSTORE
0000269f: SWAP1
000026a0: DUP2
000026a1: ADD
000026a2: DUP3
000026a3: SWAP1
000026a4: MSTORE
000026a5: PUSH1 0x60
000026a7: SWAP1
000026a8: KECCAK256
000026a9: PUSH2 0x01bf
000026ac: SLOAD
000026ad: EQ
000026ae: PUSH2 0x2708
000026b1: JUMPI
000026b2: PUSH2 0x01bf
000026b5: SLOAD
000026b6: PUSH1 0x40
000026b8: DUP1
000026b9: MLOAD
000026ba: DUP6
000026bb: DUP2
000026bc: MSTORE
000026bd: PUSH1 0x20
000026bf: DUP2
000026c0: ADD
000026c1: DUP6
000026c2: SWAP1
000026c3: MSTORE
000026c4: SWAP1
000026c5: DUP2
000026c6: ADD
000026c7: DUP4
000026c8: SWAP1
000026c9: MSTORE
000026ca: PUSH1 0x60
000026cc: SWAP1
000026cd: KECCAK256
000026ce: PUSH1 0x40
000026d0: MLOAD
000026d1: PUSH32 0xbc5aad1100000000000000000000000000000000000000000000000000000000
000026f2: DUP2
000026f3: MSTORE
000026f4: PUSH1 0x04
000026f6: DUP2
000026f7: ADD
000026f8: SWAP3
000026f9: SWAP1
000026fa: SWAP3
000026fb: MSTORE
000026fc: PUSH1 0x24
000026fe: DUP3
000026ff: ADD
00002700: MSTORE
00002701: PUSH1 0x44
00002703: ADD
00002704: PUSH2 0x107a
00002707: JUMP
00002708: JUMPDEST
00002709: PUSH2 0x01c0
0000270c: SLOAD
0000270d: PUSH1 0x01
0000270f: PUSH1 0x01
00002711: PUSH1 0xa0
00002713: SHL
00002714: SUB
00002715: AND
00002716: PUSH2 0x273f
00002719: PUSH32 0x97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929
0000273a: DUP3
0000273b: PUSH2 0x2bec
0000273e: JUMP
0000273f: JUMPDEST
00002740: PUSH1 0x40
00002742: MLOAD
00002743: PUSH1 0x01
00002745: PUSH1 0x01
00002747: PUSH1 0xa0
00002749: SHL
0000274a: SUB
0000274b: DUP3
0000274c: AND
0000274d: SWAP1
0000274e: CALLER
0000274f: SWAP1
00002750: PUSH32 0x9fc8868f8577b31b805ee65bb52325782b5e2708dbdb7f04c7467c6785fccb30
00002771: SWAP1
00002772: PUSH0
00002773: SWAP1
00002774: LOG3
00002775: POP
00002776: POP
00002777: POP
00002778: POP
00002779: JUMP
0000277a: JUMPDEST
0000277b: PUSH0
0000277c: SLOAD
0000277d: PUSH1 0x06
0000277f: SWAP1
00002780: PUSH2 0x0100
00002783: SWAP1
00002784: DIV
00002785: PUSH1 0xff
00002787: AND
00002788: ISZERO
00002789: DUP1
0000278a: ISZERO
0000278b: PUSH2 0x279a
0000278e: JUMPI
0000278f: POP
00002790: PUSH0
00002791: SLOAD
00002792: PUSH1 0xff
00002794: DUP1
00002795: DUP4
00002796: AND
00002797: SWAP2
00002798: AND
00002799: LT
0000279a: JUMPDEST
0000279b: PUSH2 0x2826
0000279e: JUMPI
0000279f: PUSH1 0x40
000027a1: MLOAD
000027a2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000027c3: DUP2
000027c4: MSTORE
000027c5: PUSH1 0x20
000027c7: PUSH1 0x04
000027c9: DUP3
000027ca: ADD
000027cb: MSTORE
000027cc: PUSH1 0x2e
000027ce: PUSH1 0x24
000027d0: DUP3
000027d1: ADD
000027d2: MSTORE
000027d3: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561
000027f4: PUSH1 0x44
000027f6: DUP3
000027f7: ADD
000027f8: MSTORE
000027f9: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000
0000281a: PUSH1 0x64
0000281c: DUP3
0000281d: ADD
0000281e: MSTORE
0000281f: PUSH1 0x84
00002821: ADD
00002822: PUSH2 0x107a
00002825: JUMP
00002826: JUMPDEST
00002827: PUSH0
00002828: DUP1
00002829: SLOAD
0000282a: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
0000284b: AND
0000284c: PUSH1 0xff
0000284e: DUP4
0000284f: AND
00002850: OR
00002851: PUSH2 0x0100
00002854: OR
00002855: SWAP1
00002856: SSTORE
00002857: PUSH2 0x2860
0000285a: DUP9
0000285b: DUP9
0000285c: PUSH2 0x3dc5
0000285f: JUMP
00002860: JUMPDEST
00002861: PUSH2 0x286c
00002864: DUP7
00002865: DUP7
00002866: DUP7
00002867: DUP7
00002868: PUSH2 0x3a56
0000286b: JUMP
0000286c: JUMPDEST
0000286d: PUSH1 0x01
0000286f: PUSH1 0x01
00002871: PUSH1 0xa0
00002873: SHL
00002874: SUB
00002875: DUP3
00002876: AND
00002877: PUSH2 0x28ac
0000287a: JUMPI
0000287b: PUSH1 0x40
0000287d: MLOAD
0000287e: PUSH32 0x8579befe00000000000000000000000000000000000000000000000000000000
0000289f: DUP2
000028a0: MSTORE
000028a1: PUSH1 0x04
000028a3: ADD
000028a4: PUSH1 0x40
000028a6: MLOAD
000028a7: DUP1
000028a8: SWAP2
000028a9: SUB
000028aa: SWAP1
000028ab: REVERT
000028ac: JUMPDEST
000028ad: PUSH2 0x01c0
000028b0: DUP1
000028b1: SLOAD
000028b2: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000028d3: AND
000028d4: PUSH1 0x01
000028d6: PUSH1 0x01
000028d8: PUSH1 0xa0
000028da: SHL
000028db: SUB
000028dc: DUP5
000028dd: AND
000028de: SWAP1
000028df: DUP2
000028e0: OR
000028e1: SWAP1
000028e2: SWAP2
000028e3: SSTORE
000028e4: PUSH1 0x40
000028e6: MLOAD
000028e7: CALLER
000028e8: SWAP1
000028e9: PUSH32 0x1f82add12d98b5eaed4d6a6d5f74cfc7a85e5c90c335ab5562f77f220ed45d5f
0000290a: SWAP1
0000290b: PUSH0
0000290c: SWAP1
0000290d: LOG3
0000290e: PUSH1 0x40
00002910: MLOAD
00002911: PUSH32 0x362e300000000000000000000000000000000000000000000000000000000000
00002932: SWAP1
00002933: PUSH32 0x352e300000000000000000000000000000000000000000000000000000000000
00002954: SWAP1
00002955: PUSH32 0x2f8492a7a430cf917798dfb60bc5af634f68e6c40287947df0ea6f7ec0669bd8
00002976: SWAP1
00002977: PUSH0
00002978: SWAP1
00002979: LOG3
0000297a: PUSH0
0000297b: DUP1
0000297c: SLOAD
0000297d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
0000299e: AND
0000299f: SWAP1
000029a0: SSTORE
000029a1: PUSH1 0x40
000029a3: MLOAD
000029a4: PUSH1 0xff
000029a6: DUP3
000029a7: AND
000029a8: DUP2
000029a9: MSTORE
000029aa: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498
000029cb: SWAP1
000029cc: PUSH1 0x20
000029ce: ADD
000029cf: PUSH1 0x40
000029d1: MLOAD
000029d2: DUP1
000029d3: SWAP2
000029d4: SUB
000029d5: SWAP1
000029d6: LOG1
000029d7: POP
000029d8: POP
000029d9: POP
000029da: POP
000029db: POP
000029dc: POP
000029dd: POP
000029de: POP
000029df: JUMP
000029e0: JUMPDEST
000029e1: PUSH32 0x32937fd5162e282df7e9a14a5073a2425321c7966eaf70ed6c838a1006d84c4c
00002a02: PUSH2 0x2a0a
00002a05: DUP2
00002a06: PUSH2 0x2be2
00002a09: JUMP
00002a0a: JUMPDEST
00002a0b: PUSH1 0x01
00002a0d: PUSH1 0x01
00002a0f: PUSH1 0xa0
00002a11: SHL
00002a12: SUB
00002a13: DUP4
00002a14: AND
00002a15: PUSH2 0x2a4a
00002a18: JUMPI
00002a19: PUSH1 0x40
00002a1b: MLOAD
00002a1c: PUSH32 0x8579befe00000000000000000000000000000000000000000000000000000000
00002a3d: DUP2
00002a3e: MSTORE
00002a3f: PUSH1 0x04
00002a41: ADD
00002a42: PUSH1 0x40
00002a44: MLOAD
00002a45: DUP1
00002a46: SWAP2
00002a47: SUB
00002a48: SWAP1
00002a49: REVERT
00002a4a: JUMPDEST
00002a4b: PUSH0
00002a4c: DUP3
00002a4d: DUP2
00002a4e: MSTORE
00002a4f: PUSH2 0x011b
00002a52: PUSH1 0x20
00002a54: SWAP1
00002a55: DUP2
00002a56: MSTORE
00002a57: PUSH1 0x40
00002a59: SWAP2
00002a5a: DUP3
00002a5b: SWAP1
00002a5c: KECCAK256
00002a5d: SLOAD
00002a5e: SWAP2
00002a5f: MLOAD
00002a60: PUSH1 0x01
00002a62: PUSH1 0x01
00002a64: PUSH1 0xa0
00002a66: SHL
00002a67: SUB
00002a68: SWAP3
00002a69: DUP4
00002a6a: AND
00002a6b: DUP2
00002a6c: MSTORE
00002a6d: CALLER
00002a6e: SWAP3
00002a6f: DUP6
00002a70: SWAP3
00002a71: SWAP1
00002a72: DUP8
00002a73: AND
00002a74: SWAP2
00002a75: PUSH32 0x4a29db3fc6b42bda201e4b4d69ce8d575eeeba5f153509c0d0a342af0f1bd021
00002a96: SWAP2
00002a97: ADD
00002a98: PUSH1 0x40
00002a9a: MLOAD
00002a9b: DUP1
00002a9c: SWAP2
00002a9d: SUB
00002a9e: SWAP1
00002a9f: LOG4
00002aa0: POP
00002aa1: PUSH0
00002aa2: SWAP1
00002aa3: DUP2
00002aa4: MSTORE
00002aa5: PUSH2 0x011b
00002aa8: PUSH1 0x20
00002aaa: MSTORE
00002aab: PUSH1 0x40
00002aad: SWAP1
00002aae: KECCAK256
00002aaf: DUP1
00002ab0: SLOAD
00002ab1: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
00002ad2: AND
00002ad3: PUSH1 0x01
00002ad5: PUSH1 0x01
00002ad7: PUSH1 0xa0
00002ad9: SHL
00002ada: SUB
00002adb: SWAP3
00002adc: SWAP1
00002add: SWAP3
00002ade: AND
00002adf: SWAP2
00002ae0: SWAP1
00002ae1: SWAP2
00002ae2: OR
00002ae3: SWAP1
00002ae4: SSTORE
00002ae5: JUMP
00002ae6: JUMPDEST
00002ae7: PUSH0
00002ae8: DUP3
00002ae9: DUP2
00002aea: MSTORE
00002aeb: PUSH1 0x65
00002aed: PUSH1 0x20
00002aef: MSTORE
00002af0: PUSH1 0x40
00002af2: SWAP1
00002af3: KECCAK256
00002af4: PUSH1 0x01
00002af6: ADD
00002af7: SLOAD
00002af8: PUSH2 0x2b00
00002afb: DUP2
00002afc: PUSH2 0x2be2
00002aff: JUMP
00002b00: JUMPDEST
00002b01: PUSH2 0x11cf
00002b04: DUP4
00002b05: DUP4
00002b06: PUSH2 0x3f73
00002b09: JUMP
00002b0a: JUMPDEST
00002b0b: PUSH1 0xdb
00002b0d: PUSH0
00002b0e: DUP3
00002b0f: PUSH1 0x08
00002b11: DUP2
00002b12: GT
00002b13: ISZERO
00002b14: PUSH2 0x2b1f
00002b17: JUMPI
00002b18: PUSH2 0x2b1f
00002b1b: PUSH2 0x4cb6
00002b1e: JUMP
00002b1f: JUMPDEST
00002b20: PUSH1 0x08
00002b22: DUP2
00002b23: GT
00002b24: ISZERO
00002b25: PUSH2 0x2b30
00002b28: JUMPI
00002b29: PUSH2 0x2b30
00002b2c: PUSH2 0x4cb6
00002b2f: JUMP
00002b30: JUMPDEST
00002b31: DUP2
00002b32: MSTORE
00002b33: PUSH1 0x20
00002b35: ADD
00002b36: SWAP1
00002b37: DUP2
00002b38: MSTORE
00002b39: PUSH1 0x20
00002b3b: ADD
00002b3c: PUSH0
00002b3d: KECCAK256
00002b3e: SLOAD
00002b3f: PUSH2 0x2b47
00002b42: DUP2
00002b43: PUSH2 0x2be2
00002b46: JUMP
00002b47: JUMPDEST
00002b48: PUSH2 0x2b50
00002b4b: DUP3
00002b4c: PUSH2 0x2626
00002b4f: JUMP
00002b50: JUMPDEST
00002b51: ISZERO
00002b52: PUSH2 0x2b89
00002b55: JUMPI
00002b56: DUP2
00002b57: PUSH1 0x40
00002b59: MLOAD
00002b5a: PUSH32 0xc0a71b5800000000000000000000000000000000000000000000000000000000
00002b7b: DUP2
00002b7c: MSTORE
00002b7d: PUSH1 0x04
00002b7f: ADD
00002b80: PUSH2 0x107a
00002b83: SWAP2
00002b84: SWAP1
00002b85: PUSH2 0x4ce3
00002b88: JUMP
00002b89: JUMPDEST
00002b8a: DUP2
00002b8b: PUSH1 0x08
00002b8d: DUP2
00002b8e: GT
00002b8f: ISZERO
00002b90: PUSH2 0x2b9b
00002b93: JUMPI
00002b94: PUSH2 0x2b9b
00002b97: PUSH2 0x4cb6
00002b9a: JUMP
00002b9b: JUMPDEST
00002b9c: PUSH1 0xda
00002b9e: DUP1
00002b9f: SLOAD
00002ba0: PUSH1 0x01
00002ba2: SWAP1
00002ba3: SWAP3
00002ba4: SHL
00002ba5: SWAP1
00002ba6: SWAP2
00002ba7: OR
00002ba8: SWAP1
00002ba9: SSTORE
00002baa: DUP2
00002bab: PUSH1 0x08
00002bad: DUP2
00002bae: GT
00002baf: ISZERO
00002bb0: PUSH2 0x2bbb
00002bb3: JUMPI
00002bb4: PUSH2 0x2bbb
00002bb7: PUSH2 0x4cb6
00002bba: JUMP
00002bbb: JUMPDEST
00002bbc: PUSH32 0x534f879afd40abb4e39f8e1b77a316be4c8e3521d9cf5a3a3db8959d574d4559
00002bdd: CALLER
00002bde: PUSH2 0x10d9
00002be1: JUMP
00002be2: JUMPDEST
00002be3: PUSH2 0x1af5
00002be6: DUP2
00002be7: CALLER
00002be8: PUSH2 0x4012
00002beb: JUMP
00002bec: JUMPDEST
00002bed: PUSH0
00002bee: DUP3
00002bef: DUP2
00002bf0: MSTORE
00002bf1: PUSH1 0x65
00002bf3: PUSH1 0x20
00002bf5: SWAP1
00002bf6: DUP2
00002bf7: MSTORE
00002bf8: PUSH1 0x40
00002bfa: DUP1
00002bfb: DUP4
00002bfc: KECCAK256
00002bfd: PUSH1 0x01
00002bff: PUSH1 0x01
00002c01: PUSH1 0xa0
00002c03: SHL
00002c04: SUB
00002c05: DUP6
00002c06: AND
00002c07: DUP5
00002c08: MSTORE
00002c09: SWAP1
00002c0a: SWAP2
00002c0b: MSTORE
00002c0c: SWAP1
00002c0d: KECCAK256
00002c0e: SLOAD
00002c0f: PUSH1 0xff
00002c11: AND
00002c12: PUSH2 0x1227
00002c15: JUMPI
00002c16: PUSH0
00002c17: DUP3
00002c18: DUP2
00002c19: MSTORE
00002c1a: PUSH1 0x65
00002c1c: PUSH1 0x20
00002c1e: SWAP1
00002c1f: DUP2
00002c20: MSTORE
00002c21: PUSH1 0x40
00002c23: DUP1
00002c24: DUP4
00002c25: KECCAK256
00002c26: PUSH1 0x01
00002c28: PUSH1 0x01
00002c2a: PUSH1 0xa0
00002c2c: SHL
00002c2d: SUB
00002c2e: DUP6
00002c2f: AND
00002c30: DUP5
00002c31: MSTORE
00002c32: SWAP1
00002c33: SWAP2
00002c34: MSTORE
00002c35: SWAP1
00002c36: KECCAK256
00002c37: DUP1
00002c38: SLOAD
00002c39: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00002c5a: AND
00002c5b: PUSH1 0x01
00002c5d: OR
00002c5e: SWAP1
00002c5f: SSTORE
00002c60: PUSH2 0x2c66
00002c63: CALLER
00002c64: SWAP1
00002c65: JUMP
00002c66: JUMPDEST
00002c67: PUSH1 0x01
00002c69: PUSH1 0x01
00002c6b: PUSH1 0xa0
00002c6d: SHL
00002c6e: SUB
00002c6f: AND
00002c70: DUP2
00002c71: PUSH1 0x01
00002c73: PUSH1 0x01
00002c75: PUSH1 0xa0
00002c77: SHL
00002c78: SUB
00002c79: AND
00002c7a: DUP4
00002c7b: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d
00002c9c: PUSH1 0x40
00002c9e: MLOAD
00002c9f: PUSH1 0x40
00002ca1: MLOAD
00002ca2: DUP1
00002ca3: SWAP2
00002ca4: SUB
00002ca5: SWAP1
00002ca6: LOG4
00002ca7: POP
00002ca8: POP
00002ca9: JUMP
00002caa: JUMPDEST
00002cab: PUSH1 0x01
00002cad: PUSH1 0x01
00002caf: PUSH1 0xa0
00002cb1: SHL
00002cb2: SUB
00002cb3: DUP2
00002cb4: AND
00002cb5: CALLER
00002cb6: EQ
00002cb7: PUSH2 0x2d42
00002cba: JUMPI
00002cbb: PUSH1 0x40
00002cbd: MLOAD
00002cbe: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002cdf: DUP2
00002ce0: MSTORE
00002ce1: PUSH1 0x20
00002ce3: PUSH1 0x04
00002ce5: DUP3
00002ce6: ADD
00002ce7: MSTORE
00002ce8: PUSH1 0x2f
00002cea: PUSH1 0x24
00002cec: DUP3
00002ced: ADD
00002cee: MSTORE
00002cef: PUSH32 0x416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e6365
00002d10: PUSH1 0x44
00002d12: DUP3
00002d13: ADD
00002d14: MSTORE
00002d15: PUSH32 0x20726f6c657320666f722073656c660000000000000000000000000000000000
00002d36: PUSH1 0x64
00002d38: DUP3
00002d39: ADD
00002d3a: MSTORE
00002d3b: PUSH1 0x84
00002d3d: ADD
00002d3e: PUSH2 0x107a
00002d41: JUMP
00002d42: JUMPDEST
00002d43: PUSH2 0x1227
00002d46: DUP3
00002d47: DUP3
00002d48: PUSH2 0x3f73
00002d4b: JUMP
00002d4c: JUMPDEST
00002d4d: PUSH0
00002d4e: PUSH2 0x2d7b
00002d51: PUSH2 0x1b27
00002d54: PUSH1 0x01
00002d56: PUSH32 0x084edf88d5959696dcc7aab5c8674a33a1ef78f37dda21b782ed03bddb22ade5
00002d77: PUSH2 0x4d4f
00002d7a: JUMP
00002d7b: JUMPDEST
00002d7c: EQ
00002d7d: PUSH2 0x2db2
00002d80: JUMPI
00002d81: PUSH1 0x40
00002d83: MLOAD
00002d84: PUSH32 0x37ed32e800000000000000000000000000000000000000000000000000000000
00002da5: DUP2
00002da6: MSTORE
00002da7: PUSH1 0x04
00002da9: ADD
00002daa: PUSH1 0x40
00002dac: MLOAD
00002dad: DUP1
00002dae: SWAP2
00002daf: SUB
00002db0: SWAP1
00002db1: REVERT
00002db2: JUMPDEST
00002db3: PUSH2 0x2de7
00002db6: PUSH2 0x2de0
00002db9: PUSH1 0x01
00002dbb: PUSH32 0x084edf88d5959696dcc7aab5c8674a33a1ef78f37dda21b782ed03bddb22ade5
00002ddc: PUSH2 0x4d4f
00002ddf: JUMP
00002de0: JUMPDEST
00002de1: PUSH1 0x01
00002de3: PUSH2 0x2e7b
00002de6: JUMP
00002de7: JUMPDEST
00002de8: JUMP
00002de9: JUMPDEST
00002dea: PUSH1 0xda
00002dec: SLOAD
00002ded: DUP2
00002dee: PUSH1 0x08
00002df0: DUP2
00002df1: GT
00002df2: ISZERO
00002df3: PUSH2 0x2dfe
00002df6: JUMPI
00002df7: PUSH2 0x2dfe
00002dfa: PUSH2 0x4cb6
00002dfd: JUMP
00002dfe: JUMPDEST
00002dff: PUSH1 0x01
00002e01: SWAP1
00002e02: SHL
00002e03: DUP2
00002e04: AND
00002e05: ISZERO
00002e06: PUSH2 0x2e3d
00002e09: JUMPI
00002e0a: DUP2
00002e0b: PUSH1 0x40
00002e0d: MLOAD
00002e0e: PUSH32 0xc0a71b5800000000000000000000000000000000000000000000000000000000
00002e2f: DUP2
00002e30: MSTORE
00002e31: PUSH1 0x04
00002e33: ADD
00002e34: PUSH2 0x107a
00002e37: SWAP2
00002e38: SWAP1
00002e39: PUSH2 0x4ce3
00002e3c: JUMP
00002e3d: JUMPDEST
00002e3e: PUSH1 0x02
00002e40: DUP2
00002e41: AND
00002e42: ISZERO
00002e43: PUSH2 0x1227
00002e46: JUMPI
00002e47: PUSH1 0x01
00002e49: PUSH1 0x40
00002e4b: MLOAD
00002e4c: PUSH32 0xc0a71b5800000000000000000000000000000000000000000000000000000000
00002e6d: DUP2
00002e6e: MSTORE
00002e6f: PUSH1 0x04
00002e71: ADD
00002e72: PUSH2 0x107a
00002e75: SWAP2
00002e76: SWAP1
00002e77: PUSH2 0x4ce3
00002e7a: JUMP
00002e7b: JUMPDEST
00002e7c: DUP1
00002e7d: DUP3
00002e7e: TSTORE
00002e7f: POP
00002e80: POP
00002e81: JUMP
00002e82: JUMPDEST
00002e83: PUSH0
00002e84: PUSH1 0x40
00002e86: MLOAD
00002e87: DUP9
00002e88: DUP2
00002e89: MSTORE
00002e8a: DUP8
00002e8b: PUSH1 0x20
00002e8d: DUP3
00002e8e: ADD
00002e8f: MSTORE
00002e90: DUP7
00002e91: PUSH1 0x40
00002e93: DUP3
00002e94: ADD
00002e95: MSTORE
00002e96: DUP6
00002e97: PUSH1 0x60
00002e99: DUP3
00002e9a: ADD
00002e9b: MSTORE
00002e9c: DUP5
00002e9d: PUSH1 0x80
00002e9f: DUP3
00002ea0: ADD
00002ea1: MSTORE
00002ea2: PUSH1 0xc0
00002ea4: PUSH1 0xa0
00002ea6: DUP3
00002ea7: ADD
00002ea8: MSTORE
00002ea9: DUP3
00002eaa: PUSH1 0xc0
00002eac: DUP3
00002ead: ADD
00002eae: MSTORE
00002eaf: PUSH1 0x20
00002eb1: DUP4
00002eb2: MOD
00002eb3: PUSH0
00002eb4: DUP2
00002eb5: ISZERO
00002eb6: PUSH2 0x2ec0
00002eb9: JUMPI
00002eba: DUP2
00002ebb: PUSH1 0x20
00002ebd: SUB
00002ebe: SWAP1
00002ebf: POP
00002ec0: JUMPDEST
00002ec1: DUP5
00002ec2: DUP7
00002ec3: PUSH1 0xe0
00002ec5: DUP6
00002ec6: ADD
00002ec7: CALLDATACOPY
00002ec8: SWAP1
00002ec9: SWAP4
00002eca: ADD
00002ecb: PUSH1 0xe0
00002ecd: ADD
00002ece: SWAP1
00002ecf: KECCAK256
00002ed0: SWAP9
00002ed1: SWAP8
00002ed2: POP
00002ed3: POP
00002ed4: POP
00002ed5: POP
00002ed6: POP
00002ed7: POP
00002ed8: POP
00002ed9: POP
00002eda: JUMP
00002edb: JUMPDEST
00002edc: PUSH0
00002edd: DUP2
00002ede: DUP2
00002edf: MSTORE
00002ee0: PUSH1 0xa6
00002ee2: PUSH1 0x20
00002ee4: MSTORE
00002ee5: PUSH1 0x40
00002ee7: SWAP1
00002ee8: KECCAK256
00002ee9: SLOAD
00002eea: PUSH1 0x01
00002eec: EQ
00002eed: PUSH2 0x2f25
00002ef0: JUMPI
00002ef1: PUSH1 0x40
00002ef3: MLOAD
00002ef4: PUSH32 0x992d87c300000000000000000000000000000000000000000000000000000000
00002f15: DUP2
00002f16: MSTORE
00002f17: PUSH1 0x04
00002f19: DUP2
00002f1a: ADD
00002f1b: DUP3
00002f1c: SWAP1
00002f1d: MSTORE
00002f1e: PUSH1 0x24
00002f20: ADD
00002f21: PUSH2 0x107a
00002f24: JUMP
00002f25: JUMPDEST
00002f26: PUSH0
00002f27: SWAP1
00002f28: DUP2
00002f29: MSTORE
00002f2a: PUSH1 0xa6
00002f2c: PUSH1 0x20
00002f2e: MSTORE
00002f2f: PUSH1 0x40
00002f31: DUP2
00002f32: KECCAK256
00002f33: SSTORE
00002f34: JUMP
00002f35: JUMPDEST
00002f36: DUP1
00002f37: ISZERO
00002f38: PUSH2 0x1af5
00002f3b: JUMPI
00002f3c: TIMESTAMP
00002f3d: PUSH1 0x99
00002f3f: SLOAD
00002f40: LT
00002f41: ISZERO
00002f42: PUSH2 0x2f5a
00002f45: JUMPI
00002f46: PUSH1 0x97
00002f48: SLOAD
00002f49: PUSH2 0x2f52
00002f4c: SWAP1
00002f4d: TIMESTAMP
00002f4e: PUSH2 0x4d62
00002f51: JUMP
00002f52: JUMPDEST
00002f53: PUSH1 0x99
00002f55: SSTORE
00002f56: PUSH2 0x2f6a
00002f59: JUMP
00002f5a: JUMPDEST
00002f5b: PUSH1 0x9a
00002f5d: SLOAD
00002f5e: PUSH2 0x2f67
00002f61: SWAP1
00002f62: DUP3
00002f63: PUSH2 0x4d62
00002f66: JUMP
00002f67: JUMPDEST
00002f68: SWAP1
00002f69: POP
00002f6a: JUMPDEST
00002f6b: PUSH1 0x98
00002f6d: SLOAD
00002f6e: DUP2
00002f6f: GT
00002f70: ISZERO
00002f71: PUSH2 0x2fa6
00002f74: JUMPI
00002f75: PUSH1 0x40
00002f77: MLOAD
00002f78: PUSH32 0xa74c1c5f00000000000000000000000000000000000000000000000000000000
00002f99: DUP2
00002f9a: MSTORE
00002f9b: PUSH1 0x04
00002f9d: ADD
00002f9e: PUSH1 0x40
00002fa0: MLOAD
00002fa1: DUP1
00002fa2: SWAP2
00002fa3: SUB
00002fa4: SWAP1
00002fa5: REVERT
00002fa6: JUMPDEST
00002fa7: PUSH1 0x9a
00002fa9: SSTORE
00002faa: JUMP
00002fab: JUMPDEST
00002fac: PUSH2 0x2de7
00002faf: PUSH2 0x138e
00002fb2: PUSH1 0x01
00002fb4: PUSH32 0x084edf88d5959696dcc7aab5c8674a33a1ef78f37dda21b782ed03bddb22ade5
00002fd5: PUSH2 0x4d4f
00002fd8: JUMP
00002fd9: JUMPDEST
00002fda: PUSH0
00002fdb: DUP2
00002fdc: DUP4
00002fdd: PUSH1 0x20
00002fdf: ADD
00002fe0: CALLDATALOAD
00002fe1: GT
00002fe2: PUSH2 0x3024
00002fe5: JUMPI
00002fe6: PUSH1 0x40
00002fe8: MLOAD
00002fe9: PUSH32 0x7061440500000000000000000000000000000000000000000000000000000000
0000300a: DUP2
0000300b: MSTORE
0000300c: PUSH1 0x20
0000300e: DUP5
0000300f: ADD
00003010: CALLDATALOAD
00003011: PUSH1 0x04
00003013: DUP3
00003014: ADD
00003015: MSTORE
00003016: PUSH1 0x24
00003018: DUP2
00003019: ADD
0000301a: DUP4
0000301b: SWAP1
0000301c: MSTORE
0000301d: PUSH1 0x44
0000301f: ADD
00003020: PUSH2 0x107a
00003023: JUMP
00003024: JUMPDEST
00003025: PUSH2 0x3038
00003028: DUP4
00003029: PUSH2 0x0180
0000302c: ADD
0000302d: CALLDATALOAD
0000302e: DUP5
0000302f: PUSH2 0x0140
00003032: ADD
00003033: CALLDATALOAD
00003034: PUSH2 0x40a0
00003037: JUMP
00003038: JUMPDEST
00003039: PUSH2 0x01bf
0000303c: SLOAD
0000303d: PUSH1 0x40
0000303f: DUP1
00003040: MLOAD
00003041: PUSH2 0x0160
00003044: DUP7
00003045: ADD
00003046: CALLDATALOAD
00003047: DUP2
00003048: MSTORE
00003049: PUSH2 0x0120
0000304c: DUP7
0000304d: ADD
0000304e: CALLDATALOAD
0000304f: PUSH1 0x20
00003051: DUP3
00003052: ADD
00003053: MSTORE
00003054: PUSH1 0xe0
00003056: DUP7
00003057: ADD
00003058: CALLDATALOAD
00003059: SWAP2
0000305a: DUP2
0000305b: ADD
0000305c: SWAP2
0000305d: SWAP1
0000305e: SWAP2
0000305f: MSTORE
00003060: PUSH1 0x60
00003062: SWAP1
00003063: KECCAK256
00003064: EQ
00003065: PUSH2 0x30ce
00003068: JUMPI
00003069: PUSH1 0x40
0000306b: DUP1
0000306c: MLOAD
0000306d: PUSH2 0x0160
00003070: DUP6
00003071: ADD
00003072: CALLDATALOAD
00003073: DUP2
00003074: MSTORE
00003075: PUSH2 0x0120
00003078: DUP6
00003079: ADD
0000307a: CALLDATALOAD
0000307b: PUSH1 0x20
0000307d: DUP3
0000307e: ADD
0000307f: MSTORE
00003080: PUSH1 0xe0
00003082: DUP6
00003083: ADD
00003084: CALLDATALOAD
00003085: SWAP2
00003086: DUP2
00003087: ADD
00003088: SWAP2
00003089: SWAP1
0000308a: SWAP2
0000308b: MSTORE
0000308c: PUSH1 0x60
0000308e: SWAP1
0000308f: KECCAK256
00003090: PUSH2 0x01bf
00003093: SLOAD
00003094: PUSH1 0x40
00003096: MLOAD
00003097: PUSH32 0xbc5aad1100000000000000000000000000000000000000000000000000000000
000030b8: DUP2
000030b9: MSTORE
000030ba: PUSH1 0x04
000030bc: DUP2
000030bd: ADD
000030be: SWAP3
000030bf: SWAP1
000030c0: SWAP3
000030c1: MSTORE
000030c2: PUSH1 0x24
000030c4: DUP3
000030c5: ADD
000030c6: MSTORE
000030c7: PUSH1 0x44
000030c9: ADD
000030ca: PUSH2 0x107a
000030cd: JUMP
000030ce: JUMPDEST
000030cf: TIMESTAMP
000030d0: DUP4
000030d1: PUSH2 0x0100
000030d4: ADD
000030d5: CALLDATALOAD
000030d6: LT
000030d7: PUSH2 0x3119
000030da: JUMPI
000030db: PUSH1 0x40
000030dd: MLOAD
000030de: PUSH32 0xbf81c6e000000000000000000000000000000000000000000000000000000000
000030ff: DUP2
00003100: MSTORE
00003101: PUSH2 0x0100
00003104: DUP5
00003105: ADD
00003106: CALLDATALOAD
00003107: PUSH1 0x04
00003109: DUP3
0000310a: ADD
0000310b: MSTORE
0000310c: TIMESTAMP
0000310d: PUSH1 0x24
0000310f: DUP3
00003110: ADD
00003111: MSTORE
00003112: PUSH1 0x44
00003114: ADD
00003115: PUSH2 0x107a
00003118: JUMP
00003119: JUMPDEST
0000311a: PUSH1 0x80
0000311c: DUP4
0000311d: ADD
0000311e: CALLDATALOAD
0000311f: PUSH2 0x3154
00003122: JUMPI
00003123: PUSH1 0x40
00003125: MLOAD
00003126: PUSH32 0x2898482a00000000000000000000000000000000000000000000000000000000
00003147: DUP2
00003148: MSTORE
00003149: PUSH1 0x04
0000314b: ADD
0000314c: PUSH1 0x40
0000314e: MLOAD
0000314f: DUP1
00003150: SWAP2
00003151: SUB
00003152: SWAP1
00003153: REVERT
00003154: JUMPDEST
00003155: PUSH2 0x3197
00003158: PUSH1 0x40
0000315a: DUP5
0000315b: ADD
0000315c: CALLDATALOAD
0000315d: PUSH1 0x60
0000315f: DUP6
00003160: ADD
00003161: CALLDATALOAD
00003162: PUSH1 0x80
00003164: DUP7
00003165: ADD
00003166: CALLDATALOAD
00003167: PUSH1 0xa0
00003169: DUP8
0000316a: ADD
0000316b: CALLDATALOAD
0000316c: PUSH1 0xc0
0000316e: DUP9
0000316f: ADD
00003170: CALLDATALOAD
00003171: PUSH1 0x40
00003173: DUP1
00003174: MLOAD
00003175: SWAP6
00003176: DUP7
00003177: MSTORE
00003178: PUSH1 0x20
0000317a: DUP7
0000317b: ADD
0000317c: SWAP5
0000317d: SWAP1
0000317e: SWAP5
0000317f: MSTORE
00003180: SWAP3
00003181: DUP5
00003182: ADD
00003183: SWAP2
00003184: SWAP1
00003185: SWAP2
00003186: MSTORE
00003187: PUSH1 0x60
00003189: DUP4
0000318a: ADD
0000318b: MSTORE
0000318c: PUSH1 0x80
0000318e: DUP3
0000318f: ADD
00003190: MSTORE
00003191: PUSH1 0xa0
00003193: SWAP1
00003194: KECCAK256
00003195: SWAP1
00003196: JUMP
00003197: JUMPDEST
00003198: PUSH0
00003199: DUP2
0000319a: DUP2
0000319b: MSTORE
0000319c: PUSH2 0x01be
0000319f: PUSH1 0x20
000031a1: MSTORE
000031a2: PUSH1 0x40
000031a4: DUP2
000031a5: KECCAK256
000031a6: SLOAD
000031a7: SWAP2
000031a8: SWAP3
000031a9: POP
000031aa: SUB
000031ab: PUSH2 0x31e3
000031ae: JUMPI
000031af: PUSH1 0x40
000031b1: MLOAD
000031b2: PUSH32 0xedeae83c00000000000000000000000000000000000000000000000000000000
000031d3: DUP2
000031d4: MSTORE
000031d5: PUSH1 0x04
000031d7: DUP2
000031d8: ADD
000031d9: DUP3
000031da: SWAP1
000031db: MSTORE
000031dc: PUSH1 0x24
000031de: ADD
000031df: PUSH2 0x107a
000031e2: JUMP
000031e3: JUMPDEST
000031e4: PUSH2 0x31ff
000031e7: PUSH2 0x31f4
000031ea: PUSH2 0x01c0
000031ed: DUP6
000031ee: ADD
000031ef: DUP6
000031f0: PUSH2 0x4e17
000031f3: JUMP
000031f4: JUMPDEST
000031f5: DUP6
000031f6: PUSH2 0x01a0
000031f9: ADD
000031fa: CALLDATALOAD
000031fb: PUSH2 0x416d
000031fe: JUMP
000031ff: JUMPDEST
00003200: PUSH2 0x3216
00003203: PUSH2 0x3210
00003206: PUSH2 0x01e0
00003209: DUP6
0000320a: ADD
0000320b: DUP6
0000320c: PUSH2 0x4db6
0000320f: JUMP
00003210: JUMPDEST
00003211: DUP5
00003212: PUSH2 0x4279
00003215: JUMP
00003216: JUMPDEST
00003217: PUSH1 0x20
00003219: DUP1
0000321a: DUP5
0000321b: ADD
0000321c: CALLDATALOAD
0000321d: PUSH0
0000321e: DUP2
0000321f: DUP2
00003220: MSTORE
00003221: PUSH2 0x011a
00003224: SWAP1
00003225: SWAP3
00003226: MSTORE
00003227: PUSH1 0x40
00003229: SWAP1
0000322a: SWAP2
0000322b: KECCAK256
0000322c: PUSH1 0x80
0000322e: DUP6
0000322f: ADD
00003230: CALLDATALOAD
00003231: SWAP1
00003232: SSTORE
00003233: PUSH2 0x0119
00003236: SSTORE
00003237: PUSH2 0x01bd
0000323a: DUP2
0000323b: SWAP1
0000323c: SSTORE
0000323d: PUSH2 0x326b
00003240: PUSH2 0x0180
00003243: DUP5
00003244: ADD
00003245: CALLDATALOAD
00003246: PUSH2 0x0140
00003249: DUP6
0000324a: ADD
0000324b: CALLDATALOAD
0000324c: PUSH2 0x0100
0000324f: DUP7
00003250: ADD
00003251: CALLDATALOAD
00003252: PUSH1 0x40
00003254: DUP1
00003255: MLOAD
00003256: SWAP4
00003257: DUP5
00003258: MSTORE
00003259: PUSH1 0x20
0000325b: DUP5
0000325c: ADD
0000325d: SWAP3
0000325e: SWAP1
0000325f: SWAP3
00003260: MSTORE
00003261: SWAP1
00003262: DUP3
00003263: ADD
00003264: MSTORE
00003265: PUSH1 0x60
00003267: SWAP1
00003268: KECCAK256
00003269: SWAP1
0000326a: JUMP
0000326b: JUMPDEST
0000326c: PUSH2 0x01bf
0000326f: SSTORE
00003270: DUP1
00003271: PUSH1 0x20
00003273: DUP5
00003274: ADD
00003275: CALLDATALOAD
00003276: PUSH2 0x327e
00003279: DUP5
0000327a: PUSH2 0x5075
0000327d: JUMP
0000327e: JUMPDEST
0000327f: PUSH1 0x40
00003281: DUP1
00003282: MLOAD
00003283: DUP8
00003284: CALLDATALOAD
00003285: DUP2
00003286: MSTORE
00003287: PUSH1 0x80
00003289: DUP9
0000328a: ADD
0000328b: CALLDATALOAD
0000328c: PUSH1 0x20
0000328e: DUP3
0000328f: ADD
00003290: MSTORE
00003291: SWAP2
00003292: SWAP6
00003293: POP
00003294: DUP6
00003295: SWAP2
00003296: PUSH32 0xa0262dc79e4ccb71ceac8574ae906311ae338aa4a2044fd4ec4b99fad5ab60cb
000032b7: SWAP2
000032b8: ADD
000032b9: PUSH1 0x40
000032bb: MLOAD
000032bc: DUP1
000032bd: SWAP2
000032be: SUB
000032bf: SWAP1
000032c0: LOG4
000032c1: SWAP3
000032c2: SWAP2
000032c3: POP
000032c4: POP
000032c5: JUMP
000032c6: JUMPDEST
000032c7: PUSH0
000032c8: PUSH1 0x40
000032ca: MLOAD
000032cb: DUP6
000032cc: DUP2
000032cd: MSTORE
000032ce: DUP5
000032cf: PUSH1 0x20
000032d1: DUP3
000032d2: ADD
000032d3: MSTORE
000032d4: PUSH1 0x40
000032d6: PUSH1 0xe0
000032d8: DUP9
000032d9: ADD
000032da: PUSH1 0x40
000032dc: DUP4
000032dd: ADD
000032de: CALLDATACOPY
000032df: DUP4
000032e0: PUSH1 0x80
000032e2: DUP3
000032e3: ADD
000032e4: MSTORE
000032e5: DUP3
000032e6: PUSH1 0xa0
000032e8: DUP3
000032e9: ADD
000032ea: MSTORE
000032eb: PUSH1 0xa0
000032ed: PUSH2 0x0120
000032f0: DUP9
000032f1: ADD
000032f2: PUSH1 0xc0
000032f4: DUP4
000032f5: ADD
000032f6: CALLDATACOPY
000032f7: PUSH2 0x0180
000032fa: DUP2
000032fb: ADD
000032fc: PUSH2 0x01c0
000032ff: DUP9
00003300: ADD
00003301: CALLDATALOAD
00003302: DUP9
00003303: ADD
00003304: DUP1
00003305: CALLDATALOAD
00003306: PUSH1 0x20
00003308: DUP2
00003309: MUL
0000330a: PUSH1 0x20
0000330c: DUP4
0000330d: ADD
0000330e: DUP5
0000330f: CALLDATACOPY
00003310: PUSH1 0x20
00003312: MUL
00003313: SWAP1
00003314: SWAP2
00003315: KECCAK256
00003316: PUSH2 0x0160
00003319: DUP4
0000331a: ADD
0000331b: MSTORE
0000331c: POP
0000331d: PUSH2 0x0180
00003320: SWAP1
00003321: KECCAK256
00003322: PUSH32 0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001
00003343: SWAP1
00003344: MOD
00003345: SWAP7
00003346: SWAP6
00003347: POP
00003348: POP
00003349: POP
0000334a: POP
0000334b: POP
0000334c: POP
0000334d: JUMP
0000334e: JUMPDEST
0000334f: PUSH1 0x40
00003351: DUP1
00003352: MLOAD
00003353: PUSH1 0x01
00003355: DUP1
00003356: DUP3
00003357: MSTORE
00003358: DUP2
00003359: DUP4
0000335a: ADD
0000335b: SWAP1
0000335c: SWAP3
0000335d: MSTORE
0000335e: PUSH0
0000335f: SWAP2
00003360: PUSH1 0x20
00003362: DUP1
00003363: DUP4
00003364: ADD
00003365: SWAP1
00003366: DUP1
00003367: CALLDATASIZE
00003368: DUP4
00003369: CALLDATACOPY
0000336a: ADD
0000336b: SWAP1
0000336c: POP
0000336d: POP
0000336e: SWAP1
0000336f: POP
00003370: DUP5
00003371: DUP2
00003372: PUSH0
00003373: DUP2
00003374: MLOAD
00003375: DUP2
00003376: LT
00003377: PUSH2 0x3382
0000337a: JUMPI
0000337b: PUSH2 0x3382
0000337e: PUSH2 0x4e9e
00003381: JUMP
00003382: JUMPDEST
00003383: PUSH1 0x20
00003385: SWAP1
00003386: DUP2
00003387: MUL
00003388: SWAP2
00003389: SWAP1
0000338a: SWAP2
0000338b: ADD
0000338c: DUP2
0000338d: ADD
0000338e: SWAP2
0000338f: SWAP1
00003390: SWAP2
00003391: MSTORE
00003392: PUSH0
00003393: DUP6
00003394: DUP2
00003395: MSTORE
00003396: PUSH2 0x011b
00003399: SWAP1
0000339a: SWAP2
0000339b: MSTORE
0000339c: PUSH1 0x40
0000339e: SWAP1
0000339f: KECCAK256
000033a0: SLOAD
000033a1: PUSH1 0x01
000033a3: PUSH1 0x01
000033a5: PUSH1 0xa0
000033a7: SHL
000033a8: SUB
000033a9: AND
000033aa: DUP1
000033ab: PUSH2 0x33e0
000033ae: JUMPI
000033af: PUSH1 0x40
000033b1: MLOAD
000033b2: PUSH32 0x69ed70ab00000000000000000000000000000000000000000000000000000000
000033d3: DUP2
000033d4: MSTORE
000033d5: PUSH1 0x04
000033d7: ADD
000033d8: PUSH1 0x40
000033da: MLOAD
000033db: DUP1
000033dc: SWAP2
000033dd: SUB
000033de: SWAP1
000033df: REVERT
000033e0: JUMPDEST
000033e1: PUSH0
000033e2: DUP1
000033e3: DUP3
000033e4: PUSH1 0x01
000033e6: PUSH1 0x01
000033e8: PUSH1 0xa0
000033ea: SHL
000033eb: SUB
000033ec: AND
000033ed: PUSH4 0x7e4f7a8a
000033f2: PUSH1 0xe0
000033f4: SHL
000033f5: DUP8
000033f6: DUP8
000033f7: DUP8
000033f8: PUSH1 0x40
000033fa: MLOAD
000033fb: PUSH1 0x24
000033fd: ADD
000033fe: PUSH2 0x3409
00003401: SWAP4
00003402: SWAP3
00003403: SWAP2
00003404: SWAP1
00003405: PUSH2 0x5169
00003408: JUMP
00003409: JUMPDEST
0000340a: PUSH1 0x40
0000340c: DUP1
0000340d: MLOAD
0000340e: PUSH1 0x1f
00003410: NOT
00003411: DUP2
00003412: DUP5
00003413: SUB
00003414: ADD
00003415: DUP2
00003416: MSTORE
00003417: SWAP2
00003418: DUP2
00003419: MSTORE
0000341a: PUSH1 0x20
0000341c: DUP3
0000341d: ADD
0000341e: DUP1
0000341f: MLOAD
00003420: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000343d: AND
0000343e: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
0000345f: SWAP1
00003460: SWAP5
00003461: AND
00003462: SWAP4
00003463: SWAP1
00003464: SWAP4
00003465: OR
00003466: SWAP1
00003467: SWAP3
00003468: MSTORE
00003469: SWAP1
0000346a: MLOAD
0000346b: PUSH2 0x3474
0000346e: SWAP2
0000346f: SWAP1
00003470: PUSH2 0x51da
00003473: JUMP
00003474: JUMPDEST
00003475: PUSH0
00003476: PUSH1 0x40
00003478: MLOAD
00003479: DUP1
0000347a: DUP4
0000347b: SUB
0000347c: DUP2
0000347d: PUSH0
0000347e: DUP7
0000347f: GAS
00003480: CALL
00003481: SWAP2
00003482: POP
00003483: POP
00003484: RETURNDATASIZE
00003485: DUP1
00003486: PUSH0
00003487: DUP2
00003488: EQ
00003489: PUSH2 0x34ad
0000348c: JUMPI
0000348d: PUSH1 0x40
0000348f: MLOAD
00003490: SWAP2
00003491: POP
00003492: PUSH1 0x1f
00003494: NOT
00003495: PUSH1 0x3f
00003497: RETURNDATASIZE
00003498: ADD
00003499: AND
0000349a: DUP3
0000349b: ADD
0000349c: PUSH1 0x40
0000349e: MSTORE
0000349f: RETURNDATASIZE
000034a0: DUP3
000034a1: MSTORE
000034a2: RETURNDATASIZE
000034a3: PUSH0
000034a4: PUSH1 0x20
000034a6: DUP5
000034a7: ADD
000034a8: RETURNDATACOPY
000034a9: PUSH2 0x34b2
000034ac: JUMP
000034ad: JUMPDEST
000034ae: PUSH1 0x60
000034b0: SWAP2
000034b1: POP
000034b2: JUMPDEST
000034b3: POP
000034b4: SWAP2
000034b5: POP
000034b6: SWAP2
000034b7: POP
000034b8: DUP2
000034b9: PUSH2 0x3559
000034bc: JUMPI
000034bd: DUP1
000034be: MLOAD
000034bf: ISZERO
000034c0: PUSH2 0x34f7
000034c3: JUMPI
000034c4: PUSH1 0x20
000034c6: DUP2
000034c7: ADD
000034c8: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000034e5: DUP2
000034e6: MLOAD
000034e7: AND
000034e8: PUSH4 0xca389c44
000034ed: PUSH1 0xe0
000034ef: SHL
000034f0: OR
000034f1: DUP2
000034f2: MSTORE
000034f3: DUP2
000034f4: MLOAD
000034f5: DUP2
000034f6: REVERT
000034f7: JUMPDEST
000034f8: PUSH1 0x40
000034fa: MLOAD
000034fb: PUSH32 0xca389c4400000000000000000000000000000000000000000000000000000000
0000351c: DUP2
0000351d: MSTORE
0000351e: PUSH1 0x20
00003520: PUSH1 0x04
00003522: DUP3
00003523: ADD
00003524: MSTORE
00003525: PUSH1 0x07
00003527: PUSH1 0x24
00003529: DUP3
0000352a: ADD
0000352b: MSTORE
0000352c: PUSH32 0x556e6b6e6f776e00000000000000000000000000000000000000000000000000
0000354d: PUSH1 0x44
0000354f: DUP3
00003550: ADD
00003551: MSTORE
00003552: PUSH1 0x64
00003554: ADD
00003555: PUSH2 0x107a
00003558: JUMP
00003559: JUMPDEST
0000355a: PUSH0
0000355b: DUP2
0000355c: DUP1
0000355d: PUSH1 0x20
0000355f: ADD
00003560: SWAP1
00003561: MLOAD
00003562: DUP2
00003563: ADD
00003564: SWAP1
00003565: PUSH2 0x356e
00003568: SWAP2
00003569: SWAP1
0000356a: PUSH2 0x51e5
0000356d: JUMP
0000356e: JUMPDEST
0000356f: SWAP1
00003570: POP
00003571: DUP1
00003572: PUSH2 0x35a7
00003575: JUMPI
00003576: PUSH1 0x40
00003578: MLOAD
00003579: PUSH32 0x09bde33900000000000000000000000000000000000000000000000000000000
0000359a: DUP2
0000359b: MSTORE
0000359c: PUSH1 0x04
0000359e: ADD
0000359f: PUSH1 0x40
000035a1: MLOAD
000035a2: DUP1
000035a3: SWAP2
000035a4: SUB
000035a5: SWAP1
000035a6: REVERT
000035a7: JUMPDEST
000035a8: POP
000035a9: POP
000035aa: POP
000035ab: POP
000035ac: POP
000035ad: POP
000035ae: POP
000035af: POP
000035b0: POP
000035b1: JUMP
000035b2: JUMPDEST
000035b3: PUSH1 0x08
000035b5: DUP2
000035b6: SWAP1
000035b7: SHR
000035b8: PUSH0
000035b9: SWAP1
000035ba: DUP2
000035bb: MSTORE
000035bc: PUSH2 0x014f
000035bf: PUSH1 0x20
000035c1: MSTORE
000035c2: PUSH1 0x40
000035c4: SWAP1
000035c5: KECCAK256
000035c6: SLOAD
000035c7: PUSH1 0x01
000035c9: PUSH1 0xff
000035cb: DUP4
000035cc: AND
000035cd: SHL
000035ce: AND
000035cf: ISZERO
000035d0: PUSH2 0x3608
000035d3: JUMPI
000035d4: PUSH1 0x40
000035d6: MLOAD
000035d7: PUSH32 0x335a4a9000000000000000000000000000000000000000000000000000000000
000035f8: DUP2
000035f9: MSTORE
000035fa: PUSH1 0x04
000035fc: DUP2
000035fd: ADD
000035fe: DUP3
000035ff: SWAP1
00003600: MSTORE
00003601: PUSH1 0x24
00003603: ADD
00003604: PUSH2 0x107a
00003607: JUMP
00003608: JUMPDEST
00003609: PUSH1 0x08
0000360b: DUP2
0000360c: SWAP1
0000360d: SHR
0000360e: PUSH0
0000360f: SWAP1
00003610: DUP2
00003611: MSTORE
00003612: PUSH2 0x014f
00003615: PUSH1 0x20
00003617: MSTORE
00003618: PUSH1 0x40
0000361a: SWAP1
0000361b: KECCAK256
0000361c: DUP1
0000361d: SLOAD
0000361e: PUSH1 0x01
00003620: PUSH1 0xff
00003622: DUP5
00003623: AND
00003624: SHL
00003625: OR
00003626: SWAP1
00003627: SSTORE
00003628: POP
00003629: JUMP
0000362a: JUMPDEST
0000362b: PUSH0
0000362c: DUP1
0000362d: PUSH2 0x364b
00003630: PUSH1 0x01
00003632: PUSH2 0x363c
00003635: DUP8
00003636: PUSH1 0x02
00003638: PUSH2 0x5325
0000363b: JUMP
0000363c: JUMPDEST
0000363d: PUSH2 0x3646
00003640: SWAP2
00003641: SWAP1
00003642: PUSH2 0x4d4f
00003645: JUMP
00003646: JUMPDEST
00003647: PUSH2 0x4306
0000364a: JUMP
0000364b: JUMPDEST
0000364c: SWAP1
0000364d: POP
0000364e: DUP1
0000364f: PUSH4 0xffffffff
00003654: AND
00003655: DUP5
00003656: PUSH4 0xffffffff
0000365b: AND
0000365c: GT
0000365d: ISZERO
0000365e: PUSH2 0x36a3
00003661: JUMPI
00003662: PUSH1 0x40
00003664: MLOAD
00003665: PUSH32 0xf7ec909700000000000000000000000000000000000000000000000000000000
00003686: DUP2
00003687: MSTORE
00003688: PUSH4 0xffffffff
0000368d: DUP1
0000368e: DUP7
0000368f: AND
00003690: PUSH1 0x04
00003692: DUP4
00003693: ADD
00003694: MSTORE
00003695: DUP3
00003696: AND
00003697: PUSH1 0x24
00003699: DUP3
0000369a: ADD
0000369b: MSTORE
0000369c: PUSH1 0x44
0000369e: ADD
0000369f: PUSH2 0x107a
000036a2: JUMP
000036a3: JUMPDEST
000036a4: DUP7
000036a5: PUSH0
000036a6: JUMPDEST
000036a7: DUP7
000036a8: DUP2
000036a9: LT
000036aa: ISZERO
000036ab: PUSH2 0x3729
000036ae: JUMPI
000036af: PUSH1 0x01
000036b1: PUSH4 0xffffffff
000036b6: DUP8
000036b7: AND
000036b8: DUP3
000036b9: SHR
000036ba: DUP2
000036bb: AND
000036bc: SWAP1
000036bd: SUB
000036be: PUSH2 0x36f3
000036c1: JUMPI
000036c2: PUSH2 0x36ec
000036c5: DUP9
000036c6: DUP9
000036c7: DUP4
000036c8: DUP2
000036c9: DUP2
000036ca: LT
000036cb: PUSH2 0x36d6
000036ce: JUMPI
000036cf: PUSH2 0x36d6
000036d2: PUSH2 0x4e9e
000036d5: JUMP
000036d6: JUMPDEST
000036d7: SWAP1
000036d8: POP
000036d9: PUSH1 0x20
000036db: MUL
000036dc: ADD
000036dd: CALLDATALOAD
000036de: DUP4
000036df: PUSH0
000036e0: SWAP2
000036e1: DUP3
000036e2: MSTORE
000036e3: PUSH1 0x20
000036e5: MSTORE
000036e6: PUSH1 0x40
000036e8: SWAP1
000036e9: KECCAK256
000036ea: SWAP1
000036eb: JUMP
000036ec: JUMPDEST
000036ed: SWAP2
000036ee: POP
000036ef: PUSH2 0x3721
000036f2: JUMP
000036f3: JUMPDEST
000036f4: PUSH2 0x371e
000036f7: DUP3
000036f8: DUP10
000036f9: DUP10
000036fa: DUP5
000036fb: DUP2
000036fc: DUP2
000036fd: LT
000036fe: PUSH2 0x3709
00003701: JUMPI
00003702: PUSH2 0x3709
00003705: PUSH2 0x4e9e
00003708: JUMP
00003709: JUMPDEST
0000370a: SWAP1
0000370b: POP
0000370c: PUSH1 0x20
0000370e: MUL
0000370f: ADD
00003710: CALLDATALOAD
00003711: PUSH0
00003712: SWAP2
00003713: DUP3
00003714: MSTORE
00003715: PUSH1 0x20
00003717: MSTORE
00003718: PUSH1 0x40
0000371a: SWAP1
0000371b: KECCAK256
0000371c: SWAP1
0000371d: JUMP
0000371e: JUMPDEST
0000371f: SWAP2
00003720: POP
00003721: JUMPDEST
00003722: PUSH1 0x01
00003724: ADD
00003725: PUSH2 0x36a6
00003728: JUMP
00003729: JUMPDEST
0000372a: POP
0000372b: SWAP1
0000372c: SWAP3
0000372d: EQ
0000372e: SWAP7
0000372f: SWAP6
00003730: POP
00003731: POP
00003732: POP
00003733: POP
00003734: POP
00003735: POP
00003736: JUMP
00003737: JUMPDEST
00003738: PUSH0
00003739: PUSH2 0x3743
0000373c: PUSH1 0x20
0000373e: DUP5
0000373f: PUSH2 0x5330
00003742: JUMP
00003743: JUMPDEST
00003744: ISZERO
00003745: PUSH2 0x377a
00003748: JUMPI
00003749: PUSH1 0x40
0000374b: MLOAD
0000374c: PUSH32 0x6426c6c500000000000000000000000000000000000000000000000000000000
0000376d: DUP2
0000376e: MSTORE
0000376f: PUSH1 0x04
00003771: ADD
00003772: PUSH1 0x40
00003774: MLOAD
00003775: DUP1
00003776: SWAP2
00003777: SUB
00003778: SWAP1
00003779: REVERT
0000377a: JUMPDEST
0000377b: PUSH32 0x729eebce00000000000000000000000000000000000000000000000000000000
0000379c: DUP4
0000379d: JUMPDEST
0000379e: DUP1
0000379f: ISZERO
000037a0: PUSH2 0x382f
000037a3: JUMPI
000037a4: PUSH1 0x20
000037a6: DUP2
000037a7: SUB
000037a8: SWAP1
000037a9: POP
000037aa: DUP1
000037ab: DUP7
000037ac: ADD
000037ad: CALLDATALOAD
000037ae: PUSH32 0xff00000000000000000000000000000000000000000000000000000000000000
000037cf: DUP2
000037d0: AND
000037d1: ISZERO
000037d2: PUSH2 0x37e0
000037d5: JUMPI
000037d6: PUSH1 0x40
000037d8: MLOAD
000037d9: DUP4
000037da: DUP2
000037db: MSTORE
000037dc: PUSH1 0x04
000037de: DUP2
000037df: REVERT
000037e0: JUMPDEST
000037e1: PUSH32 0x73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001
00003802: DUP2
00003803: PUSH32 0x73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001
00003824: DUP8
00003825: DUP8
00003826: MULMOD
00003827: ADDMOD
00003828: SWAP4
00003829: POP
0000382a: POP
0000382b: PUSH2 0x379d
0000382e: JUMP
0000382f: JUMPDEST
00003830: POP
00003831: POP
00003832: SWAP4
00003833: SWAP3
00003834: POP
00003835: POP
00003836: POP
00003837: JUMP
00003838: JUMPDEST
00003839: PUSH32 0x73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001
0000385a: DUP5
0000385b: MOD
0000385c: SWAP4
0000385d: POP
0000385e: PUSH0
0000385f: DUP1
00003860: PUSH1 0x0a
00003862: PUSH1 0x01
00003864: PUSH1 0x01
00003866: PUSH1 0xa0
00003868: SHL
00003869: SUB
0000386a: AND
0000386b: DUP8
0000386c: DUP8
0000386d: DUP8
0000386e: DUP8
0000386f: DUP8
00003870: PUSH1 0x40
00003872: MLOAD
00003873: PUSH1 0x20
00003875: ADD
00003876: PUSH2 0x3883
00003879: SWAP6
0000387a: SWAP5
0000387b: SWAP4
0000387c: SWAP3
0000387d: SWAP2
0000387e: SWAP1
0000387f: PUSH2 0x5368
00003882: JUMP
00003883: JUMPDEST
00003884: PUSH1 0x40
00003886: DUP1
00003887: MLOAD
00003888: PUSH1 0x1f
0000388a: NOT
0000388b: DUP2
0000388c: DUP5
0000388d: SUB
0000388e: ADD
0000388f: DUP2
00003890: MSTORE
00003891: SWAP1
00003892: DUP3
00003893: SWAP1
00003894: MSTORE
00003895: PUSH2 0x389d
00003898: SWAP2
00003899: PUSH2 0x51da
0000389c: JUMP
0000389d: JUMPDEST
0000389e: PUSH0
0000389f: PUSH1 0x40
000038a1: MLOAD
000038a2: DUP1
000038a3: DUP4
000038a4: SUB
000038a5: DUP2
000038a6: DUP6
000038a7: GAS
000038a8: STATICCALL
000038a9: SWAP2
000038aa: POP
000038ab: POP
000038ac: RETURNDATASIZE
000038ad: DUP1
000038ae: PUSH0
000038af: DUP2
000038b0: EQ
000038b1: PUSH2 0x38d5
000038b4: JUMPI
000038b5: PUSH1 0x40
000038b7: MLOAD
000038b8: SWAP2
000038b9: POP
000038ba: PUSH1 0x1f
000038bc: NOT
000038bd: PUSH1 0x3f
000038bf: RETURNDATASIZE
000038c0: ADD
000038c1: AND
000038c2: DUP3
000038c3: ADD
000038c4: PUSH1 0x40
000038c6: MSTORE
000038c7: RETURNDATASIZE
000038c8: DUP3
000038c9: MSTORE
000038ca: RETURNDATASIZE
000038cb: PUSH0
000038cc: PUSH1 0x20
000038ce: DUP5
000038cf: ADD
000038d0: RETURNDATACOPY
000038d1: PUSH2 0x38da
000038d4: JUMP
000038d5: JUMPDEST
000038d6: PUSH1 0x60
000038d8: SWAP2
000038d9: POP
000038da: JUMPDEST
000038db: POP
000038dc: SWAP2
000038dd: POP
000038de: SWAP2
000038df: POP
000038e0: DUP2
000038e1: PUSH2 0x3916
000038e4: JUMPI
000038e5: PUSH1 0x40
000038e7: MLOAD
000038e8: PUSH32 0xa71194af00000000000000000000000000000000000000000000000000000000
00003909: DUP2
0000390a: MSTORE
0000390b: PUSH1 0x04
0000390d: ADD
0000390e: PUSH1 0x40
00003910: MLOAD
00003911: DUP1
00003912: SWAP2
00003913: SUB
00003914: SWAP1
00003915: REVERT
00003916: JUMPDEST
00003917: PUSH1 0x40
00003919: DUP2
0000391a: MLOAD
0000391b: EQ
0000391c: PUSH2 0x395e
0000391f: JUMPI
00003920: DUP1
00003921: MLOAD
00003922: PUSH1 0x40
00003924: DUP1
00003925: MLOAD
00003926: PUSH32 0xf75db38100000000000000000000000000000000000000000000000000000000
00003947: DUP2
00003948: MSTORE
00003949: PUSH2 0x107a
0000394c: SWAP3
0000394d: SWAP1
0000394e: PUSH1 0x04
00003950: ADD
00003951: SWAP2
00003952: DUP3
00003953: MSTORE
00003954: PUSH1 0x20
00003956: DUP3
00003957: ADD
00003958: MSTORE
00003959: PUSH1 0x40
0000395b: ADD
0000395c: SWAP1
0000395d: JUMP
0000395e: JUMPDEST
0000395f: PUSH1 0x20
00003961: DUP2
00003962: ADD
00003963: MLOAD
00003964: PUSH1 0x40
00003966: DUP3
00003967: ADD
00003968: MLOAD
00003969: PUSH2 0x1000
0000396c: DUP3
0000396d: EQ
0000396e: ISZERO
0000396f: DUP1
00003970: PUSH2 0x3999
00003973: JUMPI
00003974: POP
00003975: PUSH32 0x73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001
00003996: DUP2
00003997: EQ
00003998: ISZERO
00003999: JUMPDEST
0000399a: ISZERO
0000399b: PUSH2 0x35a7
0000399e: JUMPI
0000399f: PUSH1 0x40
000039a1: MLOAD
000039a2: PUSH32 0x68dcad5f00000000000000000000000000000000000000000000000000000000
000039c3: DUP2
000039c4: MSTORE
000039c5: PUSH1 0x04
000039c7: DUP2
000039c8: ADD
000039c9: DUP4
000039ca: SWAP1
000039cb: MSTORE
000039cc: PUSH1 0x24
000039ce: DUP2
000039cf: ADD
000039d0: DUP3
000039d1: SWAP1
000039d2: MSTORE
000039d3: PUSH1 0x44
000039d5: ADD
000039d6: PUSH2 0x107a
000039d9: JUMP
000039da: JUMPDEST
000039db: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000039fc: DUP3
000039fd: ADD
000039fe: PUSH0
000039ff: SWAP1
00003a00: DUP2
00003a01: MSTORE
00003a02: PUSH2 0x014e
00003a05: PUSH1 0x20
00003a07: DUP2
00003a08: DUP2
00003a09: MSTORE
00003a0a: PUSH1 0x40
00003a0c: DUP1
00003a0d: DUP5
00003a0e: KECCAK256
00003a0f: SLOAD
00003a10: DUP5
00003a11: MSTORE
00003a12: DUP5
00003a13: DUP3
00003a14: MSTORE
00003a15: DUP1
00003a16: DUP5
00003a17: KECCAK256
00003a18: DUP7
00003a19: DUP6
00003a1a: MSTORE
00003a1b: SWAP3
00003a1c: SWAP1
00003a1d: SWAP2
00003a1e: MSTORE
00003a1f: DUP1
00003a20: DUP4
00003a21: KECCAK256
00003a22: DUP3
00003a23: SWAP1
00003a24: SSTORE
00003a25: MLOAD
00003a26: SWAP1
00003a27: SWAP2
00003a28: DUP4
00003a29: SWAP2
00003a2a: DUP4
00003a2b: SWAP2
00003a2c: DUP7
00003a2d: SWAP2
00003a2e: PUSH32 0xea3b023b4c8680d4b4824f0143132c95476359a2bb70a81d6c5a36f6918f6339
00003a4f: SWAP2
00003a50: SWAP1
00003a51: LOG4
00003a52: POP
00003a53: POP
00003a54: POP
00003a55: JUMP
00003a56: JUMPDEST
00003a57: PUSH0
00003a58: SLOAD
00003a59: PUSH2 0x0100
00003a5c: SWAP1
00003a5d: DIV
00003a5e: PUSH1 0xff
00003a60: AND
00003a61: PUSH2 0x3aec
00003a64: JUMPI
00003a65: PUSH1 0x40
00003a67: MLOAD
00003a68: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003a89: DUP2
00003a8a: MSTORE
00003a8b: PUSH1 0x20
00003a8d: PUSH1 0x04
00003a8f: DUP3
00003a90: ADD
00003a91: MSTORE
00003a92: PUSH1 0x2b
00003a94: PUSH1 0x24
00003a96: DUP3
00003a97: ADD
00003a98: MSTORE
00003a99: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069
00003aba: PUSH1 0x44
00003abc: DUP3
00003abd: ADD
00003abe: MSTORE
00003abf: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000
00003ae0: PUSH1 0x64
00003ae2: DUP3
00003ae3: ADD
00003ae4: MSTORE
00003ae5: PUSH1 0x84
00003ae7: ADD
00003ae8: PUSH2 0x107a
00003aeb: JUMP
00003aec: JUMPDEST
00003aed: PUSH0
00003aee: JUMPDEST
00003aef: DUP4
00003af0: DUP2
00003af1: LT
00003af2: ISZERO
00003af3: PUSH2 0x3bf4
00003af6: JUMPI
00003af7: DUP5
00003af8: DUP5
00003af9: DUP3
00003afa: DUP2
00003afb: DUP2
00003afc: LT
00003afd: PUSH2 0x3b08
00003b00: JUMPI
00003b01: PUSH2 0x3b08
00003b04: PUSH2 0x4e9e
00003b07: JUMP
00003b08: JUMPDEST
00003b09: SWAP1
00003b0a: POP
00003b0b: PUSH1 0x40
00003b0d: MUL
00003b0e: ADD
00003b0f: PUSH1 0x20
00003b11: ADD
00003b12: CALLDATALOAD
00003b13: PUSH1 0xdb
00003b15: PUSH0
00003b16: DUP8
00003b17: DUP8
00003b18: DUP6
00003b19: DUP2
00003b1a: DUP2
00003b1b: LT
00003b1c: PUSH2 0x3b27
00003b1f: JUMPI
00003b20: PUSH2 0x3b27
00003b23: PUSH2 0x4e9e
00003b26: JUMP
00003b27: JUMPDEST
00003b28: PUSH2 0x3b3d
00003b2b: SWAP3
00003b2c: PUSH1 0x20
00003b2e: PUSH1 0x40
00003b30: SWAP1
00003b31: SWAP3
00003b32: MUL
00003b33: ADD
00003b34: SWAP1
00003b35: DUP2
00003b36: ADD
00003b37: SWAP2
00003b38: POP
00003b39: PUSH2 0x47e4
00003b3c: JUMP
00003b3d: JUMPDEST
00003b3e: PUSH1 0x08
00003b40: DUP2
00003b41: GT
00003b42: ISZERO
00003b43: PUSH2 0x3b4e
00003b46: JUMPI
00003b47: PUSH2 0x3b4e
00003b4a: PUSH2 0x4cb6
00003b4d: JUMP
00003b4e: JUMPDEST
00003b4f: PUSH1 0x08
00003b51: DUP2
00003b52: GT
00003b53: ISZERO
00003b54: PUSH2 0x3b5f
00003b57: JUMPI
00003b58: PUSH2 0x3b5f
00003b5b: PUSH2 0x4cb6
00003b5e: JUMP
00003b5f: JUMPDEST
00003b60: DUP2
00003b61: MSTORE
00003b62: PUSH1 0x20
00003b64: DUP2
00003b65: ADD
00003b66: SWAP2
00003b67: SWAP1
00003b68: SWAP2
00003b69: MSTORE
00003b6a: PUSH1 0x40
00003b6c: ADD
00003b6d: PUSH0
00003b6e: KECCAK256
00003b6f: SSTORE
00003b70: DUP5
00003b71: DUP5
00003b72: DUP3
00003b73: DUP2
00003b74: DUP2
00003b75: LT
00003b76: PUSH2 0x3b81
00003b79: JUMPI
00003b7a: PUSH2 0x3b81
00003b7d: PUSH2 0x4e9e
00003b80: JUMP
00003b81: JUMPDEST
00003b82: SWAP1
00003b83: POP
00003b84: PUSH1 0x40
00003b86: MUL
00003b87: ADD
00003b88: PUSH1 0x20
00003b8a: ADD
00003b8b: CALLDATALOAD
00003b8c: DUP6
00003b8d: DUP6
00003b8e: DUP4
00003b8f: DUP2
00003b90: DUP2
00003b91: LT
00003b92: PUSH2 0x3b9d
00003b95: JUMPI
00003b96: PUSH2 0x3b9d
00003b99: PUSH2 0x4e9e
00003b9c: JUMP
00003b9d: JUMPDEST
00003b9e: PUSH2 0x3bb3
00003ba1: SWAP3
00003ba2: PUSH1 0x20
00003ba4: PUSH1 0x40
00003ba6: SWAP1
00003ba7: SWAP3
00003ba8: MUL
00003ba9: ADD
00003baa: SWAP1
00003bab: DUP2
00003bac: ADD
00003bad: SWAP2
00003bae: POP
00003baf: PUSH2 0x47e4
00003bb2: JUMP
00003bb3: JUMPDEST
00003bb4: PUSH1 0x08
00003bb6: DUP2
00003bb7: GT
00003bb8: ISZERO
00003bb9: PUSH2 0x3bc4
00003bbc: JUMPI
00003bbd: PUSH2 0x3bc4
00003bc0: PUSH2 0x4cb6
00003bc3: JUMP
00003bc4: JUMPDEST
00003bc5: PUSH1 0x40
00003bc7: MLOAD
00003bc8: PUSH32 0x33aa8fd1ce49e1761bc8d27fd53414bfefc45d690feed0ce55019d7d3aec6091
00003be9: SWAP1
00003bea: PUSH0
00003beb: SWAP1
00003bec: LOG3
00003bed: PUSH1 0x01
00003bef: ADD
00003bf0: PUSH2 0x3aee
00003bf3: JUMP
00003bf4: JUMPDEST
00003bf5: POP
00003bf6: PUSH0
00003bf7: JUMPDEST
00003bf8: DUP2
00003bf9: DUP2
00003bfa: LT
00003bfb: ISZERO
00003bfc: PUSH2 0x3cfd
00003bff: JUMPI
00003c00: DUP3
00003c01: DUP3
00003c02: DUP3
00003c03: DUP2
00003c04: DUP2
00003c05: LT
00003c06: PUSH2 0x3c11
00003c09: JUMPI
00003c0a: PUSH2 0x3c11
00003c0d: PUSH2 0x4e9e
00003c10: JUMP
00003c11: JUMPDEST
00003c12: SWAP1
00003c13: POP
00003c14: PUSH1 0x40
00003c16: MUL
00003c17: ADD
00003c18: PUSH1 0x20
00003c1a: ADD
00003c1b: CALLDATALOAD
00003c1c: PUSH1 0xdc
00003c1e: PUSH0
00003c1f: DUP6
00003c20: DUP6
00003c21: DUP6
00003c22: DUP2
00003c23: DUP2
00003c24: LT
00003c25: PUSH2 0x3c30
00003c28: JUMPI
00003c29: PUSH2 0x3c30
00003c2c: PUSH2 0x4e9e
00003c2f: JUMP
00003c30: JUMPDEST
00003c31: PUSH2 0x3c46
00003c34: SWAP3
00003c35: PUSH1 0x20
00003c37: PUSH1 0x40
00003c39: SWAP1
00003c3a: SWAP3
00003c3b: MUL
00003c3c: ADD
00003c3d: SWAP1
00003c3e: DUP2
00003c3f: ADD
00003c40: SWAP2
00003c41: POP
00003c42: PUSH2 0x47e4
00003c45: JUMP
00003c46: JUMPDEST
00003c47: PUSH1 0x08
00003c49: DUP2
00003c4a: GT
00003c4b: ISZERO
00003c4c: PUSH2 0x3c57
00003c4f: JUMPI
00003c50: PUSH2 0x3c57
00003c53: PUSH2 0x4cb6
00003c56: JUMP
00003c57: JUMPDEST
00003c58: PUSH1 0x08
00003c5a: DUP2
00003c5b: GT
00003c5c: ISZERO
00003c5d: PUSH2 0x3c68
00003c60: JUMPI
00003c61: PUSH2 0x3c68
00003c64: PUSH2 0x4cb6
00003c67: JUMP
00003c68: JUMPDEST
00003c69: DUP2
00003c6a: MSTORE
00003c6b: PUSH1 0x20
00003c6d: DUP2
00003c6e: ADD
00003c6f: SWAP2
00003c70: SWAP1
00003c71: SWAP2
00003c72: MSTORE
00003c73: PUSH1 0x40
00003c75: ADD
00003c76: PUSH0
00003c77: KECCAK256
00003c78: SSTORE
00003c79: DUP3
00003c7a: DUP3
00003c7b: DUP3
00003c7c: DUP2
00003c7d: DUP2
00003c7e: LT
00003c7f: PUSH2 0x3c8a
00003c82: JUMPI
00003c83: PUSH2 0x3c8a
00003c86: PUSH2 0x4e9e
00003c89: JUMP
00003c8a: JUMPDEST
00003c8b: SWAP1
00003c8c: POP
00003c8d: PUSH1 0x40
00003c8f: MUL
00003c90: ADD
00003c91: PUSH1 0x20
00003c93: ADD
00003c94: CALLDATALOAD
00003c95: DUP4
00003c96: DUP4
00003c97: DUP4
00003c98: DUP2
00003c99: DUP2
00003c9a: LT
00003c9b: PUSH2 0x3ca6
00003c9e: JUMPI
00003c9f: PUSH2 0x3ca6
00003ca2: PUSH2 0x4e9e
00003ca5: JUMP
00003ca6: JUMPDEST
00003ca7: PUSH2 0x3cbc
00003caa: SWAP3
00003cab: PUSH1 0x20
00003cad: PUSH1 0x40
00003caf: SWAP1
00003cb0: SWAP3
00003cb1: MUL
00003cb2: ADD
00003cb3: SWAP1
00003cb4: DUP2
00003cb5: ADD
00003cb6: SWAP2
00003cb7: POP
00003cb8: PUSH2 0x47e4
00003cbb: JUMP
00003cbc: JUMPDEST
00003cbd: PUSH1 0x08
00003cbf: DUP2
00003cc0: GT
00003cc1: ISZERO
00003cc2: PUSH2 0x3ccd
00003cc5: JUMPI
00003cc6: PUSH2 0x3ccd
00003cc9: PUSH2 0x4cb6
00003ccc: JUMP
00003ccd: JUMPDEST
00003cce: PUSH1 0x40
00003cd0: MLOAD
00003cd1: PUSH32 0xe7bf4b8dc0c17a52dc9e52323a3ab61cb2079db35f969125b1f8a3d984c6f6c2
00003cf2: SWAP1
00003cf3: PUSH0
00003cf4: SWAP1
00003cf5: LOG3
00003cf6: PUSH1 0x01
00003cf8: ADD
00003cf9: PUSH2 0x3bf7
00003cfc: JUMP
00003cfd: JUMPDEST
00003cfe: POP
00003cff: POP
00003d00: POP
00003d01: POP
00003d02: POP
00003d03: JUMP
00003d04: JUMPDEST
00003d05: PUSH0
00003d06: SLOAD
00003d07: PUSH2 0x0100
00003d0a: SWAP1
00003d0b: DIV
00003d0c: PUSH1 0xff
00003d0e: AND
00003d0f: PUSH2 0x3d9a
00003d12: JUMPI
00003d13: PUSH1 0x40
00003d15: MLOAD
00003d16: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003d37: DUP2
00003d38: MSTORE
00003d39: PUSH1 0x20
00003d3b: PUSH1 0x04
00003d3d: DUP3
00003d3e: ADD
00003d3f: MSTORE
00003d40: PUSH1 0x2b
00003d42: PUSH1 0x24
00003d44: DUP3
00003d45: ADD
00003d46: MSTORE
00003d47: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069
00003d68: PUSH1 0x44
00003d6a: DUP3
00003d6b: ADD
00003d6c: MSTORE
00003d6d: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000
00003d8e: PUSH1 0x64
00003d90: DUP3
00003d91: ADD
00003d92: MSTORE
00003d93: PUSH1 0x84
00003d95: ADD
00003d96: PUSH2 0x107a
00003d99: JUMP
00003d9a: JUMPDEST
00003d9b: PUSH2 0x3da2
00003d9e: PUSH2 0x4353
00003da1: JUMP
00003da2: JUMPDEST
00003da3: PUSH2 0x3daa
00003da6: PUSH2 0x4353
00003da9: JUMP
00003daa: JUMPDEST
00003dab: PUSH2 0x3db2
00003dae: PUSH2 0x4353
00003db1: JUMP
00003db2: JUMPDEST
00003db3: PUSH2 0x3dbc
00003db6: DUP3
00003db7: DUP3
00003db8: PUSH2 0x43e9
00003dbb: JUMP
00003dbc: JUMPDEST
00003dbd: POP
00003dbe: POP
00003dbf: PUSH1 0x01
00003dc1: PUSH1 0xe4
00003dc3: SSTORE
00003dc4: JUMP
00003dc5: JUMPDEST
00003dc6: PUSH0
00003dc7: SLOAD
00003dc8: PUSH2 0x0100
00003dcb: SWAP1
00003dcc: DIV
00003dcd: PUSH1 0xff
00003dcf: AND
00003dd0: PUSH2 0x3e5b
00003dd3: JUMPI
00003dd4: PUSH1 0x40
00003dd6: MLOAD
00003dd7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003df8: DUP2
00003df9: MSTORE
00003dfa: PUSH1 0x20
00003dfc: PUSH1 0x04
00003dfe: DUP3
00003dff: ADD
00003e00: MSTORE
00003e01: PUSH1 0x2b
00003e03: PUSH1 0x24
00003e05: DUP3
00003e06: ADD
00003e07: MSTORE
00003e08: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069
00003e29: PUSH1 0x44
00003e2b: DUP3
00003e2c: ADD
00003e2d: MSTORE
00003e2e: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000
00003e4f: PUSH1 0x64
00003e51: DUP3
00003e52: ADD
00003e53: MSTORE
00003e54: PUSH1 0x84
00003e56: ADD
00003e57: PUSH2 0x107a
00003e5a: JUMP
00003e5b: JUMPDEST
00003e5c: PUSH0
00003e5d: JUMPDEST
00003e5e: DUP2
00003e5f: DUP2
00003e60: LT
00003e61: ISZERO
00003e62: PUSH2 0x11cf
00003e65: JUMPI
00003e66: PUSH0
00003e67: DUP4
00003e68: DUP4
00003e69: DUP4
00003e6a: DUP2
00003e6b: DUP2
00003e6c: LT
00003e6d: PUSH2 0x3e78
00003e70: JUMPI
00003e71: PUSH2 0x3e78
00003e74: PUSH2 0x4e9e
00003e77: JUMP
00003e78: JUMPDEST
00003e79: PUSH2 0x3e8e
00003e7c: SWAP3
00003e7d: PUSH1 0x20
00003e7f: PUSH1 0x40
00003e81: SWAP1
00003e82: SWAP3
00003e83: MUL
00003e84: ADD
00003e85: SWAP1
00003e86: DUP2
00003e87: ADD
00003e88: SWAP2
00003e89: POP
00003e8a: PUSH2 0x4d9b
00003e8d: JUMP
00003e8e: JUMPDEST
00003e8f: PUSH1 0x01
00003e91: PUSH1 0x01
00003e93: PUSH1 0xa0
00003e95: SHL
00003e96: SUB
00003e97: AND
00003e98: SUB
00003e99: PUSH2 0x3ece
00003e9c: JUMPI
00003e9d: PUSH1 0x40
00003e9f: MLOAD
00003ea0: PUSH32 0x8579befe00000000000000000000000000000000000000000000000000000000
00003ec1: DUP2
00003ec2: MSTORE
00003ec3: PUSH1 0x04
00003ec5: ADD
00003ec6: PUSH1 0x40
00003ec8: MLOAD
00003ec9: DUP1
00003eca: SWAP2
00003ecb: SUB
00003ecc: SWAP1
00003ecd: REVERT
00003ece: JUMPDEST
00003ecf: DUP3
00003ed0: DUP3
00003ed1: DUP3
00003ed2: DUP2
00003ed3: DUP2
00003ed4: LT
00003ed5: PUSH2 0x3ee0
00003ed8: JUMPI
00003ed9: PUSH2 0x3ee0
00003edc: PUSH2 0x4e9e
00003edf: JUMP
00003ee0: JUMPDEST
00003ee1: SWAP1
00003ee2: POP
00003ee3: PUSH1 0x40
00003ee5: MUL
00003ee6: ADD
00003ee7: PUSH1 0x20
00003ee9: ADD
00003eea: CALLDATALOAD
00003eeb: PUSH0
00003eec: DUP1
00003eed: SHL
00003eee: SUB
00003eef: PUSH2 0x3f24
00003ef2: JUMPI
00003ef3: PUSH1 0x40
00003ef5: MLOAD
00003ef6: PUSH32 0x0742d05300000000000000000000000000000000000000000000000000000000
00003f17: DUP2
00003f18: MSTORE
00003f19: PUSH1 0x04
00003f1b: ADD
00003f1c: PUSH1 0x40
00003f1e: MLOAD
00003f1f: DUP1
00003f20: SWAP2
00003f21: SUB
00003f22: SWAP1
00003f23: REVERT
00003f24: JUMPDEST
00003f25: PUSH2 0x3f6b
00003f28: DUP4
00003f29: DUP4
00003f2a: DUP4
00003f2b: DUP2
00003f2c: DUP2
00003f2d: LT
00003f2e: PUSH2 0x3f39
00003f31: JUMPI
00003f32: PUSH2 0x3f39
00003f35: PUSH2 0x4e9e
00003f38: JUMP
00003f39: JUMPDEST
00003f3a: SWAP1
00003f3b: POP
00003f3c: PUSH1 0x40
00003f3e: MUL
00003f3f: ADD
00003f40: PUSH1 0x20
00003f42: ADD
00003f43: CALLDATALOAD
00003f44: DUP5
00003f45: DUP5
00003f46: DUP5
00003f47: DUP2
00003f48: DUP2
00003f49: LT
00003f4a: PUSH2 0x3f55
00003f4d: JUMPI
00003f4e: PUSH2 0x3f55
00003f51: PUSH2 0x4e9e
00003f54: JUMP
00003f55: JUMPDEST
00003f56: PUSH2 0x2354
00003f59: SWAP3
00003f5a: PUSH1 0x20
00003f5c: PUSH1 0x40
00003f5e: SWAP1
00003f5f: SWAP3
00003f60: MUL
00003f61: ADD
00003f62: SWAP1
00003f63: DUP2
00003f64: ADD
00003f65: SWAP2
00003f66: POP
00003f67: PUSH2 0x4d9b
00003f6a: JUMP
00003f6b: JUMPDEST
00003f6c: PUSH1 0x01
00003f6e: ADD
00003f6f: PUSH2 0x3e5d
00003f72: JUMP
00003f73: JUMPDEST
00003f74: PUSH0
00003f75: DUP3
00003f76: DUP2
00003f77: MSTORE
00003f78: PUSH1 0x65
00003f7a: PUSH1 0x20
00003f7c: SWAP1
00003f7d: DUP2
00003f7e: MSTORE
00003f7f: PUSH1 0x40
00003f81: DUP1
00003f82: DUP4
00003f83: KECCAK256
00003f84: PUSH1 0x01
00003f86: PUSH1 0x01
00003f88: PUSH1 0xa0
00003f8a: SHL
00003f8b: SUB
00003f8c: DUP6
00003f8d: AND
00003f8e: DUP5
00003f8f: MSTORE
00003f90: SWAP1
00003f91: SWAP2
00003f92: MSTORE
00003f93: SWAP1
00003f94: KECCAK256
00003f95: SLOAD
00003f96: PUSH1 0xff
00003f98: AND
00003f99: ISZERO
00003f9a: PUSH2 0x1227
00003f9d: JUMPI
00003f9e: PUSH0
00003f9f: DUP3
00003fa0: DUP2
00003fa1: MSTORE
00003fa2: PUSH1 0x65
00003fa4: PUSH1 0x20
00003fa6: SWAP1
00003fa7: DUP2
00003fa8: MSTORE
00003fa9: PUSH1 0x40
00003fab: DUP1
00003fac: DUP4
00003fad: KECCAK256
00003fae: PUSH1 0x01
00003fb0: PUSH1 0x01
00003fb2: PUSH1 0xa0
00003fb4: SHL
00003fb5: SUB
00003fb6: DUP6
00003fb7: AND
00003fb8: DUP1
00003fb9: DUP6
00003fba: MSTORE
00003fbb: SWAP3
00003fbc: MSTORE
00003fbd: DUP1
00003fbe: DUP4
00003fbf: KECCAK256
00003fc0: DUP1
00003fc1: SLOAD
00003fc2: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00003fe3: AND
00003fe4: SWAP1
00003fe5: SSTORE
00003fe6: MLOAD
00003fe7: CALLER
00003fe8: SWAP3
00003fe9: DUP6
00003fea: SWAP2
00003feb: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b
0000400c: SWAP2
0000400d: SWAP1
0000400e: LOG4
0000400f: POP
00004010: POP
00004011: JUMP
00004012: JUMPDEST
00004013: PUSH0
00004014: DUP3
00004015: DUP2
00004016: MSTORE
00004017: PUSH1 0x65
00004019: PUSH1 0x20
0000401b: SWAP1
0000401c: DUP2
0000401d: MSTORE
0000401e: PUSH1 0x40
00004020: DUP1
00004021: DUP4
00004022: KECCAK256
00004023: PUSH1 0x01
00004025: PUSH1 0x01
00004027: PUSH1 0xa0
00004029: SHL
0000402a: SUB
0000402b: DUP6
0000402c: AND
0000402d: DUP5
0000402e: MSTORE
0000402f: SWAP1
00004030: SWAP2
00004031: MSTORE
00004032: SWAP1
00004033: KECCAK256
00004034: SLOAD
00004035: PUSH1 0xff
00004037: AND
00004038: PUSH2 0x1227
0000403b: JUMPI
0000403c: PUSH2 0x4044
0000403f: DUP2
00004040: PUSH2 0x454f
00004043: JUMP
00004044: JUMPDEST
00004045: PUSH2 0x404f
00004048: DUP4
00004049: PUSH1 0x20
0000404b: PUSH2 0x4561
0000404e: JUMP
0000404f: JUMPDEST
00004050: PUSH1 0x40
00004052: MLOAD
00004053: PUSH1 0x20
00004055: ADD
00004056: PUSH2 0x4060
00004059: SWAP3
0000405a: SWAP2
0000405b: SWAP1
0000405c: PUSH2 0x538e
0000405f: JUMP
00004060: JUMPDEST
00004061: PUSH1 0x40
00004063: DUP1
00004064: MLOAD
00004065: PUSH1 0x1f
00004067: NOT
00004068: DUP2
00004069: DUP5
0000406a: SUB
0000406b: ADD
0000406c: DUP2
0000406d: MSTORE
0000406e: SWAP1
0000406f: DUP3
00004070: SWAP1
00004071: MSTORE
00004072: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00004093: DUP3
00004094: MSTORE
00004095: PUSH2 0x107a
00004098: SWAP2
00004099: PUSH1 0x04
0000409b: ADD
0000409c: PUSH2 0x485b
0000409f: JUMP
000040a0: JUMPDEST
000040a1: DUP2
000040a2: PUSH0
000040a3: SUB
000040a4: PUSH2 0x40e2
000040a7: JUMPI
000040a8: DUP1
000040a9: ISZERO
000040aa: PUSH2 0x1227
000040ad: JUMPI
000040ae: PUSH1 0x40
000040b0: MLOAD
000040b1: PUSH32 0x0c25659200000000000000000000000000000000000000000000000000000000
000040d2: DUP2
000040d3: MSTORE
000040d4: PUSH1 0x04
000040d6: DUP2
000040d7: ADD
000040d8: DUP3
000040d9: SWAP1
000040da: MSTORE
000040db: PUSH1 0x24
000040dd: ADD
000040de: PUSH2 0x107a
000040e1: JUMP
000040e2: JUMPDEST
000040e3: DUP1
000040e4: PUSH2 0x411c
000040e7: JUMPI
000040e8: PUSH1 0x40
000040ea: MLOAD
000040eb: PUSH32 0x5228f4c800000000000000000000000000000000000000000000000000000000
0000410c: DUP2
0000410d: MSTORE
0000410e: PUSH1 0x04
00004110: DUP2
00004111: ADD
00004112: DUP4
00004113: SWAP1
00004114: MSTORE
00004115: PUSH1 0x24
00004117: ADD
00004118: PUSH2 0x107a
0000411b: JUMP
0000411c: JUMPDEST
0000411d: PUSH0
0000411e: DUP3
0000411f: DUP2
00004120: MSTORE
00004121: PUSH2 0x014e
00004124: PUSH1 0x20
00004126: MSTORE
00004127: PUSH1 0x40
00004129: SWAP1
0000412a: KECCAK256
0000412b: SLOAD
0000412c: DUP2
0000412d: EQ
0000412e: PUSH2 0x1227
00004131: JUMPI
00004132: PUSH1 0x40
00004134: MLOAD
00004135: PUSH32 0x36459fa000000000000000000000000000000000000000000000000000000000
00004156: DUP2
00004157: MSTORE
00004158: PUSH1 0x04
0000415a: DUP2
0000415b: ADD
0000415c: DUP4
0000415d: SWAP1
0000415e: MSTORE
0000415f: PUSH1 0x24
00004161: DUP2
00004162: ADD
00004163: DUP3
00004164: SWAP1
00004165: MSTORE
00004166: PUSH1 0x44
00004168: ADD
00004169: PUSH2 0x107a
0000416c: JUMP
0000416d: JUMPDEST
0000416e: PUSH0
0000416f: JUMPDEST
00004170: DUP3
00004171: DUP2
00004172: LT
00004173: ISZERO
00004174: PUSH2 0x4273
00004177: JUMPI
00004178: PUSH2 0x0150
0000417b: PUSH0
0000417c: DUP6
0000417d: DUP6
0000417e: DUP5
0000417f: DUP2
00004180: DUP2
00004181: LT
00004182: PUSH2 0x418d
00004185: JUMPI
00004186: PUSH2 0x418d
00004189: PUSH2 0x4e9e
0000418c: JUMP
0000418d: JUMPDEST
0000418e: SWAP1
0000418f: POP
00004190: PUSH1 0x20
00004192: MUL
00004193: ADD
00004194: CALLDATALOAD
00004195: DUP2
00004196: MSTORE
00004197: PUSH1 0x20
00004199: ADD
0000419a: SWAP1
0000419b: DUP2
0000419c: MSTORE
0000419d: PUSH1 0x20
0000419f: ADD
000041a0: PUSH0
000041a1: KECCAK256
000041a2: SLOAD
000041a3: PUSH0
000041a4: EQ
000041a5: PUSH2 0x41f6
000041a8: JUMPI
000041a9: DUP4
000041aa: DUP4
000041ab: DUP3
000041ac: DUP2
000041ad: DUP2
000041ae: LT
000041af: PUSH2 0x41ba
000041b2: JUMPI
000041b3: PUSH2 0x41ba
000041b6: PUSH2 0x4e9e
000041b9: JUMP
000041ba: JUMPDEST
000041bb: SWAP1
000041bc: POP
000041bd: PUSH1 0x20
000041bf: MUL
000041c0: ADD
000041c1: CALLDATALOAD
000041c2: PUSH1 0x40
000041c4: MLOAD
000041c5: PUSH32 0xe5d1442500000000000000000000000000000000000000000000000000000000
000041e6: DUP2
000041e7: MSTORE
000041e8: PUSH1 0x04
000041ea: ADD
000041eb: PUSH2 0x107a
000041ee: SWAP2
000041ef: DUP2
000041f0: MSTORE
000041f1: PUSH1 0x20
000041f3: ADD
000041f4: SWAP1
000041f5: JUMP
000041f6: JUMPDEST
000041f7: DUP2
000041f8: PUSH2 0x0150
000041fb: PUSH0
000041fc: DUP7
000041fd: DUP7
000041fe: DUP6
000041ff: DUP2
00004200: DUP2
00004201: LT
00004202: PUSH2 0x420d
00004205: JUMPI
00004206: PUSH2 0x420d
00004209: PUSH2 0x4e9e
0000420c: JUMP
0000420d: JUMPDEST
0000420e: SWAP1
0000420f: POP
00004210: PUSH1 0x20
00004212: MUL
00004213: ADD
00004214: CALLDATALOAD
00004215: DUP2
00004216: MSTORE
00004217: PUSH1 0x20
00004219: ADD
0000421a: SWAP1
0000421b: DUP2
0000421c: MSTORE
0000421d: PUSH1 0x20
0000421f: ADD
00004220: PUSH0
00004221: KECCAK256
00004222: DUP2
00004223: SWAP1
00004224: SSTORE
00004225: POP
00004226: DUP2
00004227: DUP5
00004228: DUP5
00004229: DUP4
0000422a: DUP2
0000422b: DUP2
0000422c: LT
0000422d: PUSH2 0x4238
00004230: JUMPI
00004231: PUSH2 0x4238
00004234: PUSH2 0x4e9e
00004237: JUMP
00004238: JUMPDEST
00004239: SWAP1
0000423a: POP
0000423b: PUSH1 0x20
0000423d: MUL
0000423e: ADD
0000423f: CALLDATALOAD
00004240: PUSH32 0x300e6f978eee6a4b0bba78dd8400dc64fd5652dbfc868a2258e16d0977be222b
00004261: PUSH1 0x40
00004263: MLOAD
00004264: PUSH1 0x40
00004266: MLOAD
00004267: DUP1
00004268: SWAP2
00004269: SUB
0000426a: SWAP1
0000426b: LOG3
0000426c: PUSH1 0x01
0000426e: ADD
0000426f: PUSH2 0x416f
00004272: JUMP
00004273: JUMPDEST
00004274: POP
00004275: POP
00004276: POP
00004277: POP
00004278: JUMP
00004279: JUMPDEST
0000427a: PUSH2 0x4284
0000427d: PUSH1 0x02
0000427f: DUP4
00004280: PUSH2 0x5330
00004283: JUMP
00004284: JUMPDEST
00004285: ISZERO
00004286: PUSH2 0x42be
00004289: JUMPI
0000428a: PUSH1 0x40
0000428c: MLOAD
0000428d: PUSH32 0x0c91d77600000000000000000000000000000000000000000000000000000000
000042ae: DUP2
000042af: MSTORE
000042b0: PUSH1 0x04
000042b2: DUP2
000042b3: ADD
000042b4: DUP4
000042b5: SWAP1
000042b6: MSTORE
000042b7: PUSH1 0x24
000042b9: ADD
000042ba: PUSH2 0x107a
000042bd: JUMP
000042be: JUMPDEST
000042bf: PUSH0
000042c0: DUP1
000042c1: JUMPDEST
000042c2: DUP4
000042c3: DUP2
000042c4: LT
000042c5: ISZERO
000042c6: PUSH2 0x3cfd
000042c9: JUMPI
000042ca: PUSH1 0x40
000042cc: MLOAD
000042cd: DUP6
000042ce: DUP3
000042cf: ADD
000042d0: CALLDATALOAD
000042d1: PUSH1 0xf0
000042d3: SHR
000042d4: SWAP3
000042d5: POP
000042d6: DUP4
000042d7: DUP4
000042d8: ADD
000042d9: SWAP1
000042da: PUSH32 0x3c116827db9db3a30c1a25db8b0ee4bab9d2b223560209cfd839601b621c726d
000042fb: SWAP1
000042fc: PUSH0
000042fd: SWAP1
000042fe: LOG2
000042ff: PUSH1 0x02
00004301: ADD
00004302: PUSH2 0x42c1
00004305: JUMP
00004306: JUMPDEST
00004307: PUSH0
00004308: PUSH4 0xffffffff
0000430d: DUP3
0000430e: GT
0000430f: ISZERO
00004310: PUSH2 0x434f
00004313: JUMPI
00004314: PUSH1 0x40
00004316: MLOAD
00004317: PUSH32 0x6dfcc65000000000000000000000000000000000000000000000000000000000
00004338: DUP2
00004339: MSTORE
0000433a: PUSH1 0x20
0000433c: PUSH1 0x04
0000433e: DUP3
0000433f: ADD
00004340: MSTORE
00004341: PUSH1 0x24
00004343: DUP2
00004344: ADD
00004345: DUP4
00004346: SWAP1
00004347: MSTORE
00004348: PUSH1 0x44
0000434a: ADD
0000434b: PUSH2 0x107a
0000434e: JUMP
0000434f: JUMPDEST
00004350: POP
00004351: SWAP1
00004352: JUMP
00004353: JUMPDEST
00004354: PUSH0
00004355: SLOAD
00004356: PUSH2 0x0100
00004359: SWAP1
0000435a: DIV
0000435b: PUSH1 0xff
0000435d: AND
0000435e: PUSH2 0x2de7
00004361: JUMPI
00004362: PUSH1 0x40
00004364: MLOAD
00004365: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00004386: DUP2
00004387: MSTORE
00004388: PUSH1 0x20
0000438a: PUSH1 0x04
0000438c: DUP3
0000438d: ADD
0000438e: MSTORE
0000438f: PUSH1 0x2b
00004391: PUSH1 0x24
00004393: DUP3
00004394: ADD
00004395: MSTORE
00004396: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069
000043b7: PUSH1 0x44
000043b9: DUP3
000043ba: ADD
000043bb: MSTORE
000043bc: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000
000043dd: PUSH1 0x64
000043df: DUP3
000043e0: ADD
000043e1: MSTORE
000043e2: PUSH1 0x84
000043e4: ADD
000043e5: PUSH2 0x107a
000043e8: JUMP
000043e9: JUMPDEST
000043ea: PUSH0
000043eb: SLOAD
000043ec: PUSH2 0x0100
000043ef: SWAP1
000043f0: DIV
000043f1: PUSH1 0xff
000043f3: AND
000043f4: PUSH2 0x447f
000043f7: JUMPI
000043f8: PUSH1 0x40
000043fa: MLOAD
000043fb: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000441c: DUP2
0000441d: MSTORE
0000441e: PUSH1 0x20
00004420: PUSH1 0x04
00004422: DUP3
00004423: ADD
00004424: MSTORE
00004425: PUSH1 0x2b
00004427: PUSH1 0x24
00004429: DUP3
0000442a: ADD
0000442b: MSTORE
0000442c: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069
0000444d: PUSH1 0x44
0000444f: DUP3
00004450: ADD
00004451: MSTORE
00004452: PUSH32 0x6e697469616c697a696e67000000000000000000000000000000000000000000
00004473: PUSH1 0x64
00004475: DUP3
00004476: ADD
00004477: MSTORE
00004478: PUSH1 0x84
0000447a: ADD
0000447b: PUSH2 0x107a
0000447e: JUMP
0000447f: JUMPDEST
00004480: DUP2
00004481: PUSH0
00004482: SUB
00004483: PUSH2 0x44b8
00004486: JUMPI
00004487: PUSH1 0x40
00004489: MLOAD
0000448a: PUSH32 0xb5ed5a3b00000000000000000000000000000000000000000000000000000000
000044ab: DUP2
000044ac: MSTORE
000044ad: PUSH1 0x04
000044af: ADD
000044b0: PUSH1 0x40
000044b2: MLOAD
000044b3: DUP1
000044b4: SWAP2
000044b5: SUB
000044b6: SWAP1
000044b7: REVERT
000044b8: JUMPDEST
000044b9: DUP1
000044ba: PUSH0
000044bb: SUB
000044bc: PUSH2 0x44f1
000044bf: JUMPI
000044c0: PUSH1 0x40
000044c2: MLOAD
000044c3: PUSH32 0xd10d72bb00000000000000000000000000000000000000000000000000000000
000044e4: DUP2
000044e5: MSTORE
000044e6: PUSH1 0x04
000044e8: ADD
000044e9: PUSH1 0x40
000044eb: MLOAD
000044ec: DUP1
000044ed: SWAP2
000044ee: SUB
000044ef: SWAP1
000044f0: REVERT
000044f1: JUMPDEST
000044f2: PUSH1 0x97
000044f4: DUP3
000044f5: SWAP1
000044f6: SSTORE
000044f7: PUSH1 0x98
000044f9: DUP2
000044fa: SWAP1
000044fb: SSTORE
000044fc: PUSH2 0x4505
000044ff: DUP3
00004500: TIMESTAMP
00004501: PUSH2 0x4d62
00004504: JUMP
00004505: JUMPDEST
00004506: PUSH1 0x99
00004508: DUP2
00004509: SWAP1
0000450a: SSTORE
0000450b: PUSH1 0x97
0000450d: SLOAD
0000450e: PUSH1 0x98
00004510: SLOAD
00004511: PUSH1 0x40
00004513: DUP1
00004514: MLOAD
00004515: SWAP3
00004516: DUP4
00004517: MSTORE
00004518: PUSH1 0x20
0000451a: DUP4
0000451b: ADD
0000451c: SWAP2
0000451d: SWAP1
0000451e: SWAP2
0000451f: MSTORE
00004520: DUP2
00004521: ADD
00004522: SWAP2
00004523: SWAP1
00004524: SWAP2
00004525: MSTORE
00004526: PUSH32 0x8f805c372b66240792580418b7328c0c554ae235f0932475c51b026887fe26a9
00004547: SWAP1
00004548: PUSH1 0x60
0000454a: ADD
0000454b: PUSH2 0x25bf
0000454e: JUMP
0000454f: JUMPDEST
00004550: PUSH1 0x60
00004552: PUSH2 0x0ff6
00004555: PUSH1 0x01
00004557: PUSH1 0x01
00004559: PUSH1 0xa0
0000455b: SHL
0000455c: SUB
0000455d: DUP4
0000455e: AND
0000455f: PUSH1 0x14
00004561: JUMPDEST
00004562: PUSH1 0x60
00004564: PUSH0
00004565: PUSH2 0x456f
00004568: DUP4
00004569: PUSH1 0x02
0000456b: PUSH2 0x4d84
0000456e: JUMP
0000456f: JUMPDEST
00004570: PUSH2 0x457a
00004573: SWAP1
00004574: PUSH1 0x02
00004576: PUSH2 0x4d62
00004579: JUMP
0000457a: JUMPDEST
0000457b: PUSH8 0xffffffffffffffff
00004584: DUP2
00004585: GT
00004586: ISZERO
00004587: PUSH2 0x4592
0000458a: JUMPI
0000458b: PUSH2 0x4592
0000458e: PUSH2 0x4f07
00004591: JUMP
00004592: JUMPDEST
00004593: PUSH1 0x40
00004595: MLOAD
00004596: SWAP1
00004597: DUP1
00004598: DUP3
00004599: MSTORE
0000459a: DUP1
0000459b: PUSH1 0x1f
0000459d: ADD
0000459e: PUSH1 0x1f
000045a0: NOT
000045a1: AND
000045a2: PUSH1 0x20
000045a4: ADD
000045a5: DUP3
000045a6: ADD
000045a7: PUSH1 0x40
000045a9: MSTORE
000045aa: DUP1
000045ab: ISZERO
000045ac: PUSH2 0x45bc
000045af: JUMPI
000045b0: PUSH1 0x20
000045b2: DUP3
000045b3: ADD
000045b4: DUP2
000045b5: DUP1
000045b6: CALLDATASIZE
000045b7: DUP4
000045b8: CALLDATACOPY
000045b9: ADD
000045ba: SWAP1
000045bb: POP
000045bc: JUMPDEST
000045bd: POP
000045be: SWAP1
000045bf: POP
000045c0: PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000
000045e1: DUP2
000045e2: PUSH0
000045e3: DUP2
000045e4: MLOAD
000045e5: DUP2
000045e6: LT
000045e7: PUSH2 0x45f2
000045ea: JUMPI
000045eb: PUSH2 0x45f2
000045ee: PUSH2 0x4e9e
000045f1: JUMP
000045f2: JUMPDEST
000045f3: PUSH1 0x20
000045f5: ADD
000045f6: ADD
000045f7: SWAP1
000045f8: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00004618: NOT
00004619: AND
0000461a: SWAP1
0000461b: DUP2
0000461c: PUSH0
0000461d: BYTE
0000461e: SWAP1
0000461f: MSTORE8
00004620: POP
00004621: PUSH32 0x7800000000000000000000000000000000000000000000000000000000000000
00004642: DUP2
00004643: PUSH1 0x01
00004645: DUP2
00004646: MLOAD
00004647: DUP2
00004648: LT
00004649: PUSH2 0x4654
0000464c: JUMPI
0000464d: PUSH2 0x4654
00004650: PUSH2 0x4e9e
00004653: JUMP
00004654: JUMPDEST
00004655: PUSH1 0x20
00004657: ADD
00004658: ADD
00004659: SWAP1
0000465a: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000467a: NOT
0000467b: AND
0000467c: SWAP1
0000467d: DUP2
0000467e: PUSH0
0000467f: BYTE
00004680: SWAP1
00004681: MSTORE8
00004682: POP
00004683: PUSH0
00004684: PUSH2 0x468e
00004687: DUP5
00004688: PUSH1 0x02
0000468a: PUSH2 0x4d84
0000468d: JUMP
0000468e: JUMPDEST
0000468f: PUSH2 0x4699
00004692: SWAP1
00004693: PUSH1 0x01
00004695: PUSH2 0x4d62
00004698: JUMP
00004699: JUMPDEST
0000469a: SWAP1
0000469b: POP
0000469c: JUMPDEST
0000469d: PUSH1 0x01
0000469f: DUP2
000046a0: GT
000046a1: ISZERO
000046a2: PUSH2 0x4735
000046a5: JUMPI
000046a6: PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000
000046c7: DUP6
000046c8: PUSH1 0x0f
000046ca: AND
000046cb: PUSH1 0x10
000046cd: DUP2
000046ce: LT
000046cf: PUSH2 0x46da
000046d2: JUMPI
000046d3: PUSH2 0x46da
000046d6: PUSH2 0x4e9e
000046d9: JUMP
000046da: JUMPDEST
000046db: BYTE
000046dc: PUSH1 0xf8
000046de: SHL
000046df: DUP3
000046e0: DUP3
000046e1: DUP2
000046e2: MLOAD
000046e3: DUP2
000046e4: LT
000046e5: PUSH2 0x46f0
000046e8: JUMPI
000046e9: PUSH2 0x46f0
000046ec: PUSH2 0x4e9e
000046ef: JUMP
000046f0: JUMPDEST
000046f1: PUSH1 0x20
000046f3: ADD
000046f4: ADD
000046f5: SWAP1
000046f6: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00004716: NOT
00004717: AND
00004718: SWAP1
00004719: DUP2
0000471a: PUSH0
0000471b: BYTE
0000471c: SWAP1
0000471d: MSTORE8
0000471e: POP
0000471f: PUSH1 0x04
00004721: SWAP5
00004722: SWAP1
00004723: SWAP5
00004724: SHR
00004725: SWAP4
00004726: PUSH2 0x472e
00004729: DUP2
0000472a: PUSH2 0x53f8
0000472d: JUMP
0000472e: JUMPDEST
0000472f: SWAP1
00004730: POP
00004731: PUSH2 0x469c
00004734: JUMP
00004735: JUMPDEST
00004736: POP
00004737: DUP4
00004738: ISZERO
00004739: PUSH2 0x479e
0000473c: JUMPI
0000473d: PUSH1 0x40
0000473f: MLOAD
00004740: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00004761: DUP2
00004762: MSTORE
00004763: PUSH1 0x20
00004765: PUSH1 0x04
00004767: DUP3
00004768: ADD
00004769: DUP2
0000476a: SWAP1
0000476b: MSTORE
0000476c: PUSH1 0x24
0000476e: DUP3
0000476f: ADD
00004770: MSTORE
00004771: PUSH32 0x537472696e67733a20686578206c656e67746820696e73756666696369656e74
00004792: PUSH1 0x44
00004794: DUP3
00004795: ADD
00004796: MSTORE
00004797: PUSH1 0x64
00004799: ADD
0000479a: PUSH2 0x107a
0000479d: JUMP
0000479e: JUMPDEST
0000479f: SWAP4
000047a0: SWAP3
000047a1: POP
000047a2: POP
000047a3: POP
000047a4: JUMP
000047a5: JUMPDEST
000047a6: PUSH0
000047a7: PUSH1 0x20
000047a9: DUP3
000047aa: DUP5
000047ab: SUB
000047ac: SLT
000047ad: ISZERO
000047ae: PUSH2 0x47b5
000047b1: JUMPI
000047b2: PUSH0
000047b3: DUP1
000047b4: REVERT
000047b5: JUMPDEST
000047b6: DUP2
000047b7: CALLDATALOAD
000047b8: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
000047d9: DUP2
000047da: AND
000047db: DUP2
000047dc: EQ
000047dd: PUSH2 0x479e
000047e0: JUMPI
000047e1: PUSH0
000047e2: DUP1
000047e3: REVERT
000047e4: JUMPDEST
000047e5: PUSH0
000047e6: PUSH1 0x20
000047e8: DUP3
000047e9: DUP5
000047ea: SUB
000047eb: SLT
000047ec: ISZERO
000047ed: PUSH2 0x47f4
000047f0: JUMPI
000047f1: PUSH0
000047f2: DUP1
000047f3: REVERT
000047f4: JUMPDEST
000047f5: DUP2
000047f6: CALLDATALOAD
000047f7: PUSH1 0x09
000047f9: DUP2
000047fa: LT
000047fb: PUSH2 0x479e
000047fe: JUMPI
000047ff: PUSH0
00004800: DUP1
00004801: REVERT
00004802: JUMPDEST
00004803: PUSH0
00004804: PUSH1 0x20
00004806: DUP3
00004807: DUP5
00004808: SUB
00004809: SLT
0000480a: ISZERO
0000480b: PUSH2 0x4812
0000480e: JUMPI
0000480f: PUSH0
00004810: DUP1
00004811: REVERT
00004812: JUMPDEST
00004813: POP
00004814: CALLDATALOAD
00004815: SWAP2
00004816: SWAP1
00004817: POP
00004818: JUMP
00004819: JUMPDEST
0000481a: PUSH1 0x01
0000481c: PUSH1 0x01
0000481e: PUSH1 0xa0
00004820: SHL
00004821: SUB
00004822: DUP2
00004823: AND
00004824: DUP2
00004825: EQ
00004826: PUSH2 0x1af5
00004829: JUMPI
0000482a: PUSH0
0000482b: DUP1
0000482c: REVERT
0000482d: JUMPDEST
0000482e: PUSH0
0000482f: DUP1
00004830: PUSH1 0x40
00004832: DUP4
00004833: DUP6
00004834: SUB
00004835: SLT
00004836: ISZERO
00004837: PUSH2 0x483e
0000483a: JUMPI
0000483b: PUSH0
0000483c: DUP1
0000483d: REVERT
0000483e: JUMPDEST
0000483f: DUP3
00004840: CALLDATALOAD
00004841: SWAP2
00004842: POP
00004843: PUSH1 0x20
00004845: DUP4
00004846: ADD
00004847: CALLDATALOAD
00004848: PUSH2 0x4850
0000484b: DUP2
0000484c: PUSH2 0x4819
0000484f: JUMP
00004850: JUMPDEST
00004851: DUP1
00004852: SWAP2
00004853: POP
00004854: POP
00004855: SWAP3
00004856: POP
00004857: SWAP3
00004858: SWAP1
00004859: POP
0000485a: JUMP
0000485b: JUMPDEST
0000485c: PUSH1 0x20
0000485e: DUP2
0000485f: MSTORE
00004860: PUSH0
00004861: DUP3
00004862: MLOAD
00004863: DUP1
00004864: PUSH1 0x20
00004866: DUP5
00004867: ADD
00004868: MSTORE
00004869: DUP1
0000486a: PUSH1 0x20
0000486c: DUP6
0000486d: ADD
0000486e: PUSH1 0x40
00004870: DUP6
00004871: ADD
00004872: MCOPY
00004873: PUSH0
00004874: PUSH1 0x40
00004876: DUP3
00004877: DUP6
00004878: ADD
00004879: ADD
0000487a: MSTORE
0000487b: PUSH1 0x40
0000487d: PUSH1 0x1f
0000487f: NOT
00004880: PUSH1 0x1f
00004882: DUP4
00004883: ADD
00004884: AND
00004885: DUP5
00004886: ADD
00004887: ADD
00004888: SWAP2
00004889: POP
0000488a: POP
0000488b: SWAP3
0000488c: SWAP2
0000488d: POP
0000488e: POP
0000488f: JUMP
00004890: JUMPDEST
00004891: PUSH0
00004892: DUP1
00004893: DUP4
00004894: PUSH1 0x1f
00004896: DUP5
00004897: ADD
00004898: SLT
00004899: PUSH2 0x48a0
0000489c: JUMPI
0000489d: PUSH0
0000489e: DUP1
0000489f: REVERT
000048a0: JUMPDEST
000048a1: POP
000048a2: DUP2
000048a3: CALLDATALOAD
000048a4: PUSH8 0xffffffffffffffff
000048ad: DUP2
000048ae: GT
000048af: ISZERO
000048b0: PUSH2 0x48b7
000048b3: JUMPI
000048b4: PUSH0
000048b5: DUP1
000048b6: REVERT
000048b7: JUMPDEST
000048b8: PUSH1 0x20
000048ba: DUP4
000048bb: ADD
000048bc: SWAP2
000048bd: POP
000048be: DUP4
000048bf: PUSH1 0x20
000048c1: DUP3
000048c2: DUP6
000048c3: ADD
000048c4: ADD
000048c5: GT
000048c6: ISZERO
000048c7: PUSH2 0x48ce
000048ca: JUMPI
000048cb: PUSH0
000048cc: DUP1
000048cd: REVERT
000048ce: JUMPDEST
000048cf: SWAP3
000048d0: POP
000048d1: SWAP3
000048d2: SWAP1
000048d3: POP
000048d4: JUMP
000048d5: JUMPDEST
000048d6: PUSH0
000048d7: DUP1
000048d8: PUSH0
000048d9: DUP1
000048da: PUSH0
000048db: DUP1
000048dc: PUSH0
000048dd: DUP1
000048de: PUSH1 0xe0
000048e0: DUP10
000048e1: DUP12
000048e2: SUB
000048e3: SLT
000048e4: ISZERO
000048e5: PUSH2 0x48ec
000048e8: JUMPI
000048e9: PUSH0
000048ea: DUP1
000048eb: REVERT
000048ec: JUMPDEST
000048ed: DUP9
000048ee: CALLDATALOAD
000048ef: PUSH2 0x48f7
000048f2: DUP2
000048f3: PUSH2 0x4819
000048f6: JUMP
000048f7: JUMPDEST
000048f8: SWAP8
000048f9: POP
000048fa: PUSH1 0x20
000048fc: DUP10
000048fd: ADD
000048fe: CALLDATALOAD
000048ff: PUSH2 0x4907
00004902: DUP2
00004903: PUSH2 0x4819
00004906: JUMP
00004907: JUMPDEST
00004908: SWAP7
00004909: POP
0000490a: PUSH1 0x40
0000490c: DUP10
0000490d: ADD
0000490e: CALLDATALOAD
0000490f: SWAP6
00004910: POP
00004911: PUSH1 0x60
00004913: DUP10
00004914: ADD
00004915: CALLDATALOAD
00004916: SWAP5
00004917: POP
00004918: PUSH1 0x80
0000491a: DUP10
0000491b: ADD
0000491c: CALLDATALOAD
0000491d: PUSH2 0x4925
00004920: DUP2
00004921: PUSH2 0x4819
00004924: JUMP
00004925: JUMPDEST
00004926: SWAP4
00004927: POP
00004928: PUSH1 0xa0
0000492a: DUP10
0000492b: ADD
0000492c: CALLDATALOAD
0000492d: PUSH8 0xffffffffffffffff
00004936: DUP2
00004937: GT
00004938: ISZERO
00004939: PUSH2 0x4940
0000493c: JUMPI
0000493d: PUSH0
0000493e: DUP1
0000493f: REVERT
00004940: JUMPDEST
00004941: PUSH2 0x494c
00004944: DUP12
00004945: DUP3
00004946: DUP13
00004947: ADD
00004948: PUSH2 0x4890
0000494b: JUMP
0000494c: JUMPDEST
0000494d: SWAP10
0000494e: SWAP13
0000494f: SWAP9
00004950: SWAP12
00004951: POP
00004952: SWAP7
00004953: SWAP10
00004954: SWAP6
00004955: SWAP9
00004956: SWAP5
00004957: SWAP8
00004958: SWAP5
00004959: SWAP6
0000495a: PUSH1 0xc0
0000495c: ADD
0000495d: CALLDATALOAD
0000495e: SWAP5
0000495f: SWAP4
00004960: POP
00004961: POP
00004962: POP
00004963: POP
00004964: JUMP
00004965: JUMPDEST
00004966: PUSH0
00004967: DUP1
00004968: PUSH0
00004969: DUP1
0000496a: PUSH1 0x60
0000496c: DUP6
0000496d: DUP8
0000496e: SUB
0000496f: SLT
00004970: ISZERO
00004971: PUSH2 0x4978
00004974: JUMPI
00004975: PUSH0
00004976: DUP1
00004977: REVERT
00004978: JUMPDEST
00004979: DUP5
0000497a: CALLDATALOAD
0000497b: PUSH8 0xffffffffffffffff
00004984: DUP2
00004985: GT
00004986: ISZERO
00004987: PUSH2 0x498e
0000498a: JUMPI
0000498b: PUSH0
0000498c: DUP1
0000498d: REVERT
0000498e: JUMPDEST
0000498f: PUSH2 0x499a
00004992: DUP8
00004993: DUP3
00004994: DUP9
00004995: ADD
00004996: PUSH2 0x4890
00004999: JUMP
0000499a: JUMPDEST
0000499b: SWAP1
0000499c: SWAP6
0000499d: POP
0000499e: SWAP4
0000499f: POP
000049a0: POP
000049a1: PUSH1 0x20
000049a3: DUP6
000049a4: ADD
000049a5: CALLDATALOAD
000049a6: SWAP2
000049a7: POP
000049a8: PUSH1 0x40
000049aa: DUP6
000049ab: ADD
000049ac: CALLDATALOAD
000049ad: PUSH8 0xffffffffffffffff
000049b6: DUP2
000049b7: GT
000049b8: ISZERO
000049b9: PUSH2 0x49c0
000049bc: JUMPI
000049bd: PUSH0
000049be: DUP1
000049bf: REVERT
000049c0: JUMPDEST
000049c1: DUP6
000049c2: ADD
000049c3: PUSH2 0x0200
000049c6: DUP2
000049c7: DUP9
000049c8: SUB
000049c9: SLT
000049ca: ISZERO
000049cb: PUSH2 0x49d2
000049ce: JUMPI
000049cf: PUSH0
000049d0: DUP1
000049d1: REVERT
000049d2: JUMPDEST
000049d3: SWAP4
000049d4: SWAP7
000049d5: SWAP3
000049d6: SWAP6
000049d7: POP
000049d8: SWAP1
000049d9: SWAP4
000049da: POP
000049db: POP
000049dc: JUMP
000049dd: JUMPDEST
000049de: PUSH0
000049df: PUSH1 0x20
000049e1: DUP3
000049e2: DUP5
000049e3: SUB
000049e4: SLT
000049e5: ISZERO
000049e6: PUSH2 0x49ed
000049e9: JUMPI
000049ea: PUSH0
000049eb: DUP1
000049ec: REVERT
000049ed: JUMPDEST
000049ee: DUP2
000049ef: CALLDATALOAD
000049f0: PUSH8 0xffffffffffffffff
000049f9: DUP2
000049fa: GT
000049fb: ISZERO
000049fc: PUSH2 0x4a03
000049ff: JUMPI
00004a00: PUSH0
00004a01: DUP1
00004a02: REVERT
00004a03: JUMPDEST
00004a04: DUP3
00004a05: ADD
00004a06: PUSH2 0x0140
00004a09: DUP2
00004a0a: DUP6
00004a0b: SUB
00004a0c: SLT
00004a0d: ISZERO
00004a0e: PUSH2 0x479e
00004a11: JUMPI
00004a12: PUSH0
00004a13: DUP1
00004a14: REVERT
00004a15: JUMPDEST
00004a16: PUSH0
00004a17: DUP1
00004a18: PUSH0
00004a19: PUSH1 0x60
00004a1b: DUP5
00004a1c: DUP7
00004a1d: SUB
00004a1e: SLT
00004a1f: ISZERO
00004a20: PUSH2 0x4a27
00004a23: JUMPI
00004a24: PUSH0
00004a25: DUP1
00004a26: REVERT
00004a27: JUMPDEST
00004a28: DUP4
00004a29: CALLDATALOAD
00004a2a: PUSH8 0xffffffffffffffff
00004a33: DUP2
00004a34: GT
00004a35: ISZERO
00004a36: PUSH2 0x4a3d
00004a39: JUMPI
00004a3a: PUSH0
00004a3b: DUP1
00004a3c: REVERT
00004a3d: JUMPDEST
00004a3e: DUP5
00004a3f: ADD
00004a40: PUSH1 0x60
00004a42: DUP2
00004a43: DUP8
00004a44: SUB
00004a45: SLT
00004a46: ISZERO
00004a47: PUSH2 0x4a4e
00004a4a: JUMPI
00004a4b: PUSH0
00004a4c: DUP1
00004a4d: REVERT
00004a4e: JUMPDEST
00004a4f: SWAP6
00004a50: PUSH1 0x20
00004a52: DUP6
00004a53: ADD
00004a54: CALLDATALOAD
00004a55: SWAP6
00004a56: POP
00004a57: PUSH1 0x40
00004a59: SWAP1
00004a5a: SWAP5
00004a5b: ADD
00004a5c: CALLDATALOAD
00004a5d: SWAP4
00004a5e: SWAP3
00004a5f: POP
00004a60: POP
00004a61: POP
00004a62: JUMP
00004a63: JUMPDEST
00004a64: PUSH0
00004a65: DUP1
00004a66: PUSH0
00004a67: DUP1
00004a68: PUSH1 0x60
00004a6a: DUP6
00004a6b: DUP8
00004a6c: SUB
00004a6d: SLT
00004a6e: ISZERO
00004a6f: PUSH2 0x4a76
00004a72: JUMPI
00004a73: PUSH0
00004a74: DUP1
00004a75: REVERT
00004a76: JUMPDEST
00004a77: DUP5
00004a78: CALLDATALOAD
00004a79: PUSH8 0xffffffffffffffff
00004a82: DUP2
00004a83: GT
00004a84: ISZERO
00004a85: PUSH2 0x4a8c
00004a88: JUMPI
00004a89: PUSH0
00004a8a: DUP1
00004a8b: REVERT
00004a8c: JUMPDEST
00004a8d: DUP6
00004a8e: ADD
00004a8f: PUSH1 0x1f
00004a91: DUP2
00004a92: ADD
00004a93: DUP8
00004a94: SGT
00004a95: PUSH2 0x4a9c
00004a98: JUMPI
00004a99: PUSH0
00004a9a: DUP1
00004a9b: REVERT
00004a9c: JUMPDEST
00004a9d: DUP1
00004a9e: CALLDATALOAD
00004a9f: PUSH8 0xffffffffffffffff
00004aa8: DUP2
00004aa9: GT
00004aaa: ISZERO
00004aab: PUSH2 0x4ab2
00004aae: JUMPI
00004aaf: PUSH0
00004ab0: DUP1
00004ab1: REVERT
00004ab2: JUMPDEST
00004ab3: DUP8
00004ab4: PUSH1 0x20
00004ab6: DUP3
00004ab7: PUSH1 0x05
00004ab9: SHL
00004aba: DUP5
00004abb: ADD
00004abc: ADD
00004abd: GT
00004abe: ISZERO
00004abf: PUSH2 0x4ac6
00004ac2: JUMPI
00004ac3: PUSH0
00004ac4: DUP1
00004ac5: REVERT
00004ac6: JUMPDEST
00004ac7: PUSH1 0x20
00004ac9: SWAP2
00004aca: DUP3
00004acb: ADD
00004acc: SWAP9
00004acd: SWAP1
00004ace: SWAP8
00004acf: POP
00004ad0: SWAP1
00004ad1: DUP7
00004ad2: ADD
00004ad3: CALLDATALOAD
00004ad4: SWAP6
00004ad5: PUSH1 0x40
00004ad7: ADD
00004ad8: CALLDATALOAD
00004ad9: SWAP5
00004ada: POP
00004adb: SWAP3
00004adc: POP
00004add: POP
00004ade: POP
00004adf: JUMP
00004ae0: JUMPDEST
00004ae1: PUSH0
00004ae2: DUP1
00004ae3: PUSH0
00004ae4: DUP1
00004ae5: PUSH1 0x60
00004ae7: DUP6
00004ae8: DUP8
00004ae9: SUB
00004aea: SLT
00004aeb: ISZERO
00004aec: PUSH2 0x4af3
00004aef: JUMPI
00004af0: PUSH0
00004af1: DUP1
00004af2: REVERT
00004af3: JUMPDEST
00004af4: DUP5
00004af5: CALLDATALOAD
00004af6: PUSH2 0x4afe
00004af9: DUP2
00004afa: PUSH2 0x4819
00004afd: JUMP
00004afe: JUMPDEST
00004aff: SWAP4
00004b00: POP
00004b01: PUSH1 0x20
00004b03: DUP6
00004b04: ADD
00004b05: CALLDATALOAD
00004b06: SWAP3
00004b07: POP
00004b08: PUSH1 0x40
00004b0a: DUP6
00004b0b: ADD
00004b0c: CALLDATALOAD
00004b0d: PUSH8 0xffffffffffffffff
00004b16: DUP2
00004b17: GT
00004b18: ISZERO
00004b19: PUSH2 0x4b20
00004b1c: JUMPI
00004b1d: PUSH0
00004b1e: DUP1
00004b1f: REVERT
00004b20: JUMPDEST
00004b21: PUSH2 0x4b2c
00004b24: DUP8
00004b25: DUP3
00004b26: DUP9
00004b27: ADD
00004b28: PUSH2 0x4890
00004b2b: JUMP
00004b2c: JUMPDEST
00004b2d: SWAP6
00004b2e: SWAP9
00004b2f: SWAP5
00004b30: SWAP8
00004b31: POP
00004b32: SWAP6
00004b33: POP
00004b34: POP
00004b35: POP
00004b36: POP
00004b37: JUMP
00004b38: JUMPDEST
00004b39: PUSH0
00004b3a: PUSH1 0x20
00004b3c: DUP3
00004b3d: DUP5
00004b3e: SUB
00004b3f: SLT
00004b40: ISZERO
00004b41: PUSH2 0x4b48
00004b44: JUMPI
00004b45: PUSH0
00004b46: DUP1
00004b47: REVERT
00004b48: JUMPDEST
00004b49: DUP2
00004b4a: CALLDATALOAD
00004b4b: PUSH8 0xffffffffffffffff
00004b54: DUP2
00004b55: GT
00004b56: ISZERO
00004b57: PUSH2 0x4b5e
00004b5a: JUMPI
00004b5b: PUSH0
00004b5c: DUP1
00004b5d: REVERT
00004b5e: JUMPDEST
00004b5f: DUP3
00004b60: ADD
00004b61: PUSH2 0x0160
00004b64: DUP2
00004b65: DUP6
00004b66: SUB
00004b67: SLT
00004b68: ISZERO
00004b69: PUSH2 0x479e
00004b6c: JUMPI
00004b6d: PUSH0
00004b6e: DUP1
00004b6f: REVERT
00004b70: JUMPDEST
00004b71: PUSH0
00004b72: DUP1
00004b73: PUSH0
00004b74: PUSH1 0x60
00004b76: DUP5
00004b77: DUP7
00004b78: SUB
00004b79: SLT
00004b7a: ISZERO
00004b7b: PUSH2 0x4b82
00004b7e: JUMPI
00004b7f: PUSH0
00004b80: DUP1
00004b81: REVERT
00004b82: JUMPDEST
00004b83: POP
00004b84: POP
00004b85: DUP2
00004b86: CALLDATALOAD
00004b87: SWAP4
00004b88: PUSH1 0x20
00004b8a: DUP4
00004b8b: ADD
00004b8c: CALLDATALOAD
00004b8d: SWAP4
00004b8e: POP
00004b8f: PUSH1 0x40
00004b91: SWAP1
00004b92: SWAP3
00004b93: ADD
00004b94: CALLDATALOAD
00004b95: SWAP2
00004b96: SWAP1
00004b97: POP
00004b98: JUMP
00004b99: JUMPDEST
00004b9a: PUSH0
00004b9b: DUP1
00004b9c: DUP4
00004b9d: PUSH1 0x1f
00004b9f: DUP5
00004ba0: ADD
00004ba1: SLT
00004ba2: PUSH2 0x4ba9
00004ba5: JUMPI
00004ba6: PUSH0
00004ba7: DUP1
00004ba8: REVERT
00004ba9: JUMPDEST
00004baa: POP
00004bab: DUP2
00004bac: CALLDATALOAD
00004bad: PUSH8 0xffffffffffffffff
00004bb6: DUP2
00004bb7: GT
00004bb8: ISZERO
00004bb9: PUSH2 0x4bc0
00004bbc: JUMPI
00004bbd: PUSH0
00004bbe: DUP1
00004bbf: REVERT
00004bc0: JUMPDEST
00004bc1: PUSH1 0x20
00004bc3: DUP4
00004bc4: ADD
00004bc5: SWAP2
00004bc6: POP
00004bc7: DUP4
00004bc8: PUSH1 0x20
00004bca: DUP3
00004bcb: PUSH1 0x06
00004bcd: SHL
00004bce: DUP6
00004bcf: ADD
00004bd0: ADD
00004bd1: GT
00004bd2: ISZERO
00004bd3: PUSH2 0x48ce
00004bd6: JUMPI
00004bd7: PUSH0
00004bd8: DUP1
00004bd9: REVERT
00004bda: JUMPDEST
00004bdb: PUSH0
00004bdc: DUP1
00004bdd: PUSH0
00004bde: DUP1
00004bdf: PUSH0
00004be0: DUP1
00004be1: PUSH0
00004be2: PUSH1 0x80
00004be4: DUP9
00004be5: DUP11
00004be6: SUB
00004be7: SLT
00004be8: ISZERO
00004be9: PUSH2 0x4bf0
00004bec: JUMPI
00004bed: PUSH0
00004bee: DUP1
00004bef: REVERT
00004bf0: JUMPDEST
00004bf1: DUP8
00004bf2: CALLDATALOAD
00004bf3: PUSH8 0xffffffffffffffff
00004bfc: DUP2
00004bfd: GT
00004bfe: ISZERO
00004bff: PUSH2 0x4c06
00004c02: JUMPI
00004c03: PUSH0
00004c04: DUP1
00004c05: REVERT
00004c06: JUMPDEST
00004c07: PUSH2 0x4c12
00004c0a: DUP11
00004c0b: DUP3
00004c0c: DUP12
00004c0d: ADD
00004c0e: PUSH2 0x4b99
00004c11: JUMP
00004c12: JUMPDEST
00004c13: SWAP1
00004c14: SWAP9
00004c15: POP
00004c16: SWAP7
00004c17: POP
00004c18: POP
00004c19: PUSH1 0x20
00004c1b: DUP9
00004c1c: ADD
00004c1d: CALLDATALOAD
00004c1e: PUSH8 0xffffffffffffffff
00004c27: DUP2
00004c28: GT
00004c29: ISZERO
00004c2a: PUSH2 0x4c31
00004c2d: JUMPI
00004c2e: PUSH0
00004c2f: DUP1
00004c30: REVERT
00004c31: JUMPDEST
00004c32: PUSH2 0x4c3d
00004c35: DUP11
00004c36: DUP3
00004c37: DUP12
00004c38: ADD
00004c39: PUSH2 0x4b99
00004c3c: JUMP
00004c3d: JUMPDEST
00004c3e: SWAP1
00004c3f: SWAP7
00004c40: POP
00004c41: SWAP5
00004c42: POP
00004c43: POP
00004c44: PUSH1 0x40
00004c46: DUP9
00004c47: ADD
00004c48: CALLDATALOAD
00004c49: PUSH8 0xffffffffffffffff
00004c52: DUP2
00004c53: GT
00004c54: ISZERO
00004c55: PUSH2 0x4c5c
00004c58: JUMPI
00004c59: PUSH0
00004c5a: DUP1
00004c5b: REVERT
00004c5c: JUMPDEST
00004c5d: PUSH2 0x4c68
00004c60: DUP11
00004c61: DUP3
00004c62: DUP12
00004c63: ADD
00004c64: PUSH2 0x4b99
00004c67: JUMP
00004c68: JUMPDEST
00004c69: SWAP1
00004c6a: SWAP5
00004c6b: POP
00004c6c: SWAP3
00004c6d: POP
00004c6e: POP
00004c6f: PUSH1 0x60
00004c71: DUP9
00004c72: ADD
00004c73: CALLDATALOAD
00004c74: PUSH2 0x4c7c
00004c77: DUP2
00004c78: PUSH2 0x4819
00004c7b: JUMP
00004c7c: JUMPDEST
00004c7d: DUP1
00004c7e: SWAP2
00004c7f: POP
00004c80: POP
00004c81: SWAP3
00004c82: SWAP6
00004c83: SWAP9
00004c84: SWAP2
00004c85: SWAP5
00004c86: SWAP8
00004c87: POP
00004c88: SWAP3
00004c89: SWAP6
00004c8a: POP
00004c8b: JUMP
00004c8c: JUMPDEST
00004c8d: PUSH0
00004c8e: DUP1
00004c8f: PUSH1 0x40
00004c91: DUP4
00004c92: DUP6
00004c93: SUB
00004c94: SLT
00004c95: ISZERO
00004c96: PUSH2 0x4c9d
00004c99: JUMPI
00004c9a: PUSH0
00004c9b: DUP1
00004c9c: REVERT
00004c9d: JUMPDEST
00004c9e: DUP3
00004c9f: CALLDATALOAD
00004ca0: PUSH2 0x4ca8
00004ca3: DUP2
00004ca4: PUSH2 0x4819
00004ca7: JUMP
00004ca8: JUMPDEST
00004ca9: SWAP5
00004caa: PUSH1 0x20
00004cac: SWAP4
00004cad: SWAP1
00004cae: SWAP4
00004caf: ADD
00004cb0: CALLDATALOAD
00004cb1: SWAP4
00004cb2: POP
00004cb3: POP
00004cb4: POP
00004cb5: JUMP
00004cb6: JUMPDEST
00004cb7: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004cd8: PUSH0
00004cd9: MSTORE
00004cda: PUSH1 0x21
00004cdc: PUSH1 0x04
00004cde: MSTORE
00004cdf: PUSH1 0x24
00004ce1: PUSH0
00004ce2: REVERT
00004ce3: JUMPDEST
00004ce4: PUSH1 0x20
00004ce6: DUP2
00004ce7: ADD
00004ce8: PUSH1 0x09
00004cea: DUP4
00004ceb: LT
00004cec: PUSH2 0x4d1c
00004cef: JUMPI
00004cf0: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004d11: PUSH0
00004d12: MSTORE
00004d13: PUSH1 0x21
00004d15: PUSH1 0x04
00004d17: MSTORE
00004d18: PUSH1 0x24
00004d1a: PUSH0
00004d1b: REVERT
00004d1c: JUMPDEST
00004d1d: SWAP2
00004d1e: SWAP1
00004d1f: MSTORE
00004d20: SWAP1
00004d21: JUMP
00004d22: JUMPDEST
00004d23: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004d44: PUSH0
00004d45: MSTORE
00004d46: PUSH1 0x11
00004d48: PUSH1 0x04
00004d4a: MSTORE
00004d4b: PUSH1 0x24
00004d4d: PUSH0
00004d4e: REVERT
00004d4f: JUMPDEST
00004d50: DUP2
00004d51: DUP2
00004d52: SUB
00004d53: DUP2
00004d54: DUP2
00004d55: GT
00004d56: ISZERO
00004d57: PUSH2 0x0ff6
00004d5a: JUMPI
00004d5b: PUSH2 0x0ff6
00004d5e: PUSH2 0x4d22
00004d61: JUMP
00004d62: JUMPDEST
00004d63: DUP1
00004d64: DUP3
00004d65: ADD
00004d66: DUP1
00004d67: DUP3
00004d68: GT
00004d69: ISZERO
00004d6a: PUSH2 0x0ff6
00004d6d: JUMPI
00004d6e: PUSH2 0x0ff6
00004d71: PUSH2 0x4d22
00004d74: JUMP
00004d75: JUMPDEST
00004d76: DUP2
00004d77: DUP4
00004d78: DUP3
00004d79: CALLDATACOPY
00004d7a: PUSH0
00004d7b: SWAP2
00004d7c: ADD
00004d7d: SWAP1
00004d7e: DUP2
00004d7f: MSTORE
00004d80: SWAP2
00004d81: SWAP1
00004d82: POP
00004d83: JUMP
00004d84: JUMPDEST
00004d85: DUP1
00004d86: DUP3
00004d87: MUL
00004d88: DUP2
00004d89: ISZERO
00004d8a: DUP3
00004d8b: DUP3
00004d8c: DIV
00004d8d: DUP5
00004d8e: EQ
00004d8f: OR
00004d90: PUSH2 0x0ff6
00004d93: JUMPI
00004d94: PUSH2 0x0ff6
00004d97: PUSH2 0x4d22
00004d9a: JUMP
00004d9b: JUMPDEST
00004d9c: PUSH0
00004d9d: PUSH1 0x20
00004d9f: DUP3
00004da0: DUP5
00004da1: SUB
00004da2: SLT
00004da3: ISZERO
00004da4: PUSH2 0x4dab
00004da7: JUMPI
00004da8: PUSH0
00004da9: DUP1
00004daa: REVERT
00004dab: JUMPDEST
00004dac: DUP2
00004dad: CALLDATALOAD
00004dae: PUSH2 0x479e
00004db1: DUP2
00004db2: PUSH2 0x4819
00004db5: JUMP
00004db6: JUMPDEST
00004db7: PUSH0
00004db8: DUP1
00004db9: DUP4
00004dba: CALLDATALOAD
00004dbb: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1
00004ddc: DUP5
00004ddd: CALLDATASIZE
00004dde: SUB
00004ddf: ADD
00004de0: DUP2
00004de1: SLT
00004de2: PUSH2 0x4de9
00004de5: JUMPI
00004de6: PUSH0
00004de7: DUP1
00004de8: REVERT
00004de9: JUMPDEST
00004dea: DUP4
00004deb: ADD
00004dec: DUP1
00004ded: CALLDATALOAD
00004dee: SWAP2
00004def: POP
00004df0: PUSH8 0xffffffffffffffff
00004df9: DUP3
00004dfa: GT
00004dfb: ISZERO
00004dfc: PUSH2 0x4e03
00004dff: JUMPI
00004e00: PUSH0
00004e01: DUP1
00004e02: REVERT
00004e03: JUMPDEST
00004e04: PUSH1 0x20
00004e06: ADD
00004e07: SWAP2
00004e08: POP
00004e09: CALLDATASIZE
00004e0a: DUP2
00004e0b: SWAP1
00004e0c: SUB
00004e0d: DUP3
00004e0e: SGT
00004e0f: ISZERO
00004e10: PUSH2 0x48ce
00004e13: JUMPI
00004e14: PUSH0
00004e15: DUP1
00004e16: REVERT
00004e17: JUMPDEST
00004e18: PUSH0
00004e19: DUP1
00004e1a: DUP4
00004e1b: CALLDATALOAD
00004e1c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1
00004e3d: DUP5
00004e3e: CALLDATASIZE
00004e3f: SUB
00004e40: ADD
00004e41: DUP2
00004e42: SLT
00004e43: PUSH2 0x4e4a
00004e46: JUMPI
00004e47: PUSH0
00004e48: DUP1
00004e49: REVERT
00004e4a: JUMPDEST
00004e4b: DUP4
00004e4c: ADD
00004e4d: DUP1
00004e4e: CALLDATALOAD
00004e4f: SWAP2
00004e50: POP
00004e51: PUSH8 0xffffffffffffffff
00004e5a: DUP3
00004e5b: GT
00004e5c: ISZERO
00004e5d: PUSH2 0x4e64
00004e60: JUMPI
00004e61: PUSH0
00004e62: DUP1
00004e63: REVERT
00004e64: JUMPDEST
00004e65: PUSH1 0x20
00004e67: ADD
00004e68: SWAP2
00004e69: POP
00004e6a: PUSH1 0x05
00004e6c: DUP2
00004e6d: SWAP1
00004e6e: SHL
00004e6f: CALLDATASIZE
00004e70: SUB
00004e71: DUP3
00004e72: SGT
00004e73: ISZERO
00004e74: PUSH2 0x48ce
00004e77: JUMPI
00004e78: PUSH0
00004e79: DUP1
00004e7a: REVERT
00004e7b: JUMPDEST
00004e7c: PUSH0
00004e7d: PUSH1 0x20
00004e7f: DUP3
00004e80: DUP5
00004e81: SUB
00004e82: SLT
00004e83: ISZERO
00004e84: PUSH2 0x4e8b
00004e87: JUMPI
00004e88: PUSH0
00004e89: DUP1
00004e8a: REVERT
00004e8b: JUMPDEST
00004e8c: DUP2
00004e8d: CALLDATALOAD
00004e8e: PUSH4 0xffffffff
00004e93: DUP2
00004e94: AND
00004e95: DUP2
00004e96: EQ
00004e97: PUSH2 0x479e
00004e9a: JUMPI
00004e9b: PUSH0
00004e9c: DUP1
00004e9d: REVERT
00004e9e: JUMPDEST
00004e9f: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004ec0: PUSH0
00004ec1: MSTORE
00004ec2: PUSH1 0x32
00004ec4: PUSH1 0x04
00004ec6: MSTORE
00004ec7: PUSH1 0x24
00004ec9: PUSH0
00004eca: REVERT
00004ecb: JUMPDEST
00004ecc: PUSH0
00004ecd: DUP3
00004ece: CALLDATALOAD
00004ecf: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
00004ef0: DUP4
00004ef1: CALLDATASIZE
00004ef2: SUB
00004ef3: ADD
00004ef4: DUP2
00004ef5: SLT
00004ef6: PUSH2 0x4efd
00004ef9: JUMPI
00004efa: PUSH0
00004efb: DUP1
00004efc: REVERT
00004efd: JUMPDEST
00004efe: SWAP2
00004eff: SWAP1
00004f00: SWAP2
00004f01: ADD
00004f02: SWAP3
00004f03: SWAP2
00004f04: POP
00004f05: POP
00004f06: JUMP
00004f07: JUMPDEST
00004f08: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004f29: PUSH0
00004f2a: MSTORE
00004f2b: PUSH1 0x41
00004f2d: PUSH1 0x04
00004f2f: MSTORE
00004f30: PUSH1 0x24
00004f32: PUSH0
00004f33: REVERT
00004f34: JUMPDEST
00004f35: PUSH1 0x40
00004f37: MLOAD
00004f38: PUSH1 0xa0
00004f3a: DUP2
00004f3b: ADD
00004f3c: PUSH8 0xffffffffffffffff
00004f45: DUP2
00004f46: GT
00004f47: DUP3
00004f48: DUP3
00004f49: LT
00004f4a: OR
00004f4b: ISZERO
00004f4c: PUSH2 0x4f57
00004f4f: JUMPI
00004f50: PUSH2 0x4f57
00004f53: PUSH2 0x4f07
00004f56: JUMP
00004f57: JUMPDEST
00004f58: PUSH1 0x40
00004f5a: MSTORE
00004f5b: SWAP1
00004f5c: JUMP
00004f5d: JUMPDEST
00004f5e: PUSH0
00004f5f: DUP3
00004f60: PUSH1 0x1f
00004f62: DUP4
00004f63: ADD
00004f64: SLT
00004f65: PUSH2 0x4f6c
00004f68: JUMPI
00004f69: PUSH0
00004f6a: DUP1
00004f6b: REVERT
00004f6c: JUMPDEST
00004f6d: DUP2
00004f6e: CALLDATALOAD
00004f6f: PUSH8 0xffffffffffffffff
00004f78: DUP2
00004f79: GT
00004f7a: ISZERO
00004f7b: PUSH2 0x4f86
00004f7e: JUMPI
00004f7f: PUSH2 0x4f86
00004f82: PUSH2 0x4f07
00004f85: JUMP
00004f86: JUMPDEST
00004f87: PUSH1 0x40
00004f89: MLOAD
00004f8a: PUSH1 0x1f
00004f8c: DUP3
00004f8d: ADD
00004f8e: PUSH1 0x1f
00004f90: NOT
00004f91: SWAP1
00004f92: DUP2
00004f93: AND
00004f94: PUSH1 0x3f
00004f96: ADD
00004f97: AND
00004f98: DUP2
00004f99: ADD
00004f9a: PUSH8 0xffffffffffffffff
00004fa3: DUP2
00004fa4: GT
00004fa5: DUP3
00004fa6: DUP3
00004fa7: LT
00004fa8: OR
00004fa9: ISZERO
00004faa: PUSH2 0x4fb5
00004fad: JUMPI
00004fae: PUSH2 0x4fb5
00004fb1: PUSH2 0x4f07
00004fb4: JUMP
00004fb5: JUMPDEST
00004fb6: PUSH1 0x40
00004fb8: MSTORE
00004fb9: DUP2
00004fba: DUP2
00004fbb: MSTORE
00004fbc: DUP4
00004fbd: DUP3
00004fbe: ADD
00004fbf: PUSH1 0x20
00004fc1: ADD
00004fc2: DUP6
00004fc3: LT
00004fc4: ISZERO
00004fc5: PUSH2 0x4fcc
00004fc8: JUMPI
00004fc9: PUSH0
00004fca: DUP1
00004fcb: REVERT
00004fcc: JUMPDEST
00004fcd: DUP2
00004fce: PUSH1 0x20
00004fd0: DUP6
00004fd1: ADD
00004fd2: PUSH1 0x20
00004fd4: DUP4
00004fd5: ADD
00004fd6: CALLDATACOPY
00004fd7: PUSH0
00004fd8: SWAP2
00004fd9: DUP2
00004fda: ADD
00004fdb: PUSH1 0x20
00004fdd: ADD
00004fde: SWAP2
00004fdf: SWAP1
00004fe0: SWAP2
00004fe1: MSTORE
00004fe2: SWAP4
00004fe3: SWAP3
00004fe4: POP
00004fe5: POP
00004fe6: POP
00004fe7: JUMP
00004fe8: JUMPDEST
00004fe9: PUSH0
00004fea: PUSH1 0xa0
00004fec: DUP3
00004fed: CALLDATASIZE
00004fee: SUB
00004fef: SLT
00004ff0: ISZERO
00004ff1: PUSH2 0x4ff8
00004ff4: JUMPI
00004ff5: PUSH0
00004ff6: DUP1
00004ff7: REVERT
00004ff8: JUMPDEST
00004ff9: PUSH2 0x5000
00004ffc: PUSH2 0x4f34
00004fff: JUMP
00005000: JUMPDEST
00005001: DUP3
00005002: CALLDATALOAD
00005003: DUP2
00005004: MSTORE
00005005: PUSH1 0x20
00005007: DUP4
00005008: ADD
00005009: CALLDATALOAD
0000500a: PUSH8 0xffffffffffffffff
00005013: DUP2
00005014: GT
00005015: ISZERO
00005016: PUSH2 0x501d
00005019: JUMPI
0000501a: PUSH0
0000501b: DUP1
0000501c: REVERT
0000501d: JUMPDEST
0000501e: PUSH2 0x5029
00005021: CALLDATASIZE
00005022: DUP3
00005023: DUP7
00005024: ADD
00005025: PUSH2 0x4f5d
00005028: JUMP
00005029: JUMPDEST
0000502a: PUSH1 0x20
0000502c: DUP4
0000502d: ADD
0000502e: MSTORE
0000502f: POP
00005030: PUSH1 0x40
00005032: DUP4
00005033: ADD
00005034: CALLDATALOAD
00005035: PUSH8 0xffffffffffffffff
0000503e: DUP2
0000503f: GT
00005040: ISZERO
00005041: PUSH2 0x5048
00005044: JUMPI
00005045: PUSH0
00005046: DUP1
00005047: REVERT
00005048: JUMPDEST
00005049: PUSH2 0x5054
0000504c: CALLDATASIZE
0000504d: DUP3
0000504e: DUP7
0000504f: ADD
00005050: PUSH2 0x4f5d
00005053: JUMP
00005054: JUMPDEST
00005055: PUSH1 0x40
00005057: DUP4
00005058: ADD
00005059: MSTORE
0000505a: POP
0000505b: PUSH1 0x60
0000505d: DUP4
0000505e: DUP2
0000505f: ADD
00005060: CALLDATALOAD
00005061: SWAP1
00005062: DUP3
00005063: ADD
00005064: MSTORE
00005065: PUSH1 0x80
00005067: SWAP3
00005068: DUP4
00005069: ADD
0000506a: CALLDATALOAD
0000506b: SWAP3
0000506c: DUP2
0000506d: ADD
0000506e: SWAP3
0000506f: SWAP1
00005070: SWAP3
00005071: MSTORE
00005072: POP
00005073: SWAP1
00005074: JUMP
00005075: JUMPDEST
00005076: PUSH0
00005077: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00005098: DUP3
00005099: SUB
0000509a: PUSH2 0x50a5
0000509d: JUMPI
0000509e: PUSH2 0x50a5
000050a1: PUSH2 0x4d22
000050a4: JUMP
000050a5: JUMPDEST
000050a6: POP
000050a7: PUSH1 0x01
000050a9: ADD
000050aa: SWAP1
000050ab: JUMP
000050ac: JUMPDEST
000050ad: DUP2
000050ae: DUP4
000050af: MSTORE
000050b0: DUP2
000050b1: DUP2
000050b2: PUSH1 0x20
000050b4: DUP6
000050b5: ADD
000050b6: CALLDATACOPY
000050b7: POP
000050b8: PUSH0
000050b9: PUSH1 0x20
000050bb: DUP3
000050bc: DUP5
000050bd: ADD
000050be: ADD
000050bf: MSTORE
000050c0: PUSH0
000050c1: PUSH1 0x20
000050c3: PUSH1 0x1f
000050c5: NOT
000050c6: PUSH1 0x1f
000050c8: DUP5
000050c9: ADD
000050ca: AND
000050cb: DUP5
000050cc: ADD
000050cd: ADD
000050ce: SWAP1
000050cf: POP
000050d0: SWAP3
000050d1: SWAP2
000050d2: POP
000050d3: POP
000050d4: JUMP
000050d5: JUMPDEST
000050d6: DUP6
000050d7: DUP2
000050d8: MSTORE
000050d9: DUP5
000050da: PUSH1 0x20
000050dc: DUP3
000050dd: ADD
000050de: MSTORE
000050df: DUP4
000050e0: PUSH1 0x40
000050e2: DUP3
000050e3: ADD
000050e4: MSTORE
000050e5: PUSH1 0x80
000050e7: PUSH1 0x60
000050e9: DUP3
000050ea: ADD
000050eb: MSTORE
000050ec: PUSH0
000050ed: PUSH2 0x50fa
000050f0: PUSH1 0x80
000050f2: DUP4
000050f3: ADD
000050f4: DUP5
000050f5: DUP7
000050f6: PUSH2 0x50ac
000050f9: JUMP
000050fa: JUMPDEST
000050fb: SWAP8
000050fc: SWAP7
000050fd: POP
000050fe: POP
000050ff: POP
00005100: POP
00005101: POP
00005102: POP
00005103: POP
00005104: JUMP
00005105: JUMPDEST
00005106: PUSH0
00005107: DUP1
00005108: DUP4
00005109: CALLDATALOAD
0000510a: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1
0000512b: DUP5
0000512c: CALLDATASIZE
0000512d: SUB
0000512e: ADD
0000512f: DUP2
00005130: SLT
00005131: PUSH2 0x5138
00005134: JUMPI
00005135: PUSH0
00005136: DUP1
00005137: REVERT
00005138: JUMPDEST
00005139: DUP4
0000513a: ADD
0000513b: DUP1
0000513c: CALLDATALOAD
0000513d: SWAP2
0000513e: POP
0000513f: PUSH8 0xffffffffffffffff
00005148: DUP3
00005149: GT
0000514a: ISZERO
0000514b: PUSH2 0x5152
0000514e: JUMPI
0000514f: PUSH0
00005150: DUP1
00005151: REVERT
00005152: JUMPDEST
00005153: PUSH1 0x20
00005155: ADD
00005156: SWAP2
00005157: POP
00005158: PUSH1 0x06
0000515a: DUP2
0000515b: SWAP1
0000515c: SHL
0000515d: CALLDATASIZE
0000515e: SUB
0000515f: DUP3
00005160: SGT
00005161: ISZERO
00005162: PUSH2 0x48ce
00005165: JUMPI
00005166: PUSH0
00005167: DUP1
00005168: REVERT
00005169: JUMPDEST
0000516a: PUSH1 0x40
0000516c: DUP2
0000516d: MSTORE
0000516e: PUSH0
0000516f: PUSH2 0x517c
00005172: PUSH1 0x40
00005174: DUP4
00005175: ADD
00005176: DUP6
00005177: DUP8
00005178: PUSH2 0x50ac
0000517b: JUMP
0000517c: JUMPDEST
0000517d: DUP3
0000517e: DUP2
0000517f: SUB
00005180: PUSH1 0x20
00005182: DUP5
00005183: ADD
00005184: MSTORE
00005185: DUP1
00005186: DUP5
00005187: MLOAD
00005188: DUP1
00005189: DUP4
0000518a: MSTORE
0000518b: PUSH1 0x20
0000518d: DUP4
0000518e: ADD
0000518f: SWAP2
00005190: POP
00005191: PUSH1 0x20
00005193: DUP7
00005194: ADD
00005195: SWAP3
00005196: POP
00005197: PUSH0
00005198: JUMPDEST
00005199: DUP2
0000519a: DUP2
0000519b: LT
0000519c: ISZERO
0000519d: PUSH2 0x51b6
000051a0: JUMPI
000051a1: DUP4
000051a2: MLOAD
000051a3: DUP4
000051a4: MSTORE
000051a5: PUSH1 0x20
000051a7: SWAP4
000051a8: DUP5
000051a9: ADD
000051aa: SWAP4
000051ab: SWAP1
000051ac: SWAP3
000051ad: ADD
000051ae: SWAP2
000051af: PUSH1 0x01
000051b1: ADD
000051b2: PUSH2 0x5198
000051b5: JUMP
000051b6: JUMPDEST
000051b7: POP
000051b8: SWAP1
000051b9: SWAP8
000051ba: SWAP7
000051bb: POP
000051bc: POP
000051bd: POP
000051be: POP
000051bf: POP
000051c0: POP
000051c1: POP
000051c2: JUMP
000051c3: JUMPDEST
000051c4: PUSH0
000051c5: DUP2
000051c6: MLOAD
000051c7: DUP1
000051c8: PUSH1 0x20
000051ca: DUP5
000051cb: ADD
000051cc: DUP6
000051cd: MCOPY
000051ce: PUSH0
000051cf: SWAP4
000051d0: ADD
000051d1: SWAP3
000051d2: DUP4
000051d3: MSTORE
000051d4: POP
000051d5: SWAP1
000051d6: SWAP2
000051d7: SWAP1
000051d8: POP
000051d9: JUMP
000051da: JUMPDEST
000051db: PUSH0
000051dc: PUSH2 0x479e
000051df: DUP3
000051e0: DUP5
000051e1: PUSH2 0x51c3
000051e4: JUMP
000051e5: JUMPDEST
000051e6: PUSH0
000051e7: PUSH1 0x20
000051e9: DUP3
000051ea: DUP5
000051eb: SUB
000051ec: SLT
000051ed: ISZERO
000051ee: PUSH2 0x51f5
000051f1: JUMPI
000051f2: PUSH0
000051f3: DUP1
000051f4: REVERT
000051f5: JUMPDEST
000051f6: DUP2
000051f7: MLOAD
000051f8: DUP1
000051f9: ISZERO
000051fa: ISZERO
000051fb: DUP2
000051fc: EQ
000051fd: PUSH2 0x479e
00005200: JUMPI
00005201: PUSH0
00005202: DUP1
00005203: REVERT
00005204: JUMPDEST
00005205: PUSH1 0x01
00005207: DUP2
00005208: JUMPDEST
00005209: PUSH1 0x01
0000520b: DUP5
0000520c: GT
0000520d: ISZERO
0000520e: PUSH2 0x523f
00005211: JUMPI
00005212: DUP1
00005213: DUP6
00005214: DIV
00005215: DUP2
00005216: GT
00005217: ISZERO
00005218: PUSH2 0x5223
0000521b: JUMPI
0000521c: PUSH2 0x5223
0000521f: PUSH2 0x4d22
00005222: JUMP
00005223: JUMPDEST
00005224: PUSH1 0x01
00005226: DUP5
00005227: AND
00005228: ISZERO
00005229: PUSH2 0x5231
0000522c: JUMPI
0000522d: SWAP1
0000522e: DUP2
0000522f: MUL
00005230: SWAP1
00005231: JUMPDEST
00005232: PUSH1 0x01
00005234: SWAP4
00005235: SWAP1
00005236: SWAP4
00005237: SHR
00005238: SWAP3
00005239: DUP1
0000523a: MUL
0000523b: PUSH2 0x5208
0000523e: JUMP
0000523f: JUMPDEST
00005240: SWAP4
00005241: POP
00005242: SWAP4
00005243: SWAP2
00005244: POP
00005245: POP
00005246: JUMP
00005247: JUMPDEST
00005248: PUSH0
00005249: DUP3
0000524a: PUSH2 0x5255
0000524d: JUMPI
0000524e: POP
0000524f: PUSH1 0x01
00005251: PUSH2 0x0ff6
00005254: JUMP
00005255: JUMPDEST
00005256: DUP2
00005257: PUSH2 0x5261
0000525a: JUMPI
0000525b: POP
0000525c: PUSH0
0000525d: PUSH2 0x0ff6
00005260: JUMP
00005261: JUMPDEST
00005262: DUP2
00005263: PUSH1 0x01
00005265: DUP2
00005266: EQ
00005267: PUSH2 0x5277
0000526a: JUMPI
0000526b: PUSH1 0x02
0000526d: DUP2
0000526e: EQ
0000526f: PUSH2 0x5281
00005272: JUMPI
00005273: PUSH2 0x529d
00005276: JUMP
00005277: JUMPDEST
00005278: PUSH1 0x01
0000527a: SWAP2
0000527b: POP
0000527c: POP
0000527d: PUSH2 0x0ff6
00005280: JUMP
00005281: JUMPDEST
00005282: PUSH1 0xff
00005284: DUP5
00005285: GT
00005286: ISZERO
00005287: PUSH2 0x5292
0000528a: JUMPI
0000528b: PUSH2 0x5292
0000528e: PUSH2 0x4d22
00005291: JUMP
00005292: JUMPDEST
00005293: POP
00005294: POP
00005295: PUSH1 0x01
00005297: DUP3
00005298: SHL
00005299: PUSH2 0x0ff6
0000529c: JUMP
0000529d: JUMPDEST
0000529e: POP
0000529f: PUSH1 0x20
000052a1: DUP4
000052a2: LT
000052a3: PUSH2 0x0133
000052a6: DUP4
000052a7: LT
000052a8: AND
000052a9: PUSH1 0x4e
000052ab: DUP5
000052ac: LT
000052ad: PUSH1 0x0b
000052af: DUP5
000052b0: LT
000052b1: AND
000052b2: OR
000052b3: ISZERO
000052b4: PUSH2 0x52c0
000052b7: JUMPI
000052b8: POP
000052b9: DUP2
000052ba: DUP2
000052bb: EXP
000052bc: PUSH2 0x0ff6
000052bf: JUMP
000052c0: JUMPDEST
000052c1: PUSH2 0x52eb
000052c4: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000052e5: DUP5
000052e6: DUP5
000052e7: PUSH2 0x5204
000052ea: JUMP
000052eb: JUMPDEST
000052ec: DUP1
000052ed: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000530e: DIV
0000530f: DUP3
00005310: GT
00005311: ISZERO
00005312: PUSH2 0x531d
00005315: JUMPI
00005316: PUSH2 0x531d
00005319: PUSH2 0x4d22
0000531c: JUMP
0000531d: JUMPDEST
0000531e: MUL
0000531f: SWAP4
00005320: SWAP3
00005321: POP
00005322: POP
00005323: POP
00005324: JUMP
00005325: JUMPDEST
00005326: PUSH0
00005327: PUSH2 0x479e
0000532a: DUP4
0000532b: DUP4
0000532c: PUSH2 0x5247
0000532f: JUMP
00005330: JUMPDEST
00005331: PUSH0
00005332: DUP3
00005333: PUSH2 0x5363
00005336: JUMPI
00005337: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00005358: PUSH0
00005359: MSTORE
0000535a: PUSH1 0x12
0000535c: PUSH1 0x04
0000535e: MSTORE
0000535f: PUSH1 0x24
00005361: PUSH0
00005362: REVERT
00005363: JUMPDEST
00005364: POP
00005365: MOD
00005366: SWAP1
00005367: JUMP
00005368: JUMPDEST
00005369: DUP6
0000536a: DUP2
0000536b: MSTORE
0000536c: DUP5
0000536d: PUSH1 0x20
0000536f: DUP3
00005370: ADD
00005371: MSTORE
00005372: DUP4
00005373: PUSH1 0x40
00005375: DUP3
00005376: ADD
00005377: MSTORE
00005378: PUSH0
00005379: PUSH2 0x50fa
0000537c: PUSH2 0x5388
0000537f: PUSH1 0x60
00005381: DUP5
00005382: ADD
00005383: DUP7
00005384: PUSH2 0x51c3
00005387: JUMP
00005388: JUMPDEST
00005389: DUP5
0000538a: PUSH2 0x51c3
0000538d: JUMP
0000538e: JUMPDEST
0000538f: PUSH32 0x416363657373436f6e74726f6c3a206163636f756e7420000000000000000000
000053b0: DUP2
000053b1: MSTORE
000053b2: PUSH0
000053b3: PUSH2 0x53bf
000053b6: PUSH1 0x17
000053b8: DUP4
000053b9: ADD
000053ba: DUP6
000053bb: PUSH2 0x51c3
000053be: JUMP
000053bf: JUMPDEST
000053c0: PUSH32 0x206973206d697373696e6720726f6c6520000000000000000000000000000000
000053e1: DUP2
000053e2: MSTORE
000053e3: PUSH2 0x53ef
000053e6: PUSH1 0x11
000053e8: DUP3
000053e9: ADD
000053ea: DUP6
000053eb: PUSH2 0x51c3
000053ee: JUMP
000053ef: JUMPDEST
000053f0: SWAP6
000053f1: SWAP5
000053f2: POP
000053f3: POP
000053f4: POP
000053f5: POP
000053f6: POP
000053f7: JUMP
000053f8: JUMPDEST
000053f9: PUSH0
000053fa: DUP2
000053fb: PUSH2 0x5406
000053fe: JUMPI
000053ff: PUSH2 0x5406
00005402: PUSH2 0x4d22
00005405: JUMP
00005406: JUMPDEST
00005407: POP
00005408: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00005429: ADD
0000542a: SWAP1
0000542b: JUMP
0000542c: INVALID
0000542d: LOG2
0000542e: PUSH5 0x6970667358
00005434: UNKNOWN(0x22)
00005435: SLT
00005436: KECCAK256
00005437: OR
00005438: STATICCALL
00005439: SWAP4
0000543a: PUSH3 0xd03929
0000543e: SWAP4
0000543f: UNKNOWN(0xAC)
00005440: PUSH0
00005441: PUSH22 0x6a12c21940cf721259b8b8bc02053fb03e1c986a6364
00005458: PUSH20

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability codex Unprotected v6 reinitializer allows arbitrary role assignment and escrow drain 90 no
view
evidence_json
{
    "evidence": "`reinitializeLineaRollupV6` is `external` with no access control and calls `__Permissions_init`, which `_grantRole`s arbitrary roles for caller-supplied addresses.",
    "locations": [
        "contracts/contracts/LineaRollup.sol:155",
        "contracts/contracts/LineaRollup.sol:161",
        "contracts/contracts/lib/PermissionsManager.sol:19",
        "contracts/contracts/lib/PermissionsManager.sol:29"
    ],
    "recommendation": "Gate `reinitializeLineaRollupV6` with an admin role (e.g., `onlyRole(DEFAULT_ADMIN_ROLE)`) or `onlyProxy` + admin checks, and ensure upgrades always use `upgradeToAndCall` so reinitializers are executed atomically.",
    "exploit_scenario": "Precondition: the proxy has been upgraded to v6 but `reinitializeLineaRollupV6` has not yet been called. 1) Attacker calls `reinitializeLineaRollupV6` with `_roleAddresses` granting themselves OPERATOR_ROLE, VERIFIER_SETTER_ROLE, RATE_LIMIT_SETTER_ROLE, and USED_RATE_LIMIT_RESETTER_ROLE. 2) Attacker calls `setVerifierAddress` to point a proof type at a malicious verifier that always returns true. 3) Attacker calls `submitDataAsCalldata` to register a shnarf they control, then `finalizeBlocks` with fabricated `_finalizationData` that anchors an L2 Merkle root containing a message paying the attacker. The malicious verifier makes `_verifyProof` pass. 4) Attacker calls `claimMessageWithProof` using that Merkle root/proof to withdraw ETH to themselves, optionally raising/resetting the rate limit first. Profit: up to the full ETH balance held by the message service escrow (bridge funds), limited only by the rate limit unless the attacker also raises it via the granted role."
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xefb80223c482b26a37c909762ffd0b561a6c8fd13e40658e5a7b23d098bfb4d3
call_targets: 0x07ddce60658a61dc1732cacf2220fce4a01c49b0
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xefb80223c482b26a37c909762ffd0b561a6c8fd13e40658e5a7b23d098bfb4d3",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x07ddce60658a61dc1732cacf2220fce4a01c49b0"
    ],
    "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": "0xe196fb5d",
            "selector": "0xe196fb5d",
            "calldata_variants": [
                "0xe196fb5d",
                "0xe196fb5d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe97a1e9e",
            "selector": "0xe97a1e9e",
            "calldata_variants": [
                "0xe97a1e9e",
                "0xe97a1e9e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf5b541a6",
            "selector": "0xf5b541a6",
            "calldata_variants": [
                "0xf5b541a6",
                "0xf5b541a60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd5d4b835",
            "selector": "0xd5d4b835",
            "calldata_variants": [
                "0xd5d4b835",
                "0xd5d4b8350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd722bbfc",
            "selector": "0xd722bbfc",
            "calldata_variants": [
                "0xd722bbfc",
                "0xd722bbfc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcd9b9e9a",
            "selector": "0xcd9b9e9a",
            "calldata_variants": [
                "0xcd9b9e9a",
                "0xcd9b9e9a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcf5b2764",
            "selector": "0xcf5b2764",
            "calldata_variants": [
                "0xcf5b2764",
                "0xcf5b27640000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4816,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5166,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5244,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 7,
    "guards_detected": [],
    "untrusted_call_count": 7
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xefb80223c482b26a37c909762ffd0b561a6c8fd13e40658e5a7b23d098bfb4d3
call_targets: 0x07ddce60658a61dc1732cacf2220fce4a01c49b0
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xefb80223c482b26a37c909762ffd0b561a6c8fd13e40658e5a7b23d098bfb4d3",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x07ddce60658a61dc1732cacf2220fce4a01c49b0"
    ],
    "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": "0xe196fb5d",
            "selector": "0xe196fb5d",
            "calldata_variants": [
                "0xe196fb5d",
                "0xe196fb5d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe97a1e9e",
            "selector": "0xe97a1e9e",
            "calldata_variants": [
                "0xe97a1e9e",
                "0xe97a1e9e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf5b541a6",
            "selector": "0xf5b541a6",
            "calldata_variants": [
                "0xf5b541a6",
                "0xf5b541a60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd5d4b835",
            "selector": "0xd5d4b835",
            "calldata_variants": [
                "0xd5d4b835",
                "0xd5d4b8350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd722bbfc",
            "selector": "0xd722bbfc",
            "calldata_variants": [
                "0xd722bbfc",
                "0xd722bbfc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcd9b9e9a",
            "selector": "0xcd9b9e9a",
            "calldata_variants": [
                "0xcd9b9e9a",
                "0xcd9b9e9a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcf5b2764",
            "selector": "0xcf5b2764",
            "calldata_variants": [
                "0xcf5b2764",
                "0xcf5b27640000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4816,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5166,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5244,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 7,
    "guards_detected": []
}