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

Analysis Run

b032c5b7-84c5-4699-b2ef-1ac854f6752a

failed
Chain ID
1
Address
Block Number
Created
Mon, Dec 29, 2025 3:04 PM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
Untrusted CALL target/value reachable
crit 0 high 0 direct contract
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
30510 report.consolidate complete 1 / 1 3 months ago
103919 artifact.fetch failed 1 / 3 1 week ago
103920 tool.cast_disasm complete 1 / 3 1 week ago
103921 analysis.bundle complete 1 / 3 1 week ago
103922 capability.graph complete 1 / 3 1 week ago
103923 detector.run complete 1 / 3 1 week ago
103924 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
No exploitable reentrancy, access control, upgradeability, signature validation, oracle, accounting, or external-call issues identified in the first-party contracts within scope.
View stderr
[codex:1500714] OpenAI Codex v0.77.0 (research preview)
[codex:1500714] --------
[codex:1500714] workdir: /tmp/codex-multi-oirtlsv8
[codex:1500714] model: gpt-5.2-codex
[codex:1500714] provider: openai
[codex:1500714] approval: never
[codex:1500714] sandbox: read-only
[codex:1500714] reasoning effort: xhigh
[codex:1500714] reasoning summaries: auto
[codex:1500714] session id: 019b6a9b-9eae-77c1-b378-119d998e7031
[codex:1500714] --------
[codex:1500714] user
[codex:1500714] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1500714] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1500714] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1500714] 
[codex:1500714] Scope rules:
[codex:1500714] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1500714] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1500714] 
[codex:1500714] Output MUST be valid JSON matching the provided schema.
[codex:1500714] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1500714] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1500714] 
[codex:1500714] Output constraints (IMPORTANT):
[codex:1500714] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1500714] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1500714] mcp startup: no servers
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Preparing to read audit file**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc ls in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] AUDIT_BUNDLE.txt
[codex:1500714] codex-output-schema.json
[codex:1500714] contracts
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Reading AUDIT_BUNDLE.txt file**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1500714] 
[codex:1500714] ================================================================================
[codex:1500714] FILE: contracts/contracts/AlgebraPool.sol
[codex:1500714] ================================================================================
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] pragma abicoder v1;
[codex:1500714] 
[codex:1500714] import './base/AlgebraPoolBase.sol';
[codex:1500714] import './base/ReentrancyGuard.sol';
[codex:1500714] import './base/Positions.sol';
[codex:1500714] import './base/SwapCalculation.sol';
[codex:1500714] import './base/ReservesManager.sol';
[codex:1500714] import './base/TickStructure.sol';
[codex:1500714] 
[codex:1500714] import './libraries/FullMath.sol';
[codex:1500714] import './libraries/Constants.sol';
[codex:1500714] import './libraries/SafeCast.sol';
[codex:1500714] import './libraries/TickMath.sol';
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Preparing to audit large contract bundle**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc 'rg --files contracts/contracts' in /tmp/codex-multi-oirtlsv8 succeeded in 8ms:
[codex:1500714] contracts/contracts/interfaces/IERC20Minimal.sol
[codex:1500714] contracts/contracts/interfaces/IAlgebraPoolDeployer.sol
[codex:1500714] contracts/contracts/interfaces/vault/IAlgebraVaultFactory.sol
[codex:1500714] contracts/contracts/interfaces/IAlgebraPool.sol
[codex:1500714] contracts/contracts/interfaces/pool/IAlgebraPoolActions.sol
[codex:1500714] contracts/contracts/interfaces/pool/IAlgebraPoolImmutables.sol
[codex:1500714] contracts/contracts/interfaces/pool/IAlgebraPoolErrors.sol
[codex:1500714] contracts/contracts/interfaces/pool/IAlgebraPoolPermissionedActions.sol
[codex:1500714] contracts/contracts/interfaces/pool/IAlgebraPoolEvents.sol
[codex:1500714] contracts/contracts/interfaces/pool/IAlgebraPoolState.sol
[codex:1500714] contracts/contracts/interfaces/IAlgebraFactory.sol
[codex:1500714] contracts/contracts/interfaces/callback/IAlgebraFlashCallback.sol
[codex:1500714] contracts/contracts/interfaces/callback/IAlgebraMintCallback.sol
[codex:1500714] contracts/contracts/interfaces/callback/IAlgebraSwapCallback.sol
[codex:1500714] contracts/contracts/libraries/TokenDeltaMath.sol
[codex:1500714] contracts/contracts/libraries/LowGasSafeMath.sol
[codex:1500714] contracts/contracts/libraries/TickMath.sol
[codex:1500714] contracts/contracts/libraries/Constants.sol
[codex:1500714] contracts/contracts/AlgebraPool.sol
[codex:1500714] contracts/contracts/libraries/LiquidityMath.sol
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Reviewing core contract vulnerabilities**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,200p' contracts/contracts/base/ReentrancyGuard.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] 
[codex:1500714] import './AlgebraPoolBase.sol';
[codex:1500714] 
[codex:1500714] /// @title Algebra reentrancy protection
[codex:1500714] /// @notice Provides a modifier that protects against reentrancy
[codex:1500714] abstract contract ReentrancyGuard is AlgebraPoolBase {
[codex:1500714]   /// @notice checks that reentrancy lock is unlocked
[codex:1500714]   modifier onlyUnlocked() {
[codex:1500714]     _checkUnlocked();
[codex:1500714]     _;
[codex:1500714]   }
[codex:1500714] 
[codex:1500714]   /// @dev using private function to save bytecode
[codex:1500714]   function _checkUnlocked() internal view {
[codex:1500714]     if (!globalState.unlocked) revert IAlgebraPoolErrors.locked();
[codex:1500714]   }
[codex:1500714] 
[codex:1500714]   /// @dev using private function to save bytecode
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential reentrancy risks**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc 'rg "plugin" -n contracts/contracts/base contracts/contracts/AlgebraPool.sol' in /tmp/codex-multi-oirtlsv8 succeeded in 10ms:
[codex:1500714] contracts/contracts/AlgebraPool.sol:19:import './interfaces/plugin/IAlgebraPlugin.sol';
[codex:1500714] contracts/contracts/AlgebraPool.sol:39:    if (plugin != address(0)) {
[codex:1500714] contracts/contracts/AlgebraPool.sol:40:      IAlgebraPlugin(plugin).beforeInitialize(msg.sender, initialPrice).shouldReturn(IAlgebraPlugin.beforeInitialize.selector);
[codex:1500714] contracts/contracts/AlgebraPool.sol:50:    if (globalState.pluginConfig.hasFlag(Plugins.AFTER_INIT_FLAG)) {
[codex:1500714] contracts/contracts/AlgebraPool.sol:51:      IAlgebraPlugin(plugin).afterInitialize(msg.sender, initialPrice, tick).shouldReturn(IAlgebraPlugin.afterInitialize.selector);
[codex:1500714] contracts/contracts/AlgebraPool.sol:136:    uint24 pluginFee = _beforeModifyPos(msg.sender, bottomTick, topTick, liquidityDelta, data);
[codex:1500714] contracts/contracts/AlgebraPool.sol:145:      if (pluginFee > 0) {
[codex:1500714] contracts/contracts/AlgebraPool.sol:150:          deltaPluginFeePending0 = FullMath.mulDiv(amount0, pluginFee, Constants.FEE_DENOMINATOR);
[codex:1500714] contracts/contracts/AlgebraPool.sol:154:          deltaPluginFeePending1 = FullMath.mulDiv(amount1, pluginFee, Constants.FEE_DENOMINATOR);
[codex:1500714] contracts/contracts/AlgebraPool.sol:168:    if (amount | amount0 | amount1 != 0) emit Burn(msg.sender, bottomTick, topTick, amount, amount0, amount1, pluginFee);
[codex:1500714] contracts/contracts/AlgebraPool.sol:175:    return msg.sender == plugin;
[codex:1500714] contracts/contracts/AlgebraPool.sol:184:  ) internal returns (uint24 pluginFee) {
[codex:1500714] contracts/contracts/AlgebraPool.sol:185:    if (globalState.pluginConfig.hasFlag(Plugins.BEFORE_POSITION_MODIFY_FLAG)) {
[codex:1500714] contracts/contracts/AlgebraPool.sol:188:      (selector, pluginFee) = IAlgebraPlugin(plugin).beforeModifyPosition(msg.sender, owner, bottomTick, topTick, liquidityDelta, data);
[codex:1500714] contracts/contracts/AlgebraPool.sol:189:      if (pluginFee >= 1e6) revert incorrectPluginFee();
[codex:1500714] contracts/contracts/AlgebraPool.sol:196:    if (globalState.pluginConfig.hasFlag(Plugins.AFTER_POSITION_MODIFY_FLAG)) {
[codex:1500714] contracts/contracts/AlgebraPool.sol:197:      IAlgebraPlugin(plugin).afterModifyPosition(msg.sender, owner, bTick, tTick, deltaL, amount0, amount1, data).shouldReturn(
[codex:1500714] contracts/contracts/AlgebraPool.sol:250:    (uint24 overrideFee, uint24 pluginFee) = _beforeSwap(recipient, zeroToOne, amountRequired, limitSqrtPrice, false, data);
[codex:1500714] contracts/contracts/AlgebraPool.sol:259:        pluginFee,
[codex:1500714] contracts/contracts/AlgebraPool.sol:271:        _changeReserves(amount0, amount1, fees.communityFeeAmount, 0, fees.pluginFeeAmount, 0); // reflect reserve change and pay communityFee
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Inspecting setPlugin configuration**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '470,620p' contracts/contracts/AlgebraPool.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] 
[codex:1500714]   /// @dev using function to save bytecode
[codex:1500714]   function _checkIfAdministrator() private view {
[codex:1500714]     if (!IAlgebraFactory(factory).hasRoleOrOwner(Constants.POOLS_ADMINISTRATOR_ROLE, msg.sender)) revert notAllowed();
[codex:1500714]   }
[codex:1500714] 
[codex:1500714]   // permissioned actions use reentrancy lock to prevent call from callback (to keep the correct order of events, etc.)
[codex:1500714] 
[codex:1500714]   /// @inheritdoc IAlgebraPoolPermissionedActions
[codex:1500714]   function setCommunityFee(uint16 newCommunityFee) external override onlyUnlocked {
[codex:1500714]     _checkIfAdministrator();
[codex:1500714]     if (
[codex:1500714]       newCommunityFee > Constants.MAX_COMMUNITY_FEE ||
[codex:1500714]       newCommunityFee == globalState.communityFee ||
[codex:1500714]       (newCommunityFee != 0 && communityVault == address(0))
[codex:1500714]     ) revert invalidNewCommunityFee();
[codex:1500714]     _setCommunityFee(newCommunityFee);
[codex:1500714]   }
[codex:1500714] 
[codex:1500714]   /// @inheritdoc IAlgebraPoolPermissionedActions
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing reentrancy risks with plugins and pool locks**
[codex:1500714] 
[codex:1500714] I'm examining the potential for reentrancy attacks caused by the plugin callbacks invoked before the pool locks. The plugin is admin-set and could be malicious, which poses a centralization risk rather than a direct vulnerability. Notably, during `swapWithPaymentInAdvance`, the pool unlocks before calling the plugin hook `_beforeSwap`, allowing the plugin to reenter pool functions while state is partially updated, which could be risky. However, since plugins are authorized by admin, this seems expected behavior but still worth highlighting. I’m also exploring whether plugin self-configuration of hooks could introduce unexpected access and inspecting related contracts like ReservesManager for any vulnerable external token transfers or reentrancy issues.
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,260p' contracts/contracts/base/ReservesManager.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 6ms:
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] 
[codex:1500714] import '../libraries/SafeCast.sol';
[codex:1500714] import '../libraries/Plugins.sol';
[codex:1500714] import './AlgebraPoolBase.sol';
[codex:1500714] import '../interfaces/plugin/IAlgebraPlugin.sol';
[codex:1500714] import '../interfaces/pool/IAlgebraPoolErrors.sol';
[codex:1500714] /// @title Algebra reserves management abstract contract
[codex:1500714] /// @notice Encapsulates logic for tracking and changing pool reserves
[codex:1500714] /// @dev The reserve mechanism allows the pool to keep track of unexpected increases in balances
[codex:1500714] abstract contract ReservesManager is AlgebraPoolBase {
[codex:1500714]   using Plugins for bytes4;
[codex:1500714]   using SafeCast for uint256;
[codex:1500714] 
[codex:1500714]   /// @dev The tracked token0 and token1 reserves of pool
[codex:1500714]   uint128 internal reserve0;
[codex:1500714]   uint128 internal reserve1;
[codex:1500714] 
[codex:1500714]   /// @inheritdoc IAlgebraPoolState
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential reentrancy risk in _changeReserves**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc 'rg "_changeReserves" -n contracts/contracts' in /tmp/codex-multi-oirtlsv8 succeeded in 9ms:
[codex:1500714] contracts/contracts/AlgebraPool.sol:118:    _changeReserves(int256(amount0), int256(amount1), 0, 0, 0, 0);
[codex:1500714] contracts/contracts/AlgebraPool.sol:158:        _changeReserves(0, 0, 0, 0, deltaPluginFeePending0, deltaPluginFeePending1);
[codex:1500714] contracts/contracts/AlgebraPool.sol:229:        _changeReserves(-int256(uint256(amount0)), -int256(uint256(amount1)), 0, 0, 0, 0);
[codex:1500714] contracts/contracts/AlgebraPool.sol:271:        _changeReserves(amount0, amount1, fees.communityFeeAmount, 0, fees.pluginFeeAmount, 0); // reflect reserve change and pay communityFee
[codex:1500714] contracts/contracts/AlgebraPool.sol:278:        _changeReserves(amount0, amount1, 0, fees.communityFeeAmount, 0, fees.pluginFeeAmount); // reflect reserve change and pay communityFee
[codex:1500714] contracts/contracts/AlgebraPool.sol:319:        _changeReserves(amountReceived, 0, 0, 0, 0, 0);
[codex:1500714] contracts/contracts/AlgebraPool.sol:325:        _changeReserves(0, amountReceived, 0, 0, 0, 0);
[codex:1500714] contracts/contracts/AlgebraPool.sol:353:        _changeReserves(-leftover.toInt256(), amount1, fees.communityFeeAmount, 0, fees.pluginFeeAmount, 0); // reflect reserve change and pay communityFee
[codex:1500714] contracts/contracts/AlgebraPool.sol:358:        _changeReserves(amount0, -leftover.toInt256(), 0, fees.communityFeeAmount, 0, fees.pluginFeeAmount); // reflect reserve change and pay communityFee
[codex:1500714] contracts/contracts/AlgebraPool.sol:460:        _changeReserves(int256(communityFee0), int256(communityFee1), communityFee0, communityFee1, 0, 0);
[codex:1500714] contracts/contracts/base/ReservesManager.sol:172:  function _changeReserves(
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing lock usage and reentrancy risks**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,260p' contracts/contracts/base/AlgebraPoolBase.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] 
[codex:1500714] import '../interfaces/callback/IAlgebraSwapCallback.sol';
[codex:1500714] import '../interfaces/callback/IAlgebraMintCallback.sol';
[codex:1500714] import '../interfaces/callback/IAlgebraFlashCallback.sol';
[codex:1500714] import '../interfaces/plugin/IAlgebraDynamicFeePlugin.sol';
[codex:1500714] import '../interfaces/IAlgebraPool.sol';
[codex:1500714] import '../interfaces/IAlgebraFactory.sol';
[codex:1500714] import '../interfaces/IAlgebraPoolDeployer.sol';
[codex:1500714] import '../interfaces/IERC20Minimal.sol';
[codex:1500714] 
[codex:1500714] import '../libraries/TickManagement.sol';
[codex:1500714] import '../libraries/SafeTransfer.sol';
[codex:1500714] import '../libraries/Constants.sol';
[codex:1500714] import '../libraries/Plugins.sol';
[codex:1500714] 
[codex:1500714] import './common/Timestamp.sol';
[codex:1500714] 
[codex:1500714] /// @title Algebra pool base abstract contract
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential reentrancy and permission issues**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,200p' contracts/contracts/libraries/SafeTransfer.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] // SPDX-License-Identifier: MIT
[codex:1500714] pragma solidity >=0.8.4 <0.9.0;
[codex:1500714] 
[codex:1500714] import '../interfaces/pool/IAlgebraPoolErrors.sol';
[codex:1500714] 
[codex:1500714] /// @title SafeTransfer
[codex:1500714] /// @notice Safe ERC20 transfer library that gracefully handles missing return values.
[codex:1500714] /// @dev Credit to Solmate under MIT license: https://github.com/transmissions11/solmate/blob/ed67feda67b24fdeff8ad1032360f0ee6047ba0a/src/utils/SafeTransferLib.sol
[codex:1500714] /// @dev Please note that this library does not check if the token has a code! That responsibility is delegated to the caller.
[codex:1500714] library SafeTransfer {
[codex:1500714]   /// @notice Transfers tokens to a recipient
[codex:1500714]   /// @dev Calls transfer on token contract, errors with transferFailed() if transfer fails
[codex:1500714]   /// @param token The contract address of the token which will be transferred
[codex:1500714]   /// @param to The recipient of the transfer
[codex:1500714]   /// @param amount The amount of the token to transfer
[codex:1500714]   function safeTransfer(address token, address to, uint256 amount) internal {
[codex:1500714]     bool success;
[codex:1500714]     assembly {
[codex:1500714]       let freeMemoryPointer := mload(0x40) // we will need to restore 0x40 slot
[codex:1500714]       mstore(0x00, 0xa9059cbb00000000000000000000000000000000000000000000000000000000) // "transfer(address,uint256)" selector
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential unchecked fee manipulation**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,240p' contracts/contracts/base/SwapCalculation.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] 
[codex:1500714] import '../libraries/PriceMovementMath.sol';
[codex:1500714] import '../libraries/LowGasSafeMath.sol';
[codex:1500714] import '../libraries/SafeCast.sol';
[codex:1500714] import './AlgebraPoolBase.sol';
[codex:1500714] 
[codex:1500714] /// @title Algebra swap calculation abstract contract
[codex:1500714] /// @notice Contains _calculateSwap encapsulating internal logic of swaps
[codex:1500714] abstract contract SwapCalculation is AlgebraPoolBase {
[codex:1500714]   using TickManagement for mapping(int24 => TickManagement.Tick);
[codex:1500714]   using SafeCast for uint256;
[codex:1500714]   using LowGasSafeMath for uint256;
[codex:1500714]   using LowGasSafeMath for int256;
[codex:1500714] 
[codex:1500714]   struct SwapCalculationCache {
[codex:1500714]     uint256 communityFee; // The community fee of the selling token, uint256 to minimize casts
[codex:1500714]     bool crossedAnyTick; //  If we have already crossed at least one active tick
[codex:1500714]     int256 amountRequiredInitial; // The initial value of the exact input\output amount
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Searching for delegatecall and signature validation**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc 'rg -n "delegatecall|ecrecover|permit|signature" contracts/contracts' in /tmp/codex-multi-oirtlsv8 exited 1 in 10ms:
[codex:1500714] 
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Examining potential security issues**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,260p' contracts/contracts/base/Positions.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 6ms:
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] 
[codex:1500714] import '../libraries/LiquidityMath.sol';
[codex:1500714] import '../libraries/TickManagement.sol';
[codex:1500714] import './AlgebraPoolBase.sol';
[codex:1500714] 
[codex:1500714] /// @title Algebra positions abstract contract
[codex:1500714] /// @notice Contains the logic of recalculation and change of liquidity positions
[codex:1500714] /// @dev Relies on method _addOrRemoveTicks, which is implemented in TickStructure
[codex:1500714] abstract contract Positions is AlgebraPoolBase {
[codex:1500714]   using TickManagement for mapping(int24 => TickManagement.Tick);
[codex:1500714] 
[codex:1500714]   struct Position {
[codex:1500714]     uint256 liquidity; // The amount of liquidity concentrated in the range
[codex:1500714]     uint256 innerFeeGrowth0Token; // The last updated fee growth per unit of liquidity
[codex:1500714]     uint256 innerFeeGrowth1Token;
[codex:1500714]     uint128 fees0; // The amount of token0 owed to a LP
[codex:1500714]     uint128 fees1; // The amount of token1 owed to a LP
[codex:1500714]   }
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Checking for TickStructure mentions**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,260p' contracts/contracts/base/TickStructure.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] 
[codex:1500714] import '../libraries/TickManagement.sol';
[codex:1500714] import '../libraries/TickTree.sol';
[codex:1500714] import './AlgebraPoolBase.sol';
[codex:1500714] 
[codex:1500714] /// @title Algebra tick structure abstract contract
[codex:1500714] /// @notice Encapsulates the logic of interaction with the data structure with ticks
[codex:1500714] /// @dev Ticks are stored as a doubly linked list. A three-level bitmap tree is used to search through the list
[codex:1500714] abstract contract TickStructure is AlgebraPoolBase {
[codex:1500714]   using TickManagement for mapping(int24 => TickManagement.Tick);
[codex:1500714]   using TickTree for mapping(int16 => uint256);
[codex:1500714] 
[codex:1500714]   /// @inheritdoc IAlgebraPoolState
[codex:1500714]   uint32 public override tickTreeRoot; // The root bitmap of search tree
[codex:1500714]   /// @inheritdoc IAlgebraPoolState
[codex:1500714]   mapping(int16 => uint256) public override tickTreeSecondLayer; // The second layer of search tree
[codex:1500714] 
[codex:1500714]   // the leaves of the tree are stored in `tickTable`
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential reentrancy and arithmetic issues**
[codex:1500714] 
[codex:1500714] I'm exploring various functions for subtle bugs, focusing on how signed 24-bit ticks are handled in key packing, the implications of plugin callbacks during swaps and fees, and potential reentrancy vectors via token transfers and plugin calls. I'm also examining arithmetic checks that use bitwise OR on signed integers and liquidity calculations involving partial token payments and rounding, looking for correctness or edge cases that might cause inconsistencies.
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,240p' contracts/contracts/libraries/LiquidityMath.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] // SPDX-License-Identifier: GPL-2.0-or-later
[codex:1500714] pragma solidity >=0.8.4 <0.9.0;
[codex:1500714] 
[codex:1500714] import '../interfaces/pool/IAlgebraPoolErrors.sol';
[codex:1500714] import './TickMath.sol';
[codex:1500714] import './TokenDeltaMath.sol';
[codex:1500714] 
[codex:1500714] /// @title Math library for liquidity
[codex:1500714] /// @dev Credit to Uniswap Labs under GPL-2.0-or-later license:
[codex:1500714] /// https://github.com/Uniswap/v3-core/blob/main/contracts/libraries
[codex:1500714] library LiquidityMath {
[codex:1500714]   /// @notice Add a signed liquidity delta to liquidity and revert if it overflows or underflows
[codex:1500714]   /// @param x The liquidity before change
[codex:1500714]   /// @param y The delta by which liquidity should be changed
[codex:1500714]   /// @return z The liquidity delta
[codex:1500714]   function addDelta(uint128 x, int128 y) internal pure returns (uint128 z) {
[codex:1500714]     unchecked {
[codex:1500714]       if (y < 0) {
[codex:1500714]         if ((z = x - uint128(-y)) >= x) revert IAlgebraPoolErrors.liquiditySub();
[codex:1500714]       } else {
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing rounding and fee logic**
[codex:1500714] 
[codex:1500714] I'm examining how rounding up for positive liquidity might affect actual minted amounts and liquidity calculations, especially focusing on the potential mismatch causing under-collateralization. I also check admin controls on fees and tick spacing for possible misconfiguration risks and consider if any reserve updates or external calls pose control or security issues.
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "rg -n \"call\\(\" contracts/contracts" in /tmp/codex-multi-oirtlsv8 succeeded in 9ms:
[codex:1500714] contracts/contracts/libraries/SafeTransfer.sol:24:      success := call(gas(), token, 0, 0, 0x44, 0, 0x20)
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential vulnerabilities and access controls**
[codex:1500714] 
[codex:1500714] I'm carefully reviewing plugin configuration, owner privilege boundaries, and function accessibility like initialize and fee settings to identify subtle or permission-related risks, especially focusing on permissionless pool initialization and plugin behaviors that might let EOAs manipulate state or fees unexpectedly.
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,200p' contracts/contracts/base/common/Timestamp.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] // SPDX-License-Identifier: GPL-2.0-or-later
[codex:1500714] pragma solidity >=0.8.0 <0.9.0;
[codex:1500714] 
[codex:1500714] /// @title Abstract contract with modified blockTimestamp functionality
[codex:1500714] /// @notice Allows the pool and other contracts to get a timestamp truncated to 32 bits
[codex:1500714] /// @dev Can be overridden in tests to make testing easier
[codex:1500714] abstract contract Timestamp {
[codex:1500714]   /// @dev This function is created for testing by overriding it.
[codex:1500714]   /// @return A timestamp converted to uint32
[codex:1500714]   function _blockTimestamp() internal view virtual returns (uint32) {
[codex:1500714]     return uint32(block.timestamp); // truncation is desired
[codex:1500714]   }
[codex:1500714] }
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential arithmetic and reentrancy risks**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,200p' contracts/contracts/libraries/SafeCast.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 6ms:
[codex:1500714] // SPDX-License-Identifier: GPL-2.0-or-later
[codex:1500714] pragma solidity >=0.5.0 <0.9.0;
[codex:1500714] 
[codex:1500714] /// @title Safe casting methods
[codex:1500714] /// @notice Contains methods for safely casting between types
[codex:1500714] /// @dev Credit to Uniswap Labs under GPL-2.0-or-later license:
[codex:1500714] /// https://github.com/Uniswap/v3-core/blob/main/contracts/libraries
[codex:1500714] library SafeCast {
[codex:1500714]   /// @notice Cast a uint256 to a uint160, revert on overflow
[codex:1500714]   /// @param y The uint256 to be downcasted
[codex:1500714]   /// @return z The downcasted integer, now type uint160
[codex:1500714]   function toUint160(uint256 y) internal pure returns (uint160 z) {
[codex:1500714]     require((z = uint160(y)) == y);
[codex:1500714]   }
[codex:1500714] 
[codex:1500714]   /// @notice Cast a uint256 to a uint128, revert on overflow
[codex:1500714]   /// @param y The uint256 to be downcasted
[codex:1500714]   /// @return z The downcasted integer, now type uint128
[codex:1500714]   function toUint128(uint256 y) internal pure returns (uint128 z) {
[codex:1500714]     require((z = uint128(y)) == y);
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Examining potential vulnerabilities in TickManagement**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,260p' contracts/contracts/libraries/TickManagement.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 5ms:
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] 
[codex:1500714] import '../interfaces/pool/IAlgebraPoolErrors.sol';
[codex:1500714] 
[codex:1500714] import './TickMath.sol';
[codex:1500714] import './LiquidityMath.sol';
[codex:1500714] import './Constants.sol';
[codex:1500714] 
[codex:1500714] /// @title Library for managing and interacting with ticks
[codex:1500714] /// @notice Contains functions for managing tick processes and relevant calculations
[codex:1500714] /// @dev Ticks are organized as a doubly linked list
[codex:1500714] library TickManagement {
[codex:1500714]   // info stored for each initialized individual tick
[codex:1500714]   struct Tick {
[codex:1500714]     uint256 liquidityTotal; // the total position liquidity that references this tick
[codex:1500714]     int128 liquidityDelta; // amount of net liquidity added (subtracted) when tick is crossed left-right (right-left),
[codex:1500714]     int24 prevTick;
[codex:1500714]     int24 nextTick;
[codex:1500714]     // fee growth per unit of liquidity on the _other_ side of this tick (relative to the current tick)
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential reentrancy and plugin risks**
[codex:1500714] 
[codex:1500714] I'm reviewing how plugin calls happen before locks, which might allow reentrancy into sensitive pool functions, but access controls seem intact. I’m also checking low-level assembly bit shifting in tick toggling for correctness and considering issues like plugin address verification and safe token transfers. Next, I’ll look into the Plugins library’s `.shouldReturn` method for subtle vulnerabilities.
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,240p' contracts/contracts/libraries/Plugins.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 6ms:
[codex:1500714] // SPDX-License-Identifier: GPL-2.0-or-later
[codex:1500714] pragma solidity >=0.8.4 <0.9.0;
[codex:1500714] 
[codex:1500714] import '../interfaces/pool/IAlgebraPoolErrors.sol';
[codex:1500714] 
[codex:1500714] /// @title Contains logic and constants for interacting with the plugin through hooks
[codex:1500714] /// @dev Allows pool to check which hooks are enabled, as well as control the return selector
[codex:1500714] library Plugins {
[codex:1500714]   function hasFlag(uint8 pluginConfig, uint256 flag) internal pure returns (bool res) {
[codex:1500714]     assembly {
[codex:1500714]       res := gt(and(pluginConfig, flag), 0)
[codex:1500714]     }
[codex:1500714]   }
[codex:1500714] 
[codex:1500714]   function shouldReturn(bytes4 selector, bytes4 expectedSelector) internal pure {
[codex:1500714]     if (selector != expectedSelector) revert IAlgebraPoolErrors.invalidHookResponse(expectedSelector);
[codex:1500714]   }
[codex:1500714] 
[codex:1500714]   uint256 internal constant BEFORE_SWAP_FLAG = 1;
[codex:1500714]   uint256 internal constant AFTER_SWAP_FLAG = 1 << 1;
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing plugin fee and overflow concerns**
[codex:1500714] 
[codex:1500714] I'm examining how the plugin's beforeSwap hook affects fee calculations and whether plugins can avoid fees by calling swap recursively. There’s a nuanced interaction with dynamic and override fees that seems intentional, though potentially exploitable for fee manipulation. I’m also reviewing unchecked fee accumulation in positions that could overflow and cause accounting errors if fees become extremely large, which might enable griefing but not a clear vulnerability. Next, I'll glance at PriceMovementMath for any related issues.
[codex:1500714] exec
[codex:1500714] /bin/bash -lc "sed -n '1,260p' contracts/contracts/libraries/PriceMovementMath.sol" in /tmp/codex-multi-oirtlsv8 succeeded in 6ms:
[codex:1500714] // SPDX-License-Identifier: BUSL-1.1
[codex:1500714] pragma solidity =0.8.20;
[codex:1500714] 
[codex:1500714] import '../interfaces/pool/IAlgebraPoolErrors.sol';
[codex:1500714] import './FullMath.sol';
[codex:1500714] import './LowGasSafeMath.sol';
[codex:1500714] import './TokenDeltaMath.sol';
[codex:1500714] import './Constants.sol';
[codex:1500714] 
[codex:1500714] /// @title Computes the result of price movement
[codex:1500714] /// @notice Contains methods for computing the result of price movement within a single tick price range.
[codex:1500714] library PriceMovementMath {
[codex:1500714]   using LowGasSafeMath for uint256;
[codex:1500714]   using SafeCast for uint256;
[codex:1500714] 
[codex:1500714]   /// @notice Gets the next sqrt price given an input amount of token0 or token1
[codex:1500714]   /// @dev Throws if price or liquidity are 0, or if the next price is out of bounds
[codex:1500714]   /// @param price The starting Q64.96 sqrt price, i.e., before accounting for the input amount
[codex:1500714]   /// @param liquidity The amount of usable liquidity
[codex:1500714]   /// @param input How much of token0, or token1, is being swapped in
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing potential reentrancy and fee edge cases**
[codex:1500714] exec
[codex:1500714] /bin/bash -lc 'rg -n "TODO|FIXME|HACK|BUG" contracts/contracts' in /tmp/codex-multi-oirtlsv8 exited 1 in 10ms:
[codex:1500714] 
[codex:1500714] 
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Analyzing complex potential vulnerabilities**
[codex:1500714] 
[codex:1500714] I’m carefully examining possible issues including fee packing, timestamp underflow, plugin fee handling, dynamic fee misconfiguration, reentrancy risks in plugin hooks, and tick boundary overflows. There is a subtle concern about unchecked overflow in tick increments at max tick values that could cause unexpected behavior, among other nuanced risks. Let’s explore these subtle glitches and their security implications together!
[codex:1500714] thinking
[codex:1500714] **Verifying tick boundary and arithmetic safety**
[codex:1500714] 
[codex:1500714] I’m clarifying how MIN and MAX ticks are treated, confirming that incrementing ticks near MAX_TICK doesn’t overflow given int24 range, and ensuring tick initialization logic aligns with expected behavior. After detailed checks, the arithmetic and boundary handling appear safe, helping me decide no exploitable issues exist here.
[codex:1500714] exec
[codex:1500714] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-oirtlsv8 succeeded in 7ms:
[codex:1500714] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:1500714] 
[codex:1500714] thinking
[codex:1500714] **Summarizing security audit results**
[codex:1500714] 
[codex:1500714] I'm confirming that the output will be a valid JSON object strictly matching the schema, indicating no significant issues found. I carefully reviewed various potential vulnerabilities—reentrancy, access control, upgrade risks, external calls—and found no exploitable problems in the first-party contracts. I'll produce a clean JSON with `no_findings: true`, an appropriate summary message, and an empty findings list as required.
[codex:1500714] codex
[codex:1500714] {"no_findings":true,"summary":"No exploitable reentrancy, access control, upgradeability, signature validation, oracle, accounting, or external-call issues identified in the first-party contracts within scope.","findings":[]}
[codex:1500714] tokens used
[codex:1500714] 69,582
[codex:1500714] {"no_findings":true,"summary":"No exploitable reentrancy, access control, upgradeability, signature validation, oracle, accounting, or external-call issues identified in the first-party contracts within scope.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-29T15:04:52.682890+00:00",
        "returncode": 0
    },
    "summary": "No exploitable reentrancy, access control, upgradeability, signature validation, oracle, accounting, or external-call issues identified in the first-party contracts within scope.",
    "raw_final": {
        "summary": "No exploitable reentrancy, access control, upgradeability, signature validation, oracle, accounting, or external-call issues identified in the first-party contracts within scope.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
15
EXT*/BALANCE
1
Total opcodes
14805
Flags
call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLVALUE
00000006: DUP1
00000007: ISZERO
00000008: PUSH2 0x0010
0000000b: JUMPI
0000000c: PUSH1 0x00
0000000e: DUP1
0000000f: REVERT
00000010: JUMPDEST
00000011: POP
00000012: PUSH1 0x04
00000014: CALLDATASIZE
00000015: LT
00000016: PUSH2 0x01d8
00000019: JUMPI
0000001a: PUSH1 0x00
0000001c: CALLDATALOAD
0000001d: PUSH1 0xe0
0000001f: SHR
00000020: DUP1
00000021: PUSH4 0x050a4d21
00000026: EQ
00000027: PUSH2 0x01dd
0000002a: JUMPI
0000002b: DUP1
0000002c: PUSH4 0x0902f1ac
00000031: EQ
00000032: PUSH2 0x0208
00000035: JUMPI
00000036: DUP1
00000037: PUSH4 0x0dfe1681
0000003c: EQ
0000003d: PUSH2 0x024f
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0x128acb08
00000047: EQ
00000048: PUSH2 0x0292
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0x1a686502
00000052: EQ
00000053: PUSH2 0x033f
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0x1dd19cb4
0000005d: EQ
0000005e: PUSH2 0x0375
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0x240a875a
00000068: EQ
00000069: PUSH2 0x037f
0000006c: JUMPI
0000006d: DUP1
0000006e: PUSH4 0x3b3bc70e
00000073: EQ
00000074: PUSH2 0x03a0
00000077: JUMPI
00000078: DUP1
00000079: PUSH4 0x490e6cbc
0000007e: EQ
0000007f: PUSH2 0x0432
00000082: JUMPI
00000083: DUP1
00000084: PUSH4 0x4f1eb3d8
00000089: EQ
0000008a: PUSH2 0x04bc
0000008d: JUMPI
0000008e: DUP1
0000008f: PUSH4 0x514ea4bf
00000094: EQ
00000095: PUSH2 0x050d
00000098: JUMPI
00000099: DUP1
0000009a: PUSH4 0x53e97868
0000009f: EQ
000000a0: PUSH2 0x0597
000000a3: JUMPI
000000a4: DUP1
000000a5: PUSH4 0x578b9a36
000000aa: EQ
000000ab: PUSH2 0x05aa
000000ae: JUMPI
000000af: DUP1
000000b0: PUSH4 0x6378ae44
000000b5: EQ
000000b6: PUSH2 0x05da
000000b9: JUMPI
000000ba: DUP1
000000bb: PUSH4 0x70cf754a
000000c0: EQ
000000c1: PUSH2 0x05f5
000000c4: JUMPI
000000c5: DUP1
000000c6: PUSH4 0x77f8c3a9
000000cb: EQ
000000cc: PUSH2 0x060a
000000cf: JUMPI
000000d0: DUP1
000000d1: PUSH4 0x7bd78025
000000d6: EQ
000000d7: PUSH2 0x0621
000000da: JUMPI
000000db: DUP1
000000dc: PUSH4 0x8380edb7
000000e1: EQ
000000e2: PUSH2 0x063d
000000e5: JUMPI
000000e6: DUP1
000000e7: PUSH4 0x8e005553
000000ec: EQ
000000ed: PUSH2 0x065e
000000f0: JUMPI
000000f1: DUP1
000000f2: PUSH4 0x97ce1c51
000000f7: EQ
000000f8: PUSH2 0x067f
000000fb: JUMPI
000000fc: DUP1
000000fd: PUSH4 0x9e4e0227
00000102: EQ
00000103: PUSH2 0x06e0
00000106: JUMPI
00000107: DUP1
00000108: PUSH4 0xa1eded87
0000010d: EQ
0000010e: PUSH2 0x077d
00000111: JUMPI
00000112: DUP1
00000113: PUSH4 0xaafe29c0
00000118: EQ
00000119: PUSH2 0x0799
0000011c: JUMPI
0000011d: DUP1
0000011e: PUSH4 0xbca57f81
00000123: EQ
00000124: PUSH2 0x086b
00000127: JUMPI
00000128: DUP1
00000129: PUSH4 0xc45a0155
0000012e: EQ
0000012f: PUSH2 0x088b
00000132: JUMPI
00000133: DUP1
00000134: PUSH4 0xc677e3e0
00000139: EQ
0000013a: PUSH2 0x08b2
0000013d: JUMPI
0000013e: DUP1
0000013f: PUSH4 0xcc1f97cf
00000144: EQ
00000145: PUSH2 0x08df
00000148: JUMPI
00000149: DUP1
0000014a: PUSH4 0xd0c93a7c
0000014f: EQ
00000150: PUSH2 0x0905
00000153: JUMPI
00000154: DUP1
00000155: PUSH4 0xd21220a7
0000015a: EQ
0000015b: PUSH2 0x0919
0000015e: JUMPI
0000015f: DUP1
00000160: PUSH4 0xd5c35a7e
00000165: EQ
00000166: PUSH2 0x0940
00000169: JUMPI
0000016a: DUP1
0000016b: PUSH4 0xd8544cf3
00000170: EQ
00000171: PUSH2 0x094d
00000174: JUMPI
00000175: DUP1
00000176: PUSH4 0xd8619037
0000017b: EQ
0000017c: PUSH2 0x0973
0000017f: JUMPI
00000180: DUP1
00000181: PUSH4 0xddca3f43
00000186: EQ
00000187: PUSH2 0x09a0
0000018a: JUMPI
0000018b: DUP1
0000018c: PUSH4 0xe76c01e4
00000191: EQ
00000192: PUSH2 0x09bf
00000195: JUMPI
00000196: DUP1
00000197: PUSH4 0xecdecf42
0000019c: EQ
0000019d: PUSH2 0x0a54
000001a0: JUMPI
000001a1: DUP1
000001a2: PUSH4 0xef01df4f
000001a7: EQ
000001a8: PUSH2 0x0a5d
000001ab: JUMPI
000001ac: DUP1
000001ad: PUSH4 0xf085a610
000001b2: EQ
000001b3: PUSH2 0x0a70
000001b6: JUMPI
000001b7: DUP1
000001b8: PUSH4 0xf30dba93
000001bd: EQ
000001be: PUSH2 0x0a90
000001c1: JUMPI
000001c2: DUP1
000001c3: PUSH4 0xf637731d
000001c8: EQ
000001c9: PUSH2 0x0b2a
000001cc: JUMPI
000001cd: DUP1
000001ce: PUSH4 0xfff6cae9
000001d3: EQ
000001d4: PUSH2 0x0b50
000001d7: JUMPI
000001d8: JUMPDEST
000001d9: PUSH1 0x00
000001db: DUP1
000001dc: REVERT
000001dd: JUMPDEST
000001de: PUSH1 0x09
000001e0: SLOAD
000001e1: PUSH2 0x01f1
000001e4: SWAP1
000001e5: PUSH4 0x01000000
000001ea: SWAP1
000001eb: DIV
000001ec: PUSH1 0x02
000001ee: SIGNEXTEND
000001ef: DUP2
000001f0: JUMP
000001f1: JUMPDEST
000001f2: PUSH1 0x40
000001f4: DUP1
000001f5: MLOAD
000001f6: PUSH1 0x02
000001f8: SWAP3
000001f9: SWAP1
000001fa: SWAP3
000001fb: SIGNEXTEND
000001fc: DUP3
000001fd: MSTORE
000001fe: MLOAD
000001ff: SWAP1
00000200: DUP2
00000201: SWAP1
00000202: SUB
00000203: PUSH1 0x20
00000205: ADD
00000206: SWAP1
00000207: RETURN
00000208: JUMPDEST
00000209: PUSH1 0x0c
0000020b: SLOAD
0000020c: PUSH1 0x01
0000020e: PUSH1 0x01
00000210: PUSH1 0x80
00000212: SHL
00000213: SUB
00000214: DUP1
00000215: DUP3
00000216: AND
00000217: SWAP2
00000218: PUSH1 0x01
0000021a: PUSH1 0x80
0000021c: SHL
0000021d: SWAP1
0000021e: DIV
0000021f: AND
00000220: JUMPDEST
00000221: PUSH1 0x40
00000223: MLOAD
00000224: DUP1
00000225: DUP4
00000226: PUSH1 0x01
00000228: PUSH1 0x01
0000022a: PUSH1 0x80
0000022c: SHL
0000022d: SUB
0000022e: AND
0000022f: DUP2
00000230: MSTORE
00000231: PUSH1 0x20
00000233: ADD
00000234: DUP3
00000235: PUSH1 0x01
00000237: PUSH1 0x01
00000239: PUSH1 0x80
0000023b: SHL
0000023c: SUB
0000023d: AND
0000023e: DUP2
0000023f: MSTORE
00000240: PUSH1 0x20
00000242: ADD
00000243: SWAP3
00000244: POP
00000245: POP
00000246: POP
00000247: PUSH1 0x40
00000249: MLOAD
0000024a: DUP1
0000024b: SWAP2
0000024c: SUB
0000024d: SWAP1
0000024e: RETURN
0000024f: JUMPDEST
00000250: PUSH2 0x0276
00000253: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00000274: DUP2
00000275: JUMP
00000276: JUMPDEST
00000277: PUSH1 0x40
00000279: DUP1
0000027a: MLOAD
0000027b: PUSH1 0x01
0000027d: PUSH1 0x01
0000027f: PUSH1 0xa0
00000281: SHL
00000282: SUB
00000283: SWAP1
00000284: SWAP3
00000285: AND
00000286: DUP3
00000287: MSTORE
00000288: MLOAD
00000289: SWAP1
0000028a: DUP2
0000028b: SWAP1
0000028c: SUB
0000028d: PUSH1 0x20
0000028f: ADD
00000290: SWAP1
00000291: RETURN
00000292: JUMPDEST
00000293: PUSH2 0x0326
00000296: PUSH1 0x04
00000298: DUP1
00000299: CALLDATASIZE
0000029a: SUB
0000029b: PUSH1 0xa0
0000029d: DUP2
0000029e: LT
0000029f: ISZERO
000002a0: PUSH2 0x02a8
000002a3: JUMPI
000002a4: PUSH1 0x00
000002a6: DUP1
000002a7: REVERT
000002a8: JUMPDEST
000002a9: PUSH1 0x01
000002ab: PUSH1 0x01
000002ad: PUSH1 0xa0
000002af: SHL
000002b0: SUB
000002b1: DUP3
000002b2: CALLDATALOAD
000002b3: DUP2
000002b4: AND
000002b5: SWAP3
000002b6: PUSH1 0x20
000002b8: DUP2
000002b9: ADD
000002ba: CALLDATALOAD
000002bb: ISZERO
000002bc: ISZERO
000002bd: SWAP3
000002be: PUSH1 0x40
000002c0: DUP3
000002c1: ADD
000002c2: CALLDATALOAD
000002c3: SWAP3
000002c4: PUSH1 0x60
000002c6: DUP4
000002c7: ADD
000002c8: CALLDATALOAD
000002c9: AND
000002ca: SWAP2
000002cb: SWAP1
000002cc: DUP2
000002cd: ADD
000002ce: SWAP1
000002cf: PUSH1 0xa0
000002d1: DUP2
000002d2: ADD
000002d3: PUSH1 0x80
000002d5: DUP3
000002d6: ADD
000002d7: CALLDATALOAD
000002d8: PUSH1 0x01
000002da: PUSH1 0x20
000002dc: SHL
000002dd: DUP2
000002de: GT
000002df: ISZERO
000002e0: PUSH2 0x02e8
000002e3: JUMPI
000002e4: PUSH1 0x00
000002e6: DUP1
000002e7: REVERT
000002e8: JUMPDEST
000002e9: DUP3
000002ea: ADD
000002eb: DUP4
000002ec: PUSH1 0x20
000002ee: DUP3
000002ef: ADD
000002f0: GT
000002f1: ISZERO
000002f2: PUSH2 0x02fa
000002f5: JUMPI
000002f6: PUSH1 0x00
000002f8: DUP1
000002f9: REVERT
000002fa: JUMPDEST
000002fb: DUP1
000002fc: CALLDATALOAD
000002fd: SWAP1
000002fe: PUSH1 0x20
00000300: ADD
00000301: SWAP2
00000302: DUP5
00000303: PUSH1 0x01
00000305: DUP4
00000306: MUL
00000307: DUP5
00000308: ADD
00000309: GT
0000030a: PUSH1 0x01
0000030c: PUSH1 0x20
0000030e: SHL
0000030f: DUP4
00000310: GT
00000311: OR
00000312: ISZERO
00000313: PUSH2 0x031b
00000316: JUMPI
00000317: PUSH1 0x00
00000319: DUP1
0000031a: REVERT
0000031b: JUMPDEST
0000031c: POP
0000031d: SWAP1
0000031e: SWAP3
0000031f: POP
00000320: SWAP1
00000321: POP
00000322: PUSH2 0x0b58
00000325: JUMP
00000326: JUMPDEST
00000327: PUSH1 0x40
00000329: DUP1
0000032a: MLOAD
0000032b: SWAP3
0000032c: DUP4
0000032d: MSTORE
0000032e: PUSH1 0x20
00000330: DUP4
00000331: ADD
00000332: SWAP2
00000333: SWAP1
00000334: SWAP2
00000335: MSTORE
00000336: DUP1
00000337: MLOAD
00000338: SWAP2
00000339: DUP3
0000033a: SWAP1
0000033b: SUB
0000033c: ADD
0000033d: SWAP1
0000033e: RETURN
0000033f: JUMPDEST
00000340: PUSH1 0x09
00000342: SLOAD
00000343: PUSH2 0x0359
00000346: SWAP1
00000347: PUSH1 0x01
00000349: PUSH1 0x30
0000034b: SHL
0000034c: SWAP1
0000034d: DIV
0000034e: PUSH1 0x01
00000350: PUSH1 0x01
00000352: PUSH1 0x80
00000354: SHL
00000355: SUB
00000356: AND
00000357: DUP2
00000358: JUMP
00000359: JUMPDEST
0000035a: PUSH1 0x40
0000035c: DUP1
0000035d: MLOAD
0000035e: PUSH1 0x01
00000360: PUSH1 0x01
00000362: PUSH1 0x80
00000364: SHL
00000365: SUB
00000366: SWAP1
00000367: SWAP3
00000368: AND
00000369: DUP3
0000036a: MSTORE
0000036b: MLOAD
0000036c: SWAP1
0000036d: DUP2
0000036e: SWAP1
0000036f: SUB
00000370: PUSH1 0x20
00000372: ADD
00000373: SWAP1
00000374: RETURN
00000375: JUMPDEST
00000376: PUSH2 0x037d
00000379: PUSH2 0x0d3d
0000037c: JUMP
0000037d: JUMPDEST
0000037e: STOP
0000037f: JUMPDEST
00000380: PUSH2 0x037d
00000383: PUSH1 0x04
00000385: DUP1
00000386: CALLDATASIZE
00000387: SUB
00000388: PUSH1 0x20
0000038a: DUP2
0000038b: LT
0000038c: ISZERO
0000038d: PUSH2 0x0395
00000390: JUMPI
00000391: PUSH1 0x00
00000393: DUP1
00000394: REVERT
00000395: JUMPDEST
00000396: POP
00000397: CALLDATALOAD
00000398: PUSH2 0xffff
0000039b: AND
0000039c: PUSH2 0x0d60
0000039f: JUMP
000003a0: JUMPDEST
000003a1: PUSH2 0x0326
000003a4: PUSH1 0x04
000003a6: DUP1
000003a7: CALLDATASIZE
000003a8: SUB
000003a9: PUSH1 0x80
000003ab: DUP2
000003ac: LT
000003ad: ISZERO
000003ae: PUSH2 0x03b6
000003b1: JUMPI
000003b2: PUSH1 0x00
000003b4: DUP1
000003b5: REVERT
000003b6: JUMPDEST
000003b7: DUP2
000003b8: CALLDATALOAD
000003b9: PUSH1 0x02
000003bb: SWAP1
000003bc: DUP2
000003bd: SIGNEXTEND
000003be: SWAP3
000003bf: PUSH1 0x20
000003c1: DUP2
000003c2: ADD
000003c3: CALLDATALOAD
000003c4: SWAP1
000003c5: SWAP2
000003c6: SIGNEXTEND
000003c7: SWAP2
000003c8: PUSH1 0x01
000003ca: PUSH1 0x01
000003cc: PUSH1 0x80
000003ce: SHL
000003cf: SUB
000003d0: PUSH1 0x40
000003d2: DUP4
000003d3: ADD
000003d4: CALLDATALOAD
000003d5: AND
000003d6: SWAP2
000003d7: SWAP1
000003d8: DUP2
000003d9: ADD
000003da: SWAP1
000003db: PUSH1 0x80
000003dd: DUP2
000003de: ADD
000003df: PUSH1 0x60
000003e1: DUP3
000003e2: ADD
000003e3: CALLDATALOAD
000003e4: PUSH1 0x01
000003e6: PUSH1 0x20
000003e8: SHL
000003e9: DUP2
000003ea: GT
000003eb: ISZERO
000003ec: PUSH2 0x03f4
000003ef: JUMPI
000003f0: PUSH1 0x00
000003f2: DUP1
000003f3: REVERT
000003f4: JUMPDEST
000003f5: DUP3
000003f6: ADD
000003f7: DUP4
000003f8: PUSH1 0x20
000003fa: DUP3
000003fb: ADD
000003fc: GT
000003fd: ISZERO
000003fe: PUSH2 0x0406
00000401: JUMPI
00000402: PUSH1 0x00
00000404: DUP1
00000405: REVERT
00000406: JUMPDEST
00000407: DUP1
00000408: CALLDATALOAD
00000409: SWAP1
0000040a: PUSH1 0x20
0000040c: ADD
0000040d: SWAP2
0000040e: DUP5
0000040f: PUSH1 0x01
00000411: DUP4
00000412: MUL
00000413: DUP5
00000414: ADD
00000415: GT
00000416: PUSH1 0x01
00000418: PUSH1 0x20
0000041a: SHL
0000041b: DUP4
0000041c: GT
0000041d: OR
0000041e: ISZERO
0000041f: PUSH2 0x0427
00000422: JUMPI
00000423: PUSH1 0x00
00000425: DUP1
00000426: REVERT
00000427: JUMPDEST
00000428: POP
00000429: SWAP1
0000042a: SWAP3
0000042b: POP
0000042c: SWAP1
0000042d: POP
0000042e: PUSH2 0x0ddf
00000431: JUMP
00000432: JUMPDEST
00000433: PUSH2 0x037d
00000436: PUSH1 0x04
00000438: DUP1
00000439: CALLDATASIZE
0000043a: SUB
0000043b: PUSH1 0x80
0000043d: DUP2
0000043e: LT
0000043f: ISZERO
00000440: PUSH2 0x0448
00000443: JUMPI
00000444: PUSH1 0x00
00000446: DUP1
00000447: REVERT
00000448: JUMPDEST
00000449: PUSH1 0x01
0000044b: PUSH1 0x01
0000044d: PUSH1 0xa0
0000044f: SHL
00000450: SUB
00000451: DUP3
00000452: CALLDATALOAD
00000453: AND
00000454: SWAP2
00000455: PUSH1 0x20
00000457: DUP2
00000458: ADD
00000459: CALLDATALOAD
0000045a: SWAP2
0000045b: PUSH1 0x40
0000045d: DUP3
0000045e: ADD
0000045f: CALLDATALOAD
00000460: SWAP2
00000461: SWAP1
00000462: DUP2
00000463: ADD
00000464: SWAP1
00000465: PUSH1 0x80
00000467: DUP2
00000468: ADD
00000469: PUSH1 0x60
0000046b: DUP3
0000046c: ADD
0000046d: CALLDATALOAD
0000046e: PUSH1 0x01
00000470: PUSH1 0x20
00000472: SHL
00000473: DUP2
00000474: GT
00000475: ISZERO
00000476: PUSH2 0x047e
00000479: JUMPI
0000047a: PUSH1 0x00
0000047c: DUP1
0000047d: REVERT
0000047e: JUMPDEST
0000047f: DUP3
00000480: ADD
00000481: DUP4
00000482: PUSH1 0x20
00000484: DUP3
00000485: ADD
00000486: GT
00000487: ISZERO
00000488: PUSH2 0x0490
0000048b: JUMPI
0000048c: PUSH1 0x00
0000048e: DUP1
0000048f: REVERT
00000490: JUMPDEST
00000491: DUP1
00000492: CALLDATALOAD
00000493: SWAP1
00000494: PUSH1 0x20
00000496: ADD
00000497: SWAP2
00000498: DUP5
00000499: PUSH1 0x01
0000049b: DUP4
0000049c: MUL
0000049d: DUP5
0000049e: ADD
0000049f: GT
000004a0: PUSH1 0x01
000004a2: PUSH1 0x20
000004a4: SHL
000004a5: DUP4
000004a6: GT
000004a7: OR
000004a8: ISZERO
000004a9: PUSH2 0x04b1
000004ac: JUMPI
000004ad: PUSH1 0x00
000004af: DUP1
000004b0: REVERT
000004b1: JUMPDEST
000004b2: POP
000004b3: SWAP1
000004b4: SWAP3
000004b5: POP
000004b6: SWAP1
000004b7: POP
000004b8: PUSH2 0x0fe3
000004bb: JUMP
000004bc: JUMPDEST
000004bd: PUSH2 0x0220
000004c0: PUSH1 0x04
000004c2: DUP1
000004c3: CALLDATASIZE
000004c4: SUB
000004c5: PUSH1 0xa0
000004c7: DUP2
000004c8: LT
000004c9: ISZERO
000004ca: PUSH2 0x04d2
000004cd: JUMPI
000004ce: PUSH1 0x00
000004d0: DUP1
000004d1: REVERT
000004d2: JUMPDEST
000004d3: POP
000004d4: PUSH1 0x01
000004d6: PUSH1 0x01
000004d8: PUSH1 0xa0
000004da: SHL
000004db: SUB
000004dc: DUP2
000004dd: CALLDATALOAD
000004de: AND
000004df: SWAP1
000004e0: PUSH1 0x20
000004e2: DUP2
000004e3: ADD
000004e4: CALLDATALOAD
000004e5: PUSH1 0x02
000004e7: SWAP1
000004e8: DUP2
000004e9: SIGNEXTEND
000004ea: SWAP2
000004eb: PUSH1 0x40
000004ed: DUP2
000004ee: ADD
000004ef: CALLDATALOAD
000004f0: SWAP1
000004f1: SWAP2
000004f2: SIGNEXTEND
000004f3: SWAP1
000004f4: PUSH1 0x01
000004f6: PUSH1 0x01
000004f8: PUSH1 0x80
000004fa: SHL
000004fb: SUB
000004fc: PUSH1 0x60
000004fe: DUP3
000004ff: ADD
00000500: CALLDATALOAD
00000501: DUP2
00000502: AND
00000503: SWAP2
00000504: PUSH1 0x80
00000506: ADD
00000507: CALLDATALOAD
00000508: AND
00000509: PUSH2 0x1395
0000050c: JUMP
0000050d: JUMPDEST
0000050e: PUSH2 0x0560
00000511: PUSH1 0x04
00000513: DUP1
00000514: CALLDATASIZE
00000515: SUB
00000516: PUSH1 0x20
00000518: DUP2
00000519: LT
0000051a: ISZERO
0000051b: PUSH2 0x0523
0000051e: JUMPI
0000051f: PUSH1 0x00
00000521: DUP1
00000522: REVERT
00000523: JUMPDEST
00000524: POP
00000525: PUSH1 0x0b
00000527: PUSH1 0x20
00000529: MSTORE
0000052a: CALLDATALOAD
0000052b: PUSH1 0x00
0000052d: SWAP1
0000052e: DUP2
0000052f: MSTORE
00000530: PUSH1 0x40
00000532: SWAP1
00000533: KECCAK256
00000534: DUP1
00000535: SLOAD
00000536: PUSH1 0x01
00000538: DUP3
00000539: ADD
0000053a: SLOAD
0000053b: PUSH1 0x02
0000053d: DUP4
0000053e: ADD
0000053f: SLOAD
00000540: PUSH1 0x03
00000542: SWAP1
00000543: SWAP4
00000544: ADD
00000545: SLOAD
00000546: SWAP2
00000547: SWAP3
00000548: SWAP1
00000549: SWAP2
0000054a: PUSH1 0x01
0000054c: PUSH1 0x01
0000054e: PUSH1 0x80
00000550: SHL
00000551: SUB
00000552: DUP1
00000553: DUP3
00000554: AND
00000555: SWAP2
00000556: PUSH1 0x01
00000558: PUSH1 0x80
0000055a: SHL
0000055b: SWAP1
0000055c: DIV
0000055d: AND
0000055e: DUP6
0000055f: JUMP
00000560: JUMPDEST
00000561: PUSH1 0x40
00000563: DUP1
00000564: MLOAD
00000565: SWAP6
00000566: DUP7
00000567: MSTORE
00000568: PUSH1 0x20
0000056a: DUP7
0000056b: ADD
0000056c: SWAP5
0000056d: SWAP1
0000056e: SWAP5
0000056f: MSTORE
00000570: DUP5
00000571: DUP5
00000572: ADD
00000573: SWAP3
00000574: SWAP1
00000575: SWAP3
00000576: MSTORE
00000577: PUSH1 0x01
00000579: PUSH1 0x01
0000057b: PUSH1 0x80
0000057d: SHL
0000057e: SUB
0000057f: SWAP1
00000580: DUP2
00000581: AND
00000582: PUSH1 0x60
00000584: DUP6
00000585: ADD
00000586: MSTORE
00000587: AND
00000588: PUSH1 0x80
0000058a: DUP4
0000058b: ADD
0000058c: MSTORE
0000058d: MLOAD
0000058e: SWAP1
0000058f: DUP2
00000590: SWAP1
00000591: SUB
00000592: PUSH1 0xa0
00000594: ADD
00000595: SWAP1
00000596: RETURN
00000597: JUMPDEST
00000598: PUSH1 0x07
0000059a: SLOAD
0000059b: PUSH2 0x0276
0000059e: SWAP1
0000059f: PUSH1 0x01
000005a1: PUSH1 0x01
000005a3: PUSH1 0xa0
000005a5: SHL
000005a6: SUB
000005a7: AND
000005a8: DUP2
000005a9: JUMP
000005aa: JUMPDEST
000005ab: PUSH1 0x09
000005ad: SLOAD
000005ae: PUSH2 0x05c1
000005b1: SWAP1
000005b2: PUSH1 0x01
000005b4: PUSH1 0xc8
000005b6: SHL
000005b7: SWAP1
000005b8: DIV
000005b9: PUSH4 0xffffffff
000005be: AND
000005bf: DUP2
000005c0: JUMP
000005c1: JUMPDEST
000005c2: PUSH1 0x40
000005c4: DUP1
000005c5: MLOAD
000005c6: PUSH4 0xffffffff
000005cb: SWAP1
000005cc: SWAP3
000005cd: AND
000005ce: DUP3
000005cf: MSTORE
000005d0: MLOAD
000005d1: SWAP1
000005d2: DUP2
000005d3: SWAP1
000005d4: SUB
000005d5: PUSH1 0x20
000005d7: ADD
000005d8: SWAP1
000005d9: RETURN
000005da: JUMPDEST
000005db: PUSH2 0x05e3
000005de: PUSH1 0x00
000005e0: SLOAD
000005e1: DUP2
000005e2: JUMP
000005e3: JUMPDEST
000005e4: PUSH1 0x40
000005e6: DUP1
000005e7: MLOAD
000005e8: SWAP2
000005e9: DUP3
000005ea: MSTORE
000005eb: MLOAD
000005ec: SWAP1
000005ed: DUP2
000005ee: SWAP1
000005ef: SUB
000005f0: PUSH1 0x20
000005f2: ADD
000005f3: SWAP1
000005f4: RETURN
000005f5: JUMPDEST
000005f6: PUSH2 0x0359
000005f9: PUSH14 0x09745258e83de0d0f4e400fce799
00000608: DUP2
00000609: JUMP
0000060a: JUMPDEST
0000060b: PUSH1 0x04
0000060d: SLOAD
0000060e: PUSH2 0x05c1
00000611: SWAP1
00000612: PUSH1 0x01
00000614: PUSH1 0xd0
00000616: SHL
00000617: SWAP1
00000618: DIV
00000619: PUSH4 0xffffffff
0000061e: AND
0000061f: DUP2
00000620: JUMP
00000621: JUMPDEST
00000622: PUSH1 0x04
00000624: SLOAD
00000625: PUSH1 0x01
00000627: PUSH1 0x01
00000629: PUSH1 0x68
0000062b: SHL
0000062c: SUB
0000062d: DUP1
0000062e: DUP3
0000062f: AND
00000630: SWAP2
00000631: PUSH1 0x01
00000633: PUSH1 0x68
00000635: SHL
00000636: SWAP1
00000637: DIV
00000638: AND
00000639: PUSH2 0x0220
0000063c: JUMP
0000063d: JUMPDEST
0000063e: PUSH1 0x02
00000640: SLOAD
00000641: PUSH1 0x01
00000643: PUSH1 0xe0
00000645: SHL
00000646: SWAP1
00000647: DIV
00000648: PUSH1 0xff
0000064a: AND
0000064b: PUSH1 0x40
0000064d: DUP1
0000064e: MLOAD
0000064f: SWAP2
00000650: ISZERO
00000651: ISZERO
00000652: DUP3
00000653: MSTORE
00000654: MLOAD
00000655: SWAP1
00000656: DUP2
00000657: SWAP1
00000658: SUB
00000659: PUSH1 0x20
0000065b: ADD
0000065c: SWAP1
0000065d: RETURN
0000065e: JUMPDEST
0000065f: PUSH2 0x037d
00000662: PUSH1 0x04
00000664: DUP1
00000665: CALLDATASIZE
00000666: SUB
00000667: PUSH1 0x20
00000669: DUP2
0000066a: LT
0000066b: ISZERO
0000066c: PUSH2 0x0674
0000066f: JUMPI
00000670: PUSH1 0x00
00000672: DUP1
00000673: REVERT
00000674: JUMPDEST
00000675: POP
00000676: CALLDATALOAD
00000677: PUSH2 0xffff
0000067a: AND
0000067b: PUSH2 0x1551
0000067e: JUMP
0000067f: JUMPDEST
00000680: PUSH2 0x0687
00000683: PUSH2 0x15bc
00000686: JUMP
00000687: JUMPDEST
00000688: PUSH1 0x40
0000068a: DUP1
0000068b: MLOAD
0000068c: PUSH1 0x01
0000068e: PUSH1 0x01
00000690: PUSH1 0xa0
00000692: SHL
00000693: SUB
00000694: SWAP1
00000695: SWAP9
00000696: AND
00000697: DUP9
00000698: MSTORE
00000699: PUSH1 0x02
0000069b: SWAP7
0000069c: DUP8
0000069d: SIGNEXTEND
0000069e: PUSH1 0x20
000006a0: DUP10
000006a1: ADD
000006a2: MSTORE
000006a3: PUSH2 0xffff
000006a6: SWAP1
000006a7: SWAP6
000006a8: AND
000006a9: DUP8
000006aa: DUP7
000006ab: ADD
000006ac: MSTORE
000006ad: PUSH1 0xff
000006af: SWAP1
000006b0: SWAP4
000006b1: AND
000006b2: PUSH1 0x60
000006b4: DUP8
000006b5: ADD
000006b6: MSTORE
000006b7: PUSH1 0x01
000006b9: PUSH1 0x01
000006bb: PUSH1 0x80
000006bd: SHL
000006be: SUB
000006bf: SWAP1
000006c0: SWAP2
000006c1: AND
000006c2: PUSH1 0x80
000006c4: DUP7
000006c5: ADD
000006c6: MSTORE
000006c7: DUP4
000006c8: SIGNEXTEND
000006c9: PUSH1 0xa0
000006cb: DUP6
000006cc: ADD
000006cd: MSTORE
000006ce: SWAP1
000006cf: SWAP2
000006d0: SIGNEXTEND
000006d1: PUSH1 0xc0
000006d3: DUP4
000006d4: ADD
000006d5: MSTORE
000006d6: MLOAD
000006d7: SWAP1
000006d8: DUP2
000006d9: SWAP1
000006da: SUB
000006db: PUSH1 0xe0
000006dd: ADD
000006de: SWAP1
000006df: RETURN
000006e0: JUMPDEST
000006e1: PUSH2 0x0326
000006e4: PUSH1 0x04
000006e6: DUP1
000006e7: CALLDATASIZE
000006e8: SUB
000006e9: PUSH1 0xc0
000006eb: DUP2
000006ec: LT
000006ed: ISZERO
000006ee: PUSH2 0x06f6
000006f1: JUMPI
000006f2: PUSH1 0x00
000006f4: DUP1
000006f5: REVERT
000006f6: JUMPDEST
000006f7: PUSH1 0x01
000006f9: PUSH1 0x01
000006fb: PUSH1 0xa0
000006fd: SHL
000006fe: SUB
000006ff: DUP3
00000700: CALLDATALOAD
00000701: DUP2
00000702: AND
00000703: SWAP3
00000704: PUSH1 0x20
00000706: DUP2
00000707: ADD
00000708: CALLDATALOAD
00000709: DUP3
0000070a: AND
0000070b: SWAP3
0000070c: PUSH1 0x40
0000070e: DUP3
0000070f: ADD
00000710: CALLDATALOAD
00000711: ISZERO
00000712: ISZERO
00000713: SWAP3
00000714: PUSH1 0x60
00000716: DUP4
00000717: ADD
00000718: CALLDATALOAD
00000719: SWAP3
0000071a: PUSH1 0x80
0000071c: DUP2
0000071d: ADD
0000071e: CALLDATALOAD
0000071f: SWAP1
00000720: SWAP2
00000721: AND
00000722: SWAP2
00000723: DUP2
00000724: ADD
00000725: SWAP1
00000726: PUSH1 0xc0
00000728: DUP2
00000729: ADD
0000072a: PUSH1 0xa0
0000072c: DUP3
0000072d: ADD
0000072e: CALLDATALOAD
0000072f: PUSH1 0x01
00000731: PUSH1 0x20
00000733: SHL
00000734: DUP2
00000735: GT
00000736: ISZERO
00000737: PUSH2 0x073f
0000073a: JUMPI
0000073b: PUSH1 0x00
0000073d: DUP1
0000073e: REVERT
0000073f: JUMPDEST
00000740: DUP3
00000741: ADD
00000742: DUP4
00000743: PUSH1 0x20
00000745: DUP3
00000746: ADD
00000747: GT
00000748: ISZERO
00000749: PUSH2 0x0751
0000074c: JUMPI
0000074d: PUSH1 0x00
0000074f: DUP1
00000750: REVERT
00000751: JUMPDEST
00000752: DUP1
00000753: CALLDATALOAD
00000754: SWAP1
00000755: PUSH1 0x20
00000757: ADD
00000758: SWAP2
00000759: DUP5
0000075a: PUSH1 0x01
0000075c: DUP4
0000075d: MUL
0000075e: DUP5
0000075f: ADD
00000760: GT
00000761: PUSH1 0x01
00000763: PUSH1 0x20
00000765: SHL
00000766: DUP4
00000767: GT
00000768: OR
00000769: ISZERO
0000076a: PUSH2 0x0772
0000076d: JUMPI
0000076e: PUSH1 0x00
00000770: DUP1
00000771: REVERT
00000772: JUMPDEST
00000773: POP
00000774: SWAP1
00000775: SWAP3
00000776: POP
00000777: SWAP1
00000778: POP
00000779: PUSH2 0x164f
0000077c: JUMP
0000077d: JUMPDEST
0000077e: PUSH1 0x05
00000780: SLOAD
00000781: PUSH1 0x01
00000783: PUSH1 0x01
00000785: PUSH1 0x68
00000787: SHL
00000788: SUB
00000789: DUP1
0000078a: DUP3
0000078b: AND
0000078c: SWAP2
0000078d: PUSH1 0x01
0000078f: PUSH1 0x68
00000791: SHL
00000792: SWAP1
00000793: DIV
00000794: AND
00000795: PUSH2 0x0220
00000798: JUMP
00000799: JUMPDEST
0000079a: PUSH2 0x0844
0000079d: PUSH1 0x04
0000079f: DUP1
000007a0: CALLDATASIZE
000007a1: SUB
000007a2: PUSH1 0xc0
000007a4: DUP2
000007a5: LT
000007a6: ISZERO
000007a7: PUSH2 0x07af
000007aa: JUMPI
000007ab: PUSH1 0x00
000007ad: DUP1
000007ae: REVERT
000007af: JUMPDEST
000007b0: PUSH1 0x01
000007b2: PUSH1 0x01
000007b4: PUSH1 0xa0
000007b6: SHL
000007b7: SUB
000007b8: DUP3
000007b9: CALLDATALOAD
000007ba: DUP2
000007bb: AND
000007bc: SWAP3
000007bd: PUSH1 0x20
000007bf: DUP2
000007c0: ADD
000007c1: CALLDATALOAD
000007c2: SWAP1
000007c3: SWAP2
000007c4: AND
000007c5: SWAP2
000007c6: PUSH1 0x40
000007c8: DUP3
000007c9: ADD
000007ca: CALLDATALOAD
000007cb: PUSH1 0x02
000007cd: SWAP1
000007ce: DUP2
000007cf: SIGNEXTEND
000007d0: SWAP3
000007d1: PUSH1 0x60
000007d3: DUP2
000007d4: ADD
000007d5: CALLDATALOAD
000007d6: SWAP1
000007d7: SWAP2
000007d8: SIGNEXTEND
000007d9: SWAP2
000007da: PUSH1 0x01
000007dc: PUSH1 0x01
000007de: PUSH1 0x80
000007e0: SHL
000007e1: SUB
000007e2: PUSH1 0x80
000007e4: DUP4
000007e5: ADD
000007e6: CALLDATALOAD
000007e7: AND
000007e8: SWAP2
000007e9: SWAP1
000007ea: DUP2
000007eb: ADD
000007ec: SWAP1
000007ed: PUSH1 0xc0
000007ef: DUP2
000007f0: ADD
000007f1: PUSH1 0xa0
000007f3: DUP3
000007f4: ADD
000007f5: CALLDATALOAD
000007f6: PUSH1 0x01
000007f8: PUSH1 0x20
000007fa: SHL
000007fb: DUP2
000007fc: GT
000007fd: ISZERO
000007fe: PUSH2 0x0806
00000801: JUMPI
00000802: PUSH1 0x00
00000804: DUP1
00000805: REVERT
00000806: JUMPDEST
00000807: DUP3
00000808: ADD
00000809: DUP4
0000080a: PUSH1 0x20
0000080c: DUP3
0000080d: ADD
0000080e: GT
0000080f: ISZERO
00000810: PUSH2 0x0818
00000813: JUMPI
00000814: PUSH1 0x00
00000816: DUP1
00000817: REVERT
00000818: JUMPDEST
00000819: DUP1
0000081a: CALLDATALOAD
0000081b: SWAP1
0000081c: PUSH1 0x20
0000081e: ADD
0000081f: SWAP2
00000820: DUP5
00000821: PUSH1 0x01
00000823: DUP4
00000824: MUL
00000825: DUP5
00000826: ADD
00000827: GT
00000828: PUSH1 0x01
0000082a: PUSH1 0x20
0000082c: SHL
0000082d: DUP4
0000082e: GT
0000082f: OR
00000830: ISZERO
00000831: PUSH2 0x0839
00000834: JUMPI
00000835: PUSH1 0x00
00000837: DUP1
00000838: REVERT
00000839: JUMPDEST
0000083a: POP
0000083b: SWAP1
0000083c: SWAP3
0000083d: POP
0000083e: SWAP1
0000083f: POP
00000840: PUSH2 0x1937
00000843: JUMP
00000844: JUMPDEST
00000845: PUSH1 0x40
00000847: DUP1
00000848: MLOAD
00000849: SWAP4
0000084a: DUP5
0000084b: MSTORE
0000084c: PUSH1 0x20
0000084e: DUP5
0000084f: ADD
00000850: SWAP3
00000851: SWAP1
00000852: SWAP3
00000853: MSTORE
00000854: PUSH1 0x01
00000856: PUSH1 0x01
00000858: PUSH1 0x80
0000085a: SHL
0000085b: SUB
0000085c: AND
0000085d: DUP3
0000085e: DUP3
0000085f: ADD
00000860: MSTORE
00000861: MLOAD
00000862: SWAP1
00000863: DUP2
00000864: SWAP1
00000865: SUB
00000866: PUSH1 0x60
00000868: ADD
00000869: SWAP1
0000086a: RETURN
0000086b: JUMPDEST
0000086c: PUSH2 0x037d
0000086f: PUSH1 0x04
00000871: DUP1
00000872: CALLDATASIZE
00000873: SUB
00000874: PUSH1 0x20
00000876: DUP2
00000877: LT
00000878: ISZERO
00000879: PUSH2 0x0881
0000087c: JUMPI
0000087d: PUSH1 0x00
0000087f: DUP1
00000880: REVERT
00000881: JUMPDEST
00000882: POP
00000883: CALLDATALOAD
00000884: PUSH1 0xff
00000886: AND
00000887: PUSH2 0x1cd7
0000088a: JUMP
0000088b: JUMPDEST
0000088c: PUSH2 0x0276
0000088f: PUSH32 0x000000000000000000000000fb8ed3485efa29a0e4bed93351dd51b59fc4b0f0
000008b0: DUP2
000008b1: JUMP
000008b2: JUMPDEST
000008b3: PUSH2 0x05e3
000008b6: PUSH1 0x04
000008b8: DUP1
000008b9: CALLDATASIZE
000008ba: SUB
000008bb: PUSH1 0x20
000008bd: DUP2
000008be: LT
000008bf: ISZERO
000008c0: PUSH2 0x08c8
000008c3: JUMPI
000008c4: PUSH1 0x00
000008c6: DUP1
000008c7: REVERT
000008c8: JUMPDEST
000008c9: POP
000008ca: PUSH1 0x08
000008cc: PUSH1 0x20
000008ce: MSTORE
000008cf: CALLDATALOAD
000008d0: PUSH1 0x01
000008d2: SIGNEXTEND
000008d3: PUSH1 0x00
000008d5: SWAP1
000008d6: DUP2
000008d7: MSTORE
000008d8: PUSH1 0x40
000008da: SWAP1
000008db: KECCAK256
000008dc: SLOAD
000008dd: DUP2
000008de: JUMP
000008df: JUMPDEST
000008e0: PUSH2 0x037d
000008e3: PUSH1 0x04
000008e5: DUP1
000008e6: CALLDATASIZE
000008e7: SUB
000008e8: PUSH1 0x20
000008ea: DUP2
000008eb: LT
000008ec: ISZERO
000008ed: PUSH2 0x08f5
000008f0: JUMPI
000008f1: PUSH1 0x00
000008f3: DUP1
000008f4: REVERT
000008f5: JUMPDEST
000008f6: POP
000008f7: CALLDATALOAD
000008f8: PUSH1 0x01
000008fa: PUSH1 0x01
000008fc: PUSH1 0xa0
000008fe: SHL
000008ff: SUB
00000900: AND
00000901: PUSH2 0x1d2a
00000904: JUMP
00000905: JUMPDEST
00000906: PUSH1 0x09
00000908: SLOAD
00000909: PUSH2 0x01f1
0000090c: SWAP1
0000090d: PUSH1 0x01
0000090f: PUSH1 0xb0
00000911: SHL
00000912: SWAP1
00000913: DIV
00000914: PUSH1 0x02
00000916: SIGNEXTEND
00000917: DUP2
00000918: JUMP
00000919: JUMPDEST
0000091a: PUSH2 0x0276
0000091d: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
0000093e: DUP2
0000093f: JUMP
00000940: JUMPDEST
00000941: PUSH1 0x09
00000943: SLOAD
00000944: PUSH2 0x01f1
00000947: SWAP1
00000948: PUSH1 0x02
0000094a: SIGNEXTEND
0000094b: DUP2
0000094c: JUMP
0000094d: JUMPDEST
0000094e: PUSH2 0x037d
00000951: PUSH1 0x04
00000953: DUP1
00000954: CALLDATASIZE
00000955: SUB
00000956: PUSH1 0x20
00000958: DUP2
00000959: LT
0000095a: ISZERO
0000095b: PUSH2 0x0963
0000095e: JUMPI
0000095f: PUSH1 0x00
00000961: DUP1
00000962: REVERT
00000963: JUMPDEST
00000964: POP
00000965: CALLDATALOAD
00000966: PUSH1 0x01
00000968: PUSH1 0x01
0000096a: PUSH1 0xa0
0000096c: SHL
0000096d: SUB
0000096e: AND
0000096f: PUSH2 0x1d4d
00000972: JUMP
00000973: JUMPDEST
00000974: PUSH2 0x05e3
00000977: PUSH1 0x04
00000979: DUP1
0000097a: CALLDATASIZE
0000097b: SUB
0000097c: PUSH1 0x20
0000097e: DUP2
0000097f: LT
00000980: ISZERO
00000981: PUSH2 0x0989
00000984: JUMPI
00000985: PUSH1 0x00
00000987: DUP1
00000988: REVERT
00000989: JUMPDEST
0000098a: POP
0000098b: PUSH1 0x0a
0000098d: PUSH1 0x20
0000098f: MSTORE
00000990: CALLDATALOAD
00000991: PUSH1 0x01
00000993: SIGNEXTEND
00000994: PUSH1 0x00
00000996: SWAP1
00000997: DUP2
00000998: MSTORE
00000999: PUSH1 0x40
0000099b: SWAP1
0000099c: KECCAK256
0000099d: SLOAD
0000099e: DUP2
0000099f: JUMP
000009a0: JUMPDEST
000009a1: PUSH2 0x09a8
000009a4: PUSH2 0x1dc8
000009a7: JUMP
000009a8: JUMPDEST
000009a9: PUSH1 0x40
000009ab: DUP1
000009ac: MLOAD
000009ad: PUSH2 0xffff
000009b0: SWAP1
000009b1: SWAP3
000009b2: AND
000009b3: DUP3
000009b4: MSTORE
000009b5: MLOAD
000009b6: SWAP1
000009b7: DUP2
000009b8: SWAP1
000009b9: SUB
000009ba: PUSH1 0x20
000009bc: ADD
000009bd: SWAP1
000009be: RETURN
000009bf: JUMPDEST
000009c0: PUSH1 0x02
000009c2: DUP1
000009c3: SLOAD
000009c4: PUSH2 0x0a0a
000009c7: SWAP2
000009c8: PUSH1 0x01
000009ca: PUSH1 0x01
000009cc: PUSH1 0xa0
000009ce: SHL
000009cf: SUB
000009d0: DUP3
000009d1: AND
000009d2: SWAP2
000009d3: PUSH1 0x01
000009d5: PUSH1 0xa0
000009d7: SHL
000009d8: DUP2
000009d9: DIV
000009da: SWAP1
000009db: SWAP2
000009dc: SIGNEXTEND
000009dd: SWAP1
000009de: PUSH2 0xffff
000009e1: PUSH1 0x01
000009e3: PUSH1 0xb8
000009e5: SHL
000009e6: DUP3
000009e7: DIV
000009e8: DUP2
000009e9: AND
000009ea: SWAP2
000009eb: PUSH1 0xff
000009ed: PUSH1 0x01
000009ef: PUSH1 0xc8
000009f1: SHL
000009f2: DUP3
000009f3: DIV
000009f4: DUP2
000009f5: AND
000009f6: SWAP3
000009f7: PUSH1 0x01
000009f9: PUSH1 0xd0
000009fb: SHL
000009fc: DUP4
000009fd: DIV
000009fe: AND
000009ff: SWAP2
00000a00: PUSH1 0x01
00000a02: PUSH1 0xe0
00000a04: SHL
00000a05: SWAP1
00000a06: DIV
00000a07: AND
00000a08: DUP7
00000a09: JUMP
00000a0a: JUMPDEST
00000a0b: PUSH1 0x40
00000a0d: DUP1
00000a0e: MLOAD
00000a0f: PUSH1 0x01
00000a11: PUSH1 0x01
00000a13: PUSH1 0xa0
00000a15: SHL
00000a16: SUB
00000a17: SWAP1
00000a18: SWAP8
00000a19: AND
00000a1a: DUP8
00000a1b: MSTORE
00000a1c: PUSH1 0x02
00000a1e: SWAP6
00000a1f: SWAP1
00000a20: SWAP6
00000a21: SIGNEXTEND
00000a22: PUSH1 0x20
00000a24: DUP8
00000a25: ADD
00000a26: MSTORE
00000a27: PUSH2 0xffff
00000a2a: SWAP4
00000a2b: DUP5
00000a2c: AND
00000a2d: DUP7
00000a2e: DUP7
00000a2f: ADD
00000a30: MSTORE
00000a31: PUSH1 0xff
00000a33: SWAP1
00000a34: SWAP3
00000a35: AND
00000a36: PUSH1 0x60
00000a38: DUP7
00000a39: ADD
00000a3a: MSTORE
00000a3b: SWAP1
00000a3c: SWAP2
00000a3d: AND
00000a3e: PUSH1 0x80
00000a40: DUP5
00000a41: ADD
00000a42: MSTORE
00000a43: ISZERO
00000a44: ISZERO
00000a45: PUSH1 0xa0
00000a47: DUP4
00000a48: ADD
00000a49: MSTORE
00000a4a: MLOAD
00000a4b: SWAP1
00000a4c: DUP2
00000a4d: SWAP1
00000a4e: SUB
00000a4f: PUSH1 0xc0
00000a51: ADD
00000a52: SWAP1
00000a53: RETURN
00000a54: JUMPDEST
00000a55: PUSH2 0x05e3
00000a58: PUSH1 0x01
00000a5a: SLOAD
00000a5b: DUP2
00000a5c: JUMP
00000a5d: JUMPDEST
00000a5e: PUSH1 0x06
00000a60: SLOAD
00000a61: PUSH2 0x0276
00000a64: SWAP1
00000a65: PUSH1 0x01
00000a67: PUSH1 0x01
00000a69: PUSH1 0xa0
00000a6b: SHL
00000a6c: SUB
00000a6d: AND
00000a6e: DUP2
00000a6f: JUMP
00000a70: JUMPDEST
00000a71: PUSH2 0x037d
00000a74: PUSH1 0x04
00000a76: DUP1
00000a77: CALLDATASIZE
00000a78: SUB
00000a79: PUSH1 0x20
00000a7b: DUP2
00000a7c: LT
00000a7d: ISZERO
00000a7e: PUSH2 0x0a86
00000a81: JUMPI
00000a82: PUSH1 0x00
00000a84: DUP1
00000a85: REVERT
00000a86: JUMPDEST
00000a87: POP
00000a88: CALLDATALOAD
00000a89: PUSH1 0x02
00000a8b: SIGNEXTEND
00000a8c: PUSH2 0x1e6c
00000a8f: JUMP
00000a90: JUMPDEST
00000a91: PUSH2 0x0aee
00000a94: PUSH1 0x04
00000a96: DUP1
00000a97: CALLDATASIZE
00000a98: SUB
00000a99: PUSH1 0x20
00000a9b: DUP2
00000a9c: LT
00000a9d: ISZERO
00000a9e: PUSH2 0x0aa6
00000aa1: JUMPI
00000aa2: PUSH1 0x00
00000aa4: DUP1
00000aa5: REVERT
00000aa6: JUMPDEST
00000aa7: POP
00000aa8: PUSH1 0x03
00000aaa: PUSH1 0x20
00000aac: DUP2
00000aad: SWAP1
00000aae: MSTORE
00000aaf: SWAP1
00000ab0: CALLDATALOAD
00000ab1: PUSH1 0x02
00000ab3: SWAP1
00000ab4: DUP2
00000ab5: SIGNEXTEND
00000ab6: PUSH1 0x00
00000ab8: SWAP1
00000ab9: DUP2
00000aba: MSTORE
00000abb: PUSH1 0x40
00000abd: SWAP1
00000abe: KECCAK256
00000abf: DUP1
00000ac0: SLOAD
00000ac1: PUSH1 0x01
00000ac3: DUP3
00000ac4: ADD
00000ac5: SLOAD
00000ac6: DUP3
00000ac7: DUP5
00000ac8: ADD
00000ac9: SLOAD
00000aca: SWAP3
00000acb: SWAP1
00000acc: SWAP5
00000acd: ADD
00000ace: SLOAD
00000acf: SWAP1
00000ad0: SWAP4
00000ad1: PUSH1 0x0f
00000ad3: DUP2
00000ad4: SWAP1
00000ad5: SIGNEXTEND
00000ad6: SWAP4
00000ad7: PUSH1 0x01
00000ad9: PUSH1 0x80
00000adb: SHL
00000adc: DUP3
00000add: DIV
00000ade: DUP2
00000adf: SIGNEXTEND
00000ae0: SWAP4
00000ae1: PUSH1 0x01
00000ae3: PUSH1 0x98
00000ae5: SHL
00000ae6: SWAP1
00000ae7: SWAP3
00000ae8: DIV
00000ae9: SWAP1
00000aea: SIGNEXTEND
00000aeb: SWAP2
00000aec: DUP7
00000aed: JUMP
00000aee: JUMPDEST
00000aef: PUSH1 0x40
00000af1: DUP1
00000af2: MLOAD
00000af3: SWAP7
00000af4: DUP8
00000af5: MSTORE
00000af6: PUSH1 0x0f
00000af8: SWAP6
00000af9: SWAP1
00000afa: SWAP6
00000afb: SIGNEXTEND
00000afc: PUSH1 0x20
00000afe: DUP8
00000aff: ADD
00000b00: MSTORE
00000b01: PUSH1 0x02
00000b03: SWAP4
00000b04: DUP5
00000b05: SIGNEXTEND
00000b06: DUP7
00000b07: DUP7
00000b08: ADD
00000b09: MSTORE
00000b0a: SWAP2
00000b0b: SWAP1
00000b0c: SWAP3
00000b0d: SIGNEXTEND
00000b0e: PUSH1 0x60
00000b10: DUP6
00000b11: ADD
00000b12: MSTORE
00000b13: PUSH1 0x80
00000b15: DUP5
00000b16: ADD
00000b17: SWAP2
00000b18: SWAP1
00000b19: SWAP2
00000b1a: MSTORE
00000b1b: PUSH1 0xa0
00000b1d: DUP4
00000b1e: ADD
00000b1f: MSTORE
00000b20: MLOAD
00000b21: SWAP1
00000b22: DUP2
00000b23: SWAP1
00000b24: SUB
00000b25: PUSH1 0xc0
00000b27: ADD
00000b28: SWAP1
00000b29: RETURN
00000b2a: JUMPDEST
00000b2b: PUSH2 0x037d
00000b2e: PUSH1 0x04
00000b30: DUP1
00000b31: CALLDATASIZE
00000b32: SUB
00000b33: PUSH1 0x20
00000b35: DUP2
00000b36: LT
00000b37: ISZERO
00000b38: PUSH2 0x0b40
00000b3b: JUMPI
00000b3c: PUSH1 0x00
00000b3e: DUP1
00000b3f: REVERT
00000b40: JUMPDEST
00000b41: POP
00000b42: CALLDATALOAD
00000b43: PUSH1 0x01
00000b45: PUSH1 0x01
00000b47: PUSH1 0xa0
00000b49: SHL
00000b4a: SUB
00000b4b: AND
00000b4c: PUSH2 0x1ed5
00000b4f: JUMP
00000b50: JUMPDEST
00000b51: PUSH2 0x037d
00000b54: PUSH2 0x20d1
00000b57: JUMP
00000b58: JUMPDEST
00000b59: PUSH1 0x00
00000b5b: DUP1
00000b5c: PUSH1 0x00
00000b5e: DUP1
00000b5f: PUSH2 0x0b6e
00000b62: DUP11
00000b63: DUP11
00000b64: DUP11
00000b65: DUP11
00000b66: PUSH1 0x00
00000b68: DUP12
00000b69: DUP12
00000b6a: PUSH2 0x20f3
00000b6d: JUMP
00000b6e: JUMPDEST
00000b6f: SWAP2
00000b70: POP
00000b71: SWAP2
00000b72: POP
00000b73: PUSH2 0x0b7a
00000b76: PUSH2 0x22a7
00000b79: JUMP
00000b7a: JUMPDEST
00000b7b: PUSH2 0x0b82
00000b7e: PUSH2 0x5531
00000b81: JUMP
00000b82: JUMPDEST
00000b83: PUSH2 0x0b8a
00000b86: PUSH2 0x5551
00000b89: JUMP
00000b8a: JUMPDEST
00000b8b: PUSH2 0x0b97
00000b8e: DUP5
00000b8f: DUP5
00000b90: DUP14
00000b91: DUP14
00000b92: DUP14
00000b93: PUSH2 0x22e0
00000b96: JUMP
00000b97: JUMPDEST
00000b98: PUSH1 0x01
00000b9a: PUSH1 0x01
00000b9c: PUSH1 0x80
00000b9e: SHL
00000b9f: SUB
00000ba0: SWAP1
00000ba1: SWAP2
00000ba2: AND
00000ba3: PUSH1 0x40
00000ba5: DUP9
00000ba6: ADD
00000ba7: MSTORE
00000ba8: PUSH1 0x02
00000baa: SWAP2
00000bab: SWAP1
00000bac: SWAP2
00000bad: SIGNEXTEND
00000bae: PUSH1 0x20
00000bb0: DUP8
00000bb1: ADD
00000bb2: MSTORE
00000bb3: PUSH1 0x01
00000bb5: PUSH1 0x01
00000bb7: PUSH1 0xa0
00000bb9: SHL
00000bba: SUB
00000bbb: SWAP1
00000bbc: SWAP2
00000bbd: AND
00000bbe: DUP6
00000bbf: MSTORE
00000bc0: SWAP2
00000bc1: SWAP8
00000bc2: POP
00000bc3: SWAP6
00000bc4: POP
00000bc5: SWAP1
00000bc6: POP
00000bc7: PUSH1 0x00
00000bc9: DUP1
00000bca: PUSH2 0x0bd1
00000bcd: PUSH2 0x2969
00000bd0: JUMP
00000bd1: JUMPDEST
00000bd2: SWAP2
00000bd3: POP
00000bd4: SWAP2
00000bd5: POP
00000bd6: DUP13
00000bd7: ISZERO
00000bd8: PUSH2 0x0c6c
00000bdb: JUMPI
00000bdc: PUSH1 0x00
00000bde: DUP8
00000bdf: SLT
00000be0: ISZERO
00000be1: PUSH2 0x0c12
00000be4: JUMPI
00000be5: PUSH2 0x0c12
00000be8: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
00000c09: DUP16
00000c0a: DUP10
00000c0b: PUSH1 0x00
00000c0d: SUB
00000c0e: PUSH2 0x2b72
00000c11: JUMP
00000c12: JUMPDEST
00000c13: PUSH2 0x0c1e
00000c16: DUP9
00000c17: DUP9
00000c18: DUP13
00000c19: DUP13
00000c1a: PUSH2 0x2b82
00000c1d: JUMP
00000c1e: JUMPDEST
00000c1f: PUSH2 0x0c26
00000c22: PUSH2 0x2be3
00000c25: JUMP
00000c26: JUMPDEST
00000c27: PUSH2 0x0c30
00000c2a: DUP10
00000c2b: DUP5
00000c2c: PUSH2 0x5589
00000c2f: JUMP
00000c30: JUMPDEST
00000c31: GT
00000c32: ISZERO
00000c33: PUSH2 0x0c4f
00000c36: JUMPI
00000c37: PUSH1 0x40
00000c39: MLOAD
00000c3a: PUSH4 0x3ed6d505
00000c3f: PUSH1 0xe2
00000c41: SHL
00000c42: DUP2
00000c43: MSTORE
00000c44: PUSH1 0x04
00000c46: ADD
00000c47: PUSH1 0x40
00000c49: MLOAD
00000c4a: DUP1
00000c4b: SWAP2
00000c4c: SUB
00000c4d: SWAP1
00000c4e: REVERT
00000c4f: JUMPDEST
00000c50: PUSH2 0x0c67
00000c53: DUP9
00000c54: DUP9
00000c55: DUP6
00000c56: PUSH1 0x00
00000c58: ADD
00000c59: MLOAD
00000c5a: PUSH1 0x00
00000c5c: DUP8
00000c5d: PUSH1 0x20
00000c5f: ADD
00000c60: MLOAD
00000c61: PUSH1 0x00
00000c63: PUSH2 0x2c78
00000c66: JUMP
00000c67: JUMPDEST
00000c68: PUSH2 0x0cf8
00000c6b: JUMP
00000c6c: JUMPDEST
00000c6d: PUSH1 0x00
00000c6f: DUP9
00000c70: SLT
00000c71: ISZERO
00000c72: PUSH2 0x0ca3
00000c75: JUMPI
00000c76: PUSH2 0x0ca3
00000c79: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00000c9a: DUP16
00000c9b: DUP11
00000c9c: PUSH1 0x00
00000c9e: SUB
00000c9f: PUSH2 0x2b72
00000ca2: JUMP
00000ca3: JUMPDEST
00000ca4: PUSH2 0x0caf
00000ca7: DUP9
00000ca8: DUP9
00000ca9: DUP13
00000caa: DUP13
00000cab: PUSH2 0x2b82
00000cae: JUMP
00000caf: JUMPDEST
00000cb0: PUSH2 0x0cb7
00000cb3: PUSH2 0x2f67
00000cb6: JUMP
00000cb7: JUMPDEST
00000cb8: PUSH2 0x0cc1
00000cbb: DUP9
00000cbc: DUP4
00000cbd: PUSH2 0x5589
00000cc0: JUMP
00000cc1: JUMPDEST
00000cc2: GT
00000cc3: ISZERO
00000cc4: PUSH2 0x0ce0
00000cc7: JUMPI
00000cc8: PUSH1 0x40
00000cca: MLOAD
00000ccb: PUSH4 0x3ed6d505
00000cd0: PUSH1 0xe2
00000cd2: SHL
00000cd3: DUP2
00000cd4: MSTORE
00000cd5: PUSH1 0x04
00000cd7: ADD
00000cd8: PUSH1 0x40
00000cda: MLOAD
00000cdb: DUP1
00000cdc: SWAP2
00000cdd: SUB
00000cde: SWAP1
00000cdf: REVERT
00000ce0: JUMPDEST
00000ce1: PUSH2 0x0cf8
00000ce4: DUP9
00000ce5: DUP9
00000ce6: PUSH1 0x00
00000ce8: DUP7
00000ce9: PUSH1 0x00
00000ceb: ADD
00000cec: MLOAD
00000ced: PUSH1 0x00
00000cef: DUP9
00000cf0: PUSH1 0x20
00000cf2: ADD
00000cf3: MLOAD
00000cf4: PUSH2 0x2c78
00000cf7: JUMP
00000cf8: JUMPDEST
00000cf9: PUSH2 0x0d14
00000cfc: DUP15
00000cfd: DUP10
00000cfe: DUP10
00000cff: DUP8
00000d00: PUSH1 0x00
00000d02: ADD
00000d03: MLOAD
00000d04: DUP9
00000d05: PUSH1 0x40
00000d07: ADD
00000d08: MLOAD
00000d09: DUP10
00000d0a: PUSH1 0x20
00000d0c: ADD
00000d0d: MLOAD
00000d0e: DUP13
00000d0f: DUP13
00000d10: PUSH2 0x2fb6
00000d13: JUMP
00000d14: JUMPDEST
00000d15: POP
00000d16: POP
00000d17: POP
00000d18: POP
00000d19: PUSH2 0x0d20
00000d1c: PUSH2 0x303c
00000d1f: JUMP
00000d20: JUMPDEST
00000d21: PUSH2 0x0d30
00000d24: DUP11
00000d25: DUP11
00000d26: DUP11
00000d27: DUP11
00000d28: DUP9
00000d29: DUP9
00000d2a: DUP13
00000d2b: DUP13
00000d2c: PUSH2 0x3051
00000d2f: JUMP
00000d30: JUMPDEST
00000d31: POP
00000d32: POP
00000d33: SWAP7
00000d34: POP
00000d35: SWAP7
00000d36: SWAP5
00000d37: POP
00000d38: POP
00000d39: POP
00000d3a: POP
00000d3b: POP
00000d3c: JUMP
00000d3d: JUMPDEST
00000d3e: PUSH2 0x0d45
00000d41: PUSH2 0x315a
00000d44: JUMP
00000d45: JUMPDEST
00000d46: PUSH2 0x0d4d
00000d49: PUSH2 0x22a7
00000d4c: JUMP
00000d4d: JUMPDEST
00000d4e: PUSH2 0x0d56
00000d51: CALLER
00000d52: PUSH2 0x3185
00000d55: JUMP
00000d56: JUMPDEST
00000d57: PUSH2 0x0d5e
00000d5a: PUSH2 0x303c
00000d5d: JUMP
00000d5e: JUMPDEST
00000d5f: JUMP
00000d60: JUMPDEST
00000d61: PUSH2 0x0d68
00000d64: PUSH2 0x32d6
00000d67: JUMP
00000d68: JUMPDEST
00000d69: PUSH2 0x0d70
00000d6c: PUSH2 0x3300
00000d6f: JUMP
00000d70: JUMPDEST
00000d71: PUSH2 0x03e8
00000d74: PUSH2 0xffff
00000d77: DUP3
00000d78: AND
00000d79: GT
00000d7a: DUP1
00000d7b: PUSH2 0x0d93
00000d7e: JUMPI
00000d7f: POP
00000d80: PUSH1 0x02
00000d82: SLOAD
00000d83: PUSH2 0xffff
00000d86: DUP3
00000d87: DUP2
00000d88: AND
00000d89: PUSH1 0x01
00000d8b: PUSH1 0xd0
00000d8d: SHL
00000d8e: SWAP1
00000d8f: SWAP3
00000d90: DIV
00000d91: AND
00000d92: EQ
00000d93: JUMPDEST
00000d94: DUP1
00000d95: PUSH2 0x0db5
00000d98: JUMPI
00000d99: POP
00000d9a: PUSH2 0xffff
00000d9d: DUP2
00000d9e: AND
00000d9f: ISZERO
00000da0: DUP1
00000da1: ISZERO
00000da2: SWAP1
00000da3: PUSH2 0x0db5
00000da6: JUMPI
00000da7: POP
00000da8: PUSH1 0x07
00000daa: SLOAD
00000dab: PUSH1 0x01
00000dad: PUSH1 0x01
00000daf: PUSH1 0xa0
00000db1: SHL
00000db2: SUB
00000db3: AND
00000db4: ISZERO
00000db5: JUMPDEST
00000db6: ISZERO
00000db7: PUSH2 0x0dd3
00000dba: JUMPI
00000dbb: PUSH1 0x40
00000dbd: MLOAD
00000dbe: PUSH4 0xa709b9af
00000dc3: PUSH1 0xe0
00000dc5: SHL
00000dc6: DUP2
00000dc7: MSTORE
00000dc8: PUSH1 0x04
00000dca: ADD
00000dcb: PUSH1 0x40
00000dcd: MLOAD
00000dce: DUP1
00000dcf: SWAP2
00000dd0: SUB
00000dd1: SWAP1
00000dd2: REVERT
00000dd3: JUMPDEST
00000dd4: PUSH2 0x0ddc
00000dd7: DUP2
00000dd8: PUSH2 0x33c6
00000ddb: JUMP
00000ddc: JUMPDEST
00000ddd: POP
00000dde: JUMP
00000ddf: JUMPDEST
00000de0: PUSH1 0x00
00000de2: DUP1
00000de3: DUP7
00000de4: DUP7
00000de5: PUSH2 0x0dee
00000de8: DUP3
00000de9: DUP3
00000dea: PUSH2 0x341d
00000ded: JUMP
00000dee: JUMPDEST
00000def: PUSH1 0x01
00000df1: PUSH1 0x01
00000df3: PUSH1 0x7f
00000df5: SHL
00000df6: SUB
00000df7: PUSH1 0x01
00000df9: PUSH1 0x01
00000dfb: PUSH1 0x80
00000dfd: SHL
00000dfe: SUB
00000dff: DUP9
00000e00: AND
00000e01: GT
00000e02: ISZERO
00000e03: PUSH2 0x0e1f
00000e06: JUMPI
00000e07: PUSH1 0x40
00000e09: MLOAD
00000e0a: PUSH4 0x8995290f
00000e0f: PUSH1 0xe0
00000e11: SHL
00000e12: DUP2
00000e13: MSTORE
00000e14: PUSH1 0x04
00000e16: ADD
00000e17: PUSH1 0x40
00000e19: MLOAD
00000e1a: DUP1
00000e1b: SWAP2
00000e1c: SUB
00000e1d: SWAP1
00000e1e: REVERT
00000e1f: JUMPDEST
00000e20: PUSH1 0x00
00000e22: PUSH2 0x0e2a
00000e25: DUP9
00000e26: PUSH2 0x559c
00000e29: JUMP
00000e2a: JUMPDEST
00000e2b: SWAP1
00000e2c: POP
00000e2d: PUSH1 0x00
00000e2f: PUSH2 0x0e3c
00000e32: CALLER
00000e33: DUP13
00000e34: DUP13
00000e35: DUP6
00000e36: DUP13
00000e37: DUP13
00000e38: PUSH2 0x349f
00000e3b: JUMP
00000e3c: JUMPDEST
00000e3d: SWAP1
00000e3e: POP
00000e3f: PUSH2 0x0e46
00000e42: PUSH2 0x22a7
00000e45: JUMP
00000e46: JUMPDEST
00000e47: PUSH2 0x0e4e
00000e4a: PUSH2 0x2969
00000e4d: JUMP
00000e4e: JUMPDEST
00000e4f: POP
00000e50: POP
00000e51: PUSH1 0x00
00000e53: PUSH2 0x0e5d
00000e56: CALLER
00000e57: DUP14
00000e58: DUP14
00000e59: PUSH2 0x35f4
00000e5c: JUMP
00000e5d: JUMPDEST
00000e5e: SWAP1
00000e5f: POP
00000e60: PUSH2 0x0e6b
00000e63: DUP2
00000e64: DUP14
00000e65: DUP14
00000e66: DUP7
00000e67: PUSH2 0x3620
00000e6a: JUMP
00000e6b: JUMPDEST
00000e6c: SWAP1
00000e6d: SWAP8
00000e6e: POP
00000e6f: SWAP6
00000e70: POP
00000e71: PUSH3 0xffffff
00000e75: DUP3
00000e76: AND
00000e77: ISZERO
00000e78: PUSH2 0x0ee1
00000e7b: JUMPI
00000e7c: PUSH1 0x00
00000e7e: DUP1
00000e7f: DUP9
00000e80: ISZERO
00000e81: PUSH2 0x0ea6
00000e84: JUMPI
00000e85: PUSH2 0x0e97
00000e88: DUP10
00000e89: PUSH3 0xffffff
00000e8d: DUP7
00000e8e: AND
00000e8f: PUSH3 0x0f4240
00000e93: PUSH2 0x3742
00000e96: JUMP
00000e97: JUMPDEST
00000e98: SWAP2
00000e99: POP
00000e9a: PUSH2 0x0ea3
00000e9d: DUP3
00000e9e: DUP11
00000e9f: PUSH2 0x55bf
00000ea2: JUMP
00000ea3: JUMPDEST
00000ea4: SWAP9
00000ea5: POP
00000ea6: JUMPDEST
00000ea7: DUP8
00000ea8: ISZERO
00000ea9: PUSH2 0x0ece
00000eac: JUMPI
00000ead: PUSH2 0x0ebf
00000eb0: DUP9
00000eb1: PUSH3 0xffffff
00000eb5: DUP7
00000eb6: AND
00000eb7: PUSH3 0x0f4240
00000ebb: PUSH2 0x3742
00000ebe: JUMP
00000ebf: JUMPDEST
00000ec0: SWAP1
00000ec1: POP
00000ec2: PUSH2 0x0ecb
00000ec5: DUP2
00000ec6: DUP10
00000ec7: PUSH2 0x55bf
00000eca: JUMP
00000ecb: JUMPDEST
00000ecc: SWAP8
00000ecd: POP
00000ece: JUMPDEST
00000ecf: PUSH2 0x0ede
00000ed2: PUSH1 0x00
00000ed4: DUP1
00000ed5: PUSH1 0x00
00000ed7: DUP1
00000ed8: DUP7
00000ed9: DUP7
00000eda: PUSH2 0x2c78
00000edd: JUMP
00000ede: JUMPDEST
00000edf: POP
00000ee0: POP
00000ee1: JUMPDEST
00000ee2: DUP7
00000ee3: DUP7
00000ee4: OR
00000ee5: ISZERO
00000ee6: PUSH2 0x0f46
00000ee9: JUMPI
00000eea: PUSH1 0x03
00000eec: DUP2
00000eed: ADD
00000eee: SLOAD
00000eef: PUSH2 0x0f02
00000ef2: SWAP1
00000ef3: DUP9
00000ef4: SWAP1
00000ef5: PUSH1 0x01
00000ef7: PUSH1 0x01
00000ef9: PUSH1 0x80
00000efb: SHL
00000efc: SUB
00000efd: AND
00000efe: PUSH2 0x55d2
00000f01: JUMP
00000f02: JUMPDEST
00000f03: PUSH1 0x03
00000f05: DUP3
00000f06: ADD
00000f07: SLOAD
00000f08: PUSH2 0x0f22
00000f0b: SWAP1
00000f0c: DUP9
00000f0d: SWAP1
00000f0e: PUSH1 0x01
00000f10: PUSH1 0x80
00000f12: SHL
00000f13: SWAP1
00000f14: DIV
00000f15: PUSH1 0x01
00000f17: PUSH1 0x01
00000f19: PUSH1 0x80
00000f1b: SHL
00000f1c: SUB
00000f1d: AND
00000f1e: PUSH2 0x55d2
00000f21: JUMP
00000f22: JUMPDEST
00000f23: PUSH1 0x01
00000f25: PUSH1 0x01
00000f27: PUSH1 0x80
00000f29: SHL
00000f2a: SUB
00000f2b: SWAP2
00000f2c: DUP3
00000f2d: AND
00000f2e: SWAP2
00000f2f: AND
00000f30: PUSH1 0x01
00000f32: PUSH1 0x80
00000f34: SHL
00000f35: MUL
00000f36: PUSH1 0x01
00000f38: PUSH1 0x01
00000f3a: PUSH1 0x80
00000f3c: SHL
00000f3d: SUB
00000f3e: NOT
00000f3f: AND
00000f40: OR
00000f41: PUSH1 0x03
00000f43: DUP3
00000f44: ADD
00000f45: SSTORE
00000f46: JUMPDEST
00000f47: POP
00000f48: PUSH1 0x01
00000f4a: PUSH1 0x01
00000f4c: PUSH1 0x80
00000f4e: SHL
00000f4f: SUB
00000f50: DUP10
00000f51: AND
00000f52: DUP7
00000f53: OR
00000f54: DUP6
00000f55: OR
00000f56: ISZERO
00000f57: PUSH2 0x0fbd
00000f5a: JUMPI
00000f5b: PUSH1 0x40
00000f5d: DUP1
00000f5e: MLOAD
00000f5f: PUSH1 0x01
00000f61: PUSH1 0x01
00000f63: PUSH1 0x80
00000f65: SHL
00000f66: SUB
00000f67: DUP12
00000f68: AND
00000f69: DUP2
00000f6a: MSTORE
00000f6b: PUSH1 0x20
00000f6d: DUP2
00000f6e: ADD
00000f6f: DUP9
00000f70: SWAP1
00000f71: MSTORE
00000f72: DUP1
00000f73: DUP3
00000f74: ADD
00000f75: DUP8
00000f76: SWAP1
00000f77: MSTORE
00000f78: PUSH3 0xffffff
00000f7c: DUP4
00000f7d: AND
00000f7e: PUSH1 0x60
00000f80: DUP3
00000f81: ADD
00000f82: MSTORE
00000f83: SWAP1
00000f84: MLOAD
00000f85: PUSH1 0x02
00000f87: DUP13
00000f88: DUP2
00000f89: SIGNEXTEND
00000f8a: SWAP3
00000f8b: SWAP1
00000f8c: DUP15
00000f8d: SWAP1
00000f8e: SIGNEXTEND
00000f8f: SWAP2
00000f90: CALLER
00000f91: SWAP2
00000f92: PUSH32 0x932214d4a69c27c086643126ed97c32681da179064c678836c173f99bd13ca01
00000fb3: SWAP2
00000fb4: SWAP1
00000fb5: DUP2
00000fb6: SWAP1
00000fb7: SUB
00000fb8: PUSH1 0x80
00000fba: ADD
00000fbb: SWAP1
00000fbc: LOG4
00000fbd: JUMPDEST
00000fbe: PUSH2 0x0fc5
00000fc1: PUSH2 0x303c
00000fc4: JUMP
00000fc5: JUMPDEST
00000fc6: PUSH2 0x0fd5
00000fc9: CALLER
00000fca: DUP13
00000fcb: DUP13
00000fcc: DUP6
00000fcd: DUP11
00000fce: DUP11
00000fcf: DUP15
00000fd0: DUP15
00000fd1: PUSH2 0x37db
00000fd4: JUMP
00000fd5: JUMPDEST
00000fd6: POP
00000fd7: POP
00000fd8: POP
00000fd9: POP
00000fda: SWAP6
00000fdb: POP
00000fdc: SWAP6
00000fdd: SWAP4
00000fde: POP
00000fdf: POP
00000fe0: POP
00000fe1: POP
00000fe2: JUMP
00000fe3: JUMPDEST
00000fe4: PUSH1 0x02
00000fe6: SLOAD
00000fe7: PUSH1 0x01
00000fe9: PUSH1 0xc8
00000feb: SHL
00000fec: SWAP1
00000fed: DIV
00000fee: PUSH1 0x10
00000ff0: AND
00000ff1: ISZERO
00000ff2: PUSH2 0x10c9
00000ff5: JUMPI
00000ff6: PUSH1 0x06
00000ff8: SLOAD
00000ff9: PUSH1 0x40
00000ffb: MLOAD
00000ffc: PUSH4 0x46f05477
00001001: PUSH1 0xe1
00001003: SHL
00001004: DUP1
00001005: DUP3
00001006: MSTORE
00001007: CALLER
00001008: PUSH1 0x04
0000100a: DUP4
0000100b: ADD
0000100c: DUP2
0000100d: DUP2
0000100e: MSTORE
0000100f: PUSH1 0x01
00001011: PUSH1 0x01
00001013: PUSH1 0xa0
00001015: SHL
00001016: SUB
00001017: DUP11
00001018: DUP2
00001019: AND
0000101a: PUSH1 0x24
0000101c: DUP7
0000101d: ADD
0000101e: MSTORE
0000101f: PUSH1 0x44
00001021: DUP6
00001022: ADD
00001023: DUP11
00001024: SWAP1
00001025: MSTORE
00001026: PUSH1 0x64
00001028: DUP6
00001029: ADD
0000102a: DUP10
0000102b: SWAP1
0000102c: MSTORE
0000102d: PUSH1 0xa0
0000102f: PUSH1 0x84
00001031: DUP7
00001032: ADD
00001033: SWAP1
00001034: DUP2
00001035: MSTORE
00001036: PUSH1 0xa4
00001038: DUP7
00001039: ADD
0000103a: DUP9
0000103b: SWAP1
0000103c: MSTORE
0000103d: PUSH2 0x10c9
00001040: SWAP7
00001041: SWAP5
00001042: SWAP6
00001043: SWAP2
00001044: SWAP1
00001045: SWAP5
00001046: AND
00001047: SWAP4
00001048: PUSH4 0x8de0a8ee
0000104d: SWAP4
0000104e: SWAP3
0000104f: DUP13
00001050: SWAP3
00001051: DUP13
00001052: SWAP3
00001053: DUP13
00001054: SWAP3
00001055: DUP13
00001056: SWAP3
00001057: DUP13
00001058: SWAP3
00001059: SWAP1
0000105a: PUSH1 0xc4
0000105c: ADD
0000105d: DUP5
0000105e: DUP5
0000105f: DUP1
00001060: DUP3
00001061: DUP5
00001062: CALLDATACOPY
00001063: PUSH1 0x00
00001065: DUP2
00001066: DUP5
00001067: ADD
00001068: MSTORE
00001069: PUSH1 0x1f
0000106b: NOT
0000106c: PUSH1 0x1f
0000106e: DUP3
0000106f: ADD
00001070: AND
00001071: SWAP1
00001072: POP
00001073: DUP1
00001074: DUP4
00001075: ADD
00001076: SWAP3
00001077: POP
00001078: POP
00001079: POP
0000107a: SWAP8
0000107b: POP
0000107c: POP
0000107d: POP
0000107e: POP
0000107f: POP
00001080: POP
00001081: POP
00001082: POP
00001083: PUSH1 0x20
00001085: PUSH1 0x40
00001087: MLOAD
00001088: DUP1
00001089: DUP4
0000108a: SUB
0000108b: DUP2
0000108c: PUSH1 0x00
0000108e: DUP8
0000108f: GAS
00001090: CALL
00001091: ISZERO
00001092: DUP1
00001093: ISZERO
00001094: PUSH2 0x10a1
00001097: JUMPI
00001098: RETURNDATASIZE
00001099: PUSH1 0x00
0000109b: DUP1
0000109c: RETURNDATACOPY
0000109d: RETURNDATASIZE
0000109e: PUSH1 0x00
000010a0: REVERT
000010a1: JUMPDEST
000010a2: POP
000010a3: POP
000010a4: POP
000010a5: POP
000010a6: PUSH1 0x40
000010a8: MLOAD
000010a9: RETURNDATASIZE
000010aa: PUSH1 0x20
000010ac: DUP2
000010ad: LT
000010ae: ISZERO
000010af: PUSH2 0x10b7
000010b2: JUMPI
000010b3: PUSH1 0x00
000010b5: DUP1
000010b6: REVERT
000010b7: JUMPDEST
000010b8: POP
000010b9: MLOAD
000010ba: PUSH1 0x01
000010bc: PUSH1 0x01
000010be: PUSH1 0xe0
000010c0: SHL
000010c1: SUB
000010c2: NOT
000010c3: AND
000010c4: SWAP1
000010c5: PUSH2 0x38e3
000010c8: JUMP
000010c9: JUMPDEST
000010ca: PUSH2 0x10d1
000010cd: PUSH2 0x22a7
000010d0: JUMP
000010d1: JUMPDEST
000010d2: PUSH1 0x00
000010d4: DUP1
000010d5: PUSH1 0x00
000010d7: DUP1
000010d8: PUSH2 0x10df
000010db: PUSH2 0x2969
000010de: JUMP
000010df: JUMPDEST
000010e0: SWAP1
000010e1: SWAP3
000010e2: POP
000010e3: SWAP1
000010e4: POP
000010e5: PUSH1 0x00
000010e7: DUP9
000010e8: ISZERO
000010e9: PUSH2 0x1128
000010ec: JUMPI
000010ed: PUSH2 0x10fb
000010f0: DUP10
000010f1: PUSH1 0x64
000010f3: PUSH3 0x0f4240
000010f7: PUSH2 0x3920
000010fa: JUMP
000010fb: JUMPDEST
000010fc: SWAP1
000010fd: POP
000010fe: PUSH2 0x1128
00001101: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001122: DUP12
00001123: DUP12
00001124: PUSH2 0x2b72
00001127: JUMP
00001128: JUMPDEST
00001129: PUSH1 0x00
0000112b: DUP9
0000112c: ISZERO
0000112d: PUSH2 0x116c
00001130: JUMPI
00001131: PUSH2 0x113f
00001134: DUP10
00001135: PUSH1 0x64
00001137: PUSH3 0x0f4240
0000113b: PUSH2 0x3920
0000113e: JUMP
0000113f: JUMPDEST
00001140: SWAP1
00001141: POP
00001142: PUSH2 0x116c
00001145: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
00001166: DUP13
00001167: DUP12
00001168: PUSH2 0x2b72
0000116b: JUMP
0000116c: JUMPDEST
0000116d: PUSH2 0x1178
00001170: DUP3
00001171: DUP3
00001172: DUP11
00001173: DUP11
00001174: PUSH2 0x39a0
00001177: JUMP
00001178: JUMPDEST
00001179: PUSH2 0x1180
0000117c: PUSH2 0x2be3
0000117f: JUMP
00001180: JUMPDEST
00001181: SWAP6
00001182: POP
00001183: DUP6
00001184: PUSH2 0x118d
00001187: DUP4
00001188: DUP7
00001189: PUSH2 0x5589
0000118c: JUMP
0000118d: JUMPDEST
0000118e: GT
0000118f: ISZERO
00001190: PUSH2 0x11ac
00001193: JUMPI
00001194: PUSH1 0x40
00001196: MLOAD
00001197: PUSH4 0x36de50ff
0000119c: PUSH1 0xe1
0000119e: SHL
0000119f: DUP2
000011a0: MSTORE
000011a1: PUSH1 0x04
000011a3: ADD
000011a4: PUSH1 0x40
000011a6: MLOAD
000011a7: DUP1
000011a8: SWAP2
000011a9: SUB
000011aa: SWAP1
000011ab: REVERT
000011ac: JUMPDEST
000011ad: PUSH2 0x11b4
000011b0: PUSH2 0x2f67
000011b3: JUMP
000011b4: JUMPDEST
000011b5: SWAP5
000011b6: POP
000011b7: DUP5
000011b8: PUSH2 0x11c1
000011bb: DUP3
000011bc: DUP6
000011bd: PUSH2 0x5589
000011c0: JUMP
000011c1: JUMPDEST
000011c2: GT
000011c3: ISZERO
000011c4: PUSH2 0x11e0
000011c7: JUMPI
000011c8: PUSH1 0x40
000011ca: MLOAD
000011cb: PUSH4 0xc998149f
000011d0: PUSH1 0xe0
000011d2: SHL
000011d3: DUP2
000011d4: MSTORE
000011d5: PUSH1 0x04
000011d7: ADD
000011d8: PUSH1 0x40
000011da: MLOAD
000011db: DUP1
000011dc: SWAP2
000011dd: SUB
000011de: SWAP1
000011df: REVERT
000011e0: JUMPDEST
000011e1: PUSH1 0x02
000011e3: SLOAD
000011e4: SWAP6
000011e5: DUP5
000011e6: SWAP1
000011e7: SUB
000011e8: SWAP6
000011e9: SWAP5
000011ea: DUP4
000011eb: SWAP1
000011ec: SUB
000011ed: SWAP5
000011ee: PUSH1 0x01
000011f0: PUSH1 0xd0
000011f2: SHL
000011f3: SWAP1
000011f4: DIV
000011f5: PUSH2 0xffff
000011f8: AND
000011f9: DUP1
000011fa: ISZERO
000011fb: PUSH2 0x1240
000011fe: JUMPI
000011ff: PUSH1 0x00
00001201: DUP8
00001202: ISZERO
00001203: PUSH2 0x1216
00001206: JUMPI
00001207: PUSH2 0x1213
0000120a: DUP9
0000120b: DUP4
0000120c: PUSH2 0x03e8
0000120f: PUSH2 0x3742
00001212: JUMP
00001213: JUMPDEST
00001214: SWAP1
00001215: POP
00001216: JUMPDEST
00001217: PUSH1 0x00
00001219: DUP8
0000121a: ISZERO
0000121b: PUSH2 0x122e
0000121e: JUMPI
0000121f: PUSH2 0x122b
00001222: DUP9
00001223: DUP5
00001224: PUSH2 0x03e8
00001227: PUSH2 0x3742
0000122a: JUMP
0000122b: JUMPDEST
0000122c: SWAP1
0000122d: POP
0000122e: JUMPDEST
0000122f: PUSH2 0x123d
00001232: DUP3
00001233: DUP3
00001234: DUP5
00001235: DUP5
00001236: PUSH1 0x00
00001238: DUP1
00001239: PUSH2 0x2c78
0000123c: JUMP
0000123d: JUMPDEST
0000123e: POP
0000123f: POP
00001240: JUMPDEST
00001241: PUSH1 0x40
00001243: DUP1
00001244: MLOAD
00001245: DUP13
00001246: DUP2
00001247: MSTORE
00001248: PUSH1 0x20
0000124a: DUP2
0000124b: ADD
0000124c: DUP13
0000124d: SWAP1
0000124e: MSTORE
0000124f: DUP1
00001250: DUP3
00001251: ADD
00001252: DUP10
00001253: SWAP1
00001254: MSTORE
00001255: PUSH1 0x60
00001257: DUP2
00001258: ADD
00001259: DUP9
0000125a: SWAP1
0000125b: MSTORE
0000125c: SWAP1
0000125d: MLOAD
0000125e: PUSH1 0x01
00001260: PUSH1 0x01
00001262: PUSH1 0xa0
00001264: SHL
00001265: SUB
00001266: DUP15
00001267: AND
00001268: SWAP2
00001269: CALLER
0000126a: SWAP2
0000126b: PUSH32 0xbdbdb71d7860376ba52b25a5028beea23581364a40522f6bcfb86bb1f2dca633
0000128c: SWAP2
0000128d: DUP2
0000128e: SWAP1
0000128f: SUB
00001290: PUSH1 0x80
00001292: ADD
00001293: SWAP1
00001294: LOG3
00001295: POP
00001296: POP
00001297: POP
00001298: POP
00001299: POP
0000129a: PUSH2 0x12a1
0000129d: PUSH2 0x303c
000012a0: JUMP
000012a1: JUMPDEST
000012a2: PUSH1 0x02
000012a4: SLOAD
000012a5: PUSH1 0x01
000012a7: PUSH1 0xc8
000012a9: SHL
000012aa: SWAP1
000012ab: DIV
000012ac: PUSH1 0x20
000012ae: AND
000012af: ISZERO
000012b0: PUSH2 0x138c
000012b3: JUMPI
000012b4: PUSH2 0x138c
000012b7: PUSH4 0x343d37ff
000012bc: PUSH1 0xe0
000012be: SHL
000012bf: PUSH1 0x06
000012c1: PUSH1 0x00
000012c3: SWAP1
000012c4: SLOAD
000012c5: SWAP1
000012c6: PUSH2 0x0100
000012c9: EXP
000012ca: SWAP1
000012cb: DIV
000012cc: PUSH1 0x01
000012ce: PUSH1 0x01
000012d0: PUSH1 0xa0
000012d2: SHL
000012d3: SUB
000012d4: AND
000012d5: PUSH1 0x01
000012d7: PUSH1 0x01
000012d9: PUSH1 0xa0
000012db: SHL
000012dc: SUB
000012dd: AND
000012de: PUSH4 0x343d37ff
000012e3: CALLER
000012e4: DUP12
000012e5: DUP12
000012e6: DUP12
000012e7: DUP10
000012e8: DUP10
000012e9: DUP14
000012ea: DUP14
000012eb: PUSH1 0x40
000012ed: MLOAD
000012ee: DUP10
000012ef: PUSH4 0xffffffff
000012f4: AND
000012f5: PUSH1 0xe0
000012f7: SHL
000012f8: DUP2
000012f9: MSTORE
000012fa: PUSH1 0x04
000012fc: ADD
000012fd: DUP1
000012fe: DUP10
000012ff: PUSH1 0x01
00001301: PUSH1 0x01
00001303: PUSH1 0xa0
00001305: SHL
00001306: SUB
00001307: AND
00001308: DUP2
00001309: MSTORE
0000130a: PUSH1 0x20
0000130c: ADD
0000130d: DUP9
0000130e: PUSH1 0x01
00001310: PUSH1 0x01
00001312: PUSH1 0xa0
00001314: SHL
00001315: SUB
00001316: AND
00001317: DUP2
00001318: MSTORE
00001319: PUSH1 0x20
0000131b: ADD
0000131c: DUP8
0000131d: DUP2
0000131e: MSTORE
0000131f: PUSH1 0x20
00001321: ADD
00001322: DUP7
00001323: DUP2
00001324: MSTORE
00001325: PUSH1 0x20
00001327: ADD
00001328: DUP6
00001329: DUP2
0000132a: MSTORE
0000132b: PUSH1 0x20
0000132d: ADD
0000132e: DUP5
0000132f: DUP2
00001330: MSTORE
00001331: PUSH1 0x20
00001333: ADD
00001334: DUP1
00001335: PUSH1 0x20
00001337: ADD
00001338: DUP3
00001339: DUP2
0000133a: SUB
0000133b: DUP3
0000133c: MSTORE
0000133d: DUP5
0000133e: DUP5
0000133f: DUP3
00001340: DUP2
00001341: DUP2
00001342: MSTORE
00001343: PUSH1 0x20
00001345: ADD
00001346: SWAP3
00001347: POP
00001348: DUP1
00001349: DUP3
0000134a: DUP5
0000134b: CALLDATACOPY
0000134c: PUSH1 0x00
0000134e: DUP2
0000134f: DUP5
00001350: ADD
00001351: MSTORE
00001352: PUSH1 0x1f
00001354: NOT
00001355: PUSH1 0x1f
00001357: DUP3
00001358: ADD
00001359: AND
0000135a: SWAP1
0000135b: POP
0000135c: DUP1
0000135d: DUP4
0000135e: ADD
0000135f: SWAP3
00001360: POP
00001361: POP
00001362: POP
00001363: SWAP10
00001364: POP
00001365: POP
00001366: POP
00001367: POP
00001368: POP
00001369: POP
0000136a: POP
0000136b: POP
0000136c: POP
0000136d: POP
0000136e: PUSH1 0x20
00001370: PUSH1 0x40
00001372: MLOAD
00001373: DUP1
00001374: DUP4
00001375: SUB
00001376: DUP2
00001377: PUSH1 0x00
00001379: DUP8
0000137a: GAS
0000137b: CALL
0000137c: ISZERO
0000137d: DUP1
0000137e: ISZERO
0000137f: PUSH2 0x10a1
00001382: JUMPI
00001383: RETURNDATASIZE
00001384: PUSH1 0x00
00001386: DUP1
00001387: RETURNDATACOPY
00001388: RETURNDATASIZE
00001389: PUSH1 0x00
0000138b: REVERT
0000138c: JUMPDEST
0000138d: POP
0000138e: POP
0000138f: POP
00001390: POP
00001391: POP
00001392: POP
00001393: POP
00001394: JUMP
00001395: JUMPDEST
00001396: PUSH1 0x00
00001398: DUP1
00001399: PUSH2 0x13a0
0000139c: PUSH2 0x22a7
0000139f: JUMP
000013a0: JUMPDEST
000013a1: PUSH1 0x00
000013a3: PUSH2 0x13ad
000013a6: CALLER
000013a7: DUP9
000013a8: DUP9
000013a9: PUSH2 0x35f4
000013ac: JUMP
000013ad: JUMPDEST
000013ae: PUSH1 0x03
000013b0: DUP2
000013b1: ADD
000013b2: SLOAD
000013b3: SWAP1
000013b4: SWAP2
000013b5: POP
000013b6: PUSH1 0x01
000013b8: PUSH1 0x01
000013ba: PUSH1 0x80
000013bc: SHL
000013bd: SUB
000013be: DUP1
000013bf: DUP3
000013c0: AND
000013c1: SWAP2
000013c2: PUSH1 0x01
000013c4: PUSH1 0x80
000013c6: SHL
000013c7: SWAP1
000013c8: DIV
000013c9: DUP2
000013ca: AND
000013cb: SWAP1
000013cc: DUP8
000013cd: AND
000013ce: DUP3
000013cf: LT
000013d0: ISZERO
000013d1: PUSH2 0x13d8
000013d4: JUMPI
000013d5: DUP2
000013d6: SWAP7
000013d7: POP
000013d8: JUMPDEST
000013d9: DUP1
000013da: PUSH1 0x01
000013dc: PUSH1 0x01
000013de: PUSH1 0x80
000013e0: SHL
000013e1: SUB
000013e2: AND
000013e3: DUP7
000013e4: PUSH1 0x01
000013e6: PUSH1 0x01
000013e8: PUSH1 0x80
000013ea: SHL
000013eb: SUB
000013ec: AND
000013ed: GT
000013ee: ISZERO
000013ef: PUSH2 0x13f6
000013f2: JUMPI
000013f3: DUP1
000013f4: SWAP6
000013f5: POP
000013f6: JUMPDEST
000013f7: PUSH1 0x01
000013f9: PUSH1 0x01
000013fb: PUSH1 0x80
000013fd: SHL
000013fe: SUB
000013ff: DUP8
00001400: DUP8
00001401: OR
00001402: AND
00001403: ISZERO
00001404: PUSH2 0x153c
00001407: JUMPI
00001408: PUSH1 0x01
0000140a: PUSH1 0x01
0000140c: PUSH1 0x80
0000140e: SHL
0000140f: SUB
00001410: DUP8
00001411: DUP4
00001412: SUB
00001413: DUP2
00001414: AND
00001415: DUP8
00001416: DUP4
00001417: SUB
00001418: DUP3
00001419: AND
0000141a: PUSH1 0x01
0000141c: PUSH1 0x80
0000141e: SHL
0000141f: MUL
00001420: PUSH1 0x01
00001422: PUSH1 0x01
00001424: PUSH1 0x80
00001426: SHL
00001427: SUB
00001428: NOT
00001429: AND
0000142a: OR
0000142b: PUSH1 0x03
0000142d: DUP6
0000142e: ADD
0000142f: SSTORE
00001430: DUP8
00001431: SWAP6
00001432: POP
00001433: DUP7
00001434: SWAP5
00001435: POP
00001436: DUP6
00001437: AND
00001438: ISZERO
00001439: PUSH2 0x1470
0000143c: JUMPI
0000143d: PUSH2 0x1470
00001440: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001461: DUP12
00001462: DUP8
00001463: PUSH1 0x01
00001465: PUSH1 0x01
00001467: PUSH1 0x80
00001469: SHL
0000146a: SUB
0000146b: AND
0000146c: PUSH2 0x2b72
0000146f: JUMP
00001470: JUMPDEST
00001471: PUSH1 0x01
00001473: PUSH1 0x01
00001475: PUSH1 0x80
00001477: SHL
00001478: SUB
00001479: DUP5
0000147a: AND
0000147b: ISZERO
0000147c: PUSH2 0x14b3
0000147f: JUMPI
00001480: PUSH2 0x14b3
00001483: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
000014a4: DUP12
000014a5: DUP7
000014a6: PUSH1 0x01
000014a8: PUSH1 0x01
000014aa: PUSH1 0x80
000014ac: SHL
000014ad: SUB
000014ae: AND
000014af: PUSH2 0x2b72
000014b2: JUMP
000014b3: JUMPDEST
000014b4: PUSH2 0x14db
000014b7: DUP6
000014b8: PUSH1 0x01
000014ba: PUSH1 0x01
000014bc: PUSH1 0x80
000014be: SHL
000014bf: SUB
000014c0: AND
000014c1: PUSH1 0x00
000014c3: SUB
000014c4: DUP6
000014c5: PUSH1 0x01
000014c7: PUSH1 0x01
000014c9: PUSH1 0x80
000014cb: SHL
000014cc: SUB
000014cd: AND
000014ce: PUSH1 0x00
000014d0: SUB
000014d1: PUSH1 0x00
000014d3: DUP1
000014d4: PUSH1 0x00
000014d6: DUP1
000014d7: PUSH2 0x2c78
000014da: JUMP
000014db: JUMPDEST
000014dc: PUSH1 0x40
000014de: DUP1
000014df: MLOAD
000014e0: PUSH1 0x01
000014e2: PUSH1 0x01
000014e4: PUSH1 0xa0
000014e6: SHL
000014e7: SUB
000014e8: DUP13
000014e9: AND
000014ea: DUP2
000014eb: MSTORE
000014ec: PUSH1 0x01
000014ee: PUSH1 0x01
000014f0: PUSH1 0x80
000014f2: SHL
000014f3: SUB
000014f4: DUP1
000014f5: DUP9
000014f6: AND
000014f7: PUSH1 0x20
000014f9: DUP4
000014fa: ADD
000014fb: MSTORE
000014fc: DUP7
000014fd: AND
000014fe: DUP2
000014ff: DUP4
00001500: ADD
00001501: MSTORE
00001502: SWAP1
00001503: MLOAD
00001504: PUSH1 0x02
00001506: DUP11
00001507: DUP2
00001508: SIGNEXTEND
00001509: SWAP3
0000150a: SWAP1
0000150b: DUP13
0000150c: SWAP1
0000150d: SIGNEXTEND
0000150e: SWAP2
0000150f: CALLER
00001510: SWAP2
00001511: PUSH32 0x70935338e69775456a85ddef226c395fb668b63fa0115f5f20610b388e6ca9c0
00001532: SWAP2
00001533: SWAP1
00001534: DUP2
00001535: SWAP1
00001536: SUB
00001537: PUSH1 0x60
00001539: ADD
0000153a: SWAP1
0000153b: LOG4
0000153c: JUMPDEST
0000153d: PUSH2 0x1544
00001540: PUSH2 0x303c
00001543: JUMP
00001544: JUMPDEST
00001545: POP
00001546: POP
00001547: POP
00001548: SWAP6
00001549: POP
0000154a: SWAP6
0000154b: SWAP4
0000154c: POP
0000154d: POP
0000154e: POP
0000154f: POP
00001550: JUMP
00001551: JUMPDEST
00001552: PUSH2 0x1559
00001555: PUSH2 0x3300
00001558: JUMP
00001559: JUMPDEST
0000155a: PUSH1 0x02
0000155c: SLOAD
0000155d: PUSH1 0x01
0000155f: PUSH1 0xc8
00001561: SHL
00001562: DUP2
00001563: DIV
00001564: PUSH1 0x80
00001566: AND
00001567: ISZERO
00001568: ISZERO
00001569: SWAP1
0000156a: PUSH1 0x01
0000156c: PUSH1 0xe0
0000156e: SHL
0000156f: SWAP1
00001570: DIV
00001571: PUSH1 0xff
00001573: AND
00001574: PUSH2 0x1590
00001577: JUMPI
00001578: PUSH1 0x40
0000157a: MLOAD
0000157b: PUSH4 0x67984809
00001580: PUSH1 0xe1
00001582: SHL
00001583: DUP2
00001584: MSTORE
00001585: PUSH1 0x04
00001587: ADD
00001588: PUSH1 0x40
0000158a: MLOAD
0000158b: DUP1
0000158c: SWAP2
0000158d: SUB
0000158e: SWAP1
0000158f: REVERT
00001590: JUMPDEST
00001591: DUP1
00001592: ISZERO
00001593: PUSH2 0x15af
00001596: JUMPI
00001597: PUSH1 0x40
00001599: MLOAD
0000159a: PUSH4 0x69cdc707
0000159f: PUSH1 0xe1
000015a1: SHL
000015a2: DUP2
000015a3: MSTORE
000015a4: PUSH1 0x04
000015a6: ADD
000015a7: PUSH1 0x40
000015a9: MLOAD
000015aa: DUP1
000015ab: SWAP2
000015ac: SUB
000015ad: SWAP1
000015ae: REVERT
000015af: JUMPDEST
000015b0: PUSH2 0x15b8
000015b3: DUP3
000015b4: PUSH2 0x39c9
000015b7: JUMP
000015b8: JUMPDEST
000015b9: POP
000015ba: POP
000015bb: JUMP
000015bc: JUMPDEST
000015bd: PUSH1 0x02
000015bf: DUP1
000015c0: SLOAD
000015c1: PUSH1 0x01
000015c3: PUSH1 0x01
000015c5: PUSH1 0xa0
000015c7: SHL
000015c8: SUB
000015c9: DUP2
000015ca: AND
000015cb: SWAP2
000015cc: PUSH1 0x01
000015ce: PUSH1 0xa0
000015d0: SHL
000015d1: DUP3
000015d2: DIV
000015d3: SWAP1
000015d4: SIGNEXTEND
000015d5: SWAP1
000015d6: PUSH2 0xffff
000015d9: PUSH1 0x01
000015db: PUSH1 0xb8
000015dd: SHL
000015de: DUP3
000015df: DIV
000015e0: AND
000015e1: SWAP1
000015e2: PUSH1 0xff
000015e4: PUSH1 0x01
000015e6: PUSH1 0xc8
000015e8: SHL
000015e9: DUP3
000015ea: DIV
000015eb: DUP2
000015ec: AND
000015ed: SWAP2
000015ee: PUSH1 0x00
000015f0: SWAP2
000015f1: DUP3
000015f2: SWAP2
000015f3: DUP3
000015f4: SWAP2
000015f5: PUSH1 0x01
000015f7: PUSH1 0xe0
000015f9: SHL
000015fa: SWAP1
000015fb: SWAP2
000015fc: DIV
000015fd: AND
000015fe: DUP1
000015ff: PUSH2 0x161b
00001602: JUMPI
00001603: PUSH1 0x40
00001605: MLOAD
00001606: PUSH4 0x67984809
0000160b: PUSH1 0xe1
0000160d: SHL
0000160e: DUP2
0000160f: MSTORE
00001610: PUSH1 0x04
00001612: ADD
00001613: PUSH1 0x40
00001615: MLOAD
00001616: DUP1
00001617: SWAP2
00001618: SUB
00001619: SWAP1
0000161a: REVERT
0000161b: JUMPDEST
0000161c: POP
0000161d: POP
0000161e: PUSH1 0x09
00001620: SLOAD
00001621: SWAP6
00001622: SWAP7
00001623: SWAP5
00001624: SWAP6
00001625: SWAP4
00001626: SWAP5
00001627: SWAP3
00001628: SWAP4
00001629: PUSH1 0x01
0000162b: PUSH1 0x01
0000162d: PUSH1 0x80
0000162f: SHL
00001630: SUB
00001631: PUSH1 0x01
00001633: PUSH1 0x30
00001635: SHL
00001636: DUP3
00001637: DIV
00001638: AND
00001639: SWAP4
0000163a: PUSH1 0x02
0000163c: DUP3
0000163d: DUP2
0000163e: SIGNEXTEND
0000163f: SWAP5
00001640: POP
00001641: PUSH4 0x01000000
00001646: SWAP1
00001647: SWAP3
00001648: DIV
00001649: SWAP1
0000164a: SWAP2
0000164b: SIGNEXTEND
0000164c: SWAP2
0000164d: POP
0000164e: JUMP
0000164f: JUMPDEST
00001650: PUSH1 0x00
00001652: DUP1
00001653: PUSH1 0x00
00001655: DUP7
00001656: SLT
00001657: ISZERO
00001658: PUSH2 0x1674
0000165b: JUMPI
0000165c: PUSH1 0x40
0000165e: MLOAD
0000165f: PUSH4 0x34cb3a01
00001664: PUSH1 0xe1
00001666: SHL
00001667: DUP2
00001668: MSTORE
00001669: PUSH1 0x04
0000166b: ADD
0000166c: PUSH1 0x40
0000166e: MLOAD
0000166f: DUP1
00001670: SWAP2
00001671: SUB
00001672: SWAP1
00001673: REVERT
00001674: JUMPDEST
00001675: PUSH2 0x167c
00001678: PUSH2 0x22a7
0000167b: JUMP
0000167c: JUMPDEST
0000167d: PUSH1 0x00
0000167f: DUP8
00001680: ISZERO
00001681: PUSH2 0x16d5
00001684: JUMPI
00001685: PUSH1 0x00
00001687: PUSH2 0x168e
0000168a: PUSH2 0x2be3
0000168d: JUMP
0000168e: JUMPDEST
0000168f: SWAP1
00001690: POP
00001691: PUSH2 0x169d
00001694: DUP9
00001695: PUSH1 0x00
00001697: DUP9
00001698: DUP9
00001699: PUSH2 0x2b82
0000169c: JUMP
0000169d: JUMPDEST
0000169e: PUSH1 0x00
000016a0: PUSH2 0x16a7
000016a3: PUSH2 0x2be3
000016a6: JUMP
000016a7: JUMPDEST
000016a8: SWAP1
000016a9: POP
000016aa: PUSH2 0x16bb
000016ad: PUSH2 0x16b6
000016b0: DUP4
000016b1: DUP4
000016b2: PUSH2 0x55bf
000016b5: JUMP
000016b6: JUMPDEST
000016b7: PUSH2 0x3a19
000016ba: JUMP
000016bb: JUMPDEST
000016bc: SWAP3
000016bd: POP
000016be: PUSH2 0x16ce
000016c1: DUP4
000016c2: PUSH1 0x00
000016c4: DUP1
000016c5: PUSH1 0x00
000016c7: DUP1
000016c8: PUSH1 0x00
000016ca: PUSH2 0x2c78
000016cd: JUMP
000016ce: JUMPDEST
000016cf: POP
000016d0: POP
000016d1: PUSH2 0x171d
000016d4: JUMP
000016d5: JUMPDEST
000016d6: PUSH1 0x00
000016d8: PUSH2 0x16df
000016db: PUSH2 0x2f67
000016de: JUMP
000016df: JUMPDEST
000016e0: SWAP1
000016e1: POP
000016e2: PUSH2 0x16ee
000016e5: PUSH1 0x00
000016e7: DUP10
000016e8: DUP9
000016e9: DUP9
000016ea: PUSH2 0x2b82
000016ed: JUMP
000016ee: JUMPDEST
000016ef: PUSH1 0x00
000016f1: PUSH2 0x16f8
000016f4: PUSH2 0x2f67
000016f7: JUMP
000016f8: JUMPDEST
000016f9: SWAP1
000016fa: POP
000016fb: PUSH2 0x1707
000016fe: PUSH2 0x16b6
00001701: DUP4
00001702: DUP4
00001703: PUSH2 0x55bf
00001706: JUMP
00001707: JUMPDEST
00001708: SWAP3
00001709: POP
0000170a: PUSH2 0x171a
0000170d: PUSH1 0x00
0000170f: DUP5
00001710: PUSH1 0x00
00001712: DUP1
00001713: PUSH1 0x00
00001715: DUP1
00001716: PUSH2 0x2c78
00001719: JUMP
0000171a: JUMPDEST
0000171b: POP
0000171c: POP
0000171d: JUMPDEST
0000171e: DUP7
0000171f: DUP2
00001720: EQ
00001721: PUSH2 0x1728
00001724: JUMPI
00001725: DUP1
00001726: SWAP7
00001727: POP
00001728: JUMPDEST
00001729: POP
0000172a: DUP6
0000172b: PUSH1 0x00
0000172d: SUB
0000172e: PUSH2 0x174a
00001731: JUMPI
00001732: PUSH1 0x40
00001734: MLOAD
00001735: PUSH4 0x3ed6d505
0000173a: PUSH1 0xe2
0000173c: SHL
0000173d: DUP2
0000173e: MSTORE
0000173f: PUSH1 0x04
00001741: ADD
00001742: PUSH1 0x40
00001744: MLOAD
00001745: DUP1
00001746: SWAP2
00001747: SUB
00001748: SWAP1
00001749: REVERT
0000174a: JUMPDEST
0000174b: PUSH2 0x1752
0000174e: PUSH2 0x303c
00001751: JUMP
00001752: JUMPDEST
00001753: PUSH1 0x00
00001755: DUP1
00001756: PUSH2 0x1765
00001759: DUP11
0000175a: DUP11
0000175b: DUP11
0000175c: DUP11
0000175d: PUSH1 0x01
0000175f: DUP12
00001760: DUP12
00001761: PUSH2 0x20f3
00001764: JUMP
00001765: JUMPDEST
00001766: SWAP2
00001767: POP
00001768: SWAP2
00001769: POP
0000176a: PUSH2 0x1771
0000176d: PUSH2 0x22a7
00001770: JUMP
00001771: JUMPDEST
00001772: PUSH2 0x1779
00001775: PUSH2 0x2969
00001778: JUMP
00001779: JUMPDEST
0000177a: POP
0000177b: POP
0000177c: PUSH2 0x1783
0000177f: PUSH2 0x5531
00001782: JUMP
00001783: JUMPDEST
00001784: PUSH2 0x178b
00001787: PUSH2 0x5551
0000178a: JUMP
0000178b: JUMPDEST
0000178c: PUSH2 0x1798
0000178f: DUP5
00001790: DUP5
00001791: DUP14
00001792: DUP14
00001793: DUP14
00001794: PUSH2 0x22e0
00001797: JUMP
00001798: JUMPDEST
00001799: PUSH1 0x01
0000179b: PUSH1 0x01
0000179d: PUSH1 0x80
0000179f: SHL
000017a0: SUB
000017a1: SWAP1
000017a2: SWAP2
000017a3: AND
000017a4: PUSH1 0x40
000017a6: DUP9
000017a7: ADD
000017a8: MSTORE
000017a9: PUSH1 0x02
000017ab: SWAP2
000017ac: SWAP1
000017ad: SWAP2
000017ae: SIGNEXTEND
000017af: PUSH1 0x20
000017b1: DUP8
000017b2: ADD
000017b3: MSTORE
000017b4: PUSH1 0x01
000017b6: PUSH1 0x01
000017b8: PUSH1 0xa0
000017ba: SHL
000017bb: SUB
000017bc: SWAP1
000017bd: SWAP2
000017be: AND
000017bf: DUP6
000017c0: MSTORE
000017c1: SWAP2
000017c2: SWAP8
000017c3: POP
000017c4: SWAP6
000017c5: POP
000017c6: SWAP1
000017c7: POP
000017c8: DUP11
000017c9: ISZERO
000017ca: PUSH2 0x1862
000017cd: JUMPI
000017ce: PUSH1 0x00
000017d0: DUP6
000017d1: SLT
000017d2: ISZERO
000017d3: PUSH2 0x1804
000017d6: JUMPI
000017d7: PUSH2 0x1804
000017da: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
000017fb: DUP14
000017fc: DUP8
000017fd: PUSH1 0x00
000017ff: SUB
00001800: PUSH2 0x2b72
00001803: JUMP
00001804: JUMPDEST
00001805: DUP6
00001806: DUP11
00001807: SUB
00001808: DUP11
00001809: DUP8
0000180a: EQ
0000180b: PUSH2 0x1839
0000180e: JUMPI
0000180f: PUSH2 0x1839
00001812: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001833: DUP16
00001834: DUP4
00001835: PUSH2 0x2b72
00001838: JUMP
00001839: JUMPDEST
0000183a: PUSH2 0x185c
0000183d: PUSH2 0x1845
00001840: DUP3
00001841: PUSH2 0x3a19
00001844: JUMP
00001845: JUMPDEST
00001846: PUSH1 0x00
00001848: SUB
00001849: DUP8
0000184a: DUP5
0000184b: PUSH1 0x00
0000184d: ADD
0000184e: MLOAD
0000184f: PUSH1 0x00
00001851: DUP7
00001852: PUSH1 0x20
00001854: ADD
00001855: MLOAD
00001856: PUSH1 0x00
00001858: PUSH2 0x2c78
0000185b: JUMP
0000185c: JUMPDEST
0000185d: POP
0000185e: PUSH2 0x18f3
00001861: JUMP
00001862: JUMPDEST
00001863: PUSH1 0x00
00001865: DUP7
00001866: SLT
00001867: ISZERO
00001868: PUSH2 0x1899
0000186b: JUMPI
0000186c: PUSH2 0x1899
0000186f: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001890: DUP14
00001891: DUP9
00001892: PUSH1 0x00
00001894: SUB
00001895: PUSH2 0x2b72
00001898: JUMP
00001899: JUMPDEST
0000189a: DUP5
0000189b: DUP11
0000189c: SUB
0000189d: DUP11
0000189e: DUP7
0000189f: EQ
000018a0: PUSH2 0x18ce
000018a3: JUMPI
000018a4: PUSH2 0x18ce
000018a7: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
000018c8: DUP16
000018c9: DUP4
000018ca: PUSH2 0x2b72
000018cd: JUMP
000018ce: JUMPDEST
000018cf: PUSH2 0x18f1
000018d2: DUP8
000018d3: PUSH2 0x18db
000018d6: DUP4
000018d7: PUSH2 0x3a19
000018da: JUMP
000018db: JUMPDEST
000018dc: PUSH1 0x00
000018de: SUB
000018df: PUSH1 0x00
000018e1: DUP6
000018e2: PUSH1 0x00
000018e4: ADD
000018e5: MLOAD
000018e6: PUSH1 0x00
000018e8: DUP8
000018e9: PUSH1 0x20
000018eb: ADD
000018ec: MLOAD
000018ed: PUSH2 0x2c78
000018f0: JUMP
000018f1: JUMPDEST
000018f2: POP
000018f3: JUMPDEST
000018f4: PUSH2 0x190f
000018f7: DUP13
000018f8: DUP8
000018f9: DUP8
000018fa: DUP6
000018fb: PUSH1 0x00
000018fd: ADD
000018fe: MLOAD
000018ff: DUP7
00001900: PUSH1 0x40
00001902: ADD
00001903: MLOAD
00001904: DUP8
00001905: PUSH1 0x20
00001907: ADD
00001908: MLOAD
00001909: DUP11
0000190a: DUP11
0000190b: PUSH2 0x2fb6
0000190e: JUMP
0000190f: JUMPDEST
00001910: PUSH2 0x1917
00001913: PUSH2 0x303c
00001916: JUMP
00001917: JUMPDEST
00001918: PUSH2 0x1927
0000191b: DUP13
0000191c: DUP13
0000191d: DUP13
0000191e: DUP13
0000191f: DUP11
00001920: DUP11
00001921: DUP15
00001922: DUP15
00001923: PUSH2 0x3051
00001926: JUMP
00001927: JUMPDEST
00001928: POP
00001929: POP
0000192a: POP
0000192b: POP
0000192c: SWAP8
0000192d: POP
0000192e: SWAP8
0000192f: SWAP6
00001930: POP
00001931: POP
00001932: POP
00001933: POP
00001934: POP
00001935: POP
00001936: JUMP
00001937: JUMPDEST
00001938: PUSH1 0x00
0000193a: DUP1
0000193b: PUSH1 0x00
0000193d: DUP8
0000193e: DUP8
0000193f: PUSH2 0x1948
00001942: DUP3
00001943: DUP3
00001944: PUSH2 0x341d
00001947: JUMP
00001948: JUMPDEST
00001949: DUP8
0000194a: PUSH1 0x01
0000194c: PUSH1 0x01
0000194e: PUSH1 0x80
00001950: SHL
00001951: SUB
00001952: AND
00001953: PUSH1 0x00
00001955: SUB
00001956: PUSH2 0x1972
00001959: JUMPI
0000195a: PUSH1 0x40
0000195c: MLOAD
0000195d: PUSH4 0xe6ace6df
00001962: PUSH1 0xe0
00001964: SHL
00001965: DUP2
00001966: MSTORE
00001967: PUSH1 0x04
00001969: ADD
0000196a: PUSH1 0x40
0000196c: MLOAD
0000196d: DUP1
0000196e: SWAP2
0000196f: SUB
00001970: SWAP1
00001971: REVERT
00001972: JUMPDEST
00001973: PUSH2 0x1991
00001976: DUP12
00001977: DUP12
00001978: DUP12
00001979: PUSH2 0x198a
0000197c: DUP13
0000197d: PUSH1 0x01
0000197f: PUSH1 0x01
00001981: PUSH1 0x80
00001983: SHL
00001984: SUB
00001985: AND
00001986: PUSH2 0x3a2d
00001989: JUMP
0000198a: JUMPDEST
0000198b: DUP12
0000198c: DUP12
0000198d: PUSH2 0x349f
00001990: JUMP
00001991: JUMPDEST
00001992: POP
00001993: PUSH2 0x199a
00001996: PUSH2 0x22a7
00001999: JUMP
0000199a: JUMPDEST
0000199b: PUSH1 0x02
0000199d: DUP1
0000199e: SLOAD
0000199f: PUSH1 0x01
000019a1: PUSH1 0xa0
000019a3: SHL
000019a4: DUP2
000019a5: DIV
000019a6: SWAP1
000019a7: SWAP2
000019a8: SIGNEXTEND
000019a9: SWAP1
000019aa: PUSH1 0x01
000019ac: PUSH1 0x01
000019ae: PUSH1 0xa0
000019b0: SHL
000019b1: SUB
000019b2: AND
000019b3: PUSH1 0x00
000019b5: DUP2
000019b6: SWAP1
000019b7: SUB
000019b8: PUSH2 0x19d4
000019bb: JUMPI
000019bc: PUSH1 0x40
000019be: MLOAD
000019bf: PUSH4 0x812eb655
000019c4: PUSH1 0xe0
000019c6: SHL
000019c7: DUP2
000019c8: MSTORE
000019c9: PUSH1 0x04
000019cb: ADD
000019cc: PUSH1 0x40
000019ce: MLOAD
000019cf: DUP1
000019d0: SWAP2
000019d1: SUB
000019d2: SWAP1
000019d3: REVERT
000019d4: JUMPDEST
000019d5: PUSH1 0x09
000019d7: SLOAD
000019d8: PUSH1 0x01
000019da: PUSH1 0xb0
000019dc: SHL
000019dd: SWAP1
000019de: DIV
000019df: PUSH1 0x02
000019e1: SWAP1
000019e2: DUP2
000019e3: SIGNEXTEND
000019e4: SWAP1
000019e5: DUP2
000019e6: SWAP1
000019e7: DUP14
000019e8: SWAP1
000019e9: SIGNEXTEND
000019ea: DUP2
000019eb: PUSH2 0x19f6
000019ee: JUMPI
000019ef: PUSH2 0x19f6
000019f2: PUSH2 0x55f9
000019f5: JUMP
000019f6: JUMPDEST
000019f7: SMOD
000019f8: DUP2
000019f9: PUSH1 0x02
000019fb: SIGNEXTEND
000019fc: DUP15
000019fd: PUSH1 0x02
000019ff: SIGNEXTEND
00001a00: DUP2
00001a01: PUSH2 0x1a0c
00001a04: JUMPI
00001a05: PUSH2 0x1a0c
00001a08: PUSH2 0x55f9
00001a0b: JUMP
00001a0c: JUMPDEST
00001a0d: SMOD
00001a0e: OR
00001a0f: PUSH1 0x02
00001a11: SIGNEXTEND
00001a12: ISZERO
00001a13: PUSH2 0x1a2f
00001a16: JUMPI
00001a17: PUSH1 0x40
00001a19: MLOAD
00001a1a: PUSH4 0x5f6e14f3
00001a1f: PUSH1 0xe0
00001a21: SHL
00001a22: DUP2
00001a23: MSTORE
00001a24: PUSH1 0x04
00001a26: ADD
00001a27: PUSH1 0x40
00001a29: MLOAD
00001a2a: DUP1
00001a2b: SWAP2
00001a2c: SUB
00001a2d: SWAP1
00001a2e: REVERT
00001a2f: JUMPDEST
00001a30: POP
00001a31: PUSH2 0x1a4e
00001a34: DUP13
00001a35: DUP13
00001a36: PUSH2 0x1a47
00001a39: DUP14
00001a3a: PUSH1 0x01
00001a3c: PUSH1 0x01
00001a3e: PUSH1 0x80
00001a40: SHL
00001a41: SUB
00001a42: AND
00001a43: PUSH2 0x3a2d
00001a46: JUMP
00001a47: JUMPDEST
00001a48: DUP6
00001a49: DUP6
00001a4a: PUSH2 0x3a40
00001a4d: JUMP
00001a4e: JUMPDEST
00001a4f: POP
00001a50: SWAP1
00001a51: SWAP8
00001a52: POP
00001a53: SWAP6
00001a54: POP
00001a55: PUSH1 0x00
00001a57: SWAP2
00001a58: POP
00001a59: DUP2
00001a5a: SWAP1
00001a5b: POP
00001a5c: PUSH2 0x1a63
00001a5f: PUSH2 0x2969
00001a62: JUMP
00001a63: JUMPDEST
00001a64: SWAP2
00001a65: POP
00001a66: SWAP2
00001a67: POP
00001a68: PUSH2 0x1a73
00001a6b: DUP8
00001a6c: DUP8
00001a6d: DUP12
00001a6e: DUP12
00001a6f: PUSH2 0x3aef
00001a72: JUMP
00001a73: JUMPDEST
00001a74: DUP7
00001a75: ISZERO
00001a76: PUSH2 0x1a91
00001a79: JUMPI
00001a7a: DUP2
00001a7b: PUSH2 0x1a82
00001a7e: PUSH2 0x2be3
00001a81: JUMP
00001a82: JUMPDEST
00001a83: PUSH2 0x1a8c
00001a86: SWAP2
00001a87: SWAP1
00001a88: PUSH2 0x55bf
00001a8b: JUMP
00001a8c: JUMPDEST
00001a8d: PUSH2 0x1a94
00001a90: JUMP
00001a91: JUMPDEST
00001a92: PUSH1 0x00
00001a94: JUMPDEST
00001a95: SWAP2
00001a96: POP
00001a97: DUP6
00001a98: ISZERO
00001a99: PUSH2 0x1ab4
00001a9c: JUMPI
00001a9d: DUP1
00001a9e: PUSH2 0x1aa5
00001aa1: PUSH2 0x2f67
00001aa4: JUMP
00001aa5: JUMPDEST
00001aa6: PUSH2 0x1aaf
00001aa9: SWAP2
00001aaa: SWAP1
00001aab: PUSH2 0x55bf
00001aae: JUMP
00001aaf: JUMPDEST
00001ab0: PUSH2 0x1ab7
00001ab3: JUMP
00001ab4: JUMPDEST
00001ab5: PUSH1 0x00
00001ab7: JUMPDEST
00001ab8: SWAP1
00001ab9: POP
00001aba: DUP7
00001abb: DUP3
00001abc: LT
00001abd: ISZERO
00001abe: PUSH2 0x1adc
00001ac1: JUMPI
00001ac2: PUSH2 0x1ad5
00001ac5: DUP11
00001ac6: PUSH1 0x01
00001ac8: PUSH1 0x01
00001aca: PUSH1 0x80
00001acc: SHL
00001acd: SUB
00001ace: AND
00001acf: DUP4
00001ad0: DUP10
00001ad1: PUSH2 0x3742
00001ad4: JUMP
00001ad5: JUMPDEST
00001ad6: SWAP5
00001ad7: POP
00001ad8: PUSH2 0x1ae0
00001adb: JUMP
00001adc: JUMPDEST
00001add: DUP10
00001ade: SWAP5
00001adf: POP
00001ae0: JUMPDEST
00001ae1: DUP6
00001ae2: DUP2
00001ae3: LT
00001ae4: ISZERO
00001ae5: PUSH2 0x1b20
00001ae8: JUMPI
00001ae9: PUSH1 0x00
00001aeb: PUSH2 0x1afe
00001aee: DUP12
00001aef: PUSH1 0x01
00001af1: PUSH1 0x01
00001af3: PUSH1 0x80
00001af5: SHL
00001af6: SUB
00001af7: AND
00001af8: DUP4
00001af9: DUP10
00001afa: PUSH2 0x3742
00001afd: JUMP
00001afe: JUMPDEST
00001aff: SWAP1
00001b00: POP
00001b01: DUP6
00001b02: PUSH1 0x01
00001b04: PUSH1 0x01
00001b06: PUSH1 0x80
00001b08: SHL
00001b09: SUB
00001b0a: AND
00001b0b: DUP2
00001b0c: PUSH1 0x01
00001b0e: PUSH1 0x01
00001b10: PUSH1 0x80
00001b12: SHL
00001b13: SUB
00001b14: AND
00001b15: LT
00001b16: ISZERO
00001b17: PUSH2 0x1b1e
00001b1a: JUMPI
00001b1b: DUP1
00001b1c: SWAP6
00001b1d: POP
00001b1e: JUMPDEST
00001b1f: POP
00001b20: JUMPDEST
00001b21: DUP5
00001b22: PUSH1 0x01
00001b24: PUSH1 0x01
00001b26: PUSH1 0x80
00001b28: SHL
00001b29: SUB
00001b2a: AND
00001b2b: PUSH1 0x00
00001b2d: SUB
00001b2e: PUSH2 0x1b4a
00001b31: JUMPI
00001b32: PUSH1 0x40
00001b34: MLOAD
00001b35: PUSH4 0x2fae8a9b
00001b3a: PUSH1 0xe2
00001b3c: SHL
00001b3d: DUP2
00001b3e: MSTORE
00001b3f: PUSH1 0x04
00001b41: ADD
00001b42: PUSH1 0x40
00001b44: MLOAD
00001b45: DUP1
00001b46: SWAP2
00001b47: SUB
00001b48: SWAP1
00001b49: REVERT
00001b4a: JUMPDEST
00001b4b: PUSH1 0x00
00001b4d: PUSH2 0x1b57
00001b50: DUP15
00001b51: DUP15
00001b52: DUP15
00001b53: PUSH2 0x35f4
00001b56: JUMP
00001b57: JUMPDEST
00001b58: SWAP1
00001b59: POP
00001b5a: PUSH2 0x1b76
00001b5d: DUP2
00001b5e: DUP15
00001b5f: DUP15
00001b60: PUSH2 0x1b71
00001b63: DUP11
00001b64: PUSH1 0x01
00001b66: PUSH1 0x01
00001b68: PUSH1 0x80
00001b6a: SHL
00001b6b: SUB
00001b6c: AND
00001b6d: PUSH2 0x3a2d
00001b70: JUMP
00001b71: JUMPDEST
00001b72: PUSH2 0x3620
00001b75: JUMP
00001b76: JUMPDEST
00001b77: SWAP1
00001b78: SWAP9
00001b79: POP
00001b7a: SWAP7
00001b7b: POP
00001b7c: POP
00001b7d: DUP7
00001b7e: ISZERO
00001b7f: PUSH2 0x1bcb
00001b82: JUMPI
00001b83: DUP7
00001b84: DUP3
00001b85: GT
00001b86: ISZERO
00001b87: PUSH2 0x1bbc
00001b8a: JUMPI
00001b8b: PUSH2 0x1bb7
00001b8e: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00001baf: DUP16
00001bb0: DUP10
00001bb1: DUP6
00001bb2: SUB
00001bb3: PUSH2 0x2b72
00001bb6: JUMP
00001bb7: JUMPDEST
00001bb8: PUSH2 0x1bcb
00001bbb: JUMP
00001bbc: JUMPDEST
00001bbd: DUP7
00001bbe: DUP3
00001bbf: EQ
00001bc0: PUSH2 0x1bcb
00001bc3: JUMPI
00001bc4: PUSH2 0x1bcb
00001bc7: PUSH2 0x560f
00001bca: JUMP
00001bcb: JUMPDEST
00001bcc: DUP6
00001bcd: ISZERO
00001bce: PUSH2 0x1c1a
00001bd1: JUMPI
00001bd2: DUP6
00001bd3: DUP2
00001bd4: GT
00001bd5: ISZERO
00001bd6: PUSH2 0x1c0b
00001bd9: JUMPI
00001bda: PUSH2 0x1c06
00001bdd: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
00001bfe: DUP16
00001bff: DUP9
00001c00: DUP5
00001c01: SUB
00001c02: PUSH2 0x2b72
00001c05: JUMP
00001c06: JUMPDEST
00001c07: PUSH2 0x1c1a
00001c0a: JUMP
00001c0b: JUMPDEST
00001c0c: DUP6
00001c0d: DUP2
00001c0e: EQ
00001c0f: PUSH2 0x1c1a
00001c12: JUMPI
00001c13: PUSH2 0x1c1a
00001c16: PUSH2 0x560f
00001c19: JUMP
00001c1a: JUMPDEST
00001c1b: PUSH2 0x1c2a
00001c1e: DUP8
00001c1f: DUP8
00001c20: PUSH1 0x00
00001c22: DUP1
00001c23: PUSH1 0x00
00001c25: DUP1
00001c26: PUSH2 0x2c78
00001c29: JUMP
00001c2a: JUMPDEST
00001c2b: DUP11
00001c2c: PUSH1 0x02
00001c2e: SIGNEXTEND
00001c2f: DUP13
00001c30: PUSH1 0x02
00001c32: SIGNEXTEND
00001c33: DUP15
00001c34: PUSH1 0x01
00001c36: PUSH1 0x01
00001c38: PUSH1 0xa0
00001c3a: SHL
00001c3b: SUB
00001c3c: AND
00001c3d: PUSH32 0x7a53080ba414158be7ec69b987b5fb7d07dee101fe85488f0853ae16239d0bde
00001c5e: CALLER
00001c5f: DUP10
00001c60: DUP13
00001c61: DUP13
00001c62: PUSH1 0x40
00001c64: MLOAD
00001c65: DUP1
00001c66: DUP6
00001c67: PUSH1 0x01
00001c69: PUSH1 0x01
00001c6b: PUSH1 0xa0
00001c6d: SHL
00001c6e: SUB
00001c6f: AND
00001c70: DUP2
00001c71: MSTORE
00001c72: PUSH1 0x20
00001c74: ADD
00001c75: DUP5
00001c76: PUSH1 0x01
00001c78: PUSH1 0x01
00001c7a: PUSH1 0x80
00001c7c: SHL
00001c7d: SUB
00001c7e: AND
00001c7f: DUP2
00001c80: MSTORE
00001c81: PUSH1 0x20
00001c83: ADD
00001c84: DUP4
00001c85: DUP2
00001c86: MSTORE
00001c87: PUSH1 0x20
00001c89: ADD
00001c8a: DUP3
00001c8b: DUP2
00001c8c: MSTORE
00001c8d: PUSH1 0x20
00001c8f: ADD
00001c90: SWAP5
00001c91: POP
00001c92: POP
00001c93: POP
00001c94: POP
00001c95: POP
00001c96: PUSH1 0x40
00001c98: MLOAD
00001c99: DUP1
00001c9a: SWAP2
00001c9b: SUB
00001c9c: SWAP1
00001c9d: LOG4
00001c9e: PUSH2 0x1ca5
00001ca1: PUSH2 0x303c
00001ca4: JUMP
00001ca5: JUMPDEST
00001ca6: PUSH2 0x1cc6
00001ca9: DUP14
00001caa: DUP14
00001cab: DUP14
00001cac: PUSH2 0x1cbd
00001caf: DUP10
00001cb0: PUSH1 0x01
00001cb2: PUSH1 0x01
00001cb4: PUSH1 0x80
00001cb6: SHL
00001cb7: SUB
00001cb8: AND
00001cb9: PUSH2 0x3a2d
00001cbc: JUMP
00001cbd: JUMPDEST
00001cbe: DUP12
00001cbf: DUP12
00001cc0: DUP16
00001cc1: DUP16
00001cc2: PUSH2 0x37db
00001cc5: JUMP
00001cc6: JUMPDEST
00001cc7: POP
00001cc8: POP
00001cc9: POP
00001cca: POP
00001ccb: SWAP8
00001ccc: POP
00001ccd: SWAP8
00001cce: POP
00001ccf: SWAP8
00001cd0: SWAP5
00001cd1: POP
00001cd2: POP
00001cd3: POP
00001cd4: POP
00001cd5: POP
00001cd6: JUMP
00001cd7: JUMPDEST
00001cd8: PUSH2 0x1cdf
00001cdb: PUSH2 0x32d6
00001cde: JUMP
00001cdf: JUMPDEST
00001ce0: PUSH1 0x06
00001ce2: SLOAD
00001ce3: PUSH1 0x01
00001ce5: PUSH1 0x01
00001ce7: PUSH1 0xa0
00001ce9: SHL
00001cea: SUB
00001ceb: AND
00001cec: DUP1
00001ced: PUSH2 0x1d09
00001cf0: JUMPI
00001cf1: PUSH1 0x40
00001cf3: MLOAD
00001cf4: PUSH4 0x9e727ce3
00001cf9: PUSH1 0xe0
00001cfb: SHL
00001cfc: DUP2
00001cfd: MSTORE
00001cfe: PUSH1 0x04
00001d00: ADD
00001d01: PUSH1 0x40
00001d03: MLOAD
00001d04: DUP1
00001d05: SWAP2
00001d06: SUB
00001d07: SWAP1
00001d08: REVERT
00001d09: JUMPDEST
00001d0a: CALLER
00001d0b: PUSH1 0x01
00001d0d: PUSH1 0x01
00001d0f: PUSH1 0xa0
00001d11: SHL
00001d12: SUB
00001d13: DUP3
00001d14: AND
00001d15: EQ
00001d16: PUSH2 0x1d21
00001d19: JUMPI
00001d1a: PUSH2 0x1d21
00001d1d: PUSH2 0x3300
00001d20: JUMP
00001d21: JUMPDEST
00001d22: PUSH2 0x15b8
00001d25: DUP3
00001d26: PUSH2 0x3b18
00001d29: JUMP
00001d2a: JUMPDEST
00001d2b: PUSH2 0x1d32
00001d2e: PUSH2 0x32d6
00001d31: JUMP
00001d32: JUMPDEST
00001d33: PUSH2 0x1d3a
00001d36: PUSH2 0x3300
00001d39: JUMP
00001d3a: JUMPDEST
00001d3b: PUSH2 0x1d44
00001d3e: PUSH1 0x00
00001d40: PUSH2 0x3b18
00001d43: JUMP
00001d44: JUMPDEST
00001d45: PUSH2 0x0ddc
00001d48: DUP2
00001d49: PUSH2 0x3b66
00001d4c: JUMP
00001d4d: JUMPDEST
00001d4e: PUSH2 0x1d55
00001d51: PUSH2 0x32d6
00001d54: JUMP
00001d55: JUMPDEST
00001d56: CALLER
00001d57: PUSH1 0x01
00001d59: PUSH1 0x01
00001d5b: PUSH1 0xa0
00001d5d: SHL
00001d5e: SUB
00001d5f: PUSH32 0x000000000000000000000000fb8ed3485efa29a0e4bed93351dd51b59fc4b0f0
00001d80: AND
00001d81: EQ
00001d82: PUSH2 0x1d8d
00001d85: JUMPI
00001d86: PUSH2 0x1d8d
00001d89: PUSH2 0x3300
00001d8c: JUMP
00001d8d: JUMPDEST
00001d8e: PUSH1 0x01
00001d90: PUSH1 0x01
00001d92: PUSH1 0xa0
00001d94: SHL
00001d95: SUB
00001d96: DUP2
00001d97: AND
00001d98: ISZERO
00001d99: DUP1
00001d9a: ISZERO
00001d9b: PUSH2 0x1db0
00001d9e: JUMPI
00001d9f: POP
00001da0: PUSH1 0x02
00001da2: SLOAD
00001da3: PUSH1 0x01
00001da5: PUSH1 0xd0
00001da7: SHL
00001da8: SWAP1
00001da9: DIV
00001daa: PUSH2 0xffff
00001dad: AND
00001dae: ISZERO
00001daf: ISZERO
00001db0: JUMPDEST
00001db1: ISZERO
00001db2: PUSH2 0x1dbf
00001db5: JUMPI
00001db6: PUSH2 0x1dbf
00001db9: PUSH1 0x00
00001dbb: PUSH2 0x33c6
00001dbe: JUMP
00001dbf: JUMPDEST
00001dc0: PUSH2 0x0ddc
00001dc3: DUP2
00001dc4: PUSH2 0x3bb1
00001dc7: JUMP
00001dc8: JUMPDEST
00001dc9: PUSH1 0x02
00001dcb: SLOAD
00001dcc: PUSH1 0x01
00001dce: PUSH1 0xb8
00001dd0: SHL
00001dd1: DUP2
00001dd2: DIV
00001dd3: PUSH2 0xffff
00001dd6: AND
00001dd7: SWAP1
00001dd8: PUSH1 0x01
00001dda: PUSH1 0xc8
00001ddc: SHL
00001ddd: SWAP1
00001dde: DIV
00001ddf: PUSH1 0xff
00001de1: DUP2
00001de2: AND
00001de3: SWAP1
00001de4: PUSH1 0x80
00001de6: AND
00001de7: ISZERO
00001de8: PUSH2 0x1e68
00001deb: JUMPI
00001dec: PUSH1 0x06
00001dee: PUSH1 0x00
00001df0: SWAP1
00001df1: SLOAD
00001df2: SWAP1
00001df3: PUSH2 0x0100
00001df6: EXP
00001df7: SWAP1
00001df8: DIV
00001df9: PUSH1 0x01
00001dfb: PUSH1 0x01
00001dfd: PUSH1 0xa0
00001dff: SHL
00001e00: SUB
00001e01: AND
00001e02: PUSH1 0x01
00001e04: PUSH1 0x01
00001e06: PUSH1 0xa0
00001e08: SHL
00001e09: SUB
00001e0a: AND
00001e0b: PUSH4 0xf70d9362
00001e10: PUSH1 0x40
00001e12: MLOAD
00001e13: DUP2
00001e14: PUSH4 0xffffffff
00001e19: AND
00001e1a: PUSH1 0xe0
00001e1c: SHL
00001e1d: DUP2
00001e1e: MSTORE
00001e1f: PUSH1 0x04
00001e21: ADD
00001e22: PUSH1 0x20
00001e24: PUSH1 0x40
00001e26: MLOAD
00001e27: DUP1
00001e28: DUP4
00001e29: SUB
00001e2a: DUP2
00001e2b: DUP7
00001e2c: GAS
00001e2d: STATICCALL
00001e2e: ISZERO
00001e2f: DUP1
00001e30: ISZERO
00001e31: PUSH2 0x1e3e
00001e34: JUMPI
00001e35: RETURNDATASIZE
00001e36: PUSH1 0x00
00001e38: DUP1
00001e39: RETURNDATACOPY
00001e3a: RETURNDATASIZE
00001e3b: PUSH1 0x00
00001e3d: REVERT
00001e3e: JUMPDEST
00001e3f: POP
00001e40: POP
00001e41: POP
00001e42: POP
00001e43: PUSH1 0x40
00001e45: MLOAD
00001e46: RETURNDATASIZE
00001e47: PUSH1 0x1f
00001e49: NOT
00001e4a: PUSH1 0x1f
00001e4c: DUP3
00001e4d: ADD
00001e4e: AND
00001e4f: DUP3
00001e50: ADD
00001e51: DUP1
00001e52: PUSH1 0x40
00001e54: MSTORE
00001e55: POP
00001e56: DUP2
00001e57: ADD
00001e58: SWAP1
00001e59: PUSH2 0x1e62
00001e5c: SWAP2
00001e5d: SWAP1
00001e5e: PUSH2 0x5637
00001e61: JUMP
00001e62: JUMPDEST
00001e63: SWAP2
00001e64: POP
00001e65: POP
00001e66: SWAP1
00001e67: JUMP
00001e68: JUMPDEST
00001e69: POP
00001e6a: SWAP1
00001e6b: JUMP
00001e6c: JUMPDEST
00001e6d: PUSH2 0x1e74
00001e70: PUSH2 0x32d6
00001e73: JUMP
00001e74: JUMPDEST
00001e75: PUSH2 0x1e7c
00001e78: PUSH2 0x3300
00001e7b: JUMP
00001e7c: JUMPDEST
00001e7d: PUSH1 0x00
00001e7f: DUP2
00001e80: PUSH1 0x02
00001e82: SIGNEXTEND
00001e83: SGT
00001e84: ISZERO
00001e85: DUP1
00001e86: PUSH2 0x1e94
00001e89: JUMPI
00001e8a: POP
00001e8b: PUSH2 0x01f4
00001e8e: PUSH1 0x02
00001e90: DUP3
00001e91: SWAP1
00001e92: SIGNEXTEND
00001e93: SGT
00001e94: JUMPDEST
00001e95: DUP1
00001e96: PUSH2 0x1eae
00001e99: JUMPI
00001e9a: POP
00001e9b: PUSH1 0x09
00001e9d: SLOAD
00001e9e: PUSH1 0x02
00001ea0: DUP3
00001ea1: DUP2
00001ea2: SIGNEXTEND
00001ea3: PUSH1 0x01
00001ea5: PUSH1 0xb0
00001ea7: SHL
00001ea8: SWAP1
00001ea9: SWAP3
00001eaa: DIV
00001eab: SWAP1
00001eac: SIGNEXTEND
00001ead: EQ
00001eae: JUMPDEST
00001eaf: ISZERO
00001eb0: PUSH2 0x1ecc
00001eb3: JUMPI
00001eb4: PUSH1 0x40
00001eb6: MLOAD
00001eb7: PUSH4 0x2bf827d1
00001ebc: PUSH1 0xe2
00001ebe: SHL
00001ebf: DUP2
00001ec0: MSTORE
00001ec1: PUSH1 0x04
00001ec3: ADD
00001ec4: PUSH1 0x40
00001ec6: MLOAD
00001ec7: DUP1
00001ec8: SWAP2
00001ec9: SUB
00001eca: SWAP1
00001ecb: REVERT
00001ecc: JUMPDEST
00001ecd: PUSH2 0x0ddc
00001ed0: DUP2
00001ed1: PUSH2 0x3bfc
00001ed4: JUMP
00001ed5: JUMPDEST
00001ed6: PUSH1 0x00
00001ed8: PUSH2 0x1ee0
00001edb: DUP3
00001edc: PUSH2 0x3c4c
00001edf: JUMP
00001ee0: JUMPDEST
00001ee1: PUSH1 0x02
00001ee3: SLOAD
00001ee4: SWAP1
00001ee5: SWAP2
00001ee6: POP
00001ee7: PUSH1 0x01
00001ee9: PUSH1 0x01
00001eeb: PUSH1 0xa0
00001eed: SHL
00001eee: SUB
00001eef: AND
00001ef0: ISZERO
00001ef1: PUSH2 0x1f0d
00001ef4: JUMPI
00001ef5: PUSH1 0x40
00001ef7: MLOAD
00001ef8: PUSH4 0x1499a6b7
00001efd: PUSH1 0xe2
00001eff: SHL
00001f00: DUP2
00001f01: MSTORE
00001f02: PUSH1 0x04
00001f04: ADD
00001f05: PUSH1 0x40
00001f07: MLOAD
00001f08: DUP1
00001f09: SWAP2
00001f0a: SUB
00001f0b: SWAP1
00001f0c: REVERT
00001f0d: JUMPDEST
00001f0e: PUSH1 0x02
00001f10: DUP1
00001f11: SLOAD
00001f12: PUSH1 0x01
00001f14: PUSH1 0x01
00001f16: PUSH1 0xa0
00001f18: SHL
00001f19: SUB
00001f1a: DUP5
00001f1b: AND
00001f1c: PUSH1 0x01
00001f1e: PUSH1 0x01
00001f20: PUSH1 0xb8
00001f22: SHL
00001f23: SUB
00001f24: NOT
00001f25: SWAP1
00001f26: SWAP2
00001f27: AND
00001f28: DUP2
00001f29: OR
00001f2a: PUSH1 0x01
00001f2c: PUSH1 0xa0
00001f2e: SHL
00001f2f: PUSH3 0xffffff
00001f33: DUP6
00001f34: AND
00001f35: MUL
00001f36: OR
00001f37: DUP3
00001f38: SSTORE
00001f39: PUSH1 0x40
00001f3b: DUP1
00001f3c: MLOAD
00001f3d: SWAP2
00001f3e: DUP3
00001f3f: MSTORE
00001f40: SWAP2
00001f41: DUP4
00001f42: SWAP1
00001f43: SIGNEXTEND
00001f44: PUSH1 0x20
00001f46: DUP3
00001f47: ADD
00001f48: MSTORE
00001f49: DUP2
00001f4a: MLOAD
00001f4b: PUSH32 0x98636036cb66a9c19a37435efc1e90142190214e8abeb821bdba3f2990dd4c95
00001f6c: SWAP3
00001f6d: SWAP2
00001f6e: DUP2
00001f6f: SWAP1
00001f70: SUB
00001f71: SWAP1
00001f72: SWAP2
00001f73: ADD
00001f74: SWAP1
00001f75: LOG1
00001f76: PUSH1 0x06
00001f78: SLOAD
00001f79: PUSH1 0x01
00001f7b: PUSH1 0x01
00001f7d: PUSH1 0xa0
00001f7f: SHL
00001f80: SUB
00001f81: AND
00001f82: ISZERO
00001f83: PUSH2 0x1fe6
00001f86: JUMPI
00001f87: PUSH1 0x06
00001f89: SLOAD
00001f8a: PUSH1 0x40
00001f8c: DUP1
00001f8d: MLOAD
00001f8e: PUSH4 0x18dbf601
00001f93: PUSH1 0xe2
00001f95: SHL
00001f96: DUP1
00001f97: DUP3
00001f98: MSTORE
00001f99: CALLER
00001f9a: PUSH1 0x04
00001f9c: DUP4
00001f9d: ADD
00001f9e: MSTORE
00001f9f: PUSH1 0x01
00001fa1: PUSH1 0x01
00001fa3: PUSH1 0xa0
00001fa5: SHL
00001fa6: SUB
00001fa7: DUP7
00001fa8: DUP2
00001fa9: AND
00001faa: PUSH1 0x24
00001fac: DUP5
00001fad: ADD
00001fae: MSTORE
00001faf: SWAP3
00001fb0: MLOAD
00001fb1: PUSH2 0x1fe6
00001fb4: SWAP5
00001fb5: SWAP2
00001fb6: SWAP4
00001fb7: SWAP1
00001fb8: SWAP2
00001fb9: AND
00001fba: SWAP2
00001fbb: PUSH4 0x636fd804
00001fc0: SWAP2
00001fc1: PUSH1 0x44
00001fc3: DUP1
00001fc4: DUP4
00001fc5: ADD
00001fc6: SWAP3
00001fc7: PUSH1 0x20
00001fc9: SWAP3
00001fca: SWAP2
00001fcb: SWAP1
00001fcc: DUP3
00001fcd: SWAP1
00001fce: SUB
00001fcf: ADD
00001fd0: DUP2
00001fd1: PUSH1 0x00
00001fd3: DUP8
00001fd4: GAS
00001fd5: CALL
00001fd6: ISZERO
00001fd7: DUP1
00001fd8: ISZERO
00001fd9: PUSH2 0x10a1
00001fdc: JUMPI
00001fdd: RETURNDATASIZE
00001fde: PUSH1 0x00
00001fe0: DUP1
00001fe1: RETURNDATACOPY
00001fe2: RETURNDATASIZE
00001fe3: PUSH1 0x00
00001fe5: REVERT
00001fe6: JUMPDEST
00001fe7: PUSH1 0x00
00001fe9: DUP1
00001fea: PUSH1 0x00
00001fec: PUSH2 0x1ff3
00001fef: PUSH2 0x3f1e
00001ff2: JUMP
00001ff3: JUMPDEST
00001ff4: SWAP3
00001ff5: POP
00001ff6: SWAP3
00001ff7: POP
00001ff8: SWAP3
00001ff9: POP
00001ffa: PUSH2 0x2002
00001ffd: DUP2
00001ffe: PUSH2 0x39c9
00002001: JUMP
00002002: JUMPDEST
00002003: PUSH2 0x200b
00002006: DUP3
00002007: PUSH2 0x3bfc
0000200a: JUMP
0000200b: JUMPDEST
0000200c: PUSH2 0xffff
0000200f: DUP4
00002010: AND
00002011: ISZERO
00002012: DUP1
00002013: ISZERO
00002014: SWAP1
00002015: PUSH2 0x2027
00002018: JUMPI
00002019: POP
0000201a: PUSH1 0x07
0000201c: SLOAD
0000201d: PUSH1 0x01
0000201f: PUSH1 0x01
00002021: PUSH1 0xa0
00002023: SHL
00002024: SUB
00002025: AND
00002026: ISZERO
00002027: JUMPDEST
00002028: ISZERO
00002029: PUSH2 0x2045
0000202c: JUMPI
0000202d: PUSH1 0x40
0000202f: MLOAD
00002030: PUSH4 0xa709b9af
00002035: PUSH1 0xe0
00002037: SHL
00002038: DUP2
00002039: MSTORE
0000203a: PUSH1 0x04
0000203c: ADD
0000203d: PUSH1 0x40
0000203f: MLOAD
00002040: DUP1
00002041: SWAP2
00002042: SUB
00002043: SWAP1
00002044: REVERT
00002045: JUMPDEST
00002046: PUSH2 0x204e
00002049: DUP4
0000204a: PUSH2 0x33c6
0000204d: JUMP
0000204e: JUMPDEST
0000204f: PUSH1 0x02
00002051: SLOAD
00002052: PUSH1 0x01
00002054: PUSH1 0xc8
00002056: SHL
00002057: SWAP1
00002058: DIV
00002059: PUSH1 0x40
0000205b: AND
0000205c: ISZERO
0000205d: PUSH2 0x20ca
00002060: JUMPI
00002061: PUSH1 0x06
00002063: SLOAD
00002064: PUSH1 0x40
00002066: DUP1
00002067: MLOAD
00002068: PUSH4 0x416eb291
0000206d: PUSH1 0xe1
0000206f: SHL
00002070: DUP1
00002071: DUP3
00002072: MSTORE
00002073: CALLER
00002074: PUSH1 0x04
00002076: DUP4
00002077: ADD
00002078: MSTORE
00002079: PUSH1 0x01
0000207b: PUSH1 0x01
0000207d: PUSH1 0xa0
0000207f: SHL
00002080: SUB
00002081: DUP10
00002082: DUP2
00002083: AND
00002084: PUSH1 0x24
00002086: DUP5
00002087: ADD
00002088: MSTORE
00002089: PUSH1 0x02
0000208b: DUP10
0000208c: SWAP1
0000208d: SIGNEXTEND
0000208e: PUSH1 0x44
00002090: DUP5
00002091: ADD
00002092: MSTORE
00002093: SWAP3
00002094: MLOAD
00002095: PUSH2 0x20ca
00002098: SWAP5
00002099: SWAP2
0000209a: SWAP4
0000209b: SWAP1
0000209c: SWAP2
0000209d: AND
0000209e: SWAP2
0000209f: PUSH4 0x82dd6522
000020a4: SWAP2
000020a5: PUSH1 0x64
000020a7: DUP1
000020a8: DUP4
000020a9: ADD
000020aa: SWAP3
000020ab: PUSH1 0x20
000020ad: SWAP3
000020ae: SWAP2
000020af: SWAP1
000020b0: DUP3
000020b1: SWAP1
000020b2: SUB
000020b3: ADD
000020b4: DUP2
000020b5: PUSH1 0x00
000020b7: DUP8
000020b8: GAS
000020b9: CALL
000020ba: ISZERO
000020bb: DUP1
000020bc: ISZERO
000020bd: PUSH2 0x10a1
000020c0: JUMPI
000020c1: RETURNDATASIZE
000020c2: PUSH1 0x00
000020c4: DUP1
000020c5: RETURNDATACOPY
000020c6: RETURNDATASIZE
000020c7: PUSH1 0x00
000020c9: REVERT
000020ca: JUMPDEST
000020cb: POP
000020cc: POP
000020cd: POP
000020ce: POP
000020cf: POP
000020d0: JUMP
000020d1: JUMPDEST
000020d2: PUSH2 0x20d9
000020d5: PUSH2 0x315a
000020d8: JUMP
000020d9: JUMPDEST
000020da: PUSH2 0x20e1
000020dd: PUSH2 0x22a7
000020e0: JUMP
000020e1: JUMPDEST
000020e2: PUSH2 0x20e9
000020e5: PUSH2 0x2969
000020e8: JUMP
000020e9: JUMPDEST
000020ea: POP
000020eb: POP
000020ec: PUSH2 0x0d5e
000020ef: PUSH2 0x303c
000020f2: JUMP
000020f3: JUMPDEST
000020f4: PUSH1 0x02
000020f6: SLOAD
000020f7: PUSH1 0x00
000020f9: SWAP1
000020fa: DUP2
000020fb: SWAP1
000020fc: PUSH1 0x01
000020fe: PUSH1 0xc8
00002100: SHL
00002101: SWAP1
00002102: DIV
00002103: PUSH1 0xff
00002105: AND
00002106: PUSH2 0x2111
00002109: DUP2
0000210a: PUSH1 0x01
0000210c: AND
0000210d: ISZERO
0000210e: ISZERO
0000210f: SWAP1
00002110: JUMP
00002111: JUMPDEST
00002112: ISZERO
00002113: PUSH2 0x2299
00002116: JUMPI
00002117: PUSH2 0x211e
0000211a: PUSH2 0x3fb0
0000211d: JUMP
0000211e: JUMPDEST
0000211f: ISZERO
00002120: PUSH2 0x2130
00002123: JUMPI
00002124: PUSH1 0x00
00002126: DUP1
00002127: SWAP3
00002128: POP
00002129: SWAP3
0000212a: POP
0000212b: POP
0000212c: PUSH2 0x229b
0000212f: JUMP
00002130: JUMPDEST
00002131: PUSH1 0x00
00002133: PUSH1 0x06
00002135: PUSH1 0x00
00002137: SWAP1
00002138: SLOAD
00002139: SWAP1
0000213a: PUSH2 0x0100
0000213d: EXP
0000213e: SWAP1
0000213f: DIV
00002140: PUSH1 0x01
00002142: PUSH1 0x01
00002144: PUSH1 0xa0
00002146: SHL
00002147: SUB
00002148: AND
00002149: PUSH1 0x01
0000214b: PUSH1 0x01
0000214d: PUSH1 0xa0
0000214f: SHL
00002150: SUB
00002151: AND
00002152: PUSH4 0x029c1cb7
00002157: CALLER
00002158: DUP14
00002159: DUP14
0000215a: DUP14
0000215b: DUP14
0000215c: DUP14
0000215d: DUP14
0000215e: DUP14
0000215f: PUSH1 0x40
00002161: MLOAD
00002162: DUP10
00002163: PUSH4 0xffffffff
00002168: AND
00002169: PUSH1 0xe0
0000216b: SHL
0000216c: DUP2
0000216d: MSTORE
0000216e: PUSH1 0x04
00002170: ADD
00002171: DUP1
00002172: DUP10
00002173: PUSH1 0x01
00002175: PUSH1 0x01
00002177: PUSH1 0xa0
00002179: SHL
0000217a: SUB
0000217b: AND
0000217c: DUP2
0000217d: MSTORE
0000217e: PUSH1 0x20
00002180: ADD
00002181: DUP9
00002182: PUSH1 0x01
00002184: PUSH1 0x01
00002186: PUSH1 0xa0
00002188: SHL
00002189: SUB
0000218a: AND
0000218b: DUP2
0000218c: MSTORE
0000218d: PUSH1 0x20
0000218f: ADD
00002190: DUP8
00002191: ISZERO
00002192: ISZERO
00002193: DUP2
00002194: MSTORE
00002195: PUSH1 0x20
00002197: ADD
00002198: DUP7
00002199: DUP2
0000219a: MSTORE
0000219b: PUSH1 0x20
0000219d: ADD
0000219e: DUP6
0000219f: PUSH1 0x01
000021a1: PUSH1 0x01
000021a3: PUSH1 0xa0
000021a5: SHL
000021a6: SUB
000021a7: AND
000021a8: DUP2
000021a9: MSTORE
000021aa: PUSH1 0x20
000021ac: ADD
000021ad: DUP5
000021ae: ISZERO
000021af: ISZERO
000021b0: DUP2
000021b1: MSTORE
000021b2: PUSH1 0x20
000021b4: ADD
000021b5: DUP1
000021b6: PUSH1 0x20
000021b8: ADD
000021b9: DUP3
000021ba: DUP2
000021bb: SUB
000021bc: DUP3
000021bd: MSTORE
000021be: DUP5
000021bf: DUP5
000021c0: DUP3
000021c1: DUP2
000021c2: DUP2
000021c3: MSTORE
000021c4: PUSH1 0x20
000021c6: ADD
000021c7: SWAP3
000021c8: POP
000021c9: DUP1
000021ca: DUP3
000021cb: DUP5
000021cc: CALLDATACOPY
000021cd: PUSH1 0x00
000021cf: DUP2
000021d0: DUP5
000021d1: ADD
000021d2: MSTORE
000021d3: PUSH1 0x1f
000021d5: NOT
000021d6: PUSH1 0x1f
000021d8: DUP3
000021d9: ADD
000021da: AND
000021db: SWAP1
000021dc: POP
000021dd: DUP1
000021de: DUP4
000021df: ADD
000021e0: SWAP3
000021e1: POP
000021e2: POP
000021e3: POP
000021e4: SWAP10
000021e5: POP
000021e6: POP
000021e7: POP
000021e8: POP
000021e9: POP
000021ea: POP
000021eb: POP
000021ec: POP
000021ed: POP
000021ee: POP
000021ef: PUSH1 0x60
000021f1: PUSH1 0x40
000021f3: MLOAD
000021f4: DUP1
000021f5: DUP4
000021f6: SUB
000021f7: DUP2
000021f8: PUSH1 0x00
000021fa: DUP8
000021fb: GAS
000021fc: CALL
000021fd: ISZERO
000021fe: DUP1
000021ff: ISZERO
00002200: PUSH2 0x220d
00002203: JUMPI
00002204: RETURNDATASIZE
00002205: PUSH1 0x00
00002207: DUP1
00002208: RETURNDATACOPY
00002209: RETURNDATASIZE
0000220a: PUSH1 0x00
0000220c: REVERT
0000220d: JUMPDEST
0000220e: POP
0000220f: POP
00002210: POP
00002211: POP
00002212: PUSH1 0x40
00002214: MLOAD
00002215: RETURNDATASIZE
00002216: PUSH1 0x60
00002218: DUP2
00002219: LT
0000221a: ISZERO
0000221b: PUSH2 0x2223
0000221e: JUMPI
0000221f: PUSH1 0x00
00002221: DUP1
00002222: REVERT
00002223: JUMPDEST
00002224: POP
00002225: DUP1
00002226: MLOAD
00002227: PUSH1 0x20
00002229: DUP3
0000222a: ADD
0000222b: MLOAD
0000222c: PUSH1 0x40
0000222e: SWAP1
0000222f: SWAP3
00002230: ADD
00002231: MLOAD
00002232: SWAP2
00002233: SWAP6
00002234: POP
00002235: SWAP1
00002236: SWAP4
00002237: POP
00002238: SWAP1
00002239: POP
0000223a: PUSH1 0x80
0000223c: DUP3
0000223d: AND
0000223e: ISZERO
0000223f: DUP1
00002240: ISZERO
00002241: PUSH2 0x225e
00002244: JUMPI
00002245: POP
00002246: PUSH1 0x00
00002248: DUP5
00002249: PUSH3 0xffffff
0000224d: AND
0000224e: GT
0000224f: DUP1
00002250: PUSH2 0x225e
00002253: JUMPI
00002254: POP
00002255: PUSH1 0x00
00002257: DUP4
00002258: PUSH3 0xffffff
0000225c: AND
0000225d: GT
0000225e: JUMPDEST
0000225f: ISZERO
00002260: PUSH2 0x227c
00002263: JUMPI
00002264: PUSH1 0x40
00002266: MLOAD
00002267: PUSH4 0x3a4528ef
0000226c: PUSH1 0xe0
0000226e: SHL
0000226f: DUP2
00002270: MSTORE
00002271: PUSH1 0x04
00002273: ADD
00002274: PUSH1 0x40
00002276: MLOAD
00002277: DUP1
00002278: SWAP2
00002279: SUB
0000227a: SWAP1
0000227b: REVERT
0000227c: JUMPDEST
0000227d: PUSH2 0x2297
00002280: PUSH1 0x01
00002282: PUSH1 0x01
00002284: PUSH1 0xe0
00002286: SHL
00002287: SUB
00002288: NOT
00002289: DUP3
0000228a: AND
0000228b: PUSH4 0x029c1cb7
00002290: PUSH1 0xe0
00002292: SHL
00002293: PUSH2 0x38e3
00002296: JUMP
00002297: JUMPDEST
00002298: POP
00002299: JUMPDEST
0000229a: POP
0000229b: JUMPDEST
0000229c: SWAP8
0000229d: POP
0000229e: SWAP8
0000229f: SWAP6
000022a0: POP
000022a1: POP
000022a2: POP
000022a3: POP
000022a4: POP
000022a5: POP
000022a6: JUMP
000022a7: JUMPDEST
000022a8: PUSH1 0x02
000022aa: SLOAD
000022ab: PUSH1 0x01
000022ad: PUSH1 0xe0
000022af: SHL
000022b0: SWAP1
000022b1: DIV
000022b2: PUSH1 0xff
000022b4: AND
000022b5: PUSH2 0x22d1
000022b8: JUMPI
000022b9: PUSH1 0x40
000022bb: MLOAD
000022bc: PUSH4 0x67984809
000022c1: PUSH1 0xe1
000022c3: SHL
000022c4: DUP2
000022c5: MSTORE
000022c6: PUSH1 0x04
000022c8: ADD
000022c9: PUSH1 0x40
000022cb: MLOAD
000022cc: DUP1
000022cd: SWAP2
000022ce: SUB
000022cf: SWAP1
000022d0: REVERT
000022d1: JUMPDEST
000022d2: PUSH1 0x02
000022d4: DUP1
000022d5: SLOAD
000022d6: PUSH1 0xff
000022d8: PUSH1 0xe0
000022da: SHL
000022db: NOT
000022dc: AND
000022dd: SWAP1
000022de: SSTORE
000022df: JUMP
000022e0: JUMPDEST
000022e1: PUSH1 0x00
000022e3: DUP1
000022e4: PUSH1 0x00
000022e6: DUP1
000022e7: PUSH1 0x00
000022e9: PUSH2 0x22f0
000022ec: PUSH2 0x5551
000022ef: JUMP
000022f0: JUMPDEST
000022f1: DUP8
000022f2: PUSH1 0x00
000022f4: SUB
000022f5: PUSH2 0x2311
000022f8: JUMPI
000022f9: PUSH1 0x40
000022fb: MLOAD
000022fc: PUSH4 0x01e76e61
00002301: PUSH1 0xe6
00002303: SHL
00002304: DUP2
00002305: MSTORE
00002306: PUSH1 0x04
00002308: ADD
00002309: PUSH1 0x40
0000230b: MLOAD
0000230c: DUP1
0000230d: SWAP2
0000230e: SUB
0000230f: SWAP1
00002310: REVERT
00002311: JUMPDEST
00002312: PUSH1 0x01
00002314: PUSH1 0xff
00002316: SHL
00002317: DUP9
00002318: SUB
00002319: PUSH2 0x2335
0000231c: JUMPI
0000231d: PUSH1 0x40
0000231f: MLOAD
00002320: PUSH4 0x34cb3a01
00002325: PUSH1 0xe1
00002327: SHL
00002328: DUP2
00002329: MSTORE
0000232a: PUSH1 0x04
0000232c: ADD
0000232d: PUSH1 0x40
0000232f: MLOAD
00002330: DUP1
00002331: SWAP2
00002332: SUB
00002333: SWAP1
00002334: REVERT
00002335: JUMPDEST
00002336: PUSH1 0x40
00002338: DUP1
00002339: MLOAD
0000233a: PUSH2 0x0160
0000233d: DUP2
0000233e: ADD
0000233f: DUP3
00002340: MSTORE
00002341: PUSH1 0x00
00002343: PUSH1 0x20
00002345: DUP3
00002346: ADD
00002347: DUP2
00002348: SWAP1
00002349: MSTORE
0000234a: PUSH1 0x60
0000234c: DUP3
0000234d: ADD
0000234e: DUP2
0000234f: SWAP1
00002350: MSTORE
00002351: PUSH1 0x80
00002353: DUP3
00002354: ADD
00002355: DUP2
00002356: SWAP1
00002357: MSTORE
00002358: PUSH1 0xa0
0000235a: DUP3
0000235b: ADD
0000235c: DUP2
0000235d: SWAP1
0000235e: MSTORE
0000235f: PUSH3 0xffffff
00002363: DUP14
00002364: AND
00002365: PUSH2 0x0140
00002368: DUP4
00002369: ADD
0000236a: MSTORE
0000236b: DUP1
0000236c: DUP12
0000236d: SGT
0000236e: PUSH1 0xc0
00002370: DUP4
00002371: ADD
00002372: MSTORE
00002373: SWAP2
00002374: DUP2
00002375: ADD
00002376: DUP11
00002377: SWAP1
00002378: MSTORE
00002379: PUSH1 0x09
0000237b: SLOAD
0000237c: PUSH1 0x02
0000237e: DUP2
0000237f: DUP2
00002380: SIGNEXTEND
00002381: PUSH2 0x0120
00002384: DUP5
00002385: ADD
00002386: MSTORE
00002387: PUSH4 0x01000000
0000238c: DUP3
0000238d: DIV
0000238e: DUP2
0000238f: SIGNEXTEND
00002390: PUSH2 0x0100
00002393: DUP5
00002394: ADD
00002395: MSTORE
00002396: DUP1
00002397: SLOAD
00002398: PUSH2 0xffff
0000239b: PUSH1 0x01
0000239d: PUSH1 0xd0
0000239f: SHL
000023a0: DUP3
000023a1: DIV
000023a2: DUP2
000023a3: AND
000023a4: DUP6
000023a5: MSTORE
000023a6: PUSH1 0x01
000023a8: PUSH1 0xb8
000023aa: SHL
000023ab: DUP3
000023ac: DIV
000023ad: AND
000023ae: PUSH1 0xe0
000023b0: DUP6
000023b1: ADD
000023b2: MSTORE
000023b3: PUSH1 0x01
000023b5: PUSH1 0x01
000023b7: PUSH1 0xa0
000023b9: SHL
000023ba: SUB
000023bb: DUP2
000023bc: AND
000023bd: SWAP9
000023be: POP
000023bf: PUSH1 0x01
000023c1: PUSH1 0xa0
000023c3: SHL
000023c4: SWAP1
000023c5: DIV
000023c6: SWAP1
000023c7: SIGNEXTEND
000023c8: SWAP6
000023c9: POP
000023ca: PUSH1 0x01
000023cc: PUSH1 0x30
000023ce: SHL
000023cf: SWAP1
000023d0: DIV
000023d1: PUSH1 0x01
000023d3: PUSH1 0x01
000023d5: PUSH1 0x80
000023d7: SHL
000023d8: SUB
000023d9: AND
000023da: SWAP4
000023db: POP
000023dc: SWAP1
000023dd: DUP6
000023de: SWAP1
000023df: SUB
000023e0: PUSH2 0x23fc
000023e3: JUMPI
000023e4: PUSH1 0x40
000023e6: MLOAD
000023e7: PUSH4 0x812eb655
000023ec: PUSH1 0xe0
000023ee: SHL
000023ef: DUP2
000023f0: MSTORE
000023f1: PUSH1 0x04
000023f3: ADD
000023f4: PUSH1 0x40
000023f6: MLOAD
000023f7: DUP1
000023f8: SWAP2
000023f9: SUB
000023fa: SWAP1
000023fb: REVERT
000023fc: JUMPDEST
000023fd: PUSH3 0xffffff
00002401: DUP13
00002402: AND
00002403: ISZERO
00002404: PUSH2 0x2444
00002407: JUMPI
00002408: PUSH2 0x2411
0000240b: DUP12
0000240c: DUP14
0000240d: PUSH2 0x5652
00002410: JUMP
00002411: JUMPDEST
00002412: PUSH3 0xffffff
00002416: AND
00002417: PUSH1 0xe0
00002419: DUP3
0000241a: ADD
0000241b: DUP2
0000241c: SWAP1
0000241d: MSTORE
0000241e: PUSH3 0x0f4240
00002422: GT
00002423: PUSH2 0x243f
00002426: JUMPI
00002427: PUSH1 0x40
00002429: MLOAD
0000242a: PUSH4 0x15b2afa9
0000242f: PUSH1 0xe0
00002431: SHL
00002432: DUP2
00002433: MSTORE
00002434: PUSH1 0x04
00002436: ADD
00002437: PUSH1 0x40
00002439: MLOAD
0000243a: DUP1
0000243b: SWAP2
0000243c: SUB
0000243d: SWAP1
0000243e: REVERT
0000243f: JUMPDEST
00002440: PUSH2 0x2496
00002443: JUMP
00002444: JUMPDEST
00002445: PUSH3 0xffffff
00002449: DUP12
0000244a: AND
0000244b: ISZERO
0000244c: PUSH2 0x2496
0000244f: JUMPI
00002450: DUP11
00002451: DUP2
00002452: PUSH1 0xe0
00002454: ADD
00002455: DUP2
00002456: DUP2
00002457: MLOAD
00002458: PUSH2 0x2461
0000245b: SWAP2
0000245c: SWAP1
0000245d: PUSH2 0x5652
00002460: JUMP
00002461: JUMPDEST
00002462: PUSH3 0xffffff
00002466: SWAP1
00002467: DUP2
00002468: AND
00002469: SWAP1
0000246a: SWAP2
0000246b: MSTORE
0000246c: PUSH1 0xe0
0000246e: DUP4
0000246f: ADD
00002470: MLOAD
00002471: PUSH3 0x0f4240
00002475: SWAP2
00002476: AND
00002477: LT
00002478: SWAP1
00002479: POP
0000247a: PUSH2 0x2496
0000247d: JUMPI
0000247e: PUSH1 0x40
00002480: MLOAD
00002481: PUSH4 0x15b2afa9
00002486: PUSH1 0xe0
00002488: SHL
00002489: DUP2
0000248a: MSTORE
0000248b: PUSH1 0x04
0000248d: ADD
0000248e: PUSH1 0x40
00002490: MLOAD
00002491: DUP1
00002492: SWAP2
00002493: SUB
00002494: SWAP1
00002495: REVERT
00002496: JUMPDEST
00002497: DUP10
00002498: ISZERO
00002499: PUSH2 0x24f6
0000249c: JUMPI
0000249d: DUP5
0000249e: PUSH1 0x01
000024a0: PUSH1 0x01
000024a2: PUSH1 0xa0
000024a4: SHL
000024a5: SUB
000024a6: AND
000024a7: DUP9
000024a8: PUSH1 0x01
000024aa: PUSH1 0x01
000024ac: PUSH1 0xa0
000024ae: SHL
000024af: SUB
000024b0: AND
000024b1: LT
000024b2: ISZERO
000024b3: DUP1
000024b4: PUSH2 0x24cb
000024b7: JUMPI
000024b8: POP
000024b9: PUSH5 0x01000276a3
000024bf: PUSH1 0x01
000024c1: PUSH1 0x01
000024c3: PUSH1 0xa0
000024c5: SHL
000024c6: SUB
000024c7: DUP10
000024c8: AND
000024c9: GT
000024ca: ISZERO
000024cb: JUMPDEST
000024cc: ISZERO
000024cd: PUSH2 0x24e9
000024d0: JUMPI
000024d1: PUSH1 0x40
000024d3: MLOAD
000024d4: PUSH4 0x16626723
000024d9: PUSH1 0xe0
000024db: SHL
000024dc: DUP2
000024dd: MSTORE
000024de: PUSH1 0x04
000024e0: ADD
000024e1: PUSH1 0x40
000024e3: MLOAD
000024e4: DUP1
000024e5: SWAP2
000024e6: SUB
000024e7: SWAP1
000024e8: REVERT
000024e9: JUMPDEST
000024ea: PUSH1 0x00
000024ec: SLOAD
000024ed: PUSH1 0x80
000024ef: DUP3
000024f0: ADD
000024f1: MSTORE
000024f2: PUSH2 0x255b
000024f5: JUMP
000024f6: JUMPDEST
000024f7: DUP5
000024f8: PUSH1 0x01
000024fa: PUSH1 0x01
000024fc: PUSH1 0xa0
000024fe: SHL
000024ff: SUB
00002500: AND
00002501: DUP9
00002502: PUSH1 0x01
00002504: PUSH1 0x01
00002506: PUSH1 0xa0
00002508: SHL
00002509: SUB
0000250a: AND
0000250b: GT
0000250c: ISZERO
0000250d: DUP1
0000250e: PUSH2 0x2534
00002511: JUMPI
00002512: POP
00002513: PUSH20 0xfffd8963efd1fc6a506488495d951d5263988d26
00002528: PUSH1 0x01
0000252a: PUSH1 0x01
0000252c: PUSH1 0xa0
0000252e: SHL
0000252f: SUB
00002530: DUP10
00002531: AND
00002532: LT
00002533: ISZERO
00002534: JUMPDEST
00002535: ISZERO
00002536: PUSH2 0x2552
00002539: JUMPI
0000253a: PUSH1 0x40
0000253c: MLOAD
0000253d: PUSH4 0x16626723
00002542: PUSH1 0xe0
00002544: SHL
00002545: DUP2
00002546: MSTORE
00002547: PUSH1 0x04
00002549: ADD
0000254a: PUSH1 0x40
0000254c: MLOAD
0000254d: DUP1
0000254e: SWAP2
0000254f: SUB
00002550: SWAP1
00002551: REVERT
00002552: JUMPDEST
00002553: PUSH1 0x01
00002555: SLOAD
00002556: PUSH1 0x80
00002558: DUP3
00002559: ADD
0000255a: MSTORE
0000255b: JUMPDEST
0000255c: PUSH2 0x258d
0000255f: PUSH1 0x40
00002561: MLOAD
00002562: DUP1
00002563: PUSH1 0xa0
00002565: ADD
00002566: PUSH1 0x40
00002568: MSTORE
00002569: DUP1
0000256a: PUSH1 0x00
0000256c: DUP2
0000256d: MSTORE
0000256e: PUSH1 0x20
00002570: ADD
00002571: PUSH1 0x00
00002573: DUP2
00002574: MSTORE
00002575: PUSH1 0x20
00002577: ADD
00002578: PUSH1 0x00
0000257a: DUP2
0000257b: MSTORE
0000257c: PUSH1 0x20
0000257e: ADD
0000257f: PUSH1 0x00
00002581: DUP2
00002582: MSTORE
00002583: PUSH1 0x20
00002585: ADD
00002586: PUSH1 0x00
00002588: DUP2
00002589: MSTORE
0000258a: POP
0000258b: SWAP1
0000258c: JUMP
0000258d: JUMPDEST
0000258e: PUSH1 0x00
00002590: DUP12
00002591: PUSH2 0x259f
00002594: JUMPI
00002595: DUP3
00002596: PUSH2 0x0120
00002599: ADD
0000259a: MLOAD
0000259b: PUSH2 0x25a6
0000259e: JUMP
0000259f: JUMPDEST
000025a0: DUP3
000025a1: PUSH2 0x0100
000025a4: ADD
000025a5: MLOAD
000025a6: JUMPDEST
000025a7: PUSH1 0x01
000025a9: PUSH1 0x01
000025ab: PUSH1 0xa0
000025ad: SHL
000025ae: SUB
000025af: DUP9
000025b0: AND
000025b1: DUP4
000025b2: MSTORE
000025b3: SWAP1
000025b4: POP
000025b5: PUSH2 0x25bd
000025b8: DUP2
000025b9: PUSH2 0x3fc1
000025bc: JUMP
000025bd: JUMPDEST
000025be: PUSH1 0x01
000025c0: PUSH1 0x01
000025c2: PUSH1 0xa0
000025c4: SHL
000025c5: SUB
000025c6: SWAP1
000025c7: DUP2
000025c8: AND
000025c9: PUSH1 0x20
000025cb: DUP5
000025cc: ADD
000025cd: DUP2
000025ce: SWAP1
000025cf: MSTORE
000025d0: PUSH2 0x25fa
000025d3: SWAP2
000025d4: DUP15
000025d5: SWAP2
000025d6: DUP11
000025d7: SWAP2
000025d8: DUP15
000025d9: AND
000025da: GT
000025db: DUP3
000025dc: ISZERO
000025dd: ISZERO
000025de: EQ
000025df: PUSH2 0x25ec
000025e2: JUMPI
000025e3: DUP5
000025e4: PUSH1 0x20
000025e6: ADD
000025e7: MLOAD
000025e8: PUSH2 0x25ee
000025eb: JUMP
000025ec: JUMPDEST
000025ed: DUP13
000025ee: JUMPDEST
000025ef: DUP9
000025f0: DUP16
000025f1: DUP9
000025f2: PUSH1 0xe0
000025f4: ADD
000025f5: MLOAD
000025f6: PUSH2 0x429c
000025f9: JUMP
000025fa: JUMPDEST
000025fb: PUSH1 0x80
000025fd: DUP7
000025fe: ADD
000025ff: MSTORE
00002600: PUSH1 0x60
00002602: DUP6
00002603: ADD
00002604: MSTORE
00002605: PUSH1 0x40
00002607: DUP5
00002608: ADD
00002609: MSTORE
0000260a: PUSH1 0xc0
0000260c: DUP5
0000260d: ADD
0000260e: MLOAD
0000260f: SWAP1
00002610: SWAP8
00002611: POP
00002612: ISZERO
00002613: PUSH2 0x2652
00002616: JUMPI
00002617: PUSH2 0x2629
0000261a: DUP3
0000261b: PUSH1 0x80
0000261d: ADD
0000261e: MLOAD
0000261f: DUP4
00002620: PUSH1 0x40
00002622: ADD
00002623: MLOAD
00002624: ADD
00002625: PUSH2 0x3a19
00002628: JUMP
00002629: JUMPDEST
0000262a: DUP12
0000262b: SUB
0000262c: SWAP11
0000262d: POP
0000262e: PUSH2 0x2648
00002631: PUSH2 0x263d
00002634: DUP4
00002635: PUSH1 0x60
00002637: ADD
00002638: MLOAD
00002639: PUSH2 0x3a19
0000263c: JUMP
0000263d: JUMPDEST
0000263e: PUSH1 0x60
00002640: DUP6
00002641: ADD
00002642: MLOAD
00002643: SWAP1
00002644: PUSH2 0x446a
00002647: JUMP
00002648: JUMPDEST
00002649: PUSH1 0x60
0000264b: DUP5
0000264c: ADD
0000264d: MSTORE
0000264e: PUSH2 0x268a
00002651: JUMP
00002652: JUMPDEST
00002653: PUSH2 0x265f
00002656: DUP3
00002657: PUSH1 0x60
00002659: ADD
0000265a: MLOAD
0000265b: PUSH2 0x3a19
0000265e: JUMP
0000265f: JUMPDEST
00002660: DUP12
00002661: ADD
00002662: SWAP11
00002663: POP
00002664: PUSH2 0x2684
00002667: PUSH2 0x2679
0000266a: DUP4
0000266b: PUSH1 0x80
0000266d: ADD
0000266e: MLOAD
0000266f: DUP5
00002670: PUSH1 0x40
00002672: ADD
00002673: MLOAD
00002674: ADD
00002675: PUSH2 0x3a19
00002678: JUMP
00002679: JUMPDEST
0000267a: PUSH1 0x60
0000267c: DUP6
0000267d: ADD
0000267e: MLOAD
0000267f: SWAP1
00002680: PUSH2 0x4486
00002683: JUMP
00002684: JUMPDEST
00002685: PUSH1 0x60
00002687: DUP5
00002688: ADD
00002689: MSTORE
0000268a: JUMPDEST
0000268b: DUP3
0000268c: MLOAD
0000268d: ISZERO
0000268e: PUSH2 0x26cc
00002691: JUMPI
00002692: DUP3
00002693: MLOAD
00002694: PUSH1 0x80
00002696: DUP4
00002697: ADD
00002698: MLOAD
00002699: PUSH1 0x00
0000269b: SWAP2
0000269c: PUSH2 0x03e8
0000269f: SWAP2
000026a0: PUSH2 0x26a8
000026a3: SWAP2
000026a4: PUSH2 0x449c
000026a7: JUMP
000026a8: JUMPDEST
000026a9: DUP2
000026aa: PUSH2 0x26b5
000026ad: JUMPI
000026ae: PUSH2 0x26b5
000026b1: PUSH2 0x55f9
000026b4: JUMP
000026b5: JUMPDEST
000026b6: PUSH1 0x80
000026b8: DUP6
000026b9: ADD
000026ba: DUP1
000026bb: MLOAD
000026bc: SWAP3
000026bd: SWAP1
000026be: SWAP2
000026bf: DIV
000026c0: SWAP2
000026c1: DUP3
000026c2: SWAP1
000026c3: SUB
000026c4: SWAP1
000026c5: MSTORE
000026c6: DUP6
000026c7: MLOAD
000026c8: ADD
000026c9: DUP6
000026ca: MSTORE
000026cb: POP
000026cc: JUMPDEST
000026cd: PUSH1 0x00
000026cf: DUP4
000026d0: PUSH2 0x0140
000026d3: ADD
000026d4: MLOAD
000026d5: PUSH3 0xffffff
000026d9: AND
000026da: GT
000026db: DUP1
000026dc: ISZERO
000026dd: PUSH2 0x26ef
000026e0: JUMPI
000026e1: POP
000026e2: PUSH1 0x00
000026e4: DUP4
000026e5: PUSH1 0xe0
000026e7: ADD
000026e8: MLOAD
000026e9: PUSH3 0xffffff
000026ed: AND
000026ee: GT
000026ef: JUMPDEST
000026f0: ISZERO
000026f1: PUSH2 0x2730
000026f4: JUMPI
000026f5: PUSH1 0x00
000026f7: PUSH2 0x2718
000026fa: DUP4
000026fb: PUSH1 0x80
000026fd: ADD
000026fe: MLOAD
000026ff: DUP6
00002700: PUSH2 0x0140
00002703: ADD
00002704: MLOAD
00002705: PUSH3 0xffffff
00002709: AND
0000270a: DUP7
0000270b: PUSH1 0xe0
0000270d: ADD
0000270e: MLOAD
0000270f: PUSH3 0xffffff
00002713: AND
00002714: PUSH2 0x3742
00002717: JUMP
00002718: JUMPDEST
00002719: PUSH1 0x80
0000271b: DUP5
0000271c: ADD
0000271d: DUP1
0000271e: MLOAD
0000271f: DUP3
00002720: SWAP1
00002721: SUB
00002722: SWAP1
00002723: MSTORE
00002724: PUSH1 0x20
00002726: DUP7
00002727: ADD
00002728: DUP1
00002729: MLOAD
0000272a: SWAP1
0000272b: SWAP2
0000272c: ADD
0000272d: SWAP1
0000272e: MSTORE
0000272f: POP
00002730: JUMPDEST
00002731: PUSH1 0x01
00002733: PUSH1 0x01
00002735: PUSH1 0x80
00002737: SHL
00002738: SUB
00002739: DUP6
0000273a: AND
0000273b: ISZERO
0000273c: PUSH2 0x2767
0000273f: JUMPI
00002740: PUSH2 0x275b
00002743: DUP3
00002744: PUSH1 0x80
00002746: ADD
00002747: MLOAD
00002748: PUSH1 0x01
0000274a: PUSH1 0x80
0000274c: SHL
0000274d: DUP8
0000274e: PUSH1 0x01
00002750: PUSH1 0x01
00002752: PUSH1 0x80
00002754: SHL
00002755: SUB
00002756: AND
00002757: PUSH2 0x3742
0000275a: JUMP
0000275b: JUMPDEST
0000275c: PUSH1 0x80
0000275e: DUP5
0000275f: ADD
00002760: DUP1
00002761: MLOAD
00002762: SWAP1
00002763: SWAP2
00002764: ADD
00002765: SWAP1
00002766: MSTORE
00002767: JUMPDEST
00002768: DUP2
00002769: PUSH1 0x20
0000276b: ADD
0000276c: MLOAD
0000276d: DUP8
0000276e: PUSH1 0x01
00002770: PUSH1 0x01
00002772: PUSH1 0xa0
00002774: SHL
00002775: SUB
00002776: AND
00002777: SUB
00002778: PUSH2 0x2831
0000277b: JUMPI
0000277c: DUP3
0000277d: PUSH1 0x20
0000277f: ADD
00002780: MLOAD
00002781: PUSH2 0x27a2
00002784: JUMPI
00002785: PUSH1 0x01
00002787: PUSH1 0x20
00002789: DUP5
0000278a: ADD
0000278b: MSTORE
0000278c: DUP12
0000278d: PUSH2 0x2798
00002790: JUMPI
00002791: PUSH1 0x00
00002793: SLOAD
00002794: PUSH2 0x279c
00002797: JUMP
00002798: JUMPDEST
00002799: PUSH1 0x01
0000279b: SLOAD
0000279c: JUMPDEST
0000279d: PUSH1 0xa0
0000279f: DUP5
000027a0: ADD
000027a1: MSTORE
000027a2: JUMPDEST
000027a3: PUSH1 0x00
000027a5: DUP13
000027a6: ISZERO
000027a7: PUSH2 0x27e9
000027aa: JUMPI
000027ab: PUSH1 0x80
000027ad: DUP5
000027ae: ADD
000027af: MLOAD
000027b0: PUSH1 0xa0
000027b2: DUP6
000027b3: ADD
000027b4: MLOAD
000027b5: PUSH2 0x27c3
000027b8: SWAP2
000027b9: PUSH1 0x03
000027bb: SWAP2
000027bc: DUP6
000027bd: SWAP2
000027be: SWAP1
000027bf: PUSH2 0x44c6
000027c2: JUMP
000027c3: JUMPDEST
000027c4: POP
000027c5: PUSH1 0x02
000027c7: SWAP1
000027c8: DUP2
000027c9: SIGNEXTEND
000027ca: PUSH2 0x0100
000027cd: DUP8
000027ce: ADD
000027cf: MSTORE
000027d0: DUP4
000027d1: SWAP1
000027d2: SIGNEXTEND
000027d3: PUSH2 0x0120
000027d6: DUP7
000027d7: ADD
000027d8: MSTORE
000027d9: PUSH1 0x00
000027db: NOT
000027dc: DUP4
000027dd: ADD
000027de: SWAP8
000027df: POP
000027e0: PUSH1 0x00
000027e2: SUB
000027e3: SWAP1
000027e4: POP
000027e5: PUSH2 0x281f
000027e8: JUMP
000027e9: JUMPDEST
000027ea: PUSH1 0xa0
000027ec: DUP5
000027ed: ADD
000027ee: MLOAD
000027ef: PUSH1 0x80
000027f1: DUP6
000027f2: ADD
000027f3: MLOAD
000027f4: PUSH2 0x2802
000027f7: SWAP2
000027f8: PUSH1 0x03
000027fa: SWAP2
000027fb: DUP6
000027fc: SWAP2
000027fd: SWAP1
000027fe: PUSH2 0x44c6
00002801: JUMP
00002802: JUMPDEST
00002803: PUSH1 0x02
00002805: SWAP1
00002806: DUP2
00002807: SIGNEXTEND
00002808: PUSH2 0x0120
0000280b: DUP9
0000280c: ADD
0000280d: MSTORE
0000280e: DUP5
0000280f: SWAP1
00002810: SIGNEXTEND
00002811: PUSH2 0x0100
00002814: DUP8
00002815: ADD
00002816: MSTORE
00002817: POP
00002818: SWAP2
00002819: SWAP7
0000281a: POP
0000281b: DUP7
0000281c: SWAP2
0000281d: SWAP1
0000281e: POP
0000281f: JUMPDEST
00002820: PUSH2 0x2829
00002823: DUP7
00002824: DUP3
00002825: PUSH2 0x4513
00002828: JUMP
00002829: JUMPDEST
0000282a: SWAP6
0000282b: POP
0000282c: POP
0000282d: PUSH2 0x2853
00002830: JUMP
00002831: JUMPDEST
00002832: DUP2
00002833: MLOAD
00002834: PUSH1 0x01
00002836: PUSH1 0x01
00002838: PUSH1 0xa0
0000283a: SHL
0000283b: SUB
0000283c: DUP9
0000283d: AND
0000283e: EQ
0000283f: PUSH2 0x2853
00002842: JUMPI
00002843: PUSH2 0x284b
00002846: DUP8
00002847: PUSH2 0x3c4c
0000284a: JUMP
0000284b: JUMPDEST
0000284c: SWAP6
0000284d: POP
0000284e: POP
0000284f: PUSH2 0x287a
00002852: JUMP
00002853: JUMPDEST
00002854: POP
00002855: DUP10
00002856: ISZERO
00002857: DUP1
00002858: ISZERO
00002859: SWAP1
0000285a: PUSH2 0x2875
0000285d: JUMPI
0000285e: POP
0000285f: DUP9
00002860: PUSH1 0x01
00002862: PUSH1 0x01
00002864: PUSH1 0xa0
00002866: SHL
00002867: SUB
00002868: AND
00002869: DUP7
0000286a: PUSH1 0x01
0000286c: PUSH1 0x01
0000286e: PUSH1 0xa0
00002870: SHL
00002871: SUB
00002872: AND
00002873: EQ
00002874: ISZERO
00002875: JUMPDEST
00002876: PUSH2 0x258d
00002879: JUMPI
0000287a: JUMPDEST
0000287b: PUSH1 0x00
0000287d: DUP11
0000287e: DUP4
0000287f: PUSH1 0x40
00002881: ADD
00002882: MLOAD
00002883: SUB
00002884: SWAP1
00002885: POP
00002886: DUP3
00002887: PUSH1 0xc0
00002889: ADD
0000288a: MLOAD
0000288b: ISZERO
0000288c: ISZERO
0000288d: DUP13
0000288e: ISZERO
0000288f: ISZERO
00002890: EQ
00002891: PUSH2 0x289f
00002894: JUMPI
00002895: DUP3
00002896: PUSH1 0x60
00002898: ADD
00002899: MLOAD
0000289a: DUP2
0000289b: PUSH2 0x28a6
0000289e: JUMP
0000289f: JUMPDEST
000028a0: DUP1
000028a1: DUP4
000028a2: PUSH1 0x60
000028a4: ADD
000028a5: MLOAD
000028a6: JUMPDEST
000028a7: PUSH1 0x02
000028a9: DUP1
000028aa: SLOAD
000028ab: PUSH1 0x01
000028ad: PUSH1 0x01
000028af: PUSH1 0xb8
000028b1: SHL
000028b2: SUB
000028b3: NOT
000028b4: AND
000028b5: PUSH1 0x01
000028b7: PUSH1 0xa0
000028b9: SHL
000028ba: PUSH3 0xffffff
000028be: DUP12
000028bf: AND
000028c0: MUL
000028c1: PUSH1 0x01
000028c3: PUSH1 0x01
000028c5: PUSH1 0xa0
000028c7: SHL
000028c8: SUB
000028c9: NOT
000028ca: AND
000028cb: OR
000028cc: PUSH1 0x01
000028ce: PUSH1 0x01
000028d0: PUSH1 0xa0
000028d2: SHL
000028d3: SUB
000028d4: DUP12
000028d5: AND
000028d6: OR
000028d7: SWAP1
000028d8: SSTORE
000028d9: PUSH1 0x20
000028db: DUP6
000028dc: ADD
000028dd: MLOAD
000028de: SWAP2
000028df: SWAP11
000028e0: POP
000028e1: SWAP9
000028e2: POP
000028e3: ISZERO
000028e4: SWAP1
000028e5: POP
000028e6: PUSH2 0x293e
000028e9: JUMPI
000028ea: PUSH2 0x0100
000028ed: DUP3
000028ee: ADD
000028ef: MLOAD
000028f0: PUSH2 0x0120
000028f3: DUP4
000028f4: ADD
000028f5: MLOAD
000028f6: PUSH1 0x09
000028f8: DUP1
000028f9: SLOAD
000028fa: PUSH3 0xffffff
000028fe: SWAP3
000028ff: DUP4
00002900: AND
00002901: PUSH6 0xffffffffffff
00002908: NOT
00002909: SWAP1
0000290a: SWAP2
0000290b: AND
0000290c: OR
0000290d: PUSH4 0x01000000
00002912: SWAP3
00002913: SWAP1
00002914: SWAP4
00002915: AND
00002916: SWAP2
00002917: SWAP1
00002918: SWAP2
00002919: MUL
0000291a: SWAP2
0000291b: SWAP1
0000291c: SWAP2
0000291d: OR
0000291e: PUSH1 0x01
00002920: PUSH1 0x30
00002922: SHL
00002923: PUSH1 0x01
00002925: PUSH1 0xb0
00002927: SHL
00002928: SUB
00002929: NOT
0000292a: AND
0000292b: PUSH1 0x01
0000292d: PUSH1 0x30
0000292f: SHL
00002930: PUSH1 0x01
00002932: PUSH1 0x01
00002934: PUSH1 0x80
00002936: SHL
00002937: SUB
00002938: DUP8
00002939: AND
0000293a: MUL
0000293b: OR
0000293c: SWAP1
0000293d: SSTORE
0000293e: JUMPDEST
0000293f: DUP11
00002940: ISZERO
00002941: PUSH2 0x2951
00002944: JUMPI
00002945: PUSH1 0x80
00002947: DUP3
00002948: ADD
00002949: MLOAD
0000294a: PUSH1 0x00
0000294c: SSTORE
0000294d: PUSH2 0x295a
00002950: JUMP
00002951: JUMPDEST
00002952: PUSH1 0x80
00002954: DUP3
00002955: ADD
00002956: MLOAD
00002957: PUSH1 0x01
00002959: SSTORE
0000295a: JUMPDEST
0000295b: POP
0000295c: POP
0000295d: SWAP6
0000295e: POP
0000295f: SWAP6
00002960: POP
00002961: SWAP6
00002962: POP
00002963: SWAP6
00002964: POP
00002965: SWAP6
00002966: POP
00002967: SWAP6
00002968: JUMP
00002969: JUMPDEST
0000296a: PUSH1 0x00
0000296c: DUP1
0000296d: PUSH2 0x2974
00002970: PUSH2 0x2be3
00002973: JUMP
00002974: JUMPDEST
00002975: PUSH2 0x297c
00002978: PUSH2 0x2f67
0000297b: JUMP
0000297c: JUMPDEST
0000297d: SWAP1
0000297e: SWAP3
0000297f: POP
00002980: SWAP1
00002981: POP
00002982: PUSH1 0x01
00002984: PUSH1 0x01
00002986: PUSH1 0x80
00002988: SHL
00002989: SUB
0000298a: DUP3
0000298b: GT
0000298c: DUP1
0000298d: PUSH2 0x299c
00002990: JUMPI
00002991: POP
00002992: PUSH1 0x01
00002994: PUSH1 0x01
00002996: PUSH1 0x80
00002998: SHL
00002999: SUB
0000299a: DUP2
0000299b: GT
0000299c: JUMPDEST
0000299d: ISZERO
0000299e: PUSH2 0x2a4d
000029a1: JUMPI
000029a2: PUSH1 0x07
000029a4: SLOAD
000029a5: PUSH1 0x01
000029a7: PUSH1 0x01
000029a9: PUSH1 0xa0
000029ab: SHL
000029ac: SUB
000029ad: AND
000029ae: PUSH1 0x01
000029b0: PUSH1 0x01
000029b2: PUSH1 0x80
000029b4: SHL
000029b5: SUB
000029b6: DUP4
000029b7: GT
000029b8: ISZERO
000029b9: PUSH2 0x29fc
000029bc: JUMPI
000029bd: PUSH2 0x29f1
000029c0: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000029e1: DUP3
000029e2: PUSH1 0x02
000029e4: PUSH1 0x01
000029e6: PUSH1 0x80
000029e8: SHL
000029e9: SUB
000029ea: NOT
000029eb: DUP7
000029ec: ADD
000029ed: PUSH2 0x2b72
000029f0: JUMP
000029f1: JUMPDEST
000029f2: PUSH1 0x01
000029f4: PUSH1 0x01
000029f6: PUSH1 0x80
000029f8: SHL
000029f9: SUB
000029fa: SWAP3
000029fb: POP
000029fc: JUMPDEST
000029fd: PUSH1 0x01
000029ff: PUSH1 0x01
00002a01: PUSH1 0x80
00002a03: SHL
00002a04: SUB
00002a05: DUP3
00002a06: GT
00002a07: ISZERO
00002a08: PUSH2 0x2a4b
00002a0b: JUMPI
00002a0c: PUSH2 0x2a40
00002a0f: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
00002a30: DUP3
00002a31: PUSH1 0x02
00002a33: PUSH1 0x01
00002a35: PUSH1 0x80
00002a37: SHL
00002a38: SUB
00002a39: NOT
00002a3a: DUP6
00002a3b: ADD
00002a3c: PUSH2 0x2b72
00002a3f: JUMP
00002a40: JUMPDEST
00002a41: PUSH1 0x01
00002a43: PUSH1 0x01
00002a45: PUSH1 0x80
00002a47: SHL
00002a48: SUB
00002a49: SWAP2
00002a4a: POP
00002a4b: JUMPDEST
00002a4c: POP
00002a4d: JUMPDEST
00002a4e: PUSH1 0x09
00002a50: SLOAD
00002a51: PUSH1 0x01
00002a53: PUSH1 0x30
00002a55: SHL
00002a56: SWAP1
00002a57: DIV
00002a58: PUSH1 0x01
00002a5a: PUSH1 0x01
00002a5c: PUSH1 0x80
00002a5e: SHL
00002a5f: SUB
00002a60: AND
00002a61: PUSH1 0x00
00002a63: DUP2
00002a64: SWAP1
00002a65: SUB
00002a66: PUSH2 0x2a6e
00002a69: JUMPI
00002a6a: POP
00002a6b: SWAP1
00002a6c: SWAP2
00002a6d: JUMP
00002a6e: JUMPDEST
00002a6f: PUSH1 0x0c
00002a71: SLOAD
00002a72: PUSH1 0x01
00002a74: PUSH1 0x01
00002a76: PUSH1 0x80
00002a78: SHL
00002a79: SUB
00002a7a: DUP1
00002a7b: DUP3
00002a7c: AND
00002a7d: SWAP2
00002a7e: PUSH1 0x01
00002a80: PUSH1 0x80
00002a82: SHL
00002a83: SWAP1
00002a84: DIV
00002a85: AND
00002a86: DUP2
00002a87: DUP6
00002a88: GT
00002a89: DUP2
00002a8a: DUP6
00002a8b: GT
00002a8c: DUP2
00002a8d: DUP1
00002a8e: PUSH2 0x2a94
00002a91: JUMPI
00002a92: POP
00002a93: DUP1
00002a94: JUMPDEST
00002a95: ISZERO
00002a96: PUSH2 0x2b69
00002a99: JUMPI
00002a9a: DUP2
00002a9b: ISZERO
00002a9c: PUSH2 0x2acc
00002a9f: JUMPI
00002aa0: PUSH2 0x2ac2
00002aa3: DUP5
00002aa4: PUSH1 0x01
00002aa6: PUSH1 0x01
00002aa8: PUSH1 0x80
00002aaa: SHL
00002aab: SUB
00002aac: AND
00002aad: DUP9
00002aae: SUB
00002aaf: PUSH1 0x01
00002ab1: PUSH1 0x80
00002ab3: SHL
00002ab4: DUP8
00002ab5: PUSH1 0x01
00002ab7: PUSH1 0x01
00002ab9: PUSH1 0x80
00002abb: SHL
00002abc: SUB
00002abd: AND
00002abe: PUSH2 0x3742
00002ac1: JUMP
00002ac2: JUMPDEST
00002ac3: PUSH1 0x00
00002ac5: DUP1
00002ac6: SLOAD
00002ac7: SWAP1
00002ac8: SWAP2
00002ac9: ADD
00002aca: SWAP1
00002acb: SSTORE
00002acc: JUMPDEST
00002acd: DUP1
00002ace: ISZERO
00002acf: PUSH2 0x2aff
00002ad2: JUMPI
00002ad3: PUSH2 0x2af5
00002ad6: DUP4
00002ad7: PUSH1 0x01
00002ad9: PUSH1 0x01
00002adb: PUSH1 0x80
00002add: SHL
00002ade: SUB
00002adf: AND
00002ae0: DUP8
00002ae1: SUB
00002ae2: PUSH1 0x01
00002ae4: PUSH1 0x80
00002ae6: SHL
00002ae7: DUP8
00002ae8: PUSH1 0x01
00002aea: PUSH1 0x01
00002aec: PUSH1 0x80
00002aee: SHL
00002aef: SUB
00002af0: AND
00002af1: PUSH2 0x3742
00002af4: JUMP
00002af5: JUMPDEST
00002af6: PUSH1 0x01
00002af8: DUP1
00002af9: SLOAD
00002afa: SWAP1
00002afb: SWAP2
00002afc: ADD
00002afd: SWAP1
00002afe: SSTORE
00002aff: JUMPDEST
00002b00: PUSH1 0x40
00002b02: DUP1
00002b03: MLOAD
00002b04: PUSH1 0x01
00002b06: PUSH1 0x01
00002b08: PUSH1 0x80
00002b0a: SHL
00002b0b: SUB
00002b0c: DUP1
00002b0d: DUP8
00002b0e: AND
00002b0f: DUP11
00002b10: SUB
00002b11: DUP3
00002b12: MSTORE
00002b13: DUP6
00002b14: AND
00002b15: DUP9
00002b16: SUB
00002b17: PUSH1 0x20
00002b19: DUP3
00002b1a: ADD
00002b1b: MSTORE
00002b1c: PUSH32 0xef10ebb00f0dbc72ad4602e94abbbda6f3d40632714f70e9c8fa30d5d44289c9
00002b3d: SWAP2
00002b3e: ADD
00002b3f: PUSH1 0x40
00002b41: MLOAD
00002b42: DUP1
00002b43: SWAP2
00002b44: SUB
00002b45: SWAP1
00002b46: LOG1
00002b47: PUSH1 0x01
00002b49: PUSH1 0x01
00002b4b: PUSH1 0x80
00002b4d: SHL
00002b4e: SUB
00002b4f: DUP1
00002b50: DUP9
00002b51: AND
00002b52: SWAP1
00002b53: DUP8
00002b54: AND
00002b55: PUSH1 0x01
00002b57: PUSH1 0x80
00002b59: SHL
00002b5a: MUL
00002b5b: PUSH1 0x01
00002b5d: PUSH1 0x01
00002b5f: PUSH1 0x80
00002b61: SHL
00002b62: SUB
00002b63: NOT
00002b64: AND
00002b65: OR
00002b66: PUSH1 0x0c
00002b68: SSTORE
00002b69: JUMPDEST
00002b6a: POP
00002b6b: POP
00002b6c: POP
00002b6d: POP
00002b6e: POP
00002b6f: SWAP1
00002b70: SWAP2
00002b71: JUMP
00002b72: JUMPDEST
00002b73: PUSH2 0x2b7d
00002b76: DUP4
00002b77: DUP4
00002b78: DUP4
00002b79: PUSH2 0x458d
00002b7c: JUMP
00002b7d: JUMPDEST
00002b7e: POP
00002b7f: POP
00002b80: POP
00002b81: JUMP
00002b82: JUMPDEST
00002b83: PUSH1 0x40
00002b85: MLOAD
00002b86: PUSH4 0x1644ac7b
00002b8b: PUSH1 0xe1
00002b8d: SHL
00002b8e: DUP2
00002b8f: MSTORE
00002b90: CALLER
00002b91: SWAP1
00002b92: PUSH4 0x2c8958f6
00002b97: SWAP1
00002b98: PUSH2 0x2bab
00002b9b: SWAP1
00002b9c: DUP8
00002b9d: SWAP1
00002b9e: DUP8
00002b9f: SWAP1
00002ba0: DUP8
00002ba1: SWAP1
00002ba2: DUP8
00002ba3: SWAP1
00002ba4: PUSH1 0x04
00002ba6: ADD
00002ba7: PUSH2 0x5697
00002baa: JUMP
00002bab: JUMPDEST
00002bac: PUSH1 0x00
00002bae: PUSH1 0x40
00002bb0: MLOAD
00002bb1: DUP1
00002bb2: DUP4
00002bb3: SUB
00002bb4: DUP2
00002bb5: PUSH1 0x00
00002bb7: DUP8
00002bb8: DUP1
00002bb9: EXTCODESIZE
00002bba: ISZERO
00002bbb: DUP1
00002bbc: ISZERO
00002bbd: PUSH2 0x2bc5
00002bc0: JUMPI
00002bc1: PUSH1 0x00
00002bc3: DUP1
00002bc4: REVERT
00002bc5: JUMPDEST
00002bc6: POP
00002bc7: GAS
00002bc8: CALL
00002bc9: ISZERO
00002bca: DUP1
00002bcb: ISZERO
00002bcc: PUSH2 0x2bd9
00002bcf: JUMPI
00002bd0: RETURNDATASIZE
00002bd1: PUSH1 0x00
00002bd3: DUP1
00002bd4: RETURNDATACOPY
00002bd5: RETURNDATASIZE
00002bd6: PUSH1 0x00
00002bd8: REVERT
00002bd9: JUMPDEST
00002bda: POP
00002bdb: POP
00002bdc: POP
00002bdd: POP
00002bde: POP
00002bdf: POP
00002be0: POP
00002be1: POP
00002be2: JUMP
00002be3: JUMPDEST
00002be4: PUSH1 0x40
00002be6: MLOAD
00002be7: PUSH4 0x70a08231
00002bec: PUSH1 0xe0
00002bee: SHL
00002bef: DUP2
00002bf0: MSTORE
00002bf1: PUSH1 0x00
00002bf3: SWAP1
00002bf4: PUSH1 0x01
00002bf6: PUSH1 0x01
00002bf8: PUSH1 0xa0
00002bfa: SHL
00002bfb: SUB
00002bfc: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00002c1d: AND
00002c1e: SWAP1
00002c1f: PUSH4 0x70a08231
00002c24: SWAP1
00002c25: PUSH2 0x2c32
00002c28: SWAP1
00002c29: ADDRESS
00002c2a: SWAP1
00002c2b: PUSH1 0x04
00002c2d: ADD
00002c2e: PUSH2 0x56b7
00002c31: JUMP
00002c32: JUMPDEST
00002c33: PUSH1 0x20
00002c35: PUSH1 0x40
00002c37: MLOAD
00002c38: DUP1
00002c39: DUP4
00002c3a: SUB
00002c3b: DUP2
00002c3c: DUP7
00002c3d: GAS
00002c3e: STATICCALL
00002c3f: ISZERO
00002c40: DUP1
00002c41: ISZERO
00002c42: PUSH2 0x2c4f
00002c45: JUMPI
00002c46: RETURNDATASIZE
00002c47: PUSH1 0x00
00002c49: DUP1
00002c4a: RETURNDATACOPY
00002c4b: RETURNDATASIZE
00002c4c: PUSH1 0x00
00002c4e: REVERT
00002c4f: JUMPDEST
00002c50: POP
00002c51: POP
00002c52: POP
00002c53: POP
00002c54: PUSH1 0x40
00002c56: MLOAD
00002c57: RETURNDATASIZE
00002c58: PUSH1 0x1f
00002c5a: NOT
00002c5b: PUSH1 0x1f
00002c5d: DUP3
00002c5e: ADD
00002c5f: AND
00002c60: DUP3
00002c61: ADD
00002c62: DUP1
00002c63: PUSH1 0x40
00002c65: MSTORE
00002c66: POP
00002c67: DUP2
00002c68: ADD
00002c69: SWAP1
00002c6a: PUSH2 0x2c73
00002c6d: SWAP2
00002c6e: SWAP1
00002c6f: PUSH2 0x56cb
00002c72: JUMP
00002c73: JUMPDEST
00002c74: SWAP1
00002c75: POP
00002c76: SWAP1
00002c77: JUMP
00002c78: JUMPDEST
00002c79: PUSH1 0x00
00002c7b: DUP5
00002c7c: GT
00002c7d: DUP1
00002c7e: PUSH2 0x2c87
00002c81: JUMPI
00002c82: POP
00002c83: PUSH1 0x00
00002c85: DUP4
00002c86: GT
00002c87: JUMPDEST
00002c88: DUP1
00002c89: PUSH2 0x2c92
00002c8c: JUMPI
00002c8d: POP
00002c8e: PUSH1 0x00
00002c90: DUP3
00002c91: GT
00002c92: JUMPDEST
00002c93: DUP1
00002c94: PUSH2 0x2c9d
00002c97: JUMPI
00002c98: POP
00002c99: PUSH1 0x00
00002c9b: DUP2
00002c9c: GT
00002c9d: JUMPDEST
00002c9e: ISZERO
00002c9f: PUSH2 0x2edb
00002ca2: JUMPI
00002ca3: PUSH1 0x04
00002ca5: DUP1
00002ca6: SLOAD
00002ca7: PUSH1 0x07
00002ca9: SWAP1
00002caa: PUSH1 0x01
00002cac: PUSH1 0xd0
00002cae: SHL
00002caf: SWAP1
00002cb0: DIV
00002cb1: PUSH4 0xffffffff
00002cb6: AND
00002cb7: PUSH1 0x00
00002cb9: DUP1
00002cba: DUP1
00002cbb: DUP1
00002cbc: DUP1
00002cbd: PUSH2 0x2cc9
00002cc0: DUP13
00002cc1: DUP13
00002cc2: DUP9
00002cc3: DUP11
00002cc4: DUP13
00002cc5: PUSH2 0x45f7
00002cc8: JUMP
00002cc9: JUMPDEST
00002cca: SWAP4
00002ccb: POP
00002ccc: SWAP4
00002ccd: POP
00002cce: SWAP4
00002ccf: POP
00002cd0: SWAP4
00002cd1: POP
00002cd2: DUP1
00002cd3: DUP3
00002cd4: OR
00002cd5: PUSH1 0x00
00002cd7: EQ
00002cd8: PUSH2 0x2d0f
00002cdb: JUMPI
00002cdc: PUSH2 0x2ce4
00002cdf: DUP3
00002ce0: PUSH2 0x3a19
00002ce3: JUMP
00002ce4: JUMPDEST
00002ce5: PUSH2 0x2cee
00002ce8: SWAP1
00002ce9: DUP16
00002cea: PUSH2 0x56e4
00002ced: JUMP
00002cee: JUMPDEST
00002cef: PUSH2 0x2cf7
00002cf2: DUP3
00002cf3: PUSH2 0x3a19
00002cf6: JUMP
00002cf7: JUMPDEST
00002cf8: PUSH2 0x2d01
00002cfb: SWAP1
00002cfc: DUP16
00002cfd: PUSH2 0x56e4
00002d00: JUMP
00002d01: JUMPDEST
00002d02: SWAP1
00002d03: SWAP15
00002d04: POP
00002d05: SWAP13
00002d06: POP
00002d07: PUSH1 0x01
00002d09: SWAP5
00002d0a: POP
00002d0b: PUSH2 0x2d57
00002d0e: JUMP
00002d0f: JUMPDEST
00002d10: PUSH1 0x01
00002d12: PUSH1 0x01
00002d14: PUSH1 0x68
00002d16: SHL
00002d17: SUB
00002d18: DUP5
00002d19: DUP5
00002d1a: OR
00002d1b: AND
00002d1c: ISZERO
00002d1d: PUSH2 0x2d57
00002d20: JUMPI
00002d21: PUSH1 0x04
00002d23: DUP1
00002d24: SLOAD
00002d25: PUSH1 0x01
00002d27: PUSH1 0x01
00002d29: PUSH1 0xd0
00002d2b: SHL
00002d2c: SUB
00002d2d: NOT
00002d2e: AND
00002d2f: PUSH1 0x01
00002d31: PUSH1 0x68
00002d33: SHL
00002d34: PUSH1 0x01
00002d36: PUSH1 0x01
00002d38: PUSH1 0x68
00002d3a: SHL
00002d3b: SUB
00002d3c: DUP7
00002d3d: DUP2
00002d3e: AND
00002d3f: SWAP2
00002d40: SWAP1
00002d41: SWAP2
00002d42: MUL
00002d43: PUSH1 0x01
00002d45: PUSH1 0x01
00002d47: PUSH1 0x68
00002d49: SHL
00002d4a: SUB
00002d4b: NOT
00002d4c: AND
00002d4d: SWAP2
00002d4e: SWAP1
00002d4f: SWAP2
00002d50: OR
00002d51: SWAP1
00002d52: DUP7
00002d53: AND
00002d54: OR
00002d55: SWAP1
00002d56: SSTORE
00002d57: JUMPDEST
00002d58: PUSH1 0x05
00002d5a: SWAP8
00002d5b: POP
00002d5c: PUSH1 0x06
00002d5e: SWAP7
00002d5f: POP
00002d60: PUSH2 0x2d72
00002d63: DUP11
00002d64: DUP11
00002d65: DUP9
00002d66: PUSH4 0xffffffff
00002d6b: AND
00002d6c: DUP11
00002d6d: DUP13
00002d6e: PUSH2 0x45f7
00002d71: JUMP
00002d72: JUMPDEST
00002d73: SWAP3
00002d74: SWAP7
00002d75: POP
00002d76: SWAP1
00002d77: SWAP5
00002d78: POP
00002d79: SWAP3
00002d7a: POP
00002d7b: SWAP1
00002d7c: POP
00002d7d: DUP2
00002d7e: DUP2
00002d7f: OR
00002d80: ISZERO
00002d81: PUSH2 0x2e65
00002d84: JUMPI
00002d85: PUSH2 0x2d8d
00002d88: DUP3
00002d89: PUSH2 0x3a19
00002d8c: JUMP
00002d8d: JUMPDEST
00002d8e: PUSH2 0x2d97
00002d91: SWAP1
00002d92: DUP16
00002d93: PUSH2 0x56e4
00002d96: JUMP
00002d97: JUMPDEST
00002d98: PUSH2 0x2da0
00002d9b: DUP3
00002d9c: PUSH2 0x3a19
00002d9f: JUMP
00002da0: JUMPDEST
00002da1: PUSH2 0x2daa
00002da4: SWAP1
00002da5: DUP16
00002da6: PUSH2 0x56e4
00002da9: JUMP
00002daa: JUMPDEST
00002dab: DUP1
00002dac: SWAP15
00002dad: POP
00002dae: DUP2
00002daf: SWAP16
00002db0: POP
00002db1: POP
00002db2: POP
00002db3: PUSH1 0x01
00002db5: SWAP5
00002db6: POP
00002db7: PUSH2 0x2e60
00002dba: PUSH4 0xaa6b14bb
00002dbf: PUSH1 0xe0
00002dc1: SHL
00002dc2: PUSH1 0x06
00002dc4: PUSH1 0x00
00002dc6: SWAP1
00002dc7: SLOAD
00002dc8: SWAP1
00002dc9: PUSH2 0x0100
00002dcc: EXP
00002dcd: SWAP1
00002dce: DIV
00002dcf: PUSH1 0x01
00002dd1: PUSH1 0x01
00002dd3: PUSH1 0xa0
00002dd5: SHL
00002dd6: SUB
00002dd7: AND
00002dd8: PUSH1 0x01
00002dda: PUSH1 0x01
00002ddc: PUSH1 0xa0
00002dde: SHL
00002ddf: SUB
00002de0: AND
00002de1: PUSH4 0xaa6b14bb
00002de6: DUP6
00002de7: DUP6
00002de8: PUSH1 0x40
00002dea: MLOAD
00002deb: DUP4
00002dec: PUSH4 0xffffffff
00002df1: AND
00002df2: PUSH1 0xe0
00002df4: SHL
00002df5: DUP2
00002df6: MSTORE
00002df7: PUSH1 0x04
00002df9: ADD
00002dfa: PUSH2 0x2e0d
00002dfd: SWAP3
00002dfe: SWAP2
00002dff: SWAP1
00002e00: SWAP2
00002e01: DUP3
00002e02: MSTORE
00002e03: PUSH1 0x20
00002e05: DUP3
00002e06: ADD
00002e07: MSTORE
00002e08: PUSH1 0x40
00002e0a: ADD
00002e0b: SWAP1
00002e0c: JUMP
00002e0d: JUMPDEST
00002e0e: PUSH1 0x20
00002e10: PUSH1 0x40
00002e12: MLOAD
00002e13: DUP1
00002e14: DUP4
00002e15: SUB
00002e16: DUP2
00002e17: PUSH1 0x00
00002e19: DUP8
00002e1a: GAS
00002e1b: CALL
00002e1c: ISZERO
00002e1d: DUP1
00002e1e: ISZERO
00002e1f: PUSH2 0x2e2c
00002e22: JUMPI
00002e23: RETURNDATASIZE
00002e24: PUSH1 0x00
00002e26: DUP1
00002e27: RETURNDATACOPY
00002e28: RETURNDATASIZE
00002e29: PUSH1 0x00
00002e2b: REVERT
00002e2c: JUMPDEST
00002e2d: POP
00002e2e: POP
00002e2f: POP
00002e30: POP
00002e31: PUSH1 0x40
00002e33: MLOAD
00002e34: RETURNDATASIZE
00002e35: PUSH1 0x1f
00002e37: NOT
00002e38: PUSH1 0x1f
00002e3a: DUP3
00002e3b: ADD
00002e3c: AND
00002e3d: DUP3
00002e3e: ADD
00002e3f: DUP1
00002e40: PUSH1 0x40
00002e42: MSTORE
00002e43: POP
00002e44: DUP2
00002e45: ADD
00002e46: SWAP1
00002e47: PUSH2 0x2e50
00002e4a: SWAP2
00002e4b: SWAP1
00002e4c: PUSH2 0x5704
00002e4f: JUMP
00002e50: JUMPDEST
00002e51: PUSH1 0x01
00002e53: PUSH1 0x01
00002e55: PUSH1 0xe0
00002e57: SHL
00002e58: SUB
00002e59: NOT
00002e5a: AND
00002e5b: SWAP1
00002e5c: PUSH2 0x38e3
00002e5f: JUMP
00002e60: JUMPDEST
00002e61: PUSH2 0x2ead
00002e64: JUMP
00002e65: JUMPDEST
00002e66: PUSH1 0x01
00002e68: PUSH1 0x01
00002e6a: PUSH1 0x68
00002e6c: SHL
00002e6d: SUB
00002e6e: DUP5
00002e6f: DUP5
00002e70: OR
00002e71: AND
00002e72: ISZERO
00002e73: PUSH2 0x2ead
00002e76: JUMPI
00002e77: PUSH1 0x05
00002e79: DUP1
00002e7a: SLOAD
00002e7b: PUSH1 0x01
00002e7d: PUSH1 0x01
00002e7f: PUSH1 0xd0
00002e81: SHL
00002e82: SUB
00002e83: NOT
00002e84: AND
00002e85: PUSH1 0x01
00002e87: PUSH1 0x68
00002e89: SHL
00002e8a: PUSH1 0x01
00002e8c: PUSH1 0x01
00002e8e: PUSH1 0x68
00002e90: SHL
00002e91: SUB
00002e92: DUP7
00002e93: DUP2
00002e94: AND
00002e95: SWAP2
00002e96: SWAP1
00002e97: SWAP2
00002e98: MUL
00002e99: PUSH1 0x01
00002e9b: PUSH1 0x01
00002e9d: PUSH1 0x68
00002e9f: SHL
00002ea0: SUB
00002ea1: NOT
00002ea2: AND
00002ea3: SWAP2
00002ea4: SWAP1
00002ea5: SWAP2
00002ea6: OR
00002ea7: SWAP1
00002ea8: DUP7
00002ea9: AND
00002eaa: OR
00002eab: SWAP1
00002eac: SSTORE
00002ead: JUMPDEST
00002eae: DUP5
00002eaf: ISZERO
00002eb0: PUSH2 0x2ed2
00002eb3: JUMPI
00002eb4: PUSH1 0x04
00002eb6: DUP1
00002eb7: SLOAD
00002eb8: PUSH4 0xffffffff
00002ebd: PUSH1 0xd0
00002ebf: SHL
00002ec0: NOT
00002ec1: AND
00002ec2: PUSH1 0x01
00002ec4: PUSH1 0xd0
00002ec6: SHL
00002ec7: TIMESTAMP
00002ec8: PUSH4 0xffffffff
00002ecd: AND
00002ece: MUL
00002ecf: OR
00002ed0: SWAP1
00002ed1: SSTORE
00002ed2: JUMPDEST
00002ed3: POP
00002ed4: POP
00002ed5: POP
00002ed6: POP
00002ed7: POP
00002ed8: POP
00002ed9: POP
00002eda: POP
00002edb: JUMPDEST
00002edc: DUP6
00002edd: DUP6
00002ede: OR
00002edf: ISZERO
00002ee0: PUSH2 0x2f5f
00002ee3: JUMPI
00002ee4: PUSH1 0x0c
00002ee6: SLOAD
00002ee7: PUSH1 0x01
00002ee9: PUSH1 0x01
00002eeb: PUSH1 0x80
00002eed: SHL
00002eee: SUB
00002eef: DUP1
00002ef0: DUP3
00002ef1: AND
00002ef2: SWAP2
00002ef3: PUSH1 0x01
00002ef5: PUSH1 0x80
00002ef7: SHL
00002ef8: SWAP1
00002ef9: DIV
00002efa: AND
00002efb: DUP8
00002efc: ISZERO
00002efd: PUSH2 0x2f1e
00002f00: JUMPI
00002f01: PUSH2 0x2f12
00002f04: PUSH2 0x2f0d
00002f07: DUP10
00002f08: DUP5
00002f09: PUSH2 0x572e
00002f0c: JUMP
00002f0d: JUMPDEST
00002f0e: PUSH2 0x4703
00002f11: JUMP
00002f12: JUMPDEST
00002f13: PUSH1 0x01
00002f15: PUSH1 0x01
00002f17: PUSH1 0x80
00002f19: SHL
00002f1a: SUB
00002f1b: AND
00002f1c: SWAP2
00002f1d: POP
00002f1e: JUMPDEST
00002f1f: DUP7
00002f20: ISZERO
00002f21: PUSH2 0x2f3d
00002f24: JUMPI
00002f25: PUSH2 0x2f31
00002f28: PUSH2 0x2f0d
00002f2b: DUP9
00002f2c: DUP4
00002f2d: PUSH2 0x572e
00002f30: JUMP
00002f31: JUMPDEST
00002f32: PUSH1 0x01
00002f34: PUSH1 0x01
00002f36: PUSH1 0x80
00002f38: SHL
00002f39: SUB
00002f3a: AND
00002f3b: SWAP1
00002f3c: POP
00002f3d: JUMPDEST
00002f3e: PUSH1 0x01
00002f40: PUSH1 0x01
00002f42: PUSH1 0x80
00002f44: SHL
00002f45: SUB
00002f46: SWAP2
00002f47: DUP3
00002f48: AND
00002f49: SWAP2
00002f4a: AND
00002f4b: PUSH1 0x01
00002f4d: PUSH1 0x80
00002f4f: SHL
00002f50: MUL
00002f51: PUSH1 0x01
00002f53: PUSH1 0x01
00002f55: PUSH1 0x80
00002f57: SHL
00002f58: SUB
00002f59: NOT
00002f5a: AND
00002f5b: OR
00002f5c: PUSH1 0x0c
00002f5e: SSTORE
00002f5f: JUMPDEST
00002f60: POP
00002f61: POP
00002f62: POP
00002f63: POP
00002f64: POP
00002f65: POP
00002f66: JUMP
00002f67: JUMPDEST
00002f68: PUSH1 0x40
00002f6a: MLOAD
00002f6b: PUSH4 0x70a08231
00002f70: PUSH1 0xe0
00002f72: SHL
00002f73: DUP2
00002f74: MSTORE
00002f75: PUSH1 0x00
00002f77: SWAP1
00002f78: PUSH1 0x01
00002f7a: PUSH1 0x01
00002f7c: PUSH1 0xa0
00002f7e: SHL
00002f7f: SUB
00002f80: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
00002fa1: AND
00002fa2: SWAP1
00002fa3: PUSH4 0x70a08231
00002fa8: SWAP1
00002fa9: PUSH2 0x2c32
00002fac: SWAP1
00002fad: ADDRESS
00002fae: SWAP1
00002faf: PUSH1 0x04
00002fb1: ADD
00002fb2: PUSH2 0x56b7
00002fb5: JUMP
00002fb6: JUMPDEST
00002fb7: PUSH1 0x40
00002fb9: DUP1
00002fba: MLOAD
00002fbb: DUP9
00002fbc: DUP2
00002fbd: MSTORE
00002fbe: PUSH1 0x20
00002fc0: DUP2
00002fc1: ADD
00002fc2: DUP9
00002fc3: SWAP1
00002fc4: MSTORE
00002fc5: PUSH1 0x01
00002fc7: PUSH1 0x01
00002fc9: PUSH1 0xa0
00002fcb: SHL
00002fcc: SUB
00002fcd: DUP8
00002fce: DUP2
00002fcf: AND
00002fd0: DUP3
00002fd1: DUP5
00002fd2: ADD
00002fd3: MSTORE
00002fd4: PUSH1 0x01
00002fd6: PUSH1 0x01
00002fd8: PUSH1 0x80
00002fda: SHL
00002fdb: SUB
00002fdc: DUP8
00002fdd: AND
00002fde: PUSH1 0x60
00002fe0: DUP4
00002fe1: ADD
00002fe2: MSTORE
00002fe3: PUSH1 0x02
00002fe5: DUP7
00002fe6: SWAP1
00002fe7: SIGNEXTEND
00002fe8: PUSH1 0x80
00002fea: DUP4
00002feb: ADD
00002fec: MSTORE
00002fed: PUSH3 0xffffff
00002ff1: DUP1
00002ff2: DUP7
00002ff3: AND
00002ff4: PUSH1 0xa0
00002ff6: DUP5
00002ff7: ADD
00002ff8: MSTORE
00002ff9: DUP5
00002ffa: AND
00002ffb: PUSH1 0xc0
00002ffd: DUP4
00002ffe: ADD
00002fff: MSTORE
00003000: SWAP2
00003001: MLOAD
00003002: SWAP2
00003003: DUP11
00003004: AND
00003005: SWAP2
00003006: CALLER
00003007: SWAP2
00003008: PUSH32 0x121cb44ee54098b1a04743c487e7460d8dd429b27f88b1f4d4767396e1a59f79
00003029: SWAP2
0000302a: SWAP1
0000302b: DUP2
0000302c: SWAP1
0000302d: SUB
0000302e: PUSH1 0xe0
00003030: ADD
00003031: SWAP1
00003032: LOG3
00003033: POP
00003034: POP
00003035: POP
00003036: POP
00003037: POP
00003038: POP
00003039: POP
0000303a: POP
0000303b: JUMP
0000303c: JUMPDEST
0000303d: PUSH1 0x02
0000303f: DUP1
00003040: SLOAD
00003041: PUSH1 0xff
00003043: PUSH1 0xe0
00003045: SHL
00003046: NOT
00003047: AND
00003048: PUSH1 0x01
0000304a: PUSH1 0xe0
0000304c: SHL
0000304d: OR
0000304e: SWAP1
0000304f: SSTORE
00003050: JUMP
00003051: JUMPDEST
00003052: PUSH1 0x02
00003054: DUP1
00003055: SLOAD
00003056: PUSH1 0x01
00003058: PUSH1 0xc8
0000305a: SHL
0000305b: SWAP1
0000305c: DIV
0000305d: AND
0000305e: ISZERO
0000305f: PUSH2 0x2bd9
00003062: JUMPI
00003063: PUSH2 0x306a
00003066: PUSH2 0x3fb0
00003069: JUMP
0000306a: JUMPDEST
0000306b: PUSH2 0x2bd9
0000306e: JUMPI
0000306f: PUSH2 0x2bd9
00003072: PUSH4 0x9cb5a963
00003077: PUSH1 0xe0
00003079: SHL
0000307a: PUSH1 0x06
0000307c: PUSH1 0x00
0000307e: SWAP1
0000307f: SLOAD
00003080: SWAP1
00003081: PUSH2 0x0100
00003084: EXP
00003085: SWAP1
00003086: DIV
00003087: PUSH1 0x01
00003089: PUSH1 0x01
0000308b: PUSH1 0xa0
0000308d: SHL
0000308e: SUB
0000308f: AND
00003090: PUSH1 0x01
00003092: PUSH1 0x01
00003094: PUSH1 0xa0
00003096: SHL
00003097: SUB
00003098: AND
00003099: PUSH4 0x9cb5a963
0000309e: CALLER
0000309f: DUP13
000030a0: DUP13
000030a1: DUP13
000030a2: DUP13
000030a3: DUP13
000030a4: DUP13
000030a5: DUP13
000030a6: DUP13
000030a7: PUSH1 0x40
000030a9: MLOAD
000030aa: DUP11
000030ab: PUSH4 0xffffffff
000030b0: AND
000030b1: PUSH1 0xe0
000030b3: SHL
000030b4: DUP2
000030b5: MSTORE
000030b6: PUSH1 0x04
000030b8: ADD
000030b9: DUP1
000030ba: DUP11
000030bb: PUSH1 0x01
000030bd: PUSH1 0x01
000030bf: PUSH1 0xa0
000030c1: SHL
000030c2: SUB
000030c3: AND
000030c4: DUP2
000030c5: MSTORE
000030c6: PUSH1 0x20
000030c8: ADD
000030c9: DUP10
000030ca: PUSH1 0x01
000030cc: PUSH1 0x01
000030ce: PUSH1 0xa0
000030d0: SHL
000030d1: SUB
000030d2: AND
000030d3: DUP2
000030d4: MSTORE
000030d5: PUSH1 0x20
000030d7: ADD
000030d8: DUP9
000030d9: ISZERO
000030da: ISZERO
000030db: DUP2
000030dc: MSTORE
000030dd: PUSH1 0x20
000030df: ADD
000030e0: DUP8
000030e1: DUP2
000030e2: MSTORE
000030e3: PUSH1 0x20
000030e5: ADD
000030e6: DUP7
000030e7: PUSH1 0x01
000030e9: PUSH1 0x01
000030eb: PUSH1 0xa0
000030ed: SHL
000030ee: SUB
000030ef: AND
000030f0: DUP2
000030f1: MSTORE
000030f2: PUSH1 0x20
000030f4: ADD
000030f5: DUP6
000030f6: DUP2
000030f7: MSTORE
000030f8: PUSH1 0x20
000030fa: ADD
000030fb: DUP5
000030fc: DUP2
000030fd: MSTORE
000030fe: PUSH1 0x20
00003100: ADD
00003101: DUP1
00003102: PUSH1 0x20
00003104: ADD
00003105: DUP3
00003106: DUP2
00003107: SUB
00003108: DUP3
00003109: MSTORE
0000310a: DUP5
0000310b: DUP5
0000310c: DUP3
0000310d: DUP2
0000310e: DUP2
0000310f: MSTORE
00003110: PUSH1 0x20
00003112: ADD
00003113: SWAP3
00003114: POP
00003115: DUP1
00003116: DUP3
00003117: DUP5
00003118: CALLDATACOPY
00003119: PUSH1 0x00
0000311b: DUP2
0000311c: DUP5
0000311d: ADD
0000311e: MSTORE
0000311f: PUSH1 0x1f
00003121: NOT
00003122: PUSH1 0x1f
00003124: DUP3
00003125: ADD
00003126: AND
00003127: SWAP1
00003128: POP
00003129: DUP1
0000312a: DUP4
0000312b: ADD
0000312c: SWAP3
0000312d: POP
0000312e: POP
0000312f: POP
00003130: SWAP11
00003131: POP
00003132: POP
00003133: POP
00003134: POP
00003135: POP
00003136: POP
00003137: POP
00003138: POP
00003139: POP
0000313a: POP
0000313b: POP
0000313c: PUSH1 0x20
0000313e: PUSH1 0x40
00003140: MLOAD
00003141: DUP1
00003142: DUP4
00003143: SUB
00003144: DUP2
00003145: PUSH1 0x00
00003147: DUP8
00003148: GAS
00003149: CALL
0000314a: ISZERO
0000314b: DUP1
0000314c: ISZERO
0000314d: PUSH2 0x10a1
00003150: JUMPI
00003151: RETURNDATASIZE
00003152: PUSH1 0x00
00003154: DUP1
00003155: RETURNDATACOPY
00003156: RETURNDATASIZE
00003157: PUSH1 0x00
00003159: REVERT
0000315a: JUMPDEST
0000315b: PUSH1 0x06
0000315d: SLOAD
0000315e: PUSH1 0x01
00003160: PUSH1 0x01
00003162: PUSH1 0xa0
00003164: SHL
00003165: SUB
00003166: AND
00003167: CALLER
00003168: EQ
00003169: PUSH2 0x0d5e
0000316c: JUMPI
0000316d: PUSH1 0x40
0000316f: MLOAD
00003170: PUSH4 0x4994c269
00003175: PUSH1 0xe1
00003177: SHL
00003178: DUP2
00003179: MSTORE
0000317a: PUSH1 0x04
0000317c: ADD
0000317d: PUSH1 0x40
0000317f: MLOAD
00003180: DUP1
00003181: SWAP2
00003182: SUB
00003183: SWAP1
00003184: REVERT
00003185: JUMPDEST
00003186: PUSH1 0x00
00003188: DUP1
00003189: PUSH2 0x3190
0000318c: PUSH2 0x2be3
0000318f: JUMP
00003190: JUMPDEST
00003191: PUSH2 0x3198
00003194: PUSH2 0x2f67
00003197: JUMP
00003198: JUMPDEST
00003199: PUSH1 0x0c
0000319b: SLOAD
0000319c: SWAP2
0000319d: SWAP4
0000319e: POP
0000319f: SWAP2
000031a0: POP
000031a1: PUSH1 0x01
000031a3: PUSH1 0x01
000031a5: PUSH1 0x80
000031a7: SHL
000031a8: SUB
000031a9: DUP1
000031aa: DUP3
000031ab: AND
000031ac: SWAP2
000031ad: PUSH1 0x01
000031af: PUSH1 0x80
000031b1: SHL
000031b2: SWAP1
000031b3: DIV
000031b4: AND
000031b5: DUP2
000031b6: DUP5
000031b7: GT
000031b8: DUP1
000031b9: PUSH2 0x31ca
000031bc: JUMPI
000031bd: POP
000031be: DUP1
000031bf: PUSH1 0x01
000031c1: PUSH1 0x01
000031c3: PUSH1 0x80
000031c5: SHL
000031c6: SUB
000031c7: AND
000031c8: DUP4
000031c9: GT
000031ca: JUMPDEST
000031cb: ISZERO
000031cc: PUSH2 0x20ca
000031cf: JUMPI
000031d0: DUP2
000031d1: PUSH1 0x01
000031d3: PUSH1 0x01
000031d5: PUSH1 0x80
000031d7: SHL
000031d8: SUB
000031d9: AND
000031da: DUP5
000031db: GT
000031dc: ISZERO
000031dd: PUSH2 0x321d
000031e0: JUMPI
000031e1: PUSH2 0x321d
000031e4: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00003205: DUP7
00003206: PUSH2 0x3218
00003209: PUSH1 0x01
0000320b: PUSH1 0x01
0000320d: PUSH1 0x80
0000320f: SHL
00003210: SUB
00003211: DUP7
00003212: AND
00003213: DUP9
00003214: PUSH2 0x55bf
00003217: JUMP
00003218: JUMPDEST
00003219: PUSH2 0x2b72
0000321c: JUMP
0000321d: JUMPDEST
0000321e: DUP1
0000321f: PUSH1 0x01
00003221: PUSH1 0x01
00003223: PUSH1 0x80
00003225: SHL
00003226: SUB
00003227: AND
00003228: DUP4
00003229: GT
0000322a: ISZERO
0000322b: PUSH2 0x3266
0000322e: JUMPI
0000322f: PUSH2 0x3266
00003232: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
00003253: DUP7
00003254: PUSH2 0x3218
00003257: PUSH1 0x01
00003259: PUSH1 0x01
0000325b: PUSH1 0x80
0000325d: SHL
0000325e: SUB
0000325f: DUP6
00003260: AND
00003261: DUP8
00003262: PUSH2 0x55bf
00003265: JUMP
00003266: JUMPDEST
00003267: PUSH1 0x01
00003269: PUSH1 0x01
0000326b: PUSH1 0xa0
0000326d: SHL
0000326e: SUB
0000326f: DUP6
00003270: AND
00003271: PUSH32 0xb94331e4420f16b156f53c397a8adcd09481283ee7830f7b688b22858e9db80b
00003292: PUSH2 0x32a4
00003295: PUSH1 0x01
00003297: PUSH1 0x01
00003299: PUSH1 0x80
0000329b: SHL
0000329c: SUB
0000329d: DUP6
0000329e: AND
0000329f: DUP8
000032a0: PUSH2 0x55bf
000032a3: JUMP
000032a4: JUMPDEST
000032a5: PUSH2 0x32b7
000032a8: PUSH1 0x01
000032aa: PUSH1 0x01
000032ac: PUSH1 0x80
000032ae: SHL
000032af: SUB
000032b0: DUP6
000032b1: AND
000032b2: DUP8
000032b3: PUSH2 0x55bf
000032b6: JUMP
000032b7: JUMPDEST
000032b8: PUSH1 0x40
000032ba: DUP1
000032bb: MLOAD
000032bc: SWAP3
000032bd: DUP4
000032be: MSTORE
000032bf: PUSH1 0x20
000032c1: DUP4
000032c2: ADD
000032c3: SWAP2
000032c4: SWAP1
000032c5: SWAP2
000032c6: MSTORE
000032c7: ADD
000032c8: PUSH1 0x40
000032ca: MLOAD
000032cb: DUP1
000032cc: SWAP2
000032cd: SUB
000032ce: SWAP1
000032cf: LOG2
000032d0: POP
000032d1: POP
000032d2: POP
000032d3: POP
000032d4: POP
000032d5: JUMP
000032d6: JUMPDEST
000032d7: PUSH1 0x02
000032d9: SLOAD
000032da: PUSH1 0x01
000032dc: PUSH1 0xe0
000032de: SHL
000032df: SWAP1
000032e0: DIV
000032e1: PUSH1 0xff
000032e3: AND
000032e4: PUSH2 0x0d5e
000032e7: JUMPI
000032e8: PUSH1 0x40
000032ea: MLOAD
000032eb: PUSH4 0x67984809
000032f0: PUSH1 0xe1
000032f2: SHL
000032f3: DUP2
000032f4: MSTORE
000032f5: PUSH1 0x04
000032f7: ADD
000032f8: PUSH1 0x40
000032fa: MLOAD
000032fb: DUP1
000032fc: SWAP2
000032fd: SUB
000032fe: SWAP1
000032ff: REVERT
00003300: JUMPDEST
00003301: PUSH1 0x40
00003303: DUP1
00003304: MLOAD
00003305: PUSH4 0xe8ae2b69
0000330a: PUSH1 0xe0
0000330c: SHL
0000330d: DUP2
0000330e: MSTORE
0000330f: PUSH32 0xb73ce166ead2f8e9add217713a7989e4edfba9625f71dfd2516204bb67ad3442
00003330: PUSH1 0x04
00003332: DUP3
00003333: ADD
00003334: MSTORE
00003335: CALLER
00003336: PUSH1 0x24
00003338: DUP3
00003339: ADD
0000333a: MSTORE
0000333b: SWAP1
0000333c: MLOAD
0000333d: PUSH1 0x01
0000333f: PUSH1 0x01
00003341: PUSH1 0xa0
00003343: SHL
00003344: SUB
00003345: PUSH32 0x000000000000000000000000fb8ed3485efa29a0e4bed93351dd51b59fc4b0f0
00003366: AND
00003367: SWAP2
00003368: PUSH4 0xe8ae2b69
0000336d: SWAP2
0000336e: PUSH1 0x44
00003370: DUP1
00003371: DUP4
00003372: ADD
00003373: SWAP3
00003374: PUSH1 0x20
00003376: SWAP3
00003377: SWAP2
00003378: SWAP1
00003379: DUP3
0000337a: SWAP1
0000337b: SUB
0000337c: ADD
0000337d: DUP2
0000337e: DUP7
0000337f: GAS
00003380: STATICCALL
00003381: ISZERO
00003382: DUP1
00003383: ISZERO
00003384: PUSH2 0x3391
00003387: JUMPI
00003388: RETURNDATASIZE
00003389: PUSH1 0x00
0000338b: DUP1
0000338c: RETURNDATACOPY
0000338d: RETURNDATASIZE
0000338e: PUSH1 0x00
00003390: REVERT
00003391: JUMPDEST
00003392: POP
00003393: POP
00003394: POP
00003395: POP
00003396: PUSH1 0x40
00003398: MLOAD
00003399: RETURNDATASIZE
0000339a: PUSH1 0x20
0000339c: DUP2
0000339d: LT
0000339e: ISZERO
0000339f: PUSH2 0x33a7
000033a2: JUMPI
000033a3: PUSH1 0x00
000033a5: DUP1
000033a6: REVERT
000033a7: JUMPDEST
000033a8: POP
000033a9: MLOAD
000033aa: PUSH2 0x0d5e
000033ad: JUMPI
000033ae: PUSH1 0x40
000033b0: MLOAD
000033b1: PUSH4 0x4994c269
000033b6: PUSH1 0xe1
000033b8: SHL
000033b9: DUP2
000033ba: MSTORE
000033bb: PUSH1 0x04
000033bd: ADD
000033be: PUSH1 0x40
000033c0: MLOAD
000033c1: DUP1
000033c2: SWAP2
000033c3: SUB
000033c4: SWAP1
000033c5: REVERT
000033c6: JUMPDEST
000033c7: PUSH1 0x02
000033c9: DUP1
000033ca: SLOAD
000033cb: PUSH2 0xffff
000033ce: PUSH1 0xd0
000033d0: SHL
000033d1: NOT
000033d2: AND
000033d3: PUSH1 0x01
000033d5: PUSH1 0xd0
000033d7: SHL
000033d8: PUSH2 0xffff
000033db: DUP5
000033dc: AND
000033dd: SWAP1
000033de: DUP2
000033df: MUL
000033e0: SWAP2
000033e1: SWAP1
000033e2: SWAP2
000033e3: OR
000033e4: SWAP1
000033e5: SWAP2
000033e6: SSTORE
000033e7: PUSH1 0x40
000033e9: MLOAD
000033ea: SWAP1
000033eb: DUP2
000033ec: MSTORE
000033ed: PUSH32 0x3647dccc990d4941b0b05b32527ef493a98d6187b20639ca2f9743f3b55ca5e1
0000340e: SWAP1
0000340f: PUSH1 0x20
00003411: ADD
00003412: JUMPDEST
00003413: PUSH1 0x40
00003415: MLOAD
00003416: DUP1
00003417: SWAP2
00003418: SUB
00003419: SWAP1
0000341a: LOG1
0000341b: POP
0000341c: JUMP
0000341d: JUMPDEST
0000341e: PUSH2 0x342a
00003421: PUSH3 0x0d89e7
00003425: NOT
00003426: PUSH2 0x5756
00003429: JUMP
0000342a: JUMPDEST
0000342b: PUSH1 0x02
0000342d: SIGNEXTEND
0000342e: DUP2
0000342f: PUSH1 0x02
00003431: SIGNEXTEND
00003432: SGT
00003433: ISZERO
00003434: PUSH2 0x3450
00003437: JUMPI
00003438: PUSH1 0x40
0000343a: MLOAD
0000343b: PUSH4 0x1445443d
00003440: PUSH1 0xe0
00003442: SHL
00003443: DUP2
00003444: MSTORE
00003445: PUSH1 0x04
00003447: ADD
00003448: PUSH1 0x40
0000344a: MLOAD
0000344b: DUP1
0000344c: SWAP2
0000344d: SUB
0000344e: SWAP1
0000344f: REVERT
00003450: JUMPDEST
00003451: DUP2
00003452: PUSH1 0x02
00003454: SIGNEXTEND
00003455: DUP2
00003456: PUSH1 0x02
00003458: SIGNEXTEND
00003459: SGT
0000345a: PUSH2 0x3476
0000345d: JUMPI
0000345e: PUSH1 0x40
00003460: MLOAD
00003461: PUSH4 0xd9a841a7
00003466: PUSH1 0xe0
00003468: SHL
00003469: DUP2
0000346a: MSTORE
0000346b: PUSH1 0x04
0000346d: ADD
0000346e: PUSH1 0x40
00003470: MLOAD
00003471: DUP1
00003472: SWAP2
00003473: SUB
00003474: SWAP1
00003475: REVERT
00003476: JUMPDEST
00003477: PUSH3 0x0d89e7
0000347b: NOT
0000347c: PUSH1 0x02
0000347e: DUP4
0000347f: SWAP1
00003480: SIGNEXTEND
00003481: SLT
00003482: ISZERO
00003483: PUSH2 0x15b8
00003486: JUMPI
00003487: PUSH1 0x40
00003489: MLOAD
0000348a: PUSH4 0x1d1ac7f1
0000348f: PUSH1 0xe2
00003491: SHL
00003492: DUP2
00003493: MSTORE
00003494: PUSH1 0x04
00003496: ADD
00003497: PUSH1 0x40
00003499: MLOAD
0000349a: DUP1
0000349b: SWAP2
0000349c: SUB
0000349d: SWAP1
0000349e: REVERT
0000349f: JUMPDEST
000034a0: PUSH1 0x02
000034a2: SLOAD
000034a3: PUSH1 0x00
000034a5: SWAP1
000034a6: PUSH1 0x01
000034a8: PUSH1 0xc8
000034aa: SHL
000034ab: SWAP1
000034ac: DIV
000034ad: PUSH1 0x04
000034af: AND
000034b0: ISZERO
000034b1: PUSH2 0x35ea
000034b4: JUMPI
000034b5: PUSH2 0x34bc
000034b8: PUSH2 0x3fb0
000034bb: JUMP
000034bc: JUMPDEST
000034bd: ISZERO
000034be: PUSH2 0x34c9
000034c1: JUMPI
000034c2: POP
000034c3: PUSH1 0x00
000034c5: PUSH2 0x35ea
000034c8: JUMP
000034c9: JUMPDEST
000034ca: PUSH1 0x06
000034cc: SLOAD
000034cd: PUSH1 0x40
000034cf: MLOAD
000034d0: PUSH4 0x2f1208d9
000034d5: PUSH1 0xe1
000034d7: SHL
000034d8: DUP2
000034d9: MSTORE
000034da: CALLER
000034db: PUSH1 0x04
000034dd: DUP3
000034de: ADD
000034df: DUP2
000034e0: DUP2
000034e1: MSTORE
000034e2: PUSH1 0x01
000034e4: PUSH1 0x01
000034e6: PUSH1 0xa0
000034e8: SHL
000034e9: SUB
000034ea: DUP12
000034eb: DUP2
000034ec: AND
000034ed: PUSH1 0x24
000034ef: DUP6
000034f0: ADD
000034f1: MSTORE
000034f2: PUSH1 0x02
000034f4: DUP12
000034f5: DUP2
000034f6: SIGNEXTEND
000034f7: PUSH1 0x44
000034f9: DUP7
000034fa: ADD
000034fb: MSTORE
000034fc: DUP11
000034fd: SWAP1
000034fe: SIGNEXTEND
000034ff: PUSH1 0x64
00003501: DUP6
00003502: ADD
00003503: MSTORE
00003504: PUSH1 0x0f
00003506: DUP10
00003507: SWAP1
00003508: SIGNEXTEND
00003509: PUSH1 0x84
0000350b: DUP6
0000350c: ADD
0000350d: MSTORE
0000350e: PUSH1 0xc0
00003510: PUSH1 0xa4
00003512: DUP6
00003513: ADD
00003514: SWAP1
00003515: DUP2
00003516: MSTORE
00003517: PUSH1 0xc4
00003519: DUP6
0000351a: ADD
0000351b: DUP9
0000351c: SWAP1
0000351d: MSTORE
0000351e: PUSH1 0x00
00003520: SWAP6
00003521: SWAP2
00003522: SWAP1
00003523: SWAP2
00003524: AND
00003525: SWAP4
00003526: PUSH4 0x5e2411b2
0000352b: SWAP4
0000352c: SWAP3
0000352d: DUP14
0000352e: SWAP3
0000352f: DUP14
00003530: SWAP3
00003531: DUP14
00003532: SWAP3
00003533: DUP14
00003534: SWAP3
00003535: DUP14
00003536: SWAP3
00003537: DUP14
00003538: SWAP3
00003539: SWAP2
0000353a: SWAP1
0000353b: PUSH1 0xe4
0000353d: ADD
0000353e: DUP5
0000353f: DUP5
00003540: DUP1
00003541: DUP3
00003542: DUP5
00003543: CALLDATACOPY
00003544: PUSH1 0x00
00003546: DUP2
00003547: DUP5
00003548: ADD
00003549: MSTORE
0000354a: PUSH1 0x1f
0000354c: NOT
0000354d: PUSH1 0x1f
0000354f: DUP3
00003550: ADD
00003551: AND
00003552: SWAP1
00003553: POP
00003554: DUP1
00003555: DUP4
00003556: ADD
00003557: SWAP3
00003558: POP
00003559: POP
0000355a: POP
0000355b: SWAP9
0000355c: POP
0000355d: POP
0000355e: POP
0000355f: POP
00003560: POP
00003561: POP
00003562: POP
00003563: POP
00003564: POP
00003565: PUSH1 0x40
00003567: DUP1
00003568: MLOAD
00003569: DUP1
0000356a: DUP4
0000356b: SUB
0000356c: DUP2
0000356d: PUSH1 0x00
0000356f: DUP8
00003570: GAS
00003571: CALL
00003572: ISZERO
00003573: DUP1
00003574: ISZERO
00003575: PUSH2 0x3582
00003578: JUMPI
00003579: RETURNDATASIZE
0000357a: PUSH1 0x00
0000357c: DUP1
0000357d: RETURNDATACOPY
0000357e: RETURNDATASIZE
0000357f: PUSH1 0x00
00003581: REVERT
00003582: JUMPDEST
00003583: POP
00003584: POP
00003585: POP
00003586: POP
00003587: PUSH1 0x40
00003589: MLOAD
0000358a: RETURNDATASIZE
0000358b: PUSH1 0x40
0000358d: DUP2
0000358e: LT
0000358f: ISZERO
00003590: PUSH2 0x3598
00003593: JUMPI
00003594: PUSH1 0x00
00003596: DUP1
00003597: REVERT
00003598: JUMPDEST
00003599: POP
0000359a: DUP1
0000359b: MLOAD
0000359c: PUSH1 0x20
0000359e: SWAP1
0000359f: SWAP2
000035a0: ADD
000035a1: MLOAD
000035a2: SWAP3
000035a3: POP
000035a4: SWAP1
000035a5: POP
000035a6: PUSH3 0x0f4240
000035aa: PUSH3 0xffffff
000035ae: DUP4
000035af: AND
000035b0: LT
000035b1: PUSH2 0x35cd
000035b4: JUMPI
000035b5: PUSH1 0x40
000035b7: MLOAD
000035b8: PUSH4 0x15b2afa9
000035bd: PUSH1 0xe0
000035bf: SHL
000035c0: DUP2
000035c1: MSTORE
000035c2: PUSH1 0x04
000035c4: ADD
000035c5: PUSH1 0x40
000035c7: MLOAD
000035c8: DUP1
000035c9: SWAP2
000035ca: SUB
000035cb: SWAP1
000035cc: REVERT
000035cd: JUMPDEST
000035ce: PUSH2 0x35e8
000035d1: PUSH1 0x01
000035d3: PUSH1 0x01
000035d5: PUSH1 0xe0
000035d7: SHL
000035d8: SUB
000035d9: NOT
000035da: DUP3
000035db: AND
000035dc: PUSH4 0x2f1208d9
000035e1: PUSH1 0xe1
000035e3: SHL
000035e4: PUSH2 0x38e3
000035e7: JUMP
000035e8: JUMPDEST
000035e9: POP
000035ea: JUMPDEST
000035eb: SWAP7
000035ec: SWAP6
000035ed: POP
000035ee: POP
000035ef: POP
000035f0: POP
000035f1: POP
000035f2: POP
000035f3: JUMP
000035f4: JUMPDEST
000035f5: PUSH3 0xffffff
000035f9: DUP2
000035fa: DUP2
000035fb: AND
000035fc: SWAP1
000035fd: DUP4
000035fe: AND
000035ff: PUSH1 0x18
00003601: DUP6
00003602: DUP2
00003603: SHL
00003604: SWAP2
00003605: SWAP1
00003606: SWAP2
00003607: OR
00003608: SWAP1
00003609: SHL
0000360a: OR
0000360b: PUSH1 0x00
0000360d: SWAP1
0000360e: DUP2
0000360f: MSTORE
00003610: PUSH1 0x0b
00003612: PUSH1 0x20
00003614: MSTORE
00003615: PUSH1 0x40
00003617: SWAP1
00003618: KECCAK256
00003619: JUMPDEST
0000361a: SWAP4
0000361b: SWAP3
0000361c: POP
0000361d: POP
0000361e: POP
0000361f: JUMP
00003620: JUMPDEST
00003621: PUSH1 0x02
00003623: DUP1
00003624: SLOAD
00003625: PUSH1 0x00
00003627: DUP1
00003628: SLOAD
00003629: PUSH1 0x01
0000362b: SLOAD
0000362c: SWAP2
0000362d: SWAP4
0000362e: DUP5
0000362f: SWAP4
00003630: PUSH1 0x01
00003632: PUSH1 0x01
00003634: PUSH1 0xa0
00003636: SHL
00003637: SUB
00003638: DUP2
00003639: AND
0000363a: SWAP4
0000363b: PUSH1 0x01
0000363d: PUSH1 0xa0
0000363f: SHL
00003640: SWAP1
00003641: SWAP2
00003642: DIV
00003643: SWAP1
00003644: SWAP2
00003645: SIGNEXTEND
00003646: SWAP2
00003647: DUP5
00003648: SWAP2
00003649: DUP3
0000364a: SWAP2
0000364b: SWAP1
0000364c: PUSH1 0x0f
0000364e: DUP10
0000364f: SWAP1
00003650: SIGNEXTEND
00003651: ISZERO
00003652: PUSH2 0x367c
00003655: JUMPI
00003656: PUSH2 0x3666
00003659: PUSH1 0x03
0000365b: DUP13
0000365c: DUP8
0000365d: DUP13
0000365e: DUP7
0000365f: DUP7
00003660: PUSH1 0x00
00003662: PUSH2 0x4719
00003665: JUMP
00003666: JUMPDEST
00003667: SWAP4
00003668: POP
00003669: PUSH2 0x3679
0000366c: PUSH1 0x03
0000366e: DUP12
0000366f: DUP8
00003670: DUP13
00003671: DUP7
00003672: DUP7
00003673: PUSH1 0x01
00003675: PUSH2 0x4719
00003678: JUMP
00003679: JUMPDEST
0000367a: SWAP3
0000367b: POP
0000367c: JUMPDEST
0000367d: PUSH1 0x00
0000367f: DUP1
00003680: PUSH2 0x368e
00003683: PUSH1 0x03
00003685: DUP15
00003686: DUP15
00003687: DUP11
00003688: DUP9
00003689: DUP9
0000368a: PUSH2 0x480a
0000368d: JUMP
0000368e: JUMPDEST
0000368f: SWAP2
00003690: POP
00003691: SWAP2
00003692: POP
00003693: PUSH2 0x369e
00003696: DUP15
00003697: DUP13
00003698: DUP5
00003699: DUP5
0000369a: PUSH2 0x48a7
0000369d: JUMP
0000369e: JUMPDEST
0000369f: POP
000036a0: POP
000036a1: POP
000036a2: POP
000036a3: DUP7
000036a4: PUSH1 0x0f
000036a6: SIGNEXTEND
000036a7: PUSH1 0x00
000036a9: EQ
000036aa: PUSH2 0x3735
000036ad: JUMPI
000036ae: DUP2
000036af: DUP1
000036b0: PUSH2 0x36b6
000036b3: JUMPI
000036b4: POP
000036b5: DUP1
000036b6: JUMPDEST
000036b7: ISZERO
000036b8: PUSH2 0x36cf
000036bb: JUMPI
000036bc: PUSH2 0x36cf
000036bf: DUP10
000036c0: DUP10
000036c1: DUP5
000036c2: DUP5
000036c3: DUP8
000036c4: PUSH1 0x00
000036c6: DUP14
000036c7: PUSH1 0x0f
000036c9: SIGNEXTEND
000036ca: SLT
000036cb: PUSH2 0x499c
000036ce: JUMP
000036cf: JUMPDEST
000036d0: PUSH1 0x00
000036d2: PUSH2 0x36de
000036d5: DUP11
000036d6: DUP11
000036d7: DUP11
000036d8: DUP8
000036d9: DUP10
000036da: PUSH2 0x3a40
000036dd: JUMP
000036de: JUMPDEST
000036df: SWAP2
000036e0: SWAP9
000036e1: POP
000036e2: SWAP7
000036e3: POP
000036e4: SWAP1
000036e5: POP
000036e6: PUSH1 0x0f
000036e8: DUP2
000036e9: SWAP1
000036ea: SIGNEXTEND
000036eb: ISZERO
000036ec: PUSH2 0x3733
000036ef: JUMPI
000036f0: PUSH1 0x09
000036f2: SLOAD
000036f3: PUSH2 0x370c
000036f6: SWAP1
000036f7: PUSH1 0x01
000036f9: PUSH1 0x30
000036fb: SHL
000036fc: SWAP1
000036fd: DIV
000036fe: PUSH1 0x01
00003700: PUSH1 0x01
00003702: PUSH1 0x80
00003704: SHL
00003705: SUB
00003706: AND
00003707: DUP10
00003708: PUSH2 0x4513
0000370b: JUMP
0000370c: JUMPDEST
0000370d: PUSH1 0x09
0000370f: PUSH1 0x06
00003711: PUSH2 0x0100
00003714: EXP
00003715: DUP2
00003716: SLOAD
00003717: DUP2
00003718: PUSH1 0x01
0000371a: PUSH1 0x01
0000371c: PUSH1 0x80
0000371e: SHL
0000371f: SUB
00003720: MUL
00003721: NOT
00003722: AND
00003723: SWAP1
00003724: DUP4
00003725: PUSH1 0x01
00003727: PUSH1 0x01
00003729: PUSH1 0x80
0000372b: SHL
0000372c: SUB
0000372d: AND
0000372e: MUL
0000372f: OR
00003730: SWAP1
00003731: SSTORE
00003732: POP
00003733: JUMPDEST
00003734: POP
00003735: JUMPDEST
00003736: POP
00003737: POP
00003738: POP
00003739: POP
0000373a: SWAP5
0000373b: POP
0000373c: SWAP5
0000373d: SWAP3
0000373e: POP
0000373f: POP
00003740: POP
00003741: JUMP
00003742: JUMPDEST
00003743: PUSH1 0x00
00003745: DUP4
00003746: DUP4
00003747: MUL
00003748: DUP2
00003749: PUSH1 0x00
0000374b: NOT
0000374c: DUP6
0000374d: DUP8
0000374e: MULMOD
0000374f: DUP3
00003750: DUP2
00003751: LT
00003752: DUP4
00003753: DUP3
00003754: SUB
00003755: SUB
00003756: SWAP2
00003757: POP
00003758: POP
00003759: DUP1
0000375a: DUP5
0000375b: GT
0000375c: PUSH2 0x3764
0000375f: JUMPI
00003760: PUSH1 0x00
00003762: DUP1
00003763: REVERT
00003764: JUMPDEST
00003765: DUP1
00003766: PUSH1 0x00
00003768: SUB
00003769: PUSH2 0x3777
0000376c: JUMPI
0000376d: POP
0000376e: DUP3
0000376f: SWAP1
00003770: DIV
00003771: SWAP1
00003772: POP
00003773: PUSH2 0x3619
00003776: JUMP
00003777: JUMPDEST
00003778: DUP4
00003779: DUP6
0000377a: DUP8
0000377b: MULMOD
0000377c: PUSH1 0x00
0000377e: DUP6
0000377f: DUP2
00003780: SUB
00003781: DUP7
00003782: AND
00003783: SWAP6
00003784: DUP7
00003785: SWAP1
00003786: DIV
00003787: SWAP6
00003788: PUSH1 0x02
0000378a: PUSH1 0x03
0000378c: DUP9
0000378d: MUL
0000378e: DUP2
0000378f: XOR
00003790: DUP1
00003791: DUP10
00003792: MUL
00003793: DUP3
00003794: SUB
00003795: MUL
00003796: DUP1
00003797: DUP10
00003798: MUL
00003799: DUP3
0000379a: SUB
0000379b: MUL
0000379c: DUP1
0000379d: DUP10
0000379e: MUL
0000379f: DUP3
000037a0: SUB
000037a1: MUL
000037a2: DUP1
000037a3: DUP10
000037a4: MUL
000037a5: DUP3
000037a6: SUB
000037a7: MUL
000037a8: DUP1
000037a9: DUP10
000037aa: MUL
000037ab: DUP3
000037ac: SUB
000037ad: MUL
000037ae: DUP1
000037af: DUP10
000037b0: MUL
000037b1: SWAP1
000037b2: SWAP2
000037b3: SUB
000037b4: MUL
000037b5: SWAP2
000037b6: DUP2
000037b7: SWAP1
000037b8: SUB
000037b9: DUP2
000037ba: SWAP1
000037bb: DIV
000037bc: PUSH1 0x01
000037be: ADD
000037bf: DUP6
000037c0: DUP5
000037c1: GT
000037c2: SWAP1
000037c3: SWAP5
000037c4: SUB
000037c5: SWAP4
000037c6: SWAP1
000037c7: SWAP4
000037c8: MUL
000037c9: SWAP2
000037ca: SWAP1
000037cb: SWAP4
000037cc: SUB
000037cd: SWAP2
000037ce: SWAP1
000037cf: SWAP2
000037d0: DIV
000037d1: OR
000037d2: MUL
000037d3: SWAP1
000037d4: POP
000037d5: SWAP4
000037d6: SWAP3
000037d7: POP
000037d8: POP
000037d9: POP
000037da: JUMP
000037db: JUMPDEST
000037dc: PUSH2 0x37e3
000037df: PUSH2 0x3fb0
000037e2: JUMP
000037e3: JUMPDEST
000037e4: PUSH2 0x2bd9
000037e7: JUMPI
000037e8: PUSH1 0x02
000037ea: SLOAD
000037eb: PUSH1 0x01
000037ed: PUSH1 0xc8
000037ef: SHL
000037f0: SWAP1
000037f1: DIV
000037f2: PUSH1 0x08
000037f4: AND
000037f5: ISZERO
000037f6: PUSH2 0x2bd9
000037f9: JUMPI
000037fa: PUSH2 0x2bd9
000037fd: PUSH4 0xd6852010
00003802: PUSH1 0xe0
00003804: SHL
00003805: PUSH1 0x06
00003807: PUSH1 0x00
00003809: SWAP1
0000380a: SLOAD
0000380b: SWAP1
0000380c: PUSH2 0x0100
0000380f: EXP
00003810: SWAP1
00003811: DIV
00003812: PUSH1 0x01
00003814: PUSH1 0x01
00003816: PUSH1 0xa0
00003818: SHL
00003819: SUB
0000381a: AND
0000381b: PUSH1 0x01
0000381d: PUSH1 0x01
0000381f: PUSH1 0xa0
00003821: SHL
00003822: SUB
00003823: AND
00003824: PUSH4 0xd6852010
00003829: CALLER
0000382a: DUP13
0000382b: DUP13
0000382c: DUP13
0000382d: DUP13
0000382e: DUP13
0000382f: DUP13
00003830: DUP13
00003831: DUP13
00003832: PUSH1 0x40
00003834: MLOAD
00003835: DUP11
00003836: PUSH4 0xffffffff
0000383b: AND
0000383c: PUSH1 0xe0
0000383e: SHL
0000383f: DUP2
00003840: MSTORE
00003841: PUSH1 0x04
00003843: ADD
00003844: DUP1
00003845: DUP11
00003846: PUSH1 0x01
00003848: PUSH1 0x01
0000384a: PUSH1 0xa0
0000384c: SHL
0000384d: SUB
0000384e: AND
0000384f: DUP2
00003850: MSTORE
00003851: PUSH1 0x20
00003853: ADD
00003854: DUP10
00003855: PUSH1 0x01
00003857: PUSH1 0x01
00003859: PUSH1 0xa0
0000385b: SHL
0000385c: SUB
0000385d: AND
0000385e: DUP2
0000385f: MSTORE
00003860: PUSH1 0x20
00003862: ADD
00003863: DUP9
00003864: PUSH1 0x02
00003866: SIGNEXTEND
00003867: DUP2
00003868: MSTORE
00003869: PUSH1 0x20
0000386b: ADD
0000386c: DUP8
0000386d: PUSH1 0x02
0000386f: SIGNEXTEND
00003870: DUP2
00003871: MSTORE
00003872: PUSH1 0x20
00003874: ADD
00003875: DUP7
00003876: PUSH1 0x0f
00003878: SIGNEXTEND
00003879: DUP2
0000387a: MSTORE
0000387b: PUSH1 0x20
0000387d: ADD
0000387e: DUP6
0000387f: DUP2
00003880: MSTORE
00003881: PUSH1 0x20
00003883: ADD
00003884: DUP5
00003885: DUP2
00003886: MSTORE
00003887: PUSH1 0x20
00003889: ADD
0000388a: DUP1
0000388b: PUSH1 0x20
0000388d: ADD
0000388e: DUP3
0000388f: DUP2
00003890: SUB
00003891: DUP3
00003892: MSTORE
00003893: DUP5
00003894: DUP5
00003895: DUP3
00003896: DUP2
00003897: DUP2
00003898: MSTORE
00003899: PUSH1 0x20
0000389b: ADD
0000389c: SWAP3
0000389d: POP
0000389e: DUP1
0000389f: DUP3
000038a0: DUP5
000038a1: CALLDATACOPY
000038a2: PUSH1 0x00
000038a4: DUP2
000038a5: DUP5
000038a6: ADD
000038a7: MSTORE
000038a8: PUSH1 0x1f
000038aa: NOT
000038ab: PUSH1 0x1f
000038ad: DUP3
000038ae: ADD
000038af: AND
000038b0: SWAP1
000038b1: POP
000038b2: DUP1
000038b3: DUP4
000038b4: ADD
000038b5: SWAP3
000038b6: POP
000038b7: POP
000038b8: POP
000038b9: SWAP11
000038ba: POP
000038bb: POP
000038bc: POP
000038bd: POP
000038be: POP
000038bf: POP
000038c0: POP
000038c1: POP
000038c2: POP
000038c3: POP
000038c4: POP
000038c5: PUSH1 0x20
000038c7: PUSH1 0x40
000038c9: MLOAD
000038ca: DUP1
000038cb: DUP4
000038cc: SUB
000038cd: DUP2
000038ce: PUSH1 0x00
000038d0: DUP8
000038d1: GAS
000038d2: CALL
000038d3: ISZERO
000038d4: DUP1
000038d5: ISZERO
000038d6: PUSH2 0x10a1
000038d9: JUMPI
000038da: RETURNDATASIZE
000038db: PUSH1 0x00
000038dd: DUP1
000038de: RETURNDATACOPY
000038df: RETURNDATASIZE
000038e0: PUSH1 0x00
000038e2: REVERT
000038e3: JUMPDEST
000038e4: PUSH1 0x01
000038e6: PUSH1 0x01
000038e8: PUSH1 0xe0
000038ea: SHL
000038eb: SUB
000038ec: NOT
000038ed: DUP3
000038ee: DUP2
000038ef: AND
000038f0: SWAP1
000038f1: DUP3
000038f2: AND
000038f3: EQ
000038f4: PUSH2 0x15b8
000038f7: JUMPI
000038f8: PUSH1 0x40
000038fa: MLOAD
000038fb: PUSH4 0xd3f5153b
00003900: PUSH1 0xe0
00003902: SHL
00003903: DUP2
00003904: MSTORE
00003905: PUSH1 0x01
00003907: PUSH1 0x01
00003909: PUSH1 0xe0
0000390b: SHL
0000390c: SUB
0000390d: NOT
0000390e: DUP3
0000390f: AND
00003910: PUSH1 0x04
00003912: DUP3
00003913: ADD
00003914: MSTORE
00003915: PUSH1 0x24
00003917: ADD
00003918: PUSH1 0x40
0000391a: MLOAD
0000391b: DUP1
0000391c: SWAP2
0000391d: SUB
0000391e: SWAP1
0000391f: REVERT
00003920: JUMPDEST
00003921: PUSH1 0x00
00003923: DUP4
00003924: ISZERO
00003925: DUP1
00003926: PUSH2 0x3941
00003929: JUMPI
0000392a: POP
0000392b: POP
0000392c: DUP3
0000392d: DUP3
0000392e: MUL
0000392f: DUP3
00003930: DUP5
00003931: DUP3
00003932: DUP2
00003933: PUSH2 0x393e
00003936: JUMPI
00003937: PUSH2 0x393e
0000393a: PUSH2 0x55f9
0000393d: JUMP
0000393e: JUMPDEST
0000393f: DIV
00003940: EQ
00003941: JUMPDEST
00003942: ISZERO
00003943: PUSH2 0x3962
00003946: JUMPI
00003947: PUSH1 0x00
00003949: DUP3
0000394a: GT
0000394b: PUSH2 0x3953
0000394e: JUMPI
0000394f: PUSH1 0x00
00003951: DUP1
00003952: REVERT
00003953: JUMPDEST
00003954: DUP2
00003955: DUP2
00003956: DIV
00003957: SWAP1
00003958: DUP3
00003959: SWAP1
0000395a: MOD
0000395b: ISZERO
0000395c: ISZERO
0000395d: ADD
0000395e: PUSH2 0x3619
00003961: JUMP
00003962: JUMPDEST
00003963: PUSH2 0x396d
00003966: DUP5
00003967: DUP5
00003968: DUP5
00003969: PUSH2 0x3742
0000396c: JUMP
0000396d: JUMPDEST
0000396e: SWAP1
0000396f: POP
00003970: PUSH1 0x00
00003972: DUP3
00003973: DUP1
00003974: PUSH2 0x397f
00003977: JUMPI
00003978: PUSH2 0x397f
0000397b: PUSH2 0x55f9
0000397e: JUMP
0000397f: JUMPDEST
00003980: DUP5
00003981: DUP7
00003982: MULMOD
00003983: GT
00003984: ISZERO
00003985: PUSH2 0x3619
00003988: JUMPI
00003989: PUSH1 0x00
0000398b: NOT
0000398c: DUP2
0000398d: LT
0000398e: PUSH2 0x3996
00003991: JUMPI
00003992: PUSH1 0x00
00003994: DUP1
00003995: REVERT
00003996: JUMPDEST
00003997: PUSH1 0x01
00003999: ADD
0000399a: SWAP4
0000399b: SWAP3
0000399c: POP
0000399d: POP
0000399e: POP
0000399f: JUMP
000039a0: JUMPDEST
000039a1: PUSH1 0x40
000039a3: MLOAD
000039a4: PUSH4 0x2982c34f
000039a9: PUSH1 0xe2
000039ab: SHL
000039ac: DUP2
000039ad: MSTORE
000039ae: CALLER
000039af: SWAP1
000039b0: PUSH4 0xa60b0d3c
000039b5: SWAP1
000039b6: PUSH2 0x2bab
000039b9: SWAP1
000039ba: DUP8
000039bb: SWAP1
000039bc: DUP8
000039bd: SWAP1
000039be: DUP8
000039bf: SWAP1
000039c0: DUP8
000039c1: SWAP1
000039c2: PUSH1 0x04
000039c4: ADD
000039c5: PUSH2 0x5697
000039c8: JUMP
000039c9: JUMPDEST
000039ca: PUSH1 0x02
000039cc: DUP1
000039cd: SLOAD
000039ce: PUSH2 0xffff
000039d1: PUSH1 0xb8
000039d3: SHL
000039d4: NOT
000039d5: AND
000039d6: PUSH1 0x01
000039d8: PUSH1 0xb8
000039da: SHL
000039db: PUSH2 0xffff
000039de: DUP5
000039df: AND
000039e0: SWAP1
000039e1: DUP2
000039e2: MUL
000039e3: SWAP2
000039e4: SWAP1
000039e5: SWAP2
000039e6: OR
000039e7: SWAP1
000039e8: SWAP2
000039e9: SSTORE
000039ea: PUSH1 0x40
000039ec: MLOAD
000039ed: SWAP1
000039ee: DUP2
000039ef: MSTORE
000039f0: PUSH32 0x598b9f043c813aa6be3426ca60d1c65d17256312890be5118dab55b0775ebe2a
00003a11: SWAP1
00003a12: PUSH1 0x20
00003a14: ADD
00003a15: PUSH2 0x3412
00003a18: JUMP
00003a19: JUMPDEST
00003a1a: DUP1
00003a1b: PUSH1 0x00
00003a1d: DUP2
00003a1e: SLT
00003a1f: ISZERO
00003a20: PUSH2 0x3a28
00003a23: JUMPI
00003a24: PUSH1 0x00
00003a26: DUP1
00003a27: REVERT
00003a28: JUMPDEST
00003a29: SWAP2
00003a2a: SWAP1
00003a2b: POP
00003a2c: JUMP
00003a2d: JUMPDEST
00003a2e: DUP1
00003a2f: PUSH1 0x00
00003a31: PUSH1 0x0f
00003a33: DUP3
00003a34: SWAP1
00003a35: SIGNEXTEND
00003a36: SLT
00003a37: ISZERO
00003a38: PUSH2 0x3a28
00003a3b: JUMPI
00003a3c: PUSH1 0x00
00003a3e: DUP1
00003a3f: REVERT
00003a40: JUMPDEST
00003a41: PUSH1 0x00
00003a43: DUP1
00003a44: PUSH1 0x00
00003a46: DUP1
00003a47: PUSH2 0x3a4f
00003a4a: DUP10
00003a4b: PUSH2 0x3fc1
00003a4e: JUMP
00003a4f: JUMPDEST
00003a50: SWAP1
00003a51: POP
00003a52: PUSH1 0x00
00003a54: PUSH2 0x3a5c
00003a57: DUP10
00003a58: PUSH2 0x3fc1
00003a5b: JUMP
00003a5c: JUMPDEST
00003a5d: SWAP1
00003a5e: POP
00003a5f: PUSH1 0x00
00003a61: DUP1
00003a62: DUP12
00003a63: PUSH1 0x02
00003a65: SIGNEXTEND
00003a66: DUP10
00003a67: PUSH1 0x02
00003a69: SIGNEXTEND
00003a6a: SLT
00003a6b: ISZERO
00003a6c: PUSH2 0x3a81
00003a6f: JUMPI
00003a70: PUSH2 0x3a7a
00003a73: DUP5
00003a74: DUP5
00003a75: DUP13
00003a76: PUSH2 0x4a85
00003a79: JUMP
00003a7a: JUMPDEST
00003a7b: SWAP2
00003a7c: POP
00003a7d: PUSH2 0x3abf
00003a80: JUMP
00003a81: JUMPDEST
00003a82: DUP11
00003a83: PUSH1 0x02
00003a85: SIGNEXTEND
00003a86: DUP10
00003a87: PUSH1 0x02
00003a89: SIGNEXTEND
00003a8a: SLT
00003a8b: ISZERO
00003a8c: PUSH2 0x3ab1
00003a8f: JUMPI
00003a90: PUSH2 0x3a9a
00003a93: DUP9
00003a94: DUP5
00003a95: DUP13
00003a96: PUSH2 0x4a85
00003a99: JUMP
00003a9a: JUMPDEST
00003a9b: SWAP2
00003a9c: POP
00003a9d: PUSH2 0x3aa7
00003aa0: DUP5
00003aa1: DUP10
00003aa2: DUP13
00003aa3: PUSH2 0x4ac5
00003aa6: JUMP
00003aa7: JUMPDEST
00003aa8: SWAP1
00003aa9: POP
00003aaa: DUP10
00003aab: SWAP5
00003aac: POP
00003aad: PUSH2 0x3abf
00003ab0: JUMP
00003ab1: JUMPDEST
00003ab2: PUSH2 0x3abc
00003ab5: DUP5
00003ab6: DUP5
00003ab7: DUP13
00003ab8: PUSH2 0x4ac5
00003abb: JUMP
00003abc: JUMPDEST
00003abd: SWAP1
00003abe: POP
00003abf: JUMPDEST
00003ac0: PUSH1 0x00
00003ac2: DUP11
00003ac3: PUSH1 0x0f
00003ac5: SIGNEXTEND
00003ac6: SLT
00003ac7: PUSH2 0x3ad1
00003aca: JUMPI
00003acb: DUP2
00003acc: DUP2
00003acd: PUSH2 0x3ada
00003ad0: JUMP
00003ad1: JUMPDEST
00003ad2: DUP2
00003ad3: PUSH1 0x00
00003ad5: SUB
00003ad6: DUP2
00003ad7: PUSH1 0x00
00003ad9: SUB
00003ada: JUMPDEST
00003adb: SWAP1
00003adc: SWAP14
00003add: SWAP1
00003ade: SWAP13
00003adf: POP
00003ae0: SWAP5
00003ae1: SWAP11
00003ae2: POP
00003ae3: SWAP4
00003ae4: SWAP9
00003ae5: POP
00003ae6: POP
00003ae7: POP
00003ae8: POP
00003ae9: POP
00003aea: POP
00003aeb: POP
00003aec: POP
00003aed: POP
00003aee: JUMP
00003aef: JUMPDEST
00003af0: PUSH1 0x40
00003af2: MLOAD
00003af3: PUSH4 0x3dd657c5
00003af8: PUSH1 0xe0
00003afa: SHL
00003afb: DUP2
00003afc: MSTORE
00003afd: CALLER
00003afe: SWAP1
00003aff: PUSH4 0x3dd657c5
00003b04: SWAP1
00003b05: PUSH2 0x2bab
00003b08: SWAP1
00003b09: DUP8
00003b0a: SWAP1
00003b0b: DUP8
00003b0c: SWAP1
00003b0d: DUP8
00003b0e: SWAP1
00003b0f: DUP8
00003b10: SWAP1
00003b11: PUSH1 0x04
00003b13: ADD
00003b14: PUSH2 0x5697
00003b17: JUMP
00003b18: JUMPDEST
00003b19: PUSH1 0x02
00003b1b: DUP1
00003b1c: SLOAD
00003b1d: PUSH1 0xff
00003b1f: PUSH1 0xc8
00003b21: SHL
00003b22: NOT
00003b23: AND
00003b24: PUSH1 0x01
00003b26: PUSH1 0xc8
00003b28: SHL
00003b29: PUSH1 0xff
00003b2b: DUP5
00003b2c: AND
00003b2d: SWAP1
00003b2e: DUP2
00003b2f: MUL
00003b30: SWAP2
00003b31: SWAP1
00003b32: SWAP2
00003b33: OR
00003b34: SWAP1
00003b35: SWAP2
00003b36: SSTORE
00003b37: PUSH1 0x40
00003b39: MLOAD
00003b3a: SWAP1
00003b3b: DUP2
00003b3c: MSTORE
00003b3d: PUSH32 0x3a6271b36c1b44bd6a0a0d56230602dc6919b7c17af57254306fadf5fee69dc3
00003b5e: SWAP1
00003b5f: PUSH1 0x20
00003b61: ADD
00003b62: PUSH2 0x3412
00003b65: JUMP
00003b66: JUMPDEST
00003b67: PUSH1 0x06
00003b69: DUP1
00003b6a: SLOAD
00003b6b: PUSH1 0x01
00003b6d: PUSH1 0x01
00003b6f: PUSH1 0xa0
00003b71: SHL
00003b72: SUB
00003b73: NOT
00003b74: AND
00003b75: PUSH1 0x01
00003b77: PUSH1 0x01
00003b79: PUSH1 0xa0
00003b7b: SHL
00003b7c: SUB
00003b7d: DUP4
00003b7e: AND
00003b7f: OR
00003b80: SWAP1
00003b81: SSTORE
00003b82: PUSH1 0x40
00003b84: MLOAD
00003b85: PUSH32 0x27a3944eff2135a57675f17e72501038982b73620d01f794c72e93d61a3932a2
00003ba6: SWAP1
00003ba7: PUSH2 0x3412
00003baa: SWAP1
00003bab: DUP4
00003bac: SWAP1
00003bad: PUSH2 0x56b7
00003bb0: JUMP
00003bb1: JUMPDEST
00003bb2: PUSH1 0x07
00003bb4: DUP1
00003bb5: SLOAD
00003bb6: PUSH1 0x01
00003bb8: PUSH1 0x01
00003bba: PUSH1 0xa0
00003bbc: SHL
00003bbd: SUB
00003bbe: NOT
00003bbf: AND
00003bc0: PUSH1 0x01
00003bc2: PUSH1 0x01
00003bc4: PUSH1 0xa0
00003bc6: SHL
00003bc7: SUB
00003bc8: DUP4
00003bc9: AND
00003bca: OR
00003bcb: SWAP1
00003bcc: SSTORE
00003bcd: PUSH1 0x40
00003bcf: MLOAD
00003bd0: PUSH32 0xb0b573c1f636e1f8bd9b415ba6c04d6dd49100bc25493fc6305b65ec0e581df3
00003bf1: SWAP1
00003bf2: PUSH2 0x3412
00003bf5: SWAP1
00003bf6: DUP4
00003bf7: SWAP1
00003bf8: PUSH2 0x56b7
00003bfb: JUMP
00003bfc: JUMPDEST
00003bfd: PUSH1 0x09
00003bff: DUP1
00003c00: SLOAD
00003c01: PUSH3 0xffffff
00003c05: PUSH1 0xb0
00003c07: SHL
00003c08: NOT
00003c09: AND
00003c0a: PUSH1 0x01
00003c0c: PUSH1 0xb0
00003c0e: SHL
00003c0f: PUSH3 0xffffff
00003c13: DUP5
00003c14: AND
00003c15: MUL
00003c16: OR
00003c17: SWAP1
00003c18: SSTORE
00003c19: PUSH1 0x40
00003c1b: MLOAD
00003c1c: PUSH1 0x02
00003c1e: DUP3
00003c1f: SWAP1
00003c20: SIGNEXTEND
00003c21: DUP2
00003c22: MSTORE
00003c23: PUSH32 0x01413b1d5d4c359e9a0daa7909ecda165f6e8c51fe2ff529d74b22a5a7c02645
00003c44: SWAP1
00003c45: PUSH1 0x20
00003c47: ADD
00003c48: PUSH2 0x3412
00003c4b: JUMP
00003c4c: JUMPDEST
00003c4d: PUSH1 0x00
00003c4f: PUSH5 0x01000276a3
00003c55: PUSH1 0x01
00003c57: PUSH1 0x01
00003c59: PUSH1 0xa0
00003c5b: SHL
00003c5c: SUB
00003c5d: DUP4
00003c5e: AND
00003c5f: LT
00003c60: DUP1
00003c61: PUSH2 0x3c87
00003c64: JUMPI
00003c65: POP
00003c66: PUSH20 0xfffd8963efd1fc6a506488495d951d5263988d26
00003c7b: PUSH1 0x01
00003c7d: PUSH1 0x01
00003c7f: PUSH1 0xa0
00003c81: SHL
00003c82: SUB
00003c83: DUP4
00003c84: AND
00003c85: LT
00003c86: ISZERO
00003c87: JUMPDEST
00003c88: ISZERO
00003c89: PUSH2 0x3ca5
00003c8c: JUMPI
00003c8d: PUSH1 0x40
00003c8f: MLOAD
00003c90: PUSH4 0x55cf1e23
00003c95: PUSH1 0xe0
00003c97: SHL
00003c98: DUP2
00003c99: MSTORE
00003c9a: PUSH1 0x04
00003c9c: ADD
00003c9d: PUSH1 0x40
00003c9f: MLOAD
00003ca0: DUP1
00003ca1: SWAP2
00003ca2: SUB
00003ca3: SWAP1
00003ca4: REVERT
00003ca5: JUMPDEST
00003ca6: PUSH1 0x01
00003ca8: PUSH1 0x20
00003caa: SHL
00003cab: PUSH1 0x01
00003cad: PUSH1 0xc0
00003caf: SHL
00003cb0: SUB
00003cb1: PUSH1 0x20
00003cb3: DUP4
00003cb4: SWAP1
00003cb5: SHL
00003cb6: AND
00003cb7: PUSH1 0x01
00003cb9: PUSH1 0x01
00003cbb: PUSH1 0x80
00003cbd: SHL
00003cbe: SUB
00003cbf: DUP2
00003cc0: GT
00003cc1: PUSH1 0x07
00003cc3: SHL
00003cc4: DUP2
00003cc5: DUP2
00003cc6: SHR
00003cc7: PUSH1 0x01
00003cc9: PUSH1 0x01
00003ccb: PUSH1 0x40
00003ccd: SHL
00003cce: SUB
00003ccf: DUP2
00003cd0: GT
00003cd1: PUSH1 0x06
00003cd3: SHL
00003cd4: SWAP1
00003cd5: DUP2
00003cd6: SHR
00003cd7: PUSH4 0xffffffff
00003cdc: DUP2
00003cdd: GT
00003cde: PUSH1 0x05
00003ce0: SHL
00003ce1: SWAP1
00003ce2: DUP2
00003ce3: SHR
00003ce4: PUSH2 0xffff
00003ce7: DUP2
00003ce8: GT
00003ce9: PUSH1 0x04
00003ceb: SHL
00003cec: SWAP1
00003ced: DUP2
00003cee: SHR
00003cef: PUSH1 0xff
00003cf1: DUP2
00003cf2: GT
00003cf3: PUSH1 0x03
00003cf5: SWAP1
00003cf6: DUP2
00003cf7: SHL
00003cf8: SWAP2
00003cf9: DUP3
00003cfa: SHR
00003cfb: PUSH1 0x0f
00003cfd: DUP2
00003cfe: GT
00003cff: PUSH1 0x02
00003d01: SHL
00003d02: SWAP1
00003d03: DUP2
00003d04: SHR
00003d05: SWAP2
00003d06: DUP3
00003d07: GT
00003d08: PUSH1 0x01
00003d0a: SWAP1
00003d0b: DUP2
00003d0c: SHL
00003d0d: SWAP3
00003d0e: DUP4
00003d0f: SHR
00003d10: SWAP8
00003d11: SWAP1
00003d12: DUP9
00003d13: GT
00003d14: SWAP7
00003d15: OR
00003d16: SWAP1
00003d17: SWAP5
00003d18: OR
00003d19: SWAP1
00003d1a: SWAP3
00003d1b: OR
00003d1c: OR
00003d1d: SWAP1
00003d1e: SWAP2
00003d1f: OR
00003d20: OR
00003d21: OR
00003d22: PUSH1 0x80
00003d24: DUP2
00003d25: LT
00003d26: PUSH2 0x3d37
00003d29: JUMPI
00003d2a: PUSH1 0x7f
00003d2c: DUP2
00003d2d: SUB
00003d2e: DUP4
00003d2f: SWAP1
00003d30: SHR
00003d31: SWAP2
00003d32: POP
00003d33: PUSH2 0x3d41
00003d36: JUMP
00003d37: JUMPDEST
00003d38: DUP1
00003d39: PUSH1 0x7f
00003d3b: SUB
00003d3c: DUP4
00003d3d: SWAP1
00003d3e: SHL
00003d3f: SWAP2
00003d40: POP
00003d41: JUMPDEST
00003d42: SWAP1
00003d43: DUP1
00003d44: MUL
00003d45: PUSH1 0x7f
00003d47: DUP2
00003d48: DUP2
00003d49: SHR
00003d4a: PUSH1 0xff
00003d4c: DUP4
00003d4d: DUP2
00003d4e: SHR
00003d4f: SWAP2
00003d50: SWAP1
00003d51: SWAP2
00003d52: SHR
00003d53: DUP1
00003d54: MUL
00003d55: DUP1
00003d56: DUP4
00003d57: SHR
00003d58: DUP2
00003d59: DUP4
00003d5a: SHR
00003d5b: SHR
00003d5c: DUP1
00003d5d: MUL
00003d5e: DUP1
00003d5f: DUP5
00003d60: SHR
00003d61: DUP2
00003d62: DUP5
00003d63: SHR
00003d64: SHR
00003d65: DUP1
00003d66: MUL
00003d67: DUP1
00003d68: DUP6
00003d69: SHR
00003d6a: DUP2
00003d6b: DUP6
00003d6c: SHR
00003d6d: SHR
00003d6e: DUP1
00003d6f: MUL
00003d70: DUP1
00003d71: DUP7
00003d72: SHR
00003d73: DUP2
00003d74: DUP7
00003d75: SHR
00003d76: SHR
00003d77: DUP1
00003d78: MUL
00003d79: DUP1
00003d7a: DUP8
00003d7b: SHR
00003d7c: DUP2
00003d7d: DUP8
00003d7e: SHR
00003d7f: SHR
00003d80: DUP1
00003d81: MUL
00003d82: DUP1
00003d83: DUP9
00003d84: SHR
00003d85: DUP2
00003d86: DUP9
00003d87: SHR
00003d88: SHR
00003d89: DUP1
00003d8a: MUL
00003d8b: DUP1
00003d8c: DUP10
00003d8d: SHR
00003d8e: DUP2
00003d8f: DUP10
00003d90: SHR
00003d91: SHR
00003d92: DUP1
00003d93: MUL
00003d94: DUP1
00003d95: DUP11
00003d96: SHR
00003d97: DUP2
00003d98: DUP11
00003d99: SHR
00003d9a: SHR
00003d9b: DUP1
00003d9c: MUL
00003d9d: DUP1
00003d9e: DUP12
00003d9f: SHR
00003da0: DUP2
00003da1: DUP12
00003da2: SHR
00003da3: SHR
00003da4: DUP1
00003da5: MUL
00003da6: DUP1
00003da7: DUP13
00003da8: SHR
00003da9: DUP2
00003daa: DUP13
00003dab: SHR
00003dac: SHR
00003dad: DUP1
00003dae: MUL
00003daf: DUP1
00003db0: DUP14
00003db1: SHR
00003db2: DUP2
00003db3: DUP14
00003db4: SHR
00003db5: SHR
00003db6: DUP1
00003db7: MUL
00003db8: DUP1
00003db9: DUP15
00003dba: SHR
00003dbb: SWAP13
00003dbc: DUP2
00003dbd: SWAP1
00003dbe: SHR
00003dbf: SWAP13
00003dc0: SWAP1
00003dc1: SWAP13
00003dc2: SHR
00003dc3: DUP1
00003dc4: MUL
00003dc5: SWAP13
00003dc6: DUP14
00003dc7: SWAP1
00003dc8: SHR
00003dc9: SWAP15
00003dca: SWAP14
00003dcb: PUSH1 0x7f
00003dcd: NOT
00003dce: DUP16
00003dcf: ADD
00003dd0: PUSH1 0x40
00003dd2: SHL
00003dd3: PUSH1 0xc0
00003dd5: SWAP2
00003dd6: SWAP1
00003dd7: SWAP2
00003dd8: SHR
00003dd9: PUSH1 0x01
00003ddb: PUSH1 0x3f
00003ddd: SHL
00003dde: AND
00003ddf: OR
00003de0: PUSH1 0xc1
00003de2: SWAP12
00003de3: SWAP1
00003de4: SWAP12
00003de5: SHR
00003de6: PUSH1 0x01
00003de8: PUSH1 0x3e
00003dea: SHL
00003deb: AND
00003dec: SWAP11
00003ded: SWAP1
00003dee: SWAP11
00003def: OR
00003df0: PUSH1 0xc2
00003df2: SWAP10
00003df3: SWAP1
00003df4: SWAP10
00003df5: SHR
00003df6: PUSH1 0x01
00003df8: PUSH1 0x3d
00003dfa: SHL
00003dfb: AND
00003dfc: SWAP9
00003dfd: SWAP1
00003dfe: SWAP9
00003dff: OR
00003e00: PUSH1 0xc3
00003e02: SWAP8
00003e03: SWAP1
00003e04: SWAP8
00003e05: SHR
00003e06: PUSH1 0x01
00003e08: PUSH1 0x3c
00003e0a: SHL
00003e0b: AND
00003e0c: SWAP7
00003e0d: SWAP1
00003e0e: SWAP7
00003e0f: OR
00003e10: PUSH1 0xc4
00003e12: SWAP6
00003e13: SWAP1
00003e14: SWAP6
00003e15: SHR
00003e16: PUSH1 0x01
00003e18: PUSH1 0x3b
00003e1a: SHL
00003e1b: AND
00003e1c: SWAP5
00003e1d: SWAP1
00003e1e: SWAP5
00003e1f: OR
00003e20: PUSH1 0xc5
00003e22: SWAP4
00003e23: SWAP1
00003e24: SWAP4
00003e25: SHR
00003e26: PUSH1 0x01
00003e28: PUSH1 0x3a
00003e2a: SHL
00003e2b: AND
00003e2c: SWAP3
00003e2d: SWAP1
00003e2e: SWAP3
00003e2f: OR
00003e30: PUSH1 0xc6
00003e32: SWAP2
00003e33: SWAP1
00003e34: SWAP2
00003e35: SHR
00003e36: PUSH1 0x01
00003e38: PUSH1 0x39
00003e3a: SHL
00003e3b: AND
00003e3c: OR
00003e3d: PUSH1 0xc7
00003e3f: SWAP2
00003e40: SWAP1
00003e41: SWAP2
00003e42: SHR
00003e43: PUSH1 0x01
00003e45: PUSH1 0x38
00003e47: SHL
00003e48: AND
00003e49: OR
00003e4a: PUSH1 0xc8
00003e4c: SWAP2
00003e4d: SWAP1
00003e4e: SWAP2
00003e4f: SHR
00003e50: PUSH1 0x01
00003e52: PUSH1 0x37
00003e54: SHL
00003e55: AND
00003e56: OR
00003e57: PUSH1 0xc9
00003e59: SWAP2
00003e5a: SWAP1
00003e5b: SWAP2
00003e5c: SHR
00003e5d: PUSH1 0x01
00003e5f: PUSH1 0x36
00003e61: SHL
00003e62: AND
00003e63: OR
00003e64: PUSH1 0xca
00003e66: SWAP2
00003e67: SWAP1
00003e68: SWAP2
00003e69: SHR
00003e6a: PUSH1 0x01
00003e6c: PUSH1 0x35
00003e6e: SHL
00003e6f: AND
00003e70: OR
00003e71: PUSH1 0xcb
00003e73: SWAP2
00003e74: SWAP1
00003e75: SWAP2
00003e76: SHR
00003e77: PUSH1 0x01
00003e79: PUSH1 0x34
00003e7b: SHL
00003e7c: AND
00003e7d: OR
00003e7e: PUSH1 0xcc
00003e80: SWAP2
00003e81: SWAP1
00003e82: SWAP2
00003e83: SHR
00003e84: PUSH1 0x01
00003e86: PUSH1 0x33
00003e88: SHL
00003e89: AND
00003e8a: OR
00003e8b: PUSH1 0xcd
00003e8d: SWAP2
00003e8e: SWAP1
00003e8f: SWAP2
00003e90: SHR
00003e91: PUSH1 0x01
00003e93: PUSH1 0x32
00003e95: SHL
00003e96: AND
00003e97: OR
00003e98: PUSH10 0x3627a301d71055774c85
00003ea3: DUP2
00003ea4: MUL
00003ea5: PUSH16 0x028f6481ab7f045a5af012a19d003aa9
00003eb6: NOT
00003eb7: DUP2
00003eb8: ADD
00003eb9: PUSH1 0x80
00003ebb: SWAP1
00003ebc: DUP2
00003ebd: SAR
00003ebe: SWAP1
00003ebf: PUSH16 0xdb2df09e81959a81455e260799a0632f
00003ed0: DUP4
00003ed1: ADD
00003ed2: SWAP1
00003ed3: SAR
00003ed4: PUSH1 0x02
00003ed6: DUP2
00003ed7: DUP2
00003ed8: SIGNEXTEND
00003ed9: SWAP1
00003eda: DUP4
00003edb: SWAP1
00003edc: SIGNEXTEND
00003edd: EQ
00003ede: PUSH2 0x3f0f
00003ee1: JUMPI
00003ee2: DUP9
00003ee3: PUSH1 0x01
00003ee5: PUSH1 0x01
00003ee7: PUSH1 0xa0
00003ee9: SHL
00003eea: SUB
00003eeb: AND
00003eec: PUSH2 0x3ef4
00003eef: DUP3
00003ef0: PUSH2 0x3fc1
00003ef3: JUMP
00003ef4: JUMPDEST
00003ef5: PUSH1 0x01
00003ef7: PUSH1 0x01
00003ef9: PUSH1 0xa0
00003efb: SHL
00003efc: SUB
00003efd: AND
00003efe: GT
00003eff: ISZERO
00003f00: PUSH2 0x3f09
00003f03: JUMPI
00003f04: DUP2
00003f05: PUSH2 0x3f11
00003f08: JUMP
00003f09: JUMPDEST
00003f0a: DUP1
00003f0b: PUSH2 0x3f11
00003f0e: JUMP
00003f0f: JUMPDEST
00003f10: DUP2
00003f11: JUMPDEST
00003f12: SWAP10
00003f13: SWAP9
00003f14: POP
00003f15: POP
00003f16: POP
00003f17: POP
00003f18: POP
00003f19: POP
00003f1a: POP
00003f1b: POP
00003f1c: POP
00003f1d: JUMP
00003f1e: JUMPDEST
00003f1f: PUSH1 0x00
00003f21: DUP1
00003f22: PUSH1 0x00
00003f24: PUSH32 0x000000000000000000000000fb8ed3485efa29a0e4bed93351dd51b59fc4b0f0
00003f45: PUSH1 0x01
00003f47: PUSH1 0x01
00003f49: PUSH1 0xa0
00003f4b: SHL
00003f4c: SUB
00003f4d: AND
00003f4e: PUSH4 0x25b355d6
00003f53: PUSH1 0x40
00003f55: MLOAD
00003f56: DUP2
00003f57: PUSH4 0xffffffff
00003f5c: AND
00003f5d: PUSH1 0xe0
00003f5f: SHL
00003f60: DUP2
00003f61: MSTORE
00003f62: PUSH1 0x04
00003f64: ADD
00003f65: PUSH1 0x60
00003f67: PUSH1 0x40
00003f69: MLOAD
00003f6a: DUP1
00003f6b: DUP4
00003f6c: SUB
00003f6d: DUP2
00003f6e: DUP7
00003f6f: GAS
00003f70: STATICCALL
00003f71: ISZERO
00003f72: DUP1
00003f73: ISZERO
00003f74: PUSH2 0x3f81
00003f77: JUMPI
00003f78: RETURNDATASIZE
00003f79: PUSH1 0x00
00003f7b: DUP1
00003f7c: RETURNDATACOPY
00003f7d: RETURNDATASIZE
00003f7e: PUSH1 0x00
00003f80: REVERT
00003f81: JUMPDEST
00003f82: POP
00003f83: POP
00003f84: POP
00003f85: POP
00003f86: PUSH1 0x40
00003f88: MLOAD
00003f89: RETURNDATASIZE
00003f8a: PUSH1 0x1f
00003f8c: NOT
00003f8d: PUSH1 0x1f
00003f8f: DUP3
00003f90: ADD
00003f91: AND
00003f92: DUP3
00003f93: ADD
00003f94: DUP1
00003f95: PUSH1 0x40
00003f97: MSTORE
00003f98: POP
00003f99: DUP2
00003f9a: ADD
00003f9b: SWAP1
00003f9c: PUSH2 0x3fa5
00003f9f: SWAP2
00003fa0: SWAP1
00003fa1: PUSH2 0x576f
00003fa4: JUMP
00003fa5: JUMPDEST
00003fa6: SWAP3
00003fa7: POP
00003fa8: SWAP3
00003fa9: POP
00003faa: SWAP3
00003fab: POP
00003fac: SWAP1
00003fad: SWAP2
00003fae: SWAP3
00003faf: JUMP
00003fb0: JUMPDEST
00003fb1: PUSH1 0x06
00003fb3: SLOAD
00003fb4: PUSH1 0x01
00003fb6: PUSH1 0x01
00003fb8: PUSH1 0xa0
00003fba: SHL
00003fbb: SUB
00003fbc: AND
00003fbd: CALLER
00003fbe: EQ
00003fbf: SWAP1
00003fc0: JUMP
00003fc1: JUMPDEST
00003fc2: PUSH1 0x00
00003fc4: PUSH1 0x02
00003fc6: DUP3
00003fc7: SWAP1
00003fc8: SIGNEXTEND
00003fc9: PUSH1 0x17
00003fcb: SAR
00003fcc: PUSH3 0xffffff
00003fd0: DUP2
00003fd1: DUP5
00003fd2: ADD
00003fd3: DUP3
00003fd4: XOR
00003fd5: AND
00003fd6: PUSH3 0x0d89e8
00003fda: DUP2
00003fdb: GT
00003fdc: ISZERO
00003fdd: PUSH2 0x3ff9
00003fe0: JUMPI
00003fe1: PUSH1 0x40
00003fe3: MLOAD
00003fe4: PUSH4 0x3c10250f
00003fe9: PUSH1 0xe0
00003feb: SHL
00003fec: DUP2
00003fed: MSTORE
00003fee: PUSH1 0x04
00003ff0: ADD
00003ff1: PUSH1 0x40
00003ff3: MLOAD
00003ff4: DUP1
00003ff5: SWAP2
00003ff6: SUB
00003ff7: SWAP1
00003ff8: REVERT
00003ff9: JUMPDEST
00003ffa: PUSH1 0x01
00003ffc: PUSH1 0x80
00003ffe: SHL
00003fff: PUSH1 0x01
00004001: DUP3
00004002: AND
00004003: ISZERO
00004004: PUSH2 0x401a
00004007: JUMPI
00004008: POP
00004009: PUSH16 0xfffcb933bd6fad37aa2d162d1a594001
0000401a: JUMPDEST
0000401b: PUSH1 0x02
0000401d: DUP3
0000401e: AND
0000401f: ISZERO
00004020: PUSH2 0x4039
00004023: JUMPI
00004024: PUSH16 0xfff97272373d413259a46990580e213a
00004035: MUL
00004036: PUSH1 0x80
00004038: SHR
00004039: JUMPDEST
0000403a: PUSH1 0x04
0000403c: DUP3
0000403d: AND
0000403e: ISZERO
0000403f: PUSH2 0x4058
00004042: JUMPI
00004043: PUSH16 0xfff2e50f5f656932ef12357cf3c7fdcc
00004054: MUL
00004055: PUSH1 0x80
00004057: SHR
00004058: JUMPDEST
00004059: PUSH1 0x08
0000405b: DUP3
0000405c: AND
0000405d: ISZERO
0000405e: PUSH2 0x4077
00004061: JUMPI
00004062: PUSH16 0xffe5caca7e10e4e61c3624eaa0941cd0
00004073: MUL
00004074: PUSH1 0x80
00004076: SHR
00004077: JUMPDEST
00004078: PUSH1 0x10
0000407a: DUP3
0000407b: AND
0000407c: ISZERO
0000407d: PUSH2 0x4096
00004080: JUMPI
00004081: PUSH16 0xffcb9843d60f6159c9db58835c926644
00004092: MUL
00004093: PUSH1 0x80
00004095: SHR
00004096: JUMPDEST
00004097: PUSH1 0x20
00004099: DUP3
0000409a: AND
0000409b: ISZERO
0000409c: PUSH2 0x40b5
0000409f: JUMPI
000040a0: PUSH16 0xff973b41fa98c081472e6896dfb254c0
000040b1: MUL
000040b2: PUSH1 0x80
000040b4: SHR
000040b5: JUMPDEST
000040b6: PUSH1 0x40
000040b8: DUP3
000040b9: AND
000040ba: ISZERO
000040bb: PUSH2 0x40d4
000040be: JUMPI
000040bf: PUSH16 0xff2ea16466c96a3843ec78b326b52861
000040d0: MUL
000040d1: PUSH1 0x80
000040d3: SHR
000040d4: JUMPDEST
000040d5: PUSH1 0x80
000040d7: DUP3
000040d8: AND
000040d9: ISZERO
000040da: PUSH2 0x40f3
000040dd: JUMPI
000040de: PUSH16 0xfe5dee046a99a2a811c461f1969c3053
000040ef: MUL
000040f0: PUSH1 0x80
000040f2: SHR
000040f3: JUMPDEST
000040f4: PUSH2 0x0100
000040f7: DUP3
000040f8: AND
000040f9: ISZERO
000040fa: PUSH2 0x4113
000040fd: JUMPI
000040fe: PUSH16 0xfcbe86c7900a88aedcffc83b479aa3a4
0000410f: MUL
00004110: PUSH1 0x80
00004112: SHR
00004113: JUMPDEST
00004114: PUSH2 0x0200
00004117: DUP3
00004118: AND
00004119: ISZERO
0000411a: PUSH2 0x4133
0000411d: JUMPI
0000411e: PUSH16 0xf987a7253ac413176f2b074cf7815e54
0000412f: MUL
00004130: PUSH1 0x80
00004132: SHR
00004133: JUMPDEST
00004134: PUSH2 0x0400
00004137: DUP3
00004138: AND
00004139: ISZERO
0000413a: PUSH2 0x4153
0000413d: JUMPI
0000413e: PUSH16 0xf3392b0822b70005940c7a398e4b70f3
0000414f: MUL
00004150: PUSH1 0x80
00004152: SHR
00004153: JUMPDEST
00004154: PUSH2 0x0800
00004157: DUP3
00004158: AND
00004159: ISZERO
0000415a: PUSH2 0x4173
0000415d: JUMPI
0000415e: PUSH16 0xe7159475a2c29b7443b29c7fa6e889d9
0000416f: MUL
00004170: PUSH1 0x80
00004172: SHR
00004173: JUMPDEST
00004174: PUSH2 0x1000
00004177: DUP3
00004178: AND
00004179: ISZERO
0000417a: PUSH2 0x4193
0000417d: JUMPI
0000417e: PUSH16 0xd097f3bdfd2022b8845ad8f792aa5825
0000418f: MUL
00004190: PUSH1 0x80
00004192: SHR
00004193: JUMPDEST
00004194: PUSH2 0x2000
00004197: DUP3
00004198: AND
00004199: ISZERO
0000419a: PUSH2 0x41b3
0000419d: JUMPI
0000419e: PUSH16 0xa9f746462d870fdf8a65dc1f90e061e5
000041af: MUL
000041b0: PUSH1 0x80
000041b2: SHR
000041b3: JUMPDEST
000041b4: PUSH2 0x4000
000041b7: DUP3
000041b8: AND
000041b9: ISZERO
000041ba: PUSH2 0x41d3
000041bd: JUMPI
000041be: PUSH16 0x70d869a156d2a1b890bb3df62baf32f7
000041cf: MUL
000041d0: PUSH1 0x80
000041d2: SHR
000041d3: JUMPDEST
000041d4: PUSH2 0x8000
000041d7: DUP3
000041d8: AND
000041d9: ISZERO
000041da: PUSH2 0x41f3
000041dd: JUMPI
000041de: PUSH16 0x31be135f97d08fd981231505542fcfa6
000041ef: MUL
000041f0: PUSH1 0x80
000041f2: SHR
000041f3: JUMPDEST
000041f4: PUSH3 0x010000
000041f8: DUP3
000041f9: AND
000041fa: ISZERO
000041fb: PUSH2 0x4214
000041fe: JUMPI
000041ff: PUSH16 0x09aa508b5b7a84e1c677de54f3e99bc9
00004210: MUL
00004211: PUSH1 0x80
00004213: SHR
00004214: JUMPDEST
00004215: PUSH3 0x020000
00004219: DUP3
0000421a: AND
0000421b: ISZERO
0000421c: PUSH2 0x4234
0000421f: JUMPI
00004220: PUSH15 0x5d6af8dedb81196699c329225ee604
00004230: MUL
00004231: PUSH1 0x80
00004233: SHR
00004234: JUMPDEST
00004235: PUSH3 0x040000
00004239: DUP3
0000423a: LT
0000423b: PUSH2 0x427a
0000423e: JUMPI
0000423f: PUSH3 0x040000
00004243: DUP3
00004244: AND
00004245: ISZERO
00004246: PUSH2 0x425d
00004249: JUMPI
0000424a: PUSH14 0x2216e584f5fa1ea926041bedfe98
00004259: MUL
0000425a: PUSH1 0x80
0000425c: SHR
0000425d: JUMPDEST
0000425e: PUSH3 0x080000
00004262: DUP3
00004263: AND
00004264: ISZERO
00004265: PUSH2 0x427a
00004268: JUMPI
00004269: PUSH12 0x048a170391f7dc42444e8fa2
00004276: MUL
00004277: PUSH1 0x80
00004279: SHR
0000427a: JUMPDEST
0000427b: PUSH1 0x00
0000427d: DUP6
0000427e: PUSH1 0x02
00004280: SIGNEXTEND
00004281: SGT
00004282: ISZERO
00004283: PUSH2 0x428b
00004286: JUMPI
00004287: PUSH1 0x00
00004289: NOT
0000428a: DIV
0000428b: JUMPDEST
0000428c: PUSH4 0xffffffff
00004291: ADD
00004292: PUSH1 0x20
00004294: SHR
00004295: SWAP5
00004296: SWAP4
00004297: POP
00004298: POP
00004299: POP
0000429a: POP
0000429b: JUMP
0000429c: JUMPDEST
0000429d: PUSH1 0x00
0000429f: DUP1
000042a0: PUSH1 0x00
000042a2: DUP1
000042a3: PUSH2 0x556b
000042a6: DUP11
000042a7: PUSH2 0x42b2
000042aa: JUMPI
000042ab: PUSH2 0x4af5
000042ae: PUSH2 0x42b6
000042b1: JUMP
000042b2: JUMPDEST
000042b3: PUSH2 0x4b04
000042b6: JUMPDEST
000042b7: SWAP1
000042b8: POP
000042b9: PUSH1 0x00
000042bb: DUP8
000042bc: SLT
000042bd: PUSH2 0x438a
000042c0: JUMPI
000042c1: PUSH1 0x00
000042c3: PUSH2 0x42df
000042c6: DUP9
000042c7: DUP9
000042c8: PUSH3 0x0f4240
000042cc: SUB
000042cd: PUSH3 0xffffff
000042d1: AND
000042d2: PUSH3 0x0f4240
000042d6: PUSH3 0xffffff
000042da: AND
000042db: PUSH2 0x3742
000042de: JUMP
000042df: JUMPDEST
000042e0: SWAP1
000042e1: POP
000042e2: PUSH2 0x42f0
000042e5: DUP11
000042e6: DUP13
000042e7: DUP12
000042e8: DUP6
000042e9: PUSH4 0xffffffff
000042ee: AND
000042ef: JUMP
000042f0: JUMPDEST
000042f1: SWAP5
000042f2: POP
000042f3: DUP5
000042f4: DUP2
000042f5: LT
000042f6: PUSH2 0x431d
000042f9: JUMPI
000042fa: DUP10
000042fb: SWAP6
000042fc: POP
000042fd: PUSH2 0x4316
00004300: DUP6
00004301: DUP9
00004302: PUSH3 0xffffff
00004306: AND
00004307: DUP10
00004308: PUSH3 0x0f4240
0000430c: SUB
0000430d: PUSH3 0xffffff
00004311: AND
00004312: PUSH2 0x3920
00004315: JUMP
00004316: JUMPDEST
00004317: SWAP3
00004318: POP
00004319: PUSH2 0x4363
0000431c: JUMP
0000431d: JUMPDEST
0000431e: PUSH2 0x4329
00004321: DUP12
00004322: DUP11
00004323: DUP4
00004324: DUP16
00004325: PUSH2 0x4b13
00004328: JUMP
00004329: JUMPDEST
0000432a: SWAP6
0000432b: POP
0000432c: DUP6
0000432d: PUSH1 0x01
0000432f: PUSH1 0x01
00004331: PUSH1 0xa0
00004333: SHL
00004334: SUB
00004335: AND
00004336: DUP11
00004337: PUSH1 0x01
00004339: PUSH1 0x01
0000433b: PUSH1 0xa0
0000433d: SHL
0000433e: SUB
0000433f: AND
00004340: SUB
00004341: PUSH2 0x434c
00004344: JUMPI
00004345: PUSH2 0x434c
00004348: PUSH2 0x560f
0000434b: JUMP
0000434c: JUMPDEST
0000434d: PUSH2 0x435b
00004350: DUP7
00004351: DUP13
00004352: DUP12
00004353: DUP6
00004354: PUSH4 0xffffffff
00004359: AND
0000435a: JUMP
0000435b: JUMPDEST
0000435c: SWAP5
0000435d: POP
0000435e: DUP5
0000435f: DUP9
00004360: SUB
00004361: SWAP3
00004362: POP
00004363: JUMPDEST
00004364: PUSH2 0x4382
00004367: DUP7
00004368: DUP13
00004369: DUP12
0000436a: DUP16
0000436b: PUSH2 0x4376
0000436e: JUMPI
0000436f: PUSH2 0x4b2c
00004372: PUSH2 0x437a
00004375: JUMP
00004376: JUMPDEST
00004377: PUSH2 0x4b3b
0000437a: JUMPDEST
0000437b: PUSH4 0xffffffff
00004380: AND
00004381: JUMP
00004382: JUMPDEST
00004383: SWAP4
00004384: POP
00004385: POP
00004386: PUSH2 0x445c
00004389: JUMP
0000438a: JUMPDEST
0000438b: PUSH2 0x556b
0000438e: DUP12
0000438f: PUSH2 0x439a
00004392: JUMPI
00004393: PUSH2 0x4b2c
00004396: PUSH2 0x439e
00004399: JUMP
0000439a: JUMPDEST
0000439b: PUSH2 0x4b3b
0000439e: JUMPDEST
0000439f: SWAP1
000043a0: POP
000043a1: PUSH2 0x43af
000043a4: DUP11
000043a5: DUP13
000043a6: DUP12
000043a7: DUP5
000043a8: PUSH4 0xffffffff
000043ad: AND
000043ae: JUMP
000043af: JUMPDEST
000043b0: SWAP4
000043b1: POP
000043b2: DUP8
000043b3: PUSH1 0x00
000043b5: SUB
000043b6: SWAP8
000043b7: POP
000043b8: PUSH1 0x00
000043ba: DUP9
000043bb: SLT
000043bc: ISZERO
000043bd: PUSH2 0x43d9
000043c0: JUMPI
000043c1: PUSH1 0x40
000043c3: MLOAD
000043c4: PUSH4 0x34cb3a01
000043c9: PUSH1 0xe1
000043cb: SHL
000043cc: DUP2
000043cd: MSTORE
000043ce: PUSH1 0x04
000043d0: ADD
000043d1: PUSH1 0x40
000043d3: MLOAD
000043d4: DUP1
000043d5: SWAP2
000043d6: SUB
000043d7: SWAP1
000043d8: REVERT
000043d9: JUMPDEST
000043da: DUP4
000043db: DUP9
000043dc: LT
000043dd: PUSH2 0x43e8
000043e0: JUMPI
000043e1: DUP10
000043e2: SWAP6
000043e3: POP
000043e4: PUSH2 0x442d
000043e7: JUMP
000043e8: JUMPDEST
000043e9: PUSH2 0x43f4
000043ec: DUP12
000043ed: DUP11
000043ee: DUP11
000043ef: DUP16
000043f0: PUSH2 0x4b4a
000043f3: JUMP
000043f4: JUMPDEST
000043f5: SWAP6
000043f6: POP
000043f7: DUP6
000043f8: PUSH1 0x01
000043fa: PUSH1 0x01
000043fc: PUSH1 0xa0
000043fe: SHL
000043ff: SUB
00004400: AND
00004401: DUP11
00004402: PUSH1 0x01
00004404: PUSH1 0x01
00004406: PUSH1 0xa0
00004408: SHL
00004409: SUB
0000440a: AND
0000440b: EQ
0000440c: PUSH2 0x4421
0000440f: JUMPI
00004410: PUSH2 0x441e
00004413: DUP7
00004414: DUP13
00004415: DUP12
00004416: DUP5
00004417: PUSH4 0xffffffff
0000441c: AND
0000441d: JUMP
0000441e: JUMPDEST
0000441f: SWAP4
00004420: POP
00004421: JUMPDEST
00004422: DUP8
00004423: DUP5
00004424: GT
00004425: ISZERO
00004426: PUSH2 0x442d
00004429: JUMPI
0000442a: DUP8
0000442b: SWAP4
0000442c: POP
0000442d: JUMPDEST
0000442e: PUSH2 0x443c
00004431: DUP7
00004432: DUP13
00004433: DUP12
00004434: DUP6
00004435: PUSH4 0xffffffff
0000443a: AND
0000443b: JUMP
0000443c: JUMPDEST
0000443d: SWAP5
0000443e: POP
0000443f: PUSH2 0x4458
00004442: DUP6
00004443: DUP9
00004444: PUSH3 0xffffff
00004448: AND
00004449: DUP10
0000444a: PUSH3 0x0f4240
0000444e: SUB
0000444f: PUSH3 0xffffff
00004453: AND
00004454: PUSH2 0x3920
00004457: JUMP
00004458: JUMPDEST
00004459: SWAP3
0000445a: POP
0000445b: POP
0000445c: JUMPDEST
0000445d: POP
0000445e: SWAP7
0000445f: POP
00004460: SWAP7
00004461: POP
00004462: SWAP7
00004463: POP
00004464: SWAP7
00004465: SWAP3
00004466: POP
00004467: POP
00004468: POP
00004469: JUMP
0000446a: JUMPDEST
0000446b: DUP1
0000446c: DUP3
0000446d: SUB
0000446e: DUP3
0000446f: DUP2
00004470: SGT
00004471: ISZERO
00004472: PUSH1 0x00
00004474: DUP4
00004475: SLT
00004476: ISZERO
00004477: EQ
00004478: PUSH2 0x4480
0000447b: JUMPI
0000447c: PUSH1 0x00
0000447e: DUP1
0000447f: REVERT
00004480: JUMPDEST
00004481: SWAP3
00004482: SWAP2
00004483: POP
00004484: POP
00004485: JUMP
00004486: JUMPDEST
00004487: DUP2
00004488: DUP2
00004489: ADD
0000448a: DUP3
0000448b: DUP2
0000448c: SLT
0000448d: ISZERO
0000448e: PUSH1 0x00
00004490: DUP4
00004491: SLT
00004492: ISZERO
00004493: EQ
00004494: PUSH2 0x4480
00004497: JUMPI
00004498: PUSH1 0x00
0000449a: DUP1
0000449b: REVERT
0000449c: JUMPDEST
0000449d: PUSH1 0x00
0000449f: DUP3
000044a0: ISZERO
000044a1: DUP1
000044a2: PUSH2 0x44bd
000044a5: JUMPI
000044a6: POP
000044a7: POP
000044a8: DUP2
000044a9: DUP2
000044aa: MUL
000044ab: DUP2
000044ac: DUP4
000044ad: DUP3
000044ae: DUP2
000044af: PUSH2 0x44ba
000044b2: JUMPI
000044b3: PUSH2 0x44ba
000044b6: PUSH2 0x55f9
000044b9: JUMP
000044ba: JUMPDEST
000044bb: DIV
000044bc: EQ
000044bd: JUMPDEST
000044be: PUSH2 0x4480
000044c1: JUMPI
000044c2: PUSH1 0x00
000044c4: DUP1
000044c5: REVERT
000044c6: JUMPDEST
000044c7: PUSH1 0x02
000044c9: DUP4
000044ca: DUP2
000044cb: SIGNEXTEND
000044cc: PUSH1 0x00
000044ce: SWAP1
000044cf: DUP2
000044d0: MSTORE
000044d1: PUSH1 0x20
000044d3: DUP7
000044d4: SWAP1
000044d5: MSTORE
000044d6: PUSH1 0x40
000044d8: SWAP1
000044d9: KECCAK256
000044da: PUSH1 0x03
000044dc: DUP2
000044dd: ADD
000044de: DUP1
000044df: SLOAD
000044e0: DUP3
000044e1: DUP5
000044e2: ADD
000044e3: DUP1
000044e4: SLOAD
000044e5: DUP8
000044e6: SUB
000044e7: SWAP1
000044e8: SSTORE
000044e9: DUP5
000044ea: SUB
000044eb: SWAP1
000044ec: SSTORE
000044ed: PUSH1 0x01
000044ef: ADD
000044f0: SLOAD
000044f1: PUSH1 0x0f
000044f3: DUP2
000044f4: SWAP1
000044f5: SIGNEXTEND
000044f6: SWAP2
000044f7: PUSH1 0x01
000044f9: PUSH1 0x80
000044fb: SHL
000044fc: DUP3
000044fd: DIV
000044fe: DUP2
000044ff: SIGNEXTEND
00004500: SWAP2
00004501: PUSH1 0x01
00004503: PUSH1 0x98
00004505: SHL
00004506: SWAP1
00004507: DIV
00004508: SWAP1
00004509: SIGNEXTEND
0000450a: SWAP5
0000450b: POP
0000450c: SWAP5
0000450d: POP
0000450e: SWAP5
0000450f: SWAP2
00004510: POP
00004511: POP
00004512: JUMP
00004513: JUMPDEST
00004514: PUSH1 0x00
00004516: DUP1
00004517: DUP3
00004518: PUSH1 0x0f
0000451a: SIGNEXTEND
0000451b: SLT
0000451c: ISZERO
0000451d: PUSH2 0x4555
00004520: JUMPI
00004521: POP
00004522: DUP1
00004523: DUP3
00004524: ADD
00004525: PUSH1 0x01
00004527: PUSH1 0x01
00004529: PUSH1 0x80
0000452b: SHL
0000452c: SUB
0000452d: DUP1
0000452e: DUP5
0000452f: AND
00004530: SWAP1
00004531: DUP3
00004532: AND
00004533: LT
00004534: PUSH2 0x4550
00004537: JUMPI
00004538: PUSH1 0x40
0000453a: MLOAD
0000453b: PUSH4 0x02603ee9
00004540: PUSH1 0xe3
00004542: SHL
00004543: DUP2
00004544: MSTORE
00004545: PUSH1 0x04
00004547: ADD
00004548: PUSH1 0x40
0000454a: MLOAD
0000454b: DUP1
0000454c: SWAP2
0000454d: SUB
0000454e: SWAP1
0000454f: REVERT
00004550: JUMPDEST
00004551: PUSH2 0x4480
00004554: JUMP
00004555: JUMPDEST
00004556: DUP3
00004557: PUSH1 0x01
00004559: PUSH1 0x01
0000455b: PUSH1 0x80
0000455d: SHL
0000455e: SUB
0000455f: AND
00004560: DUP3
00004561: DUP5
00004562: ADD
00004563: SWAP2
00004564: POP
00004565: DUP2
00004566: PUSH1 0x01
00004568: PUSH1 0x01
0000456a: PUSH1 0x80
0000456c: SHL
0000456d: SUB
0000456e: AND
0000456f: LT
00004570: ISZERO
00004571: PUSH2 0x4480
00004574: JUMPI
00004575: PUSH1 0x40
00004577: MLOAD
00004578: PUSH4 0x4cba0179
0000457d: PUSH1 0xe1
0000457f: SHL
00004580: DUP2
00004581: MSTORE
00004582: PUSH1 0x04
00004584: ADD
00004585: PUSH1 0x40
00004587: MLOAD
00004588: DUP1
00004589: SWAP2
0000458a: SUB
0000458b: SWAP1
0000458c: REVERT
0000458d: JUMPDEST
0000458e: PUSH1 0x00
00004590: PUSH1 0x40
00004592: MLOAD
00004593: PUSH4 0xa9059cbb
00004598: PUSH1 0xe0
0000459a: SHL
0000459b: PUSH1 0x00
0000459d: MSTORE
0000459e: PUSH1 0x01
000045a0: PUSH1 0x01
000045a2: PUSH1 0xa0
000045a4: SHL
000045a5: SUB
000045a6: DUP5
000045a7: AND
000045a8: PUSH1 0x04
000045aa: MSTORE
000045ab: DUP3
000045ac: PUSH1 0x24
000045ae: MSTORE
000045af: PUSH1 0x20
000045b1: PUSH1 0x00
000045b3: PUSH1 0x44
000045b5: PUSH1 0x00
000045b7: DUP1
000045b8: DUP10
000045b9: GAS
000045ba: CALL
000045bb: SWAP2
000045bc: POP
000045bd: DUP2
000045be: RETURNDATASIZE
000045bf: ISZERO
000045c0: PUSH1 0x20
000045c2: RETURNDATASIZE
000045c3: EQ
000045c4: PUSH1 0x01
000045c6: PUSH1 0x00
000045c8: MLOAD
000045c9: EQ
000045ca: AND
000045cb: OR
000045cc: AND
000045cd: SWAP2
000045ce: POP
000045cf: DUP1
000045d0: PUSH1 0x40
000045d2: MSTORE
000045d3: POP
000045d4: DUP1
000045d5: PUSH2 0x45f1
000045d8: JUMPI
000045d9: PUSH1 0x40
000045db: MLOAD
000045dc: PUSH4 0x7232c81f
000045e1: PUSH1 0xe1
000045e3: SHL
000045e4: DUP2
000045e5: MSTORE
000045e6: PUSH1 0x04
000045e8: ADD
000045e9: PUSH1 0x40
000045eb: MLOAD
000045ec: DUP1
000045ed: SWAP2
000045ee: SUB
000045ef: SWAP1
000045f0: REVERT
000045f1: JUMPDEST
000045f2: POP
000045f3: POP
000045f4: POP
000045f5: POP
000045f6: JUMP
000045f7: JUMPDEST
000045f8: PUSH1 0x00
000045fa: DUP1
000045fb: DUP1
000045fc: DUP1
000045fd: DUP9
000045fe: DUP9
000045ff: OR
00004600: ISZERO
00004601: PUSH2 0x46a5
00004604: JUMPI
00004605: DUP5
00004606: SLOAD
00004607: PUSH1 0x01
00004609: PUSH1 0x01
0000460b: PUSH1 0x68
0000460d: SHL
0000460e: SUB
0000460f: DUP1
00004610: DUP3
00004611: AND
00004612: SWAP2
00004613: PUSH1 0x68
00004615: SHR
00004616: AND
00004617: PUSH2 0x4620
0000461a: DUP12
0000461b: DUP4
0000461c: PUSH2 0x5589
0000461f: JUMP
00004620: JUMPDEST
00004621: SWAP2
00004622: POP
00004623: PUSH2 0x462c
00004626: DUP11
00004627: DUP3
00004628: PUSH2 0x5589
0000462b: JUMP
0000462c: JUMPDEST
0000462d: SWAP1
0000462e: POP
0000462f: PUSH2 0x7080
00004632: PUSH2 0x4641
00004635: DUP11
00004636: PUSH4 0xffffffff
0000463b: TIMESTAMP
0000463c: AND
0000463d: PUSH2 0x55bf
00004640: JUMP
00004641: JUMPDEST
00004642: LT
00004643: ISZERO
00004644: DUP1
00004645: PUSH2 0x4654
00004648: JUMPI
00004649: POP
0000464a: PUSH1 0x01
0000464c: PUSH1 0x01
0000464e: PUSH1 0x68
00004650: SHL
00004651: SUB
00004652: DUP3
00004653: GT
00004654: JUMPDEST
00004655: DUP1
00004656: PUSH2 0x4665
00004659: JUMPI
0000465a: POP
0000465b: PUSH1 0x01
0000465d: PUSH1 0x01
0000465f: PUSH1 0x68
00004661: SHL
00004662: SUB
00004663: DUP2
00004664: GT
00004665: JUMPDEST
00004666: ISZERO
00004667: PUSH2 0x4694
0000466a: JUMPI
0000466b: DUP8
0000466c: SLOAD
0000466d: PUSH1 0x00
0000466f: DUP1
00004670: PUSH2 0x467a
00004673: DUP6
00004674: DUP6
00004675: DUP6
00004676: PUSH2 0x4b5a
00004679: JUMP
0000467a: JUMPDEST
0000467b: PUSH1 0x00
0000467d: DUP1
0000467e: DUP14
0000467f: SSTORE
00004680: SWAP11
00004681: POP
00004682: DUP11
00004683: SWAP10
00004684: POP
00004685: SWAP1
00004686: SWAP8
00004687: POP
00004688: SWAP6
00004689: POP
0000468a: PUSH2 0x46f7
0000468d: SWAP5
0000468e: POP
0000468f: POP
00004690: POP
00004691: POP
00004692: POP
00004693: JUMP
00004694: JUMPDEST
00004695: SWAP1
00004696: SWAP5
00004697: POP
00004698: SWAP3
00004699: POP
0000469a: PUSH1 0x00
0000469c: SWAP2
0000469d: POP
0000469e: DUP2
0000469f: SWAP1
000046a0: POP
000046a1: PUSH2 0x46f7
000046a4: JUMP
000046a5: JUMPDEST
000046a6: PUSH2 0x7080
000046a9: PUSH2 0x46b8
000046ac: DUP9
000046ad: PUSH4 0xffffffff
000046b2: TIMESTAMP
000046b3: AND
000046b4: PUSH2 0x55bf
000046b7: JUMP
000046b8: JUMPDEST
000046b9: LT
000046ba: PUSH2 0x46ea
000046bd: JUMPI
000046be: DUP5
000046bf: SLOAD
000046c0: PUSH1 0x01
000046c2: PUSH1 0x01
000046c4: PUSH1 0x68
000046c6: SHL
000046c7: SUB
000046c8: DUP1
000046c9: DUP3
000046ca: AND
000046cb: SWAP2
000046cc: PUSH1 0x68
000046ce: SHR
000046cf: AND
000046d0: DUP1
000046d1: DUP3
000046d2: OR
000046d3: ISZERO
000046d4: PUSH2 0x46e7
000046d7: JUMPI
000046d8: DUP8
000046d9: SLOAD
000046da: PUSH1 0x00
000046dc: DUP1
000046dd: PUSH2 0x467a
000046e0: DUP6
000046e1: DUP6
000046e2: DUP6
000046e3: PUSH2 0x4b5a
000046e6: JUMP
000046e7: JUMPDEST
000046e8: POP
000046e9: POP
000046ea: JUMPDEST
000046eb: POP
000046ec: PUSH1 0x00
000046ee: SWAP3
000046ef: POP
000046f0: DUP3
000046f1: SWAP2
000046f2: POP
000046f3: DUP2
000046f4: SWAP1
000046f5: POP
000046f6: DUP1
000046f7: JUMPDEST
000046f8: SWAP6
000046f9: POP
000046fa: SWAP6
000046fb: POP
000046fc: SWAP6
000046fd: POP
000046fe: SWAP6
000046ff: SWAP2
00004700: POP
00004701: POP
00004702: JUMP
00004703: JUMPDEST
00004704: DUP1
00004705: PUSH1 0x01
00004707: PUSH1 0x01
00004709: PUSH1 0x80
0000470b: SHL
0000470c: SUB
0000470d: DUP2
0000470e: AND
0000470f: DUP2
00004710: EQ
00004711: PUSH2 0x3a28
00004714: JUMPI
00004715: PUSH1 0x00
00004717: DUP1
00004718: REVERT
00004719: JUMPDEST
0000471a: PUSH1 0x02
0000471c: DUP7
0000471d: SWAP1
0000471e: SIGNEXTEND
0000471f: PUSH1 0x00
00004721: SWAP1
00004722: DUP2
00004723: MSTORE
00004724: PUSH1 0x20
00004726: DUP9
00004727: SWAP1
00004728: MSTORE
00004729: PUSH1 0x40
0000472b: DUP2
0000472c: KECCAK256
0000472d: DUP1
0000472e: SLOAD
0000472f: DUP3
00004730: PUSH2 0x4739
00004733: DUP3
00004734: DUP10
00004735: PUSH2 0x4513
00004738: JUMP
00004739: JUMPDEST
0000473a: PUSH1 0x01
0000473c: PUSH1 0x01
0000473e: PUSH1 0x80
00004740: SHL
00004741: SUB
00004742: AND
00004743: SWAP1
00004744: POP
00004745: PUSH14 0x09745258e83de0d0f4e400fce799
00004754: DUP2
00004755: GT
00004756: ISZERO
00004757: PUSH2 0x4773
0000475a: JUMPI
0000475b: PUSH1 0x40
0000475d: MLOAD
0000475e: PUSH4 0x12dc1b25
00004763: PUSH1 0xe1
00004765: SHL
00004766: DUP2
00004767: MSTORE
00004768: PUSH1 0x04
0000476a: ADD
0000476b: PUSH1 0x40
0000476d: MLOAD
0000476e: DUP1
0000476f: SWAP2
00004770: SUB
00004771: SWAP1
00004772: REVERT
00004773: JUMPDEST
00004774: PUSH1 0x01
00004776: DUP4
00004777: ADD
00004778: SLOAD
00004779: PUSH1 0x0f
0000477b: SIGNEXTEND
0000477c: DUP6
0000477d: PUSH2 0x4797
00004780: JUMPI
00004781: DUP9
00004782: PUSH1 0x0f
00004784: SIGNEXTEND
00004785: DUP2
00004786: PUSH1 0x0f
00004788: SIGNEXTEND
00004789: PUSH2 0x4792
0000478c: SWAP2
0000478d: SWAP1
0000478e: PUSH2 0x572e
00004791: JUMP
00004792: JUMPDEST
00004793: PUSH2 0x47a9
00004796: JUMP
00004797: JUMPDEST
00004798: DUP9
00004799: PUSH1 0x0f
0000479b: SIGNEXTEND
0000479c: DUP2
0000479d: PUSH1 0x0f
0000479f: SIGNEXTEND
000047a0: PUSH2 0x47a9
000047a3: SWAP2
000047a4: SWAP1
000047a5: PUSH2 0x56e4
000047a8: JUMP
000047a9: JUMPDEST
000047aa: PUSH1 0x01
000047ac: DUP6
000047ad: ADD
000047ae: DUP1
000047af: SLOAD
000047b0: PUSH1 0x01
000047b2: PUSH1 0x01
000047b4: PUSH1 0x80
000047b6: SHL
000047b7: SUB
000047b8: NOT
000047b9: AND
000047ba: PUSH1 0x01
000047bc: PUSH1 0x01
000047be: PUSH1 0x80
000047c0: SHL
000047c1: SUB
000047c2: SWAP3
000047c3: SWAP1
000047c4: SWAP3
000047c5: AND
000047c6: SWAP2
000047c7: SWAP1
000047c8: SWAP2
000047c9: OR
000047ca: SWAP1
000047cb: SSTORE
000047cc: DUP2
000047cd: DUP5
000047ce: SSTORE
000047cf: DUP2
000047d0: ISZERO
000047d1: SWAP5
000047d2: POP
000047d3: PUSH1 0x00
000047d5: DUP4
000047d6: SWAP1
000047d7: SUB
000047d8: PUSH2 0x47fb
000047db: JUMPI
000047dc: DUP5
000047dd: ISZERO
000047de: SWAP5
000047df: POP
000047e0: DUP10
000047e1: PUSH1 0x02
000047e3: SIGNEXTEND
000047e4: DUP12
000047e5: PUSH1 0x02
000047e7: SIGNEXTEND
000047e8: SGT
000047e9: PUSH2 0x47fb
000047ec: JUMPI
000047ed: PUSH1 0x03
000047ef: DUP5
000047f0: ADD
000047f1: DUP8
000047f2: SWAP1
000047f3: SSTORE
000047f4: PUSH1 0x02
000047f6: DUP5
000047f7: ADD
000047f8: DUP9
000047f9: SWAP1
000047fa: SSTORE
000047fb: JUMPDEST
000047fc: POP
000047fd: POP
000047fe: POP
000047ff: POP
00004800: SWAP8
00004801: SWAP7
00004802: POP
00004803: POP
00004804: POP
00004805: POP
00004806: POP
00004807: POP
00004808: POP
00004809: JUMP
0000480a: JUMPDEST
0000480b: PUSH1 0x02
0000480d: DUP6
0000480e: DUP2
0000480f: SIGNEXTEND
00004810: PUSH1 0x00
00004812: SWAP1
00004813: DUP2
00004814: MSTORE
00004815: PUSH1 0x20
00004817: DUP9
00004818: SWAP1
00004819: MSTORE
0000481a: PUSH1 0x40
0000481c: DUP1
0000481d: DUP3
0000481e: KECCAK256
0000481f: DUP8
00004820: DUP5
00004821: SIGNEXTEND
00004822: DUP1
00004823: DUP5
00004824: MSTORE
00004825: SWAP2
00004826: DUP4
00004827: KECCAK256
00004828: SWAP3
00004829: SWAP4
0000482a: DUP5
0000482b: SWAP4
0000482c: SWAP2
0000482d: SWAP3
0000482e: SWAP1
0000482f: DUP9
00004830: SWAP1
00004831: SIGNEXTEND
00004832: SLT
00004833: ISZERO
00004834: PUSH2 0x4880
00004837: JUMPI
00004838: DUP9
00004839: PUSH1 0x02
0000483b: SIGNEXTEND
0000483c: DUP8
0000483d: PUSH1 0x02
0000483f: SIGNEXTEND
00004840: SLT
00004841: PUSH2 0x485b
00004844: JUMPI
00004845: DUP2
00004846: PUSH1 0x02
00004848: ADD
00004849: SLOAD
0000484a: DUP7
0000484b: SUB
0000484c: SWAP4
0000484d: POP
0000484e: DUP2
0000484f: PUSH1 0x03
00004851: ADD
00004852: SLOAD
00004853: DUP6
00004854: SUB
00004855: SWAP3
00004856: POP
00004857: PUSH2 0x486a
0000485a: JUMP
0000485b: JUMPDEST
0000485c: DUP2
0000485d: PUSH1 0x02
0000485f: ADD
00004860: SLOAD
00004861: SWAP4
00004862: POP
00004863: DUP2
00004864: PUSH1 0x03
00004866: ADD
00004867: SLOAD
00004868: SWAP3
00004869: POP
0000486a: JUMPDEST
0000486b: PUSH1 0x02
0000486d: DUP2
0000486e: ADD
0000486f: SLOAD
00004870: PUSH1 0x03
00004872: DUP3
00004873: ADD
00004874: SLOAD
00004875: SWAP5
00004876: SUB
00004877: SWAP4
00004878: SWAP1
00004879: SWAP3
0000487a: SUB
0000487b: SWAP2
0000487c: PUSH2 0x0d30
0000487f: JUMP
00004880: JUMPDEST
00004881: DUP2
00004882: PUSH1 0x02
00004884: ADD
00004885: SLOAD
00004886: DUP2
00004887: PUSH1 0x02
00004889: ADD
0000488a: SLOAD
0000488b: SUB
0000488c: SWAP4
0000488d: POP
0000488e: DUP2
0000488f: PUSH1 0x03
00004891: ADD
00004892: SLOAD
00004893: DUP2
00004894: PUSH1 0x03
00004896: ADD
00004897: SLOAD
00004898: SUB
00004899: SWAP3
0000489a: POP
0000489b: POP
0000489c: POP
0000489d: SWAP7
0000489e: POP
0000489f: SWAP7
000048a0: SWAP5
000048a1: POP
000048a2: POP
000048a3: POP
000048a4: POP
000048a5: POP
000048a6: JUMP
000048a7: JUMPDEST
000048a8: DUP4
000048a9: SLOAD
000048aa: PUSH1 0x0f
000048ac: DUP5
000048ad: SWAP1
000048ae: SIGNEXTEND
000048af: PUSH1 0x00
000048b1: SUB
000048b2: PUSH2 0x48d1
000048b5: JUMPI
000048b6: DUP1
000048b7: PUSH1 0x01
000048b9: PUSH1 0x01
000048bb: PUSH1 0x80
000048bd: SHL
000048be: SUB
000048bf: AND
000048c0: PUSH1 0x00
000048c2: SUB
000048c3: PUSH2 0x48cc
000048c6: JUMPI
000048c7: POP
000048c8: PUSH2 0x45f1
000048cb: JUMP
000048cc: JUMPDEST
000048cd: PUSH2 0x48e7
000048d0: JUMP
000048d1: JUMPDEST
000048d2: PUSH2 0x48db
000048d5: DUP2
000048d6: DUP6
000048d7: PUSH2 0x4513
000048da: JUMP
000048db: JUMPDEST
000048dc: PUSH1 0x01
000048de: PUSH1 0x01
000048e0: PUSH1 0x80
000048e2: SHL
000048e3: SUB
000048e4: AND
000048e5: DUP6
000048e6: SSTORE
000048e7: JUMPDEST
000048e8: PUSH1 0x01
000048ea: DUP6
000048eb: ADD
000048ec: SLOAD
000048ed: PUSH1 0x02
000048ef: DUP7
000048f0: ADD
000048f1: SLOAD
000048f2: PUSH1 0x00
000048f4: DUP6
000048f5: DUP4
000048f6: EQ
000048f7: PUSH2 0x491e
000048fa: JUMPI
000048fb: PUSH1 0x01
000048fd: DUP9
000048fe: ADD
000048ff: DUP7
00004900: SWAP1
00004901: SSTORE
00004902: PUSH2 0x491b
00004905: DUP4
00004906: DUP8
00004907: SUB
00004908: PUSH1 0x01
0000490a: PUSH1 0x01
0000490c: PUSH1 0x80
0000490e: SHL
0000490f: SUB
00004910: DUP7
00004911: AND
00004912: PUSH1 0x01
00004914: PUSH1 0x80
00004916: SHL
00004917: PUSH2 0x3742
0000491a: JUMP
0000491b: JUMPDEST
0000491c: SWAP1
0000491d: POP
0000491e: JUMPDEST
0000491f: PUSH1 0x00
00004921: DUP6
00004922: DUP4
00004923: EQ
00004924: PUSH2 0x494b
00004927: JUMPI
00004928: PUSH1 0x02
0000492a: DUP10
0000492b: ADD
0000492c: DUP7
0000492d: SWAP1
0000492e: SSTORE
0000492f: PUSH2 0x4948
00004932: DUP4
00004933: DUP8
00004934: SUB
00004935: PUSH1 0x01
00004937: PUSH1 0x01
00004939: PUSH1 0x80
0000493b: SHL
0000493c: SUB
0000493d: DUP8
0000493e: AND
0000493f: PUSH1 0x01
00004941: PUSH1 0x80
00004943: SHL
00004944: PUSH2 0x3742
00004947: JUMP
00004948: JUMPDEST
00004949: SWAP1
0000494a: POP
0000494b: JUMPDEST
0000494c: PUSH1 0x01
0000494e: PUSH1 0x01
00004950: PUSH1 0x80
00004952: SHL
00004953: SUB
00004954: DUP3
00004955: DUP3
00004956: OR
00004957: AND
00004958: ISZERO
00004959: PUSH2 0x4991
0000495c: JUMPI
0000495d: PUSH1 0x03
0000495f: DUP10
00004960: ADD
00004961: DUP1
00004962: SLOAD
00004963: PUSH1 0x01
00004965: PUSH1 0x80
00004967: SHL
00004968: PUSH1 0x01
0000496a: PUSH1 0x01
0000496c: PUSH1 0x80
0000496e: SHL
0000496f: SUB
00004970: DUP1
00004971: DUP4
00004972: AND
00004973: DUP7
00004974: ADD
00004975: DUP2
00004976: AND
00004977: PUSH1 0x01
00004979: PUSH1 0x01
0000497b: PUSH1 0x80
0000497d: SHL
0000497e: SUB
0000497f: NOT
00004980: SWAP1
00004981: SWAP4
00004982: AND
00004983: DUP4
00004984: OR
00004985: DUP3
00004986: SWAP1
00004987: DIV
00004988: DUP2
00004989: AND
0000498a: DUP6
0000498b: ADD
0000498c: AND
0000498d: MUL
0000498e: OR
0000498f: SWAP1
00004990: SSTORE
00004991: JUMPDEST
00004992: POP
00004993: POP
00004994: POP
00004995: POP
00004996: POP
00004997: POP
00004998: POP
00004999: POP
0000499a: POP
0000499b: JUMP
0000499c: JUMPDEST
0000499d: PUSH1 0x09
0000499f: SLOAD
000049a0: PUSH4 0x01000000
000049a5: DUP2
000049a6: DIV
000049a7: PUSH1 0x02
000049a9: SWAP1
000049aa: DUP2
000049ab: SIGNEXTEND
000049ac: SWAP2
000049ad: SWAP1
000049ae: DUP2
000049af: SWAP1
000049b0: SIGNEXTEND
000049b1: SWAP1
000049b2: PUSH1 0x01
000049b4: PUSH1 0xc8
000049b6: SHL
000049b7: SWAP1
000049b8: DIV
000049b9: PUSH4 0xffffffff
000049be: AND
000049bf: DUP3
000049c0: DUP3
000049c1: DUP3
000049c2: DUP10
000049c3: ISZERO
000049c4: PUSH2 0x49dd
000049c7: JUMPI
000049c8: PUSH2 0x49d5
000049cb: DUP13
000049cc: DUP10
000049cd: DUP4
000049ce: DUP7
000049cf: DUP7
000049d0: DUP13
000049d1: PUSH2 0x4bd4
000049d4: JUMP
000049d5: JUMPDEST
000049d6: SWAP2
000049d7: SWAP5
000049d8: POP
000049d9: SWAP3
000049da: POP
000049db: SWAP1
000049dc: POP
000049dd: JUMPDEST
000049de: DUP9
000049df: ISZERO
000049e0: PUSH2 0x49f9
000049e3: JUMPI
000049e4: PUSH2 0x49f1
000049e7: DUP12
000049e8: DUP10
000049e9: DUP4
000049ea: DUP7
000049eb: DUP7
000049ec: DUP13
000049ed: PUSH2 0x4bd4
000049f0: JUMP
000049f1: JUMPDEST
000049f2: SWAP2
000049f3: SWAP5
000049f4: POP
000049f5: SWAP3
000049f6: POP
000049f7: SWAP1
000049f8: POP
000049f9: JUMPDEST
000049fa: DUP3
000049fb: PUSH1 0x02
000049fd: SIGNEXTEND
000049fe: DUP7
000049ff: PUSH1 0x02
00004a01: SIGNEXTEND
00004a02: EQ
00004a03: ISZERO
00004a04: DUP1
00004a05: PUSH2 0x4a14
00004a08: JUMPI
00004a09: POP
00004a0a: DUP2
00004a0b: PUSH1 0x02
00004a0d: SIGNEXTEND
00004a0e: DUP6
00004a0f: PUSH1 0x02
00004a11: SIGNEXTEND
00004a12: EQ
00004a13: ISZERO
00004a14: JUMPDEST
00004a15: DUP1
00004a16: PUSH2 0x4a2b
00004a19: JUMPI
00004a1a: POP
00004a1b: DUP4
00004a1c: PUSH4 0xffffffff
00004a21: AND
00004a22: DUP2
00004a23: PUSH4 0xffffffff
00004a28: AND
00004a29: EQ
00004a2a: ISZERO
00004a2b: JUMPDEST
00004a2c: ISZERO
00004a2d: PUSH2 0x4a77
00004a30: JUMPI
00004a31: PUSH1 0x09
00004a33: DUP1
00004a34: SLOAD
00004a35: PUSH3 0xffffff
00004a39: DUP1
00004a3a: DUP7
00004a3b: AND
00004a3c: PUSH4 0x01000000
00004a41: MUL
00004a42: PUSH6 0xffffffffffff
00004a49: NOT
00004a4a: PUSH4 0xffffffff
00004a4f: DUP7
00004a50: AND
00004a51: PUSH1 0x01
00004a53: PUSH1 0xc8
00004a55: SHL
00004a56: MUL
00004a57: AND
00004a58: PUSH6 0xffffffffffff
00004a5f: PUSH4 0xffffffff
00004a64: PUSH1 0xc8
00004a66: SHL
00004a67: ADD
00004a68: NOT
00004a69: SWAP1
00004a6a: SWAP4
00004a6b: AND
00004a6c: SWAP3
00004a6d: SWAP1
00004a6e: SWAP3
00004a6f: OR
00004a70: SWAP1
00004a71: DUP6
00004a72: AND
00004a73: OR
00004a74: OR
00004a75: SWAP1
00004a76: SSTORE
00004a77: JUMPDEST
00004a78: POP
00004a79: POP
00004a7a: POP
00004a7b: POP
00004a7c: POP
00004a7d: POP
00004a7e: POP
00004a7f: POP
00004a80: POP
00004a81: POP
00004a82: POP
00004a83: POP
00004a84: JUMP
00004a85: JUMPDEST
00004a86: PUSH1 0x00
00004a88: DUP1
00004a89: DUP3
00004a8a: PUSH1 0x0f
00004a8c: SIGNEXTEND
00004a8d: SLT
00004a8e: ISZERO
00004a8f: PUSH2 0x4aad
00004a92: JUMPI
00004a93: PUSH2 0x4aa5
00004a96: PUSH2 0x16b6
00004a99: DUP6
00004a9a: DUP6
00004a9b: DUP6
00004a9c: PUSH1 0x00
00004a9e: SUB
00004a9f: PUSH1 0x00
00004aa1: PUSH2 0x4cc9
00004aa4: JUMP
00004aa5: JUMPDEST
00004aa6: PUSH1 0x00
00004aa8: SUB
00004aa9: PUSH2 0x4abd
00004aac: JUMP
00004aad: JUMPDEST
00004aae: PUSH2 0x4abd
00004ab1: PUSH2 0x16b6
00004ab4: DUP6
00004ab5: DUP6
00004ab6: DUP6
00004ab7: PUSH1 0x01
00004ab9: PUSH2 0x4cc9
00004abc: JUMP
00004abd: JUMPDEST
00004abe: SWAP5
00004abf: SWAP4
00004ac0: POP
00004ac1: POP
00004ac2: POP
00004ac3: POP
00004ac4: JUMP
00004ac5: JUMPDEST
00004ac6: PUSH1 0x00
00004ac8: DUP1
00004ac9: DUP3
00004aca: PUSH1 0x0f
00004acc: SIGNEXTEND
00004acd: SLT
00004ace: ISZERO
00004acf: PUSH2 0x4ae5
00004ad2: JUMPI
00004ad3: PUSH2 0x4aa5
00004ad6: PUSH2 0x16b6
00004ad9: DUP6
00004ada: DUP6
00004adb: DUP6
00004adc: PUSH1 0x00
00004ade: SUB
00004adf: PUSH1 0x00
00004ae1: PUSH2 0x4d64
00004ae4: JUMP
00004ae5: JUMPDEST
00004ae6: PUSH2 0x4abd
00004ae9: PUSH2 0x16b6
00004aec: DUP6
00004aed: DUP6
00004aee: DUP6
00004aef: PUSH1 0x01
00004af1: PUSH2 0x4d64
00004af4: JUMP
00004af5: JUMPDEST
00004af6: PUSH1 0x00
00004af8: PUSH2 0x4abd
00004afb: DUP4
00004afc: DUP6
00004afd: DUP5
00004afe: PUSH1 0x01
00004b00: PUSH2 0x4d64
00004b03: JUMP
00004b04: JUMPDEST
00004b05: PUSH1 0x00
00004b07: PUSH2 0x4abd
00004b0a: DUP5
00004b0b: DUP5
00004b0c: DUP5
00004b0d: PUSH1 0x01
00004b0f: PUSH2 0x4cc9
00004b12: JUMP
00004b13: JUMPDEST
00004b14: PUSH1 0x00
00004b16: PUSH2 0x4b23
00004b19: DUP6
00004b1a: DUP6
00004b1b: DUP6
00004b1c: DUP6
00004b1d: PUSH1 0x01
00004b1f: PUSH2 0x4dcb
00004b22: JUMP
00004b23: JUMPDEST
00004b24: SWAP6
00004b25: SWAP5
00004b26: POP
00004b27: POP
00004b28: POP
00004b29: POP
00004b2a: POP
00004b2b: JUMP
00004b2c: JUMPDEST
00004b2d: PUSH1 0x00
00004b2f: PUSH2 0x4abd
00004b32: DUP4
00004b33: DUP6
00004b34: DUP5
00004b35: PUSH1 0x00
00004b37: PUSH2 0x4cc9
00004b3a: JUMP
00004b3b: JUMPDEST
00004b3c: PUSH1 0x00
00004b3e: PUSH2 0x4abd
00004b41: DUP5
00004b42: DUP5
00004b43: DUP5
00004b44: PUSH1 0x00
00004b46: PUSH2 0x4d64
00004b49: JUMP
00004b4a: JUMPDEST
00004b4b: PUSH1 0x00
00004b4d: PUSH2 0x4b23
00004b50: DUP6
00004b51: DUP6
00004b52: DUP6
00004b53: DUP6
00004b54: PUSH1 0x00
00004b56: PUSH2 0x4dcb
00004b59: JUMP
00004b5a: JUMPDEST
00004b5b: PUSH1 0x00
00004b5d: DUP1
00004b5e: DUP1
00004b5f: DUP1
00004b60: DUP7
00004b61: ISZERO
00004b62: PUSH2 0x4b94
00004b65: JUMPI
00004b66: PUSH2 0x4b90
00004b69: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00004b8a: DUP7
00004b8b: DUP10
00004b8c: PUSH2 0x2b72
00004b8f: JUMP
00004b90: JUMPDEST
00004b91: DUP7
00004b92: SWAP2
00004b93: POP
00004b94: JUMPDEST
00004b95: DUP6
00004b96: ISZERO
00004b97: PUSH2 0x4bc8
00004b9a: JUMPI
00004b9b: PUSH2 0x4bc5
00004b9e: PUSH32 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
00004bbf: DUP7
00004bc0: DUP9
00004bc1: PUSH2 0x2b72
00004bc4: JUMP
00004bc5: JUMPDEST
00004bc6: POP
00004bc7: DUP5
00004bc8: JUMPDEST
00004bc9: SWAP1
00004bca: SWAP7
00004bcb: SWAP1
00004bcc: SWAP6
00004bcd: POP
00004bce: SWAP4
00004bcf: POP
00004bd0: POP
00004bd1: POP
00004bd2: POP
00004bd3: JUMP
00004bd4: JUMPDEST
00004bd5: PUSH1 0x00
00004bd7: DUP1
00004bd8: PUSH1 0x00
00004bda: DUP4
00004bdb: ISZERO
00004bdc: PUSH2 0x4c1e
00004bdf: JUMPI
00004be0: PUSH1 0x00
00004be2: DUP1
00004be3: PUSH2 0x4bed
00004be6: PUSH1 0x03
00004be8: DUP13
00004be9: PUSH2 0x4fe9
00004bec: JUMP
00004bed: JUMPDEST
00004bee: SWAP2
00004bef: POP
00004bf0: SWAP2
00004bf1: POP
00004bf2: DUP11
00004bf3: PUSH1 0x02
00004bf5: SIGNEXTEND
00004bf6: DUP9
00004bf7: PUSH1 0x02
00004bf9: SIGNEXTEND
00004bfa: SUB
00004bfb: PUSH2 0x4c06
00004bfe: JUMPI
00004bff: DUP2
00004c00: SWAP8
00004c01: POP
00004c02: PUSH2 0x4c17
00004c05: JUMP
00004c06: JUMPDEST
00004c07: DUP11
00004c08: PUSH1 0x02
00004c0a: SIGNEXTEND
00004c0b: DUP8
00004c0c: PUSH1 0x02
00004c0e: SIGNEXTEND
00004c0f: SUB
00004c10: PUSH2 0x4c17
00004c13: JUMPI
00004c14: DUP1
00004c15: SWAP7
00004c16: POP
00004c17: JUMPDEST
00004c18: POP
00004c19: POP
00004c1a: PUSH2 0x4ca7
00004c1d: JUMP
00004c1e: JUMPDEST
00004c1f: PUSH1 0x00
00004c21: DUP1
00004c22: DUP11
00004c23: PUSH1 0x02
00004c25: SIGNEXTEND
00004c26: DUP9
00004c27: PUSH1 0x02
00004c29: SIGNEXTEND
00004c2a: SLT
00004c2b: DUP1
00004c2c: ISZERO
00004c2d: PUSH2 0x4c3b
00004c30: JUMPI
00004c31: POP
00004c32: DUP11
00004c33: PUSH1 0x02
00004c35: SIGNEXTEND
00004c36: DUP8
00004c37: PUSH1 0x02
00004c39: SIGNEXTEND
00004c3a: SGT
00004c3b: JUMPDEST
00004c3c: ISZERO
00004c3d: PUSH2 0x4c64
00004c40: JUMPI
00004c41: POP
00004c42: DUP7
00004c43: SWAP1
00004c44: POP
00004c45: DUP6
00004c46: PUSH1 0x02
00004c48: DUP11
00004c49: DUP2
00004c4a: SIGNEXTEND
00004c4b: SWAP1
00004c4c: DUP13
00004c4d: SWAP1
00004c4e: SIGNEXTEND
00004c4f: SGT
00004c50: ISZERO
00004c51: PUSH2 0x4c5c
00004c54: JUMPI
00004c55: DUP11
00004c56: SWAP7
00004c57: POP
00004c58: PUSH2 0x4c97
00004c5b: JUMP
00004c5c: JUMPDEST
00004c5d: DUP11
00004c5e: SWAP8
00004c5f: POP
00004c60: PUSH2 0x4c97
00004c63: JUMP
00004c64: JUMPDEST
00004c65: PUSH2 0x4c72
00004c68: PUSH1 0x08
00004c6a: PUSH1 0x0a
00004c6c: DUP12
00004c6d: DUP15
00004c6e: PUSH2 0x513f
00004c71: JUMP
00004c72: JUMPDEST
00004c73: PUSH1 0x02
00004c75: DUP2
00004c76: DUP2
00004c77: SIGNEXTEND
00004c78: PUSH1 0x00
00004c7a: SWAP1
00004c7b: DUP2
00004c7c: MSTORE
00004c7d: PUSH1 0x03
00004c7f: PUSH1 0x20
00004c81: MSTORE
00004c82: PUSH1 0x40
00004c84: SWAP1
00004c85: KECCAK256
00004c86: PUSH1 0x01
00004c88: ADD
00004c89: SLOAD
00004c8a: PUSH1 0x01
00004c8c: PUSH1 0x80
00004c8e: SHL
00004c8f: SWAP1
00004c90: DIV
00004c91: SWAP1
00004c92: SIGNEXTEND
00004c93: SWAP3
00004c94: POP
00004c95: SWAP1
00004c96: POP
00004c97: JUMPDEST
00004c98: PUSH2 0x4ca4
00004c9b: PUSH1 0x03
00004c9d: DUP13
00004c9e: DUP5
00004c9f: DUP5
00004ca0: PUSH2 0x51f4
00004ca3: JUMP
00004ca4: JUMPDEST
00004ca5: POP
00004ca6: POP
00004ca7: JUMPDEST
00004ca8: PUSH1 0x00
00004caa: PUSH2 0x4cb7
00004cad: PUSH1 0x08
00004caf: PUSH1 0x0a
00004cb1: DUP11
00004cb2: DUP14
00004cb3: PUSH2 0x52ea
00004cb6: JUMP
00004cb7: JUMPDEST
00004cb8: SWAP7
00004cb9: SWAP11
00004cba: SWAP6
00004cbb: SWAP10
00004cbc: POP
00004cbd: SWAP6
00004cbe: SWAP8
00004cbf: POP
00004cc0: SWAP4
00004cc1: SWAP6
00004cc2: POP
00004cc3: POP
00004cc4: POP
00004cc5: POP
00004cc6: POP
00004cc7: POP
00004cc8: JUMP
00004cc9: JUMPDEST
00004cca: PUSH1 0x00
00004ccc: PUSH1 0x01
00004cce: PUSH1 0x01
00004cd0: PUSH1 0xa0
00004cd2: SHL
00004cd3: SUB
00004cd4: DUP6
00004cd5: DUP6
00004cd6: SUB
00004cd7: DUP2
00004cd8: AND
00004cd9: SWAP1
00004cda: DUP6
00004cdb: AND
00004cdc: DUP2
00004cdd: LT
00004cde: PUSH2 0x4ce6
00004ce1: JUMPI
00004ce2: PUSH1 0x00
00004ce4: DUP1
00004ce5: REVERT
00004ce6: JUMPDEST
00004ce7: PUSH1 0x01
00004ce9: PUSH1 0x60
00004ceb: SHL
00004cec: PUSH1 0x01
00004cee: PUSH1 0xe0
00004cf0: SHL
00004cf1: SUB
00004cf2: PUSH1 0x60
00004cf4: DUP6
00004cf5: SWAP1
00004cf6: SHL
00004cf7: AND
00004cf8: DUP4
00004cf9: PUSH2 0x4d2d
00004cfc: JUMPI
00004cfd: DUP7
00004cfe: PUSH1 0x01
00004d00: PUSH1 0x01
00004d02: PUSH1 0xa0
00004d04: SHL
00004d05: SUB
00004d06: AND
00004d07: PUSH2 0x4d1a
00004d0a: DUP4
00004d0b: DUP4
00004d0c: DUP10
00004d0d: PUSH1 0x01
00004d0f: PUSH1 0x01
00004d11: PUSH1 0xa0
00004d13: SHL
00004d14: SUB
00004d15: AND
00004d16: PUSH2 0x3742
00004d19: JUMP
00004d1a: JUMPDEST
00004d1b: DUP2
00004d1c: PUSH2 0x4d27
00004d1f: JUMPI
00004d20: PUSH2 0x4d27
00004d23: PUSH2 0x55f9
00004d26: JUMP
00004d27: JUMPDEST
00004d28: DIV
00004d29: PUSH2 0x4d59
00004d2c: JUMP
00004d2d: JUMPDEST
00004d2e: PUSH2 0x4d59
00004d31: PUSH2 0x4d44
00004d34: DUP4
00004d35: DUP4
00004d36: DUP10
00004d37: PUSH1 0x01
00004d39: PUSH1 0x01
00004d3b: PUSH1 0xa0
00004d3d: SHL
00004d3e: SUB
00004d3f: AND
00004d40: PUSH2 0x3920
00004d43: JUMP
00004d44: JUMPDEST
00004d45: DUP9
00004d46: PUSH1 0x01
00004d48: PUSH1 0x01
00004d4a: PUSH1 0xa0
00004d4c: SHL
00004d4d: SUB
00004d4e: AND
00004d4f: DUP1
00004d50: DUP3
00004d51: DIV
00004d52: SWAP2
00004d53: MOD
00004d54: ISZERO
00004d55: ISZERO
00004d56: ADD
00004d57: SWAP1
00004d58: JUMP
00004d59: JUMPDEST
00004d5a: SWAP8
00004d5b: SWAP7
00004d5c: POP
00004d5d: POP
00004d5e: POP
00004d5f: POP
00004d60: POP
00004d61: POP
00004d62: POP
00004d63: JUMP
00004d64: JUMPDEST
00004d65: PUSH1 0x00
00004d67: DUP5
00004d68: PUSH1 0x01
00004d6a: PUSH1 0x01
00004d6c: PUSH1 0xa0
00004d6e: SHL
00004d6f: SUB
00004d70: AND
00004d71: DUP5
00004d72: PUSH1 0x01
00004d74: PUSH1 0x01
00004d76: PUSH1 0xa0
00004d78: SHL
00004d79: SUB
00004d7a: AND
00004d7b: LT
00004d7c: ISZERO
00004d7d: PUSH2 0x4d85
00004d80: JUMPI
00004d81: PUSH1 0x00
00004d83: DUP1
00004d84: REVERT
00004d85: JUMPDEST
00004d86: PUSH1 0x01
00004d88: PUSH1 0x01
00004d8a: PUSH1 0xa0
00004d8c: SHL
00004d8d: SUB
00004d8e: DUP6
00004d8f: DUP6
00004d90: SUB
00004d91: AND
00004d92: DUP3
00004d93: PUSH2 0x4db3
00004d96: JUMPI
00004d97: PUSH2 0x4dae
00004d9a: DUP2
00004d9b: DUP6
00004d9c: PUSH1 0x01
00004d9e: PUSH1 0x01
00004da0: PUSH1 0x80
00004da2: SHL
00004da3: SUB
00004da4: AND
00004da5: PUSH1 0x01
00004da7: PUSH1 0x60
00004da9: SHL
00004daa: PUSH2 0x3742
00004dad: JUMP
00004dae: JUMPDEST
00004daf: PUSH2 0x35ea
00004db2: JUMP
00004db3: JUMPDEST
00004db4: PUSH2 0x35ea
00004db7: DUP2
00004db8: DUP6
00004db9: PUSH1 0x01
00004dbb: PUSH1 0x01
00004dbd: PUSH1 0x80
00004dbf: SHL
00004dc0: SUB
00004dc1: AND
00004dc2: PUSH1 0x01
00004dc4: PUSH1 0x60
00004dc6: SHL
00004dc7: PUSH2 0x3920
00004dca: JUMP
00004dcb: JUMPDEST
00004dcc: PUSH1 0x00
00004dce: DUP6
00004dcf: PUSH1 0x01
00004dd1: PUSH1 0x01
00004dd3: PUSH1 0xa0
00004dd5: SHL
00004dd6: SUB
00004dd7: AND
00004dd8: PUSH1 0x00
00004dda: SUB
00004ddb: PUSH2 0x4de3
00004dde: JUMPI
00004ddf: PUSH1 0x00
00004de1: DUP1
00004de2: REVERT
00004de3: JUMPDEST
00004de4: DUP5
00004de5: PUSH1 0x01
00004de7: PUSH1 0x01
00004de9: PUSH1 0x80
00004deb: SHL
00004dec: SUB
00004ded: AND
00004dee: PUSH1 0x00
00004df0: SUB
00004df1: PUSH2 0x4df9
00004df4: JUMPI
00004df5: PUSH1 0x00
00004df7: DUP1
00004df8: REVERT
00004df9: JUMPDEST
00004dfa: DUP4
00004dfb: PUSH1 0x00
00004dfd: SUB
00004dfe: PUSH2 0x4e08
00004e01: JUMPI
00004e02: POP
00004e03: DUP5
00004e04: PUSH2 0x4b23
00004e07: JUMP
00004e08: JUMPDEST
00004e09: DUP2
00004e0a: ISZERO
00004e0b: ISZERO
00004e0c: DUP4
00004e0d: ISZERO
00004e0e: ISZERO
00004e0f: SUB
00004e10: PUSH2 0x4f04
00004e13: JUMPI
00004e14: PUSH1 0x01
00004e16: PUSH1 0x60
00004e18: SHL
00004e19: PUSH1 0x01
00004e1b: PUSH1 0xe0
00004e1d: SHL
00004e1e: SUB
00004e1f: PUSH1 0x60
00004e21: DUP7
00004e22: SWAP1
00004e23: SHL
00004e24: AND
00004e25: DUP3
00004e26: ISZERO
00004e27: PUSH2 0x4eb2
00004e2a: JUMPI
00004e2b: PUSH1 0x01
00004e2d: PUSH1 0x01
00004e2f: PUSH1 0xa0
00004e31: SHL
00004e32: SUB
00004e33: DUP8
00004e34: AND
00004e35: DUP6
00004e36: DUP2
00004e37: MUL
00004e38: SWAP1
00004e39: DUP7
00004e3a: DUP3
00004e3b: DUP2
00004e3c: PUSH2 0x4e47
00004e3f: JUMPI
00004e40: PUSH2 0x4e47
00004e43: PUSH2 0x55f9
00004e46: JUMP
00004e47: JUMPDEST
00004e48: DIV
00004e49: SUB
00004e4a: PUSH2 0x4e77
00004e4d: JUMPI
00004e4e: DUP2
00004e4f: DUP2
00004e50: ADD
00004e51: DUP3
00004e52: DUP2
00004e53: LT
00004e54: PUSH2 0x4e75
00004e57: JUMPI
00004e58: PUSH2 0x4e6b
00004e5b: DUP4
00004e5c: DUP11
00004e5d: PUSH1 0x01
00004e5f: PUSH1 0x01
00004e61: PUSH1 0xa0
00004e63: SHL
00004e64: SUB
00004e65: AND
00004e66: DUP4
00004e67: PUSH2 0x3920
00004e6a: JUMP
00004e6b: JUMPDEST
00004e6c: SWAP4
00004e6d: POP
00004e6e: POP
00004e6f: POP
00004e70: POP
00004e71: PUSH2 0x4b23
00004e74: JUMP
00004e75: JUMPDEST
00004e76: POP
00004e77: JUMPDEST
00004e78: PUSH2 0x4ea9
00004e7b: DUP3
00004e7c: PUSH2 0x4e9e
00004e7f: DUP9
00004e80: DUP12
00004e81: PUSH1 0x01
00004e83: PUSH1 0x01
00004e85: PUSH1 0xa0
00004e87: SHL
00004e88: SUB
00004e89: AND
00004e8a: DUP7
00004e8b: DUP2
00004e8c: PUSH2 0x4e97
00004e8f: JUMPI
00004e90: PUSH2 0x4e97
00004e93: PUSH2 0x55f9
00004e96: JUMP
00004e97: JUMPDEST
00004e98: DIV
00004e99: SWAP1
00004e9a: PUSH2 0x5331
00004e9d: JUMP
00004e9e: JUMPDEST
00004e9f: DUP1
00004ea0: DUP3
00004ea1: DIV
00004ea2: SWAP2
00004ea3: MOD
00004ea4: ISZERO
00004ea5: ISZERO
00004ea6: ADD
00004ea7: SWAP1
00004ea8: JUMP
00004ea9: JUMPDEST
00004eaa: SWAP3
00004eab: POP
00004eac: POP
00004ead: POP
00004eae: PUSH2 0x4b23
00004eb1: JUMP
00004eb2: JUMPDEST
00004eb3: PUSH1 0x01
00004eb5: PUSH1 0x01
00004eb7: PUSH1 0xa0
00004eb9: SHL
00004eba: SUB
00004ebb: DUP8
00004ebc: AND
00004ebd: DUP6
00004ebe: DUP2
00004ebf: MUL
00004ec0: SWAP1
00004ec1: DUP7
00004ec2: DUP3
00004ec3: DUP2
00004ec4: PUSH2 0x4ecf
00004ec7: JUMPI
00004ec8: PUSH2 0x4ecf
00004ecb: PUSH2 0x55f9
00004ece: JUMP
00004ecf: JUMPDEST
00004ed0: DIV
00004ed1: EQ
00004ed2: PUSH2 0x4eda
00004ed5: JUMPI
00004ed6: PUSH1 0x00
00004ed8: DUP1
00004ed9: REVERT
00004eda: JUMPDEST
00004edb: DUP1
00004edc: DUP3
00004edd: GT
00004ede: PUSH2 0x4ee6
00004ee1: JUMPI
00004ee2: PUSH1 0x00
00004ee4: DUP1
00004ee5: REVERT
00004ee6: JUMPDEST
00004ee7: PUSH2 0x4ea9
00004eea: PUSH2 0x4eff
00004eed: DUP4
00004eee: DUP11
00004eef: PUSH1 0x01
00004ef1: PUSH1 0x01
00004ef3: PUSH1 0xa0
00004ef5: SHL
00004ef6: SUB
00004ef7: AND
00004ef8: DUP5
00004ef9: DUP7
00004efa: SUB
00004efb: PUSH2 0x3920
00004efe: JUMP
00004eff: JUMPDEST
00004f00: PUSH2 0x5341
00004f03: JUMP
00004f04: JUMPDEST
00004f05: DUP2
00004f06: ISZERO
00004f07: PUSH2 0x4f71
00004f0a: JUMPI
00004f0b: PUSH2 0x4f6a
00004f0e: PUSH2 0x4eff
00004f11: PUSH1 0x01
00004f13: PUSH1 0x01
00004f15: PUSH1 0xa0
00004f17: SHL
00004f18: SUB
00004f19: DUP7
00004f1a: GT
00004f1b: ISZERO
00004f1c: PUSH2 0x4f3c
00004f1f: JUMPI
00004f20: PUSH2 0x4f37
00004f23: DUP7
00004f24: PUSH1 0x01
00004f26: PUSH1 0x60
00004f28: SHL
00004f29: DUP10
00004f2a: PUSH1 0x01
00004f2c: PUSH1 0x01
00004f2e: PUSH1 0x80
00004f30: SHL
00004f31: SUB
00004f32: AND
00004f33: PUSH2 0x3742
00004f36: JUMP
00004f37: JUMPDEST
00004f38: PUSH2 0x4f5a
00004f3b: JUMP
00004f3c: JUMPDEST
00004f3d: PUSH1 0x01
00004f3f: PUSH1 0x01
00004f41: PUSH1 0x80
00004f43: SHL
00004f44: SUB
00004f45: DUP8
00004f46: AND
00004f47: PUSH1 0x60
00004f49: DUP8
00004f4a: SWAP1
00004f4b: SHL
00004f4c: DUP2
00004f4d: PUSH2 0x4f58
00004f50: JUMPI
00004f51: PUSH2 0x4f58
00004f54: PUSH2 0x55f9
00004f57: JUMP
00004f58: JUMPDEST
00004f59: DIV
00004f5a: JUMPDEST
00004f5b: PUSH1 0x01
00004f5d: PUSH1 0x01
00004f5f: PUSH1 0xa0
00004f61: SHL
00004f62: SUB
00004f63: DUP10
00004f64: AND
00004f65: SWAP1
00004f66: PUSH2 0x5331
00004f69: JUMP
00004f6a: JUMPDEST
00004f6b: SWAP1
00004f6c: POP
00004f6d: PUSH2 0x4b23
00004f70: JUMP
00004f71: JUMPDEST
00004f72: PUSH1 0x00
00004f74: PUSH1 0x01
00004f76: PUSH1 0x01
00004f78: PUSH1 0xa0
00004f7a: SHL
00004f7b: SUB
00004f7c: DUP6
00004f7d: GT
00004f7e: ISZERO
00004f7f: PUSH2 0x4f9f
00004f82: JUMPI
00004f83: PUSH2 0x4f9a
00004f86: DUP6
00004f87: PUSH1 0x01
00004f89: PUSH1 0x60
00004f8b: SHL
00004f8c: DUP9
00004f8d: PUSH1 0x01
00004f8f: PUSH1 0x01
00004f91: PUSH1 0x80
00004f93: SHL
00004f94: SUB
00004f95: AND
00004f96: PUSH2 0x3920
00004f99: JUMP
00004f9a: JUMPDEST
00004f9b: PUSH2 0x4fbc
00004f9e: JUMP
00004f9f: JUMPDEST
00004fa0: PUSH2 0x4fbc
00004fa3: PUSH1 0x60
00004fa5: DUP7
00004fa6: SWAP1
00004fa7: SHL
00004fa8: PUSH1 0x01
00004faa: PUSH1 0x01
00004fac: PUSH1 0x80
00004fae: SHL
00004faf: SUB
00004fb0: DUP9
00004fb1: AND
00004fb2: DUP1
00004fb3: DUP3
00004fb4: DIV
00004fb5: SWAP2
00004fb6: MOD
00004fb7: ISZERO
00004fb8: ISZERO
00004fb9: ADD
00004fba: SWAP1
00004fbb: JUMP
00004fbc: JUMPDEST
00004fbd: SWAP1
00004fbe: POP
00004fbf: DUP1
00004fc0: DUP8
00004fc1: PUSH1 0x01
00004fc3: PUSH1 0x01
00004fc5: PUSH1 0xa0
00004fc7: SHL
00004fc8: SUB
00004fc9: AND
00004fca: GT
00004fcb: PUSH2 0x4fd3
00004fce: JUMPI
00004fcf: PUSH1 0x00
00004fd1: DUP1
00004fd2: REVERT
00004fd3: JUMPDEST
00004fd4: PUSH1 0x01
00004fd6: PUSH1 0x01
00004fd8: PUSH1 0xa0
00004fda: SHL
00004fdb: SUB
00004fdc: DUP8
00004fdd: AND
00004fde: SUB
00004fdf: SWAP1
00004fe0: POP
00004fe1: SWAP6
00004fe2: SWAP5
00004fe3: POP
00004fe4: POP
00004fe5: POP
00004fe6: POP
00004fe7: POP
00004fe8: JUMP
00004fe9: JUMPDEST
00004fea: PUSH1 0x02
00004fec: DUP2
00004fed: DUP2
00004fee: SIGNEXTEND
00004fef: PUSH1 0x00
00004ff1: DUP2
00004ff2: DUP2
00004ff3: MSTORE
00004ff4: PUSH1 0x20
00004ff6: DUP6
00004ff7: SWAP1
00004ff8: MSTORE
00004ff9: PUSH1 0x40
00004ffb: DUP2
00004ffc: KECCAK256
00004ffd: PUSH1 0x01
00004fff: DUP2
00005000: ADD
00005001: DUP1
00005002: SLOAD
00005003: DUP4
00005004: DUP4
00005005: SSTORE
00005006: PUSH1 0x01
00005008: PUSH1 0x01
0000500a: PUSH1 0xb0
0000500c: SHL
0000500d: SUB
0000500e: NOT
0000500f: DUP2
00005010: AND
00005011: SWAP1
00005012: SWAP2
00005013: SSTORE
00005014: DUP2
00005015: DUP6
00005016: ADD
00005017: DUP4
00005018: SWAP1
00005019: SSTORE
0000501a: PUSH1 0x03
0000501c: SWAP1
0000501d: SWAP2
0000501e: ADD
0000501f: SWAP2
00005020: SWAP1
00005021: SWAP2
00005022: SSTORE
00005023: PUSH1 0x01
00005025: PUSH1 0x80
00005027: SHL
00005028: DUP2
00005029: DIV
0000502a: DUP4
0000502b: SIGNEXTEND
0000502c: SWAP3
0000502d: PUSH1 0x01
0000502f: PUSH1 0x98
00005031: SHL
00005032: SWAP1
00005033: SWAP2
00005034: DIV
00005035: SWAP1
00005036: SIGNEXTEND
00005037: SWAP1
00005038: PUSH3 0x0d89e7
0000503c: NOT
0000503d: EQ
0000503e: DUP1
0000503f: PUSH2 0x5059
00005042: JUMPI
00005043: POP
00005044: PUSH2 0x5050
00005047: PUSH3 0x0d89e7
0000504b: NOT
0000504c: PUSH2 0x5756
0000504f: JUMP
00005050: JUMPDEST
00005051: PUSH1 0x02
00005053: SIGNEXTEND
00005054: DUP4
00005055: PUSH1 0x02
00005057: SIGNEXTEND
00005058: EQ
00005059: JUMPDEST
0000505a: ISZERO
0000505b: PUSH2 0x50b2
0000505e: JUMPI
0000505f: PUSH1 0x02
00005061: DUP4
00005062: SWAP1
00005063: SIGNEXTEND
00005064: PUSH1 0x00
00005066: SWAP1
00005067: DUP2
00005068: MSTORE
00005069: PUSH1 0x20
0000506b: DUP6
0000506c: SWAP1
0000506d: MSTORE
0000506e: PUSH1 0x40
00005070: SWAP1
00005071: KECCAK256
00005072: PUSH1 0x01
00005074: ADD
00005075: DUP1
00005076: SLOAD
00005077: PUSH3 0xffffff
0000507b: DUP1
0000507c: DUP6
0000507d: AND
0000507e: PUSH1 0x01
00005080: PUSH1 0x80
00005082: SHL
00005083: MUL
00005084: PUSH3 0xffffff
00005088: PUSH1 0x80
0000508a: SHL
0000508b: NOT
0000508c: SWAP2
0000508d: DUP6
0000508e: AND
0000508f: PUSH1 0x01
00005091: PUSH1 0x98
00005093: SHL
00005094: MUL
00005095: SWAP2
00005096: SWAP1
00005097: SWAP2
00005098: AND
00005099: PUSH6 0xffffffffffff
000050a0: PUSH1 0x80
000050a2: SHL
000050a3: NOT
000050a4: SWAP1
000050a5: SWAP3
000050a6: AND
000050a7: SWAP2
000050a8: SWAP1
000050a9: SWAP2
000050aa: OR
000050ab: OR
000050ac: SWAP1
000050ad: SSTORE
000050ae: PUSH2 0x5138
000050b1: JUMP
000050b2: JUMPDEST
000050b3: DUP1
000050b4: PUSH1 0x02
000050b6: SIGNEXTEND
000050b7: DUP3
000050b8: PUSH1 0x02
000050ba: SIGNEXTEND
000050bb: SUB
000050bc: PUSH2 0x50d8
000050bf: JUMPI
000050c0: PUSH1 0x40
000050c2: MLOAD
000050c3: PUSH4 0x0d6e0949
000050c8: PUSH1 0xe0
000050ca: SHL
000050cb: DUP2
000050cc: MSTORE
000050cd: PUSH1 0x04
000050cf: ADD
000050d0: PUSH1 0x40
000050d2: MLOAD
000050d3: DUP1
000050d4: SWAP2
000050d5: SUB
000050d6: SWAP1
000050d7: REVERT
000050d8: JUMPDEST
000050d9: PUSH1 0x02
000050db: DUP3
000050dc: DUP2
000050dd: SIGNEXTEND
000050de: PUSH1 0x00
000050e0: SWAP1
000050e1: DUP2
000050e2: MSTORE
000050e3: PUSH1 0x20
000050e5: DUP7
000050e6: SWAP1
000050e7: MSTORE
000050e8: PUSH1 0x40
000050ea: DUP1
000050eb: DUP3
000050ec: KECCAK256
000050ed: PUSH1 0x01
000050ef: SWAP1
000050f0: DUP2
000050f1: ADD
000050f2: DUP1
000050f3: SLOAD
000050f4: PUSH3 0xffffff
000050f8: DUP1
000050f9: DUP9
000050fa: AND
000050fb: PUSH1 0x01
000050fd: PUSH1 0x98
000050ff: SHL
00005100: MUL
00005101: PUSH3 0xffffff
00005105: PUSH1 0x98
00005107: SHL
00005108: NOT
00005109: SWAP1
0000510a: SWAP3
0000510b: AND
0000510c: SWAP2
0000510d: SWAP1
0000510e: SWAP2
0000510f: OR
00005110: SWAP1
00005111: SWAP2
00005112: SSTORE
00005113: SWAP4
00005114: DUP6
00005115: SWAP1
00005116: SIGNEXTEND
00005117: DUP4
00005118: MSTORE
00005119: SWAP2
0000511a: KECCAK256
0000511b: ADD
0000511c: DUP1
0000511d: SLOAD
0000511e: SWAP2
0000511f: DUP5
00005120: AND
00005121: PUSH1 0x01
00005123: PUSH1 0x80
00005125: SHL
00005126: MUL
00005127: PUSH3 0xffffff
0000512b: PUSH1 0x80
0000512d: SHL
0000512e: NOT
0000512f: SWAP1
00005130: SWAP3
00005131: AND
00005132: SWAP2
00005133: SWAP1
00005134: SWAP2
00005135: OR
00005136: SWAP1
00005137: SSTORE
00005138: JUMPDEST
00005139: SWAP3
0000513a: POP
0000513b: SWAP3
0000513c: SWAP1
0000513d: POP
0000513e: JUMP
0000513f: JUMPDEST
00005140: PUSH1 0x01
00005142: SWAP1
00005143: DUP2
00005144: ADD
00005145: SWAP1
00005146: PUSH1 0x00
00005148: SWAP1
00005149: PUSH1 0x08
0000514b: DUP4
0000514c: DUP2
0000514d: SAR
0000514e: PUSH2 0x0d8a
00005151: ADD
00005152: SWAP1
00005153: SHR
00005154: SWAP1
00005155: DUP3
00005156: SWAP1
00005157: PUSH2 0xffff
0000515a: DUP4
0000515b: AND
0000515c: SHL
0000515d: DUP6
0000515e: AND
0000515f: PUSH4 0xffffffff
00005164: AND
00005165: ISZERO
00005166: PUSH2 0x51a2
00005169: JUMPI
0000516a: PUSH2 0x5173
0000516d: DUP8
0000516e: DUP6
0000516f: PUSH2 0x5357
00005172: JUMP
00005173: JUMPDEST
00005174: SWAP1
00005175: SWAP5
00005176: POP
00005177: SWAP1
00005178: SWAP3
00005179: POP
0000517a: SWAP1
0000517b: POP
0000517c: DUP1
0000517d: ISZERO
0000517e: PUSH2 0x5188
00005181: JUMPI
00005182: POP
00005183: POP
00005184: PUSH2 0x4abd
00005187: JUMP
00005188: JUMPDEST
00005189: PUSH2 0x5199
0000518c: DUP7
0000518d: PUSH2 0x0d8b
00005190: DUP5
00005191: ADD
00005192: PUSH1 0x01
00005194: SIGNEXTEND
00005195: PUSH2 0x5357
00005198: JUMP
00005199: JUMPDEST
0000519a: SWAP1
0000519b: SWAP5
0000519c: POP
0000519d: SWAP1
0000519e: SWAP3
0000519f: POP
000051a0: SWAP1
000051a1: POP
000051a2: JUMPDEST
000051a3: DUP1
000051a4: PUSH2 0x51e5
000051a7: JUMPI
000051a8: PUSH2 0x51c0
000051ab: DUP6
000051ac: PUSH4 0xffffffff
000051b1: AND
000051b2: DUP4
000051b3: PUSH1 0x01
000051b5: ADD
000051b6: SWAP4
000051b7: POP
000051b8: DUP4
000051b9: PUSH1 0x01
000051bb: SIGNEXTEND
000051bc: PUSH2 0x5388
000051bf: JUMP
000051c0: JUMPDEST
000051c1: SWAP1
000051c2: SWAP4
000051c3: POP
000051c4: SWAP1
000051c5: POP
000051c6: DUP1
000051c7: PUSH2 0x51d8
000051ca: JUMPI
000051cb: POP
000051cc: PUSH3 0x0d89e8
000051d0: SWAP2
000051d1: POP
000051d2: PUSH2 0x4abd
000051d5: SWAP1
000051d6: POP
000051d7: JUMP
000051d8: JUMPDEST
000051d9: PUSH2 0x51e2
000051dc: DUP7
000051dd: DUP5
000051de: PUSH2 0x54d1
000051e1: JUMP
000051e2: JUMPDEST
000051e3: SWAP3
000051e4: POP
000051e5: JUMPDEST
000051e6: PUSH2 0x4d59
000051e9: DUP8
000051ea: PUSH2 0x0d89
000051ed: NOT
000051ee: DUP6
000051ef: ADD
000051f0: PUSH2 0x54d1
000051f3: JUMP
000051f4: JUMPDEST
000051f5: PUSH1 0x02
000051f7: DUP4
000051f8: SWAP1
000051f9: SIGNEXTEND
000051fa: PUSH3 0x0d89e7
000051fe: NOT
000051ff: EQ
00005200: DUP1
00005201: PUSH2 0x521b
00005204: JUMPI
00005205: POP
00005206: PUSH2 0x5212
00005209: PUSH3 0x0d89e7
0000520d: NOT
0000520e: PUSH2 0x5756
00005211: JUMP
00005212: JUMPDEST
00005213: PUSH1 0x02
00005215: SIGNEXTEND
00005216: DUP4
00005217: PUSH1 0x02
00005219: SIGNEXTEND
0000521a: EQ
0000521b: JUMPDEST
0000521c: PUSH2 0x45f1
0000521f: JUMPI
00005220: DUP3
00005221: PUSH1 0x02
00005223: SIGNEXTEND
00005224: DUP3
00005225: PUSH1 0x02
00005227: SIGNEXTEND
00005228: SLT
00005229: DUP1
0000522a: ISZERO
0000522b: PUSH2 0x5239
0000522e: JUMPI
0000522f: POP
00005230: DUP3
00005231: PUSH1 0x02
00005233: SIGNEXTEND
00005234: DUP2
00005235: PUSH1 0x02
00005237: SIGNEXTEND
00005238: SGT
00005239: JUMPDEST
0000523a: PUSH2 0x5256
0000523d: JUMPI
0000523e: PUSH1 0x40
00005240: MLOAD
00005241: PUSH4 0xe45ac17d
00005246: PUSH1 0xe0
00005248: SHL
00005249: DUP2
0000524a: MSTORE
0000524b: PUSH1 0x04
0000524d: ADD
0000524e: PUSH1 0x40
00005250: MLOAD
00005251: DUP1
00005252: SWAP2
00005253: SUB
00005254: SWAP1
00005255: REVERT
00005256: JUMPDEST
00005257: PUSH1 0x02
00005259: DUP4
0000525a: DUP2
0000525b: SIGNEXTEND
0000525c: PUSH1 0x00
0000525e: SWAP1
0000525f: DUP2
00005260: MSTORE
00005261: PUSH1 0x20
00005263: SWAP6
00005264: SWAP1
00005265: SWAP6
00005266: MSTORE
00005267: PUSH1 0x40
00005269: DUP1
0000526a: DUP7
0000526b: KECCAK256
0000526c: PUSH1 0x01
0000526e: SWAP1
0000526f: DUP2
00005270: ADD
00005271: DUP1
00005272: SLOAD
00005273: PUSH6 0xffffffffffff
0000527a: PUSH1 0x80
0000527c: SHL
0000527d: NOT
0000527e: AND
0000527f: PUSH1 0x01
00005281: PUSH1 0x98
00005283: SHL
00005284: PUSH3 0xffffff
00005288: DUP8
00005289: DUP2
0000528a: AND
0000528b: DUP3
0000528c: MUL
0000528d: PUSH3 0xffffff
00005291: PUSH1 0x80
00005293: SHL
00005294: NOT
00005295: SWAP1
00005296: DUP2
00005297: AND
00005298: SWAP4
00005299: SWAP1
0000529a: SWAP4
0000529b: OR
0000529c: PUSH1 0x01
0000529e: PUSH1 0x80
000052a0: SHL
000052a1: DUP11
000052a2: DUP4
000052a3: AND
000052a4: DUP2
000052a5: MUL
000052a6: SWAP2
000052a7: SWAP1
000052a8: SWAP2
000052a9: OR
000052aa: SWAP1
000052ab: SWAP5
000052ac: SSTORE
000052ad: SWAP8
000052ae: DUP7
000052af: SIGNEXTEND
000052b0: DUP11
000052b1: MSTORE
000052b2: DUP5
000052b3: DUP11
000052b4: KECCAK256
000052b5: DUP5
000052b6: ADD
000052b7: DUP1
000052b8: SLOAD
000052b9: PUSH3 0xffffff
000052bd: PUSH1 0x98
000052bf: SHL
000052c0: NOT
000052c1: AND
000052c2: SWAP9
000052c3: SWAP1
000052c4: SWAP10
000052c5: AND
000052c6: SWAP1
000052c7: DUP2
000052c8: MUL
000052c9: SWAP8
000052ca: SWAP1
000052cb: SWAP8
000052cc: OR
000052cd: SWAP1
000052ce: SWAP8
000052cf: SSTORE
000052d0: SWAP4
000052d1: SWAP1
000052d2: SWAP3
000052d3: SIGNEXTEND
000052d4: DUP7
000052d5: MSTORE
000052d6: SWAP1
000052d7: SWAP5
000052d8: KECCAK256
000052d9: SWAP1
000052da: SWAP4
000052db: ADD
000052dc: DUP1
000052dd: SLOAD
000052de: SWAP1
000052df: SWAP3
000052e0: AND
000052e1: SWAP3
000052e2: MUL
000052e3: SWAP2
000052e4: SWAP1
000052e5: SWAP2
000052e6: OR
000052e7: SWAP1
000052e8: SSTORE
000052e9: JUMP
000052ea: JUMPDEST
000052eb: DUP2
000052ec: PUSH1 0x00
000052ee: DUP1
000052ef: PUSH2 0x52f8
000052f2: DUP8
000052f3: DUP6
000052f4: PUSH2 0x54fd
000052f7: JUMP
000052f8: JUMPDEST
000052f9: SWAP2
000052fa: POP
000052fb: SWAP2
000052fc: POP
000052fd: DUP2
000052fe: ISZERO
000052ff: PUSH2 0x5327
00005302: JUMPI
00005303: PUSH2 0x5313
00005306: DUP7
00005307: PUSH2 0x0d8a
0000530a: DUP4
0000530b: ADD
0000530c: PUSH1 0x01
0000530e: SIGNEXTEND
0000530f: PUSH2 0x54fd
00005312: JUMP
00005313: JUMPDEST
00005314: SWAP1
00005315: SWAP3
00005316: POP
00005317: SWAP1
00005318: POP
00005319: DUP2
0000531a: ISZERO
0000531b: PUSH2 0x5327
0000531e: JUMPI
0000531f: PUSH1 0x01
00005321: DUP2
00005322: SHL
00005323: DUP4
00005324: XOR
00005325: SWAP3
00005326: POP
00005327: JUMPDEST
00005328: POP
00005329: POP
0000532a: SWAP5
0000532b: SWAP4
0000532c: POP
0000532d: POP
0000532e: POP
0000532f: POP
00005330: JUMP
00005331: JUMPDEST
00005332: DUP1
00005333: DUP3
00005334: ADD
00005335: DUP3
00005336: DUP2
00005337: LT
00005338: ISZERO
00005339: PUSH2 0x4480
0000533c: JUMPI
0000533d: PUSH1 0x00
0000533f: DUP1
00005340: REVERT
00005341: JUMPDEST
00005342: DUP1
00005343: PUSH1 0x01
00005345: PUSH1 0x01
00005347: PUSH1 0xa0
00005349: SHL
0000534a: SUB
0000534b: DUP2
0000534c: AND
0000534d: DUP2
0000534e: EQ
0000534f: PUSH2 0x3a28
00005352: JUMPI
00005353: PUSH1 0x00
00005355: DUP1
00005356: REVERT
00005357: JUMPDEST
00005358: PUSH1 0x08
0000535a: DUP2
0000535b: SWAP1
0000535c: SAR
0000535d: PUSH1 0x01
0000535f: DUP2
00005360: SWAP1
00005361: SIGNEXTEND
00005362: PUSH1 0x00
00005364: SWAP1
00005365: DUP2
00005366: MSTORE
00005367: PUSH1 0x20
00005369: DUP5
0000536a: SWAP1
0000536b: MSTORE
0000536c: PUSH1 0x40
0000536e: DUP2
0000536f: KECCAK256
00005370: SLOAD
00005371: DUP2
00005372: SWAP1
00005373: PUSH2 0x537c
00005376: SWAP1
00005377: DUP6
00005378: PUSH2 0x5388
0000537b: JUMP
0000537c: JUMPDEST
0000537d: SWAP4
0000537e: SWAP7
0000537f: SWAP1
00005380: SWAP6
00005381: POP
00005382: SWAP3
00005383: SWAP4
00005384: POP
00005385: POP
00005386: POP
00005387: JUMP
00005388: JUMPDEST
00005389: PUSH1 0x00
0000538b: DUP1
0000538c: PUSH1 0xff
0000538e: DUP4
0000538f: AND
00005390: DUP5
00005391: DUP2
00005392: SHR
00005393: DUP1
00005394: DUP4
00005395: SUB
00005396: PUSH2 0x53a4
00005399: JUMPI
0000539a: DUP5
0000539b: PUSH1 0xff
0000539d: OR
0000539e: SWAP4
0000539f: POP
000053a0: PUSH2 0x54c8
000053a3: JUMP
000053a4: JUMPDEST
000053a5: PUSH32 0x5555555555555555555555555555555555555555555555555555555555555555
000053c6: PUSH1 0x00
000053c8: DUP3
000053c9: SWAP1
000053ca: SUB
000053cb: DUP3
000053cc: AND
000053cd: SWAP1
000053ce: DUP2
000053cf: AND
000053d0: ISZERO
000053d1: PUSH1 0x01
000053d3: PUSH1 0x01
000053d5: PUSH1 0x80
000053d7: SHL
000053d8: SUB
000053d9: DUP3
000053da: AND
000053db: ISZERO
000053dc: PUSH1 0x07
000053de: SHL
000053df: OR
000053e0: PUSH1 0x01
000053e2: PUSH1 0x01
000053e4: PUSH1 0x40
000053e6: SHL
000053e7: SUB
000053e8: PUSH1 0x01
000053ea: PUSH1 0x80
000053ec: SHL
000053ed: SUB
000053ee: PUSH1 0x01
000053f0: PUSH1 0xc0
000053f2: SHL
000053f3: SUB
000053f4: DUP3
000053f5: AND
000053f6: ISZERO
000053f7: PUSH1 0x06
000053f9: SHL
000053fa: OR
000053fb: PUSH28 0xffffffff00000000ffffffff00000000ffffffff00000000ffffffff
00005418: DUP3
00005419: AND
0000541a: ISZERO
0000541b: PUSH1 0x05
0000541d: SHL
0000541e: OR
0000541f: PUSH30 0xffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff
0000543e: DUP3
0000543f: AND
00005440: ISZERO
00005441: PUSH1 0x04
00005443: SHL
00005444: OR
00005445: PUSH31 0xff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff
00005465: DUP3
00005466: AND
00005467: ISZERO
00005468: PUSH1 0x03
0000546a: SHL
0000546b: OR
0000546c: PUSH32 0x0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f
0000548d: DUP3
0000548e: AND
0000548f: ISZERO
00005490: PUSH1 0x02
00005492: SHL
00005493: OR
00005494: PUSH32 0x3333333333333333333333333333333333333333333333333333333333333333
000054b5: SWAP1
000054b6: SWAP2
000054b7: AND
000054b8: ISZERO
000054b9: PUSH1 0x01
000054bb: SHL
000054bc: OR
000054bd: PUSH1 0xff
000054bf: AND
000054c0: DUP6
000054c1: ADD
000054c2: SWAP4
000054c3: POP
000054c4: PUSH1 0x01
000054c6: SWAP3
000054c7: POP
000054c8: JUMPDEST
000054c9: POP
000054ca: POP
000054cb: SWAP3
000054cc: POP
000054cd: SWAP3
000054ce: SWAP1
000054cf: POP
000054d0: JUMP
000054d1: JUMPDEST
000054d2: PUSH1 0x01
000054d4: DUP2
000054d5: SWAP1
000054d6: SIGNEXTEND
000054d7: PUSH1 0x00
000054d9: SWAP1
000054da: DUP2
000054db: MSTORE
000054dc: PUSH1 0x20
000054de: DUP4
000054df: SWAP1
000054e0: MSTORE
000054e1: PUSH1 0x40
000054e3: SWAP1
000054e4: KECCAK256
000054e5: SLOAD
000054e6: PUSH1 0x08
000054e8: DUP3
000054e9: SWAP1
000054ea: SHL
000054eb: SWAP1
000054ec: PUSH2 0x54f5
000054ef: SWAP1
000054f0: DUP3
000054f1: PUSH2 0x5388
000054f4: JUMP
000054f5: JUMPDEST
000054f6: POP
000054f7: SWAP4
000054f8: SWAP3
000054f9: POP
000054fa: POP
000054fb: POP
000054fc: JUMP
000054fd: JUMPDEST
000054fe: PUSH1 0x08
00005500: DUP2
00005501: SWAP1
00005502: SAR
00005503: PUSH1 0x01
00005505: DUP2
00005506: DUP2
00005507: SIGNEXTEND
00005508: PUSH1 0x00
0000550a: SWAP1
0000550b: DUP2
0000550c: MSTORE
0000550d: PUSH1 0x20
0000550f: SWAP5
00005510: SWAP1
00005511: SWAP5
00005512: MSTORE
00005513: PUSH1 0x40
00005515: SWAP1
00005516: SWAP4
00005517: KECCAK256
00005518: DUP1
00005519: SLOAD
0000551a: PUSH1 0xff
0000551c: SWAP1
0000551d: SWAP4
0000551e: AND
0000551f: SWAP4
00005520: SWAP1
00005521: SWAP4
00005522: SHL
00005523: DUP1
00005524: DUP4
00005525: XOR
00005526: SWAP1
00005527: SWAP4
00005528: SSTORE
00005529: SWAP2
0000552a: DUP2
0000552b: EQ
0000552c: SWAP1
0000552d: ISZERO
0000552e: XOR
0000552f: SWAP2
00005530: JUMP
00005531: JUMPDEST
00005532: PUSH1 0x40
00005534: DUP1
00005535: MLOAD
00005536: PUSH1 0x60
00005538: DUP2
00005539: ADD
0000553a: DUP3
0000553b: MSTORE
0000553c: PUSH1 0x00
0000553e: DUP1
0000553f: DUP3
00005540: MSTORE
00005541: PUSH1 0x20
00005543: DUP3
00005544: ADD
00005545: DUP2
00005546: SWAP1
00005547: MSTORE
00005548: SWAP2
00005549: DUP2
0000554a: ADD
0000554b: SWAP2
0000554c: SWAP1
0000554d: SWAP2
0000554e: MSTORE
0000554f: SWAP1
00005550: JUMP
00005551: JUMPDEST
00005552: PUSH1 0x40
00005554: MLOAD
00005555: DUP1
00005556: PUSH1 0x40
00005558: ADD
00005559: PUSH1 0x40
0000555b: MSTORE
0000555c: DUP1
0000555d: PUSH1 0x00
0000555f: DUP2
00005560: MSTORE
00005561: PUSH1 0x20
00005563: ADD
00005564: PUSH1 0x00
00005566: DUP2
00005567: MSTORE
00005568: POP
00005569: SWAP1
0000556a: JUMP
0000556b: JUMPDEST
0000556c: PUSH2 0x0d5e
0000556f: PUSH2 0x57ba
00005572: JUMP
00005573: JUMPDEST
00005574: PUSH4 0x4e487b71
00005579: PUSH1 0xe0
0000557b: SHL
0000557c: PUSH1 0x00
0000557e: MSTORE
0000557f: PUSH1 0x11
00005581: PUSH1 0x04
00005583: MSTORE
00005584: PUSH1 0x24
00005586: PUSH1 0x00
00005588: REVERT
00005589: JUMPDEST
0000558a: DUP1
0000558b: DUP3
0000558c: ADD
0000558d: DUP1
0000558e: DUP3
0000558f: GT
00005590: ISZERO
00005591: PUSH2 0x4480
00005594: JUMPI
00005595: PUSH2 0x4480
00005598: PUSH2 0x5573
0000559b: JUMP
0000559c: JUMPDEST
0000559d: PUSH1 0x00
0000559f: PUSH1 0x0f
000055a1: DUP3
000055a2: SWAP1
000055a3: SIGNEXTEND
000055a4: PUSH1 0x01
000055a6: PUSH1 0x7f
000055a8: SHL
000055a9: DUP2
000055aa: ADD
000055ab: PUSH2 0x55b6
000055ae: JUMPI
000055af: PUSH2 0x55b6
000055b2: PUSH2 0x5573
000055b5: JUMP
000055b6: JUMPDEST
000055b7: PUSH1 0x00
000055b9: SUB
000055ba: SWAP3
000055bb: SWAP2
000055bc: POP
000055bd: POP
000055be: JUMP
000055bf: JUMPDEST
000055c0: DUP2
000055c1: DUP2
000055c2: SUB
000055c3: DUP2
000055c4: DUP2
000055c5: GT
000055c6: ISZERO
000055c7: PUSH2 0x4480
000055ca: JUMPI
000055cb: PUSH2 0x4480
000055ce: PUSH2 0x5573
000055d1: JUMP
000055d2: JUMPDEST
000055d3: PUSH1 0x01
000055d5: PUSH1 0x01
000055d7: PUSH1 0x80
000055d9: SHL
000055da: SUB
000055db: DUP2
000055dc: DUP2
000055dd: AND
000055de: DUP4
000055df: DUP3
000055e0: AND
000055e1: ADD
000055e2: SWAP1
000055e3: DUP1
000055e4: DUP3
000055e5: GT
000055e6: ISZERO
000055e7: PUSH2 0x55f2
000055ea: JUMPI
000055eb: PUSH2 0x55f2
000055ee: PUSH2 0x5573
000055f1: JUMP
000055f2: JUMPDEST
000055f3: POP
000055f4: SWAP3
000055f5: SWAP2
000055f6: POP
000055f7: POP
000055f8: JUMP
000055f9: JUMPDEST
000055fa: PUSH4 0x4e487b71
000055ff: PUSH1 0xe0
00005601: SHL
00005602: PUSH1 0x00
00005604: MSTORE
00005605: PUSH1 0x12
00005607: PUSH1 0x04
00005609: MSTORE
0000560a: PUSH1 0x24
0000560c: PUSH1 0x00
0000560e: REVERT
0000560f: JUMPDEST
00005610: PUSH4 0x4e487b71
00005615: PUSH1 0xe0
00005617: SHL
00005618: PUSH1 0x00
0000561a: MSTORE
0000561b: PUSH1 0x01
0000561d: PUSH1 0x04
0000561f: MSTORE
00005620: PUSH1 0x24
00005622: PUSH1 0x00
00005624: REVERT
00005625: JUMPDEST
00005626: DUP1
00005627: MLOAD
00005628: PUSH2 0xffff
0000562b: DUP2
0000562c: AND
0000562d: DUP2
0000562e: EQ
0000562f: PUSH2 0x3a28
00005632: JUMPI
00005633: PUSH1 0x00
00005635: DUP1
00005636: REVERT
00005637: JUMPDEST
00005638: PUSH1 0x00
0000563a: PUSH1 0x20
0000563c: DUP3
0000563d: DUP5
0000563e: SUB
0000563f: SLT
00005640: ISZERO
00005641: PUSH2 0x5649
00005644: JUMPI
00005645: PUSH1 0x00
00005647: DUP1
00005648: REVERT
00005649: JUMPDEST
0000564a: PUSH2 0x3619
0000564d: DUP3
0000564e: PUSH2 0x5625
00005651: JUMP
00005652: JUMPDEST
00005653: PUSH3 0xffffff
00005657: DUP2
00005658: DUP2
00005659: AND
0000565a: DUP4
0000565b: DUP3
0000565c: AND
0000565d: ADD
0000565e: SWAP1
0000565f: DUP1
00005660: DUP3
00005661: GT
00005662: ISZERO
00005663: PUSH2 0x55f2
00005666: JUMPI
00005667: PUSH2 0x55f2
0000566a: PUSH2 0x5573
0000566d: JUMP
0000566e: JUMPDEST
0000566f: DUP2
00005670: DUP4
00005671: MSTORE
00005672: DUP2
00005673: DUP2
00005674: PUSH1 0x20
00005676: DUP6
00005677: ADD
00005678: CALLDATACOPY
00005679: POP
0000567a: PUSH1 0x00
0000567c: DUP3
0000567d: DUP3
0000567e: ADD
0000567f: PUSH1 0x20
00005681: SWAP1
00005682: DUP2
00005683: ADD
00005684: SWAP2
00005685: SWAP1
00005686: SWAP2
00005687: MSTORE
00005688: PUSH1 0x1f
0000568a: SWAP1
0000568b: SWAP2
0000568c: ADD
0000568d: PUSH1 0x1f
0000568f: NOT
00005690: AND
00005691: SWAP1
00005692: SWAP2
00005693: ADD
00005694: ADD
00005695: SWAP1
00005696: JUMP
00005697: JUMPDEST
00005698: DUP5
00005699: DUP2
0000569a: MSTORE
0000569b: DUP4
0000569c: PUSH1 0x20
0000569e: DUP3
0000569f: ADD
000056a0: MSTORE
000056a1: PUSH1 0x60
000056a3: PUSH1 0x40
000056a5: DUP3
000056a6: ADD
000056a7: MSTORE
000056a8: PUSH1 0x00
000056aa: PUSH2 0x35ea
000056ad: PUSH1 0x60
000056af: DUP4
000056b0: ADD
000056b1: DUP5
000056b2: DUP7
000056b3: PUSH2 0x566e
000056b6: JUMP
000056b7: JUMPDEST
000056b8: PUSH1 0x01
000056ba: PUSH1 0x01
000056bc: PUSH1 0xa0
000056be: SHL
000056bf: SUB
000056c0: SWAP2
000056c1: SWAP1
000056c2: SWAP2
000056c3: AND
000056c4: DUP2
000056c5: MSTORE
000056c6: PUSH1 0x20
000056c8: ADD
000056c9: SWAP1
000056ca: JUMP
000056cb: JUMPDEST
000056cc: PUSH1 0x00
000056ce: PUSH1 0x20
000056d0: DUP3
000056d1: DUP5
000056d2: SUB
000056d3: SLT
000056d4: ISZERO
000056d5: PUSH2 0x56dd
000056d8: JUMPI
000056d9: PUSH1 0x00
000056db: DUP1
000056dc: REVERT
000056dd: JUMPDEST
000056de: POP
000056df: MLOAD
000056e0: SWAP2
000056e1: SWAP1
000056e2: POP
000056e3: JUMP
000056e4: JUMPDEST
000056e5: DUP2
000056e6: DUP2
000056e7: SUB
000056e8: PUSH1 0x00
000056ea: DUP4
000056eb: SLT
000056ec: DUP1
000056ed: ISZERO
000056ee: DUP4
000056ef: DUP4
000056f0: SGT
000056f1: AND
000056f2: DUP4
000056f3: DUP4
000056f4: SLT
000056f5: DUP3
000056f6: AND
000056f7: OR
000056f8: ISZERO
000056f9: PUSH2 0x55f2
000056fc: JUMPI
000056fd: PUSH2 0x55f2
00005700: PUSH2 0x5573
00005703: JUMP
00005704: JUMPDEST
00005705: PUSH1 0x00
00005707: PUSH1 0x20
00005709: DUP3
0000570a: DUP5
0000570b: SUB
0000570c: SLT
0000570d: ISZERO
0000570e: PUSH2 0x5716
00005711: JUMPI
00005712: PUSH1 0x00
00005714: DUP1
00005715: REVERT
00005716: JUMPDEST
00005717: DUP2
00005718: MLOAD
00005719: PUSH1 0x01
0000571b: PUSH1 0x01
0000571d: PUSH1 0xe0
0000571f: SHL
00005720: SUB
00005721: NOT
00005722: DUP2
00005723: AND
00005724: DUP2
00005725: EQ
00005726: PUSH2 0x3619
00005729: JUMPI
0000572a: PUSH1 0x00
0000572c: DUP1
0000572d: REVERT
0000572e: JUMPDEST
0000572f: DUP1
00005730: DUP3
00005731: ADD
00005732: DUP3
00005733: DUP2
00005734: SLT
00005735: PUSH1 0x00
00005737: DUP4
00005738: SLT
00005739: DUP1
0000573a: ISZERO
0000573b: DUP3
0000573c: AND
0000573d: DUP3
0000573e: ISZERO
0000573f: DUP3
00005740: AND
00005741: OR
00005742: ISZERO
00005743: PUSH2 0x574e
00005746: JUMPI
00005747: PUSH2 0x574e
0000574a: PUSH2 0x5573
0000574d: JUMP
0000574e: JUMPDEST
0000574f: POP
00005750: POP
00005751: SWAP3
00005752: SWAP2
00005753: POP
00005754: POP
00005755: JUMP
00005756: JUMPDEST
00005757: PUSH1 0x00
00005759: DUP2
0000575a: PUSH1 0x02
0000575c: SIGNEXTEND
0000575d: PUSH3 0x7fffff
00005761: NOT
00005762: DUP2
00005763: SUB
00005764: PUSH2 0x55b6
00005767: JUMPI
00005768: PUSH2 0x55b6
0000576b: PUSH2 0x5573
0000576e: JUMP
0000576f: JUMPDEST
00005770: PUSH1 0x00
00005772: DUP1
00005773: PUSH1 0x00
00005775: PUSH1 0x60
00005777: DUP5
00005778: DUP7
00005779: SUB
0000577a: SLT
0000577b: ISZERO
0000577c: PUSH2 0x5784
0000577f: JUMPI
00005780: PUSH1 0x00
00005782: DUP1
00005783: REVERT
00005784: JUMPDEST
00005785: PUSH2 0x578d
00005788: DUP5
00005789: PUSH2 0x5625
0000578c: JUMP
0000578d: JUMPDEST
0000578e: SWAP3
0000578f: POP
00005790: PUSH1 0x20
00005792: DUP5
00005793: ADD
00005794: MLOAD
00005795: DUP1
00005796: PUSH1 0x02
00005798: SIGNEXTEND
00005799: DUP2
0000579a: EQ
0000579b: PUSH2 0x57a3
0000579e: JUMPI
0000579f: PUSH1 0x00
000057a1: DUP1
000057a2: REVERT
000057a3: JUMPDEST
000057a4: SWAP2
000057a5: POP
000057a6: PUSH2 0x57b1
000057a9: PUSH1 0x40
000057ab: DUP6
000057ac: ADD
000057ad: PUSH2 0x5625
000057b0: JUMP
000057b1: JUMPDEST
000057b2: SWAP1
000057b3: POP
000057b4: SWAP3
000057b5: POP
000057b6: SWAP3
000057b7: POP
000057b8: SWAP3
000057b9: JUMP
000057ba: JUMPDEST
000057bb: PUSH4 0x4e487b71
000057c0: PUSH1 0xe0
000057c2: SHL
000057c3: PUSH1 0x00
000057c5: MSTORE
000057c6: PUSH1 0x51
000057c8: PUSH1 0x04
000057ca: MSTORE
000057cb: PUSH1 0x24
000057cd: PUSH1 0x00
000057cf: REVERT
000057d0: INVALID
000057d1: LOG1
000057d2: PUSH5 0x736f6c6343
000057d8: STOP
000057d9: ADDMOD
000057da: EQ
000057db: STOP
000057dc: EXP

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x9edcb5f9c582e775f18ed01d048b3d5d4f7798e3bba23bd5910f1c40e54ecf6e
call_targets: 0x915fd34cadd63907b51eb64dddc2eadd114a0bed
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x9edcb5f9c582e775f18ed01d048b3d5d4f7798e3bba23bd5910f1c40e54ecf6e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x915fd34cadd63907b51eb64dddc2eadd114a0bed"
    ],
    "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": "0x050a4d21",
            "selector": "0x050a4d21",
            "calldata_variants": [
                "0x050a4d21",
                "0x050a4d210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0902f1ac",
            "selector": "0x0902f1ac",
            "calldata_variants": [
                "0x0902f1ac",
                "0x0902f1ac0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0dfe1681",
            "selector": "0x0dfe1681",
            "calldata_variants": [
                "0x0dfe1681",
                "0x0dfe16810000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x128acb08",
            "selector": "0x128acb08",
            "calldata_variants": [
                "0x128acb08",
                "0x128acb080000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a686502",
            "selector": "0x1a686502",
            "calldata_variants": [
                "0x1a686502",
                "0x1a6865020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1dd19cb4",
            "selector": "0x1dd19cb4",
            "calldata_variants": [
                "0x1dd19cb4",
                "0x1dd19cb40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x240a875a",
            "selector": "0x240a875a",
            "calldata_variants": [
                "0x240a875a",
                "0x240a875a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3b3bc70e",
            "selector": "0x3b3bc70e",
            "calldata_variants": [
                "0x3b3bc70e",
                "0x3b3bc70e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4240,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4987,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 8149,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 11,
    "guards_detected": [],
    "untrusted_call_count": 11
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x9edcb5f9c582e775f18ed01d048b3d5d4f7798e3bba23bd5910f1c40e54ecf6e
call_targets: 0x915fd34cadd63907b51eb64dddc2eadd114a0bed
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x9edcb5f9c582e775f18ed01d048b3d5d4f7798e3bba23bd5910f1c40e54ecf6e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x915fd34cadd63907b51eb64dddc2eadd114a0bed"
    ],
    "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": "0x050a4d21",
            "selector": "0x050a4d21",
            "calldata_variants": [
                "0x050a4d21",
                "0x050a4d210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0902f1ac",
            "selector": "0x0902f1ac",
            "calldata_variants": [
                "0x0902f1ac",
                "0x0902f1ac0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0dfe1681",
            "selector": "0x0dfe1681",
            "calldata_variants": [
                "0x0dfe1681",
                "0x0dfe16810000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x128acb08",
            "selector": "0x128acb08",
            "calldata_variants": [
                "0x128acb08",
                "0x128acb080000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a686502",
            "selector": "0x1a686502",
            "calldata_variants": [
                "0x1a686502",
                "0x1a6865020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1dd19cb4",
            "selector": "0x1dd19cb4",
            "calldata_variants": [
                "0x1dd19cb4",
                "0x1dd19cb40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x240a875a",
            "selector": "0x240a875a",
            "calldata_variants": [
                "0x240a875a",
                "0x240a875a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3b3bc70e",
            "selector": "0x3b3bc70e",
            "calldata_variants": [
                "0x3b3bc70e",
                "0x3b3bc70e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4240,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4987,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 8149,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 11,
    "guards_detected": []
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 15
}