0125e957-6d16-4951-9544-c9f5d3c64088
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 31242 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 104711 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 104712 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 104713 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 104714 | capability.graph | complete | 1 / 3 | 1 week ago |
| 104715 | detector.run | complete | 1 / 3 | 1 week ago |
| 104716 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:416513] OpenAI Codex v0.77.0 (research preview)
[codex:416513] --------
[codex:416513] workdir: /tmp/codex-multi-e9ed7tak
[codex:416513] model: gpt-5.2-codex
[codex:416513] provider: openai
[codex:416513] approval: never
[codex:416513] sandbox: read-only
[codex:416513] reasoning effort: xhigh
[codex:416513] reasoning summaries: auto
[codex:416513] session id: 019b7d3c-b636-70c2-afa9-03003a3286f2
[codex:416513] --------
[codex:416513] user
[codex:416513] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:416513]
[codex:416513] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:416513]
[codex:416513] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:416513] - Gas inefficiency, code quality, naming, or best practices
[codex:416513] - Theoretical vulnerabilities without a clear extraction path
[codex:416513] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:416513] - Front-running unless it enables theft beyond MEV
[codex:416513] - DoS, griefing, or issues that don't result in attacker profit
[codex:416513] - Missing events, view function issues, or informational findings
[codex:416513]
[codex:416513] HIGH-VALUE PATTERNS TO HUNT:
[codex:416513] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:416513] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:416513] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:416513] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:416513] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:416513] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:416513] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:416513] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:416513] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:416513]
[codex:416513] For each finding, you MUST provide:
[codex:416513] 1. Exact file and line numbers of vulnerable code
[codex:416513] 2. Step-by-step exploit transaction sequence
[codex:416513] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:416513]
[codex:416513] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:416513]
[codex:416513] Output MUST be valid JSON matching the provided schema.
[codex:416513] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:416513] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:416513] mcp startup: no servers
[codex:416513]
[codex:416513] thinking
[codex:416513] **Preparing to read AUDIT_BUNDLE.txt**
[codex:416513] exec
[codex:416513] /bin/bash -lc ls in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] AUDIT_BUNDLE.txt
[codex:416513] codex-output-schema.json
[codex:416513] contracts
[codex:416513] exec
[codex:416513] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 5ms:
[codex:416513] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:416513]
[codex:416513] ================================================================================
[codex:416513] FILE: contracts/Contract.sol
[codex:416513] ================================================================================
[codex:416513] /*
[codex:416513]
[codex:416513] Copyright 2019 The Hydro Protocol Foundation
[codex:416513]
[codex:416513] Licensed under the Apache License, Version 2.0 (the "License");
[codex:416513] you may not use this file except in compliance with the License.
[codex:416513] You may obtain a copy of the License at
[codex:416513]
[codex:416513] http://www.apache.org/licenses/LICENSE-2.0
[codex:416513]
[codex:416513] Unless required by applicable law or agreed to in writing, software
[codex:416513] distributed under the License is distributed on an "AS IS" BASIS,
[codex:416513] WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
[codex:416513] See the License for the specific language governing permissions and
[codex:416513] limitations under the License.
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing large audit bundle for exploits**
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "initialize|init|owner|admin|upgrade|delegate|withdraw|transferOut|transferIn|call" AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 8ms:
[codex:416513] 53: Types.Signature calldata signature
[codex:416513] 271: function approveDelegate(address delegate)
[codex:416513] 274: Relayer.approveDelegate(state, delegate);
[codex:416513] 277: function revokeDelegate(address delegate)
[codex:416513] 280: Relayer.revokeDelegate(state, delegate);
[codex:416513] 372: Types.Order calldata order
[codex:416513] 439: Requires.requireDecimalGreaterThanOne(market.withdrawRate);
[codex:416513] 440: require(market.withdrawRate > market.liquidateRate, "WITHDARW_RATE_LESS_OR_EQUAL_THAN_LIQUIDATE_RATE");
[codex:416513] 466: state.markets[marketID].withdrawRate = newWithdrawRate;
[codex:416513] 502: string calldata poolTokenName,
[codex:416513] 503: string calldata poolTokenSymbol,
[codex:416513] 511: LendingPool.initializeAssetLendingPool(state, asset);
[codex:416513] 571: state.auction.initiatorRewardRatio = newInitiatorRewardRatio;
[codex:416513] 705: * separately as an Types.OrderAddressSet to reduce call size data and save gas.
[codex:416513] 755: * this function may be called to block it from ever matching at the contract level.
[codex:416513] 1005: * HOT token ownership.
[codex:416513] 1173: address delegate
[codex:416513] 1177: state.relayer.relayerDelegates[msg.sender][delegate] = true;
[codex:416513] 1178: Events.logRelayerApproveDelegate(msg.sender, delegate);
[codex:416513] 1182: * Revoke an existing delegate
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential reentrancy vulnerabilities**
[codex:416513]
[codex:416513] I'm focusing on the withdraw and transfer logic in this older Solidity contract to find exploitable profit paths. The sequence of external token transfers happening before state updates raises red flags about possible reentrancy attacks, especially if the token is malicious. I'm also checking if withdraw is exposed to users and how batch actions might factor in. Let's dig into the withdrawal and batch action sections for more clues.
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '1600,1780p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] details.borrower = auction.borrower;
[codex:416513] details.marketID = auction.marketID;
[codex:416513] details.debtAsset = auction.debtAsset;
[codex:416513] details.collateralAsset = auction.collateralAsset;
[codex:416513]
[codex:416513] if (state.auction.auctions[auctionID].status == Types.AuctionStatus.Finished){
[codex:416513] details.finished = true;
[codex:416513] } else {
[codex:416513] details.finished = false;
[codex:416513] details.leftDebtAmount = LendingPool.getAmountBorrowed(
[codex:416513] state,
[codex:416513] auction.debtAsset,
[codex:416513] auction.borrower,
[codex:416513] auction.marketID
[codex:416513] );
[codex:416513] details.leftCollateralAmount = state.accounts[auction.borrower][auction.marketID].balances[auction.collateralAsset];
[codex:416513]
[codex:416513] details.ratio = auction.ratio(state);
[codex:416513]
[codex:416513] if (details.leftCollateralAmount != 0 && details.ratio != 0) {
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '1780,2100p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] toBalancePath,
[codex:416513] amount
[codex:416513] );
[codex:416513]
[codex:416513] if (toBalancePath.category == Types.BalanceCategory.CollateralAccount) {
[codex:416513] Events.logIncreaseCollateral(msg.sender, toBalancePath.marketID, asset, amount);
[codex:416513] }
[codex:416513] if (fromBalancePath.category == Types.BalanceCategory.CollateralAccount) {
[codex:416513] Events.logDecreaseCollateral(msg.sender, fromBalancePath.marketID, asset, amount);
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] function borrow(
[codex:416513] Store.State storage state,
[codex:416513] Action memory action
[codex:416513] )
[codex:416513] private
[codex:416513] {
[codex:416513] (
[codex:416513] uint16 marketID,
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '2100,2400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] Store.State storage state,
[codex:416513] address user,
[codex:416513] uint16 marketID,
[codex:416513] address asset,
[codex:416513] uint256 amount
[codex:416513] )
[codex:416513] internal
[codex:416513] {
[codex:416513] // update value of index at this moment in time
[codex:416513] updateIndex(state, asset);
[codex:416513]
[codex:416513] // compute the normalized value of 'amount'
[codex:416513] uint256 normalizedAmount = Decimal.divCeil(amount, state.pool.borrowIndex[asset]);
[codex:416513]
[codex:416513] // transfer assets to user's balance account
[codex:416513] Transfer.transferIn(state, asset, BalancePath.getMarketPath(user, marketID), amount);
[codex:416513] Requires.requireCashLessThanOrEqualContractBalance(state, asset);
[codex:416513]
[codex:416513] // update normalized amount borrowed by user
[codex:416513] state.pool.normalizedBorrow[user][marketID][asset] = state.pool.normalizedBorrow[user][marketID][asset].add(normalizedAmount);
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing reentrancy risks in withdraw flow**
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "Operations|owner|onlyOwner|operator|admin|governance|Auth|Authority|requireOwner|onlyOperator" AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] 426:library OperationsComponent {
[codex:416513] 871: * sign of the comparison operator.
[codex:416513] 1005: * HOT token ownership.
[codex:416513] 2474: event Approval(address indexed owner, address indexed spender, uint256 amount);
[codex:416513] 2499: * @param owner The address to query the the balance of.
[codex:416513] 2502: function balanceOf(address owner) public view returns (uint256 balance) {
[codex:416513] 2503: return balances[owner];
[codex:416513] 2549: * @dev Function to check the amount of tokens that an owner allowed to a spender.
[codex:416513] 2550: * @param owner address The address which owns the funds.
[codex:416513] 2555: address owner,
[codex:416513] 2562: return allowed[owner][spender];
[codex:416513] 2620: address _owner)
[codex:416513] 2641: address _owner,
[codex:416513] 2680: * @param owner The address to check.
[codex:416513] 2681: * @return The HOT balance for the owner address.
[codex:416513] 2685: address owner
[codex:416513] 2692: // return HydroToken(hotToken).balanceOf(owner);
[codex:416513] 2700: bytes32(uint256(uint160(owner)))
[codex:416513] 3476: address private _owner;
[codex:416513] 3483: /** @dev The Ownable constructor sets the original `owner` of the contract to the sender account. */
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing reentrancy risks with ERC777 tokens**
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "EIP712|domain|hashMessage" AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] 2867:library EIP712 {
[codex:416513] 2871: * Hash of the EIP712 Domain Separator Schema
[codex:416513] 2873: bytes32 private constant EIP712_DOMAIN_TYPEHASH = keccak256(
[codex:416513] 2874: abi.encodePacked("EIP712Domain(string name)")
[codex:416513] 2879: EIP712_DOMAIN_TYPEHASH,
[codex:416513] 2885: * Calculates EIP712 encoding for a hash struct in this EIP712 Domain.
[codex:416513] 2887: * @param eip712hash The EIP712 hash struct.
[codex:416513] 2888: * @return EIP712 hash applied to this EIP712 Domain.
[codex:416513] 2890: function hashMessage(
[codex:416513] 4255: EIP712
[codex:416513] 4264: * @param hash Hash bytes calculated by taking the EIP712 hash of the passed order data
[codex:416513] 4289: } else if (method == uint8(SignatureMethod.EIP712)) {
[codex:416513] 4824: bytes32 public constant EIP712_ORDER_TYPE = keccak256(
[codex:416513] 4831: * Calculates the Keccak-256 EIP712 hash of the order using the Hydro Protocol domain.
[codex:416513] 4834: * @return Fully qualified EIP712 hash of the order in the Hydro Protocol domain.
[codex:416513] 4843: orderHash = EIP712.hashMessage(_hashContent(order));
[codex:416513] 4848: * Calculates the EIP712 hash of the order.
[codex:416513] 4865: * EIP712_ORDER_TYPE,
[codex:416513] 4878: bytes32 orderType = EIP712_ORDER_TYPE;
[codex:416513] 4886: // [0...32) bytes: EIP712_ORDER_TYPE
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '2860,2915p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 5ms:
[codex:416513] pure
[codex:416513] returns (uint256)
[codex:416513] {
[codex:416513] return target.mul(BASE).divCeil(d);
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] library EIP712 {
[codex:416513] string private constant DOMAIN_NAME = "Hydro Protocol";
[codex:416513]
[codex:416513] /**
[codex:416513] * Hash of the EIP712 Domain Separator Schema
[codex:416513] */
[codex:416513] bytes32 private constant EIP712_DOMAIN_TYPEHASH = keccak256(
[codex:416513] abi.encodePacked("EIP712Domain(string name)")
[codex:416513] );
[codex:416513]
[codex:416513] bytes32 private constant DOMAIN_SEPARATOR = keccak256(
[codex:416513] abi.encodePacked(
[codex:416513] EIP712_DOMAIN_TYPEHASH,
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing signature replay and access controls**
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "library Auctions|fillAuction|liquidate|auction" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] 136: count = state.auction.auctionsCount;
[codex:416513] 144: return state.auction.currentAuctions;
[codex:416513] 147: function getAuctionDetails(uint32 auctionID)
[codex:416513] 152: Requires.requireAuctionExist(state, auctionID);
[codex:416513] 153: details = Auctions.getAuctionDetails(state, auctionID);
[codex:416513] 156: function fillAuctionWithAmount(
[codex:416513] 157: uint32 auctionID,
[codex:416513] 162: Requires.requireAuctionExist(state, auctionID);
[codex:416513] 163: Requires.requireAuctionNotFinished(state, auctionID);
[codex:416513] 164: Auctions.fillAuctionWithAmount(state, auctionID, amount);
[codex:416513] 167: function liquidateAccount(
[codex:416513] 172: returns (bool hasAuction, uint32 auctionID)
[codex:416513] 175: (hasAuction, auctionID) = Auctions.liquidate(state, user, marketID);
[codex:416513] 436: Requires.requireDecimalLessOrEquanThanOne(market.auctionRatioStart);
[codex:416513] 437: Requires.requireDecimalLessOrEquanThanOne(market.auctionRatioPerBlock);
[codex:416513] 438: Requires.requireDecimalGreaterThanOne(market.liquidateRate);
[codex:416513] 440: require(market.withdrawRate > market.liquidateRate, "WITHDARW_RATE_LESS_OR_EQUAL_THAN_LIQUIDATE_RATE");
[codex:416513] 463: state.markets[marketID].auctionRatioStart = newAuctionRatioStart;
[codex:416513] 464: state.markets[marketID].auctionRatioPerBlock = newAuctionRatioPerBlock;
[codex:416513] 465: state.markets[marketID].liquidateRate = newLiquidateRate;
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '1240,1525p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] )
[codex:416513] internal
[codex:416513] view
[codex:416513] returns(bool)
[codex:416513] {
[codex:416513] return !state.relayer.hasExited[relayer];
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] library Auctions {
[codex:416513] using SafeMath for uint256;
[codex:416513] using SafeMath for int256;
[codex:416513] using Auction for Types.Auction;
[codex:416513]
[codex:416513] /**
[codex:416513] * Liquidate a collateral account
[codex:416513] */
[codex:416513] function liquidate(
[codex:416513] Store.State storage state,
[codex:416513] address user,
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '1525,1650p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 5ms:
[codex:416513]
[codex:416513] if (leftDebtAmount == 0) {
[codex:416513] endAuction(state, auction);
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] /**
[codex:416513] * Mark an auction as finished.
[codex:416513] * An auction typically ends either when it becomes fully filled, or when it expires and is closed
[codex:416513] */
[codex:416513] function endAuction(
[codex:416513] Store.State storage state,
[codex:416513] Types.Auction storage auction
[codex:416513] )
[codex:416513] private
[codex:416513] {
[codex:416513] auction.status = Types.AuctionStatus.Finished;
[codex:416513]
[codex:416513] state.accounts[auction.borrower][auction.marketID].status = Types.CollateralAccountStatus.Normal;
[codex:416513]
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing auction repayment mechanics**
[codex:416513] exec
[codex:416513] /bin/bash -lc "rg -n \"state\\.balances\\[\" AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 7ms:
[codex:416513] 1380: state.balances[msg.sender][auction.debtAsset] = SafeMath.sub(
[codex:416513] 1381: state.balances[msg.sender][auction.debtAsset],
[codex:416513] 1398: state.balances[msg.sender][auction.collateralAsset] = SafeMath.add(
[codex:416513] 1399: state.balances[msg.sender][auction.collateralAsset],
[codex:416513] 1404: state.balances[auction.initiator][auction.collateralAsset] = SafeMath.add(
[codex:416513] 1405: state.balances[auction.initiator][auction.collateralAsset],
[codex:416513] 1410: state.balances[auction.borrower][auction.collateralAsset] = SafeMath.add(
[codex:416513] 1411: state.balances[auction.borrower][auction.collateralAsset],
[codex:416513] 1472: state.balances[msg.sender][auction.debtAsset] = SafeMath.sub(
[codex:416513] 1473: state.balances[msg.sender][auction.debtAsset],
[codex:416513] 1486: state.balances[msg.sender][auction.collateralAsset] = SafeMath.add(
[codex:416513] 1487: state.balances[msg.sender][auction.collateralAsset],
[codex:416513] 4482: require(state.balances[user][asset] >= amount, "BALANCE_NOT_ENOUGH");
[codex:416513] 4786: return state.balances[path.user];
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing auction balance and state.cash interactions**
[codex:416513]
[codex:416513] I'm untangling how auctions shift internal balances without always updating state.cash, looking especially at how repayments affect liabilities and whether inconsistencies or subtle discrepancies arise between total balances and state.cash. This deep dive highlights complex token flow and potential edge cases with repayment amounts, leftover balances, and how they relate to overall accounting invariants.
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "library Exchange|matchOrders|cancelOrder|fill" AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 8ms:
[codex:416513] 156: function fillAuctionWithAmount(
[codex:416513] 164: Auctions.fillAuctionWithAmount(state, auctionID, amount);
[codex:416513] 371: function cancelOrder(
[codex:416513] 376: Exchange.cancelOrder(state, order);
[codex:416513] 389: function matchOrders(
[codex:416513] 394: Exchange.matchOrders(state, params);
[codex:416513] 422: amount = state.exchange.filled[orderHash];
[codex:416513] 684:library Exchange {
[codex:416513] 694: * Generally the filledAmount is specified in base token units, however in the case of a market
[codex:416513] 695: * buy order the filledAmount is specified in quote token units.
[codex:416513] 699: uint256 filledAmount;
[codex:416513] 707: function matchOrders(
[codex:416513] 741: // Update amount filled for this maker order.
[codex:416513] 742: state.exchange.filled[makerOrderInfo.orderHash] = makerOrderInfo.filledAmount;
[codex:416513] 745: // Update amount filled for this taker order.
[codex:416513] 746: state.exchange.filled[takerOrderInfo.orderHash] = takerOrderInfo.filledAmount;
[codex:416513] 761: function cancelOrder(
[codex:416513] 777: * fillable for any reason, or if the order signature is invalid.
[codex:416513] 781: * @return An OrderInfo object containing the hash and current amount filled
[codex:416513] 796: orderInfo.filledAmount = state.exchange.filled[orderInfo.orderHash];
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '660,980p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] uint256 bar;
[codex:416513]
[codex:416513] // HOT Token has 18 decimals
[codex:416513] hotBalance = hotBalance.div(10**18);
[codex:416513]
[codex:416513] for (uint256 i = 0; i < count; i++) {
[codex:416513] bar = uint256(uint32(bytes4(config << (2 + i * 5) * 8)));
[codex:416513]
[codex:416513] if (hotBalance < bar) {
[codex:416513] result = uint256(uint8(byte(config << (2 + i * 5 + 4) * 8)));
[codex:416513] break;
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] // If we haven't found a rate in the config yet, use the maximum rate.
[codex:416513] if (result == 0) {
[codex:416513] result = uint256(uint8(config[1]));
[codex:416513] }
[codex:416513]
[codex:416513] // Make sure our discount algorithm never returns a higher rate than the base.
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '980,1240p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] );
[codex:416513] }
[codex:416513]
[codex:416513] /**
[codex:416513] * Get the rate used to calculate the taker fee.
[codex:416513] *
[codex:416513] * @param orderParam The Types.OrderParam object representing the taker order data.
[codex:416513] * @param isParticipantRelayer Whether this relayer is participating in hot discount.
[codex:416513] * @return The final potentially discounted rate to use for the taker fee.
[codex:416513] */
[codex:416513] function getTakerFeeRate(
[codex:416513] Store.State storage state,
[codex:416513] Types.OrderParam memory orderParam,
[codex:416513] bool isParticipantRelayer
[codex:416513] )
[codex:416513] private
[codex:416513] view
[codex:416513] returns(uint256)
[codex:416513] {
[codex:416513] uint256 rawRate = orderParam.getAsTakerFeeRateFromOrderData();
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential contract vulnerabilities**
[codex:416513]
[codex:416513] I'm carefully investigating multiple parts of the contract for possible exploits, especially around signature replay issues, reentrancy in collateral withdrawal, and internal balance misaccounting. I'm also checking arithmetic operations and access controls to see if any subtle bugs could let an attacker profit or cause inconsistent states. There's a lot to consider!
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "library Requires" AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 8ms:
[codex:416513] 3724:library Requires {
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '3720,3960p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] }
[codex:416513]
[codex:416513] }
[codex:416513]
[codex:416513] library Requires {
[codex:416513] function requireAssetExist(
[codex:416513] Store.State storage state,
[codex:416513] address asset
[codex:416513] )
[codex:416513] internal
[codex:416513] view
[codex:416513] {
[codex:416513] require(isAssetExist(state, asset), "ASSET_NOT_EXIST");
[codex:416513] }
[codex:416513]
[codex:416513] function requireAssetNotExist(
[codex:416513] Store.State storage state,
[codex:416513] address asset
[codex:416513] )
[codex:416513] internal
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing price oracle usage**
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "PriceOracle|Oracle" contracts -g"*.sol"' in /tmp/codex-multi-e9ed7tak succeeded in 8ms:
[codex:416513] contracts/Contract.sol:77: function getAssetOraclePrice(address assetAddress)
[codex:416513] contracts/Contract.sol:83: price = AssemblyCall.getAssetPriceFromPriceOracle(
[codex:416513] contracts/Contract.sol:84: address(state.assets[assetAddress].priceOracle),
[codex:416513] contracts/Contract.sol:503: Requires.requirePriceOracleAddressValid(oracleAddress);
[codex:416513] contracts/Contract.sol:508: state.assets[asset].priceOracle = IPriceOracle(oracleAddress);
[codex:416513] contracts/Contract.sol:532: Requires.requirePriceOracleAddressValid(oracleAddress);
[codex:416513] contracts/Contract.sol:535: state.assets[asset].priceOracle = IPriceOracle(oracleAddress);
[codex:416513] contracts/Contract.sol:1923: uint256 baseUSDPrice = AssemblyCall.getAssetPriceFromPriceOracle(
[codex:416513] contracts/Contract.sol:1924: address(state.assets[baseAsset].priceOracle),
[codex:416513] contracts/Contract.sol:1927: uint256 quoteUSDPrice = AssemblyCall.getAssetPriceFromPriceOracle(
[codex:416513] contracts/Contract.sol:1928: address(state.assets[quoteAsset].priceOracle),
[codex:416513] contracts/Contract.sol:1987: uint256 assetUSDPrice = state.assets[asset].priceOracle.getPrice(asset);
[codex:416513] contracts/Contract.sol:2596:interface IPriceOracle {
[codex:416513] contracts/Contract.sol:2645: function getAssetPriceFromPriceOracle(
[codex:416513] contracts/Contract.sol:2654: // return state.assets[asset].priceOracle.getPrice(asset);
[codex:416513] contracts/Contract.sol:3794: function requirePriceOracleAddressValid(
[codex:416513] contracts/Contract.sol:3941: return state.assets[asset].priceOracle != IPriceOracle(address(0));
[codex:416513] contracts/Contract.sol:4605: IPriceOracle priceOracle;
[codex:416513]
[codex:416513] thinking
[codex:416513] **Investigating price oracle usage**
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '2600,2765p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513]
[codex:416513] interface IPriceOracle {
[codex:416513] /** return USD price of token */
[codex:416513] function getPrice(
[codex:416513] address asset
[codex:416513] )
[codex:416513] external
[codex:416513] view
[codex:416513] returns (uint256);
[codex:416513] }
[codex:416513]
[codex:416513] interface IStandardToken {
[codex:416513] function transfer(
[codex:416513] address _to,
[codex:416513] uint256 _amount
[codex:416513] )
[codex:416513] external
[codex:416513] returns (bool);
[codex:416513]
[codex:416513] function balanceOf(
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential vulnerabilities and logic in Exchange and LendingPool contracts**
[codex:416513]
[codex:416513] I’m walking through several functions like settleResults, matchOrders, and borrowing logic to see if any underflows, improper checks, or fee manipulations could lead to exploits. I’m verifying assumptions about array lengths, relayer verification, fee calculations, and collateral transfers, all while considering SafeMath protections and signature constraints. Next, I’ll check the Decimal library for any numeric issues.
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "library Decimal" AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 7ms:
[codex:416513] 2799:library Decimal {
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '2790,2865p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 5ms:
[codex:416513] function REBATE_RATE_BASE()
[codex:416513] internal
[codex:416513] pure
[codex:416513] returns (uint256)
[codex:416513] {
[codex:416513] return 100;
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] library Decimal {
[codex:416513] using SafeMath for uint256;
[codex:416513]
[codex:416513] uint256 constant BASE = 10**18;
[codex:416513]
[codex:416513] function one()
[codex:416513] internal
[codex:416513] pure
[codex:416513] returns (uint256)
[codex:416513] {
[codex:416513] return BASE;
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential integer vulnerability in asset cash handling**
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "library SafeMath" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] 4052:library SafeMath {
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '4040,4185p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] result := and (
[codex:416513] eq(callResult, 1),
[codex:416513] or(eq(returndatasize, 0), and(eq(returndatasize, 32), gt(returnValue, 0)))
[codex:416513] )
[codex:416513] }
[codex:416513]
[codex:416513] if (!result) {
[codex:416513] revert("TOKEN_TRANSFER_FROM_ERROR");
[codex:416513] }
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] library SafeMath {
[codex:416513]
[codex:416513] // Multiplies two numbers, reverts on overflow.
[codex:416513] function mul(
[codex:416513] uint256 a,
[codex:416513] uint256 b
[codex:416513] )
[codex:416513] internal
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing state.cash and balance invariants**
[codex:416513]
[codex:416513] I'm exploring how `state.cash` can become negative because it's an int256 and only partially checked, which may let attackers exploit liquidity checks by manipulating cash to bypass constraints. I'm also diving into how balance changes in auctions and lending operations affect `state.cash`, checking if any discrepancies or bugs arise from manual balance adjustments that don't sync with `state.cash`. Finally, I'm considering possible token minting vulnerabilities in the custom `LendingPoolToken`. I'll locate its contract to investigate further.
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "contract LendingPoolToken" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 7ms:
[codex:416513] 3677:contract LendingPoolToken is StandardToken, Ownable {
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '3660,3750p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] state,
[codex:416513] newInsuranceRatio
[codex:416513] );
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] contract Hydro is GlobalStore, ExternalFunctions, Operations {
[codex:416513] constructor(
[codex:416513] address _hotTokenAddress
[codex:416513] )
[codex:416513] public
[codex:416513] {
[codex:416513] state.exchange.hotTokenAddress = _hotTokenAddress;
[codex:416513] state.exchange.discountConfig = 0x043c000027106400004e205a000075305000009c404600000000000000000000;
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] contract LendingPoolToken is StandardToken, Ownable {
[codex:416513] string public name;
[codex:416513] string public symbol;
[codex:416513]
[codex:416513] thinking
[codex:416513] **Investigating token ownership and totalSupply shadowing**
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "contract StandardToken" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 7ms:
[codex:416513] 2467:contract StandardToken {
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '2440,2675p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] return (currentSupplyIndex, currentBorrowIndex);
[codex:416513] }
[codex:416513]
[codex:416513] function getNormalizedSupplyOf(
[codex:416513] Store.State storage state,
[codex:416513] address asset,
[codex:416513] address user
[codex:416513] )
[codex:416513] private
[codex:416513] view
[codex:416513] returns (uint256)
[codex:416513] {
[codex:416513] return state.assets[asset].lendingPoolToken.balanceOf(user);
[codex:416513] }
[codex:416513]
[codex:416513] function getTotalNormalizedSupply(
[codex:416513] Store.State storage state,
[codex:416513] address asset
[codex:416513] )
[codex:416513] private
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential vulnerabilities and logic issues**
[codex:416513]
[codex:416513] I’m reviewing various parts of the code for possible bugs or vulnerabilities, focusing on token supply handling, transfer mechanics, oracle calls, and fee calculations. Some spots seem safe but I’m keeping an eye on checks involving collateral accounts, oracle reentrancy risk, arithmetic in auctions, and precise fee computations to see if rounding or logic errors could be exploited. Let’s explore these nuances carefully.
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "getPartialAmount" AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 9ms:
[codex:416513] 1045: return SafeMath.getPartialAmountFloor(
[codex:416513] 4218: function getPartialAmountFloor(
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '4185,4245p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 5ms:
[codex:416513] *
[codex:416513] * ((numerator * multiple) % denominator) * 1000 >= numerator * multiple
[codex:416513] *
[codex:416513] * @param numerator The numerator of the proportion
[codex:416513] * @param denominator The denominator of the proportion
[codex:416513] * @param multiple The amount we want a proportion of
[codex:416513] * @return Boolean indicating if there is a rounding error when calculating the proportion
[codex:416513] */
[codex:416513] function isRoundingError(
[codex:416513] uint256 numerator,
[codex:416513] uint256 denominator,
[codex:416513] uint256 multiple
[codex:416513] )
[codex:416513] internal
[codex:416513] pure
[codex:416513] returns (bool)
[codex:416513] {
[codex:416513] // numerator.mul(multiple).mod(denominator).mul(1000) >= numerator.mul(multiple)
[codex:416513] return mul(mod(mul(numerator, multiple), denominator), 1000) >= mul(numerator, multiple);
[codex:416513] }
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential EIP712 signature replay issue**
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "library Signature" AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] 4251:library Signature {
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '4245,4325p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] returns (uint256)
[codex:416513] {
[codex:416513] return a < b ? a : b;
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] library Signature {
[codex:416513]
[codex:416513] enum SignatureMethod {
[codex:416513] EthSign,
[codex:416513] EIP712
[codex:416513] }
[codex:416513]
[codex:416513] /**
[codex:416513] * Validate a signature given a hash calculated from the order data, the signer, and the
[codex:416513] * signature data passed in with the order.
[codex:416513] *
[codex:416513] * This function will revert the transaction if the signature method is invalid.
[codex:416513] *
[codex:416513] * @param hash Hash bytes calculated by taking the EIP712 hash of the passed order data
[codex:416513]
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential contract state and balance inconsistencies**
[codex:416513]
[codex:416513] I'm considering various contract balances and state variables to see if they could be manipulated, focusing on mismatch risks between state.cash and user balances due to auctions, transfers, or batch actions. I’m exploring if negative or out-of-sync states can enable exploits in borrow, withdraw, or auction scenarios, while also checking if the order and relayer logic might introduce subtle vulnerabilities. So far, the checks and reverts seem to cover most cases, but I’m carefully reviewing edge cases around integer underflows, reentrancy, and state synchronization.
[codex:416513] thinking
[codex:416513] **Examining auction-related state.cash adjustments**
[codex:416513]
[codex:416513] I'm untangling how auction repay and insurance claims affect state.cash and user balances to spot any misalignments that might allow extra borrowing. After careful review, state.cash updates and balance reductions appear matched correctly through repay and insurance compensation, preventing mismatch exploits. I'm also checking token ownership and indexing functions for subtle issues like reentrancy or division errors.
[codex:416513] exec
[codex:416513] /bin/bash -lc 'rg -n "getCurrentIndex" -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-e9ed7tak succeeded in 7ms:
[codex:416513] 199: return LendingPool.getCurrentIndex(state, asset);
[codex:416513] 2270: (uint256 currentSupplyIndex, uint256 currentBorrowIndex) = getCurrentIndex(state, asset);
[codex:416513] 2307: (uint256 currentSupplyIndex, uint256 currentBorrowIndex) = getCurrentIndex(state, asset);
[codex:416513] 2351: (uint256 currentSupplyIndex, ) = getCurrentIndex(state, asset);
[codex:416513] 2366: (, uint256 currentBorrowIndex) = getCurrentIndex(state, asset);
[codex:416513] 2378: (uint256 currentSupplyIndex, ) = getCurrentIndex(state, asset);
[codex:416513] 2390: (, uint256 currentBorrowIndex) = getCurrentIndex(state, asset);
[codex:416513] 2421: function getCurrentIndex(
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '2400,2445p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] view
[codex:416513] returns (uint256)
[codex:416513] {
[codex:416513] return Decimal.mulFloor(getTotalNormalizedSupply(state, asset), currentSupplyIndex);
[codex:416513] }
[codex:416513]
[codex:416513] function getTotalBorrowWithIndex(
[codex:416513] Store.State storage state,
[codex:416513] address asset,
[codex:416513] uint256 currentBorrowIndex
[codex:416513] )
[codex:416513] private
[codex:416513] view
[codex:416513] returns (uint256)
[codex:416513] {
[codex:416513] return Decimal.mulCeil(state.pool.normalizedTotalBorrow[asset], currentBorrowIndex);
[codex:416513] }
[codex:416513]
[codex:416513] /**
[codex:416513] * Compute the current value of poolIndex based on the time elapsed and the interest rate
[codex:416513]
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential gas fee extraction exploit**
[codex:416513] thinking
[codex:416513] **Evaluating fee-on-transfer token withdrawal impact**
[codex:416513]
[codex:416513] I'm considering if withdrawing tokens with transfer fees actually lets an attacker profit or just causes a loss due to fees on deposit and withdrawal, but it might still harm other depositors by creating a contract balance shortfall. I'll also check SafeERC20's implementation to verify transfer call safety.
[codex:416513] exec
[codex:416513] /bin/bash -lc "sed -n '3960,4055p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] }
[codex:416513] }
[codex:416513]
[codex:416513] return false;
[codex:416513] }
[codex:416513]
[codex:416513] }
[codex:416513]
[codex:416513] library SafeERC20 {
[codex:416513] function safeTransfer(
[codex:416513] address token,
[codex:416513] address to,
[codex:416513] uint256 amount
[codex:416513] )
[codex:416513] internal
[codex:416513] {
[codex:416513] bool result;
[codex:416513]
[codex:416513] assembly {
[codex:416513] let tmp1 := mload(0)
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential reentrancy and state vulnerabilities**
[codex:416513] exec
[codex:416513] /bin/bash -lc "rg -n \"state\\.cash\" AUDIT_BUNDLE.txt" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] 188: cashableAmount = address(this).balance - uint256(state.cash[asset]);
[codex:416513] 190: cashableAmount = IStandardToken(asset).balanceOf(address(this)) - uint256(state.cash[asset]);
[codex:416513] 2225: state.cash[asset] = state.cash[asset].add(amount);
[codex:416513] 3789: if (state.cash[asset] > 0) {
[codex:416513] 3790: require(uint256(state.cash[asset]) <= address(this).balance, "CONTRACT_BALANCE_NOT_ENOUGH");
[codex:416513] 3793: if (state.cash[asset] > 0) {
[codex:416513] 3794: require(uint256(state.cash[asset]) <= IStandardToken(asset).balanceOf(address(this)), "CONTRACT_BALANCE_NOT_ENOUGH");
[codex:416513] 4543: state.cash[asset] = state.cash[asset].add(amount);
[codex:416513] 4556: state.cash[asset] = state.cash[asset].sub(amount);
[codex:416513]
[codex:416513]
[codex:416513] thinking
[codex:416513] **Analyzing potential vulnerabilities and exploits**
[codex:416513] thinking
[codex:416513] **Verifying detailed code vulnerabilities and exploits**
[codex:416513]
[codex:416513] I'll carefully list potential exploit scenarios with line numbers and confirm if they meet the criteria for concrete profit extraction, focusing on domain separator issues in EIP712 and safe transfer handling. This will help ensure only actionable findings get reported.
[codex:416513] exec
[codex:416513] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '2860,4900p'" in /tmp/codex-multi-e9ed7tak succeeded in 9ms:
[codex:416513] 2860 pure
[codex:416513] 2861 returns (uint256)
[codex:416513] 2862 {
[codex:416513] 2863 return target.mul(BASE).divCeil(d);
[codex:416513] 2864 }
[codex:416513] 2865 }
[codex:416513] 2866
[codex:416513] 2867 library EIP712 {
[codex:416513] 2868 string private constant DOMAIN_NAME = "Hydro Protocol";
[codex:416513] 2869
[codex:416513] 2870 /**
[codex:416513] 2871 * Hash of the EIP712 Domain Separator Schema
[codex:416513] 2872 */
[codex:416513] 2873 bytes32 private constant EIP712_DOMAIN_TYPEHASH = keccak256(
[codex:416513] 2874 abi.encodePacked("EIP712Domain(string name)")
[codex:416513] 2875 );
[codex:416513] 2876
[codex:416513] 2877 bytes32 private constant DOMAIN_SEPARATOR = keccak256(
[codex:416513] 2878 abi.encodePacked(
[codex:416513] 2879 EIP712_DOMAIN_TYPEHASH,
[codex:416513]
[codex:416513] thinking
[codex:416513] **Assessing signature replay vulnerability**
[codex:416513] exec
[codex:416513] /bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '4240,4305p'" in /tmp/codex-multi-e9ed7tak succeeded in 6ms:
[codex:416513] 4240 uint256 a,
[codex:416513] 4241 uint256 b
[codex:416513] 4242 )
[codex:416513] 4243 internal
[codex:416513] 4244 pure
[codex:416513] 4245 returns (uint256)
[codex:416513] 4246 {
[codex:416513] 4247 return a < b ? a : b;
[codex:416513] 4248 }
[codex:416513] 4249 }
[codex:416513] 4250
[codex:416513] 4251 library Signature {
[codex:416513] 4252
[codex:416513] 4253 enum SignatureMethod {
[codex:416513] 4254 EthSign,
[codex:416513] 4255 EIP712
[codex:416513] 4256 }
[codex:416513] 4257
[codex:416513] 4258 /**
[codex:416513] 4259 * Validate a signature given a hash calculated from the order data, the signer, and the
[codex:416513]
[codex:416513] thinking
[codex:416513] **Verifying vulnerability details and line numbers**
[codex:416513] exec
[codex:416513] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '2860,2895p'" in /tmp/codex-multi-e9ed7tak succeeded in 8ms:
[codex:416513] 2860 }
[codex:416513] 2861
[codex:416513] 2862 library EIP712 {
[codex:416513] 2863 string private constant DOMAIN_NAME = "Hydro Protocol";
[codex:416513] 2864
[codex:416513] 2865 /**
[codex:416513] 2866 * Hash of the EIP712 Domain Separator Schema
[codex:416513] 2867 */
[codex:416513] 2868 bytes32 private constant EIP712_DOMAIN_TYPEHASH = keccak256(
[codex:416513] 2869 abi.encodePacked("EIP712Domain(string name)")
[codex:416513] 2870 );
[codex:416513] 2871
[codex:416513] 2872 bytes32 private constant DOMAIN_SEPARATOR = keccak256(
[codex:416513] 2873 abi.encodePacked(
[codex:416513] 2874 EIP712_DOMAIN_TYPEHASH,
[codex:416513] 2875 keccak256(bytes(DOMAIN_NAME))
[codex:416513] 2876 )
[codex:416513] 2877 );
[codex:416513] 2878
[codex:416513] 2879 /**
[codex:416513]
[codex:416513] thinking
[codex:416513] **Checking line numbers for methods**
[codex:416513] exec
[codex:416513] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '4820,4855p'" in /tmp/codex-multi-e9ed7tak succeeded in 7ms:
[codex:416513] 4820 abi.encodePacked(
[codex:416513] 4821 "Order(address trader,address relayer,address baseAsset,address quoteAsset,uint256 baseAssetAmount,uint256 quoteAssetAmount,uint256 gasTokenAmount,bytes32 data)"
[codex:416513] 4822 )
[codex:416513] 4823 );
[codex:416513] 4824
[codex:416513] 4825 /**
[codex:416513] 4826 * Calculates the Keccak-256 EIP712 hash of the order using the Hydro Protocol domain.
[codex:416513] 4827 *
[codex:416513] 4828 * @param order The order data struct.
[codex:416513] 4829 * @return Fully qualified EIP712 hash of the order in the Hydro Protocol domain.
[codex:416513] 4830 */
[codex:416513] 4831 function getHash(
[codex:416513] 4832 Types.Order memory order
[codex:416513] 4833 )
[codex:416513] 4834 internal
[codex:416513] 4835 pure
[codex:416513] 4836 returns (bytes32 orderHash)
[codex:416513] 4837 {
[codex:416513] 4838 orderHash = EIP712.hashMessage(_hashContent(order));
[codex:416513] 4839 return orderHash;
[codex:416513]
[codex:416513] thinking
[codex:416513] **Checking signature validation location**
[codex:416513] exec
[codex:416513] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '4238,4305p'" in /tmp/codex-multi-e9ed7tak succeeded in 7ms:
[codex:416513] 4238 internal
[codex:416513] 4239 pure
[codex:416513] 4240 returns (uint256)
[codex:416513] 4241 {
[codex:416513] 4242 return a < b ? a : b;
[codex:416513] 4243 }
[codex:416513] 4244 }
[codex:416513] 4245
[codex:416513] 4246 library Signature {
[codex:416513] 4247
[codex:416513] 4248 enum SignatureMethod {
[codex:416513] 4249 EthSign,
[codex:416513] 4250 EIP712
[codex:416513] 4251 }
[codex:416513] 4252
[codex:416513] 4253 /**
[codex:416513] 4254 * Validate a signature given a hash calculated from the order data, the signer, and the
[codex:416513] 4255 * signature data passed in with the order.
[codex:416513] 4256 *
[codex:416513] 4257 * This function will revert the transaction if the signature method is invalid.
[codex:416513]
[codex:416513] thinking
[codex:416513] **Preparing structured JSON details**
[codex:416513] codex
[codex:416513] {"no_findings":false,"summary":"Found 1 concrete signature replay vector enabling cross-contract order execution and fund extraction via replayed orders.","findings":[{"severity":"high","category":"auth","title":"EIP712 domain omits chainId and verifying contract, enabling cross-contract order replay","exploit_scenario":"1) Victim signs an order off-chain for a different Hydro deployment (or chain) where the domain is still just \"Hydro Protocol\". 2) Victim also has balances in this contract. 3) Attacker (the order’s relayer or its approved delegate) calls `matchOrders` on this contract using the victim’s signed order plus an attacker-controlled counter-order at a favorable price. 4) Because the order hash is derived from an EIP712 domain that lacks chainId/contract binding, `Signature.isValidSignature` accepts the replayed signature and the exchange settles, transferring victim assets to the attacker.","recommendation":"Include `chainId` and `verifyingContract` (and ideally a version) in the EIP712 domain separator and order hash, then invalidate/rotate any existing off-chain orders that were signed under the old domain.","evidence":"The EIP712 domain separator is computed only from the protocol name, with no chainId or contract address. Order hashes are derived from this domain and validated via `ecrecover`, so signatures are valid across any Hydro deployment.","locations":["contracts/Contract.sol:2862","contracts/Contract.sol:2872","contracts/Contract.sol:4831","contracts/Contract.sol:4838","contracts/Contract.sol:4264"]}]}
[codex:416513] tokens used
[codex:416513] 123,697
[codex:416513] {"no_findings":false,"summary":"Found 1 concrete signature replay vector enabling cross-contract order execution and fund extraction via replayed orders.","findings":[{"severity":"high","category":"auth","title":"EIP712 domain omits chainId and verifying contract, enabling cross-contract order replay","exploit_scenario":"1) Victim signs an order off-chain for a different Hydro deployment (or chain) where the domain is still just \"Hydro Protocol\". 2) Victim also has balances in this contract. 3) Attacker (the order’s relayer or its approved delegate) calls `matchOrders` on this contract using the victim’s signed order plus an attacker-controlled counter-order at a favorable price. 4) Because the order hash is derived from an EIP712 domain that lacks chainId/contract binding, `Signature.isValidSignature` accepts the replayed signature and the exchange settles, transferring victim assets to the attacker.","recommendation":"Include `chainId` and `verifyingContract` (and ideally a version) in the EIP712 domain separator and order hash, then invalidate/rotate any existing off-chain orders that were signed under the old domain.","evidence":"The EIP712 domain separator is computed only from the protocol name, with no chainId or contract address. Order hashes are derived from this domain and validated via `ecrecover`, so signatures are valid across any Hydro deployment.","locations":["contracts/Contract.sol:2862","contracts/Contract.sol:2872","contracts/Contract.sol:4831","contracts/Contract.sol:4838","contracts/Contract.sol:4264"]}]}
{
"codex": {
"ran_at": "2026-01-02T05:56:57.240829+00:00",
"returncode": 0
},
"summary": "Found 1 concrete signature replay vector enabling cross-contract order execution and fund extraction via replayed orders.",
"raw_final": {
"summary": "Found 1 concrete signature replay vector enabling cross-contract order execution and fund extraction via replayed orders.",
"findings": [
{
"title": "EIP712 domain omits chainId and verifying contract, enabling cross-contract order replay",
"category": "auth",
"evidence": "The EIP712 domain separator is computed only from the protocol name, with no chainId or contract address. Order hashes are derived from this domain and validated via `ecrecover`, so signatures are valid across any Hydro deployment.",
"severity": "high",
"locations": [
"contracts/Contract.sol:2862",
"contracts/Contract.sol:2872",
"contracts/Contract.sol:4831",
"contracts/Contract.sol:4838",
"contracts/Contract.sol:4264"
],
"recommendation": "Include `chainId` and `verifyingContract` (and ideally a version) in the EIP712 domain separator and order hash, then invalidate/rotate any existing off-chain orders that were signed under the old domain.",
"exploit_scenario": "1) Victim signs an order off-chain for a different Hydro deployment (or chain) where the domain is still just \"Hydro Protocol\". 2) Victim also has balances in this contract. 3) Attacker (the order\u2019s relayer or its approved delegate) calls `matchOrders` on this contract using the victim\u2019s signed order plus an attacker-controlled counter-order at a favorable price. 4) Because the order hash is derived from an EIP712 domain that lacks chainId/contract binding, `Signature.isValidSignature` accepts the replayed signature and the exchange settles, transferring victim assets to the attacker."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0293 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x715018a6 00000019: GT 0000001a: PUSH2 0x015a 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xa6fc9191 00000024: GT 00000025: PUSH2 0x00c1 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xddf1f0f4 0000002f: GT 00000030: PUSH2 0x007a 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xddf1f0f4 0000003a: EQ 0000003b: PUSH2 0x0813 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xe45c1879 00000045: EQ 00000046: PUSH2 0x0833 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xee684955 00000050: EQ 00000051: PUSH2 0x0855 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf2fde38b 0000005b: EQ 0000005c: PUSH2 0x0875 0000005f: JUMPI 00000060: DUP1 00000061: PUSH4 0xf7888aec 00000066: EQ 00000067: PUSH2 0x0895 0000006a: JUMPI 0000006b: DUP1 0000006c: PUSH4 0xfa352c00 00000071: EQ 00000072: PUSH2 0x08b5 00000075: JUMPI 00000076: PUSH2 0x0293 00000079: JUMP 0000007a: JUMPDEST 0000007b: DUP1 0000007c: PUSH4 0xa6fc9191 00000081: EQ 00000082: PUSH2 0x075e 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xb31610db 0000008c: EQ 0000008d: PUSH2 0x077e 00000090: JUMPI 00000091: DUP1 00000092: PUSH4 0xb6b3618e 00000097: EQ 00000098: PUSH2 0x079e 0000009b: JUMPI 0000009c: DUP1 0000009d: PUSH4 0xb875bdf1 000000a2: EQ 000000a3: PUSH2 0x07be 000000a6: JUMPI 000000a7: DUP1 000000a8: PUSH4 0xbb6d5838 000000ad: EQ 000000ae: PUSH2 0x07d3 000000b1: JUMPI 000000b2: DUP1 000000b3: PUSH4 0xc747fcc0 000000b8: EQ 000000b9: PUSH2 0x07f3 000000bc: JUMPI 000000bd: PUSH2 0x0293 000000c0: JUMP 000000c1: JUMPDEST 000000c2: DUP1 000000c3: PUSH4 0x8da5cb5b 000000c8: GT 000000c9: PUSH2 0x0113 000000cc: JUMPI 000000cd: DUP1 000000ce: PUSH4 0x8da5cb5b 000000d3: EQ 000000d4: PUSH2 0x06bf 000000d7: JUMPI 000000d8: DUP1 000000d9: PUSH4 0x8ea17c7b 000000de: EQ 000000df: PUSH2 0x06d4 000000e2: JUMPI 000000e3: DUP1 000000e4: PUSH4 0x8f32d59b 000000e9: EQ 000000ea: PUSH2 0x06f4 000000ed: JUMPI 000000ee: DUP1 000000ef: PUSH4 0x929066f5 000000f4: EQ 000000f5: PUSH2 0x0709 000000f8: JUMPI 000000f9: DUP1 000000fa: PUSH4 0x9c61a3dd 000000ff: EQ 00000100: PUSH2 0x0729 00000103: JUMPI 00000104: DUP1 00000105: PUSH4 0x9f0bf0a7 0000010a: EQ 0000010b: PUSH2 0x073e 0000010e: JUMPI 0000010f: PUSH2 0x0293 00000112: JUMP 00000113: JUMPDEST 00000114: DUP1 00000115: PUSH4 0x715018a6 0000011a: EQ 0000011b: PUSH2 0x0617 0000011e: JUMPI 0000011f: DUP1 00000120: PUSH4 0x762a4862 00000125: EQ 00000126: PUSH2 0x062c 00000129: JUMPI 0000012a: DUP1 0000012b: PUSH4 0x7e6ef7fc 00000130: EQ 00000131: PUSH2 0x064c 00000134: JUMPI 00000135: DUP1 00000136: PUSH4 0x8059cf3b 0000013b: EQ 0000013c: PUSH2 0x066c 0000013f: JUMPI 00000140: DUP1 00000141: PUSH4 0x8538d14e 00000146: EQ 00000147: PUSH2 0x067f 0000014a: JUMPI 0000014b: DUP1 0000014c: PUSH4 0x86e4d973 00000151: EQ 00000152: PUSH2 0x069f 00000155: JUMPI 00000156: PUSH2 0x0293 00000159: JUMP 0000015a: JUMPDEST 0000015b: DUP1 0000015c: PUSH4 0x325b7b03 00000161: GT 00000162: PUSH2 0x01fe 00000165: JUMPI 00000166: DUP1 00000167: PUSH4 0x53bab42e 0000016c: GT 0000016d: PUSH2 0x01b7 00000170: JUMPI 00000171: DUP1 00000172: PUSH4 0x53bab42e 00000177: EQ 00000178: PUSH2 0x0548 0000017b: JUMPI 0000017c: DUP1 0000017d: PUSH4 0x55559a86 00000182: EQ 00000183: PUSH2 0x0575 00000186: JUMPI 00000187: DUP1 00000188: PUSH4 0x5be53e74 0000018d: EQ 0000018e: PUSH2 0x0595 00000191: JUMPI 00000192: DUP1 00000193: PUSH4 0x5dae042d 00000198: EQ 00000199: PUSH2 0x05b7 0000019c: JUMPI 0000019d: DUP1 0000019e: PUSH4 0x637b93ed 000001a3: EQ 000001a4: PUSH2 0x05d7 000001a7: JUMPI 000001a8: DUP1 000001a9: PUSH4 0x68da10ae 000001ae: EQ 000001af: PUSH2 0x05f7 000001b2: JUMPI 000001b3: PUSH2 0x0293 000001b6: JUMP 000001b7: JUMPDEST 000001b8: DUP1 000001b9: PUSH4 0x325b7b03 000001be: EQ 000001bf: PUSH2 0x0483 000001c2: JUMPI 000001c3: DUP1 000001c4: PUSH4 0x3560c5cd 000001c9: EQ 000001ca: PUSH2 0x04a5 000001cd: JUMPI 000001ce: DUP1 000001cf: PUSH4 0x3b481b0a 000001d4: EQ 000001d5: PUSH2 0x04ba 000001d8: JUMPI 000001d9: DUP1 000001da: PUSH4 0x3e5893be 000001df: EQ 000001e0: PUSH2 0x04da 000001e3: JUMPI 000001e4: DUP1 000001e5: PUSH4 0x43239e9b 000001ea: EQ 000001eb: PUSH2 0x04fa 000001ee: JUMPI 000001ef: DUP1 000001f0: PUSH4 0x4376abf1 000001f5: EQ 000001f6: PUSH2 0x0528 000001f9: JUMPI 000001fa: PUSH2 0x0293 000001fd: JUMP 000001fe: JUMPDEST 000001ff: DUP1 00000200: PUSH4 0x1a8cd123 00000205: GT 00000206: PUSH2 0x0250 00000209: JUMPI 0000020a: DUP1 0000020b: PUSH4 0x1a8cd123 00000210: EQ 00000211: PUSH2 0x03a9 00000214: JUMPI 00000215: DUP1 00000216: PUSH4 0x21028767 0000021b: EQ 0000021c: PUSH2 0x03c9 0000021f: JUMPI 00000220: DUP1 00000221: PUSH4 0x2a2b1240 00000226: EQ 00000227: PUSH2 0x03e9 0000022a: JUMPI 0000022b: DUP1 0000022c: PUSH4 0x2d6a6025 00000231: EQ 00000232: PUSH2 0x0409 00000235: JUMPI 00000236: DUP1 00000237: PUSH4 0x30b8b2c6 0000023c: EQ 0000023d: PUSH2 0x0436 00000240: JUMPI 00000241: DUP1 00000242: PUSH4 0x316e5b1e 00000247: EQ 00000248: PUSH2 0x0463 0000024b: JUMPI 0000024c: PUSH2 0x0293 0000024f: JUMP 00000250: JUMPDEST 00000251: DUP1 00000252: PUSH4 0x06df453e 00000257: EQ 00000258: PUSH2 0x02a9 0000025b: JUMPI 0000025c: DUP1 0000025d: PUSH4 0x0c511d11 00000262: EQ 00000263: PUSH2 0x02cb 00000266: JUMPI 00000267: DUP1 00000268: PUSH4 0x0f8eeeb0 0000026d: EQ 0000026e: PUSH2 0x0301 00000271: JUMPI 00000272: DUP1 00000273: PUSH4 0x101424d9 00000278: EQ 00000279: PUSH2 0x0321 0000027c: JUMPI 0000027d: DUP1 0000027e: PUSH4 0x13a30013 00000283: EQ 00000284: PUSH2 0x034e 00000287: JUMPI 00000288: DUP1 00000289: PUSH4 0x168ba56c 0000028e: EQ 0000028f: PUSH2 0x037b 00000292: JUMPI 00000293: JUMPDEST 00000294: PUSH2 0x02a6 00000297: PUSH1 0x01 00000299: PUSH2 0x02a0 0000029c: PUSH2 0x08d5 0000029f: JUMP 000002a0: JUMPDEST 000002a1: CALLVALUE 000002a2: PUSH2 0x08da 000002a5: JUMP 000002a6: JUMPDEST 000002a7: POP 000002a8: STOP 000002a9: JUMPDEST 000002aa: CALLVALUE 000002ab: DUP1 000002ac: ISZERO 000002ad: PUSH2 0x02b5 000002b0: JUMPI 000002b1: PUSH1 0x00 000002b3: DUP1 000002b4: REVERT 000002b5: JUMPDEST 000002b6: POP 000002b7: PUSH2 0x02c9 000002ba: PUSH2 0x02c4 000002bd: CALLDATASIZE 000002be: PUSH1 0x04 000002c0: PUSH2 0x428d 000002c3: JUMP 000002c4: JUMPDEST 000002c5: PUSH2 0x093a 000002c8: JUMP 000002c9: JUMPDEST 000002ca: STOP 000002cb: JUMPDEST 000002cc: CALLVALUE 000002cd: DUP1 000002ce: ISZERO 000002cf: PUSH2 0x02d7 000002d2: JUMPI 000002d3: PUSH1 0x00 000002d5: DUP1 000002d6: REVERT 000002d7: JUMPDEST 000002d8: POP 000002d9: PUSH2 0x02eb 000002dc: PUSH2 0x02e6 000002df: CALLDATASIZE 000002e0: PUSH1 0x04 000002e2: PUSH2 0x44fb 000002e5: JUMP 000002e6: JUMPDEST 000002e7: PUSH2 0x0948 000002ea: JUMP 000002eb: JUMPDEST 000002ec: PUSH1 0x40 000002ee: MLOAD 000002ef: PUSH2 0x02f8 000002f2: SWAP2 000002f3: SWAP1 000002f4: PUSH2 0x5527 000002f7: JUMP 000002f8: JUMPDEST 000002f9: PUSH1 0x40 000002fb: MLOAD 000002fc: DUP1 000002fd: SWAP2 000002fe: SUB 000002ff: SWAP1 00000300: RETURN 00000301: JUMPDEST 00000302: CALLVALUE 00000303: DUP1 00000304: ISZERO 00000305: PUSH2 0x030d 00000308: JUMPI 00000309: PUSH1 0x00 0000030b: DUP1 0000030c: REVERT 0000030d: JUMPDEST 0000030e: POP 0000030f: PUSH2 0x02eb 00000312: PUSH2 0x031c 00000315: CALLDATASIZE 00000316: PUSH1 0x04 00000318: PUSH2 0x4436 0000031b: JUMP 0000031c: JUMPDEST 0000031d: PUSH2 0x095d 00000320: JUMP 00000321: JUMPDEST 00000322: CALLVALUE 00000323: DUP1 00000324: ISZERO 00000325: PUSH2 0x032d 00000328: JUMPI 00000329: PUSH1 0x00 0000032b: DUP1 0000032c: REVERT 0000032d: JUMPDEST 0000032e: POP 0000032f: PUSH2 0x0341 00000332: PUSH2 0x033c 00000335: CALLDATASIZE 00000336: PUSH1 0x04 00000338: PUSH2 0x428d 0000033b: JUMP 0000033c: JUMPDEST 0000033d: PUSH2 0x097e 00000340: JUMP 00000341: JUMPDEST 00000342: PUSH1 0x40 00000344: MLOAD 00000345: PUSH2 0x02f8 00000348: SWAP2 00000349: SWAP1 0000034a: PUSH2 0x5a89 0000034d: JUMP 0000034e: JUMPDEST 0000034f: CALLVALUE 00000350: DUP1 00000351: ISZERO 00000352: PUSH2 0x035a 00000355: JUMPI 00000356: PUSH1 0x00 00000358: DUP1 00000359: REVERT 0000035a: JUMPDEST 0000035b: POP 0000035c: PUSH2 0x036e 0000035f: PUSH2 0x0369 00000362: CALLDATASIZE 00000363: PUSH1 0x04 00000365: PUSH2 0x462a 00000368: JUMP 00000369: JUMPDEST 0000036a: PUSH2 0x0a5d 0000036d: JUMP 0000036e: JUMPDEST 0000036f: PUSH1 0x40 00000371: MLOAD 00000372: PUSH2 0x02f8 00000375: SWAP2 00000376: SWAP1 00000377: PUSH2 0x57e0 0000037a: JUMP 0000037b: JUMPDEST 0000037c: CALLVALUE 0000037d: DUP1 0000037e: ISZERO 0000037f: PUSH2 0x0387 00000382: JUMPI 00000383: PUSH1 0x00 00000385: DUP1 00000386: REVERT 00000387: JUMPDEST 00000388: POP 00000389: PUSH2 0x039b 0000038c: PUSH2 0x0396 0000038f: CALLDATASIZE 00000390: PUSH1 0x04 00000392: PUSH2 0x4436 00000395: JUMP 00000396: JUMPDEST 00000397: PUSH2 0x0ae7 0000039a: JUMP 0000039b: JUMPDEST 0000039c: PUSH1 0x40 0000039e: MLOAD 0000039f: PUSH2 0x02f8 000003a2: SWAP3 000003a3: SWAP2 000003a4: SWAP1 000003a5: PUSH2 0x5535 000003a8: JUMP 000003a9: JUMPDEST 000003aa: CALLVALUE 000003ab: DUP1 000003ac: ISZERO 000003ad: PUSH2 0x03b5 000003b0: JUMPI 000003b1: PUSH1 0x00 000003b3: DUP1 000003b4: REVERT 000003b5: JUMPDEST 000003b6: POP 000003b7: PUSH2 0x0341 000003ba: PUSH2 0x03c4 000003bd: CALLDATASIZE 000003be: PUSH1 0x04 000003c0: PUSH2 0x4648 000003c3: JUMP 000003c4: JUMPDEST 000003c5: PUSH2 0x0b8e 000003c8: JUMP 000003c9: JUMPDEST 000003ca: CALLVALUE 000003cb: DUP1 000003cc: ISZERO 000003cd: PUSH2 0x03d5 000003d0: JUMPI 000003d1: PUSH1 0x00 000003d3: DUP1 000003d4: REVERT 000003d5: JUMPDEST 000003d6: POP 000003d7: PUSH2 0x02c9 000003da: PUSH2 0x03e4 000003dd: CALLDATASIZE 000003de: PUSH1 0x04 000003e0: PUSH2 0x4699 000003e3: JUMP 000003e4: JUMPDEST 000003e5: PUSH2 0x0bbc 000003e8: JUMP 000003e9: JUMPDEST 000003ea: CALLVALUE 000003eb: DUP1 000003ec: ISZERO 000003ed: PUSH2 0x03f5 000003f0: JUMPI 000003f1: PUSH1 0x00 000003f3: DUP1 000003f4: REVERT 000003f5: JUMPDEST 000003f6: POP 000003f7: PUSH2 0x02c9 000003fa: PUSH2 0x0404 000003fd: CALLDATASIZE 000003fe: PUSH1 0x04 00000400: PUSH2 0x474a 00000403: JUMP 00000404: JUMPDEST 00000405: PUSH2 0x0c68 00000408: JUMP 00000409: JUMPDEST 0000040a: CALLVALUE 0000040b: DUP1 0000040c: ISZERO 0000040d: PUSH2 0x0415 00000410: JUMPI 00000411: PUSH1 0x00 00000413: DUP1 00000414: REVERT 00000415: JUMPDEST 00000416: POP 00000417: PUSH2 0x0429 0000041a: PUSH2 0x0424 0000041d: CALLDATASIZE 0000041e: PUSH1 0x04 00000420: PUSH2 0x472c 00000423: JUMP 00000424: JUMPDEST 00000425: PUSH2 0x0cf1 00000428: JUMP 00000429: JUMPDEST 0000042a: PUSH1 0x40 0000042c: MLOAD 0000042d: PUSH2 0x02f8 00000430: SWAP2 00000431: SWAP1 00000432: PUSH2 0x57c3 00000435: JUMP 00000436: JUMPDEST 00000437: CALLVALUE 00000438: DUP1 00000439: ISZERO 0000043a: PUSH2 0x0442 0000043d: JUMPI 0000043e: PUSH1 0x00 00000440: DUP1 00000441: REVERT 00000442: JUMPDEST 00000443: POP 00000444: PUSH2 0x0456 00000447: PUSH2 0x0451 0000044a: CALLDATASIZE 0000044b: PUSH1 0x04 0000044d: PUSH2 0x428d 00000450: JUMP 00000451: JUMPDEST 00000452: PUSH2 0x0d98 00000455: JUMP 00000456: JUMPDEST 00000457: PUSH1 0x40 00000459: MLOAD 0000045a: PUSH2 0x02f8 0000045d: SWAP2 0000045e: SWAP1 0000045f: PUSH2 0x57b5 00000462: JUMP 00000463: JUMPDEST 00000464: CALLVALUE 00000465: DUP1 00000466: ISZERO 00000467: PUSH2 0x046f 0000046a: JUMPI 0000046b: PUSH1 0x00 0000046d: DUP1 0000046e: REVERT 0000046f: JUMPDEST 00000470: POP 00000471: PUSH2 0x0341 00000474: PUSH2 0x047e 00000477: CALLDATASIZE 00000478: PUSH1 0x04 0000047a: PUSH2 0x42ab 0000047d: JUMP 0000047e: JUMPDEST 0000047f: PUSH2 0x0df3 00000482: JUMP 00000483: JUMPDEST 00000484: CALLVALUE 00000485: DUP1 00000486: ISZERO 00000487: PUSH2 0x048f 0000048a: JUMPI 0000048b: PUSH1 0x00 0000048d: DUP1 0000048e: REVERT 0000048f: JUMPDEST 00000490: POP 00000491: PUSH2 0x0498 00000494: PUSH2 0x0e0c 00000497: JUMP 00000498: JUMPDEST 00000499: PUSH1 0x40 0000049b: MLOAD 0000049c: PUSH2 0x02f8 0000049f: SWAP2 000004a0: SWAP1 000004a1: PUSH2 0x54fa 000004a4: JUMP 000004a5: JUMPDEST 000004a6: CALLVALUE 000004a7: DUP1 000004a8: ISZERO 000004a9: PUSH2 0x04b1 000004ac: JUMPI 000004ad: PUSH1 0x00 000004af: DUP1 000004b0: REVERT 000004b1: JUMPDEST 000004b2: POP 000004b3: PUSH2 0x02c9 000004b6: PUSH2 0x0e1b 000004b9: JUMP 000004ba: JUMPDEST 000004bb: CALLVALUE 000004bc: DUP1 000004bd: ISZERO 000004be: PUSH2 0x04c6 000004c1: JUMPI 000004c2: PUSH1 0x00 000004c4: DUP1 000004c5: REVERT 000004c6: JUMPDEST 000004c7: POP 000004c8: PUSH2 0x02c9 000004cb: PUSH2 0x04d5 000004ce: CALLDATASIZE 000004cf: PUSH1 0x04 000004d1: PUSH2 0x4332 000004d4: JUMP 000004d5: JUMPDEST 000004d6: PUSH2 0x0e27 000004d9: JUMP 000004da: JUMPDEST 000004db: CALLVALUE 000004dc: DUP1 000004dd: ISZERO 000004de: PUSH2 0x04e6 000004e1: JUMPI 000004e2: PUSH1 0x00 000004e4: DUP1 000004e5: REVERT 000004e6: JUMPDEST 000004e7: POP 000004e8: PUSH2 0x02eb 000004eb: PUSH2 0x04f5 000004ee: CALLDATASIZE 000004ef: PUSH1 0x04 000004f1: PUSH2 0x428d 000004f4: JUMP 000004f5: JUMPDEST 000004f6: PUSH2 0x0ed3 000004f9: JUMP 000004fa: JUMPDEST 000004fb: CALLVALUE 000004fc: DUP1 000004fd: ISZERO 000004fe: PUSH2 0x0506 00000501: JUMPI 00000502: PUSH1 0x00 00000504: DUP1 00000505: REVERT 00000506: JUMPDEST 00000507: POP 00000508: PUSH2 0x051a 0000050b: PUSH2 0x0515 0000050e: CALLDATASIZE 0000050f: PUSH1 0x04 00000511: PUSH2 0x4466 00000514: JUMP 00000515: JUMPDEST 00000516: PUSH2 0x0ee0 00000519: JUMP 0000051a: JUMPDEST 0000051b: PUSH1 0x40 0000051d: MLOAD 0000051e: PUSH2 0x02f8 00000521: SWAP3 00000522: SWAP2 00000523: SWAP1 00000524: PUSH2 0x5a97 00000527: JUMP 00000528: JUMPDEST 00000529: CALLVALUE 0000052a: DUP1 0000052b: ISZERO 0000052c: PUSH2 0x0534 0000052f: JUMPI 00000530: PUSH1 0x00 00000532: DUP1 00000533: REVERT 00000534: JUMPDEST 00000535: POP 00000536: PUSH2 0x0341 00000539: PUSH2 0x0543 0000053c: CALLDATASIZE 0000053d: PUSH1 0x04 0000053f: PUSH2 0x428d 00000542: JUMP 00000543: JUMPDEST 00000544: PUSH2 0x0efa 00000547: JUMP 00000548: JUMPDEST 00000549: CALLVALUE 0000054a: DUP1 0000054b: ISZERO 0000054c: PUSH2 0x0554 0000054f: JUMPI 00000550: PUSH1 0x00 00000552: DUP1 00000553: REVERT 00000554: JUMPDEST 00000555: POP 00000556: PUSH2 0x0568 00000559: PUSH2 0x0563 0000055c: CALLDATASIZE 0000055d: PUSH1 0x04 0000055f: PUSH2 0x4436 00000562: JUMP 00000563: JUMPDEST 00000564: PUSH2 0x0f07 00000567: JUMP 00000568: JUMPDEST 00000569: PUSH1 0x40 0000056b: MLOAD 0000056c: PUSH2 0x02f8 0000056f: SWAP2 00000570: SWAP1 00000571: PUSH2 0x57d2 00000574: JUMP 00000575: JUMPDEST 00000576: CALLVALUE 00000577: DUP1 00000578: ISZERO 00000579: PUSH2 0x0581 0000057c: JUMPI 0000057d: PUSH1 0x00 0000057f: DUP1 00000580: REVERT 00000581: JUMPDEST 00000582: POP 00000583: PUSH2 0x0341 00000586: PUSH2 0x0590 00000589: CALLDATASIZE 0000058a: PUSH1 0x04 0000058c: PUSH2 0x44fb 0000058f: JUMP 00000590: JUMPDEST 00000591: PUSH2 0x0f26 00000594: JUMP 00000595: JUMPDEST 00000596: CALLVALUE 00000597: DUP1 00000598: ISZERO 00000599: PUSH2 0x05a1 0000059c: JUMPI 0000059d: PUSH1 0x00 0000059f: DUP1 000005a0: REVERT 000005a1: JUMPDEST 000005a2: POP 000005a3: PUSH2 0x05aa 000005a6: PUSH2 0x0f38 000005a9: JUMP 000005aa: JUMPDEST 000005ab: PUSH1 0x40 000005ad: MLOAD 000005ae: PUSH2 0x02f8 000005b1: SWAP2 000005b2: SWAP1 000005b3: PUSH2 0x5516 000005b6: JUMP 000005b7: JUMPDEST 000005b8: CALLVALUE 000005b9: DUP1 000005ba: ISZERO 000005bb: PUSH2 0x05c3 000005be: JUMPI 000005bf: PUSH1 0x00 000005c1: DUP1 000005c2: REVERT 000005c3: JUMPDEST 000005c4: POP 000005c5: PUSH2 0x0341 000005c8: PUSH2 0x05d2 000005cb: CALLDATASIZE 000005cc: PUSH1 0x04 000005ce: PUSH2 0x428d 000005d1: JUMP 000005d2: JUMPDEST 000005d3: PUSH2 0x0fbb 000005d6: JUMP 000005d7: JUMPDEST 000005d8: CALLVALUE 000005d9: DUP1 000005da: ISZERO 000005db: PUSH2 0x05e3 000005de: JUMPI 000005df: PUSH1 0x00 000005e1: DUP1 000005e2: REVERT 000005e3: JUMPDEST 000005e4: POP 000005e5: PUSH2 0x0341 000005e8: PUSH2 0x05f2 000005eb: CALLDATASIZE 000005ec: PUSH1 0x04 000005ee: PUSH2 0x428d 000005f1: JUMP 000005f2: JUMPDEST 000005f3: PUSH2 0x0ff0 000005f6: JUMP 000005f7: JUMPDEST 000005f8: CALLVALUE 000005f9: DUP1 000005fa: ISZERO 000005fb: PUSH2 0x0603 000005fe: JUMPI 000005ff: PUSH1 0x00 00000601: DUP1 00000602: REVERT 00000603: JUMPDEST 00000604: POP 00000605: PUSH2 0x0341 00000608: PUSH2 0x0612 0000060b: CALLDATASIZE 0000060c: PUSH1 0x04 0000060e: PUSH2 0x428d 00000611: JUMP 00000612: JUMPDEST 00000613: PUSH2 0x1019 00000616: JUMP 00000617: JUMPDEST 00000618: CALLVALUE 00000619: DUP1 0000061a: ISZERO 0000061b: PUSH2 0x0623 0000061e: JUMPI 0000061f: PUSH1 0x00 00000621: DUP1 00000622: REVERT 00000623: JUMPDEST 00000624: POP 00000625: PUSH2 0x02c9 00000628: PUSH2 0x1031 0000062b: JUMP 0000062c: JUMPDEST 0000062d: CALLVALUE 0000062e: DUP1 0000062f: ISZERO 00000630: PUSH2 0x0638 00000633: JUMPI 00000634: PUSH1 0x00 00000636: DUP1 00000637: REVERT 00000638: JUMPDEST 00000639: POP 0000063a: PUSH2 0x02c9 0000063d: PUSH2 0x0647 00000640: CALLDATASIZE 00000641: PUSH1 0x04 00000643: PUSH2 0x42e5 00000646: JUMP 00000647: JUMPDEST 00000648: PUSH2 0x10a2 0000064b: JUMP 0000064c: JUMPDEST 0000064d: CALLVALUE 0000064e: DUP1 0000064f: ISZERO 00000650: PUSH2 0x0658 00000653: JUMPI 00000654: PUSH1 0x00 00000656: DUP1 00000657: REVERT 00000658: JUMPDEST 00000659: POP 0000065a: PUSH2 0x02eb 0000065d: PUSH2 0x0667 00000660: CALLDATASIZE 00000661: PUSH1 0x04 00000663: PUSH2 0x4519 00000666: JUMP 00000667: JUMPDEST 00000668: PUSH2 0x113f 0000066b: JUMP 0000066c: JUMPDEST 0000066d: PUSH2 0x02c9 00000670: PUSH2 0x067a 00000673: CALLDATASIZE 00000674: PUSH1 0x04 00000676: PUSH2 0x4496 00000679: JUMP 0000067a: JUMPDEST 0000067b: PUSH2 0x115a 0000067e: JUMP 0000067f: JUMPDEST 00000680: CALLVALUE 00000681: DUP1 00000682: ISZERO 00000683: PUSH2 0x068b 00000686: JUMPI 00000687: PUSH1 0x00 00000689: DUP1 0000068a: REVERT 0000068b: JUMPDEST 0000068c: POP 0000068d: PUSH2 0x0341 00000690: PUSH2 0x069a 00000693: CALLDATASIZE 00000694: PUSH1 0x04 00000696: PUSH2 0x428d 00000699: JUMP 0000069a: JUMPDEST 0000069b: PUSH2 0x11cc 0000069e: JUMP 0000069f: JUMPDEST 000006a0: CALLVALUE 000006a1: DUP1 000006a2: ISZERO 000006a3: PUSH2 0x06ab 000006a6: JUMPI 000006a7: PUSH1 0x00 000006a9: DUP1 000006aa: REVERT 000006ab: JUMPDEST 000006ac: POP 000006ad: PUSH2 0x02c9 000006b0: PUSH2 0x06ba 000006b3: CALLDATASIZE 000006b4: PUSH1 0x04 000006b6: PUSH2 0x457b 000006b9: JUMP 000006ba: JUMPDEST 000006bb: PUSH2 0x11e4 000006be: JUMP 000006bf: JUMPDEST 000006c0: CALLVALUE 000006c1: DUP1 000006c2: ISZERO 000006c3: PUSH2 0x06cb 000006c6: JUMPI 000006c7: PUSH1 0x00 000006c9: DUP1 000006ca: REVERT 000006cb: JUMPDEST 000006cc: POP 000006cd: PUSH2 0x0498 000006d0: PUSH2 0x1248 000006d3: JUMP 000006d4: JUMPDEST 000006d5: CALLVALUE 000006d6: DUP1 000006d7: ISZERO 000006d8: PUSH2 0x06e0 000006db: JUMPI 000006dc: PUSH1 0x00 000006de: DUP1 000006df: REVERT 000006e0: JUMPDEST 000006e1: POP 000006e2: PUSH2 0x0341 000006e5: PUSH2 0x06ef 000006e8: CALLDATASIZE 000006e9: PUSH1 0x04 000006eb: PUSH2 0x43f3 000006ee: JUMP 000006ef: JUMPDEST 000006f0: PUSH2 0x1257 000006f3: JUMP 000006f4: JUMPDEST 000006f5: CALLVALUE 000006f6: DUP1 000006f7: ISZERO 000006f8: PUSH2 0x0700 000006fb: JUMPI 000006fc: PUSH1 0x00 000006fe: DUP1 000006ff: REVERT 00000700: JUMPDEST 00000701: POP 00000702: PUSH2 0x02eb 00000705: PUSH2 0x127d 00000708: JUMP 00000709: JUMPDEST 0000070a: CALLVALUE 0000070b: DUP1 0000070c: ISZERO 0000070d: PUSH2 0x0715 00000710: JUMPI 00000711: PUSH1 0x00 00000713: DUP1 00000714: REVERT 00000715: JUMPDEST 00000716: POP 00000717: PUSH2 0x02eb 0000071a: PUSH2 0x0724 0000071d: CALLDATASIZE 0000071e: PUSH1 0x04 00000720: PUSH2 0x428d 00000723: JUMP 00000724: JUMPDEST 00000725: PUSH2 0x128e 00000728: JUMP 00000729: JUMPDEST 0000072a: CALLVALUE 0000072b: DUP1 0000072c: ISZERO 0000072d: PUSH2 0x0735 00000730: JUMPI 00000731: PUSH1 0x00 00000733: DUP1 00000734: REVERT 00000735: JUMPDEST 00000736: POP 00000737: PUSH2 0x0341 0000073a: PUSH2 0x129b 0000073d: JUMP 0000073e: JUMPDEST 0000073f: CALLVALUE 00000740: DUP1 00000741: ISZERO 00000742: PUSH2 0x074a 00000745: JUMPI 00000746: PUSH1 0x00 00000748: DUP1 00000749: REVERT 0000074a: JUMPDEST 0000074b: POP 0000074c: PUSH2 0x02c9 0000074f: PUSH2 0x0759 00000752: CALLDATASIZE 00000753: PUSH1 0x04 00000755: PUSH2 0x4599 00000758: JUMP 00000759: JUMPDEST 0000075a: PUSH2 0x12a5 0000075d: JUMP 0000075e: JUMPDEST 0000075f: CALLVALUE 00000760: DUP1 00000761: ISZERO 00000762: PUSH2 0x076a 00000765: JUMPI 00000766: PUSH1 0x00 00000768: DUP1 00000769: REVERT 0000076a: JUMPDEST 0000076b: POP 0000076c: PUSH2 0x02c9 0000076f: PUSH2 0x0779 00000772: CALLDATASIZE 00000773: PUSH1 0x04 00000775: PUSH2 0x44fb 00000778: JUMP 00000779: JUMPDEST 0000077a: PUSH2 0x12b0 0000077d: JUMP 0000077e: JUMPDEST 0000077f: CALLVALUE 00000780: DUP1 00000781: ISZERO 00000782: PUSH2 0x078a 00000785: JUMPI 00000786: PUSH1 0x00 00000788: DUP1 00000789: REVERT 0000078a: JUMPDEST 0000078b: POP 0000078c: PUSH2 0x051a 0000078f: PUSH2 0x0799 00000792: CALLDATASIZE 00000793: PUSH1 0x04 00000795: PUSH2 0x428d 00000798: JUMP 00000799: JUMPDEST 0000079a: PUSH2 0x1314 0000079d: JUMP 0000079e: JUMPDEST 0000079f: CALLVALUE 000007a0: DUP1 000007a1: ISZERO 000007a2: PUSH2 0x07aa 000007a5: JUMPI 000007a6: PUSH1 0x00 000007a8: DUP1 000007a9: REVERT 000007aa: JUMPDEST 000007ab: POP 000007ac: PUSH2 0x02c9 000007af: PUSH2 0x07b9 000007b2: CALLDATASIZE 000007b3: PUSH1 0x04 000007b5: PUSH2 0x45ce 000007b8: JUMP 000007b9: JUMPDEST 000007ba: PUSH2 0x132b 000007bd: JUMP 000007be: JUMPDEST 000007bf: CALLVALUE 000007c0: DUP1 000007c1: ISZERO 000007c2: PUSH2 0x07ca 000007c5: JUMPI 000007c6: PUSH1 0x00 000007c8: DUP1 000007c9: REVERT 000007ca: JUMPDEST 000007cb: POP 000007cc: PUSH2 0x02c9 000007cf: PUSH2 0x1344 000007d2: JUMP 000007d3: JUMPDEST 000007d4: CALLVALUE 000007d5: DUP1 000007d6: ISZERO 000007d7: PUSH2 0x07df 000007da: JUMPI 000007db: PUSH1 0x00 000007dd: DUP1 000007de: REVERT 000007df: JUMPDEST 000007e0: POP 000007e1: PUSH2 0x02c9 000007e4: PUSH2 0x07ee 000007e7: CALLDATASIZE 000007e8: PUSH1 0x04 000007ea: PUSH2 0x44fb 000007ed: JUMP 000007ee: JUMPDEST 000007ef: PUSH2 0x134e 000007f2: JUMP 000007f3: JUMPDEST 000007f4: CALLVALUE 000007f5: DUP1 000007f6: ISZERO 000007f7: PUSH2 0x07ff 000007fa: JUMPI 000007fb: PUSH1 0x00 000007fd: DUP1 000007fe: REVERT 000007ff: JUMPDEST 00000800: POP 00000801: PUSH2 0x02c9 00000804: PUSH2 0x080e 00000807: CALLDATASIZE 00000808: PUSH1 0x04 0000080a: PUSH2 0x44fb 0000080d: JUMP 0000080e: JUMPDEST 0000080f: PUSH2 0x13b2 00000812: JUMP 00000813: JUMPDEST 00000814: CALLVALUE 00000815: DUP1 00000816: ISZERO 00000817: PUSH2 0x081f 0000081a: JUMPI 0000081b: PUSH1 0x00 0000081d: DUP1 0000081e: REVERT 0000081f: JUMPDEST 00000820: POP 00000821: PUSH2 0x02c9 00000824: PUSH2 0x082e 00000827: CALLDATASIZE 00000828: PUSH1 0x04 0000082a: PUSH2 0x4669 0000082d: JUMP 0000082e: JUMPDEST 0000082f: PUSH2 0x1416 00000832: JUMP 00000833: JUMPDEST 00000834: CALLVALUE 00000835: DUP1 00000836: ISZERO 00000837: PUSH2 0x083f 0000083a: JUMPI 0000083b: PUSH1 0x00 0000083d: DUP1 0000083e: REVERT 0000083f: JUMPDEST 00000840: POP 00000841: PUSH2 0x0848 00000844: PUSH2 0x147c 00000847: JUMP 00000848: JUMPDEST 00000849: PUSH1 0x40 0000084b: MLOAD 0000084c: PUSH2 0x02f8 0000084f: SWAP2 00000850: SWAP1 00000851: PUSH2 0x5aa5 00000854: JUMP 00000855: JUMPDEST 00000856: CALLVALUE 00000857: DUP1 00000858: ISZERO 00000859: PUSH2 0x0861 0000085c: JUMPI 0000085d: PUSH1 0x00 0000085f: DUP1 00000860: REVERT 00000861: JUMPDEST 00000862: POP 00000863: PUSH2 0x0341 00000866: PUSH2 0x0870 00000869: CALLDATASIZE 0000086a: PUSH1 0x04 0000086c: PUSH2 0x4648 0000086f: JUMP 00000870: JUMPDEST 00000871: PUSH2 0x1488 00000874: JUMP 00000875: JUMPDEST 00000876: CALLVALUE 00000877: DUP1 00000878: ISZERO 00000879: PUSH2 0x0881 0000087c: JUMPI 0000087d: PUSH1 0x00 0000087f: DUP1 00000880: REVERT 00000881: JUMPDEST 00000882: POP 00000883: PUSH2 0x02c9 00000886: PUSH2 0x0890 00000889: CALLDATASIZE 0000088a: PUSH1 0x04 0000088c: PUSH2 0x428d 0000088f: JUMP 00000890: JUMPDEST 00000891: PUSH2 0x14b6 00000894: JUMP 00000895: JUMPDEST 00000896: CALLVALUE 00000897: DUP1 00000898: ISZERO 00000899: PUSH2 0x08a1 0000089c: JUMPI 0000089d: PUSH1 0x00 0000089f: DUP1 000008a0: REVERT 000008a1: JUMPDEST 000008a2: POP 000008a3: PUSH2 0x0341 000008a6: PUSH2 0x08b0 000008a9: CALLDATASIZE 000008aa: PUSH1 0x04 000008ac: PUSH2 0x42ab 000008af: JUMP 000008b0: JUMPDEST 000008b1: PUSH2 0x1561 000008b4: JUMP 000008b5: JUMPDEST 000008b6: CALLVALUE 000008b7: DUP1 000008b8: ISZERO 000008b9: PUSH2 0x08c1 000008bc: JUMPI 000008bd: PUSH1 0x00 000008bf: DUP1 000008c0: REVERT 000008c1: JUMPDEST 000008c2: POP 000008c3: PUSH2 0x02c9 000008c6: PUSH2 0x08d0 000008c9: CALLDATASIZE 000008ca: PUSH1 0x04 000008cc: PUSH2 0x428d 000008cf: JUMP 000008d0: JUMPDEST 000008d1: PUSH2 0x1571 000008d4: JUMP 000008d5: JUMPDEST 000008d6: PUSH1 0x0e 000008d8: SWAP1 000008d9: JUMP 000008da: JUMPDEST 000008db: PUSH1 0x00 000008dd: DUP1 000008de: PUSH2 0x08e5 000008e1: PUSH2 0x08d5 000008e4: JUMP 000008e5: JUMPDEST 000008e6: PUSH1 0x01 000008e8: PUSH1 0x01 000008ea: PUSH1 0xa0 000008ec: SHL 000008ed: SUB 000008ee: AND 000008ef: DUP5 000008f0: PUSH1 0x01 000008f2: PUSH1 0x01 000008f4: PUSH1 0xa0 000008f6: SHL 000008f7: SUB 000008f8: AND 000008f9: EQ 000008fa: ISZERO 000008fb: PUSH2 0x0905 000008fe: JUMPI 000008ff: POP 00000900: DUP2 00000901: PUSH2 0x0911 00000904: JUMP 00000905: JUMPDEST 00000906: PUSH2 0x0911 00000909: DUP5 0000090a: CALLER 0000090b: ADDRESS 0000090c: DUP7 0000090d: PUSH2 0x157c 00000910: JUMP 00000911: JUMPDEST 00000912: PUSH2 0x0925 00000915: DUP6 00000916: DUP6 00000917: PUSH2 0x091f 0000091a: CALLER 0000091b: PUSH2 0x15fd 0000091e: JUMP 0000091f: JUMPDEST 00000920: DUP7 00000921: PUSH2 0x162d 00000924: JUMP 00000925: JUMPDEST 00000926: PUSH2 0x0930 00000929: CALLER 0000092a: DUP6 0000092b: DUP6 0000092c: PUSH2 0x16c3 0000092f: JUMP 00000930: JUMPDEST 00000931: SWAP1 00000932: POP 00000933: JUMPDEST 00000934: SWAP4 00000935: SWAP3 00000936: POP 00000937: POP 00000938: POP 00000939: JUMP 0000093a: JUMPDEST 0000093b: PUSH2 0x0945 0000093e: PUSH1 0x01 00000940: DUP3 00000941: PUSH2 0x1713 00000944: JUMP 00000945: JUMPDEST 00000946: POP 00000947: JUMP 00000948: JUMPDEST 00000949: PUSH1 0x00 0000094b: SWAP1 0000094c: DUP2 0000094d: MSTORE 0000094e: PUSH1 0x12 00000950: PUSH1 0x20 00000952: MSTORE 00000953: PUSH1 0x40 00000955: SWAP1 00000956: KECCAK256 00000957: SLOAD 00000958: PUSH1 0xff 0000095a: AND 0000095b: SWAP1 0000095c: JUMP 0000095d: JUMPDEST 0000095e: PUSH1 0x00 00000960: PUSH2 0x096a 00000963: PUSH1 0x01 00000965: DUP4 00000966: PUSH2 0x1751 00000969: JUMP 0000096a: JUMPDEST 0000096b: PUSH2 0x0976 0000096e: PUSH1 0x01 00000970: DUP5 00000971: DUP5 00000972: PUSH2 0x177c 00000975: JUMP 00000976: JUMPDEST 00000977: MLOAD 00000978: SWAP4 00000979: SWAP3 0000097a: POP 0000097b: POP 0000097c: POP 0000097d: JUMP 0000097e: JUMPDEST 0000097f: PUSH1 0x00 00000981: PUSH2 0x0988 00000984: PUSH2 0x08d5 00000987: JUMP 00000988: JUMPDEST 00000989: PUSH1 0x01 0000098b: PUSH1 0x01 0000098d: PUSH1 0xa0 0000098f: SHL 00000990: SUB 00000991: AND 00000992: DUP3 00000993: PUSH1 0x01 00000995: PUSH1 0x01 00000997: PUSH1 0xa0 00000999: SHL 0000099a: SUB 0000099b: AND 0000099c: EQ 0000099d: ISZERO 0000099e: PUSH2 0x09c3 000009a1: JUMPI 000009a2: POP 000009a3: PUSH1 0x01 000009a5: PUSH1 0x01 000009a7: PUSH1 0xa0 000009a9: SHL 000009aa: SUB 000009ab: DUP2 000009ac: AND 000009ad: PUSH1 0x00 000009af: SWAP1 000009b0: DUP2 000009b1: MSTORE 000009b2: PUSH1 0x03 000009b4: PUSH1 0x20 000009b6: MSTORE 000009b7: PUSH1 0x40 000009b9: SWAP1 000009ba: KECCAK256 000009bb: SLOAD 000009bc: ADDRESS 000009bd: BALANCE 000009be: SUB 000009bf: PUSH2 0x0a58 000009c2: JUMP 000009c3: JUMPDEST 000009c4: PUSH1 0x01 000009c6: PUSH1 0x01 000009c8: PUSH1 0xa0 000009ca: SHL 000009cb: SUB 000009cc: DUP3 000009cd: AND 000009ce: PUSH1 0x00 000009d0: DUP2 000009d1: DUP2 000009d2: MSTORE 000009d3: PUSH1 0x03 000009d5: PUSH1 0x20 000009d7: MSTORE 000009d8: PUSH1 0x40 000009da: SWAP1 000009db: DUP2 000009dc: SWAP1 000009dd: KECCAK256 000009de: SLOAD 000009df: SWAP1 000009e0: MLOAD 000009e1: PUSH1 0x01 000009e3: PUSH1 0xe0 000009e5: SHL 000009e6: PUSH4 0x70a08231 000009eb: MUL 000009ec: DUP2 000009ed: MSTORE 000009ee: SWAP1 000009ef: SWAP2 000009f0: SWAP1 000009f1: PUSH4 0x70a08231 000009f6: SWAP1 000009f7: PUSH2 0x0a04 000009fa: SWAP1 000009fb: ADDRESS 000009fc: SWAP1 000009fd: PUSH1 0x04 000009ff: ADD 00000a00: PUSH2 0x5508 00000a03: JUMP 00000a04: JUMPDEST 00000a05: PUSH1 0x20 00000a07: PUSH1 0x40 00000a09: MLOAD 00000a0a: DUP1 00000a0b: DUP4 00000a0c: SUB 00000a0d: DUP2 00000a0e: DUP7 00000a0f: DUP1 00000a10: EXTCODESIZE 00000a11: ISZERO 00000a12: DUP1 00000a13: ISZERO 00000a14: PUSH2 0x0a1c 00000a17: JUMPI 00000a18: PUSH1 0x00 00000a1a: DUP1 00000a1b: REVERT 00000a1c: JUMPDEST 00000a1d: POP 00000a1e: GAS 00000a1f: STATICCALL 00000a20: ISZERO 00000a21: DUP1 00000a22: ISZERO 00000a23: PUSH2 0x0a30 00000a26: JUMPI 00000a27: RETURNDATASIZE 00000a28: PUSH1 0x00 00000a2a: DUP1 00000a2b: RETURNDATACOPY 00000a2c: RETURNDATASIZE 00000a2d: PUSH1 0x00 00000a2f: REVERT 00000a30: JUMPDEST 00000a31: POP 00000a32: POP 00000a33: POP 00000a34: POP 00000a35: PUSH1 0x40 00000a37: MLOAD 00000a38: RETURNDATASIZE 00000a39: PUSH1 0x1f 00000a3b: NOT 00000a3c: PUSH1 0x1f 00000a3e: DUP3 00000a3f: ADD 00000a40: AND 00000a41: DUP3 00000a42: ADD 00000a43: DUP1 00000a44: PUSH1 0x40 00000a46: MSTORE 00000a47: POP 00000a48: PUSH2 0x0a54 00000a4b: SWAP2 00000a4c: SWAP1 00000a4d: DUP2 00000a4e: ADD 00000a4f: SWAP1 00000a50: PUSH2 0x470e 00000a53: JUMP 00000a54: JUMPDEST 00000a55: SUB 00000a56: SWAP1 00000a57: POP 00000a58: JUMPDEST 00000a59: SWAP2 00000a5a: SWAP1 00000a5b: POP 00000a5c: JUMP 00000a5d: JUMPDEST 00000a5e: PUSH2 0x0a65 00000a61: PUSH2 0x398e 00000a64: JUMP 00000a65: JUMPDEST 00000a66: PUSH2 0x0a70 00000a69: PUSH1 0x01 00000a6b: DUP4 00000a6c: PUSH2 0x1751 00000a6f: JUMP 00000a70: JUMPDEST 00000a71: POP 00000a72: PUSH2 0xffff 00000a75: AND 00000a76: PUSH1 0x00 00000a78: SWAP1 00000a79: DUP2 00000a7a: MSTORE 00000a7b: PUSH1 0x05 00000a7d: PUSH1 0x20 00000a7f: DUP2 00000a80: DUP2 00000a81: MSTORE 00000a82: PUSH1 0x40 00000a84: SWAP3 00000a85: DUP4 00000a86: SWAP1 00000a87: KECCAK256 00000a88: DUP4 00000a89: MLOAD 00000a8a: PUSH1 0xe0 00000a8c: DUP2 00000a8d: ADD 00000a8e: DUP6 00000a8f: MSTORE 00000a90: DUP2 00000a91: SLOAD 00000a92: PUSH1 0x01 00000a94: PUSH1 0x01 00000a96: PUSH1 0xa0 00000a98: SHL 00000a99: SUB 00000a9a: SWAP1 00000a9b: DUP2 00000a9c: AND 00000a9d: DUP3 00000a9e: MSTORE 00000a9f: PUSH1 0x01 00000aa1: DUP4 00000aa2: ADD 00000aa3: SLOAD 00000aa4: AND 00000aa5: SWAP3 00000aa6: DUP2 00000aa7: ADD 00000aa8: SWAP3 00000aa9: SWAP1 00000aaa: SWAP3 00000aab: MSTORE 00000aac: PUSH1 0x02 00000aae: DUP2 00000aaf: ADD 00000ab0: SLOAD 00000ab1: SWAP4 00000ab2: DUP3 00000ab3: ADD 00000ab4: SWAP4 00000ab5: SWAP1 00000ab6: SWAP4 00000ab7: MSTORE 00000ab8: PUSH1 0x03 00000aba: DUP4 00000abb: ADD 00000abc: SLOAD 00000abd: PUSH1 0x60 00000abf: DUP3 00000ac0: ADD 00000ac1: MSTORE 00000ac2: PUSH1 0x04 00000ac4: DUP4 00000ac5: ADD 00000ac6: SLOAD 00000ac7: PUSH1 0x80 00000ac9: DUP3 00000aca: ADD 00000acb: MSTORE 00000acc: SWAP1 00000acd: DUP3 00000ace: ADD 00000acf: SLOAD 00000ad0: PUSH1 0xa0 00000ad2: DUP3 00000ad3: ADD 00000ad4: MSTORE 00000ad5: PUSH1 0x06 00000ad7: SWAP1 00000ad8: SWAP2 00000ad9: ADD 00000ada: SLOAD 00000adb: PUSH1 0xff 00000add: AND 00000ade: ISZERO 00000adf: ISZERO 00000ae0: PUSH1 0xc0 00000ae2: DUP3 00000ae3: ADD 00000ae4: MSTORE 00000ae5: SWAP1 00000ae6: JUMP 00000ae7: JUMPDEST 00000ae8: PUSH1 0x00 00000aea: DUP1 00000aeb: PUSH2 0x0af5 00000aee: PUSH1 0x01 00000af0: DUP5 00000af1: PUSH2 0x1751 00000af4: JUMP 00000af5: JUMPDEST 00000af6: PUSH1 0x40 00000af8: MLOAD 00000af9: PUSH1 0x01 00000afb: PUSH1 0xe2 00000afd: SHL 00000afe: PUSH4 0x090a15a3 00000b03: MUL 00000b04: DUP2 00000b05: MSTORE 00000b06: PUSH20 0x3eb39889f4b38691249d5e67d5ecc844ce0297b8 00000b1b: SWAP1 00000b1c: PUSH4 0x2428568c 00000b21: SWAP1 00000b22: PUSH2 0x0b34 00000b25: SWAP1 00000b26: PUSH1 0x01 00000b28: SWAP1 00000b29: DUP9 00000b2a: SWAP1 00000b2b: DUP9 00000b2c: SWAP1 00000b2d: PUSH1 0x04 00000b2f: ADD 00000b30: PUSH2 0x5943 00000b33: JUMP 00000b34: JUMPDEST 00000b35: PUSH1 0x40 00000b37: DUP1 00000b38: MLOAD 00000b39: DUP1 00000b3a: DUP4 00000b3b: SUB 00000b3c: DUP2 00000b3d: DUP7 00000b3e: DUP1 00000b3f: EXTCODESIZE 00000b40: ISZERO 00000b41: DUP1 00000b42: ISZERO 00000b43: PUSH2 0x0b4b 00000b46: JUMPI 00000b47: PUSH1 0x00 00000b49: DUP1 00000b4a: REVERT 00000b4b: JUMPDEST 00000b4c: POP 00000b4d: GAS 00000b4e: DELEGATECALL 00000b4f: ISZERO 00000b50: DUP1 00000b51: ISZERO 00000b52: PUSH2 0x0b5f 00000b55: JUMPI 00000b56: RETURNDATASIZE 00000b57: PUSH1 0x00 00000b59: DUP1 00000b5a: RETURNDATACOPY 00000b5b: RETURNDATASIZE 00000b5c: PUSH1 0x00 00000b5e: REVERT 00000b5f: JUMPDEST 00000b60: POP 00000b61: POP 00000b62: POP 00000b63: POP 00000b64: PUSH1 0x40 00000b66: MLOAD 00000b67: RETURNDATASIZE 00000b68: PUSH1 0x1f 00000b6a: NOT 00000b6b: PUSH1 0x1f 00000b6d: DUP3 00000b6e: ADD 00000b6f: AND 00000b70: DUP3 00000b71: ADD 00000b72: DUP1 00000b73: PUSH1 0x40 00000b75: MSTORE 00000b76: POP 00000b77: PUSH2 0x0b83 00000b7a: SWAP2 00000b7b: SWAP1 00000b7c: DUP2 00000b7d: ADD 00000b7e: SWAP1 00000b7f: PUSH2 0x44cb 00000b82: JUMP 00000b83: JUMPDEST 00000b84: SWAP1 00000b85: SWAP6 00000b86: SWAP1 00000b87: SWAP5 00000b88: POP 00000b89: SWAP3 00000b8a: POP 00000b8b: POP 00000b8c: POP 00000b8d: JUMP 00000b8e: JUMPDEST 00000b8f: PUSH1 0x00 00000b91: PUSH2 0x0b9b 00000b94: PUSH1 0x01 00000b96: DUP6 00000b97: PUSH2 0x1751 00000b9a: JUMP 00000b9b: JUMPDEST 00000b9c: PUSH2 0x0ba7 00000b9f: PUSH1 0x01 00000ba1: DUP6 00000ba2: DUP6 00000ba3: PUSH2 0x1962 00000ba6: JUMP 00000ba7: JUMPDEST 00000ba8: PUSH2 0x0bb4 00000bab: PUSH1 0x01 00000bad: DUP6 00000bae: DUP5 00000baf: DUP7 00000bb0: PUSH2 0x19d8 00000bb3: JUMP 00000bb4: JUMPDEST 00000bb5: SWAP5 00000bb6: SWAP4 00000bb7: POP 00000bb8: POP 00000bb9: POP 00000bba: POP 00000bbb: JUMP 00000bbc: JUMPDEST 00000bbd: PUSH2 0x0bc4 00000bc0: PUSH2 0x127d 00000bc3: JUMP 00000bc4: JUMPDEST 00000bc5: PUSH2 0x0bec 00000bc8: JUMPI 00000bc9: PUSH1 0x40 00000bcb: MLOAD 00000bcc: PUSH1 0x01 00000bce: PUSH1 0xe5 00000bd0: SHL 00000bd1: PUSH3 0x461bcd 00000bd5: MUL 00000bd6: DUP2 00000bd7: MSTORE 00000bd8: PUSH1 0x04 00000bda: ADD 00000bdb: PUSH2 0x0be3 00000bde: SWAP1 00000bdf: PUSH2 0x5735 00000be2: JUMP 00000be3: JUMPDEST 00000be4: PUSH1 0x40 00000be6: MLOAD 00000be7: DUP1 00000be8: SWAP2 00000be9: SUB 00000bea: SWAP1 00000beb: REVERT 00000bec: JUMPDEST 00000bed: PUSH1 0x40 00000bef: MLOAD 00000bf0: PUSH1 0x01 00000bf2: PUSH1 0xe0 00000bf4: SHL 00000bf5: PUSH4 0xdb9ad4c7 00000bfa: MUL 00000bfb: DUP2 00000bfc: MSTORE 00000bfd: PUSH20 0x723091df82333033f1b646fe1ad7bbbf9cbe420c 00000c12: SWAP1 00000c13: PUSH4 0xdb9ad4c7 00000c18: SWAP1 00000c19: PUSH2 0x0c31 00000c1c: SWAP1 00000c1d: PUSH1 0x01 00000c1f: SWAP1 00000c20: DUP10 00000c21: SWAP1 00000c22: DUP10 00000c23: SWAP1 00000c24: DUP10 00000c25: SWAP1 00000c26: DUP10 00000c27: SWAP1 00000c28: DUP10 00000c29: SWAP1 00000c2a: PUSH1 0x04 00000c2c: ADD 00000c2d: PUSH2 0x59f9 00000c30: JUMP 00000c31: JUMPDEST 00000c32: PUSH1 0x00 00000c34: PUSH1 0x40 00000c36: MLOAD 00000c37: DUP1 00000c38: DUP4 00000c39: SUB 00000c3a: DUP2 00000c3b: DUP7 00000c3c: DUP1 00000c3d: EXTCODESIZE 00000c3e: ISZERO 00000c3f: DUP1 00000c40: ISZERO 00000c41: PUSH2 0x0c49 00000c44: JUMPI 00000c45: PUSH1 0x00 00000c47: DUP1 00000c48: REVERT 00000c49: JUMPDEST 00000c4a: POP 00000c4b: GAS 00000c4c: DELEGATECALL 00000c4d: ISZERO 00000c4e: DUP1 00000c4f: ISZERO 00000c50: PUSH2 0x0c5d 00000c53: JUMPI 00000c54: RETURNDATASIZE 00000c55: PUSH1 0x00 00000c57: DUP1 00000c58: RETURNDATACOPY 00000c59: RETURNDATASIZE 00000c5a: PUSH1 0x00 00000c5c: REVERT 00000c5d: JUMPDEST 00000c5e: POP 00000c5f: POP 00000c60: POP 00000c61: POP 00000c62: POP 00000c63: POP 00000c64: POP 00000c65: POP 00000c66: POP 00000c67: JUMP 00000c68: JUMPDEST 00000c69: PUSH2 0x0c73 00000c6c: PUSH1 0x01 00000c6e: DUP4 00000c6f: PUSH2 0x1b3c 00000c72: JUMP 00000c73: JUMPDEST 00000c74: PUSH2 0x0c7e 00000c77: PUSH1 0x01 00000c79: DUP4 00000c7a: PUSH2 0x1b6c 00000c7d: JUMP 00000c7e: JUMPDEST 00000c7f: PUSH1 0x40 00000c81: MLOAD 00000c82: PUSH1 0x01 00000c84: PUSH1 0xe0 00000c86: SHL 00000c87: PUSH4 0x4a025491 00000c8c: MUL 00000c8d: DUP2 00000c8e: MSTORE 00000c8f: PUSH20 0x3eb39889f4b38691249d5e67d5ecc844ce0297b8 00000ca4: SWAP1 00000ca5: PUSH4 0x4a025491 00000caa: SWAP1 00000cab: PUSH2 0x0cbd 00000cae: SWAP1 00000caf: PUSH1 0x01 00000cb1: SWAP1 00000cb2: DUP7 00000cb3: SWAP1 00000cb4: DUP7 00000cb5: SWAP1 00000cb6: PUSH1 0x04 00000cb8: ADD 00000cb9: PUSH2 0x5a61 00000cbc: JUMP 00000cbd: JUMPDEST 00000cbe: PUSH1 0x00 00000cc0: PUSH1 0x40 00000cc2: MLOAD 00000cc3: DUP1 00000cc4: DUP4 00000cc5: SUB 00000cc6: DUP2 00000cc7: DUP7 00000cc8: DUP1 00000cc9: EXTCODESIZE 00000cca: ISZERO 00000ccb: DUP1 00000ccc: ISZERO 00000ccd: PUSH2 0x0cd5 00000cd0: JUMPI 00000cd1: PUSH1 0x00 00000cd3: DUP1 00000cd4: REVERT 00000cd5: JUMPDEST 00000cd6: POP 00000cd7: GAS 00000cd8: DELEGATECALL 00000cd9: ISZERO 00000cda: DUP1 00000cdb: ISZERO 00000cdc: PUSH2 0x0ce9 00000cdf: JUMPI 00000ce0: RETURNDATASIZE 00000ce1: PUSH1 0x00 00000ce3: DUP1 00000ce4: RETURNDATACOPY 00000ce5: RETURNDATASIZE 00000ce6: PUSH1 0x00 00000ce8: REVERT 00000ce9: JUMPDEST 00000cea: POP 00000ceb: POP 00000cec: POP 00000ced: POP 00000cee: POP 00000cef: POP 00000cf0: JUMP 00000cf1: JUMPDEST 00000cf2: PUSH2 0x0cf9 00000cf5: PUSH2 0x39df 00000cf8: JUMP 00000cf9: JUMPDEST 00000cfa: PUSH2 0x0d04 00000cfd: PUSH1 0x01 00000cff: DUP4 00000d00: PUSH2 0x1b3c 00000d03: JUMP 00000d04: JUMPDEST 00000d05: PUSH1 0x40 00000d07: MLOAD 00000d08: PUSH1 0x01 00000d0a: PUSH1 0xe0 00000d0c: SHL 00000d0d: PUSH4 0xfc1d5a33 00000d12: MUL 00000d13: DUP2 00000d14: MSTORE 00000d15: PUSH20 0x3eb39889f4b38691249d5e67d5ecc844ce0297b8 00000d2a: SWAP1 00000d2b: PUSH4 0xfc1d5a33 00000d30: SWAP1 00000d31: PUSH2 0x0d41 00000d34: SWAP1 00000d35: PUSH1 0x01 00000d37: SWAP1 00000d38: DUP7 00000d39: SWAP1 00000d3a: PUSH1 0x04 00000d3c: ADD 00000d3d: PUSH2 0x5a53 00000d40: JUMP 00000d41: JUMPDEST 00000d42: PUSH2 0x0120 00000d45: PUSH1 0x40 00000d47: MLOAD 00000d48: DUP1 00000d49: DUP4 00000d4a: SUB 00000d4b: DUP2 00000d4c: DUP7 00000d4d: DUP1 00000d4e: EXTCODESIZE 00000d4f: ISZERO 00000d50: DUP1 00000d51: ISZERO 00000d52: PUSH2 0x0d5a 00000d55: JUMPI 00000d56: PUSH1 0x00 00000d58: DUP1 00000d59: REVERT 00000d5a: JUMPDEST 00000d5b: POP 00000d5c: GAS 00000d5d: DELEGATECALL 00000d5e: ISZERO 00000d5f: DUP1 00000d60: ISZERO 00000d61: PUSH2 0x0d6e 00000d64: JUMPI 00000d65: RETURNDATASIZE 00000d66: PUSH1 0x00 00000d68: DUP1 00000d69: RETURNDATACOPY 00000d6a: RETURNDATASIZE 00000d6b: PUSH1 0x00 00000d6d: REVERT 00000d6e: JUMPDEST 00000d6f: POP 00000d70: POP 00000d71: POP 00000d72: POP 00000d73: PUSH1 0x40 00000d75: MLOAD 00000d76: RETURNDATASIZE 00000d77: PUSH1 0x1f 00000d79: NOT 00000d7a: PUSH1 0x1f 00000d7c: DUP3 00000d7d: ADD 00000d7e: AND 00000d7f: DUP3 00000d80: ADD 00000d81: DUP1 00000d82: PUSH1 0x40 00000d84: MSTORE 00000d85: POP 00000d86: PUSH2 0x0d92 00000d89: SWAP2 00000d8a: SWAP1 00000d8b: DUP2 00000d8c: ADD 00000d8d: SWAP1 00000d8e: PUSH2 0x455c 00000d91: JUMP 00000d92: JUMPDEST 00000d93: SWAP3 00000d94: SWAP2 00000d95: POP 00000d96: POP 00000d97: JUMP 00000d98: JUMPDEST 00000d99: PUSH2 0x0da0 00000d9c: PUSH2 0x3a2b 00000d9f: JUMP 00000da0: JUMPDEST 00000da1: PUSH2 0x0dab 00000da4: PUSH1 0x01 00000da6: DUP4 00000da7: PUSH2 0x1bbc 00000daa: JUMP 00000dab: JUMPDEST 00000dac: POP 00000dad: PUSH1 0x01 00000daf: PUSH1 0x01 00000db1: PUSH1 0xa0 00000db3: SHL 00000db4: SUB 00000db5: SWAP1 00000db6: DUP2 00000db7: AND 00000db8: PUSH1 0x00 00000dba: SWAP1 00000dbb: DUP2 00000dbc: MSTORE 00000dbd: PUSH1 0x02 00000dbf: PUSH1 0x20 00000dc1: DUP2 00000dc2: DUP2 00000dc3: MSTORE 00000dc4: PUSH1 0x40 00000dc6: SWAP3 00000dc7: DUP4 00000dc8: SWAP1 00000dc9: KECCAK256 00000dca: DUP4 00000dcb: MLOAD 00000dcc: PUSH1 0x60 00000dce: DUP2 00000dcf: ADD 00000dd0: DUP6 00000dd1: MSTORE 00000dd2: DUP2 00000dd3: SLOAD 00000dd4: DUP7 00000dd5: AND 00000dd6: DUP2 00000dd7: MSTORE 00000dd8: PUSH1 0x01 00000dda: DUP3 00000ddb: ADD 00000ddc: SLOAD 00000ddd: DUP7 00000dde: AND 00000ddf: SWAP3 00000de0: DUP2 00000de1: ADD 00000de2: SWAP3 00000de3: SWAP1 00000de4: SWAP3 00000de5: MSTORE 00000de6: SWAP1 00000de7: SWAP2 00000de8: ADD 00000de9: SLOAD 00000dea: SWAP1 00000deb: SWAP3 00000dec: AND 00000ded: SWAP1 00000dee: DUP3 00000def: ADD 00000df0: MSTORE 00000df1: SWAP1 00000df2: JUMP 00000df3: JUMPDEST 00000df4: PUSH1 0x00 00000df6: PUSH2 0x0e00 00000df9: PUSH1 0x01 00000dfb: DUP5 00000dfc: PUSH2 0x1bbc 00000dff: JUMP 00000e00: JUMPDEST 00000e01: PUSH2 0x0933 00000e04: PUSH1 0x01 00000e06: DUP5 00000e07: DUP5 00000e08: PUSH2 0x1be5 00000e0b: JUMP 00000e0c: JUMPDEST 00000e0d: PUSH1 0x13 00000e0f: SLOAD 00000e10: PUSH1 0x01 00000e12: PUSH1 0x01 00000e14: PUSH1 0xa0 00000e16: SHL 00000e17: SUB 00000e18: AND 00000e19: SWAP1 00000e1a: JUMP 00000e1b: JUMPDEST 00000e1c: PUSH2 0x0e25 00000e1f: PUSH1 0x01 00000e21: PUSH2 0x1c12 00000e24: JUMP 00000e25: JUMPDEST 00000e26: JUMP 00000e27: JUMPDEST 00000e28: PUSH2 0x0e2f 00000e2b: PUSH2 0x127d 00000e2e: JUMP 00000e2f: JUMPDEST 00000e30: PUSH2 0x0e4e 00000e33: JUMPI 00000e34: PUSH1 0x40 00000e36: MLOAD 00000e37: PUSH1 0x01 00000e39: PUSH1 0xe5 00000e3b: SHL 00000e3c: PUSH3 0x461bcd 00000e40: MUL 00000e41: DUP2 00000e42: MSTORE 00000e43: PUSH1 0x04 00000e45: ADD 00000e46: PUSH2 0x0be3 00000e49: SWAP1 00000e4a: PUSH2 0x5735 00000e4d: JUMP 00000e4e: JUMPDEST 00000e4f: PUSH1 0x40 00000e51: MLOAD 00000e52: PUSH1 0x01 00000e54: PUSH1 0xe3 00000e56: SHL 00000e57: PUSH4 0x13cafdf1 00000e5c: MUL 00000e5d: DUP2 00000e5e: MSTORE 00000e5f: PUSH20 0x723091df82333033f1b646fe1ad7bbbf9cbe420c 00000e74: SWAP1 00000e75: PUSH4 0x9e57ef88 00000e7a: SWAP1 00000e7b: PUSH2 0x0e99 00000e7e: SWAP1 00000e7f: PUSH1 0x01 00000e81: SWAP1 00000e82: DUP13 00000e83: SWAP1 00000e84: DUP13 00000e85: SWAP1 00000e86: DUP13 00000e87: SWAP1 00000e88: DUP13 00000e89: SWAP1 00000e8a: DUP13 00000e8b: SWAP1 00000e8c: DUP13 00000e8d: SWAP1 00000e8e: DUP13 00000e8f: SWAP1 00000e90: DUP13 00000e91: SWAP1 00000e92: PUSH1 0x04 00000e94: ADD 00000e95: PUSH2 0x58c9 00000e98: JUMP 00000e99: JUMPDEST 00000e9a: PUSH1 0x00 00000e9c: PUSH1 0x40 00000e9e: MLOAD 00000e9f: DUP1 00000ea0: DUP4 00000ea1: SUB 00000ea2: DUP2 00000ea3: DUP7 00000ea4: DUP1 00000ea5: EXTCODESIZE 00000ea6: ISZERO 00000ea7: DUP1 00000ea8: ISZERO 00000ea9: PUSH2 0x0eb1 00000eac: JUMPI 00000ead: PUSH1 0x00 00000eaf: DUP1 00000eb0: REVERT 00000eb1: JUMPDEST 00000eb2: POP 00000eb3: GAS 00000eb4: DELEGATECALL 00000eb5: ISZERO 00000eb6: DUP1 00000eb7: ISZERO 00000eb8: PUSH2 0x0ec5 00000ebb: JUMPI 00000ebc: RETURNDATASIZE 00000ebd: PUSH1 0x00 00000ebf: DUP1 00000ec0: RETURNDATACOPY 00000ec1: RETURNDATASIZE 00000ec2: PUSH1 0x00 00000ec4: REVERT 00000ec5: JUMPDEST 00000ec6: POP 00000ec7: POP 00000ec8: POP 00000ec9: POP 00000eca: POP 00000ecb: POP 00000ecc: POP 00000ecd: POP 00000ece: POP 00000ecf: POP 00000ed0: POP 00000ed1: POP 00000ed2: JUMP 00000ed3: JUMPDEST 00000ed4: PUSH1 0x00 00000ed6: PUSH2 0x0d92 00000ed9: PUSH1 0x01 00000edb: DUP4 00000edc: PUSH2 0x1c37 00000edf: JUMP 00000ee0: JUMPDEST 00000ee1: PUSH1 0x00 00000ee3: DUP1 00000ee4: PUSH2 0x0eee 00000ee7: PUSH1 0x01 00000ee9: DUP6 00000eea: PUSH2 0x1bbc 00000eed: JUMP 00000eee: JUMPDEST 00000eef: PUSH2 0x0b83 00000ef2: PUSH1 0x01 00000ef4: DUP6 00000ef5: DUP6 00000ef6: PUSH2 0x1c7e 00000ef9: JUMP 00000efa: JUMPDEST 00000efb: PUSH1 0x00 00000efd: PUSH2 0x0d92 00000f00: PUSH1 0x01 00000f02: DUP4 00000f03: PUSH2 0x1db1 00000f06: JUMP 00000f07: JUMPDEST 00000f08: PUSH2 0x0f0f 00000f0b: PUSH2 0x3a4b 00000f0e: JUMP 00000f0f: JUMPDEST 00000f10: PUSH2 0x0f1a 00000f13: PUSH1 0x01 00000f15: DUP4 00000f16: PUSH2 0x1751 00000f19: JUMP 00000f1a: JUMPDEST 00000f1b: PUSH2 0x0933 00000f1e: PUSH1 0x01 00000f20: DUP5 00000f21: DUP5 00000f22: PUSH2 0x177c 00000f25: JUMP 00000f26: JUMPDEST 00000f27: PUSH1 0x00 00000f29: SWAP1 00000f2a: DUP2 00000f2b: MSTORE 00000f2c: PUSH1 0x11 00000f2e: PUSH1 0x20 00000f30: MSTORE 00000f31: PUSH1 0x40 00000f33: SWAP1 00000f34: KECCAK256 00000f35: SLOAD 00000f36: SWAP1 00000f37: JUMP 00000f38: JUMPDEST 00000f39: PUSH1 0x18 00000f3b: DUP1 00000f3c: SLOAD 00000f3d: PUSH1 0x40 00000f3f: DUP1 00000f40: MLOAD 00000f41: PUSH1 0x20 00000f43: DUP1 00000f44: DUP5 00000f45: MUL 00000f46: DUP3 00000f47: ADD 00000f48: DUP2 00000f49: ADD 00000f4a: SWAP1 00000f4b: SWAP3 00000f4c: MSTORE 00000f4d: DUP3 00000f4e: DUP2 00000f4f: MSTORE 00000f50: PUSH1 0x60 00000f52: SWAP4 00000f53: SWAP1 00000f54: SWAP3 00000f55: SWAP1 00000f56: SWAP2 00000f57: DUP4 00000f58: ADD 00000f59: DUP3 00000f5a: DUP3 00000f5b: DUP1 00000f5c: ISZERO 00000f5d: PUSH2 0x0fb1 00000f60: JUMPI 00000f61: PUSH1 0x20 00000f63: MUL 00000f64: DUP3 00000f65: ADD 00000f66: SWAP2 00000f67: SWAP1 00000f68: PUSH1 0x00 00000f6a: MSTORE 00000f6b: PUSH1 0x20 00000f6d: PUSH1 0x00 00000f6f: KECCAK256 00000f70: SWAP1 00000f71: PUSH1 0x00 00000f73: SWAP1 00000f74: JUMPDEST 00000f75: DUP3 00000f76: DUP3 00000f77: SWAP1 00000f78: SLOAD 00000f79: SWAP1 00000f7a: PUSH2 0x0100 00000f7d: EXP 00000f7e: SWAP1 00000f7f: DIV 00000f80: PUSH4 0xffffffff 00000f85: AND 00000f86: PUSH4 0xffffffff 00000f8b: AND 00000f8c: DUP2 00000f8d: MSTORE 00000f8e: PUSH1 0x20 00000f90: ADD 00000f91: SWAP1 00000f92: PUSH1 0x04 00000f94: ADD 00000f95: SWAP1 00000f96: PUSH1 0x20 00000f98: DUP3 00000f99: PUSH1 0x03 00000f9b: ADD 00000f9c: DIV 00000f9d: SWAP3 00000f9e: DUP4 00000f9f: ADD 00000fa0: SWAP3 00000fa1: PUSH1 0x01 00000fa3: SUB 00000fa4: DUP3 00000fa5: MUL 00000fa6: SWAP2 00000fa7: POP 00000fa8: DUP1 00000fa9: DUP5 00000faa: GT 00000fab: PUSH2 0x0f74 00000fae: JUMPI 00000faf: SWAP1 00000fb0: POP 00000fb1: JUMPDEST 00000fb2: POP 00000fb3: POP 00000fb4: POP 00000fb5: POP 00000fb6: POP 00000fb7: SWAP1 00000fb8: POP 00000fb9: SWAP1 00000fba: JUMP 00000fbb: JUMPDEST 00000fbc: PUSH1 0x00 00000fbe: PUSH2 0x0fc8 00000fc1: PUSH1 0x01 00000fc3: DUP4 00000fc4: PUSH2 0x1bbc 00000fc7: JUMP 00000fc8: JUMPDEST 00000fc9: PUSH1 0x01 00000fcb: PUSH1 0x01 00000fcd: PUSH1 0xa0 00000fcf: SHL 00000fd0: SUB 00000fd1: DUP1 00000fd2: DUP4 00000fd3: AND 00000fd4: PUSH1 0x00 00000fd6: SWAP1 00000fd7: DUP2 00000fd8: MSTORE 00000fd9: PUSH1 0x02 00000fdb: PUSH1 0x20 00000fdd: MSTORE 00000fde: PUSH1 0x40 00000fe0: SWAP1 00000fe1: KECCAK256 00000fe2: PUSH1 0x01 00000fe4: ADD 00000fe5: SLOAD 00000fe6: PUSH2 0x0d92 00000fe9: SWAP2 00000fea: AND 00000feb: DUP4 00000fec: PUSH2 0x1e99 00000fef: JUMP 00000ff0: JUMPDEST 00000ff1: PUSH1 0x00 00000ff3: PUSH2 0x0ffd 00000ff6: PUSH1 0x01 00000ff8: DUP4 00000ff9: PUSH2 0x1bbc 00000ffc: JUMP 00000ffd: JUMPDEST 00000ffe: POP 00000fff: PUSH1 0x01 00001001: PUSH1 0x01 00001003: PUSH1 0xa0 00001005: SHL 00001006: SUB 00001007: AND 00001008: PUSH1 0x00 0000100a: SWAP1 0000100b: DUP2 0000100c: MSTORE 0000100d: PUSH1 0x08 0000100f: PUSH1 0x20 00001011: MSTORE 00001012: PUSH1 0x40 00001014: SWAP1 00001015: KECCAK256 00001016: SLOAD 00001017: SWAP1 00001018: JUMP 00001019: JUMPDEST 0000101a: PUSH1 0x00 0000101c: PUSH2 0x1026 0000101f: PUSH1 0x01 00001021: DUP4 00001022: PUSH2 0x1bbc 00001025: JUMP 00001026: JUMPDEST 00001027: PUSH2 0x0d92 0000102a: PUSH1 0x01 0000102c: DUP4 0000102d: PUSH2 0x1ee9 00001030: JUMP 00001031: JUMPDEST 00001032: PUSH2 0x1039 00001035: PUSH2 0x127d 00001038: JUMP 00001039: JUMPDEST 0000103a: PUSH2 0x1058 0000103d: JUMPI 0000103e: PUSH1 0x40 00001040: MLOAD 00001041: PUSH1 0x01 00001043: PUSH1 0xe5 00001045: SHL 00001046: PUSH3 0x461bcd 0000104a: MUL 0000104b: DUP2 0000104c: MSTORE 0000104d: PUSH1 0x04 0000104f: ADD 00001050: PUSH2 0x0be3 00001053: SWAP1 00001054: PUSH2 0x5735 00001057: JUMP 00001058: JUMPDEST 00001059: PUSH1 0x00 0000105b: DUP1 0000105c: SLOAD 0000105d: PUSH1 0x40 0000105f: MLOAD 00001060: PUSH1 0x01 00001062: PUSH1 0x01 00001064: PUSH1 0xa0 00001066: SHL 00001067: SUB 00001068: SWAP1 00001069: SWAP2 0000106a: AND 0000106b: SWAP1 0000106c: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000108d: SWAP1 0000108e: DUP4 0000108f: SWAP1 00001090: LOG3 00001091: PUSH1 0x00 00001093: DUP1 00001094: SLOAD 00001095: PUSH1 0x01 00001097: PUSH1 0x01 00001099: PUSH1 0xa0 0000109b: SHL 0000109c: SUB 0000109d: NOT 0000109e: AND 0000109f: SWAP1 000010a0: SSTORE 000010a1: JUMP 000010a2: JUMPDEST 000010a3: PUSH2 0x10aa 000010a6: PUSH2 0x127d 000010a9: JUMP 000010aa: JUMPDEST 000010ab: PUSH2 0x10c9 000010ae: JUMPI 000010af: PUSH1 0x40 000010b1: MLOAD 000010b2: PUSH1 0x01 000010b4: PUSH1 0xe5 000010b6: SHL 000010b7: PUSH3 0x461bcd 000010bb: MUL 000010bc: DUP2 000010bd: MSTORE 000010be: PUSH1 0x04 000010c0: ADD 000010c1: PUSH2 0x0be3 000010c4: SWAP1 000010c5: PUSH2 0x5735 000010c8: JUMP 000010c9: JUMPDEST 000010ca: PUSH1 0x40 000010cc: MLOAD 000010cd: PUSH1 0x01 000010cf: PUSH1 0xe0 000010d1: SHL 000010d2: PUSH4 0x2241a75b 000010d7: MUL 000010d8: DUP2 000010d9: MSTORE 000010da: PUSH20 0x723091df82333033f1b646fe1ad7bbbf9cbe420c 000010ef: SWAP1 000010f0: PUSH4 0x2241a75b 000010f5: SWAP1 000010f6: PUSH2 0x110a 000010f9: SWAP1 000010fa: PUSH1 0x01 000010fc: SWAP1 000010fd: DUP8 000010fe: SWAP1 000010ff: DUP8 00001100: SWAP1 00001101: DUP8 00001102: SWAP1 00001103: PUSH1 0x04 00001105: ADD 00001106: PUSH2 0x5894 00001109: JUMP 0000110a: JUMPDEST 0000110b: PUSH1 0x00 0000110d: PUSH1 0x40 0000110f: MLOAD 00001110: DUP1 00001111: DUP4 00001112: SUB 00001113: DUP2 00001114: DUP7 00001115: DUP1 00001116: EXTCODESIZE 00001117: ISZERO 00001118: DUP1 00001119: ISZERO 0000111a: PUSH2 0x1122 0000111d: JUMPI 0000111e: PUSH1 0x00 00001120: DUP1 00001121: REVERT 00001122: JUMPDEST 00001123: POP 00001124: GAS 00001125: DELEGATECALL 00001126: ISZERO 00001127: DUP1 00001128: ISZERO 00001129: PUSH2 0x1136 0000112c: JUMPI 0000112d: RETURNDATASIZE 0000112e: PUSH1 0x00 00001130: DUP1 00001131: RETURNDATACOPY 00001132: RETURNDATASIZE 00001133: PUSH1 0x00 00001135: REVERT 00001136: JUMPDEST 00001137: POP 00001138: POP 00001139: POP 0000113a: POP 0000113b: POP 0000113c: POP 0000113d: POP 0000113e: JUMP 0000113f: JUMPDEST 00001140: PUSH1 0x00 00001142: PUSH2 0x0bb4 00001145: DUP5 00001146: DUP5 00001147: PUSH2 0x1155 0000114a: CALLDATASIZE 0000114b: DUP7 0000114c: SWAP1 0000114d: SUB 0000114e: DUP7 0000114f: ADD 00001150: DUP7 00001151: PUSH2 0x460c 00001154: JUMP 00001155: JUMPDEST 00001156: PUSH2 0x1f04 00001159: JUMP 0000115a: JUMPDEST 0000115b: PUSH1 0x40 0000115d: MLOAD 0000115e: PUSH1 0x01 00001160: PUSH1 0xe6 00001162: SHL 00001163: PUSH4 0x03d5fb89 00001168: MUL 00001169: DUP2 0000116a: MSTORE 0000116b: PUSH20 0xbf7e93f3a5730416e2229eac9d4fa9794b327477 00001180: SWAP1 00001181: PUSH4 0xf57ee240 00001186: SWAP1 00001187: PUSH2 0x1199 0000118a: SWAP1 0000118b: PUSH1 0x01 0000118d: SWAP1 0000118e: DUP6 0000118f: SWAP1 00001190: CALLVALUE 00001191: SWAP1 00001192: PUSH1 0x04 00001194: ADD 00001195: PUSH2 0x596b 00001198: JUMP 00001199: JUMPDEST 0000119a: PUSH1 0x00 0000119c: PUSH1 0x40 0000119e: MLOAD 0000119f: DUP1 000011a0: DUP4 000011a1: SUB 000011a2: DUP2 000011a3: DUP7 000011a4: DUP1 000011a5: EXTCODESIZE 000011a6: ISZERO 000011a7: DUP1 000011a8: ISZERO 000011a9: PUSH2 0x11b1 000011ac: JUMPI 000011ad: PUSH1 0x00 000011af: DUP1 000011b0: REVERT 000011b1: JUMPDEST 000011b2: POP 000011b3: GAS 000011b4: DELEGATECALL 000011b5: ISZERO 000011b6: DUP1 000011b7: ISZERO 000011b8: PUSH2 0x11c5 000011bb: JUMPI 000011bc: RETURNDATASIZE 000011bd: PUSH1 0x00 000011bf: DUP1 000011c0: RETURNDATACOPY 000011c1: RETURNDATASIZE 000011c2: PUSH1 0x00 000011c4: REVERT 000011c5: JUMPDEST 000011c6: POP 000011c7: POP 000011c8: POP 000011c9: POP 000011ca: POP 000011cb: JUMP 000011cc: JUMPDEST 000011cd: PUSH1 0x00 000011cf: PUSH2 0x11d9 000011d2: PUSH1 0x01 000011d4: DUP4 000011d5: PUSH2 0x1bbc 000011d8: JUMP 000011d9: JUMPDEST 000011da: PUSH2 0x0d92 000011dd: PUSH1 0x01 000011df: DUP4 000011e0: PUSH2 0x2013 000011e3: JUMP 000011e4: JUMPDEST 000011e5: PUSH2 0x11ec 000011e8: PUSH2 0x127d 000011eb: JUMP 000011ec: JUMPDEST 000011ed: PUSH2 0x120b 000011f0: JUMPI 000011f1: PUSH1 0x40 000011f3: MLOAD 000011f4: PUSH1 0x01 000011f6: PUSH1 0xe5 000011f8: SHL 000011f9: PUSH3 0x461bcd 000011fd: MUL 000011fe: DUP2 000011ff: MSTORE 00001200: PUSH1 0x04 00001202: ADD 00001203: PUSH2 0x0be3 00001206: SWAP1 00001207: PUSH2 0x5735 0000120a: JUMP 0000120b: JUMPDEST 0000120c: PUSH1 0x40 0000120e: MLOAD 0000120f: PUSH1 0x01 00001211: PUSH1 0xe1 00001213: SHL 00001214: PUSH4 0x0893a491 00001219: MUL 0000121a: DUP2 0000121b: MSTORE 0000121c: PUSH20 0x723091df82333033f1b646fe1ad7bbbf9cbe420c 00001231: SWAP1 00001232: PUSH4 0x11274922 00001237: SWAP1 00001238: PUSH2 0x1199 0000123b: SWAP1 0000123c: PUSH1 0x01 0000123e: SWAP1 0000123f: DUP6 00001240: SWAP1 00001241: PUSH1 0x04 00001243: ADD 00001244: PUSH2 0x59b5 00001247: JUMP 00001248: JUMPDEST 00001249: PUSH1 0x00 0000124b: SLOAD 0000124c: PUSH1 0x01 0000124e: PUSH1 0x01 00001250: PUSH1 0xa0 00001252: SHL 00001253: SUB 00001254: AND 00001255: SWAP1 00001256: JUMP 00001257: JUMPDEST 00001258: PUSH1 0x00 0000125a: PUSH2 0x1264 0000125d: PUSH1 0x01 0000125f: DUP4 00001260: PUSH2 0x1751 00001263: JUMP 00001264: JUMPDEST 00001265: PUSH2 0x1270 00001268: PUSH1 0x01 0000126a: DUP4 0000126b: DUP7 0000126c: PUSH2 0x1962 0000126f: JUMP 00001270: JUMPDEST 00001271: PUSH2 0x0bb4 00001274: PUSH1 0x01 00001276: DUP6 00001277: DUP6 00001278: DUP6 00001279: PUSH2 0x202e 0000127c: JUMP 0000127d: JUMPDEST 0000127e: PUSH1 0x00 00001280: SLOAD 00001281: PUSH1 0x01 00001283: PUSH1 0x01 00001285: PUSH1 0xa0 00001287: SHL 00001288: SUB 00001289: AND 0000128a: CALLER 0000128b: EQ 0000128c: SWAP1 0000128d: JUMP 0000128e: JUMPDEST 0000128f: PUSH1 0x00 00001291: PUSH2 0x0d92 00001294: PUSH1 0x01 00001296: DUP4 00001297: PUSH2 0x2087 0000129a: JUMP 0000129b: JUMPDEST 0000129c: PUSH1 0x01 0000129e: SLOAD 0000129f: PUSH2 0xffff 000012a2: AND 000012a3: SWAP1 000012a4: JUMP 000012a5: JUMPDEST 000012a6: PUSH2 0x0945 000012a9: PUSH1 0x01 000012ab: DUP3 000012ac: PUSH2 0x20aa 000012af: JUMP 000012b0: JUMPDEST 000012b1: PUSH2 0x12b8 000012b4: PUSH2 0x127d 000012b7: JUMP 000012b8: JUMPDEST 000012b9: PUSH2 0x12d7 000012bc: JUMPI 000012bd: PUSH1 0x40 000012bf: MLOAD 000012c0: PUSH1 0x01 000012c2: PUSH1 0xe5 000012c4: SHL 000012c5: PUSH3 0x461bcd 000012c9: MUL 000012ca: DUP2 000012cb: MSTORE 000012cc: PUSH1 0x04 000012ce: ADD 000012cf: PUSH2 0x0be3 000012d2: SWAP1 000012d3: PUSH2 0x5735 000012d6: JUMP 000012d7: JUMPDEST 000012d8: PUSH1 0x40 000012da: MLOAD 000012db: PUSH1 0x01 000012dd: PUSH1 0xe0 000012df: SHL 000012e0: PUSH4 0xfd9dbeeb 000012e5: MUL 000012e6: DUP2 000012e7: MSTORE 000012e8: PUSH20 0x723091df82333033f1b646fe1ad7bbbf9cbe420c 000012fd: SWAP1 000012fe: PUSH4 0xfd9dbeeb 00001303: SWAP1 00001304: PUSH2 0x1199 00001307: SWAP1 00001308: PUSH1 0x01 0000130a: SWAP1 0000130b: DUP6 0000130c: SWAP1 0000130d: PUSH1 0x04 0000130f: ADD 00001310: PUSH2 0x599a 00001313: JUMP 00001314: JUMPDEST 00001315: PUSH1 0x00 00001317: DUP1 00001318: PUSH2 0x1322 0000131b: PUSH1 0x01 0000131d: DUP5 0000131e: PUSH2 0x2333 00001321: JUMP 00001322: JUMPDEST 00001323: SWAP2 00001324: POP 00001325: SWAP2 00001326: POP 00001327: SWAP2 00001328: POP 00001329: SWAP2 0000132a: JUMP 0000132b: JUMPDEST 0000132c: PUSH2 0x0945 0000132f: PUSH1 0x01 00001331: PUSH2 0x133f 00001334: CALLDATASIZE 00001335: DUP5 00001336: SWAP1 00001337: SUB 00001338: DUP5 00001339: ADD 0000133a: DUP5 0000133b: PUSH2 0x45ed 0000133e: JUMP 0000133f: JUMPDEST 00001340: PUSH2 0x2449 00001343: JUMP 00001344: JUMPDEST 00001345: PUSH2 0x0e25 00001348: PUSH1 0x01 0000134a: PUSH2 0x24a6 0000134d: JUMP 0000134e: JUMPDEST 0000134f: PUSH2 0x1356 00001352: PUSH2 0x127d 00001355: JUMP 00001356: JUMPDEST 00001357: PUSH2 0x1375 0000135a: JUMPI 0000135b: PUSH1 0x40 0000135d: MLOAD 0000135e: PUSH1 0x01 00001360: PUSH1 0xe5 00001362: SHL 00001363: PUSH3 0x461bcd 00001367: MUL 00001368: DUP2 00001369: MSTORE 0000136a: PUSH1 0x04 0000136c: ADD 0000136d: PUSH2 0x0be3 00001370: SWAP1 00001371: PUSH2 0x5735 00001374: JUMP 00001375: JUMPDEST 00001376: PUSH1 0x40 00001378: MLOAD 00001379: PUSH1 0x01 0000137b: PUSH1 0xe0 0000137d: SHL 0000137e: PUSH4 0xe78e90d7 00001383: MUL 00001384: DUP2 00001385: MSTORE 00001386: PUSH20 0x723091df82333033f1b646fe1ad7bbbf9cbe420c 0000139b: SWAP1 0000139c: PUSH4 0xe78e90d7 000013a1: SWAP1 000013a2: PUSH2 0x1199 000013a5: SWAP1 000013a6: PUSH1 0x01 000013a8: SWAP1 000013a9: DUP6 000013aa: SWAP1 000013ab: PUSH1 0x04 000013ad: ADD 000013ae: PUSH2 0x599a 000013b1: JUMP 000013b2: JUMPDEST 000013b3: PUSH2 0x13ba 000013b6: PUSH2 0x127d 000013b9: JUMP 000013ba: JUMPDEST 000013bb: PUSH2 0x13d9 000013be: JUMPI 000013bf: PUSH1 0x40 000013c1: MLOAD 000013c2: PUSH1 0x01 000013c4: PUSH1 0xe5 000013c6: SHL 000013c7: PUSH3 0x461bcd 000013cb: MUL 000013cc: DUP2 000013cd: MSTORE 000013ce: PUSH1 0x04 000013d0: ADD 000013d1: PUSH2 0x0be3 000013d4: SWAP1 000013d5: PUSH2 0x5735 000013d8: JUMP 000013d9: JUMPDEST 000013da: PUSH1 0x40 000013dc: MLOAD 000013dd: PUSH1 0x01 000013df: PUSH1 0xe0 000013e1: SHL 000013e2: PUSH4 0x5b237955 000013e7: MUL 000013e8: DUP2 000013e9: MSTORE 000013ea: PUSH20 0x723091df82333033f1b646fe1ad7bbbf9cbe420c 000013ff: SWAP1 00001400: PUSH4 0x5b237955 00001405: SWAP1 00001406: PUSH2 0x1199 00001409: SWAP1 0000140a: PUSH1 0x01 0000140c: SWAP1 0000140d: DUP6 0000140e: SWAP1 0000140f: PUSH1 0x04 00001411: ADD 00001412: PUSH2 0x599a 00001415: JUMP 00001416: JUMPDEST 00001417: PUSH2 0x141e 0000141a: PUSH2 0x127d 0000141d: JUMP 0000141e: JUMPDEST 0000141f: PUSH2 0x143d 00001422: JUMPI 00001423: PUSH1 0x40 00001425: MLOAD 00001426: PUSH1 0x01 00001428: PUSH1 0xe5 0000142a: SHL 0000142b: PUSH3 0x461bcd 0000142f: MUL 00001430: DUP2 00001431: MSTORE 00001432: PUSH1 0x04 00001434: ADD 00001435: PUSH2 0x0be3 00001438: SWAP1 00001439: PUSH2 0x5735 0000143c: JUMP 0000143d: JUMPDEST 0000143e: PUSH1 0x40 00001440: MLOAD 00001441: PUSH1 0x01 00001443: PUSH1 0xe0 00001445: SHL 00001446: PUSH4 0x7fd46871 0000144b: MUL 0000144c: DUP2 0000144d: MSTORE 0000144e: PUSH20 0x723091df82333033f1b646fe1ad7bbbf9cbe420c 00001463: SWAP1 00001464: PUSH4 0x7fd46871 00001469: SWAP1 0000146a: PUSH2 0x0cbd 0000146d: SWAP1 0000146e: PUSH1 0x01 00001470: SWAP1 00001471: DUP7 00001472: SWAP1 00001473: DUP7 00001474: SWAP1 00001475: PUSH1 0x04 00001477: ADD 00001478: PUSH2 0x59d1 0000147b: JUMP 0000147c: JUMPDEST 0000147d: PUSH1 0x16 0000147f: SLOAD 00001480: PUSH4 0xffffffff 00001485: AND 00001486: SWAP1 00001487: JUMP 00001488: JUMPDEST 00001489: PUSH1 0x00 0000148b: PUSH2 0x1495 0000148e: PUSH1 0x01 00001490: DUP6 00001491: PUSH2 0x1751 00001494: JUMP 00001495: JUMPDEST 00001496: PUSH2 0x14a1 00001499: PUSH1 0x01 0000149b: DUP6 0000149c: DUP6 0000149d: PUSH2 0x1962 000014a0: JUMP 000014a1: JUMPDEST 000014a2: PUSH2 0x0bb4 000014a5: PUSH1 0x01 000014a7: PUSH2 0x14b0 000014aa: DUP5 000014ab: DUP8 000014ac: PUSH2 0x24c8 000014af: JUMP 000014b0: JUMPDEST 000014b1: DUP6 000014b2: PUSH2 0x24ff 000014b5: JUMP 000014b6: JUMPDEST 000014b7: PUSH2 0x14be 000014ba: PUSH2 0x127d 000014bd: JUMP 000014be: JUMPDEST 000014bf: PUSH2 0x14dd 000014c2: JUMPI 000014c3: PUSH1 0x40 000014c5: MLOAD 000014c6: PUSH1 0x01 000014c8: PUSH1 0xe5 000014ca: SHL 000014cb: PUSH3 0x461bcd 000014cf: MUL 000014d0: DUP2 000014d1: MSTORE 000014d2: PUSH1 0x04 000014d4: ADD 000014d5: PUSH2 0x0be3 000014d8: SWAP1 000014d9: PUSH2 0x5735 000014dc: JUMP 000014dd: JUMPDEST 000014de: PUSH1 0x01 000014e0: PUSH1 0x01 000014e2: PUSH1 0xa0 000014e4: SHL 000014e5: SUB 000014e6: DUP2 000014e7: AND 000014e8: PUSH2 0x1506 000014eb: JUMPI 000014ec: PUSH1 0x40 000014ee: MLOAD 000014ef: PUSH1 0x01 000014f1: PUSH1 0xe5 000014f3: SHL 000014f4: PUSH3 0x461bcd 000014f8: MUL 000014f9: DUP2 000014fa: MSTORE 000014fb: PUSH1 0x04 000014fd: ADD 000014fe: PUSH2 0x0be3 00001501: SWAP1 00001502: PUSH2 0x56f5 00001505: JUMP 00001506: JUMPDEST 00001507: PUSH1 0x00 00001509: DUP1 0000150a: SLOAD 0000150b: PUSH1 0x40 0000150d: MLOAD 0000150e: PUSH1 0x01 00001510: PUSH1 0x01 00001512: PUSH1 0xa0 00001514: SHL 00001515: SUB 00001516: DUP1 00001517: DUP6 00001518: AND 00001519: SWAP4 0000151a: SWAP3 0000151b: AND 0000151c: SWAP2 0000151d: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000153e: SWAP2 0000153f: LOG3 00001540: PUSH1 0x00 00001542: DUP1 00001543: SLOAD 00001544: PUSH1 0x01 00001546: PUSH1 0x01 00001548: PUSH1 0xa0 0000154a: SHL 0000154b: SUB 0000154c: NOT 0000154d: AND 0000154e: PUSH1 0x01 00001550: PUSH1 0x01 00001552: PUSH1 0xa0 00001554: SHL 00001555: SUB 00001556: SWAP3 00001557: SWAP1 00001558: SWAP3 00001559: AND 0000155a: SWAP2 0000155b: SWAP1 0000155c: SWAP2 0000155d: OR 0000155e: SWAP1 0000155f: SSTORE 00001560: JUMP 00001561: JUMPDEST 00001562: PUSH1 0x00 00001564: PUSH2 0x0933 00001567: PUSH1 0x01 00001569: PUSH2 0x14b0 0000156c: DUP5 0000156d: PUSH2 0x15fd 00001570: JUMP 00001571: JUMPDEST 00001572: PUSH2 0x0945 00001575: PUSH1 0x01 00001577: DUP3 00001578: PUSH2 0x2536 0000157b: JUMP 0000157c: JUMPDEST 0000157d: PUSH1 0x00 0000157f: DUP1 00001580: MLOAD 00001581: PUSH1 0x04 00001583: MLOAD 00001584: PUSH1 0x24 00001586: MLOAD 00001587: PUSH1 0x44 00001589: MLOAD 0000158a: PUSH1 0x01 0000158c: PUSH1 0xe0 0000158e: SHL 0000158f: PUSH4 0x23b872dd 00001594: MUL 00001595: PUSH1 0x00 00001597: MSTORE 00001598: DUP8 00001599: PUSH1 0x04 0000159b: MSTORE 0000159c: DUP7 0000159d: PUSH1 0x24 0000159f: MSTORE 000015a0: DUP6 000015a1: PUSH1 0x44 000015a3: MSTORE 000015a4: PUSH1 0x20 000015a6: PUSH1 0x00 000015a8: PUSH1 0x64 000015aa: PUSH1 0x00 000015ac: DUP1 000015ad: DUP14 000015ae: GAS 000015af: CALL 000015b0: PUSH1 0x00 000015b2: MLOAD 000015b3: DUP6 000015b4: PUSH1 0x00 000015b6: MSTORE 000015b7: DUP5 000015b8: PUSH1 0x04 000015ba: MSTORE 000015bb: DUP4 000015bc: PUSH1 0x24 000015be: MSTORE 000015bf: DUP3 000015c0: PUSH1 0x44 000015c2: MSTORE 000015c3: PUSH1 0x00 000015c5: DUP2 000015c6: GT 000015c7: PUSH1 0x20 000015c9: RETURNDATASIZE 000015ca: EQ 000015cb: AND 000015cc: PUSH1 0x00 000015ce: RETURNDATASIZE 000015cf: EQ 000015d0: OR 000015d1: PUSH1 0x01 000015d3: DUP4 000015d4: EQ 000015d5: AND 000015d6: SWAP7 000015d7: POP 000015d8: POP 000015d9: POP 000015da: POP 000015db: POP 000015dc: POP 000015dd: POP 000015de: DUP1 000015df: PUSH2 0x11c5 000015e2: JUMPI 000015e3: PUSH1 0x40 000015e5: MLOAD 000015e6: PUSH1 0x01 000015e8: PUSH1 0xe5 000015ea: SHL 000015eb: PUSH3 0x461bcd 000015ef: MUL 000015f0: DUP2 000015f1: MSTORE 000015f2: PUSH1 0x04 000015f4: ADD 000015f5: PUSH2 0x0be3 000015f8: SWAP1 000015f9: PUSH2 0x55c5 000015fc: JUMP 000015fd: JUMPDEST 000015fe: PUSH2 0x1605 00001601: PUSH2 0x3a74 00001604: JUMP 00001605: JUMPDEST 00001606: POP 00001607: PUSH1 0x40 00001609: DUP1 0000160a: MLOAD 0000160b: PUSH1 0x60 0000160d: DUP2 0000160e: ADD 0000160f: DUP3 00001610: MSTORE 00001611: PUSH1 0x00 00001613: DUP1 00001614: DUP3 00001615: MSTORE 00001616: PUSH1 0x20 00001618: DUP3 00001619: ADD 0000161a: MSTORE 0000161b: PUSH1 0x01 0000161d: PUSH1 0x01 0000161f: PUSH1 0xa0 00001621: SHL 00001622: SUB 00001623: SWAP3 00001624: SWAP1 00001625: SWAP3 00001626: AND 00001627: SWAP1 00001628: DUP3 00001629: ADD 0000162a: MSTORE 0000162b: SWAP1 0000162c: JUMP 0000162d: JUMPDEST 0000162e: PUSH1 0x00 00001630: PUSH2 0x163f 00001633: DUP4 00001634: DUP7 00001635: PUSH4 0xffffffff 0000163a: PUSH2 0x256d 0000163d: AND 0000163e: JUMP 0000163f: JUMPDEST 00001640: PUSH1 0x01 00001642: PUSH1 0x01 00001644: PUSH1 0xa0 00001646: SHL 00001647: SUB 00001648: DUP6 00001649: AND 0000164a: PUSH1 0x00 0000164c: SWAP1 0000164d: DUP2 0000164e: MSTORE 0000164f: PUSH1 0x20 00001651: DUP3 00001652: SWAP1 00001653: MSTORE 00001654: PUSH1 0x40 00001656: SWAP1 00001657: KECCAK256 00001658: SLOAD 00001659: SWAP1 0000165a: SWAP2 0000165b: POP 0000165c: PUSH2 0x166b 0000165f: SWAP1 00001660: DUP4 00001661: PUSH4 0xffffffff 00001666: PUSH2 0x25db 00001669: AND 0000166a: JUMP 0000166b: JUMPDEST 0000166c: PUSH1 0x01 0000166e: PUSH1 0x01 00001670: PUSH1 0xa0 00001672: SHL 00001673: SUB 00001674: DUP6 00001675: AND 00001676: PUSH1 0x00 00001678: SWAP1 00001679: DUP2 0000167a: MSTORE 0000167b: PUSH1 0x20 0000167d: DUP4 0000167e: DUP2 0000167f: MSTORE 00001680: PUSH1 0x40 00001682: DUP1 00001683: DUP4 00001684: KECCAK256 00001685: SWAP4 00001686: SWAP1 00001687: SWAP4 00001688: SSTORE 00001689: PUSH1 0x02 0000168b: DUP9 0000168c: ADD 0000168d: SWAP1 0000168e: MSTORE 0000168f: KECCAK256 00001690: SLOAD 00001691: PUSH2 0x16a0 00001694: SWAP1 00001695: DUP4 00001696: PUSH4 0xffffffff 0000169b: PUSH2 0x2603 0000169e: AND 0000169f: JUMP 000016a0: JUMPDEST 000016a1: PUSH1 0x01 000016a3: PUSH1 0x01 000016a5: PUSH1 0xa0 000016a7: SHL 000016a8: SUB 000016a9: SWAP1 000016aa: SWAP5 000016ab: AND 000016ac: PUSH1 0x00 000016ae: SWAP1 000016af: DUP2 000016b0: MSTORE 000016b1: PUSH1 0x02 000016b3: SWAP1 000016b4: SWAP6 000016b5: ADD 000016b6: PUSH1 0x20 000016b8: MSTORE 000016b9: POP 000016ba: POP 000016bb: PUSH1 0x40 000016bd: SWAP1 000016be: SWAP3 000016bf: KECCAK256 000016c0: SSTORE 000016c1: POP 000016c2: JUMP 000016c3: JUMPDEST 000016c4: DUP2 000016c5: PUSH1 0x01 000016c7: PUSH1 0x01 000016c9: PUSH1 0xa0 000016cb: SHL 000016cc: SUB 000016cd: AND 000016ce: DUP4 000016cf: PUSH1 0x01 000016d1: PUSH1 0x01 000016d3: PUSH1 0xa0 000016d5: SHL 000016d6: SUB 000016d7: AND 000016d8: PUSH32 0x5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f62 000016f9: DUP4 000016fa: PUSH1 0x40 000016fc: MLOAD 000016fd: PUSH2 0x1706 00001700: SWAP2 00001701: SWAP1 00001702: PUSH2 0x5a89 00001705: JUMP 00001706: JUMPDEST 00001707: PUSH1 0x40 00001709: MLOAD 0000170a: DUP1 0000170b: SWAP2 0000170c: SUB 0000170d: SWAP1 0000170e: LOG3 0000170f: POP 00001710: POP 00001711: POP 00001712: JUMP 00001713: JUMPDEST 00001714: CALLER 00001715: PUSH1 0x00 00001717: DUP2 00001718: DUP2 00001719: MSTORE 0000171a: PUSH1 0x13 0000171c: DUP5 0000171d: ADD 0000171e: PUSH1 0x20 00001720: SWAP1 00001721: DUP2 00001722: MSTORE 00001723: PUSH1 0x40 00001725: DUP1 00001726: DUP4 00001727: KECCAK256 00001728: PUSH1 0x01 0000172a: PUSH1 0x01 0000172c: PUSH1 0xa0 0000172e: SHL 0000172f: SUB 00001730: DUP7 00001731: AND 00001732: DUP5 00001733: MSTORE 00001734: SWAP1 00001735: SWAP2 00001736: MSTORE 00001737: SWAP1 00001738: KECCAK256 00001739: DUP1 0000173a: SLOAD 0000173b: PUSH1 0xff 0000173d: NOT 0000173e: AND 0000173f: PUSH1 0x01 00001741: OR 00001742: SWAP1 00001743: SSTORE 00001744: PUSH2 0x174d 00001747: SWAP1 00001748: DUP3 00001749: PUSH2 0x2655 0000174c: JUMP 0000174d: JUMPDEST 0000174e: POP 0000174f: POP 00001750: JUMP 00001751: JUMPDEST 00001752: DUP2 00001753: SLOAD 00001754: PUSH2 0xffff 00001757: SWAP1 00001758: DUP2 00001759: AND 0000175a: SWAP1 0000175b: DUP3 0000175c: AND 0000175d: LT 0000175e: PUSH2 0x174d 00001761: JUMPI 00001762: PUSH1 0x40 00001764: MLOAD 00001765: PUSH1 0x01 00001767: PUSH1 0xe5 00001769: SHL 0000176a: PUSH3 0x461bcd 0000176e: MUL 0000176f: DUP2 00001770: MSTORE 00001771: PUSH1 0x04 00001773: ADD 00001774: PUSH2 0x0be3 00001777: SWAP1 00001778: PUSH2 0x5795 0000177b: JUMP 0000177c: JUMPDEST 0000177d: PUSH2 0x1784 00001780: PUSH2 0x3a4b 00001783: JUMP 00001784: JUMPDEST 00001785: PUSH1 0x01 00001787: PUSH1 0x01 00001789: PUSH1 0xa0 0000178b: SHL 0000178c: SUB 0000178d: DUP4 0000178e: AND 0000178f: PUSH1 0x00 00001791: SWAP1 00001792: DUP2 00001793: MSTORE 00001794: PUSH1 0x03 00001796: DUP6 00001797: ADD 00001798: PUSH1 0x20 0000179a: SWAP1 0000179b: DUP2 0000179c: MSTORE 0000179d: PUSH1 0x40 0000179f: DUP1 000017a0: DUP4 000017a1: KECCAK256 000017a2: PUSH2 0xffff 000017a5: DUP7 000017a6: AND 000017a7: DUP5 000017a8: MSTORE 000017a9: DUP3 000017aa: MSTORE 000017ab: DUP1 000017ac: DUP4 000017ad: KECCAK256 000017ae: PUSH1 0x04 000017b0: DUP9 000017b1: ADD 000017b2: DUP4 000017b3: MSTORE 000017b4: SWAP3 000017b5: KECCAK256 000017b6: DUP3 000017b7: SLOAD 000017b8: SWAP1 000017b9: SWAP2 000017ba: DUP5 000017bb: ADD 000017bc: SWAP1 000017bd: PUSH7 0x01000000000000 000017c5: SWAP1 000017c6: DIV 000017c7: PUSH1 0xff 000017c9: AND 000017ca: PUSH1 0x01 000017cc: DUP2 000017cd: GT 000017ce: ISZERO 000017cf: PUSH2 0x17d4 000017d2: JUMPI 000017d3: INVALID 000017d4: JUMPDEST 000017d5: SWAP1 000017d6: DUP2 000017d7: PUSH1 0x01 000017d9: DUP2 000017da: GT 000017db: ISZERO 000017dc: PUSH2 0x17e1 000017df: JUMPI 000017e0: INVALID 000017e1: JUMPDEST 000017e2: SWAP1 000017e3: MSTORE 000017e4: POP 000017e5: DUP1 000017e6: SLOAD 000017e7: PUSH1 0x01 000017e9: DUP1 000017ea: DUP4 000017eb: ADD 000017ec: SLOAD 000017ed: PUSH1 0x01 000017ef: PUSH1 0x01 000017f1: PUSH1 0xa0 000017f3: SHL 000017f4: SUB 000017f5: SWAP3 000017f6: DUP4 000017f7: AND 000017f8: PUSH1 0x00 000017fa: DUP2 000017fb: DUP2 000017fc: MSTORE 000017fd: DUP11 000017fe: DUP5 000017ff: ADD 00001800: PUSH1 0x20 00001802: MSTORE 00001803: PUSH1 0x40 00001805: DUP2 00001806: KECCAK256 00001807: SWAP1 00001808: SWAP4 00001809: ADD 0000180a: SLOAD 0000180b: SWAP1 0000180c: SWAP4 0000180d: SWAP2 0000180e: DUP3 0000180f: AND 00001810: SWAP3 00001811: SWAP2 00001812: PUSH2 0x181c 00001815: SWAP2 00001816: AND 00001817: DUP5 00001818: PUSH2 0x1e99 0000181b: JUMP 0000181c: JUMPDEST 0000181d: PUSH1 0x01 0000181f: PUSH1 0x01 00001821: PUSH1 0xa0 00001823: SHL 00001824: SUB 00001825: DUP1 00001826: DUP5 00001827: AND 00001828: PUSH1 0x00 0000182a: SWAP1 0000182b: DUP2 0000182c: MSTORE 0000182d: PUSH1 0x01 0000182f: DUP1 00001830: DUP14 00001831: ADD 00001832: PUSH1 0x20 00001834: MSTORE 00001835: PUSH1 0x40 00001837: DUP3 00001838: KECCAK256 00001839: ADD 0000183a: SLOAD 0000183b: SWAP3 0000183c: SWAP4 0000183d: POP 0000183e: SWAP2 0000183f: PUSH2 0x1849 00001842: SWAP2 00001843: AND 00001844: DUP5 00001845: PUSH2 0x1e99 00001848: JUMP 00001849: JUMPDEST 0000184a: SWAP1 0000184b: POP 0000184c: PUSH1 0x00 0000184e: PUSH2 0x1859 00001851: DUP12 00001852: DUP7 00001853: DUP13 00001854: DUP13 00001855: PUSH2 0x202e 00001858: JUMP 00001859: JUMPDEST 0000185a: SWAP1 0000185b: POP 0000185c: PUSH1 0x00 0000185e: PUSH2 0x1869 00001861: DUP13 00001862: DUP7 00001863: DUP14 00001864: DUP14 00001865: PUSH2 0x202e 00001868: JUMP 00001869: JUMPDEST 0000186a: SWAP1 0000186b: POP 0000186c: PUSH2 0x1873 0000186f: PUSH2 0x2699 00001872: JUMP 00001873: JUMPDEST 00001874: PUSH2 0x189b 00001877: PUSH2 0x1886 0000187a: DUP5 0000187b: DUP8 0000187c: PUSH4 0xffffffff 00001881: PUSH2 0x26a5 00001884: AND 00001885: JUMP 00001886: JUMPDEST 00001887: PUSH2 0x1896 0000188a: DUP5 0000188b: DUP8 0000188c: PUSH4 0xffffffff 00001891: PUSH2 0x26a5 00001894: AND 00001895: JUMP 00001896: JUMPDEST 00001897: PUSH2 0x25db 0000189a: JUMP 0000189b: JUMPDEST 0000189c: DUP2 0000189d: PUSH2 0x18a2 000018a0: JUMPI 000018a1: INVALID 000018a2: JUMPDEST 000018a3: DIV 000018a4: PUSH1 0x40 000018a6: DUP11 000018a7: ADD 000018a8: MSTORE 000018a9: PUSH2 0x18b0 000018ac: PUSH2 0x2699 000018af: JUMP 000018b0: JUMPDEST 000018b1: PUSH1 0x01 000018b3: PUSH1 0x01 000018b5: PUSH1 0xa0 000018b7: SHL 000018b8: SUB 000018b9: DUP8 000018ba: AND 000018bb: PUSH1 0x00 000018bd: SWAP1 000018be: DUP2 000018bf: MSTORE 000018c0: PUSH1 0x01 000018c2: DUP11 000018c3: ADD 000018c4: PUSH1 0x20 000018c6: MSTORE 000018c7: PUSH1 0x40 000018c9: SWAP1 000018ca: KECCAK256 000018cb: SLOAD 000018cc: PUSH2 0x190a 000018cf: SWAP1 000018d0: PUSH2 0x18df 000018d3: SWAP1 000018d4: DUP8 000018d5: PUSH4 0xffffffff 000018da: PUSH2 0x26a5 000018dd: AND 000018de: JUMP 000018df: JUMPDEST 000018e0: PUSH1 0x01 000018e2: PUSH1 0x01 000018e4: PUSH1 0xa0 000018e6: SHL 000018e7: SUB 000018e8: DUP9 000018e9: AND 000018ea: PUSH1 0x00 000018ec: SWAP1 000018ed: DUP2 000018ee: MSTORE 000018ef: PUSH1 0x01 000018f1: DUP13 000018f2: ADD 000018f3: PUSH1 0x20 000018f5: MSTORE 000018f6: PUSH1 0x40 000018f8: SWAP1 000018f9: KECCAK256 000018fa: SLOAD 000018fb: PUSH2 0x1896 000018fe: SWAP1 000018ff: DUP8 00001900: PUSH4 0xffffffff 00001905: PUSH2 0x26a5 00001908: AND 00001909: JUMP 0000190a: JUMPDEST 0000190b: DUP2 0000190c: PUSH2 0x1911 0000190f: JUMPI 00001910: INVALID 00001911: JUMPDEST 00001912: DIV 00001913: PUSH1 0x60 00001915: DUP11 00001916: ADD 00001917: MSTORE 00001918: PUSH1 0x00 0000191a: DUP10 0000191b: PUSH1 0x20 0000191d: ADD 0000191e: MLOAD 0000191f: PUSH1 0x01 00001921: DUP2 00001922: GT 00001923: ISZERO 00001924: PUSH2 0x1929 00001927: JUMPI 00001928: INVALID 00001929: JUMPDEST 0000192a: EQ 0000192b: ISZERO 0000192c: PUSH2 0x194e 0000192f: JUMPI 00001930: PUSH2 0x1941 00001933: DUP10 00001934: PUSH1 0x40 00001936: ADD 00001937: MLOAD 00001938: DUP9 00001939: PUSH1 0x02 0000193b: ADD 0000193c: SLOAD 0000193d: PUSH2 0x26e2 00001940: JUMP 00001941: JUMPDEST 00001942: PUSH1 0x60 00001944: DUP11 00001945: ADD 00001946: MLOAD 00001947: LT 00001948: DUP10 00001949: MSTORE 0000194a: PUSH2 0x1953 0000194d: JUMP 0000194e: JUMPDEST 0000194f: PUSH1 0x00 00001951: DUP10 00001952: MSTORE 00001953: JUMPDEST 00001954: POP 00001955: POP 00001956: POP 00001957: POP 00001958: POP 00001959: POP 0000195a: POP 0000195b: POP 0000195c: SWAP4 0000195d: SWAP3 0000195e: POP 0000195f: POP 00001960: POP 00001961: JUMP 00001962: JUMPDEST 00001963: PUSH2 0xffff 00001966: DUP3 00001967: AND 00001968: PUSH1 0x00 0000196a: SWAP1 0000196b: DUP2 0000196c: MSTORE 0000196d: PUSH1 0x04 0000196f: DUP5 00001970: ADD 00001971: PUSH1 0x20 00001973: MSTORE 00001974: PUSH1 0x40 00001976: SWAP1 00001977: KECCAK256 00001978: SLOAD 00001979: PUSH1 0x01 0000197b: PUSH1 0x01 0000197d: PUSH1 0xa0 0000197f: SHL 00001980: SUB 00001981: DUP3 00001982: DUP2 00001983: AND 00001984: SWAP2 00001985: AND 00001986: EQ 00001987: DUP1 00001988: PUSH2 0x19b4 0000198b: JUMPI 0000198c: POP 0000198d: PUSH2 0xffff 00001990: DUP3 00001991: AND 00001992: PUSH1 0x00 00001994: SWAP1 00001995: DUP2 00001996: MSTORE 00001997: PUSH1 0x04 00001999: DUP5 0000199a: ADD 0000199b: PUSH1 0x20 0000199d: MSTORE 0000199e: PUSH1 0x40 000019a0: SWAP1 000019a1: KECCAK256 000019a2: PUSH1 0x01 000019a4: ADD 000019a5: SLOAD 000019a6: PUSH1 0x01 000019a8: PUSH1 0x01 000019aa: PUSH1 0xa0 000019ac: SHL 000019ad: SUB 000019ae: DUP3 000019af: DUP2 000019b0: AND 000019b1: SWAP2 000019b2: AND 000019b3: EQ 000019b4: JUMPDEST 000019b5: PUSH2 0x19d3 000019b8: JUMPI 000019b9: PUSH1 0x40 000019bb: MLOAD 000019bc: PUSH1 0x01 000019be: PUSH1 0xe5 000019c0: SHL 000019c1: PUSH3 0x461bcd 000019c5: MUL 000019c6: DUP2 000019c7: MSTORE 000019c8: PUSH1 0x04 000019ca: ADD 000019cb: PUSH2 0x0be3 000019ce: SWAP1 000019cf: PUSH2 0x56a5 000019d2: JUMP 000019d3: JUMPDEST 000019d4: POP 000019d5: POP 000019d6: POP 000019d7: JUMP 000019d8: JUMPDEST 000019d9: PUSH1 0x00 000019db: PUSH2 0x19e2 000019de: PUSH2 0x3a4b 000019e1: JUMP 000019e2: JUMPDEST 000019e3: PUSH2 0x19ed 000019e6: DUP7 000019e7: DUP6 000019e8: DUP8 000019e9: PUSH2 0x177c 000019ec: JUMP 000019ed: JUMPDEST 000019ee: PUSH1 0x01 000019f0: PUSH1 0x01 000019f2: PUSH1 0xa0 000019f4: SHL 000019f5: SUB 000019f6: DUP1 000019f7: DUP7 000019f8: AND 000019f9: PUSH1 0x00 000019fb: SWAP1 000019fc: DUP2 000019fd: MSTORE 000019fe: PUSH1 0x03 00001a00: DUP1 00001a01: DUP11 00001a02: ADD 00001a03: PUSH1 0x20 00001a05: SWAP1 00001a06: DUP2 00001a07: MSTORE 00001a08: PUSH1 0x40 00001a0a: DUP1 00001a0b: DUP5 00001a0c: KECCAK256 00001a0d: PUSH2 0xffff 00001a10: DUP13 00001a11: AND 00001a12: DUP1 00001a13: DUP7 00001a14: MSTORE 00001a15: SWAP1 00001a16: DUP4 00001a17: MSTORE 00001a18: DUP2 00001a19: DUP6 00001a1a: KECCAK256 00001a1b: SWAP6 00001a1c: DUP11 00001a1d: AND 00001a1e: DUP6 00001a1f: MSTORE 00001a20: PUSH1 0x01 00001a22: SWAP1 00001a23: SWAP6 00001a24: ADD 00001a25: DUP3 00001a26: MSTORE 00001a27: DUP1 00001a28: DUP5 00001a29: KECCAK256 00001a2a: SLOAD 00001a2b: DUP2 00001a2c: DUP8 00001a2d: ADD 00001a2e: MLOAD 00001a2f: SWAP6 00001a30: DUP6 00001a31: MSTORE 00001a32: PUSH1 0x04 00001a34: DUP14 00001a35: ADD 00001a36: SWAP1 00001a37: SWAP3 00001a38: MSTORE 00001a39: DUP4 00001a3a: KECCAK256 00001a3b: SWAP1 00001a3c: SWAP2 00001a3d: ADD 00001a3e: SLOAD 00001a3f: SWAP4 00001a40: SWAP5 00001a41: POP 00001a42: SWAP3 00001a43: SWAP1 00001a44: SWAP2 00001a45: PUSH2 0x1a4d 00001a48: SWAP2 00001a49: PUSH2 0x26e2 00001a4c: JUMP 00001a4d: JUMPDEST 00001a4e: SWAP1 00001a4f: POP 00001a50: DUP3 00001a51: PUSH1 0x60 00001a53: ADD 00001a54: MLOAD 00001a55: DUP2 00001a56: GT 00001a57: ISZERO 00001a58: PUSH2 0x1a67 00001a5b: JUMPI 00001a5c: PUSH1 0x00 00001a5e: SWAP4 00001a5f: POP 00001a60: POP 00001a61: POP 00001a62: POP 00001a63: PUSH2 0x0bb4 00001a66: JUMP 00001a67: JUMPDEST 00001a68: PUSH1 0x60 00001a6a: DUP4 00001a6b: ADD 00001a6c: MLOAD 00001a6d: PUSH1 0x01 00001a6f: PUSH1 0x01 00001a71: PUSH1 0xa0 00001a73: SHL 00001a74: SUB 00001a75: DUP1 00001a76: DUP8 00001a77: AND 00001a78: PUSH1 0x00 00001a7a: SWAP1 00001a7b: DUP2 00001a7c: MSTORE 00001a7d: PUSH1 0x01 00001a7f: DUP1 00001a80: DUP13 00001a81: ADD 00001a82: PUSH1 0x20 00001a84: MSTORE 00001a85: PUSH1 0x40 00001a87: DUP1 00001a88: DUP4 00001a89: KECCAK256 00001a8a: SWAP1 00001a8b: SWAP2 00001a8c: ADD 00001a8d: SLOAD 00001a8e: SWAP1 00001a8f: MLOAD 00001a90: PUSH1 0x01 00001a92: PUSH1 0xe0 00001a94: SHL 00001a95: PUSH4 0x41976e09 00001a9a: MUL 00001a9b: DUP2 00001a9c: MSTORE 00001a9d: SWAP4 00001a9e: DUP6 00001a9f: SWAP1 00001aa0: SUB 00001aa1: SWAP4 00001aa2: SWAP2 00001aa3: SWAP3 00001aa4: AND 00001aa5: SWAP1 00001aa6: PUSH4 0x41976e09 00001aab: SWAP1 00001aac: PUSH2 0x1ab9 00001aaf: SWAP1 00001ab0: DUP11 00001ab1: SWAP1 00001ab2: PUSH1 0x04 00001ab4: ADD 00001ab5: PUSH2 0x54fa 00001ab8: JUMP 00001ab9: JUMPDEST 00001aba: PUSH1 0x20 00001abc: PUSH1 0x40 00001abe: MLOAD 00001abf: DUP1 00001ac0: DUP4 00001ac1: SUB 00001ac2: DUP2 00001ac3: DUP7 00001ac4: DUP1 00001ac5: EXTCODESIZE 00001ac6: ISZERO 00001ac7: DUP1 00001ac8: ISZERO 00001ac9: PUSH2 0x1ad1 00001acc: JUMPI 00001acd: PUSH1 0x00 00001acf: DUP1 00001ad0: REVERT 00001ad1: JUMPDEST 00001ad2: POP 00001ad3: GAS 00001ad4: STATICCALL 00001ad5: ISZERO 00001ad6: DUP1 00001ad7: ISZERO 00001ad8: PUSH2 0x1ae5 00001adb: JUMPI 00001adc: RETURNDATASIZE 00001add: PUSH1 0x00 00001adf: DUP1 00001ae0: RETURNDATACOPY 00001ae1: RETURNDATASIZE 00001ae2: PUSH1 0x00 00001ae4: REVERT 00001ae5: JUMPDEST 00001ae6: POP 00001ae7: POP 00001ae8: POP 00001ae9: POP 00001aea: PUSH1 0x40 00001aec: MLOAD 00001aed: RETURNDATASIZE 00001aee: PUSH1 0x1f 00001af0: NOT 00001af1: PUSH1 0x1f 00001af3: DUP3 00001af4: ADD 00001af5: AND 00001af6: DUP3 00001af7: ADD 00001af8: DUP1 00001af9: PUSH1 0x40 00001afb: MSTORE 00001afc: POP 00001afd: PUSH2 0x1b09 00001b00: SWAP2 00001b01: SWAP1 00001b02: DUP2 00001b03: ADD 00001b04: SWAP1 00001b05: PUSH2 0x470e 00001b08: JUMP 00001b09: JUMPDEST 00001b0a: SWAP1 00001b0b: POP 00001b0c: PUSH1 0x00 00001b0e: PUSH2 0x1b17 00001b11: DUP4 00001b12: DUP4 00001b13: PUSH2 0x2700 00001b16: JUMP 00001b17: JUMPDEST 00001b18: SWAP1 00001b19: POP 00001b1a: DUP5 00001b1b: DUP2 00001b1c: GT 00001b1d: ISZERO 00001b1e: PUSH2 0x1b2f 00001b21: JUMPI 00001b22: DUP5 00001b23: SWAP7 00001b24: POP 00001b25: POP 00001b26: POP 00001b27: POP 00001b28: POP 00001b29: POP 00001b2a: POP 00001b2b: PUSH2 0x0bb4 00001b2e: JUMP 00001b2f: JUMPDEST 00001b30: SWAP6 00001b31: POP 00001b32: PUSH2 0x0bb4 00001b35: SWAP5 00001b36: POP 00001b37: POP 00001b38: POP 00001b39: POP 00001b3a: POP 00001b3b: JUMP 00001b3c: JUMPDEST 00001b3d: PUSH1 0x15 00001b3f: DUP3 00001b40: ADD 00001b41: SLOAD 00001b42: PUSH4 0xffffffff 00001b47: SWAP1 00001b48: DUP2 00001b49: AND 00001b4a: SWAP1 00001b4b: DUP3 00001b4c: AND 00001b4d: LT 00001b4e: PUSH2 0x174d 00001b51: JUMPI 00001b52: PUSH1 0x40 00001b54: MLOAD 00001b55: PUSH1 0x01 00001b57: PUSH1 0xe5 00001b59: SHL 00001b5a: PUSH3 0x461bcd 00001b5e: MUL 00001b5f: DUP2 00001b60: MSTORE 00001b61: PUSH1 0x04 00001b63: ADD 00001b64: PUSH2 0x0be3 00001b67: SWAP1 00001b68: PUSH2 0x5675 00001b6b: JUMP 00001b6c: JUMPDEST 00001b6d: PUSH1 0x00 00001b6f: PUSH4 0xffffffff 00001b74: DUP3 00001b75: AND 00001b76: PUSH1 0x00 00001b78: SWAP1 00001b79: DUP2 00001b7a: MSTORE 00001b7b: PUSH1 0x16 00001b7d: DUP5 00001b7e: ADD 00001b7f: PUSH1 0x20 00001b81: MSTORE 00001b82: PUSH1 0x40 00001b84: SWAP1 00001b85: KECCAK256 00001b86: SLOAD 00001b87: PUSH5 0x0100000000 00001b8d: SWAP1 00001b8e: DIV 00001b8f: PUSH1 0xff 00001b91: AND 00001b92: PUSH1 0x01 00001b94: DUP2 00001b95: GT 00001b96: ISZERO 00001b97: PUSH2 0x1b9c 00001b9a: JUMPI 00001b9b: INVALID 00001b9c: JUMPDEST 00001b9d: EQ 00001b9e: PUSH2 0x174d 00001ba1: JUMPI 00001ba2: PUSH1 0x40 00001ba4: MLOAD 00001ba5: PUSH1 0x01 00001ba7: PUSH1 0xe5 00001ba9: SHL 00001baa: PUSH3 0x461bcd 00001bae: MUL 00001baf: DUP2 00001bb0: MSTORE 00001bb1: PUSH1 0x04 00001bb3: ADD 00001bb4: PUSH2 0x0be3 00001bb7: SWAP1 00001bb8: PUSH2 0x5595 00001bbb: JUMP 00001bbc: JUMPDEST 00001bbd: PUSH2 0x1bc6 00001bc0: DUP3 00001bc1: DUP3 00001bc2: PUSH2 0x271e 00001bc5: JUMP 00001bc6: JUMPDEST 00001bc7: PUSH2 0x174d 00001bca: JUMPI 00001bcb: PUSH1 0x40 00001bcd: MLOAD 00001bce: PUSH1 0x01 00001bd0: PUSH1 0xe5 00001bd2: SHL 00001bd3: PUSH3 0x461bcd 00001bd7: MUL 00001bd8: DUP2 00001bd9: MSTORE 00001bda: PUSH1 0x04 00001bdc: ADD 00001bdd: PUSH2 0x0be3 00001be0: SWAP1 00001be1: PUSH2 0x55d5 00001be4: JUMP 00001be5: JUMPDEST 00001be6: PUSH1 0x00 00001be8: DUP1 00001be9: PUSH2 0x1bf2 00001bec: DUP6 00001bed: DUP6 00001bee: PUSH2 0x2333 00001bf1: JUMP 00001bf2: JUMPDEST 00001bf3: POP 00001bf4: SWAP1 00001bf5: POP 00001bf6: PUSH2 0x1c09 00001bf9: PUSH2 0x1c03 00001bfc: DUP7 00001bfd: DUP7 00001bfe: DUP7 00001bff: PUSH2 0x2744 00001c02: JUMP 00001c03: JUMPDEST 00001c04: DUP3 00001c05: PUSH2 0x27d8 00001c08: JUMP 00001c09: JUMPDEST 00001c0a: SWAP6 00001c0b: SWAP5 00001c0c: POP 00001c0d: POP 00001c0e: POP 00001c0f: POP 00001c10: POP 00001c11: JUMP 00001c12: JUMPDEST 00001c13: CALLER 00001c14: PUSH1 0x00 00001c16: DUP2 00001c17: DUP2 00001c18: MSTORE 00001c19: PUSH1 0x14 00001c1b: DUP4 00001c1c: ADD 00001c1d: PUSH1 0x20 00001c1f: MSTORE 00001c20: PUSH1 0x40 00001c22: SWAP1 00001c23: KECCAK256 00001c24: DUP1 00001c25: SLOAD 00001c26: PUSH1 0xff 00001c28: NOT 00001c29: AND 00001c2a: PUSH1 0x01 00001c2c: OR 00001c2d: SWAP1 00001c2e: SSTORE 00001c2f: PUSH2 0x0945 00001c32: SWAP1 00001c33: PUSH2 0x2802 00001c36: JUMP 00001c37: JUMPDEST 00001c38: PUSH1 0x00 00001c3a: CALLER 00001c3b: PUSH1 0x01 00001c3d: PUSH1 0x01 00001c3f: PUSH1 0xa0 00001c41: SHL 00001c42: SUB 00001c43: DUP4 00001c44: AND 00001c45: EQ 00001c46: DUP1 00001c47: PUSH2 0x0933 00001c4a: JUMPI 00001c4b: POP 00001c4c: POP 00001c4d: PUSH1 0x01 00001c4f: PUSH1 0x01 00001c51: PUSH1 0xa0 00001c53: SHL 00001c54: SUB 00001c55: AND 00001c56: PUSH1 0x00 00001c58: SWAP1 00001c59: DUP2 00001c5a: MSTORE 00001c5b: PUSH1 0x13 00001c5d: SWAP2 00001c5e: SWAP1 00001c5f: SWAP2 00001c60: ADD 00001c61: PUSH1 0x20 00001c63: SWAP1 00001c64: DUP2 00001c65: MSTORE 00001c66: PUSH1 0x40 00001c68: DUP1 00001c69: DUP4 00001c6a: KECCAK256 00001c6b: CALLER 00001c6c: DUP5 00001c6d: MSTORE 00001c6e: SWAP1 00001c6f: SWAP2 00001c70: MSTORE 00001c71: SWAP1 00001c72: KECCAK256 00001c73: SLOAD 00001c74: PUSH1 0xff 00001c76: AND 00001c77: ISZERO 00001c78: ISZERO 00001c79: PUSH1 0x01 00001c7b: EQ 00001c7c: SWAP1 00001c7d: JUMP 00001c7e: JUMPDEST 00001c7f: PUSH1 0x00 00001c81: DUP1 00001c82: PUSH1 0x00 00001c84: DUP1 00001c85: PUSH2 0x1c8e 00001c88: DUP8 00001c89: DUP8 00001c8a: PUSH2 0x2333 00001c8d: JUMP 00001c8e: JUMPDEST 00001c8f: SWAP2 00001c90: POP 00001c91: SWAP2 00001c92: POP 00001c93: PUSH1 0x00 00001c95: PUSH2 0x1c9f 00001c98: DUP9 00001c99: DUP9 00001c9a: DUP6 00001c9b: PUSH2 0x2839 00001c9e: JUMP 00001c9f: JUMPDEST 00001ca0: SWAP1 00001ca1: POP 00001ca2: DUP1 00001ca3: PUSH2 0x1cb6 00001ca6: JUMPI 00001ca7: POP 00001ca8: PUSH1 0x00 00001caa: SWAP4 00001cab: POP 00001cac: DUP4 00001cad: SWAP3 00001cae: POP 00001caf: PUSH2 0x1da9 00001cb2: SWAP2 00001cb3: POP 00001cb4: POP 00001cb5: JUMP 00001cb6: JUMPDEST 00001cb7: PUSH1 0x00 00001cb9: PUSH2 0x1cd3 00001cbc: DUP8 00001cbd: PUSH2 0x1cc7 00001cc0: DUP12 00001cc1: DUP12 00001cc2: DUP8 00001cc3: PUSH2 0x284e 00001cc6: JUMP 00001cc7: JUMPDEST 00001cc8: SWAP1 00001cc9: PUSH4 0xffffffff 00001cce: PUSH2 0x25db 00001cd1: AND 00001cd2: JUMP 00001cd3: JUMPDEST 00001cd4: SWAP1 00001cd5: POP 00001cd6: PUSH1 0x00 00001cd8: PUSH2 0x1cff 00001cdb: DUP4 00001cdc: PUSH2 0x1cf3 00001cdf: PUSH2 0x1ce6 00001ce2: PUSH2 0x2699 00001ce5: JUMP 00001ce6: JUMPDEST 00001ce7: DUP6 00001ce8: SWAP1 00001ce9: PUSH4 0xffffffff 00001cee: PUSH2 0x26a5 00001cf1: AND 00001cf2: JUMP 00001cf3: JUMPDEST 00001cf4: SWAP1 00001cf5: PUSH4 0xffffffff 00001cfa: PUSH2 0x2873 00001cfd: AND 00001cfe: JUMP 00001cff: JUMPDEST 00001d00: PUSH1 0x01 00001d02: PUSH1 0x01 00001d04: PUSH1 0xa0 00001d06: SHL 00001d07: SUB 00001d08: DUP1 00001d09: DUP12 00001d0a: AND 00001d0b: PUSH1 0x00 00001d0d: SWAP1 00001d0e: DUP2 00001d0f: MSTORE 00001d10: PUSH1 0x01 00001d12: DUP14 00001d13: ADD 00001d14: PUSH1 0x20 00001d16: MSTORE 00001d17: PUSH1 0x40 00001d19: SWAP1 00001d1a: KECCAK256 00001d1b: PUSH1 0x02 00001d1d: ADD 00001d1e: SLOAD 00001d1f: SWAP2 00001d20: SWAP3 00001d21: POP 00001d22: PUSH2 0x1d2c 00001d25: SWAP2 00001d26: AND 00001d27: DUP3 00001d28: PUSH2 0x28a0 00001d2b: JUMP 00001d2c: JUMPDEST 00001d2d: SWAP7 00001d2e: POP 00001d2f: PUSH2 0x1d36 00001d32: PUSH2 0x2699 00001d35: JUMP 00001d36: JUMPDEST 00001d37: PUSH1 0x03 00001d39: MUL 00001d3a: DUP8 00001d3b: GT 00001d3c: ISZERO 00001d3d: PUSH2 0x1d5b 00001d40: JUMPI 00001d41: PUSH1 0x40 00001d43: MLOAD 00001d44: PUSH1 0x01 00001d46: PUSH1 0xe5 00001d48: SHL 00001d49: PUSH3 0x461bcd 00001d4d: MUL 00001d4e: DUP2 00001d4f: MSTORE 00001d50: PUSH1 0x04 00001d52: ADD 00001d53: PUSH2 0x0be3 00001d56: SWAP1 00001d57: PUSH2 0x5725 00001d5a: JUMP 00001d5b: JUMPDEST 00001d5c: PUSH1 0x00 00001d5e: PUSH2 0x1d67 00001d61: DUP4 00001d62: DUP10 00001d63: PUSH2 0x26e2 00001d66: JUMP 00001d67: JUMPDEST 00001d68: SWAP1 00001d69: POP 00001d6a: PUSH1 0x00 00001d6c: PUSH2 0x1d93 00001d6f: DUP3 00001d70: PUSH2 0x1d8e 00001d73: DUP15 00001d74: PUSH1 0x06 00001d76: ADD 00001d77: PUSH1 0x00 00001d79: ADD 00001d7a: SLOAD 00001d7b: PUSH2 0x1d82 00001d7e: PUSH2 0x2699 00001d81: JUMP 00001d82: JUMPDEST 00001d83: SWAP1 00001d84: PUSH4 0xffffffff 00001d89: PUSH2 0x28de 00001d8c: AND 00001d8d: JUMP 00001d8e: JUMPDEST 00001d8f: PUSH2 0x27d8 00001d92: JUMP 00001d93: JUMPDEST 00001d94: SWAP1 00001d95: POP 00001d96: PUSH2 0x1d9f 00001d99: DUP2 00001d9a: DUP7 00001d9b: PUSH2 0x2700 00001d9e: JUMP 00001d9f: JUMPDEST 00001da0: SWAP8 00001da1: POP 00001da2: POP 00001da3: POP 00001da4: POP 00001da5: POP 00001da6: POP 00001da7: POP 00001da8: POP 00001da9: JUMPDEST 00001daa: SWAP4 00001dab: POP 00001dac: SWAP4 00001dad: SWAP2 00001dae: POP 00001daf: POP 00001db0: JUMP 00001db1: JUMPDEST 00001db2: PUSH1 0x12 00001db4: DUP3 00001db5: ADD 00001db6: SLOAD 00001db7: PUSH1 0x00 00001db9: SWAP1 00001dba: DUP2 00001dbb: SWAP1 00001dbc: PUSH2 0x1dce 00001dbf: SWAP1 00001dc0: PUSH1 0x01 00001dc2: PUSH1 0x01 00001dc4: PUSH1 0xa0 00001dc6: SHL 00001dc7: SUB 00001dc8: AND 00001dc9: DUP5 00001dca: PUSH2 0x2909 00001dcd: JUMP 00001dce: JUMPDEST 00001dcf: SWAP1 00001dd0: POP 00001dd1: DUP1 00001dd2: PUSH2 0x1de5 00001dd5: JUMPI 00001dd6: PUSH2 0x1ddd 00001dd9: PUSH2 0x2950 00001ddc: JUMP 00001ddd: JUMPDEST 00001dde: SWAP2 00001ddf: POP 00001de0: POP 00001de1: PUSH2 0x0d92 00001de4: JUMP 00001de5: JUMPDEST 00001de6: PUSH1 0x0f 00001de8: DUP5 00001de9: ADD 00001dea: SLOAD 00001deb: PUSH1 0xf8 00001ded: DUP2 00001dee: SWAP1 00001def: SHR 00001df0: PUSH1 0x00 00001df2: PUSH2 0x1e09 00001df5: DUP5 00001df6: PUSH8 0x0de0b6b3a7640000 00001dff: PUSH4 0xffffffff 00001e04: PUSH2 0x2873 00001e07: AND 00001e08: JUMP 00001e09: JUMPDEST 00001e0a: SWAP4 00001e0b: POP 00001e0c: PUSH1 0x00 00001e0e: JUMPDEST 00001e0f: DUP3 00001e10: DUP2 00001e11: LT 00001e12: ISZERO 00001e13: PUSH2 0x1e4f 00001e16: JUMPI 00001e17: PUSH1 0x08 00001e19: PUSH1 0x02 00001e1b: PUSH1 0x05 00001e1d: DUP4 00001e1e: MUL 00001e1f: ADD 00001e20: MUL 00001e21: DUP5 00001e22: SWAP1 00001e23: SHL 00001e24: PUSH1 0xe0 00001e26: SHR 00001e27: SWAP2 00001e28: POP 00001e29: DUP2 00001e2a: DUP6 00001e2b: LT 00001e2c: ISZERO 00001e2d: PUSH2 0x1e47 00001e30: JUMPI 00001e31: PUSH1 0x08 00001e33: PUSH1 0x06 00001e35: PUSH1 0x05 00001e37: DUP4 00001e38: MUL 00001e39: ADD 00001e3a: MUL 00001e3b: DUP5 00001e3c: SWAP1 00001e3d: SHL 00001e3e: PUSH1 0xf8 00001e40: SHR 00001e41: SWAP6 00001e42: POP 00001e43: PUSH2 0x1e4f 00001e46: JUMP 00001e47: JUMPDEST 00001e48: PUSH1 0x01 00001e4a: ADD 00001e4b: PUSH2 0x1e0e 00001e4e: JUMP 00001e4f: JUMPDEST 00001e50: POP 00001e51: DUP5 00001e52: PUSH2 0x1e65 00001e55: JUMPI 00001e56: DUP3 00001e57: PUSH1 0x01 00001e59: BYTE 00001e5a: PUSH1 0xf8 00001e5c: SHL 00001e5d: PUSH1 0xf8 00001e5f: SHR 00001e60: PUSH1 0xff 00001e62: AND 00001e63: SWAP5 00001e64: POP 00001e65: JUMPDEST 00001e66: PUSH2 0x1e6d 00001e69: PUSH2 0x2950 00001e6c: JUMP 00001e6d: JUMPDEST 00001e6e: DUP6 00001e6f: GT 00001e70: ISZERO 00001e71: PUSH2 0x1e8f 00001e74: JUMPI 00001e75: PUSH1 0x40 00001e77: MLOAD 00001e78: PUSH1 0x01 00001e7a: PUSH1 0xe5 00001e7c: SHL 00001e7d: PUSH3 0x461bcd 00001e81: MUL 00001e82: DUP2 00001e83: MSTORE 00001e84: PUSH1 0x04 00001e86: ADD 00001e87: PUSH2 0x0be3 00001e8a: SWAP1 00001e8b: PUSH2 0x55b5 00001e8e: JUMP 00001e8f: JUMPDEST 00001e90: POP 00001e91: POP 00001e92: POP 00001e93: POP 00001e94: SWAP3 00001e95: SWAP2 00001e96: POP 00001e97: POP 00001e98: JUMP 00001e99: JUMPDEST 00001e9a: PUSH1 0x00 00001e9c: PUSH1 0x01 00001e9e: PUSH1 0xe0 00001ea0: SHL 00001ea1: PUSH4 0x41976e09 00001ea6: MUL 00001ea7: DUP2 00001ea8: DUP1 00001ea9: PUSH2 0x1ebc 00001eac: DUP7 00001ead: DUP5 00001eae: PUSH1 0x01 00001eb0: PUSH1 0x01 00001eb2: PUSH1 0xa0 00001eb4: SHL 00001eb5: SUB 00001eb6: DUP9 00001eb7: AND 00001eb8: PUSH2 0x2955 00001ebb: JUMP 00001ebc: JUMPDEST 00001ebd: SWAP2 00001ebe: POP 00001ebf: SWAP2 00001ec0: POP 00001ec1: DUP1 00001ec2: PUSH2 0x1ee0 00001ec5: JUMPI 00001ec6: PUSH1 0x40 00001ec8: MLOAD 00001ec9: PUSH1 0x01 00001ecb: PUSH1 0xe5 00001ecd: SHL 00001ece: PUSH3 0x461bcd 00001ed2: MUL 00001ed3: DUP2 00001ed4: MSTORE 00001ed5: PUSH1 0x04 00001ed7: ADD 00001ed8: PUSH2 0x0be3 00001edb: SWAP1 00001edc: PUSH2 0x5605 00001edf: JUMP 00001ee0: JUMPDEST 00001ee1: POP 00001ee2: SWAP5 00001ee3: SWAP4 00001ee4: POP 00001ee5: POP 00001ee6: POP 00001ee7: POP 00001ee8: JUMP 00001ee9: JUMPDEST 00001eea: PUSH1 0x00 00001eec: DUP1 00001eed: PUSH2 0x1ef6 00001ef0: DUP5 00001ef1: DUP5 00001ef2: PUSH2 0x2333 00001ef5: JUMP 00001ef6: JUMPDEST 00001ef7: POP 00001ef8: SWAP1 00001ef9: POP 00001efa: PUSH2 0x0bb4 00001efd: DUP5 00001efe: DUP5 00001eff: DUP4 00001f00: PUSH2 0x2839 00001f03: JUMP 00001f04: JUMPDEST 00001f05: DUP1 00001f06: MLOAD 00001f07: PUSH1 0x00 00001f09: SWAP1 00001f0a: PUSH1 0x01 00001f0c: DUP2 00001f0d: SWAP1 00001f0e: BYTE 00001f0f: PUSH1 0xf8 00001f11: SWAP1 00001f12: DUP2 00001f13: SHL 00001f14: DUP2 00001f15: SHR 00001f16: SWAP2 00001f17: DUP4 00001f18: SWAP2 00001f19: SWAP1 00001f1a: DUP3 00001f1b: BYTE 00001f1c: DUP2 00001f1d: SHL 00001f1e: SWAP1 00001f1f: SHR 00001f20: DUP3 00001f21: PUSH2 0x1fa8 00001f24: JUMPI 00001f25: PUSH1 0x01 00001f27: DUP8 00001f28: PUSH1 0x40 00001f2a: MLOAD 00001f2b: PUSH1 0x20 00001f2d: ADD 00001f2e: PUSH2 0x1f37 00001f31: SWAP2 00001f32: SWAP1 00001f33: PUSH2 0x54ad 00001f36: JUMP 00001f37: JUMPDEST 00001f38: PUSH1 0x40 00001f3a: MLOAD 00001f3b: PUSH1 0x20 00001f3d: DUP2 00001f3e: DUP4 00001f3f: SUB 00001f40: SUB 00001f41: DUP2 00001f42: MSTORE 00001f43: SWAP1 00001f44: PUSH1 0x40 00001f46: MSTORE 00001f47: DUP1 00001f48: MLOAD 00001f49: SWAP1 00001f4a: PUSH1 0x20 00001f4c: ADD 00001f4d: KECCAK256 00001f4e: DUP3 00001f4f: DUP8 00001f50: PUSH1 0x20 00001f52: ADD 00001f53: MLOAD 00001f54: DUP9 00001f55: PUSH1 0x40 00001f57: ADD 00001f58: MLOAD 00001f59: PUSH1 0x40 00001f5b: MLOAD 00001f5c: PUSH1 0x00 00001f5e: DUP2 00001f5f: MSTORE 00001f60: PUSH1 0x20 00001f62: ADD 00001f63: PUSH1 0x40 00001f65: MSTORE 00001f66: PUSH1 0x40 00001f68: MLOAD 00001f69: PUSH2 0x1f75 00001f6c: SWAP5 00001f6d: SWAP4 00001f6e: SWAP3 00001f6f: SWAP2 00001f70: SWAP1 00001f71: PUSH2 0x5550 00001f74: JUMP 00001f75: JUMPDEST 00001f76: PUSH1 0x20 00001f78: PUSH1 0x40 00001f7a: MLOAD 00001f7b: PUSH1 0x20 00001f7d: DUP2 00001f7e: SUB 00001f7f: SWAP1 00001f80: DUP1 00001f81: DUP5 00001f82: SUB 00001f83: SWAP1 00001f84: DUP6 00001f85: GAS 00001f86: STATICCALL 00001f87: ISZERO 00001f88: DUP1 00001f89: ISZERO 00001f8a: PUSH2 0x1f97 00001f8d: JUMPI 00001f8e: RETURNDATASIZE 00001f8f: PUSH1 0x00 00001f91: DUP1 00001f92: RETURNDATACOPY 00001f93: RETURNDATASIZE 00001f94: PUSH1 0x00 00001f96: REVERT 00001f97: JUMPDEST 00001f98: POP 00001f99: POP 00001f9a: POP 00001f9b: PUSH1 0x20 00001f9d: PUSH1 0x40 00001f9f: MLOAD 00001fa0: SUB 00001fa1: MLOAD 00001fa2: SWAP2 00001fa3: POP 00001fa4: PUSH2 0x1ffa 00001fa7: JUMP 00001fa8: JUMPDEST 00001fa9: PUSH1 0xff 00001fab: DUP4 00001fac: AND 00001fad: PUSH1 0x01 00001faf: EQ 00001fb0: ISZERO 00001fb1: PUSH2 0x1fdf 00001fb4: JUMPI 00001fb5: PUSH1 0x01 00001fb7: DUP8 00001fb8: DUP3 00001fb9: DUP8 00001fba: PUSH1 0x20 00001fbc: ADD 00001fbd: MLOAD 00001fbe: DUP9 00001fbf: PUSH1 0x40 00001fc1: ADD 00001fc2: MLOAD 00001fc3: PUSH1 0x40 00001fc5: MLOAD 00001fc6: PUSH1 0x00 00001fc8: DUP2 00001fc9: MSTORE 00001fca: PUSH1 0x20 00001fcc: ADD 00001fcd: PUSH1 0x40 00001fcf: MSTORE 00001fd0: PUSH1 0x40 00001fd2: MLOAD 00001fd3: PUSH2 0x1f75 00001fd6: SWAP5 00001fd7: SWAP4 00001fd8: SWAP3 00001fd9: SWAP2 00001fda: SWAP1 00001fdb: PUSH2 0x5550 00001fde: JUMP 00001fdf: JUMPDEST 00001fe0: PUSH1 0x40 00001fe2: MLOAD 00001fe3: PUSH1 0x01 00001fe5: PUSH1 0xe5 00001fe7: SHL 00001fe8: PUSH3 0x461bcd 00001fec: MUL 00001fed: DUP2 00001fee: MSTORE 00001fef: PUSH1 0x04 00001ff1: ADD 00001ff2: PUSH2 0x0be3 00001ff5: SWAP1 00001ff6: PUSH2 0x5635 00001ff9: JUMP 00001ffa: JUMPDEST 00001ffb: POP 00001ffc: PUSH1 0x01 00001ffe: PUSH1 0x01 00002000: PUSH1 0xa0 00002002: SHL 00002003: SUB 00002004: DUP6 00002005: DUP2 00002006: AND 00002007: SWAP2 00002008: AND 00002009: EQ 0000200a: SWAP2 0000200b: POP 0000200c: POP 0000200d: SWAP4 0000200e: SWAP3 0000200f: POP 00002010: POP 00002011: POP 00002012: JUMP 00002013: JUMPDEST 00002014: PUSH1 0x00 00002016: DUP1 00002017: PUSH2 0x2020 0000201a: DUP5 0000201b: DUP5 0000201c: PUSH2 0x2333 0000201f: JUMP 00002020: JUMPDEST 00002021: SWAP2 00002022: POP 00002023: POP 00002024: PUSH2 0x0bb4 00002027: DUP5 00002028: DUP5 00002029: DUP4 0000202a: PUSH2 0x284e 0000202d: JUMP 0000202e: JUMPDEST 0000202f: PUSH1 0x00 00002031: DUP1 00002032: PUSH2 0x203b 00002035: DUP7 00002036: DUP7 00002037: PUSH2 0x2333 0000203a: JUMP 0000203b: JUMPDEST 0000203c: PUSH1 0x01 0000203e: PUSH1 0x01 00002040: PUSH1 0xa0 00002042: SHL 00002043: SUB 00002044: DUP1 00002045: DUP8 00002046: AND 00002047: PUSH1 0x00 00002049: SWAP1 0000204a: DUP2 0000204b: MSTORE 0000204c: PUSH1 0x0e 0000204e: DUP11 0000204f: ADD 00002050: PUSH1 0x20 00002052: SWAP1 00002053: DUP2 00002054: MSTORE 00002055: PUSH1 0x40 00002057: DUP1 00002058: DUP4 00002059: KECCAK256 0000205a: PUSH2 0xffff 0000205d: DUP11 0000205e: AND 0000205f: DUP5 00002060: MSTORE 00002061: DUP3 00002062: MSTORE 00002063: DUP1 00002064: DUP4 00002065: KECCAK256 00002066: SWAP4 00002067: DUP12 00002068: AND 00002069: DUP4 0000206a: MSTORE 0000206b: SWAP3 0000206c: SWAP1 0000206d: MSTORE 0000206e: KECCAK256 0000206f: SLOAD 00002070: SWAP1 00002071: SWAP3 00002072: POP 00002073: PUSH2 0x207d 00002076: SWAP2 00002077: POP 00002078: DUP3 00002079: PUSH2 0x26e2 0000207c: JUMP 0000207d: JUMPDEST 0000207e: SWAP7 0000207f: SWAP6 00002080: POP 00002081: POP 00002082: POP 00002083: POP 00002084: POP 00002085: POP 00002086: JUMP 00002087: JUMPDEST 00002088: PUSH1 0x01 0000208a: PUSH1 0x01 0000208c: PUSH1 0xa0 0000208e: SHL 0000208f: SUB 00002090: AND 00002091: PUSH1 0x00 00002093: SWAP1 00002094: DUP2 00002095: MSTORE 00002096: PUSH1 0x14 00002098: SWAP2 00002099: SWAP1 0000209a: SWAP2 0000209b: ADD 0000209c: PUSH1 0x20 0000209e: MSTORE 0000209f: PUSH1 0x40 000020a1: SWAP1 000020a2: KECCAK256 000020a3: SLOAD 000020a4: PUSH1 0xff 000020a6: AND 000020a7: ISZERO 000020a8: SWAP1 000020a9: JUMP 000020aa: JUMPDEST 000020ab: PUSH2 0x20bc 000020ae: DUP3 000020af: DUP3 000020b0: PUSH1 0x60 000020b2: ADD 000020b3: MLOAD 000020b4: PUSH1 0x40 000020b6: ADD 000020b7: MLOAD 000020b8: PUSH2 0x1c37 000020bb: JUMP 000020bc: JUMPDEST 000020bd: PUSH2 0x20db 000020c0: JUMPI 000020c1: PUSH1 0x40 000020c3: MLOAD 000020c4: PUSH1 0x01 000020c6: PUSH1 0xe5 000020c8: SHL 000020c9: PUSH3 0x461bcd 000020cd: MUL 000020ce: DUP2 000020cf: MSTORE 000020d0: PUSH1 0x04 000020d2: ADD 000020d3: PUSH2 0x0be3 000020d6: SWAP1 000020d7: PUSH2 0x5755 000020da: JUMP 000020db: JUMPDEST 000020dc: DUP1 000020dd: MLOAD 000020de: PUSH2 0x20e6 000020e1: SWAP1 000020e2: PUSH2 0x298a 000020e5: JUMP 000020e6: JUMPDEST 000020e7: ISZERO 000020e8: PUSH2 0x2106 000020eb: JUMPI 000020ec: PUSH1 0x40 000020ee: MLOAD 000020ef: PUSH1 0x01 000020f1: PUSH1 0xe5 000020f3: SHL 000020f4: PUSH3 0x461bcd 000020f8: MUL 000020f9: DUP2 000020fa: MSTORE 000020fb: PUSH1 0x04 000020fd: ADD 000020fe: PUSH2 0x0be3 00002101: SWAP1 00002102: PUSH2 0x56d5 00002105: JUMP 00002106: JUMPDEST 00002107: PUSH1 0x00 00002109: PUSH2 0x211a 0000210c: DUP4 0000210d: DUP4 0000210e: PUSH1 0x60 00002110: ADD 00002111: MLOAD 00002112: PUSH1 0x40 00002114: ADD 00002115: MLOAD 00002116: PUSH2 0x2087 00002119: JUMP 0000211a: JUMPDEST 0000211b: SWAP1 0000211c: POP 0000211d: PUSH1 0x00 0000211f: PUSH2 0x212d 00002122: DUP5 00002123: DUP5 00002124: PUSH1 0x00 00002126: ADD 00002127: MLOAD 00002128: DUP5 00002129: PUSH2 0x29a9 0000212c: JUMP 0000212d: JUMPDEST 0000212e: SWAP1 0000212f: POP 00002130: PUSH2 0x2137 00002133: PUSH2 0x3a96 00002136: JUMP 00002137: JUMPDEST 00002138: PUSH2 0x214a 0000213b: DUP6 0000213c: DUP6 0000213d: PUSH1 0x00 0000213f: ADD 00002140: MLOAD 00002141: DUP7 00002142: PUSH1 0x60 00002144: ADD 00002145: MLOAD 00002146: PUSH2 0x29c7 00002149: JUMP 0000214a: JUMPDEST 0000214b: SWAP1 0000214c: POP 0000214d: PUSH1 0x60 0000214f: DUP5 00002150: PUSH1 0x20 00002152: ADD 00002153: MLOAD 00002154: MLOAD 00002155: PUSH1 0x40 00002157: MLOAD 00002158: SWAP1 00002159: DUP1 0000215a: DUP3 0000215b: MSTORE 0000215c: DUP1 0000215d: PUSH1 0x20 0000215f: MUL 00002160: PUSH1 0x20 00002162: ADD 00002163: DUP3 00002164: ADD 00002165: PUSH1 0x40 00002167: MSTORE 00002168: DUP1 00002169: ISZERO 0000216a: PUSH2 0x218d 0000216d: JUMPI 0000216e: DUP2 0000216f: PUSH1 0x20 00002171: ADD 00002172: JUMPDEST 00002173: PUSH2 0x217a 00002176: PUSH2 0x3aba 00002179: JUMP 0000217a: JUMPDEST 0000217b: DUP2 0000217c: MSTORE 0000217d: PUSH1 0x20 0000217f: ADD 00002180: SWAP1 00002181: PUSH1 0x01 00002183: SWAP1 00002184: SUB 00002185: SWAP1 00002186: DUP2 00002187: PUSH2 0x2172 0000218a: JUMPI 0000218b: SWAP1 0000218c: POP 0000218d: JUMPDEST 0000218e: POP 0000218f: SWAP1 00002190: POP 00002191: PUSH1 0x00 00002193: JUMPDEST 00002194: DUP6 00002195: PUSH1 0x20 00002197: ADD 00002198: MLOAD 00002199: MLOAD 0000219a: DUP2 0000219b: LT 0000219c: ISZERO 0000219d: PUSH2 0x2303 000021a0: JUMPI 000021a1: PUSH2 0x21c0 000021a4: DUP7 000021a5: PUSH1 0x20 000021a7: ADD 000021a8: MLOAD 000021a9: DUP3 000021aa: DUP2 000021ab: MLOAD 000021ac: DUP2 000021ad: LT 000021ae: PUSH2 0x21b3 000021b1: JUMPI 000021b2: INVALID 000021b3: JUMPDEST 000021b4: PUSH1 0x20 000021b6: MUL 000021b7: PUSH1 0x20 000021b9: ADD 000021ba: ADD 000021bb: MLOAD 000021bc: PUSH2 0x2b3c 000021bf: JUMP 000021c0: JUMPDEST 000021c1: ISZERO 000021c2: PUSH2 0x21e0 000021c5: JUMPI 000021c6: PUSH1 0x40 000021c8: MLOAD 000021c9: PUSH1 0x01 000021cb: PUSH1 0xe5 000021cd: SHL 000021ce: PUSH3 0x461bcd 000021d2: MUL 000021d3: DUP2 000021d4: MSTORE 000021d5: PUSH1 0x04 000021d7: ADD 000021d8: PUSH2 0x0be3 000021db: SWAP1 000021dc: PUSH2 0x5765 000021df: JUMP 000021e0: JUMPDEST 000021e1: PUSH2 0x2200 000021e4: DUP7 000021e5: PUSH1 0x20 000021e7: ADD 000021e8: MLOAD 000021e9: DUP3 000021ea: DUP2 000021eb: MLOAD 000021ec: DUP2 000021ed: LT 000021ee: PUSH2 0x21f3 000021f1: JUMPI 000021f2: INVALID 000021f3: JUMPDEST 000021f4: PUSH1 0x20 000021f6: MUL 000021f7: PUSH1 0x20 000021f9: ADD 000021fa: ADD 000021fb: MLOAD 000021fc: PUSH2 0x2b4b 000021ff: JUMP 00002200: JUMPDEST 00002201: ISZERO 00002202: ISZERO 00002203: PUSH2 0x220f 00002206: DUP8 00002207: PUSH1 0x00 00002209: ADD 0000220a: MLOAD 0000220b: PUSH2 0x2b4b 0000220e: JUMP 0000220f: JUMPDEST 00002210: ISZERO 00002211: ISZERO 00002212: EQ 00002213: ISZERO 00002214: PUSH2 0x2232 00002217: JUMPI 00002218: PUSH1 0x40 0000221a: MLOAD 0000221b: PUSH1 0x01 0000221d: PUSH1 0xe5 0000221f: SHL 00002220: PUSH3 0x461bcd 00002224: MUL 00002225: DUP2 00002226: MSTORE 00002227: PUSH1 0x04 00002229: ADD 0000222a: PUSH2 0x0be3 0000222d: SWAP1 0000222e: PUSH2 0x5775 00002231: JUMP 00002232: JUMPDEST 00002233: PUSH2 0x2257 00002236: DUP7 00002237: PUSH1 0x00 00002239: ADD 0000223a: MLOAD 0000223b: DUP8 0000223c: PUSH1 0x20 0000223e: ADD 0000223f: MLOAD 00002240: DUP4 00002241: DUP2 00002242: MLOAD 00002243: DUP2 00002244: LT 00002245: PUSH2 0x224a 00002248: JUMPI 00002249: INVALID 0000224a: JUMPDEST 0000224b: PUSH1 0x20 0000224d: MUL 0000224e: PUSH1 0x20 00002250: ADD 00002251: ADD 00002252: MLOAD 00002253: PUSH2 0x2b5a 00002256: JUMP 00002257: JUMPDEST 00002258: PUSH2 0x225f 0000225b: PUSH2 0x3a96 0000225e: JUMP 0000225f: JUMPDEST 00002260: PUSH2 0x2285 00002263: DUP9 00002264: DUP9 00002265: PUSH1 0x20 00002267: ADD 00002268: MLOAD 00002269: DUP5 0000226a: DUP2 0000226b: MLOAD 0000226c: DUP2 0000226d: LT 0000226e: PUSH2 0x2273 00002271: JUMPI 00002272: INVALID 00002273: JUMPDEST 00002274: PUSH1 0x20 00002276: MUL 00002277: PUSH1 0x20 00002279: ADD 0000227a: ADD 0000227b: MLOAD 0000227c: DUP10 0000227d: PUSH1 0x60 0000227f: ADD 00002280: MLOAD 00002281: PUSH2 0x29c7 00002284: JUMP 00002285: JUMPDEST 00002286: SWAP1 00002287: POP 00002288: PUSH2 0x22c9 0000228b: DUP9 0000228c: DUP9 0000228d: PUSH1 0x00 0000228f: ADD 00002290: MLOAD 00002291: DUP7 00002292: DUP11 00002293: PUSH1 0x20 00002295: ADD 00002296: MLOAD 00002297: DUP7 00002298: DUP2 00002299: MLOAD 0000229a: DUP2 0000229b: LT 0000229c: PUSH2 0x22a1 0000229f: JUMPI 000022a0: INVALID 000022a1: JUMPDEST 000022a2: PUSH1 0x20 000022a4: MUL 000022a5: PUSH1 0x20 000022a7: ADD 000022a8: ADD 000022a9: MLOAD 000022aa: DUP6 000022ab: DUP13 000022ac: PUSH1 0x40 000022ae: ADD 000022af: MLOAD 000022b0: DUP9 000022b1: DUP2 000022b2: MLOAD 000022b3: DUP2 000022b4: LT 000022b5: PUSH2 0x22ba 000022b8: JUMPI 000022b9: INVALID 000022ba: JUMPDEST 000022bb: PUSH1 0x20 000022bd: MUL 000022be: PUSH1 0x20 000022c0: ADD 000022c1: ADD 000022c2: MLOAD 000022c3: DUP12 000022c4: DUP14 000022c5: PUSH2 0x2bd8 000022c8: JUMP 000022c9: JUMPDEST 000022ca: DUP4 000022cb: DUP4 000022cc: DUP2 000022cd: MLOAD 000022ce: DUP2 000022cf: LT 000022d0: PUSH2 0x22d5 000022d3: JUMPI 000022d4: INVALID 000022d5: JUMPDEST 000022d6: PUSH1 0x20 000022d8: SWAP1 000022d9: DUP2 000022da: MUL 000022db: SWAP2 000022dc: SWAP1 000022dd: SWAP2 000022de: ADD 000022df: DUP2 000022e0: ADD 000022e1: SWAP2 000022e2: SWAP1 000022e3: SWAP2 000022e4: MSTORE 000022e5: DUP2 000022e6: DUP2 000022e7: ADD 000022e8: MLOAD 000022e9: SWAP2 000022ea: MLOAD 000022eb: PUSH1 0x00 000022ed: SWAP1 000022ee: DUP2 000022ef: MSTORE 000022f0: PUSH1 0x10 000022f2: DUP11 000022f3: ADD 000022f4: SWAP1 000022f5: SWAP2 000022f6: MSTORE 000022f7: PUSH1 0x40 000022f9: SWAP1 000022fa: KECCAK256 000022fb: SSTORE 000022fc: PUSH1 0x01 000022fe: ADD 000022ff: PUSH2 0x2193 00002302: JUMP 00002303: JUMPDEST 00002304: POP 00002305: PUSH1 0x20 00002307: DUP1 00002308: DUP4 00002309: ADD 0000230a: MLOAD 0000230b: DUP4 0000230c: MLOAD 0000230d: PUSH1 0x00 0000230f: SWAP1 00002310: DUP2 00002311: MSTORE 00002312: PUSH1 0x10 00002314: DUP10 00002315: ADD 00002316: SWAP1 00002317: SWAP3 00002318: MSTORE 00002319: PUSH1 0x40 0000231b: SWAP1 0000231c: SWAP2 0000231d: KECCAK256 0000231e: SSTORE 0000231f: DUP5 00002320: MLOAD 00002321: PUSH1 0x60 00002323: DUP7 00002324: ADD 00002325: MLOAD 00002326: PUSH2 0x0ce9 00002329: SWAP2 0000232a: DUP9 0000232b: SWAP2 0000232c: DUP5 0000232d: SWAP2 0000232e: SWAP1 0000232f: PUSH2 0x2e68 00002332: JUMP 00002333: JUMPDEST 00002334: PUSH1 0x01 00002336: PUSH1 0x01 00002338: PUSH1 0xa0 0000233a: SHL 0000233b: SUB 0000233c: DUP2 0000233d: AND 0000233e: PUSH1 0x00 00002340: SWAP1 00002341: DUP2 00002342: MSTORE 00002343: PUSH1 0x0a 00002345: DUP4 00002346: ADD 00002347: PUSH1 0x20 00002349: MSTORE 0000234a: PUSH1 0x40 0000234c: DUP2 0000234d: KECCAK256 0000234e: SLOAD 0000234f: DUP2 00002350: SWAP1 00002351: DUP2 00002352: SWAP1 00002353: PUSH2 0x2363 00002356: SWAP1 00002357: TIMESTAMP 00002358: SWAP1 00002359: PUSH4 0xffffffff 0000235e: PUSH2 0x28de 00002361: AND 00002362: JUMP 00002363: JUMPDEST 00002364: PUSH1 0x01 00002366: PUSH1 0x01 00002368: PUSH1 0xa0 0000236a: SHL 0000236b: SUB 0000236c: DUP6 0000236d: AND 0000236e: PUSH1 0x00 00002370: SWAP1 00002371: DUP2 00002372: MSTORE 00002373: PUSH1 0x0b 00002375: DUP8 00002376: ADD 00002377: PUSH1 0x20 00002379: MSTORE 0000237a: PUSH1 0x40 0000237c: DUP2 0000237d: KECCAK256 0000237e: SLOAD 0000237f: SWAP2 00002380: SWAP3 00002381: POP 00002382: SWAP1 00002383: PUSH2 0x23a8 00002386: SWAP1 00002387: PUSH4 0x01e13380 0000238c: SWAP1 0000238d: PUSH2 0x239c 00002390: SWAP1 00002391: DUP6 00002392: PUSH4 0xffffffff 00002397: PUSH2 0x26a5 0000239a: AND 0000239b: JUMP 0000239c: JUMPDEST 0000239d: SWAP1 0000239e: PUSH4 0xffffffff 000023a3: PUSH2 0x3231 000023a6: AND 000023a7: JUMP 000023a8: JUMPDEST 000023a9: PUSH1 0x01 000023ab: PUSH1 0x01 000023ad: PUSH1 0xa0 000023af: SHL 000023b0: SUB 000023b1: DUP7 000023b2: AND 000023b3: PUSH1 0x00 000023b5: SWAP1 000023b6: DUP2 000023b7: MSTORE 000023b8: PUSH1 0x0c 000023ba: DUP9 000023bb: ADD 000023bc: PUSH1 0x20 000023be: MSTORE 000023bf: PUSH1 0x40 000023c1: DUP2 000023c2: KECCAK256 000023c3: SLOAD 000023c4: SWAP2 000023c5: SWAP3 000023c6: POP 000023c7: SWAP1 000023c8: PUSH2 0x23e1 000023cb: SWAP1 000023cc: PUSH4 0x01e13380 000023d1: SWAP1 000023d2: PUSH2 0x1cf3 000023d5: SWAP1 000023d6: DUP7 000023d7: PUSH4 0xffffffff 000023dc: PUSH2 0x26a5 000023df: AND 000023e0: JUMP 000023e1: JUMPDEST 000023e2: PUSH1 0x01 000023e4: PUSH1 0x01 000023e6: PUSH1 0xa0 000023e8: SHL 000023e9: SUB 000023ea: DUP8 000023eb: AND 000023ec: PUSH1 0x00 000023ee: SWAP1 000023ef: DUP2 000023f0: MSTORE 000023f1: PUSH1 0x08 000023f3: DUP10 000023f4: ADD 000023f5: PUSH1 0x20 000023f7: MSTORE 000023f8: PUSH1 0x40 000023fa: SWAP1 000023fb: KECCAK256 000023fc: SLOAD 000023fd: SWAP1 000023fe: SWAP2 000023ff: POP 00002400: PUSH2 0x2411 00002403: SWAP1 00002404: PUSH2 0x240c 00002407: DUP5 00002408: PUSH2 0x325e 0000240b: JUMP 0000240c: JUMPDEST 0000240d: PUSH2 0x26e2 00002410: JUMP 00002411: JUMPDEST 00002412: PUSH1 0x01 00002414: PUSH1 0x01 00002416: PUSH1 0xa0 00002418: SHL 00002419: SUB 0000241a: DUP8 0000241b: AND 0000241c: PUSH1 0x00 0000241e: SWAP1 0000241f: DUP2 00002420: MSTORE 00002421: PUSH1 0x09 00002423: DUP10 00002424: ADD 00002425: PUSH1 0x20 00002427: MSTORE 00002428: PUSH1 0x40 0000242a: SWAP1 0000242b: KECCAK256 0000242c: SLOAD 0000242d: SWAP1 0000242e: SWAP5 0000242f: POP 00002430: PUSH2 0x243c 00002433: SWAP1 00002434: PUSH2 0x1d8e 00002437: DUP4 00002438: PUSH2 0x325e 0000243b: JUMP 0000243c: JUMPDEST 0000243d: SWAP5 0000243e: POP 0000243f: POP 00002440: POP 00002441: POP 00002442: JUMPDEST 00002443: SWAP3 00002444: POP 00002445: SWAP3 00002446: SWAP1 00002447: POP 00002448: JUMP 00002449: JUMPDEST 0000244a: DUP1 0000244b: MLOAD 0000244c: PUSH1 0x01 0000244e: PUSH1 0x01 00002450: PUSH1 0xa0 00002452: SHL 00002453: SUB 00002454: AND 00002455: CALLER 00002456: EQ 00002457: PUSH2 0x2475 0000245a: JUMPI 0000245b: PUSH1 0x40 0000245d: MLOAD 0000245e: PUSH1 0x01 00002460: PUSH1 0xe5 00002462: SHL 00002463: PUSH3 0x461bcd 00002467: MUL 00002468: DUP2 00002469: MSTORE 0000246a: PUSH1 0x04 0000246c: ADD 0000246d: PUSH2 0x0be3 00002470: SWAP1 00002471: PUSH2 0x5645 00002474: JUMP 00002475: JUMPDEST 00002476: PUSH1 0x00 00002478: PUSH2 0x2480 0000247b: DUP3 0000247c: PUSH2 0x3278 0000247f: JUMP 00002480: JUMPDEST 00002481: PUSH1 0x00 00002483: DUP2 00002484: DUP2 00002485: MSTORE 00002486: PUSH1 0x11 00002488: DUP6 00002489: ADD 0000248a: PUSH1 0x20 0000248c: MSTORE 0000248d: PUSH1 0x40 0000248f: SWAP1 00002490: KECCAK256 00002491: DUP1 00002492: SLOAD 00002493: PUSH1 0xff 00002495: NOT 00002496: AND 00002497: PUSH1 0x01 00002499: OR 0000249a: SWAP1 0000249b: SSTORE 0000249c: SWAP1 0000249d: POP 0000249e: PUSH2 0x19d3 000024a1: DUP2 000024a2: PUSH2 0x328b 000024a5: JUMP 000024a6: JUMPDEST 000024a7: CALLER 000024a8: PUSH1 0x00 000024aa: DUP2 000024ab: DUP2 000024ac: MSTORE 000024ad: PUSH1 0x14 000024af: DUP4 000024b0: ADD 000024b1: PUSH1 0x20 000024b3: MSTORE 000024b4: PUSH1 0x40 000024b6: SWAP1 000024b7: KECCAK256 000024b8: DUP1 000024b9: SLOAD 000024ba: PUSH1 0xff 000024bc: NOT 000024bd: AND 000024be: SWAP1 000024bf: SSTORE 000024c0: PUSH2 0x0945 000024c3: SWAP1 000024c4: PUSH2 0x32b9 000024c7: JUMP 000024c8: JUMPDEST 000024c9: PUSH2 0x24d0 000024cc: PUSH2 0x3a74 000024cf: JUMP 000024d0: JUMPDEST 000024d1: POP 000024d2: PUSH1 0x40 000024d4: DUP1 000024d5: MLOAD 000024d6: PUSH1 0x60 000024d8: DUP2 000024d9: ADD 000024da: DUP3 000024db: MSTORE 000024dc: PUSH1 0x01 000024de: DUP2 000024df: MSTORE 000024e0: PUSH2 0xffff 000024e3: SWAP1 000024e4: SWAP3 000024e5: AND 000024e6: PUSH1 0x20 000024e8: DUP4 000024e9: ADD 000024ea: MSTORE 000024eb: PUSH1 0x01 000024ed: PUSH1 0x01 000024ef: PUSH1 0xa0 000024f1: SHL 000024f2: SUB 000024f3: SWAP1 000024f4: SWAP3 000024f5: AND 000024f6: SWAP2 000024f7: DUP2 000024f8: ADD 000024f9: SWAP2 000024fa: SWAP1 000024fb: SWAP2 000024fc: MSTORE 000024fd: SWAP1 000024fe: JUMP 000024ff: JUMPDEST 00002500: PUSH1 0x00 00002502: DUP1 00002503: PUSH2 0x2512 00002506: DUP5 00002507: DUP7 00002508: PUSH4 0xffffffff 0000250d: PUSH2 0x256d 00002510: AND 00002511: JUMP 00002512: JUMPDEST 00002513: PUSH1 0x01 00002515: PUSH1 0x01 00002517: PUSH1 0xa0 00002519: SHL 0000251a: SUB 0000251b: DUP5 0000251c: AND 0000251d: PUSH1 0x00 0000251f: SWAP1 00002520: DUP2 00002521: MSTORE 00002522: PUSH1 0x20 00002524: SWAP2 00002525: SWAP1 00002526: SWAP2 00002527: MSTORE 00002528: PUSH1 0x40 0000252a: SWAP1 0000252b: KECCAK256 0000252c: SLOAD 0000252d: SWAP2 0000252e: POP 0000252f: POP 00002530: SWAP4 00002531: SWAP3 00002532: POP 00002533: POP 00002534: POP 00002535: JUMP 00002536: JUMPDEST 00002537: CALLER 00002538: PUSH1 0x00 0000253a: DUP2 0000253b: DUP2 0000253c: MSTORE 0000253d: PUSH1 0x13 0000253f: DUP5 00002540: ADD 00002541: PUSH1 0x20 00002543: SWAP1 00002544: DUP2 00002545: MSTORE 00002546: PUSH1 0x40 00002548: DUP1 00002549: DUP4 0000254a: KECCAK256 0000254b: PUSH1 0x01 0000254d: PUSH1 0x01 0000254f: PUSH1 0xa0 00002551: SHL 00002552: SUB 00002553: DUP7 00002554: AND 00002555: DUP5 00002556: MSTORE 00002557: SWAP1 00002558: SWAP2 00002559: MSTORE 0000255a: SWAP1 0000255b: KECCAK256 0000255c: DUP1 0000255d: SLOAD 0000255e: PUSH1 0xff 00002560: NOT 00002561: AND 00002562: SWAP1 00002563: SSTORE 00002564: PUSH2 0x174d 00002567: SWAP1 00002568: DUP3 00002569: PUSH2 0x32f0 0000256c: JUMP 0000256d: JUMPDEST 0000256e: PUSH1 0x00 00002570: DUP1 00002571: DUP4 00002572: MLOAD 00002573: PUSH1 0x01 00002575: DUP2 00002576: GT 00002577: ISZERO 00002578: PUSH2 0x257d 0000257b: JUMPI 0000257c: INVALID 0000257d: JUMPDEST 0000257e: EQ 0000257f: ISZERO 00002580: PUSH2 0x25a5 00002583: JUMPI 00002584: POP 00002585: PUSH1 0x40 00002587: DUP1 00002588: DUP4 00002589: ADD 0000258a: MLOAD 0000258b: PUSH1 0x01 0000258d: PUSH1 0x01 0000258f: PUSH1 0xa0 00002591: SHL 00002592: SUB 00002593: AND 00002594: PUSH1 0x00 00002596: SWAP1 00002597: DUP2 00002598: MSTORE 00002599: PUSH1 0x05 0000259b: DUP4 0000259c: ADD 0000259d: PUSH1 0x20 0000259f: MSTORE 000025a0: KECCAK256 000025a1: PUSH2 0x0d92 000025a4: JUMP 000025a5: JUMPDEST 000025a6: POP 000025a7: PUSH1 0x40 000025a9: DUP1 000025aa: DUP4 000025ab: ADD 000025ac: MLOAD 000025ad: PUSH1 0x01 000025af: PUSH1 0x01 000025b1: PUSH1 0xa0 000025b3: SHL 000025b4: SUB 000025b5: AND 000025b6: PUSH1 0x00 000025b8: SWAP1 000025b9: DUP2 000025ba: MSTORE 000025bb: PUSH1 0x03 000025bd: DUP4 000025be: ADD 000025bf: PUSH1 0x20 000025c1: SWAP1 000025c2: DUP2 000025c3: MSTORE 000025c4: DUP3 000025c5: DUP3 000025c6: KECCAK256 000025c7: DUP2 000025c8: DUP7 000025c9: ADD 000025ca: MLOAD 000025cb: PUSH2 0xffff 000025ce: AND 000025cf: DUP4 000025d0: MSTORE 000025d1: SWAP1 000025d2: MSTORE 000025d3: KECCAK256 000025d4: PUSH1 0x01 000025d6: ADD 000025d7: PUSH2 0x0d92 000025da: JUMP 000025db: JUMPDEST 000025dc: PUSH1 0x00 000025de: DUP3 000025df: DUP3 000025e0: ADD 000025e1: DUP4 000025e2: DUP2 000025e3: LT 000025e4: ISZERO 000025e5: PUSH2 0x0933 000025e8: JUMPI 000025e9: PUSH1 0x40 000025eb: MLOAD 000025ec: PUSH1 0x01 000025ee: PUSH1 0xe5 000025f0: SHL 000025f1: PUSH3 0x461bcd 000025f5: MUL 000025f6: DUP2 000025f7: MSTORE 000025f8: PUSH1 0x04 000025fa: ADD 000025fb: PUSH2 0x0be3 000025fe: SWAP1 000025ff: PUSH2 0x5745 00002602: JUMP 00002603: JUMPDEST 00002604: PUSH1 0x00 00002606: PUSH1 0x01 00002608: PUSH1 0x01 0000260a: PUSH1 0xff 0000260c: SHL 0000260d: SUB 0000260e: DUP3 0000260f: GT 00002610: ISZERO 00002611: PUSH2 0x262f 00002614: JUMPI 00002615: PUSH1 0x40 00002617: MLOAD 00002618: PUSH1 0x01 0000261a: PUSH1 0xe5 0000261c: SHL 0000261d: PUSH3 0x461bcd 00002621: MUL 00002622: DUP2 00002623: MSTORE 00002624: PUSH1 0x04 00002626: ADD 00002627: PUSH2 0x0be3 0000262a: SWAP1 0000262b: PUSH2 0x5715 0000262e: JUMP 0000262f: JUMPDEST 00002630: DUP3 00002631: DUP3 00002632: ADD 00002633: DUP4 00002634: DUP2 00002635: SLT 00002636: ISZERO 00002637: PUSH2 0x0933 0000263a: JUMPI 0000263b: PUSH1 0x40 0000263d: MLOAD 0000263e: PUSH1 0x01 00002640: PUSH1 0xe5 00002642: SHL 00002643: PUSH3 0x461bcd 00002647: MUL 00002648: DUP2 00002649: MSTORE 0000264a: PUSH1 0x04 0000264c: ADD 0000264d: PUSH2 0x0be3 00002650: SWAP1 00002651: PUSH2 0x5715 00002654: JUMP 00002655: JUMPDEST 00002656: DUP1 00002657: PUSH1 0x01 00002659: PUSH1 0x01 0000265b: PUSH1 0xa0 0000265d: SHL 0000265e: SUB 0000265f: AND 00002660: DUP3 00002661: PUSH1 0x01 00002663: PUSH1 0x01 00002665: PUSH1 0xa0 00002667: SHL 00002668: SUB 00002669: AND 0000266a: PUSH32 0x7fa92f6e23fcdb0b7a7001ea137560a8ebee9b8302d16e3b37c64ae7116b69ad 0000268b: PUSH1 0x40 0000268d: MLOAD 0000268e: PUSH1 0x40 00002690: MLOAD 00002691: DUP1 00002692: SWAP2 00002693: SUB 00002694: SWAP1 00002695: LOG3 00002696: POP 00002697: POP 00002698: JUMP 00002699: JUMPDEST 0000269a: PUSH8 0x0de0b6b3a7640000 000026a3: SWAP1 000026a4: JUMP 000026a5: JUMPDEST 000026a6: PUSH1 0x00 000026a8: DUP3 000026a9: PUSH2 0x26b4 000026ac: JUMPI 000026ad: POP 000026ae: PUSH1 0x00 000026b0: PUSH2 0x0d92 000026b3: JUMP 000026b4: JUMPDEST 000026b5: DUP3 000026b6: DUP3 000026b7: MUL 000026b8: DUP3 000026b9: DUP5 000026ba: DUP3 000026bb: DUP2 000026bc: PUSH2 0x26c1 000026bf: JUMPI 000026c0: INVALID 000026c1: JUMPDEST 000026c2: DIV 000026c3: EQ 000026c4: PUSH2 0x0933 000026c7: JUMPI 000026c8: PUSH1 0x40 000026ca: MLOAD 000026cb: PUSH1 0x01 000026cd: PUSH1 0xe5 000026cf: SHL 000026d0: PUSH3 0x461bcd 000026d4: MUL 000026d5: DUP2 000026d6: MSTORE 000026d7: PUSH1 0x04 000026d9: ADD 000026da: PUSH2 0x0be3 000026dd: SWAP1 000026de: PUSH2 0x5785 000026e1: JUMP 000026e2: JUMPDEST 000026e3: PUSH1 0x00 000026e5: PUSH2 0x0933 000026e8: PUSH8 0x0de0b6b3a7640000 000026f1: PUSH2 0x239c 000026f4: DUP6 000026f5: DUP6 000026f6: PUSH4 0xffffffff 000026fb: PUSH2 0x26a5 000026fe: AND 000026ff: JUMP 00002700: JUMPDEST 00002701: PUSH1 0x00 00002703: PUSH2 0x0933 00002706: DUP3 00002707: PUSH2 0x1cf3 0000270a: DUP6 0000270b: PUSH8 0x0de0b6b3a7640000 00002714: PUSH4 0xffffffff 00002719: PUSH2 0x26a5 0000271c: AND 0000271d: JUMP 0000271e: JUMPDEST 0000271f: PUSH1 0x01 00002721: PUSH1 0x01 00002723: PUSH1 0xa0 00002725: SHL 00002726: SUB 00002727: SWAP1 00002728: DUP2 00002729: AND 0000272a: PUSH1 0x00 0000272c: SWAP1 0000272d: DUP2 0000272e: MSTORE 0000272f: PUSH1 0x01 00002731: SWAP3 00002732: DUP4 00002733: ADD 00002734: PUSH1 0x20 00002736: MSTORE 00002737: PUSH1 0x40 00002739: SWAP1 0000273a: KECCAK256 0000273b: SWAP1 0000273c: SWAP2 0000273d: ADD 0000273e: SLOAD 0000273f: AND 00002740: ISZERO 00002741: ISZERO 00002742: SWAP1 00002743: JUMP 00002744: JUMPDEST 00002745: PUSH1 0x01 00002747: PUSH1 0x01 00002749: PUSH1 0xa0 0000274b: SHL 0000274c: SUB 0000274d: DUP1 0000274e: DUP4 0000274f: AND 00002750: PUSH1 0x00 00002752: SWAP1 00002753: DUP2 00002754: MSTORE 00002755: PUSH1 0x01 00002757: DUP6 00002758: ADD 00002759: PUSH1 0x20 0000275b: MSTORE 0000275c: PUSH1 0x40 0000275e: DUP1 0000275f: DUP3 00002760: KECCAK256 00002761: SLOAD 00002762: SWAP1 00002763: MLOAD 00002764: PUSH1 0x01 00002766: PUSH1 0xe0 00002768: SHL 00002769: PUSH4 0x70a08231 0000276e: MUL 0000276f: DUP2 00002770: MSTORE 00002771: SWAP2 00002772: SWAP3 00002773: AND 00002774: SWAP1 00002775: PUSH4 0x70a08231 0000277a: SWAP1 0000277b: PUSH2 0x2788 0000277e: SWAP1 0000277f: DUP6 00002780: SWAP1 00002781: PUSH1 0x04 00002783: ADD 00002784: PUSH2 0x54fa 00002787: JUMP 00002788: JUMPDEST 00002789: PUSH1 0x20 0000278b: PUSH1 0x40 0000278d: MLOAD 0000278e: DUP1 0000278f: DUP4 00002790: SUB 00002791: DUP2 00002792: DUP7 00002793: DUP1 00002794: EXTCODESIZE 00002795: ISZERO 00002796: DUP1 00002797: ISZERO 00002798: PUSH2 0x27a0 0000279b: JUMPI 0000279c: PUSH1 0x00 0000279e: DUP1 0000279f: REVERT 000027a0: JUMPDEST 000027a1: POP 000027a2: GAS 000027a3: STATICCALL 000027a4: ISZERO 000027a5: DUP1 000027a6: ISZERO 000027a7: PUSH2 0x27b4 000027aa: JUMPI 000027ab: RETURNDATASIZE 000027ac: PUSH1 0x00 000027ae: DUP1 000027af: RETURNDATACOPY 000027b0: RETURNDATASIZE 000027b1: PUSH1 0x00 000027b3: REVERT 000027b4: JUMPDEST 000027b5: POP 000027b6: POP 000027b7: POP 000027b8: POP 000027b9: PUSH1 0x40 000027bb: MLOAD 000027bc: RETURNDATASIZE 000027bd: PUSH1 0x1f 000027bf: NOT 000027c0: PUSH1 0x1f 000027c2: DUP3 000027c3: ADD 000027c4: AND 000027c5: DUP3 000027c6: ADD 000027c7: DUP1 000027c8: PUSH1 0x40 000027ca: MSTORE 000027cb: POP 000027cc: PUSH2 0x0bb4 000027cf: SWAP2 000027d0: SWAP1 000027d1: DUP2 000027d2: ADD 000027d3: SWAP1 000027d4: PUSH2 0x470e 000027d7: JUMP 000027d8: JUMPDEST 000027d9: PUSH1 0x00 000027db: PUSH8 0x0de0b6b3a7640000 000027e4: PUSH2 0x27f3 000027e7: DUP5 000027e8: DUP5 000027e9: PUSH4 0xffffffff 000027ee: PUSH2 0x26a5 000027f1: AND 000027f2: JUMP 000027f3: JUMPDEST 000027f4: DUP2 000027f5: PUSH2 0x27fa 000027f8: JUMPI 000027f9: INVALID 000027fa: JUMPDEST 000027fb: DIV 000027fc: SWAP4 000027fd: SWAP3 000027fe: POP 000027ff: POP 00002800: POP 00002801: JUMP 00002802: JUMPDEST 00002803: PUSH1 0x40 00002805: MLOAD 00002806: PUSH1 0x01 00002808: PUSH1 0x01 0000280a: PUSH1 0xa0 0000280c: SHL 0000280d: SUB 0000280e: DUP3 0000280f: AND 00002810: SWAP1 00002811: PUSH32 0x9bdfcd96a99ab6dad403b4ef4562bb3471fdeaab5e699160abf7c3f2cbe66805 00002832: SWAP1 00002833: PUSH1 0x00 00002835: SWAP1 00002836: LOG2 00002837: POP 00002838: JUMP 00002839: JUMPDEST 0000283a: PUSH1 0x00 0000283c: PUSH2 0x0bb4 0000283f: PUSH2 0x2848 00002842: DUP6 00002843: DUP6 00002844: PUSH2 0x3334 00002847: JUMP 00002848: JUMPDEST 00002849: DUP4 0000284a: PUSH2 0x27d8 0000284d: JUMP 0000284e: JUMPDEST 0000284f: PUSH1 0x01 00002851: PUSH1 0x01 00002853: PUSH1 0xa0 00002855: SHL 00002856: SUB 00002857: DUP3 00002858: AND 00002859: PUSH1 0x00 0000285b: SWAP1 0000285c: DUP2 0000285d: MSTORE 0000285e: PUSH1 0x0d 00002860: DUP5 00002861: ADD 00002862: PUSH1 0x20 00002864: MSTORE 00002865: PUSH1 0x40 00002867: DUP2 00002868: KECCAK256 00002869: SLOAD 0000286a: PUSH2 0x0bb4 0000286d: SWAP1 0000286e: DUP4 0000286f: PUSH2 0x26e2 00002872: JUMP 00002873: JUMPDEST 00002874: PUSH1 0x00 00002876: DUP1 00002877: DUP3 00002878: GT 00002879: PUSH2 0x2897 0000287c: JUMPI 0000287d: PUSH1 0x40 0000287f: MLOAD 00002880: PUSH1 0x01 00002882: PUSH1 0xe5 00002884: SHL 00002885: PUSH3 0x461bcd 00002889: MUL 0000288a: DUP2 0000288b: MSTORE 0000288c: PUSH1 0x04 0000288e: ADD 0000288f: PUSH2 0x0be3 00002892: SWAP1 00002893: PUSH2 0x5665 00002896: JUMP 00002897: JUMPDEST 00002898: DUP2 00002899: DUP4 0000289a: DUP2 0000289b: PUSH2 0x27fa 0000289e: JUMPI 0000289f: INVALID 000028a0: JUMPDEST 000028a1: PUSH1 0x00 000028a3: PUSH1 0x01 000028a5: PUSH1 0xe0 000028a7: SHL 000028a8: PUSH4 0x69e8a15f 000028ad: MUL 000028ae: DUP2 000028af: DUP1 000028b0: PUSH2 0x28ba 000028b3: DUP7 000028b4: DUP5 000028b5: DUP8 000028b6: PUSH2 0x2955 000028b9: JUMP 000028ba: JUMPDEST 000028bb: SWAP2 000028bc: POP 000028bd: SWAP2 000028be: POP 000028bf: DUP1 000028c0: PUSH2 0x1ee0 000028c3: JUMPI 000028c4: PUSH1 0x40 000028c6: MLOAD 000028c7: PUSH1 0x01 000028c9: PUSH1 0xe5 000028cb: SHL 000028cc: PUSH3 0x461bcd 000028d0: MUL 000028d1: DUP2 000028d2: MSTORE 000028d3: PUSH1 0x04 000028d5: ADD 000028d6: PUSH2 0x0be3 000028d9: SWAP1 000028da: PUSH2 0x55f5 000028dd: JUMP 000028de: JUMPDEST 000028df: PUSH1 0x00 000028e1: DUP3 000028e2: DUP3 000028e3: GT 000028e4: ISZERO 000028e5: PUSH2 0x2903 000028e8: JUMPI 000028e9: PUSH1 0x40 000028eb: MLOAD 000028ec: PUSH1 0x01 000028ee: PUSH1 0xe5 000028f0: SHL 000028f1: PUSH3 0x461bcd 000028f5: MUL 000028f6: DUP2 000028f7: MSTORE 000028f8: PUSH1 0x04 000028fa: ADD 000028fb: PUSH2 0x0be3 000028fe: SWAP1 000028ff: PUSH2 0x56c5 00002902: JUMP 00002903: JUMPDEST 00002904: POP 00002905: SWAP1 00002906: SUB 00002907: SWAP1 00002908: JUMP 00002909: JUMPDEST 0000290a: PUSH1 0x00 0000290c: PUSH1 0x01 0000290e: PUSH1 0xe0 00002910: SHL 00002911: PUSH4 0x70a08231 00002916: MUL 00002917: DUP2 00002918: DUP1 00002919: PUSH2 0x292c 0000291c: DUP7 0000291d: DUP5 0000291e: PUSH1 0x01 00002920: PUSH1 0x01 00002922: PUSH1 0xa0 00002924: SHL 00002925: SUB 00002926: DUP9 00002927: AND 00002928: PUSH2 0x2955 0000292b: JUMP 0000292c: JUMPDEST 0000292d: SWAP2 0000292e: POP 0000292f: SWAP2 00002930: POP 00002931: DUP1 00002932: PUSH2 0x1ee0 00002935: JUMPI 00002936: PUSH1 0x40 00002938: MLOAD 00002939: PUSH1 0x01 0000293b: PUSH1 0xe5 0000293d: SHL 0000293e: PUSH3 0x461bcd 00002942: MUL 00002943: DUP2 00002944: MSTORE 00002945: PUSH1 0x04 00002947: ADD 00002948: PUSH2 0x0be3 0000294b: SWAP1 0000294c: PUSH2 0x5655 0000294f: JUMP 00002950: JUMPDEST 00002951: PUSH1 0x64 00002953: SWAP1 00002954: JUMP 00002955: JUMPDEST 00002956: PUSH1 0x00 00002958: DUP1 00002959: PUSH1 0x40 0000295b: MLOAD 0000295c: DUP1 0000295d: MLOAD 0000295e: PUSH1 0x04 00002960: DUP3 00002961: ADD 00002962: MLOAD 00002963: DUP7 00002964: DUP4 00002965: MSTORE 00002966: DUP6 00002967: PUSH1 0x04 00002969: DUP5 0000296a: ADD 0000296b: MSTORE 0000296c: PUSH1 0x20 0000296e: DUP4 0000296f: PUSH1 0x24 00002971: DUP6 00002972: DUP12 00002973: GAS 00002974: STATICCALL 00002975: DUP4 00002976: MLOAD 00002977: SWAP3 00002978: DUP5 00002979: MSTORE 0000297a: PUSH1 0x04 0000297c: SWAP1 0000297d: SWAP4 0000297e: ADD 0000297f: MSTORE 00002980: SWAP7 00002981: SWAP1 00002982: SWAP6 00002983: POP 00002984: SWAP4 00002985: POP 00002986: POP 00002987: POP 00002988: POP 00002989: JUMP 0000298a: JUMPDEST 0000298b: PUSH1 0x80 0000298d: DUP2 0000298e: ADD 0000298f: MLOAD 00002990: PUSH1 0x00 00002992: SWAP1 00002993: PUSH1 0x16 00002995: JUMPDEST 00002996: BYTE 00002997: PUSH1 0xf8 00002999: SHL 0000299a: PUSH1 0xf8 0000299c: SHR 0000299d: PUSH1 0xff 0000299f: AND 000029a0: PUSH1 0x01 000029a2: EQ 000029a3: SWAP1 000029a4: POP 000029a5: SWAP2 000029a6: SWAP1 000029a7: POP 000029a8: JUMP 000029a9: JUMPDEST 000029aa: PUSH1 0x00 000029ac: DUP1 000029ad: PUSH2 0x29b5 000029b0: DUP5 000029b1: PUSH2 0x33c3 000029b4: JUMP 000029b5: JUMPDEST 000029b6: SWAP1 000029b7: POP 000029b8: PUSH2 0x1c09 000029bb: DUP6 000029bc: DUP6 000029bd: PUSH1 0x00 000029bf: ADD 000029c0: MLOAD 000029c1: DUP4 000029c2: DUP7 000029c3: PUSH2 0x33d0 000029c6: JUMP 000029c7: JUMPDEST 000029c8: PUSH2 0x29cf 000029cb: PUSH2 0x3a96 000029ce: JUMP 000029cf: JUMPDEST 000029d0: PUSH1 0x02 000029d2: PUSH2 0x29da 000029d5: DUP5 000029d6: PUSH2 0x3404 000029d9: JUMP 000029da: JUMPDEST 000029db: EQ 000029dc: PUSH2 0x29fa 000029df: JUMPI 000029e0: PUSH1 0x40 000029e2: MLOAD 000029e3: PUSH1 0x01 000029e5: PUSH1 0xe5 000029e7: SHL 000029e8: PUSH3 0x461bcd 000029ec: MUL 000029ed: DUP2 000029ee: MSTORE 000029ef: PUSH1 0x04 000029f1: ADD 000029f2: PUSH2 0x0be3 000029f5: SWAP1 000029f6: PUSH2 0x55e5 000029f9: JUMP 000029fa: JUMPDEST 000029fb: PUSH2 0x2a02 000029fe: PUSH2 0x3b3c 00002a01: JUMP 00002a02: JUMPDEST 00002a03: PUSH2 0x2a0c 00002a06: DUP5 00002a07: DUP5 00002a08: PUSH2 0x340e 00002a0b: JUMP 00002a0c: JUMPDEST 00002a0d: SWAP1 00002a0e: POP 00002a0f: PUSH2 0x2a17 00002a12: DUP2 00002a13: PUSH2 0x3278 00002a16: JUMP 00002a17: JUMPDEST 00002a18: DUP1 00002a19: DUP4 00002a1a: MSTORE 00002a1b: PUSH1 0x00 00002a1d: SWAP1 00002a1e: DUP2 00002a1f: MSTORE 00002a20: PUSH1 0x10 00002a22: DUP7 00002a23: ADD 00002a24: PUSH1 0x20 00002a26: SWAP1 00002a27: DUP2 00002a28: MSTORE 00002a29: PUSH1 0x40 00002a2b: SWAP1 00002a2c: SWAP2 00002a2d: KECCAK256 00002a2e: SLOAD 00002a2f: SWAP1 00002a30: DUP4 00002a31: ADD 00002a32: MSTORE 00002a33: PUSH1 0x02 00002a35: PUSH2 0x2a3d 00002a38: DUP6 00002a39: PUSH2 0x3475 00002a3c: JUMP 00002a3d: JUMPDEST 00002a3e: ISZERO 00002a3f: DUP1 00002a40: ISZERO 00002a41: PUSH2 0x2a52 00002a44: JUMPI 00002a45: POP 00002a46: DUP2 00002a47: PUSH1 0x80 00002a49: ADD 00002a4a: MLOAD 00002a4b: DUP4 00002a4c: PUSH1 0x20 00002a4e: ADD 00002a4f: MLOAD 00002a50: LT 00002a51: ISZERO 00002a52: JUMPDEST 00002a53: ISZERO 00002a54: PUSH2 0x2a61 00002a57: JUMPI 00002a58: PUSH1 0x03 00002a5a: JUMPDEST 00002a5b: SWAP1 00002a5c: POP 00002a5d: PUSH2 0x2abf 00002a60: JUMP 00002a61: JUMPDEST 00002a62: PUSH2 0x2a6a 00002a65: DUP6 00002a66: PUSH2 0x3475 00002a69: JUMP 00002a6a: JUMPDEST 00002a6b: DUP1 00002a6c: ISZERO 00002a6d: PUSH2 0x2a7e 00002a70: JUMPI 00002a71: POP 00002a72: DUP2 00002a73: PUSH1 0xa0 00002a75: ADD 00002a76: MLOAD 00002a77: DUP4 00002a78: PUSH1 0x20 00002a7a: ADD 00002a7b: MLOAD 00002a7c: LT 00002a7d: ISZERO 00002a7e: JUMPDEST 00002a7f: ISZERO 00002a80: PUSH2 0x2a8a 00002a83: JUMPI 00002a84: PUSH1 0x03 00002a86: PUSH2 0x2a5a 00002a89: JUMP 00002a8a: JUMPDEST 00002a8b: PUSH2 0x2a93 00002a8e: DUP6 00002a8f: PUSH2 0x3491 00002a92: JUMP 00002a93: JUMPDEST 00002a94: TIMESTAMP 00002a95: LT 00002a96: PUSH2 0x2aa0 00002a99: JUMPI 00002a9a: PUSH1 0x00 00002a9c: PUSH2 0x2a5a 00002a9f: JUMP 00002aa0: JUMPDEST 00002aa1: DUP3 00002aa2: MLOAD 00002aa3: PUSH1 0x00 00002aa5: SWAP1 00002aa6: DUP2 00002aa7: MSTORE 00002aa8: PUSH1 0x11 00002aaa: DUP8 00002aab: ADD 00002aac: PUSH1 0x20 00002aae: MSTORE 00002aaf: PUSH1 0x40 00002ab1: SWAP1 00002ab2: KECCAK256 00002ab3: SLOAD 00002ab4: PUSH1 0xff 00002ab6: AND 00002ab7: ISZERO 00002ab8: PUSH2 0x2abf 00002abb: JUMPI 00002abc: POP 00002abd: PUSH1 0x01 00002abf: JUMPDEST 00002ac0: PUSH1 0xff 00002ac2: DUP2 00002ac3: AND 00002ac4: PUSH1 0x02 00002ac6: EQ 00002ac7: PUSH2 0x2ae5 00002aca: JUMPI 00002acb: PUSH1 0x40 00002acd: MLOAD 00002ace: PUSH1 0x01 00002ad0: PUSH1 0xe5 00002ad2: SHL 00002ad3: PUSH3 0x461bcd 00002ad7: MUL 00002ad8: DUP2 00002ad9: MSTORE 00002ada: PUSH1 0x04 00002adc: ADD 00002add: PUSH2 0x0be3 00002ae0: SWAP1 00002ae1: PUSH2 0x55a5 00002ae4: JUMP 00002ae5: JUMPDEST 00002ae6: DUP3 00002ae7: MLOAD 00002ae8: DUP6 00002ae9: MLOAD 00002aea: PUSH1 0xa0 00002aec: DUP8 00002aed: ADD 00002aee: MLOAD 00002aef: PUSH2 0x2af9 00002af2: SWAP3 00002af3: SWAP2 00002af4: SWAP1 00002af5: PUSH2 0x1f04 00002af8: JUMP 00002af9: JUMPDEST 00002afa: PUSH2 0x2b18 00002afd: JUMPI 00002afe: PUSH1 0x40 00002b00: MLOAD 00002b01: PUSH1 0x01 00002b03: PUSH1 0xe5 00002b05: SHL 00002b06: PUSH3 0x461bcd 00002b0a: MUL 00002b0b: DUP2 00002b0c: MSTORE 00002b0d: PUSH1 0x04 00002b0f: ADD 00002b10: PUSH2 0x0be3 00002b13: SWAP1 00002b14: PUSH2 0x5625 00002b17: JUMP 00002b18: JUMPDEST 00002b19: PUSH2 0x2b21 00002b1c: DUP6 00002b1d: PUSH2 0x349e 00002b20: JUMP 00002b21: JUMPDEST 00002b22: PUSH1 0x40 00002b24: DUP5 00002b25: ADD 00002b26: DUP2 00002b27: SWAP1 00002b28: MSTORE 00002b29: PUSH2 0x2b33 00002b2c: SWAP1 00002b2d: DUP8 00002b2e: SWAP1 00002b2f: PUSH2 0x351f 00002b32: JUMP 00002b33: JUMPDEST 00002b34: POP 00002b35: POP 00002b36: SWAP4 00002b37: SWAP3 00002b38: POP 00002b39: POP 00002b3a: POP 00002b3b: JUMP 00002b3c: JUMPDEST 00002b3d: PUSH1 0x80 00002b3f: DUP2 00002b40: ADD 00002b41: MLOAD 00002b42: PUSH1 0x00 00002b44: SWAP1 00002b45: PUSH1 0x02 00002b47: PUSH2 0x2995 00002b4a: JUMP 00002b4b: JUMPDEST 00002b4c: PUSH1 0x80 00002b4e: DUP2 00002b4f: ADD 00002b50: MLOAD 00002b51: PUSH1 0x00 00002b53: SWAP1 00002b54: PUSH1 0x01 00002b56: PUSH2 0x2995 00002b59: JUMP 00002b5a: JUMPDEST 00002b5b: PUSH1 0x00 00002b5d: PUSH2 0x2b77 00002b60: DUP3 00002b61: PUSH1 0x20 00002b63: ADD 00002b64: MLOAD 00002b65: DUP5 00002b66: PUSH1 0x40 00002b68: ADD 00002b69: MLOAD 00002b6a: PUSH2 0x26a5 00002b6d: SWAP1 00002b6e: SWAP2 00002b6f: SWAP1 00002b70: PUSH4 0xffffffff 00002b75: AND 00002b76: JUMP 00002b77: JUMPDEST 00002b78: SWAP1 00002b79: POP 00002b7a: PUSH1 0x00 00002b7c: PUSH2 0x2b96 00002b7f: DUP4 00002b80: PUSH1 0x40 00002b82: ADD 00002b83: MLOAD 00002b84: DUP6 00002b85: PUSH1 0x20 00002b87: ADD 00002b88: MLOAD 00002b89: PUSH2 0x26a5 00002b8c: SWAP1 00002b8d: SWAP2 00002b8e: SWAP1 00002b8f: PUSH4 0xffffffff 00002b94: AND 00002b95: JUMP 00002b96: JUMPDEST 00002b97: SWAP1 00002b98: POP 00002b99: PUSH2 0x2ba1 00002b9c: DUP5 00002b9d: PUSH2 0x2b4b 00002ba0: JUMP 00002ba1: JUMPDEST 00002ba2: PUSH2 0x2bae 00002ba5: JUMPI 00002ba6: DUP1 00002ba7: DUP3 00002ba8: LT 00002ba9: ISZERO 00002baa: PUSH2 0x2bb3 00002bad: JUMP 00002bae: JUMPDEST 00002baf: DUP1 00002bb0: DUP3 00002bb1: GT 00002bb2: ISZERO 00002bb3: JUMPDEST 00002bb4: PUSH2 0x2bd2 00002bb7: JUMPI 00002bb8: PUSH1 0x40 00002bba: MLOAD 00002bbb: PUSH1 0x01 00002bbd: PUSH1 0xe5 00002bbf: SHL 00002bc0: PUSH3 0x461bcd 00002bc4: MUL 00002bc5: DUP2 00002bc6: MSTORE 00002bc7: PUSH1 0x04 00002bc9: ADD 00002bca: PUSH2 0x0be3 00002bcd: SWAP1 00002bce: PUSH2 0x56e5 00002bd1: JUMP 00002bd2: JUMPDEST 00002bd3: POP 00002bd4: POP 00002bd5: POP 00002bd6: POP 00002bd7: JUMP 00002bd8: JUMPDEST 00002bd9: PUSH2 0x2be0 00002bdc: PUSH2 0x3aba 00002bdf: JUMP 00002be0: JUMPDEST 00002be1: PUSH2 0x0100 00002be4: DUP2 00002be5: ADD 00002be6: DUP5 00002be7: SWAP1 00002be8: MSTORE 00002be9: PUSH2 0x2bf2 00002bec: DUP7 00002bed: DUP6 00002bee: PUSH2 0x3547 00002bf1: JUMP 00002bf2: JUMPDEST 00002bf3: PUSH2 0x0120 00002bf6: DUP3 00002bf7: ADD 00002bf8: MSTORE 00002bf9: PUSH1 0x40 00002bfb: DUP1 00002bfc: DUP9 00002bfd: ADD 00002bfe: MLOAD 00002bff: PUSH2 0x0160 00002c02: DUP4 00002c03: ADD 00002c04: MSTORE 00002c05: DUP6 00002c06: ADD 00002c07: MLOAD 00002c08: PUSH2 0x0140 00002c0b: DUP3 00002c0c: ADD 00002c0d: MSTORE 00002c0e: PUSH1 0x20 00002c10: DUP8 00002c11: ADD 00002c12: MLOAD 00002c13: PUSH2 0x2c21 00002c16: JUMPI 00002c17: PUSH1 0x60 00002c19: DUP9 00002c1a: ADD 00002c1b: MLOAD 00002c1c: PUSH1 0xe0 00002c1e: DUP3 00002c1f: ADD 00002c20: MSTORE 00002c21: JUMPDEST 00002c22: PUSH1 0x20 00002c24: DUP6 00002c25: ADD 00002c26: MLOAD 00002c27: PUSH2 0x2c35 00002c2a: JUMPI 00002c2b: PUSH1 0x60 00002c2d: DUP7 00002c2e: ADD 00002c2f: MLOAD 00002c30: PUSH1 0xc0 00002c32: DUP3 00002c33: ADD 00002c34: MSTORE 00002c35: JUMPDEST 00002c36: PUSH2 0x2c3e 00002c39: DUP9 00002c3a: PUSH2 0x3475 00002c3d: JUMP 00002c3e: JUMPDEST 00002c3f: PUSH2 0x2c8d 00002c42: JUMPI 00002c43: PUSH2 0x0100 00002c46: DUP2 00002c47: ADD 00002c48: MLOAD 00002c49: PUSH1 0x20 00002c4b: DUP9 00002c4c: ADD 00002c4d: MLOAD 00002c4e: PUSH2 0x2c5c 00002c51: SWAP2 00002c52: PUSH4 0xffffffff 00002c57: PUSH2 0x25db 00002c5a: AND 00002c5b: JUMP 00002c5c: JUMPDEST 00002c5d: PUSH1 0x20 00002c5f: DUP1 00002c60: DUP10 00002c61: ADD 00002c62: DUP3 00002c63: SWAP1 00002c64: MSTORE 00002c65: DUP10 00002c66: ADD 00002c67: MLOAD 00002c68: LT 00002c69: ISZERO 00002c6a: PUSH2 0x2c88 00002c6d: JUMPI 00002c6e: PUSH1 0x40 00002c70: MLOAD 00002c71: PUSH1 0x01 00002c73: PUSH1 0xe5 00002c75: SHL 00002c76: PUSH3 0x461bcd 00002c7a: MUL 00002c7b: DUP2 00002c7c: MSTORE 00002c7d: PUSH1 0x04 00002c7f: ADD 00002c80: PUSH2 0x0be3 00002c83: SWAP1 00002c84: PUSH2 0x5705 00002c87: JUMP 00002c88: JUMPDEST 00002c89: PUSH2 0x2cd4 00002c8c: JUMP 00002c8d: JUMPDEST 00002c8e: PUSH2 0x0120 00002c91: DUP2 00002c92: ADD 00002c93: MLOAD 00002c94: PUSH1 0x20 00002c96: DUP9 00002c97: ADD 00002c98: MLOAD 00002c99: PUSH2 0x2ca7 00002c9c: SWAP2 00002c9d: PUSH4 0xffffffff 00002ca2: PUSH2 0x25db 00002ca5: AND 00002ca6: JUMP 00002ca7: JUMPDEST 00002ca8: PUSH1 0x20 00002caa: DUP9 00002cab: ADD 00002cac: DUP2 00002cad: SWAP1 00002cae: MSTORE 00002caf: PUSH1 0x40 00002cb1: DUP10 00002cb2: ADD 00002cb3: MLOAD 00002cb4: LT 00002cb5: ISZERO 00002cb6: PUSH2 0x2cd4 00002cb9: JUMPI 00002cba: PUSH1 0x40 00002cbc: MLOAD 00002cbd: PUSH1 0x01 00002cbf: PUSH1 0xe5 00002cc1: SHL 00002cc2: PUSH3 0x461bcd 00002cc6: MUL 00002cc7: DUP2 00002cc8: MSTORE 00002cc9: PUSH1 0x04 00002ccb: ADD 00002ccc: PUSH2 0x0be3 00002ccf: SWAP1 00002cd0: PUSH2 0x5705 00002cd3: JUMP 00002cd4: JUMPDEST 00002cd5: PUSH2 0x0100 00002cd8: DUP2 00002cd9: ADD 00002cda: MLOAD 00002cdb: PUSH1 0x20 00002cdd: DUP7 00002cde: ADD 00002cdf: MLOAD 00002ce0: PUSH2 0x2cee 00002ce3: SWAP2 00002ce4: PUSH4 0xffffffff 00002ce9: PUSH2 0x25db 00002cec: AND 00002ced: JUMP 00002cee: JUMPDEST 00002cef: PUSH1 0x20 00002cf1: DUP1 00002cf2: DUP8 00002cf3: ADD 00002cf4: DUP3 00002cf5: SWAP1 00002cf6: MSTORE 00002cf7: DUP8 00002cf8: ADD 00002cf9: MLOAD 00002cfa: LT 00002cfb: ISZERO 00002cfc: PUSH2 0x2d1a 00002cff: JUMPI 00002d00: PUSH1 0x40 00002d02: MLOAD 00002d03: PUSH1 0x01 00002d05: PUSH1 0xe5 00002d07: SHL 00002d08: PUSH3 0x461bcd 00002d0c: MUL 00002d0d: DUP2 00002d0e: MSTORE 00002d0f: PUSH1 0x04 00002d11: ADD 00002d12: PUSH2 0x0be3 00002d15: SWAP1 00002d16: PUSH2 0x5615 00002d19: JUMP 00002d1a: JUMPDEST 00002d1b: DUP6 00002d1c: MLOAD 00002d1d: PUSH1 0x01 00002d1f: PUSH1 0x01 00002d21: PUSH1 0xa0 00002d23: SHL 00002d24: SUB 00002d25: SWAP1 00002d26: DUP2 00002d27: AND 00002d28: DUP3 00002d29: MSTORE 00002d2a: DUP9 00002d2b: MLOAD 00002d2c: AND 00002d2d: PUSH1 0x20 00002d2f: DUP3 00002d30: ADD 00002d31: MSTORE 00002d32: PUSH2 0x2d3a 00002d35: DUP9 00002d36: PUSH2 0x2b4b 00002d39: JUMP 00002d3a: JUMPDEST 00002d3b: ISZERO 00002d3c: PUSH2 0x2d54 00002d3f: JUMPI 00002d40: DUP1 00002d41: MLOAD 00002d42: PUSH1 0x01 00002d44: PUSH1 0x01 00002d46: PUSH1 0xa0 00002d48: SHL 00002d49: SUB 00002d4a: AND 00002d4b: PUSH1 0x40 00002d4d: DUP3 00002d4e: ADD 00002d4f: MSTORE 00002d50: PUSH2 0x2d68 00002d53: JUMP 00002d54: JUMPDEST 00002d55: PUSH1 0x20 00002d57: DUP2 00002d58: ADD 00002d59: MLOAD 00002d5a: PUSH1 0x01 00002d5c: PUSH1 0x01 00002d5e: PUSH1 0xa0 00002d60: SHL 00002d61: SUB 00002d62: AND 00002d63: PUSH1 0x40 00002d65: DUP3 00002d66: ADD 00002d67: MSTORE 00002d68: JUMPDEST 00002d69: PUSH1 0x00 00002d6b: PUSH2 0x2d73 00002d6e: DUP8 00002d6f: PUSH2 0x355c 00002d72: JUMP 00002d73: JUMPDEST 00002d74: SWAP1 00002d75: POP 00002d76: DUP1 00002d77: ISZERO 00002d78: PUSH2 0x2ddd 00002d7b: JUMPI 00002d7c: PUSH1 0x00 00002d7e: PUSH1 0x60 00002d80: DUP4 00002d81: ADD 00002d82: MSTORE 00002d83: PUSH2 0x2dd3 00002d86: PUSH2 0x2db7 00002d89: PUSH2 0x2d90 00002d8c: PUSH2 0x2950 00002d8f: JUMP 00002d90: JUMPDEST 00002d91: PUSH2 0x2dab 00002d94: PUSH2 0x2d9b 00002d97: PUSH2 0x2950 00002d9a: JUMP 00002d9b: JUMPDEST 00002d9c: PUSH3 0x0186a0 00002da0: SWAP1 00002da1: PUSH4 0xffffffff 00002da6: PUSH2 0x26a5 00002da9: AND 00002daa: JUMP 00002dab: JUMPDEST 00002dac: SWAP1 00002dad: PUSH4 0xffffffff 00002db2: PUSH2 0x26a5 00002db5: AND 00002db6: JUMP 00002db7: JUMPDEST 00002db8: PUSH2 0x1cf3 00002dbb: DUP4 00002dbc: PUSH2 0x2dab 00002dbf: DUP9 00002dc0: DUP8 00002dc1: PUSH2 0x0120 00002dc4: ADD 00002dc5: MLOAD 00002dc6: PUSH2 0x26a5 00002dc9: SWAP1 00002dca: SWAP2 00002dcb: SWAP1 00002dcc: PUSH4 0xffffffff 00002dd1: AND 00002dd2: JUMP 00002dd3: JUMPDEST 00002dd4: PUSH1 0x80 00002dd6: DUP4 00002dd7: ADD 00002dd8: MSTORE 00002dd9: PUSH2 0x2e32 00002ddc: JUMP 00002ddd: JUMPDEST 00002dde: PUSH1 0x00 00002de0: PUSH2 0x2de8 00002de3: DUP9 00002de4: PUSH2 0x357b 00002de7: JUMP 00002de8: JUMPDEST 00002de9: PUSH1 0x00 00002deb: PUSH1 0x80 00002ded: DUP6 00002dee: ADD 00002def: DUP2 00002df0: SWAP1 00002df1: MSTORE 00002df2: DUP10 00002df3: MLOAD 00002df4: SWAP2 00002df5: SWAP3 00002df6: POP 00002df7: SWAP1 00002df8: PUSH2 0x2e04 00002dfb: SWAP1 00002dfc: DUP14 00002dfd: SWAP1 00002dfe: DUP5 00002dff: DUP9 00002e00: PUSH2 0x33d0 00002e03: JUMP 00002e04: JUMPDEST 00002e05: SWAP1 00002e06: POP 00002e07: PUSH2 0x2e2a 00002e0a: PUSH2 0x2e14 00002e0d: PUSH2 0x2d9b 00002e10: PUSH2 0x2950 00002e13: JUMP 00002e14: JUMPDEST 00002e15: PUSH2 0x0120 00002e18: DUP7 00002e19: ADD 00002e1a: MLOAD 00002e1b: PUSH2 0x1cf3 00002e1e: SWAP1 00002e1f: DUP5 00002e20: PUSH4 0xffffffff 00002e25: PUSH2 0x26a5 00002e28: AND 00002e29: JUMP 00002e2a: JUMPDEST 00002e2b: PUSH1 0x60 00002e2d: DUP6 00002e2e: ADD 00002e2f: MSTORE 00002e30: POP 00002e31: POP 00002e32: JUMPDEST 00002e33: PUSH2 0x2e56 00002e36: PUSH2 0x2e40 00002e39: PUSH2 0x2d9b 00002e3c: PUSH2 0x2950 00002e3f: JUMP 00002e40: JUMPDEST 00002e41: PUSH2 0x0120 00002e44: DUP5 00002e45: ADD 00002e46: MLOAD 00002e47: PUSH2 0x1cf3 00002e4a: SWAP1 00002e4b: DUP8 00002e4c: PUSH4 0xffffffff 00002e51: PUSH2 0x26a5 00002e54: AND 00002e55: JUMP 00002e56: JUMPDEST 00002e57: PUSH1 0xa0 00002e59: DUP4 00002e5a: ADD 00002e5b: MSTORE 00002e5c: POP 00002e5d: SWAP9 00002e5e: SWAP8 00002e5f: POP 00002e60: POP 00002e61: POP 00002e62: POP 00002e63: POP 00002e64: POP 00002e65: POP 00002e66: POP 00002e67: JUMP 00002e68: JUMPDEST 00002e69: PUSH1 0x00 00002e6b: PUSH2 0x2e73 00002e6e: DUP4 00002e6f: PUSH2 0x2b4b 00002e72: JUMP 00002e73: JUMPDEST 00002e74: SWAP1 00002e75: POP 00002e76: PUSH1 0x00 00002e78: PUSH2 0x2e7f 00002e7b: PUSH2 0x3a74 00002e7e: JUMP 00002e7f: JUMPDEST 00002e80: POP 00002e81: PUSH1 0x40 00002e83: DUP1 00002e84: MLOAD 00002e85: PUSH1 0x60 00002e87: DUP2 00002e88: ADD 00002e89: DUP3 00002e8a: MSTORE 00002e8b: PUSH1 0x00 00002e8d: DUP1 00002e8e: DUP3 00002e8f: MSTORE 00002e90: PUSH1 0x20 00002e92: DUP3 00002e93: ADD 00002e94: DUP2 00002e95: SWAP1 00002e96: MSTORE 00002e97: DUP6 00002e98: DUP4 00002e99: ADD 00002e9a: MLOAD 00002e9b: PUSH1 0x01 00002e9d: PUSH1 0x01 00002e9f: PUSH1 0xa0 00002ea1: SHL 00002ea2: SUB 00002ea3: AND 00002ea4: SWAP3 00002ea5: DUP3 00002ea6: ADD 00002ea7: SWAP3 00002ea8: SWAP1 00002ea9: SWAP3 00002eaa: MSTORE 00002eab: SWAP1 00002eac: JUMPDEST 00002ead: DUP7 00002eae: MLOAD 00002eaf: DUP2 00002eb0: LT 00002eb1: ISZERO 00002eb2: PUSH2 0x31e3 00002eb5: JUMPI 00002eb6: PUSH2 0x2f56 00002eb9: DUP9 00002eba: DUP7 00002ebb: PUSH1 0x00 00002ebd: ADD 00002ebe: MLOAD 00002ebf: DUP7 00002ec0: PUSH2 0x2ee1 00002ec3: JUMPI 00002ec4: DUP10 00002ec5: DUP5 00002ec6: DUP2 00002ec7: MLOAD 00002ec8: DUP2 00002ec9: LT 00002eca: PUSH2 0x2ecf 00002ecd: JUMPI 00002ece: INVALID 00002ecf: JUMPDEST 00002ed0: PUSH1 0x20 00002ed2: MUL 00002ed3: PUSH1 0x20 00002ed5: ADD 00002ed6: ADD 00002ed7: MLOAD 00002ed8: PUSH2 0x0140 00002edb: ADD 00002edc: MLOAD 00002edd: PUSH2 0x2efb 00002ee0: JUMP 00002ee1: JUMPDEST 00002ee2: DUP10 00002ee3: DUP5 00002ee4: DUP2 00002ee5: MLOAD 00002ee6: DUP2 00002ee7: LT 00002ee8: PUSH2 0x2eed 00002eeb: JUMPI 00002eec: INVALID 00002eed: JUMPDEST 00002eee: PUSH1 0x20 00002ef0: MUL 00002ef1: PUSH1 0x20 00002ef3: ADD 00002ef4: ADD 00002ef5: MLOAD 00002ef6: PUSH2 0x0160 00002ef9: ADD 00002efa: MLOAD 00002efb: JUMPDEST 00002efc: DUP8 00002efd: PUSH2 0x2f1e 00002f00: JUMPI 00002f01: DUP11 00002f02: DUP6 00002f03: DUP2 00002f04: MLOAD 00002f05: DUP2 00002f06: LT 00002f07: PUSH2 0x2f0c 00002f0a: JUMPI 00002f0b: INVALID 00002f0c: JUMPDEST 00002f0d: PUSH1 0x20 00002f0f: MUL 00002f10: PUSH1 0x20 00002f12: ADD 00002f13: ADD 00002f14: MLOAD 00002f15: PUSH2 0x0160 00002f18: ADD 00002f19: MLOAD 00002f1a: PUSH2 0x2f38 00002f1d: JUMP 00002f1e: JUMPDEST 00002f1f: DUP11 00002f20: DUP6 00002f21: DUP2 00002f22: MLOAD 00002f23: DUP2 00002f24: LT 00002f25: PUSH2 0x2f2a 00002f28: JUMPI 00002f29: INVALID 00002f2a: JUMPDEST 00002f2b: PUSH1 0x20 00002f2d: MUL 00002f2e: PUSH1 0x20 00002f30: ADD 00002f31: ADD 00002f32: MLOAD 00002f33: PUSH2 0x0140 00002f36: ADD 00002f37: MLOAD 00002f38: JUMPDEST 00002f39: DUP12 00002f3a: DUP7 00002f3b: DUP2 00002f3c: MLOAD 00002f3d: DUP2 00002f3e: LT 00002f3f: PUSH2 0x2f44 00002f42: JUMPI 00002f43: INVALID 00002f44: JUMPDEST 00002f45: PUSH1 0x20 00002f47: MUL 00002f48: PUSH1 0x20 00002f4a: ADD 00002f4b: ADD 00002f4c: MLOAD 00002f4d: PUSH2 0x0100 00002f50: ADD 00002f51: MLOAD 00002f52: PUSH2 0x3588 00002f55: JUMP 00002f56: JUMPDEST 00002f57: PUSH1 0x00 00002f59: DUP5 00002f5a: ISZERO 00002f5b: PUSH2 0x2fdd 00002f5e: JUMPI 00002f5f: PUSH2 0x2fd6 00002f62: DUP9 00002f63: DUP4 00002f64: DUP2 00002f65: MLOAD 00002f66: DUP2 00002f67: LT 00002f68: PUSH2 0x2f6d 00002f6b: JUMPI 00002f6c: INVALID 00002f6d: JUMPDEST 00002f6e: PUSH1 0x20 00002f70: MUL 00002f71: PUSH1 0x20 00002f73: ADD 00002f74: ADD 00002f75: MLOAD 00002f76: PUSH1 0x80 00002f78: ADD 00002f79: MLOAD 00002f7a: PUSH2 0x1d82 00002f7d: DUP11 00002f7e: DUP6 00002f7f: DUP2 00002f80: MLOAD 00002f81: DUP2 00002f82: LT 00002f83: PUSH2 0x2f88 00002f86: JUMPI 00002f87: INVALID 00002f88: JUMPDEST 00002f89: PUSH1 0x20 00002f8b: MUL 00002f8c: PUSH1 0x20 00002f8e: ADD 00002f8f: ADD 00002f90: MLOAD 00002f91: PUSH1 0xc0 00002f93: ADD 00002f94: MLOAD 00002f95: PUSH2 0x1cc7 00002f98: DUP13 00002f99: DUP8 00002f9a: DUP2 00002f9b: MLOAD 00002f9c: DUP2 00002f9d: LT 00002f9e: PUSH2 0x2fa3 00002fa1: JUMPI 00002fa2: INVALID 00002fa3: JUMPDEST 00002fa4: PUSH1 0x20 00002fa6: MUL 00002fa7: PUSH1 0x20 00002fa9: ADD 00002faa: ADD 00002fab: MLOAD 00002fac: PUSH1 0x60 00002fae: ADD 00002faf: MLOAD 00002fb0: DUP14 00002fb1: DUP9 00002fb2: DUP2 00002fb3: MLOAD 00002fb4: DUP2 00002fb5: LT 00002fb6: PUSH2 0x2fbb 00002fb9: JUMPI 00002fba: INVALID 00002fbb: JUMPDEST 00002fbc: PUSH1 0x20 00002fbe: MUL 00002fbf: PUSH1 0x20 00002fc1: ADD 00002fc2: ADD 00002fc3: MLOAD 00002fc4: PUSH2 0x0120 00002fc7: ADD 00002fc8: MLOAD 00002fc9: PUSH2 0x25db 00002fcc: SWAP1 00002fcd: SWAP2 00002fce: SWAP1 00002fcf: PUSH4 0xffffffff 00002fd4: AND 00002fd5: JUMP 00002fd6: JUMPDEST 00002fd7: SWAP1 00002fd8: POP 00002fd9: PUSH2 0x3058 00002fdc: JUMP 00002fdd: JUMPDEST 00002fde: PUSH2 0x3055 00002fe1: DUP9 00002fe2: DUP4 00002fe3: DUP2 00002fe4: MLOAD 00002fe5: DUP2 00002fe6: LT 00002fe7: PUSH2 0x2fec 00002fea: JUMPI 00002feb: INVALID 00002fec: JUMPDEST 00002fed: PUSH1 0x20 00002fef: MUL 00002ff0: PUSH1 0x20 00002ff2: ADD 00002ff3: ADD 00002ff4: MLOAD 00002ff5: PUSH1 0x80 00002ff7: ADD 00002ff8: MLOAD 00002ff9: PUSH2 0x1cc7 00002ffc: DUP11 00002ffd: DUP6 00002ffe: DUP2 00002fff: MLOAD 00003000: DUP2 00003001: LT 00003002: PUSH2 0x3007 00003005: JUMPI 00003006: INVALID 00003007: JUMPDEST 00003008: PUSH1 0x20 0000300a: MUL 0000300b: PUSH1 0x20 0000300d: ADD 0000300e: ADD 0000300f: MLOAD 00003010: PUSH1 0xc0 00003012: ADD 00003013: MLOAD 00003014: PUSH2 0x1d82 00003017: DUP13 00003018: DUP8 00003019: DUP2 0000301a: MLOAD 0000301b: DUP2 0000301c: LT 0000301d: PUSH2 0x3022 00003020: JUMPI 00003021: INVALID 00003022: JUMPDEST 00003023: PUSH1 0x20 00003025: MUL 00003026: PUSH1 0x20 00003028: ADD 00003029: ADD 0000302a: MLOAD 0000302b: PUSH1 0x60 0000302d: ADD 0000302e: MLOAD 0000302f: DUP14 00003030: DUP9 00003031: DUP2 00003032: MLOAD 00003033: DUP2 00003034: LT 00003035: PUSH2 0x303a 00003038: JUMPI 00003039: INVALID 0000303a: JUMPDEST 0000303b: PUSH1 0x20 0000303d: MUL 0000303e: PUSH1 0x20 00003040: ADD 00003041: ADD 00003042: MLOAD 00003043: PUSH2 0x0120 00003046: ADD 00003047: MLOAD 00003048: PUSH2 0x28de 0000304b: SWAP1 0000304c: SWAP2 0000304d: SWAP1 0000304e: PUSH4 0xffffffff 00003053: AND 00003054: JUMP 00003055: JUMPDEST 00003056: SWAP1 00003057: POP 00003058: JUMPDEST 00003059: PUSH2 0x30e1 0000305c: DUP10 0000305d: DUP8 0000305e: PUSH1 0x20 00003060: ADD 00003061: MLOAD 00003062: DUP8 00003063: PUSH2 0x3084 00003066: JUMPI 00003067: DUP11 00003068: DUP6 00003069: DUP2 0000306a: MLOAD 0000306b: DUP2 0000306c: LT 0000306d: PUSH2 0x3072 00003070: JUMPI 00003071: INVALID 00003072: JUMPDEST 00003073: PUSH1 0x20 00003075: MUL 00003076: PUSH1 0x20 00003078: ADD 00003079: ADD 0000307a: MLOAD 0000307b: PUSH2 0x0160 0000307e: ADD 0000307f: MLOAD 00003080: PUSH2 0x309e 00003083: JUMP 00003084: JUMPDEST 00003085: DUP11 00003086: DUP6 00003087: DUP2 00003088: MLOAD 00003089: DUP2 0000308a: LT 0000308b: PUSH2 0x3090 0000308e: JUMPI 0000308f: INVALID 00003090: JUMPDEST 00003091: PUSH1 0x20 00003093: MUL 00003094: PUSH1 0x20 00003096: ADD 00003097: ADD 00003098: MLOAD 00003099: PUSH2 0x0140 0000309c: ADD 0000309d: MLOAD 0000309e: JUMPDEST 0000309f: DUP9 000030a0: PUSH2 0x30c1 000030a3: JUMPI 000030a4: DUP12 000030a5: DUP7 000030a6: DUP2 000030a7: MLOAD 000030a8: DUP2 000030a9: LT 000030aa: PUSH2 0x30af 000030ad: JUMPI 000030ae: INVALID 000030af: JUMPDEST 000030b0: PUSH1 0x20 000030b2: MUL 000030b3: PUSH1 0x20 000030b5: ADD 000030b6: ADD 000030b7: MLOAD 000030b8: PUSH2 0x0140 000030bb: ADD 000030bc: MLOAD 000030bd: PUSH2 0x30db 000030c0: JUMP 000030c1: JUMPDEST 000030c2: DUP12 000030c3: DUP7 000030c4: DUP2 000030c5: MLOAD 000030c6: DUP2 000030c7: LT 000030c8: PUSH2 0x30cd 000030cb: JUMPI 000030cc: INVALID 000030cd: JUMPDEST 000030ce: PUSH1 0x20 000030d0: MUL 000030d1: PUSH1 0x20 000030d3: ADD 000030d4: ADD 000030d5: MLOAD 000030d6: PUSH2 0x0160 000030d9: ADD 000030da: MLOAD 000030db: JUMPDEST 000030dc: DUP6 000030dd: PUSH2 0x3588 000030e0: JUMP 000030e1: JUMPDEST 000030e2: PUSH2 0x3103 000030e5: DUP10 000030e6: DUP10 000030e7: DUP5 000030e8: DUP2 000030e9: MLOAD 000030ea: DUP2 000030eb: LT 000030ec: PUSH2 0x30f1 000030ef: JUMPI 000030f0: INVALID 000030f1: JUMPDEST 000030f2: PUSH1 0x20 000030f4: MUL 000030f5: PUSH1 0x20 000030f7: ADD 000030f8: ADD 000030f9: MLOAD 000030fa: PUSH2 0x0140 000030fd: ADD 000030fe: MLOAD 000030ff: PUSH2 0x365e 00003102: JUMP 00003103: JUMPDEST 00003104: PUSH2 0x3148 00003107: DUP9 00003108: DUP4 00003109: DUP2 0000310a: MLOAD 0000310b: DUP2 0000310c: LT 0000310d: PUSH2 0x3112 00003110: JUMPI 00003111: INVALID 00003112: JUMPDEST 00003113: PUSH1 0x20 00003115: MUL 00003116: PUSH1 0x20 00003118: ADD 00003119: ADD 0000311a: MLOAD 0000311b: PUSH1 0x60 0000311d: ADD 0000311e: MLOAD 0000311f: PUSH2 0x1cc7 00003122: DUP11 00003123: DUP6 00003124: DUP2 00003125: MLOAD 00003126: DUP2 00003127: LT 00003128: PUSH2 0x312d 0000312b: JUMPI 0000312c: INVALID 0000312d: JUMPDEST 0000312e: PUSH1 0x20 00003130: MUL 00003131: PUSH1 0x20 00003133: ADD 00003134: ADD 00003135: MLOAD 00003136: PUSH1 0xa0 00003138: ADD 00003139: MLOAD 0000313a: DUP8 0000313b: PUSH2 0x25db 0000313e: SWAP1 0000313f: SWAP2 00003140: SWAP1 00003141: PUSH4 0xffffffff 00003146: AND 00003147: JUMP 00003148: JUMPDEST 00003149: SWAP4 0000314a: POP 0000314b: PUSH2 0x318f 0000314e: DUP9 0000314f: DUP4 00003150: DUP2 00003151: MLOAD 00003152: DUP2 00003153: LT 00003154: PUSH2 0x3159 00003157: JUMPI 00003158: INVALID 00003159: JUMPDEST 0000315a: PUSH1 0x20 0000315c: MUL 0000315d: PUSH1 0x20 0000315f: ADD 00003160: ADD 00003161: MLOAD 00003162: PUSH1 0xe0 00003164: ADD 00003165: MLOAD 00003166: PUSH2 0x1cc7 00003169: DUP11 0000316a: DUP6 0000316b: DUP2 0000316c: MLOAD 0000316d: DUP2 0000316e: LT 0000316f: PUSH2 0x3174 00003172: JUMPI 00003173: INVALID 00003174: JUMPDEST 00003175: PUSH1 0x20 00003177: MUL 00003178: PUSH1 0x20 0000317a: ADD 0000317b: ADD 0000317c: MLOAD 0000317d: PUSH1 0xc0 0000317f: ADD 00003180: MLOAD 00003181: DUP8 00003182: PUSH2 0x25db 00003185: SWAP1 00003186: SWAP2 00003187: SWAP1 00003188: PUSH4 0xffffffff 0000318d: AND 0000318e: JUMP 0000318f: JUMPDEST 00003190: SWAP4 00003191: POP 00003192: PUSH2 0x31bb 00003195: DUP9 00003196: DUP4 00003197: DUP2 00003198: MLOAD 00003199: DUP2 0000319a: LT 0000319b: PUSH2 0x31a0 0000319e: JUMPI 0000319f: INVALID 000031a0: JUMPDEST 000031a1: PUSH1 0x20 000031a3: MUL 000031a4: PUSH1 0x20 000031a6: ADD 000031a7: ADD 000031a8: MLOAD 000031a9: PUSH1 0x80 000031ab: ADD 000031ac: MLOAD 000031ad: DUP6 000031ae: PUSH2 0x28de 000031b1: SWAP1 000031b2: SWAP2 000031b3: SWAP1 000031b4: PUSH4 0xffffffff 000031b9: AND 000031ba: JUMP 000031bb: JUMPDEST 000031bc: SWAP4 000031bd: POP 000031be: PUSH2 0x31da 000031c1: DUP9 000031c2: DUP4 000031c3: DUP2 000031c4: MLOAD 000031c5: DUP2 000031c6: LT 000031c7: PUSH2 0x31cc 000031ca: JUMPI 000031cb: INVALID 000031cc: JUMPDEST 000031cd: PUSH1 0x20 000031cf: MUL 000031d0: PUSH1 0x20 000031d2: ADD 000031d3: ADD 000031d4: MLOAD 000031d5: DUP8 000031d6: PUSH2 0x3686 000031d9: JUMP 000031da: JUMPDEST 000031db: POP 000031dc: PUSH1 0x01 000031de: ADD 000031df: PUSH2 0x2eac 000031e2: JUMP 000031e3: JUMPDEST 000031e4: POP 000031e5: PUSH2 0x320e 000031e8: DUP8 000031e9: DUP6 000031ea: PUSH1 0x20 000031ec: ADD 000031ed: MLOAD 000031ee: DUP9 000031ef: PUSH1 0x00 000031f1: DUP2 000031f2: MLOAD 000031f3: DUP2 000031f4: LT 000031f5: PUSH2 0x31fa 000031f8: JUMPI 000031f9: INVALID 000031fa: JUMPDEST 000031fb: PUSH1 0x20 000031fd: MUL 000031fe: PUSH1 0x20 00003200: ADD 00003201: ADD 00003202: MLOAD 00003203: PUSH2 0x0160 00003206: ADD 00003207: MLOAD 00003208: DUP5 00003209: DUP7 0000320a: PUSH2 0x3588 0000320d: JUMP 0000320e: JUMPDEST 0000320f: PUSH2 0x1136 00003212: DUP8 00003213: DUP8 00003214: PUSH1 0x00 00003216: DUP2 00003217: MLOAD 00003218: DUP2 00003219: LT 0000321a: PUSH2 0x321f 0000321d: JUMPI 0000321e: INVALID 0000321f: JUMPDEST 00003220: PUSH1 0x20 00003222: MUL 00003223: PUSH1 0x20 00003225: ADD 00003226: ADD 00003227: MLOAD 00003228: PUSH2 0x0160 0000322b: ADD 0000322c: MLOAD 0000322d: PUSH2 0x365e 00003230: JUMP 00003231: JUMPDEST 00003232: PUSH1 0x00 00003234: DUP1 00003235: PUSH2 0x323e 00003238: DUP5 00003239: DUP5 0000323a: PUSH2 0x2873 0000323d: JUMP 0000323e: JUMPDEST 0000323f: SWAP1 00003240: POP 00003241: DUP3 00003242: DUP2 00003243: MUL 00003244: DUP5 00003245: SUB 00003246: DUP1 00003247: ISZERO 00003248: PUSH2 0x3256 0000324b: JUMPI 0000324c: POP 0000324d: PUSH1 0x01 0000324f: ADD 00003250: SWAP1 00003251: POP 00003252: PUSH2 0x0d92 00003255: JUMP 00003256: JUMPDEST 00003257: POP 00003258: SWAP1 00003259: POP 0000325a: PUSH2 0x0d92 0000325d: JUMP 0000325e: JUMPDEST 0000325f: PUSH1 0x00 00003261: PUSH2 0x0d92 00003264: DUP3 00003265: PUSH8 0x0de0b6b3a7640000 0000326e: PUSH4 0xffffffff 00003273: PUSH2 0x25db 00003276: AND 00003277: JUMP 00003278: JUMPDEST 00003279: PUSH1 0x00 0000327b: PUSH2 0x0d92 0000327e: PUSH2 0x3286 00003281: DUP4 00003282: PUSH2 0x36ff 00003285: JUMP 00003286: JUMPDEST 00003287: PUSH2 0x3741 0000328a: JUMP 0000328b: JUMPDEST 0000328c: PUSH1 0x40 0000328e: MLOAD 0000328f: DUP2 00003290: SWAP1 00003291: PUSH32 0xdfcfd7b1e4d40c282e16bfdfa04bba6792f850249f83ed258c3fecc3c5962fbc 000032b2: SWAP1 000032b3: PUSH1 0x00 000032b5: SWAP1 000032b6: LOG2 000032b7: POP 000032b8: JUMP 000032b9: JUMPDEST 000032ba: PUSH1 0x40 000032bc: MLOAD 000032bd: PUSH1 0x01 000032bf: PUSH1 0x01 000032c1: PUSH1 0xa0 000032c3: SHL 000032c4: SUB 000032c5: DUP3 000032c6: AND 000032c7: SWAP1 000032c8: PUSH32 0xc3dd8edec722273de2ffd31b47b4f106689ae891ac1bfddf7ae6190589ab0f67 000032e9: SWAP1 000032ea: PUSH1 0x00 000032ec: SWAP1 000032ed: LOG2 000032ee: POP 000032ef: JUMP 000032f0: JUMPDEST 000032f1: DUP1 000032f2: PUSH1 0x01 000032f4: PUSH1 0x01 000032f6: PUSH1 0xa0 000032f8: SHL 000032f9: SUB 000032fa: AND 000032fb: DUP3 000032fc: PUSH1 0x01 000032fe: PUSH1 0x01 00003300: PUSH1 0xa0 00003302: SHL 00003303: SUB 00003304: AND 00003305: PUSH32 0xa6568d7ca1ae4c87043ca12f90308b8ef94330ee3a047c2101e1a40812d26c98 00003326: PUSH1 0x40 00003328: MLOAD 00003329: PUSH1 0x40 0000332b: MLOAD 0000332c: DUP1 0000332d: SWAP2 0000332e: SUB 0000332f: SWAP1 00003330: LOG3 00003331: POP 00003332: POP 00003333: JUMP 00003334: JUMPDEST 00003335: PUSH1 0x01 00003337: PUSH1 0x01 00003339: PUSH1 0xa0 0000333b: SHL 0000333c: SUB 0000333d: DUP1 0000333e: DUP3 0000333f: AND 00003340: PUSH1 0x00 00003342: SWAP1 00003343: DUP2 00003344: MSTORE 00003345: PUSH1 0x01 00003347: DUP5 00003348: ADD 00003349: PUSH1 0x20 0000334b: SWAP1 0000334c: DUP2 0000334d: MSTORE 0000334e: PUSH1 0x40 00003350: DUP1 00003351: DUP4 00003352: KECCAK256 00003353: SLOAD 00003354: DUP2 00003355: MLOAD 00003356: PUSH1 0x01 00003358: PUSH1 0xe0 0000335a: SHL 0000335b: PUSH4 0x18160ddd 00003360: MUL 00003361: DUP2 00003362: MSTORE 00003363: SWAP2 00003364: MLOAD 00003365: SWAP4 00003366: SWAP5 00003367: AND 00003368: SWAP3 00003369: PUSH4 0x18160ddd 0000336e: SWAP3 0000336f: PUSH1 0x04 00003371: DUP1 00003372: DUP5 00003373: ADD 00003374: SWAP4 00003375: SWAP2 00003376: SWAP3 00003377: SWAP2 00003378: DUP3 00003379: SWAP1 0000337a: SUB 0000337b: ADD 0000337c: DUP2 0000337d: DUP7 0000337e: DUP1 0000337f: EXTCODESIZE 00003380: ISZERO 00003381: DUP1 00003382: ISZERO 00003383: PUSH2 0x338b 00003386: JUMPI 00003387: PUSH1 0x00 00003389: DUP1 0000338a: REVERT 0000338b: JUMPDEST 0000338c: POP 0000338d: GAS 0000338e: STATICCALL 0000338f: ISZERO 00003390: DUP1 00003391: ISZERO 00003392: PUSH2 0x339f 00003395: JUMPI 00003396: RETURNDATASIZE 00003397: PUSH1 0x00 00003399: DUP1 0000339a: RETURNDATACOPY 0000339b: RETURNDATASIZE 0000339c: PUSH1 0x00 0000339e: REVERT 0000339f: JUMPDEST 000033a0: POP 000033a1: POP 000033a2: POP 000033a3: POP 000033a4: PUSH1 0x40 000033a6: MLOAD 000033a7: RETURNDATASIZE 000033a8: PUSH1 0x1f 000033aa: NOT 000033ab: PUSH1 0x1f 000033ad: DUP3 000033ae: ADD 000033af: AND 000033b0: DUP3 000033b1: ADD 000033b2: DUP1 000033b3: PUSH1 0x40 000033b5: MSTORE 000033b6: POP 000033b7: PUSH2 0x0933 000033ba: SWAP2 000033bb: SWAP1 000033bc: DUP2 000033bd: ADD 000033be: SWAP1 000033bf: PUSH2 0x470e 000033c2: JUMP 000033c3: JUMPDEST 000033c4: PUSH1 0x80 000033c6: ADD 000033c7: MLOAD 000033c8: PUSH1 0x50 000033ca: SHL 000033cb: PUSH1 0xf0 000033cd: SHR 000033ce: SWAP1 000033cf: JUMP 000033d0: JUMPDEST 000033d1: PUSH1 0x00 000033d3: DUP2 000033d4: ISZERO 000033d5: PUSH2 0x33f9 000033d8: JUMPI 000033d9: PUSH2 0x33f2 000033dc: PUSH2 0x33e5 000033df: DUP7 000033e0: DUP7 000033e1: PUSH2 0x1db1 000033e4: JUMP 000033e5: JUMPDEST 000033e6: DUP5 000033e7: SWAP1 000033e8: PUSH4 0xffffffff 000033ed: PUSH2 0x26a5 000033f0: AND 000033f1: JUMP 000033f2: JUMPDEST 000033f3: SWAP1 000033f4: POP 000033f5: PUSH2 0x0bb4 000033f8: JUMP 000033f9: JUMPDEST 000033fa: PUSH2 0x33f2 000033fd: PUSH2 0x33e5 00003400: PUSH2 0x2950 00003403: JUMP 00003404: JUMPDEST 00003405: PUSH1 0x80 00003407: ADD 00003408: MLOAD 00003409: PUSH1 0xf8 0000340b: SHR 0000340c: SWAP1 0000340d: JUMP 0000340e: JUMPDEST 0000340f: PUSH2 0x3416 00003412: PUSH2 0x3b3c 00003415: JUMP 00003416: JUMPDEST 00003417: DUP3 00003418: MLOAD 00003419: PUSH1 0x01 0000341b: PUSH1 0x01 0000341d: PUSH1 0xa0 0000341f: SHL 00003420: SUB 00003421: SWAP1 00003422: DUP2 00003423: AND 00003424: DUP3 00003425: MSTORE 00003426: PUSH1 0x20 00003428: DUP1 00003429: DUP6 0000342a: ADD 0000342b: MLOAD 0000342c: PUSH1 0x80 0000342e: DUP1 0000342f: DUP6 00003430: ADD 00003431: SWAP2 00003432: SWAP1 00003433: SWAP2 00003434: MSTORE 00003435: PUSH1 0x40 00003437: DUP1 00003438: DUP8 00003439: ADD 0000343a: MLOAD 0000343b: PUSH1 0xa0 0000343d: DUP7 0000343e: ADD 0000343f: MSTORE 00003440: PUSH1 0x60 00003442: DUP1 00003443: DUP9 00003444: ADD 00003445: MLOAD 00003446: PUSH1 0xc0 00003448: DUP8 00003449: ADD 0000344a: MSTORE 0000344b: SWAP2 0000344c: SWAP1 0000344d: SWAP7 0000344e: ADD 0000344f: MLOAD 00003450: PUSH1 0xe0 00003452: DUP6 00003453: ADD 00003454: MSTORE 00003455: DUP5 00003456: MLOAD 00003457: DUP4 00003458: AND 00003459: DUP7 0000345a: DUP6 0000345b: ADD 0000345c: MSTORE 0000345d: DUP5 0000345e: DUP3 0000345f: ADD 00003460: MLOAD 00003461: DUP4 00003462: AND 00003463: SWAP1 00003464: DUP5 00003465: ADD 00003466: MSTORE 00003467: SWAP3 00003468: SWAP1 00003469: SWAP4 0000346a: ADD 0000346b: MLOAD 0000346c: SWAP1 0000346d: SWAP3 0000346e: AND 0000346f: SWAP1 00003470: DUP3 00003471: ADD 00003472: MSTORE 00003473: SWAP1 00003474: JUMP 00003475: JUMPDEST 00003476: PUSH1 0x00 00003478: PUSH2 0x3480 0000347b: DUP3 0000347c: PUSH2 0x2b4b 0000347f: JUMP 00003480: JUMPDEST 00003481: ISZERO 00003482: DUP1 00003483: ISZERO 00003484: PUSH2 0x0d92 00003487: JUMPI 00003488: POP 00003489: PUSH2 0x0d92 0000348c: DUP3 0000348d: PUSH2 0x2b3c 00003490: JUMP 00003491: JUMPDEST 00003492: PUSH1 0x80 00003494: ADD 00003495: MLOAD 00003496: PUSH1 0x18 00003498: SHL 00003499: PUSH1 0xd8 0000349b: SHR 0000349c: SWAP1 0000349d: JUMP 0000349e: JUMPDEST 0000349f: PUSH2 0x34a6 000034a2: PUSH2 0x3a74 000034a5: JUMP 000034a6: JUMPDEST 000034a7: PUSH1 0x00 000034a9: DUP1 000034aa: PUSH1 0xb8 000034ac: DUP5 000034ad: PUSH1 0x80 000034af: ADD 000034b0: MLOAD 000034b1: SWAP1 000034b2: SHL 000034b3: PUSH1 0x01 000034b5: PUSH1 0x01 000034b7: PUSH1 0xf8 000034b9: SHL 000034ba: SUB 000034bb: NOT 000034bc: AND 000034bd: PUSH1 0x01 000034bf: PUSH1 0xf8 000034c1: SHL 000034c2: EQ 000034c3: ISZERO 000034c4: PUSH2 0x34dc 000034c7: JUMPI 000034c8: POP 000034c9: POP 000034ca: PUSH1 0x80 000034cc: DUP3 000034cd: ADD 000034ce: MLOAD 000034cf: PUSH1 0x01 000034d1: SWAP1 000034d2: PUSH1 0xc0 000034d4: SHL 000034d5: PUSH1 0xf0 000034d7: SHR 000034d8: PUSH2 0x34e3 000034db: JUMP 000034dc: JUMPDEST 000034dd: POP 000034de: PUSH1 0x00 000034e0: SWAP1 000034e1: POP 000034e2: DUP1 000034e3: JUMPDEST 000034e4: PUSH1 0x40 000034e6: MLOAD 000034e7: DUP1 000034e8: PUSH1 0x60 000034ea: ADD 000034eb: PUSH1 0x40 000034ed: MSTORE 000034ee: DUP1 000034ef: DUP4 000034f0: PUSH1 0x01 000034f2: DUP2 000034f3: GT 000034f4: ISZERO 000034f5: PUSH2 0x34fa 000034f8: JUMPI 000034f9: INVALID 000034fa: JUMPDEST 000034fb: DUP2 000034fc: MSTORE 000034fd: PUSH2 0xffff 00003500: SWAP1 00003501: SWAP3 00003502: AND 00003503: PUSH1 0x20 00003505: DUP4 00003506: ADD 00003507: MSTORE 00003508: SWAP4 00003509: MLOAD 0000350a: PUSH1 0x01 0000350c: PUSH1 0x01 0000350e: PUSH1 0xa0 00003510: SHL 00003511: SUB 00003512: AND 00003513: PUSH1 0x40 00003515: SWAP1 00003516: SWAP2 00003517: ADD 00003518: MSTORE 00003519: POP 0000351a: SWAP1 0000351b: SWAP2 0000351c: SWAP1 0000351d: POP 0000351e: JUMP 0000351f: JUMPDEST 00003520: PUSH1 0x01 00003522: DUP2 00003523: MLOAD 00003524: PUSH1 0x01 00003526: DUP2 00003527: GT 00003528: ISZERO 00003529: PUSH2 0x352e 0000352c: JUMPI 0000352d: INVALID 0000352e: JUMPDEST 0000352f: EQ 00003530: ISZERO 00003531: PUSH2 0x174d 00003534: JUMPI 00003535: PUSH2 0x174d 00003538: DUP3 00003539: DUP3 0000353a: PUSH1 0x20 0000353c: ADD 0000353d: MLOAD 0000353e: DUP4 0000353f: PUSH1 0x40 00003541: ADD 00003542: MLOAD 00003543: PUSH2 0x380f 00003546: JUMP 00003547: JUMPDEST 00003548: PUSH1 0x00 0000354a: PUSH2 0x0933 0000354d: DUP4 0000354e: PUSH1 0x40 00003550: ADD 00003551: MLOAD 00003552: DUP5 00003553: PUSH1 0x20 00003555: ADD 00003556: MLOAD 00003557: DUP5 00003558: PUSH2 0x3873 0000355b: JUMP 0000355c: JUMPDEST 0000355d: PUSH1 0x80 0000355f: DUP2 00003560: ADD 00003561: MLOAD 00003562: PUSH1 0x00 00003564: SWAP1 00003565: PUSH1 0x60 00003567: SHL 00003568: PUSH1 0xf0 0000356a: SHR 0000356b: PUSH2 0x0933 0000356e: DUP2 0000356f: PUSH2 0x3576 00003572: PUSH2 0x2950 00003575: JUMP 00003576: JUMPDEST 00003577: PUSH2 0x38b3 0000357a: JUMP 0000357b: JUMPDEST 0000357c: PUSH1 0x80 0000357e: ADD 0000357f: MLOAD 00003580: PUSH1 0x40 00003582: SHL 00003583: PUSH1 0xf0 00003585: SHR 00003586: SWAP1 00003587: JUMP 00003588: JUMPDEST 00003589: PUSH2 0x3593 0000358c: DUP6 0000358d: DUP5 0000358e: DUP7 0000358f: PUSH2 0x38c9 00003592: JUMP 00003593: JUMPDEST 00003594: PUSH2 0x359e 00003597: DUP6 00003598: DUP4 00003599: DUP7 0000359a: PUSH2 0x38c9 0000359d: JUMP 0000359e: JUMPDEST 0000359f: PUSH1 0x00 000035a1: PUSH2 0x35b0 000035a4: DUP5 000035a5: DUP8 000035a6: PUSH4 0xffffffff 000035ab: PUSH2 0x256d 000035ae: AND 000035af: JUMP 000035b0: JUMPDEST 000035b1: SWAP1 000035b2: POP 000035b3: PUSH1 0x00 000035b5: PUSH2 0x35c4 000035b8: DUP5 000035b9: DUP9 000035ba: PUSH4 0xffffffff 000035bf: PUSH2 0x256d 000035c2: AND 000035c3: JUMP 000035c4: JUMPDEST 000035c5: PUSH1 0x01 000035c7: PUSH1 0x01 000035c9: PUSH1 0xa0 000035cb: SHL 000035cc: SUB 000035cd: DUP8 000035ce: AND 000035cf: PUSH1 0x00 000035d1: SWAP1 000035d2: DUP2 000035d3: MSTORE 000035d4: PUSH1 0x20 000035d6: DUP5 000035d7: SWAP1 000035d8: MSTORE 000035d9: PUSH1 0x40 000035db: SWAP1 000035dc: KECCAK256 000035dd: SLOAD 000035de: SWAP1 000035df: SWAP2 000035e0: POP 000035e1: DUP4 000035e2: GT 000035e3: ISZERO 000035e4: PUSH2 0x3602 000035e7: JUMPI 000035e8: PUSH1 0x40 000035ea: MLOAD 000035eb: PUSH1 0x01 000035ed: PUSH1 0xe5 000035ef: SHL 000035f0: PUSH3 0x461bcd 000035f4: MUL 000035f5: DUP2 000035f6: MSTORE 000035f7: PUSH1 0x04 000035f9: ADD 000035fa: PUSH2 0x0be3 000035fd: SWAP1 000035fe: PUSH2 0x56b5 00003601: JUMP 00003602: JUMPDEST 00003603: PUSH1 0x01 00003605: PUSH1 0x01 00003607: PUSH1 0xa0 00003609: SHL 0000360a: SUB 0000360b: DUP7 0000360c: AND 0000360d: PUSH1 0x00 0000360f: SWAP1 00003610: DUP2 00003611: MSTORE 00003612: PUSH1 0x20 00003614: DUP4 00003615: DUP2 00003616: MSTORE 00003617: PUSH1 0x40 00003619: DUP1 0000361a: DUP4 0000361b: KECCAK256 0000361c: DUP1 0000361d: SLOAD 0000361e: DUP8 0000361f: SWAP1 00003620: SUB 00003621: SWAP1 00003622: SSTORE 00003623: SWAP1 00003624: DUP4 00003625: SWAP1 00003626: MSTORE 00003627: SWAP1 00003628: KECCAK256 00003629: SLOAD 0000362a: PUSH2 0x3639 0000362d: SWAP1 0000362e: DUP5 0000362f: PUSH4 0xffffffff 00003634: PUSH2 0x25db 00003637: AND 00003638: JUMP 00003639: JUMPDEST 0000363a: PUSH1 0x01 0000363c: PUSH1 0x01 0000363e: PUSH1 0xa0 00003640: SHL 00003641: SUB 00003642: SWAP1 00003643: SWAP7 00003644: AND 00003645: PUSH1 0x00 00003647: SWAP1 00003648: DUP2 00003649: MSTORE 0000364a: PUSH1 0x20 0000364c: SWAP2 0000364d: SWAP1 0000364e: SWAP2 0000364f: MSTORE 00003650: PUSH1 0x40 00003652: SWAP1 00003653: KECCAK256 00003654: SWAP5 00003655: SWAP1 00003656: SWAP5 00003657: SSTORE 00003658: POP 00003659: POP 0000365a: POP 0000365b: POP 0000365c: POP 0000365d: JUMP 0000365e: JUMPDEST 0000365f: PUSH1 0x01 00003661: DUP2 00003662: MLOAD 00003663: PUSH1 0x01 00003665: DUP2 00003666: GT 00003667: ISZERO 00003668: PUSH2 0x366d 0000366b: JUMPI 0000366c: INVALID 0000366d: JUMPDEST 0000366e: EQ 0000366f: ISZERO 00003670: PUSH2 0x174d 00003673: JUMPI 00003674: PUSH2 0x174d 00003677: DUP3 00003678: DUP3 00003679: PUSH1 0x40 0000367b: ADD 0000367c: MLOAD 0000367d: DUP4 0000367e: PUSH1 0x20 00003680: ADD 00003681: MLOAD 00003682: PUSH2 0x38fb 00003685: JUMP 00003686: JUMPDEST 00003687: PUSH32 0x6bf96fcc2cec9e08b082506ebbc10114578a497ff1ea436628ba8996b750677c 000036a8: DUP2 000036a9: DUP4 000036aa: PUSH1 0x00 000036ac: ADD 000036ad: MLOAD 000036ae: DUP5 000036af: PUSH1 0x20 000036b1: ADD 000036b2: MLOAD 000036b3: DUP6 000036b4: PUSH1 0x40 000036b6: ADD 000036b7: MLOAD 000036b8: DUP7 000036b9: PUSH1 0x60 000036bb: ADD 000036bc: MLOAD 000036bd: DUP8 000036be: PUSH1 0x80 000036c0: ADD 000036c1: MLOAD 000036c2: DUP9 000036c3: PUSH1 0xa0 000036c5: ADD 000036c6: MLOAD 000036c7: DUP10 000036c8: PUSH1 0xc0 000036ca: ADD 000036cb: MLOAD 000036cc: DUP11 000036cd: PUSH1 0xe0 000036cf: ADD 000036d0: MLOAD 000036d1: DUP12 000036d2: PUSH2 0x0100 000036d5: ADD 000036d6: MLOAD 000036d7: DUP13 000036d8: PUSH2 0x0120 000036db: ADD 000036dc: MLOAD 000036dd: PUSH1 0x40 000036df: MLOAD 000036e0: PUSH2 0x36f3 000036e3: SWAP12 000036e4: SWAP11 000036e5: SWAP10 000036e6: SWAP9 000036e7: SWAP8 000036e8: SWAP7 000036e9: SWAP6 000036ea: SWAP5 000036eb: SWAP4 000036ec: SWAP3 000036ed: SWAP2 000036ee: SWAP1 000036ef: PUSH2 0x57ee 000036f2: JUMP 000036f3: JUMPDEST 000036f4: PUSH1 0x40 000036f6: MLOAD 000036f7: DUP1 000036f8: SWAP2 000036f9: SUB 000036fa: SWAP1 000036fb: LOG1 000036fc: POP 000036fd: POP 000036fe: JUMP 000036ff: JUMPDEST 00003700: PUSH1 0x00 00003702: DUP1 00003703: PUSH1 0x40 00003705: MLOAD 00003706: PUSH1 0x20 00003708: ADD 00003709: PUSH2 0x3711 0000370c: SWAP1 0000370d: PUSH2 0x54e4 00003710: JUMP 00003711: JUMPDEST 00003712: PUSH1 0x40 00003714: DUP1 00003715: MLOAD 00003716: PUSH1 0x1f 00003718: NOT 00003719: DUP2 0000371a: DUP5 0000371b: SUB 0000371c: DUP2 0000371d: ADD 0000371e: DUP3 0000371f: MSTORE 00003720: SWAP3 00003721: SWAP1 00003722: SWAP2 00003723: MSTORE 00003724: DUP1 00003725: MLOAD 00003726: PUSH1 0x20 00003728: SWAP1 00003729: SWAP2 0000372a: ADD 0000372b: KECCAK256 0000372c: SWAP4 0000372d: ADD 0000372e: DUP1 0000372f: MLOAD 00003730: SWAP4 00003731: DUP2 00003732: MSTORE 00003733: PUSH2 0x0120 00003736: DUP2 00003737: KECCAK256 00003738: SWAP4 00003739: SWAP1 0000373a: MSTORE 0000373b: POP 0000373c: SWAP1 0000373d: SWAP2 0000373e: SWAP1 0000373f: POP 00003740: JUMP 00003741: JUMPDEST 00003742: PUSH1 0x00 00003744: PUSH1 0x40 00003746: MLOAD 00003747: PUSH1 0x20 00003749: ADD 0000374a: PUSH2 0x3752 0000374d: SWAP1 0000374e: PUSH2 0x54ef 00003751: JUMP 00003752: JUMPDEST 00003753: PUSH1 0x40 00003755: DUP1 00003756: MLOAD 00003757: PUSH1 0x1f 00003759: NOT 0000375a: DUP2 0000375b: DUP5 0000375c: SUB 0000375d: ADD 0000375e: DUP2 0000375f: MSTORE 00003760: DUP3 00003761: DUP3 00003762: MSTORE 00003763: DUP1 00003764: MLOAD 00003765: PUSH1 0x20 00003767: SWAP2 00003768: DUP3 00003769: ADD 0000376a: KECCAK256 0000376b: DUP4 0000376c: DUP4 0000376d: ADD 0000376e: DUP4 0000376f: MSTORE 00003770: PUSH1 0x0e 00003772: DUP5 00003773: MSTORE 00003774: PUSH32 0x487964726f2050726f746f636f6c000000000000000000000000000000000000 00003795: SWAP4 00003796: DUP3 00003797: ADD 00003798: SWAP4 00003799: SWAP1 0000379a: SWAP4 0000379b: MSTORE 0000379c: SWAP1 0000379d: MLOAD 0000379e: PUSH2 0x37ca 000037a1: SWAP3 000037a2: SWAP2 000037a3: PUSH32 0x7d6bdac60f484714e037e3b01ae95fef6e336481a5d2aed8f7224b14d41b82e2 000037c4: SWAP2 000037c5: ADD 000037c6: PUSH2 0x5487 000037c9: JUMP 000037ca: JUMPDEST 000037cb: PUSH1 0x40 000037cd: MLOAD 000037ce: PUSH1 0x20 000037d0: DUP2 000037d1: DUP4 000037d2: SUB 000037d3: SUB 000037d4: DUP2 000037d5: MSTORE 000037d6: SWAP1 000037d7: PUSH1 0x40 000037d9: MSTORE 000037da: DUP1 000037db: MLOAD 000037dc: SWAP1 000037dd: PUSH1 0x20 000037df: ADD 000037e0: KECCAK256 000037e1: DUP3 000037e2: PUSH1 0x40 000037e4: MLOAD 000037e5: PUSH1 0x20 000037e7: ADD 000037e8: PUSH2 0x37f2 000037eb: SWAP3 000037ec: SWAP2 000037ed: SWAP1 000037ee: PUSH2 0x54cd 000037f1: JUMP 000037f2: JUMPDEST 000037f3: PUSH1 0x40 000037f5: MLOAD 000037f6: PUSH1 0x20 000037f8: DUP2 000037f9: DUP4 000037fa: SUB 000037fb: SUB 000037fc: DUP2 000037fd: MSTORE 000037fe: SWAP1 000037ff: PUSH1 0x40 00003801: MSTORE 00003802: DUP1 00003803: MLOAD 00003804: SWAP1 00003805: PUSH1 0x20 00003807: ADD 00003808: KECCAK256 00003809: SWAP1 0000380a: POP 0000380b: SWAP2 0000380c: SWAP1 0000380d: POP 0000380e: JUMP 0000380f: JUMPDEST 00003810: PUSH1 0x00 00003812: PUSH1 0x01 00003814: PUSH1 0x01 00003816: PUSH1 0xa0 00003818: SHL 00003819: SUB 0000381a: DUP3 0000381b: AND 0000381c: PUSH1 0x00 0000381e: SWAP1 0000381f: DUP2 00003820: MSTORE 00003821: PUSH1 0x03 00003823: DUP6 00003824: ADD 00003825: PUSH1 0x20 00003827: SWAP1 00003828: DUP2 00003829: MSTORE 0000382a: PUSH1 0x40 0000382c: DUP1 0000382d: DUP4 0000382e: KECCAK256 0000382f: PUSH2 0xffff 00003832: DUP8 00003833: AND 00003834: DUP5 00003835: MSTORE 00003836: SWAP1 00003837: SWAP2 00003838: MSTORE 00003839: SWAP1 0000383a: KECCAK256 0000383b: SLOAD 0000383c: PUSH7 0x01000000000000 00003844: SWAP1 00003845: DIV 00003846: PUSH1 0xff 00003848: AND 00003849: PUSH1 0x01 0000384b: DUP2 0000384c: GT 0000384d: ISZERO 0000384e: PUSH2 0x3853 00003851: JUMPI 00003852: INVALID 00003853: JUMPDEST 00003854: EQ 00003855: PUSH2 0x19d3 00003858: JUMPI 00003859: PUSH1 0x40 0000385b: MLOAD 0000385c: PUSH1 0x01 0000385e: PUSH1 0xe5 00003860: SHL 00003861: PUSH3 0x461bcd 00003865: MUL 00003866: DUP2 00003867: MSTORE 00003868: PUSH1 0x04 0000386a: ADD 0000386b: PUSH2 0x0be3 0000386e: SWAP1 0000386f: PUSH2 0x5585 00003872: JUMP 00003873: JUMPDEST 00003874: PUSH1 0x00 00003876: PUSH2 0x3880 00003879: DUP5 0000387a: DUP5 0000387b: DUP5 0000387c: PUSH2 0x3927 0000387f: JUMP 00003880: JUMPDEST 00003881: ISZERO 00003882: PUSH2 0x38a0 00003885: JUMPI 00003886: PUSH1 0x40 00003888: MLOAD 00003889: PUSH1 0x01 0000388b: PUSH1 0xe5 0000388d: SHL 0000388e: PUSH3 0x461bcd 00003892: MUL 00003893: DUP2 00003894: MSTORE 00003895: PUSH1 0x04 00003897: ADD 00003898: PUSH2 0x0be3 0000389b: SWAP1 0000389c: PUSH2 0x5685 0000389f: JUMP 000038a0: JUMPDEST 000038a1: PUSH2 0x0bb4 000038a4: PUSH2 0x38ad 000038a7: DUP6 000038a8: DUP5 000038a9: PUSH2 0x26a5 000038ac: JUMP 000038ad: JUMPDEST 000038ae: DUP5 000038af: PUSH2 0x2873 000038b2: JUMP 000038b3: JUMPDEST 000038b4: PUSH1 0x00 000038b6: DUP2 000038b7: DUP4 000038b8: LT 000038b9: PUSH2 0x38c2 000038bc: JUMPI 000038bd: DUP2 000038be: PUSH2 0x0933 000038c1: JUMP 000038c2: JUMPDEST 000038c3: POP 000038c4: SWAP1 000038c5: SWAP2 000038c6: SWAP1 000038c7: POP 000038c8: JUMP 000038c9: JUMPDEST 000038ca: PUSH1 0x01 000038cc: DUP3 000038cd: MLOAD 000038ce: PUSH1 0x01 000038d0: DUP2 000038d1: GT 000038d2: ISZERO 000038d3: PUSH2 0x38d8 000038d6: JUMPI 000038d7: INVALID 000038d8: JUMPDEST 000038d9: EQ 000038da: ISZERO 000038db: PUSH2 0x19d3 000038de: JUMPI 000038df: PUSH2 0x38ec 000038e2: DUP4 000038e3: DUP4 000038e4: PUSH1 0x20 000038e6: ADD 000038e7: MLOAD 000038e8: PUSH2 0x1751 000038eb: JUMP 000038ec: JUMPDEST 000038ed: PUSH2 0x19d3 000038f0: DUP4 000038f1: DUP4 000038f2: PUSH1 0x20 000038f4: ADD 000038f5: MLOAD 000038f6: DUP4 000038f7: PUSH2 0x1962 000038fa: JUMP 000038fb: JUMPDEST 000038fc: PUSH2 0x3906 000038ff: DUP4 00003900: DUP4 00003901: DUP4 00003902: PUSH2 0x177c 00003905: JUMP 00003906: JUMPDEST 00003907: MLOAD 00003908: ISZERO 00003909: PUSH2 0x19d3 0000390c: JUMPI 0000390d: PUSH1 0x40 0000390f: MLOAD 00003910: PUSH1 0x01 00003912: PUSH1 0xe5 00003914: SHL 00003915: PUSH3 0x461bcd 00003919: MUL 0000391a: DUP2 0000391b: MSTORE 0000391c: PUSH1 0x04 0000391e: ADD 0000391f: PUSH2 0x0be3 00003922: SWAP1 00003923: PUSH2 0x5695 00003926: JUMP 00003927: JUMPDEST 00003928: PUSH1 0x00 0000392a: PUSH2 0x3933 0000392d: DUP5 0000392e: DUP4 0000392f: PUSH2 0x26a5 00003932: JUMP 00003933: JUMPDEST 00003934: PUSH2 0x3951 00003937: PUSH2 0x3949 0000393a: PUSH2 0x3943 0000393d: DUP8 0000393e: DUP7 0000393f: PUSH2 0x26a5 00003942: JUMP 00003943: JUMPDEST 00003944: DUP7 00003945: PUSH2 0x395b 00003948: JUMP 00003949: JUMPDEST 0000394a: PUSH2 0x03e8 0000394d: PUSH2 0x26a5 00003950: JUMP 00003951: JUMPDEST 00003952: LT 00003953: ISZERO 00003954: SWAP5 00003955: SWAP4 00003956: POP 00003957: POP 00003958: POP 00003959: POP 0000395a: JUMP 0000395b: JUMPDEST 0000395c: PUSH1 0x00 0000395e: DUP2 0000395f: PUSH2 0x397d 00003962: JUMPI 00003963: PUSH1 0x40 00003965: MLOAD 00003966: PUSH1 0x01 00003968: PUSH1 0xe5 0000396a: SHL 0000396b: PUSH3 0x461bcd 0000396f: MUL 00003970: DUP2 00003971: MSTORE 00003972: PUSH1 0x04 00003974: ADD 00003975: PUSH2 0x0be3 00003978: SWAP1 00003979: PUSH2 0x57a5 0000397c: JUMP 0000397d: JUMPDEST 0000397e: DUP2 0000397f: DUP4 00003980: DUP2 00003981: PUSH2 0x3986 00003984: JUMPI 00003985: INVALID 00003986: JUMPDEST 00003987: MOD 00003988: SWAP4 00003989: SWAP3 0000398a: POP 0000398b: POP 0000398c: POP 0000398d: JUMP 0000398e: JUMPDEST 0000398f: PUSH1 0x40 00003991: MLOAD 00003992: DUP1 00003993: PUSH1 0xe0 00003995: ADD 00003996: PUSH1 0x40 00003998: MSTORE 00003999: DUP1 0000399a: PUSH1 0x00 0000399c: PUSH1 0x01 0000399e: PUSH1 0x01 000039a0: PUSH1 0xa0 000039a2: SHL 000039a3: SUB 000039a4: AND 000039a5: DUP2 000039a6: MSTORE 000039a7: PUSH1 0x20 000039a9: ADD 000039aa: PUSH1 0x00 000039ac: PUSH1 0x01 000039ae: PUSH1 0x01 000039b0: PUSH1 0xa0 000039b2: SHL 000039b3: SUB 000039b4: AND 000039b5: DUP2 000039b6: MSTORE 000039b7: PUSH1 0x20 000039b9: ADD 000039ba: PUSH1 0x00 000039bc: DUP2 000039bd: MSTORE 000039be: PUSH1 0x20 000039c0: ADD 000039c1: PUSH1 0x00 000039c3: DUP2 000039c4: MSTORE 000039c5: PUSH1 0x20 000039c7: ADD 000039c8: PUSH1 0x00 000039ca: DUP2 000039cb: MSTORE 000039cc: PUSH1 0x20 000039ce: ADD 000039cf: PUSH1 0x00 000039d1: DUP2 000039d2: MSTORE 000039d3: PUSH1 0x20 000039d5: ADD 000039d6: PUSH1 0x00 000039d8: ISZERO 000039d9: ISZERO 000039da: DUP2 000039db: MSTORE 000039dc: POP 000039dd: SWAP1 000039de: JUMP 000039df: JUMPDEST 000039e0: PUSH1 0x40 000039e2: DUP1 000039e3: MLOAD 000039e4: PUSH2 0x0120 000039e7: DUP2 000039e8: ADD 000039e9: DUP3 000039ea: MSTORE 000039eb: PUSH1 0x00 000039ed: DUP1 000039ee: DUP3 000039ef: MSTORE 000039f0: PUSH1 0x20 000039f2: DUP3 000039f3: ADD 000039f4: DUP2 000039f5: SWAP1 000039f6: MSTORE 000039f7: SWAP2 000039f8: DUP2 000039f9: ADD 000039fa: DUP3 000039fb: SWAP1 000039fc: MSTORE 000039fd: PUSH1 0x60 000039ff: DUP2 00003a00: ADD 00003a01: DUP3 00003a02: SWAP1 00003a03: MSTORE 00003a04: PUSH1 0x80 00003a06: DUP2 00003a07: ADD 00003a08: DUP3 00003a09: SWAP1 00003a0a: MSTORE 00003a0b: PUSH1 0xa0 00003a0d: DUP2 00003a0e: ADD 00003a0f: DUP3 00003a10: SWAP1 00003a11: MSTORE 00003a12: PUSH1 0xc0 00003a14: DUP2 00003a15: ADD 00003a16: DUP3 00003a17: SWAP1 00003a18: MSTORE 00003a19: PUSH1 0xe0 00003a1b: DUP2 00003a1c: ADD 00003a1d: DUP3 00003a1e: SWAP1 00003a1f: MSTORE 00003a20: PUSH2 0x0100 00003a23: DUP2 00003a24: ADD 00003a25: SWAP2 00003a26: SWAP1 00003a27: SWAP2 00003a28: MSTORE 00003a29: SWAP1 00003a2a: JUMP 00003a2b: JUMPDEST 00003a2c: PUSH1 0x40 00003a2e: DUP1 00003a2f: MLOAD 00003a30: PUSH1 0x60 00003a32: DUP2 00003a33: ADD 00003a34: DUP3 00003a35: MSTORE 00003a36: PUSH1 0x00 00003a38: DUP1 00003a39: DUP3 00003a3a: MSTORE 00003a3b: PUSH1 0x20 00003a3d: DUP3 00003a3e: ADD 00003a3f: DUP2 00003a40: SWAP1 00003a41: MSTORE 00003a42: SWAP2 00003a43: DUP2 00003a44: ADD 00003a45: SWAP2 00003a46: SWAP1 00003a47: SWAP2 00003a48: MSTORE 00003a49: SWAP1 00003a4a: JUMP 00003a4b: JUMPDEST 00003a4c: PUSH1 0x40 00003a4e: DUP1 00003a4f: MLOAD 00003a50: PUSH1 0x80 00003a52: DUP2 00003a53: ADD 00003a54: SWAP1 00003a55: SWAP2 00003a56: MSTORE 00003a57: PUSH1 0x00 00003a59: DUP1 00003a5a: DUP3 00003a5b: MSTORE 00003a5c: PUSH1 0x20 00003a5e: DUP3 00003a5f: ADD 00003a60: SWAP1 00003a61: DUP2 00003a62: MSTORE 00003a63: PUSH1 0x20 00003a65: ADD 00003a66: PUSH1 0x00 00003a68: DUP2 00003a69: MSTORE 00003a6a: PUSH1 0x20 00003a6c: ADD 00003a6d: PUSH1 0x00 00003a6f: DUP2 00003a70: MSTORE 00003a71: POP 00003a72: SWAP1 00003a73: JUMP 00003a74: JUMPDEST 00003a75: PUSH1 0x40 00003a77: DUP1 00003a78: MLOAD 00003a79: PUSH1 0x60 00003a7b: DUP2 00003a7c: ADD 00003a7d: SWAP1 00003a7e: SWAP2 00003a7f: MSTORE 00003a80: DUP1 00003a81: PUSH1 0x00 00003a83: DUP2 00003a84: MSTORE 00003a85: PUSH1 0x00 00003a87: PUSH1 0x20 00003a89: DUP3 00003a8a: ADD 00003a8b: DUP2 00003a8c: SWAP1 00003a8d: MSTORE 00003a8e: PUSH1 0x40 00003a90: SWAP1 00003a91: SWAP2 00003a92: ADD 00003a93: MSTORE 00003a94: SWAP1 00003a95: JUMP 00003a96: JUMPDEST 00003a97: PUSH1 0x40 00003a99: DUP1 00003a9a: MLOAD 00003a9b: PUSH1 0xa0 00003a9d: DUP2 00003a9e: ADD 00003a9f: DUP3 00003aa0: MSTORE 00003aa1: PUSH1 0x00 00003aa3: DUP1 00003aa4: DUP3 00003aa5: MSTORE 00003aa6: PUSH1 0x20 00003aa8: DUP3 00003aa9: ADD 00003aaa: MSTORE 00003aab: SWAP1 00003aac: DUP2 00003aad: ADD 00003aae: PUSH2 0x3ab5 00003ab1: PUSH2 0x3a74 00003ab4: JUMP 00003ab5: JUMPDEST 00003ab6: SWAP1 00003ab7: MSTORE 00003ab8: SWAP1 00003ab9: JUMP 00003aba: JUMPDEST 00003abb: PUSH1 0x40 00003abd: MLOAD 00003abe: DUP1 00003abf: PUSH2 0x0200 00003ac2: ADD 00003ac3: PUSH1 0x40 00003ac5: MSTORE 00003ac6: DUP1 00003ac7: PUSH1 0x00 00003ac9: PUSH1 0x01 00003acb: PUSH1 0x01 00003acd: PUSH1 0xa0 00003acf: SHL 00003ad0: SUB 00003ad1: AND 00003ad2: DUP2 00003ad3: MSTORE 00003ad4: PUSH1 0x20 00003ad6: ADD 00003ad7: PUSH1 0x00 00003ad9: PUSH1 0x01 00003adb: PUSH1 0x01 00003add: PUSH1 0xa0 00003adf: SHL 00003ae0: SUB 00003ae1: AND 00003ae2: DUP2 00003ae3: MSTORE 00003ae4: PUSH1 0x20 00003ae6: ADD 00003ae7: PUSH1 0x00 00003ae9: PUSH1 0x01 00003aeb: PUSH1 0x01 00003aed: PUSH1 0xa0 00003aef: SHL 00003af0: SUB 00003af1: AND 00003af2: DUP2 00003af3: MSTORE 00003af4: PUSH1 0x20 00003af6: ADD 00003af7: PUSH1 0x00 00003af9: DUP2 00003afa: MSTORE 00003afb: PUSH1 0x20 00003afd: ADD 00003afe: PUSH1 0x00 00003b00: DUP2 00003b01: MSTORE 00003b02: PUSH1 0x20 00003b04: ADD 00003b05: PUSH1 0x00 00003b07: DUP2 00003b08: MSTORE 00003b09: PUSH1 0x20 00003b0b: ADD 00003b0c: PUSH1 0x00 00003b0e: DUP2 00003b0f: MSTORE 00003b10: PUSH1 0x20 00003b12: ADD 00003b13: PUSH1 0x00 00003b15: DUP2 00003b16: MSTORE 00003b17: PUSH1 0x20 00003b19: ADD 00003b1a: PUSH1 0x00 00003b1c: DUP2 00003b1d: MSTORE 00003b1e: PUSH1 0x20 00003b20: ADD 00003b21: PUSH1 0x00 00003b23: DUP2 00003b24: MSTORE 00003b25: PUSH1 0x20 00003b27: ADD 00003b28: PUSH2 0x3b2f 00003b2b: PUSH2 0x3a74 00003b2e: JUMP 00003b2f: JUMPDEST 00003b30: DUP2 00003b31: MSTORE 00003b32: PUSH1 0x20 00003b34: ADD 00003b35: PUSH2 0x3ab5 00003b38: PUSH2 0x3a74 00003b3b: JUMP 00003b3c: JUMPDEST 00003b3d: PUSH1 0x40 00003b3f: DUP1 00003b40: MLOAD 00003b41: PUSH2 0x0100 00003b44: DUP2 00003b45: ADD 00003b46: DUP3 00003b47: MSTORE 00003b48: PUSH1 0x00 00003b4a: DUP1 00003b4b: DUP3 00003b4c: MSTORE 00003b4d: PUSH1 0x20 00003b4f: DUP3 00003b50: ADD 00003b51: DUP2 00003b52: SWAP1 00003b53: MSTORE 00003b54: SWAP2 00003b55: DUP2 00003b56: ADD 00003b57: DUP3 00003b58: SWAP1 00003b59: MSTORE 00003b5a: PUSH1 0x60 00003b5c: DUP2 00003b5d: ADD 00003b5e: DUP3 00003b5f: SWAP1 00003b60: MSTORE 00003b61: PUSH1 0x80 00003b63: DUP2 00003b64: ADD 00003b65: DUP3 00003b66: SWAP1 00003b67: MSTORE 00003b68: PUSH1 0xa0 00003b6a: DUP2 00003b6b: ADD 00003b6c: DUP3 00003b6d: SWAP1 00003b6e: MSTORE 00003b6f: PUSH1 0xc0 00003b71: DUP2 00003b72: ADD 00003b73: DUP3 00003b74: SWAP1 00003b75: MSTORE 00003b76: PUSH1 0xe0 00003b78: DUP2 00003b79: ADD 00003b7a: SWAP2 00003b7b: SWAP1 00003b7c: SWAP2 00003b7d: MSTORE 00003b7e: SWAP1 00003b7f: JUMP 00003b80: JUMPDEST 00003b81: DUP1 00003b82: CALLDATALOAD 00003b83: PUSH2 0x0d92 00003b86: DUP2 00003b87: PUSH2 0x5bfd 00003b8a: JUMP 00003b8b: JUMPDEST 00003b8c: DUP1 00003b8d: MLOAD 00003b8e: PUSH2 0x0d92 00003b91: DUP2 00003b92: PUSH2 0x5bfd 00003b95: JUMP 00003b96: JUMPDEST 00003b97: PUSH1 0x00 00003b99: DUP3 00003b9a: PUSH1 0x1f 00003b9c: DUP4 00003b9d: ADD 00003b9e: SLT 00003b9f: PUSH2 0x3ba7 00003ba2: JUMPI 00003ba3: PUSH1 0x00 00003ba5: DUP1 00003ba6: REVERT 00003ba7: JUMPDEST 00003ba8: DUP2 00003ba9: CALLDATALOAD 00003baa: PUSH2 0x3bba 00003bad: PUSH2 0x3bb5 00003bb0: DUP3 00003bb1: PUSH2 0x5ada 00003bb4: JUMP 00003bb5: JUMPDEST 00003bb6: PUSH2 0x5ab3 00003bb9: JUMP 00003bba: JUMPDEST 00003bbb: DUP2 00003bbc: DUP2 00003bbd: MSTORE 00003bbe: PUSH1 0x20 00003bc0: SWAP4 00003bc1: DUP5 00003bc2: ADD 00003bc3: SWAP4 00003bc4: SWAP1 00003bc5: SWAP3 00003bc6: POP 00003bc7: DUP3 00003bc8: ADD 00003bc9: DUP4 00003bca: PUSH1 0x00 00003bcc: JUMPDEST 00003bcd: DUP4 00003bce: DUP2 00003bcf: LT 00003bd0: ISZERO 00003bd1: PUSH2 0x1e8f 00003bd4: JUMPI 00003bd5: DUP2 00003bd6: CALLDATALOAD 00003bd7: DUP7 00003bd8: ADD 00003bd9: PUSH2 0x3be2 00003bdc: DUP9 00003bdd: DUP3 00003bde: PUSH2 0x3d99 00003be1: JUMP 00003be2: JUMPDEST 00003be3: DUP5 00003be4: MSTORE 00003be5: POP 00003be6: PUSH1 0x20 00003be8: SWAP3 00003be9: DUP4 00003bea: ADD 00003beb: SWAP3 00003bec: SWAP2 00003bed: SWAP1 00003bee: SWAP2 00003bef: ADD 00003bf0: SWAP1 00003bf1: PUSH1 0x01 00003bf3: ADD 00003bf4: PUSH2 0x3bcc 00003bf7: JUMP 00003bf8: JUMPDEST 00003bf9: PUSH1 0x00 00003bfb: DUP3 00003bfc: PUSH1 0x1f 00003bfe: DUP4 00003bff: ADD 00003c00: SLT 00003c01: PUSH2 0x3c09 00003c04: JUMPI 00003c05: PUSH1 0x00 00003c07: DUP1 00003c08: REVERT 00003c09: JUMPDEST 00003c0a: DUP2 00003c0b: CALLDATALOAD 00003c0c: PUSH2 0x3c17 00003c0f: PUSH2 0x3bb5 00003c12: DUP3 00003c13: PUSH2 0x5ada 00003c16: JUMP 00003c17: JUMPDEST 00003c18: SWAP2 00003c19: POP 00003c1a: DUP2 00003c1b: DUP2 00003c1c: DUP4 00003c1d: MSTORE 00003c1e: PUSH1 0x20 00003c20: DUP5 00003c21: ADD 00003c22: SWAP4 00003c23: POP 00003c24: PUSH1 0x20 00003c26: DUP2 00003c27: ADD 00003c28: SWAP1 00003c29: POP 00003c2a: DUP4 00003c2b: DUP6 00003c2c: PUSH2 0x0100 00003c2f: DUP5 00003c30: MUL 00003c31: DUP3 00003c32: ADD 00003c33: GT 00003c34: ISZERO 00003c35: PUSH2 0x3c3d 00003c38: JUMPI 00003c39: PUSH1 0x00 00003c3b: DUP1 00003c3c: REVERT 00003c3d: JUMPDEST 00003c3e: PUSH1 0x00 00003c40: JUMPDEST 00003c41: DUP4 00003c42: DUP2 00003c43: LT 00003c44: ISZERO 00003c45: PUSH2 0x1e8f 00003c48: JUMPI 00003c49: DUP2 00003c4a: PUSH2 0x3c53 00003c4d: DUP9 00003c4e: DUP3 00003c4f: PUSH2 0x4078 00003c52: JUMP 00003c53: JUMPDEST 00003c54: DUP5 00003c55: MSTORE 00003c56: POP 00003c57: PUSH1 0x20 00003c59: SWAP1 00003c5a: SWAP3 00003c5b: ADD 00003c5c: SWAP2 00003c5d: PUSH2 0x0100 00003c60: SWAP2 00003c61: SWAP1 00003c62: SWAP2 00003c63: ADD 00003c64: SWAP1 00003c65: PUSH1 0x01 00003c67: ADD 00003c68: PUSH2 0x3c40 00003c6b: JUMP 00003c6c: JUMPDEST 00003c6d: PUSH1 0x00 00003c6f: DUP3 00003c70: PUSH1 0x1f 00003c72: DUP4 00003c73: ADD 00003c74: SLT 00003c75: PUSH2 0x3c7d 00003c78: JUMPI 00003c79: PUSH1 0x00 00003c7b: DUP1 00003c7c: REVERT 00003c7d: JUMPDEST 00003c7e: DUP2 00003c7f: CALLDATALOAD 00003c80: PUSH2 0x3c8b 00003c83: PUSH2 0x3bb5 00003c86: DUP3 00003c87: PUSH2 0x5ada 00003c8a: JUMP 00003c8b: JUMPDEST 00003c8c: SWAP2 00003c8d: POP 00003c8e: DUP2 00003c8f: DUP2 00003c90: DUP4 00003c91: MSTORE 00003c92: PUSH1 0x20 00003c94: DUP5 00003c95: ADD 00003c96: SWAP4 00003c97: POP 00003c98: PUSH1 0x20 00003c9a: DUP2 00003c9b: ADD 00003c9c: SWAP1 00003c9d: POP 00003c9e: DUP4 00003c9f: DUP6 00003ca0: PUSH1 0x20 00003ca2: DUP5 00003ca3: MUL 00003ca4: DUP3 00003ca5: ADD 00003ca6: GT 00003ca7: ISZERO 00003ca8: PUSH2 0x3cb0 00003cab: JUMPI 00003cac: PUSH1 0x00 00003cae: DUP1 00003caf: REVERT 00003cb0: JUMPDEST 00003cb1: PUSH1 0x00 00003cb3: JUMPDEST 00003cb4: DUP4 00003cb5: DUP2 00003cb6: LT 00003cb7: ISZERO 00003cb8: PUSH2 0x1e8f 00003cbb: JUMPI 00003cbc: DUP2 00003cbd: PUSH2 0x3cc6 00003cc0: DUP9 00003cc1: DUP3 00003cc2: PUSH2 0x3cf2 00003cc5: JUMP 00003cc6: JUMPDEST 00003cc7: DUP5 00003cc8: MSTORE 00003cc9: POP 00003cca: PUSH1 0x20 00003ccc: SWAP3 00003ccd: DUP4 00003cce: ADD 00003ccf: SWAP3 00003cd0: SWAP2 00003cd1: SWAP1 00003cd2: SWAP2 00003cd3: ADD 00003cd4: SWAP1 00003cd5: PUSH1 0x01 00003cd7: ADD 00003cd8: PUSH2 0x3cb3 00003cdb: JUMP 00003cdc: JUMPDEST 00003cdd: DUP1 00003cde: CALLDATALOAD 00003cdf: PUSH2 0x0d92 00003ce2: DUP2 00003ce3: PUSH2 0x5c11 00003ce6: JUMP 00003ce7: JUMPDEST 00003ce8: DUP1 00003ce9: MLOAD 00003cea: PUSH2 0x0d92 00003ced: DUP2 00003cee: PUSH2 0x5c11 00003cf1: JUMP 00003cf2: JUMPDEST 00003cf3: DUP1 00003cf4: CALLDATALOAD 00003cf5: PUSH2 0x0d92 00003cf8: DUP2 00003cf9: PUSH2 0x5c1a 00003cfc: JUMP 00003cfd: JUMPDEST 00003cfe: PUSH1 0x00 00003d00: DUP3 00003d01: PUSH1 0x1f 00003d03: DUP4 00003d04: ADD 00003d05: SLT 00003d06: PUSH2 0x3d0e 00003d09: JUMPI 00003d0a: PUSH1 0x00 00003d0c: DUP1 00003d0d: REVERT 00003d0e: JUMPDEST 00003d0f: DUP2 00003d10: CALLDATALOAD 00003d11: PUSH2 0x3d1c 00003d14: PUSH2 0x3bb5 00003d17: DUP3 00003d18: PUSH2 0x5afb 00003d1b: JUMP 00003d1c: JUMPDEST 00003d1d: SWAP2 00003d1e: POP 00003d1f: DUP1 00003d20: DUP3 00003d21: MSTORE 00003d22: PUSH1 0x20 00003d24: DUP4 00003d25: ADD 00003d26: PUSH1 0x20 00003d28: DUP4 00003d29: ADD 00003d2a: DUP6 00003d2b: DUP4 00003d2c: DUP4 00003d2d: ADD 00003d2e: GT 00003d2f: ISZERO 00003d30: PUSH2 0x3d38 00003d33: JUMPI 00003d34: PUSH1 0x00 00003d36: DUP1 00003d37: REVERT 00003d38: JUMPDEST 00003d39: PUSH2 0x3d43 00003d3c: DUP4 00003d3d: DUP3 00003d3e: DUP5 00003d3f: PUSH2 0x5ba7 00003d42: JUMP 00003d43: JUMPDEST 00003d44: POP 00003d45: POP 00003d46: POP 00003d47: SWAP3 00003d48: SWAP2 00003d49: POP 00003d4a: POP 00003d4b: JUMP 00003d4c: JUMPDEST 00003d4d: DUP1 00003d4e: CALLDATALOAD 00003d4f: PUSH2 0x0d92 00003d52: DUP2 00003d53: PUSH2 0x5c23 00003d56: JUMP 00003d57: JUMPDEST 00003d58: PUSH1 0x00 00003d5a: DUP1 00003d5b: DUP4 00003d5c: PUSH1 0x1f 00003d5e: DUP5 00003d5f: ADD 00003d60: SLT 00003d61: PUSH2 0x3d69 00003d64: JUMPI 00003d65: PUSH1 0x00 00003d67: DUP1 00003d68: REVERT 00003d69: JUMPDEST 00003d6a: POP 00003d6b: DUP2 00003d6c: CALLDATALOAD 00003d6d: PUSH8 0xffffffffffffffff 00003d76: DUP2 00003d77: GT 00003d78: ISZERO 00003d79: PUSH2 0x3d81 00003d7c: JUMPI 00003d7d: PUSH1 0x00 00003d7f: DUP1 00003d80: REVERT 00003d81: JUMPDEST 00003d82: PUSH1 0x20 00003d84: DUP4 00003d85: ADD 00003d86: SWAP2 00003d87: POP 00003d88: DUP4 00003d89: PUSH1 0x01 00003d8b: DUP3 00003d8c: MUL 00003d8d: DUP4 00003d8e: ADD 00003d8f: GT 00003d90: ISZERO 00003d91: PUSH2 0x2442 00003d94: JUMPI 00003d95: PUSH1 0x00 00003d97: DUP1 00003d98: REVERT 00003d99: JUMPDEST 00003d9a: PUSH1 0x00 00003d9c: PUSH1 0x40 00003d9e: DUP3 00003d9f: DUP5 00003da0: SUB 00003da1: SLT 00003da2: ISZERO 00003da3: PUSH2 0x3dab 00003da6: JUMPI 00003da7: PUSH1 0x00 00003da9: DUP1 00003daa: REVERT 00003dab: JUMPDEST 00003dac: PUSH2 0x3db5 00003daf: PUSH1 0x40 00003db1: PUSH2 0x5ab3 00003db4: JUMP 00003db5: JUMPDEST 00003db6: SWAP1 00003db7: POP 00003db8: PUSH1 0x00 00003dba: PUSH2 0x3dc3 00003dbd: DUP5 00003dbe: DUP5 00003dbf: PUSH2 0x3d4c 00003dc2: JUMP 00003dc3: JUMPDEST 00003dc4: DUP3 00003dc5: MSTORE 00003dc6: POP 00003dc7: PUSH1 0x20 00003dc9: DUP3 00003dca: ADD 00003dcb: CALLDATALOAD 00003dcc: PUSH8 0xffffffffffffffff 00003dd5: DUP2 00003dd6: GT 00003dd7: ISZERO 00003dd8: PUSH2 0x3de0 00003ddb: JUMPI 00003ddc: PUSH1 0x00 00003dde: DUP1 00003ddf: REVERT 00003de0: JUMPDEST 00003de1: PUSH2 0x3dec 00003de4: DUP5 00003de5: DUP3 00003de6: DUP6 00003de7: ADD 00003de8: PUSH2 0x3cfd 00003deb: JUMP 00003dec: JUMPDEST 00003ded: PUSH1 0x20 00003def: DUP4 00003df0: ADD 00003df1: MSTORE 00003df2: POP 00003df3: SWAP3 00003df4: SWAP2 00003df5: POP 00003df6: POP 00003df7: JUMP 00003df8: JUMPDEST 00003df9: PUSH1 0x00 00003dfb: PUSH2 0x0120 00003dfe: DUP3 00003dff: DUP5 00003e00: SUB 00003e01: SLT 00003e02: ISZERO 00003e03: PUSH2 0x3e0b 00003e06: JUMPI 00003e07: PUSH1 0x00 00003e09: DUP1 00003e0a: REVERT 00003e0b: JUMPDEST 00003e0c: PUSH2 0x3e16 00003e0f: PUSH2 0x0120 00003e12: PUSH2 0x5ab3 00003e15: JUMP 00003e16: JUMPDEST 00003e17: SWAP1 00003e18: POP 00003e19: PUSH1 0x00 00003e1b: PUSH2 0x3e24 00003e1e: DUP5 00003e1f: DUP5 00003e20: PUSH2 0x3b8b 00003e23: JUMP 00003e24: JUMPDEST 00003e25: DUP3 00003e26: MSTORE 00003e27: POP 00003e28: PUSH1 0x20 00003e2a: PUSH2 0x3e35 00003e2d: DUP5 00003e2e: DUP5 00003e2f: DUP4 00003e30: ADD 00003e31: PUSH2 0x4256 00003e34: JUMP 00003e35: JUMPDEST 00003e36: PUSH1 0x20 00003e38: DUP4 00003e39: ADD 00003e3a: MSTORE 00003e3b: POP 00003e3c: PUSH1 0x40 00003e3e: PUSH2 0x3e49 00003e41: DUP5 00003e42: DUP3 00003e43: DUP6 00003e44: ADD 00003e45: PUSH2 0x3b8b 00003e48: JUMP 00003e49: JUMPDEST 00003e4a: PUSH1 0x40 00003e4c: DUP4 00003e4d: ADD 00003e4e: MSTORE 00003e4f: POP 00003e50: PUSH1 0x60 00003e52: PUSH2 0x3e5d 00003e55: DUP5 00003e56: DUP3 00003e57: DUP6 00003e58: ADD 00003e59: PUSH2 0x3b8b 00003e5c: JUMP 00003e5d: JUMPDEST 00003e5e: PUSH1 0x60 00003e60: DUP4 00003e61: ADD 00003e62: MSTORE 00003e63: POP 00003e64: PUSH1 0x80 00003e66: PUSH2 0x3e71 00003e69: DUP5 00003e6a: DUP3 00003e6b: DUP6 00003e6c: ADD 00003e6d: PUSH2 0x4261 00003e70: JUMP 00003e71: JUMPDEST 00003e72: PUSH1 0x80 00003e74: DUP4 00003e75: ADD 00003e76: MSTORE 00003e77: POP 00003e78: PUSH1 0xa0 00003e7a: PUSH2 0x3e85 00003e7d: DUP5 00003e7e: DUP3 00003e7f: DUP6 00003e80: ADD 00003e81: PUSH2 0x4261 00003e84: JUMP 00003e85: JUMPDEST 00003e86: PUSH1 0xa0 00003e88: DUP4 00003e89: ADD 00003e8a: MSTORE 00003e8b: POP 00003e8c: PUSH1 0xc0 00003e8e: PUSH2 0x3e99 00003e91: DUP5 00003e92: DUP3 00003e93: DUP6 00003e94: ADD 00003e95: PUSH2 0x4261 00003e98: JUMP 00003e99: JUMPDEST 00003e9a: PUSH1 0xc0 00003e9c: DUP4 00003e9d: ADD 00003e9e: MSTORE 00003e9f: POP 00003ea0: PUSH1 0xe0 00003ea2: PUSH2 0x3ead 00003ea5: DUP5 00003ea6: DUP3 00003ea7: DUP6 00003ea8: ADD 00003ea9: PUSH2 0x4261 00003eac: JUMP 00003ead: JUMPDEST 00003eae: PUSH1 0xe0 00003eb0: DUP4 00003eb1: ADD 00003eb2: MSTORE 00003eb3: POP 00003eb4: PUSH2 0x0100 00003eb7: PUSH2 0x3ec2 00003eba: DUP5 00003ebb: DUP3 00003ebc: DUP6 00003ebd: ADD 00003ebe: PUSH2 0x3ce7 00003ec1: JUMP 00003ec2: JUMPDEST 00003ec3: PUSH2 0x0100 00003ec6: DUP4 00003ec7: ADD 00003ec8: MSTORE 00003ec9: POP 00003eca: SWAP3 00003ecb: SWAP2 00003ecc: POP 00003ecd: POP 00003ece: JUMP 00003ecf: JUMPDEST 00003ed0: PUSH1 0x00 00003ed2: PUSH1 0xe0 00003ed4: DUP3 00003ed5: DUP5 00003ed6: SUB 00003ed7: SLT 00003ed8: ISZERO 00003ed9: PUSH2 0x3ee1 00003edc: JUMPI 00003edd: PUSH1 0x00 00003edf: DUP1 00003ee0: REVERT 00003ee1: JUMPDEST 00003ee2: PUSH2 0x3eeb 00003ee5: PUSH1 0xe0 00003ee7: PUSH2 0x5ab3 00003eea: JUMP 00003eeb: JUMPDEST 00003eec: SWAP1 00003eed: POP 00003eee: PUSH1 0x00 00003ef0: PUSH2 0x3ef9 00003ef3: DUP5 00003ef4: DUP5 00003ef5: PUSH2 0x3b80 00003ef8: JUMP 00003ef9: JUMPDEST 00003efa: DUP3 00003efb: MSTORE 00003efc: POP 00003efd: PUSH1 0x20 00003eff: PUSH2 0x3f0a 00003f02: DUP5 00003f03: DUP5 00003f04: DUP4 00003f05: ADD 00003f06: PUSH2 0x3b80 00003f09: JUMP 00003f0a: JUMPDEST 00003f0b: PUSH1 0x20 00003f0d: DUP4 00003f0e: ADD 00003f0f: MSTORE 00003f10: POP 00003f11: PUSH1 0x40 00003f13: PUSH2 0x3f1e 00003f16: DUP5 00003f17: DUP3 00003f18: DUP6 00003f19: ADD 00003f1a: PUSH2 0x3cf2 00003f1d: JUMP 00003f1e: JUMPDEST 00003f1f: PUSH1 0x40 00003f21: DUP4 00003f22: ADD 00003f23: MSTORE 00003f24: POP 00003f25: PUSH1 0x60 00003f27: PUSH2 0x3f32 00003f2a: DUP5 00003f2b: DUP3 00003f2c: DUP6 00003f2d: ADD 00003f2e: PUSH2 0x3cf2 00003f31: JUMP 00003f32: JUMPDEST 00003f33: PUSH1 0x60 00003f35: DUP4 00003f36: ADD 00003f37: MSTORE 00003f38: POP 00003f39: PUSH1 0x80 00003f3b: PUSH2 0x3f46 00003f3e: DUP5 00003f3f: DUP3 00003f40: DUP6 00003f41: ADD 00003f42: PUSH2 0x3cf2 00003f45: JUMP 00003f46: JUMPDEST 00003f47: PUSH1 0x80 00003f49: DUP4 00003f4a: ADD 00003f4b: MSTORE 00003f4c: POP 00003f4d: PUSH1 0xa0 00003f4f: PUSH2 0x3f5a 00003f52: DUP5 00003f53: DUP3 00003f54: DUP6 00003f55: ADD 00003f56: PUSH2 0x3cf2 00003f59: JUMP 00003f5a: JUMPDEST 00003f5b: PUSH1 0xa0 00003f5d: DUP4 00003f5e: ADD 00003f5f: MSTORE 00003f60: POP 00003f61: PUSH1 0xc0 00003f63: PUSH2 0x3f6e 00003f66: DUP5 00003f67: DUP3 00003f68: DUP6 00003f69: ADD 00003f6a: PUSH2 0x3cdc 00003f6d: JUMP 00003f6e: JUMPDEST 00003f6f: PUSH1 0xc0 00003f71: DUP4 00003f72: ADD 00003f73: MSTORE 00003f74: POP 00003f75: SWAP3 00003f76: SWAP2 00003f77: POP 00003f78: POP 00003f79: JUMP 00003f7a: JUMPDEST 00003f7b: PUSH1 0x00 00003f7d: PUSH2 0x01a0 00003f80: DUP3 00003f81: DUP5 00003f82: SUB 00003f83: SLT 00003f84: ISZERO 00003f85: PUSH2 0x3f8d 00003f88: JUMPI 00003f89: PUSH1 0x00 00003f8b: DUP1 00003f8c: REVERT 00003f8d: JUMPDEST 00003f8e: PUSH2 0x3f97 00003f91: PUSH1 0x80 00003f93: PUSH2 0x5ab3 00003f96: JUMP 00003f97: JUMPDEST 00003f98: SWAP1 00003f99: POP 00003f9a: PUSH1 0x00 00003f9c: PUSH2 0x3fa5 00003f9f: DUP5 00003fa0: DUP5 00003fa1: PUSH2 0x4078 00003fa4: JUMP 00003fa5: JUMPDEST 00003fa6: DUP3 00003fa7: MSTORE 00003fa8: POP 00003fa9: PUSH2 0x0100 00003fac: DUP3 00003fad: ADD 00003fae: CALLDATALOAD 00003faf: PUSH8 0xffffffffffffffff 00003fb8: DUP2 00003fb9: GT 00003fba: ISZERO 00003fbb: PUSH2 0x3fc3 00003fbe: JUMPI 00003fbf: PUSH1 0x00 00003fc1: DUP1 00003fc2: REVERT 00003fc3: JUMPDEST 00003fc4: PUSH2 0x3fcf 00003fc7: DUP5 00003fc8: DUP3 00003fc9: DUP6 00003fca: ADD 00003fcb: PUSH2 0x3bf8 00003fce: JUMP 00003fcf: JUMPDEST 00003fd0: PUSH1 0x20 00003fd2: DUP4 00003fd3: ADD 00003fd4: MSTORE 00003fd5: POP 00003fd6: PUSH2 0x0120 00003fd9: DUP3 00003fda: ADD 00003fdb: CALLDATALOAD 00003fdc: PUSH8 0xffffffffffffffff 00003fe5: DUP2 00003fe6: GT 00003fe7: ISZERO 00003fe8: PUSH2 0x3ff0 00003feb: JUMPI 00003fec: PUSH1 0x00 00003fee: DUP1 00003fef: REVERT 00003ff0: JUMPDEST 00003ff1: PUSH2 0x3ffc 00003ff4: DUP5 00003ff5: DUP3 00003ff6: DUP6 00003ff7: ADD 00003ff8: PUSH2 0x3c6c 00003ffb: JUMP 00003ffc: JUMPDEST 00003ffd: PUSH1 0x40 00003fff: DUP4 00004000: ADD 00004001: MSTORE 00004002: POP 00004003: PUSH2 0x0140 00004006: PUSH2 0x4011 00004009: DUP5 0000400a: DUP3 0000400b: DUP6 0000400c: ADD 0000400d: PUSH2 0x401d 00004010: JUMP 00004011: JUMPDEST 00004012: PUSH1 0x60 00004014: DUP4 00004015: ADD 00004016: MSTORE 00004017: POP 00004018: SWAP3 00004019: SWAP2 0000401a: POP 0000401b: POP 0000401c: JUMP 0000401d: JUMPDEST 0000401e: PUSH1 0x00 00004020: PUSH1 0x60 00004022: DUP3 00004023: DUP5 00004024: SUB 00004025: SLT 00004026: ISZERO 00004027: PUSH2 0x402f 0000402a: JUMPI 0000402b: PUSH1 0x00 0000402d: DUP1 0000402e: REVERT 0000402f: JUMPDEST 00004030: PUSH2 0x4039 00004033: PUSH1 0x60 00004035: PUSH2 0x5ab3 00004038: JUMP 00004039: JUMPDEST 0000403a: SWAP1 0000403b: POP 0000403c: PUSH1 0x00 0000403e: PUSH2 0x4047 00004041: DUP5 00004042: DUP5 00004043: PUSH2 0x3b80 00004046: JUMP 00004047: JUMPDEST 00004048: DUP3 00004049: MSTORE 0000404a: POP 0000404b: PUSH1 0x20 0000404d: PUSH2 0x4058 00004050: DUP5 00004051: DUP5 00004052: DUP4 00004053: ADD 00004054: PUSH2 0x3b80 00004057: JUMP 00004058: JUMPDEST 00004059: PUSH1 0x20 0000405b: DUP4 0000405c: ADD 0000405d: MSTORE 0000405e: POP 0000405f: PUSH1 0x40 00004061: PUSH2 0x406c 00004064: DUP5 00004065: DUP3 00004066: DUP6 00004067: ADD 00004068: PUSH2 0x3b80 0000406b: JUMP 0000406c: JUMPDEST 0000406d: PUSH1 0x40 0000406f: DUP4 00004070: ADD 00004071: MSTORE 00004072: POP 00004073: SWAP3 00004074: SWAP2 00004075: POP 00004076: POP 00004077: JUMP 00004078: JUMPDEST 00004079: PUSH1 0x00 0000407b: PUSH2 0x0100 0000407e: DUP3 0000407f: DUP5 00004080: SUB 00004081: SLT 00004082: ISZERO 00004083: PUSH2 0x408b 00004086: JUMPI 00004087: PUSH1 0x00 00004089: DUP1 0000408a: REVERT 0000408b: JUMPDEST 0000408c: PUSH2 0x4095 0000408f: PUSH1 0xc0 00004091: PUSH2 0x5ab3 00004094: JUMP 00004095: JUMPDEST 00004096: SWAP1 00004097: POP 00004098: PUSH1 0x00 0000409a: PUSH2 0x40a3 0000409d: DUP5 0000409e: DUP5 0000409f: PUSH2 0x3b80 000040a2: JUMP 000040a3: JUMPDEST 000040a4: DUP3 000040a5: MSTORE 000040a6: POP 000040a7: PUSH1 0x20 000040a9: PUSH2 0x40b4 000040ac: DUP5 000040ad: DUP5 000040ae: DUP4 000040af: ADD 000040b0: PUSH2 0x3cf2 000040b3: JUMP 000040b4: JUMPDEST 000040b5: PUSH1 0x20 000040b7: DUP4 000040b8: ADD 000040b9: MSTORE 000040ba: POP 000040bb: PUSH1 0x40 000040bd: PUSH2 0x40c8 000040c0: DUP5 000040c1: DUP3 000040c2: DUP6 000040c3: ADD 000040c4: PUSH2 0x3cf2 000040c7: JUMP 000040c8: JUMPDEST 000040c9: PUSH1 0x40 000040cb: DUP4 000040cc: ADD 000040cd: MSTORE 000040ce: POP 000040cf: PUSH1 0x60 000040d1: PUSH2 0x40dc 000040d4: DUP5 000040d5: DUP3 000040d6: DUP6 000040d7: ADD 000040d8: PUSH2 0x3cf2 000040db: JUMP 000040dc: JUMPDEST 000040dd: PUSH1 0x60 000040df: DUP4 000040e0: ADD 000040e1: MSTORE 000040e2: POP 000040e3: PUSH1 0x80 000040e5: PUSH2 0x40f0 000040e8: DUP5 000040e9: DUP3 000040ea: DUP6 000040eb: ADD 000040ec: PUSH2 0x3cf2 000040ef: JUMP 000040f0: JUMPDEST 000040f1: PUSH1 0x80 000040f3: DUP4 000040f4: ADD 000040f5: MSTORE 000040f6: POP 000040f7: PUSH1 0xa0 000040f9: PUSH2 0x4104 000040fc: DUP5 000040fd: DUP3 000040fe: DUP6 000040ff: ADD 00004100: PUSH2 0x41fc 00004103: JUMP 00004104: JUMPDEST 00004105: PUSH1 0xa0 00004107: DUP4 00004108: ADD 00004109: MSTORE 0000410a: POP 0000410b: SWAP3 0000410c: SWAP2 0000410d: POP 0000410e: POP 0000410f: JUMP 00004110: JUMPDEST 00004111: PUSH1 0x00 00004113: PUSH2 0x0100 00004116: DUP3 00004117: DUP5 00004118: SUB 00004119: SLT 0000411a: ISZERO 0000411b: PUSH2 0x4123 0000411e: JUMPI 0000411f: PUSH1 0x00 00004121: DUP1 00004122: REVERT 00004123: JUMPDEST 00004124: POP 00004125: SWAP2 00004126: SWAP1 00004127: POP 00004128: JUMP 00004129: JUMPDEST 0000412a: PUSH1 0x00 0000412c: PUSH2 0x0100 0000412f: DUP3 00004130: DUP5 00004131: SUB 00004132: SLT 00004133: ISZERO 00004134: PUSH2 0x413c 00004137: JUMPI 00004138: PUSH1 0x00 0000413a: DUP1 0000413b: REVERT 0000413c: JUMPDEST 0000413d: PUSH2 0x4147 00004140: PUSH2 0x0100 00004143: PUSH2 0x5ab3 00004146: JUMP 00004147: JUMPDEST 00004148: SWAP1 00004149: POP 0000414a: PUSH1 0x00 0000414c: PUSH2 0x4155 0000414f: DUP5 00004150: DUP5 00004151: PUSH2 0x3b80 00004154: JUMP 00004155: JUMPDEST 00004156: DUP3 00004157: MSTORE 00004158: POP 00004159: PUSH1 0x20 0000415b: PUSH2 0x4166 0000415e: DUP5 0000415f: DUP5 00004160: DUP4 00004161: ADD 00004162: PUSH2 0x3b80 00004165: JUMP 00004166: JUMPDEST 00004167: PUSH1 0x20 00004169: DUP4 0000416a: ADD 0000416b: MSTORE 0000416c: POP 0000416d: PUSH1 0x40 0000416f: PUSH2 0x417a 00004172: DUP5 00004173: DUP3 00004174: DUP6 00004175: ADD 00004176: PUSH2 0x3b80 00004179: JUMP 0000417a: JUMPDEST 0000417b: PUSH1 0x40 0000417d: DUP4 0000417e: ADD 0000417f: MSTORE 00004180: POP 00004181: PUSH1 0x60 00004183: PUSH2 0x418e 00004186: DUP5 00004187: DUP3 00004188: DUP6 00004189: ADD 0000418a: PUSH2 0x3b80 0000418d: JUMP 0000418e: JUMPDEST 0000418f: PUSH1 0x60 00004191: DUP4 00004192: ADD 00004193: MSTORE 00004194: POP 00004195: PUSH1 0x80 00004197: PUSH2 0x41a2 0000419a: DUP5 0000419b: DUP3 0000419c: DUP6 0000419d: ADD 0000419e: PUSH2 0x3cf2 000041a1: JUMP 000041a2: JUMPDEST 000041a3: PUSH1 0x80 000041a5: DUP4 000041a6: ADD 000041a7: MSTORE 000041a8: POP 000041a9: PUSH1 0xa0 000041ab: PUSH2 0x41b6 000041ae: DUP5 000041af: DUP3 000041b0: DUP6 000041b1: ADD 000041b2: PUSH2 0x3cf2 000041b5: JUMP 000041b6: JUMPDEST 000041b7: PUSH1 0xa0 000041b9: DUP4 000041ba: ADD 000041bb: MSTORE 000041bc: POP 000041bd: PUSH1 0xc0 000041bf: PUSH2 0x41ca 000041c2: DUP5 000041c3: DUP3 000041c4: DUP6 000041c5: ADD 000041c6: PUSH2 0x3cf2 000041c9: JUMP 000041ca: JUMPDEST 000041cb: PUSH1 0xc0 000041cd: DUP4 000041ce: ADD 000041cf: MSTORE 000041d0: POP 000041d1: PUSH1 0xe0 000041d3: PUSH2 0x41de 000041d6: DUP5 000041d7: DUP3 000041d8: DUP6 000041d9: ADD 000041da: PUSH2 0x3cf2 000041dd: JUMP 000041de: JUMPDEST 000041df: PUSH1 0xe0 000041e1: DUP4 000041e2: ADD 000041e3: MSTORE 000041e4: POP 000041e5: SWAP3 000041e6: SWAP2 000041e7: POP 000041e8: POP 000041e9: JUMP 000041ea: JUMPDEST 000041eb: PUSH1 0x00 000041ed: PUSH1 0x60 000041ef: DUP3 000041f0: DUP5 000041f1: SUB 000041f2: SLT 000041f3: ISZERO 000041f4: PUSH2 0x4123 000041f7: JUMPI 000041f8: PUSH1 0x00 000041fa: DUP1 000041fb: REVERT 000041fc: JUMPDEST 000041fd: PUSH1 0x00 000041ff: PUSH1 0x60 00004201: DUP3 00004202: DUP5 00004203: SUB 00004204: SLT 00004205: ISZERO 00004206: PUSH2 0x420e 00004209: JUMPI 0000420a: PUSH1 0x00 0000420c: DUP1 0000420d: REVERT 0000420e: JUMPDEST 0000420f: PUSH2 0x4218 00004212: PUSH1 0x60 00004214: PUSH2 0x5ab3 00004217: JUMP 00004218: JUMPDEST 00004219: SWAP1 0000421a: POP 0000421b: PUSH1 0x00 0000421d: PUSH2 0x4226 00004220: DUP5 00004221: DUP5 00004222: PUSH2 0x3cf2 00004225: JUMP 00004226: JUMPDEST 00004227: DUP3 00004228: MSTORE 00004229: POP 0000422a: PUSH1 0x20 0000422c: PUSH2 0x4237 0000422f: DUP5 00004230: DUP5 00004231: DUP4 00004232: ADD 00004233: PUSH2 0x3cf2 00004236: JUMP 00004237: JUMPDEST 00004238: PUSH1 0x20 0000423a: DUP4 0000423b: ADD 0000423c: MSTORE 0000423d: POP 0000423e: PUSH1 0x40 00004240: PUSH2 0x406c 00004243: DUP5 00004244: DUP3 00004245: DUP6 00004246: ADD 00004247: PUSH2 0x3cf2 0000424a: JUMP 0000424b: JUMPDEST 0000424c: DUP1 0000424d: CALLDATALOAD 0000424e: PUSH2 0x0d92 00004251: DUP2 00004252: PUSH2 0x5c30 00004255: JUMP 00004256: JUMPDEST 00004257: DUP1 00004258: MLOAD 00004259: PUSH2 0x0d92 0000425c: DUP2 0000425d: PUSH2 0x5c30 00004260: JUMP 00004261: JUMPDEST 00004262: DUP1 00004263: MLOAD 00004264: PUSH2 0x0d92 00004267: DUP2 00004268: PUSH2 0x5c1a 0000426b: JUMP 0000426c: JUMPDEST 0000426d: DUP1 0000426e: CALLDATALOAD 0000426f: PUSH2 0x0d92 00004272: DUP2 00004273: PUSH2 0x5c39 00004276: JUMP 00004277: JUMPDEST 00004278: DUP1 00004279: MLOAD 0000427a: PUSH2 0x0d92 0000427d: DUP2 0000427e: PUSH2 0x5c39 00004281: JUMP 00004282: JUMPDEST 00004283: DUP1 00004284: CALLDATALOAD 00004285: PUSH2 0x0d92 00004288: DUP2 00004289: PUSH2 0x5c42 0000428c: JUMP 0000428d: JUMPDEST 0000428e: PUSH1 0x00 00004290: PUSH1 0x20 00004292: DUP3 00004293: DUP5 00004294: SUB 00004295: SLT 00004296: ISZERO 00004297: PUSH2 0x429f 0000429a: JUMPI 0000429b: PUSH1 0x00 0000429d: DUP1 0000429e: REVERT 0000429f: JUMPDEST 000042a0: PUSH1 0x00 000042a2: PUSH2 0x0bb4 000042a5: DUP5 000042a6: DUP5 000042a7: PUSH2 0x3b80 000042aa: JUMP 000042ab: JUMPDEST 000042ac: PUSH1 0x00 000042ae: DUP1 000042af: PUSH1 0x40 000042b1: DUP4 000042b2: DUP6 000042b3: SUB 000042b4: SLT 000042b5: ISZERO 000042b6: PUSH2 0x42be 000042b9: JUMPI 000042ba: PUSH1 0x00 000042bc: DUP1 000042bd: REVERT 000042be: JUMPDEST 000042bf: PUSH1 0x00 000042c1: PUSH2 0x42ca 000042c4: DUP6 000042c5: DUP6 000042c6: PUSH2 0x3b80 000042c9: JUMP 000042ca: JUMPDEST 000042cb: SWAP3 000042cc: POP 000042cd: POP 000042ce: PUSH1 0x20 000042d0: PUSH2 0x42db 000042d3: DUP6 000042d4: DUP3 000042d5: DUP7 000042d6: ADD 000042d7: PUSH2 0x3b80 000042da: JUMP 000042db: JUMPDEST 000042dc: SWAP2 000042dd: POP 000042de: POP 000042df: SWAP3 000042e0: POP 000042e1: SWAP3 000042e2: SWAP1 000042e3: POP 000042e4: JUMP 000042e5: JUMPDEST 000042e6: PUSH1 0x00 000042e8: DUP1 000042e9: PUSH1 0x00 000042eb: PUSH1 0x60 000042ed: DUP5 000042ee: DUP7 000042ef: SUB 000042f0: SLT 000042f1: ISZERO 000042f2: PUSH2 0x42fa 000042f5: JUMPI 000042f6: PUSH1 0x00 000042f8: DUP1 000042f9: REVERT 000042fa: JUMPDEST 000042fb: PUSH1 0x00 000042fd: PUSH2 0x4306 00004300: DUP7 00004301: DUP7 00004302: PUSH2 0x3b80 00004305: JUMP 00004306: JUMPDEST 00004307: SWAP4 00004308: POP 00004309: POP 0000430a: PUSH1 0x20 0000430c: PUSH2 0x4317 0000430f: DUP7 00004310: DUP3 00004311: DUP8 00004312: ADD 00004313: PUSH2 0x3b80 00004316: JUMP 00004317: JUMPDEST 00004318: SWAP3 00004319: POP 0000431a: POP 0000431b: PUSH1 0x40 0000431d: PUSH2 0x4328 00004320: DUP7 00004321: DUP3 00004322: DUP8 00004323: ADD 00004324: PUSH2 0x3b80 00004327: JUMP 00004328: JUMPDEST 00004329: SWAP2 0000432a: POP 0000432b: POP 0000432c: SWAP3 0000432d: POP 0000432e: SWAP3 0000432f: POP 00004330: SWAP3 00004331: JUMP 00004332: JUMPDEST 00004333: PUSH1 0x00 00004335: DUP1 00004336: PUSH1 0x00 00004338: DUP1 00004339: PUSH1 0x00 0000433b: DUP1 0000433c: PUSH1 0x00 0000433e: DUP1 0000433f: PUSH1 0xc0 00004341: DUP10 00004342: DUP12 00004343: SUB 00004344: SLT 00004345: ISZERO 00004346: PUSH2 0x434e 00004349: JUMPI 0000434a: PUSH1 0x00 0000434c: DUP1 0000434d: REVERT 0000434e: JUMPDEST 0000434f: PUSH1 0x00 00004351: PUSH2 0x435a 00004354: DUP12 00004355: DUP12 00004356: PUSH2 0x3b80 00004359: JUMP 0000435a: JUMPDEST 0000435b: SWAP9 0000435c: POP 0000435d: POP 0000435e: PUSH1 0x20 00004360: PUSH2 0x436b 00004363: DUP12 00004364: DUP3 00004365: DUP13 00004366: ADD 00004367: PUSH2 0x3b80 0000436a: JUMP 0000436b: JUMPDEST 0000436c: SWAP8 0000436d: POP 0000436e: POP 0000436f: PUSH1 0x40 00004371: PUSH2 0x437c 00004374: DUP12 00004375: DUP3 00004376: DUP13 00004377: ADD 00004378: PUSH2 0x3b80 0000437b: JUMP 0000437c: JUMPDEST 0000437d: SWAP7 0000437e: POP 0000437f: POP 00004380: PUSH1 0x60 00004382: DUP10 00004383: ADD 00004384: CALLDATALOAD 00004385: PUSH8 0xffffffffffffffff 0000438e: DUP2 0000438f: GT 00004390: ISZERO 00004391: PUSH2 0x4399 00004394: JUMPI 00004395: PUSH1 0x00 00004397: DUP1 00004398: REVERT 00004399: JUMPDEST 0000439a: PUSH2 0x43a5 0000439d: DUP12 0000439e: DUP3 0000439f: DUP13 000043a0: ADD 000043a1: PUSH2 0x3d57 000043a4: JUMP 000043a5: JUMPDEST 000043a6: SWAP6 000043a7: POP 000043a8: SWAP6 000043a9: POP 000043aa: POP 000043ab: PUSH1 0x80 000043ad: DUP10 000043ae: ADD 000043af: CALLDATALOAD 000043b0: PUSH8 0xffffffffffffffff 000043b9: DUP2 000043ba: GT 000043bb: ISZERO 000043bc: PUSH2 0x43c4 000043bf: JUMPI 000043c0: PUSH1 0x00 000043c2: DUP1 000043c3: REVERT 000043c4: JUMPDEST 000043c5: PUSH2 0x43d0 000043c8: DUP12 000043c9: DUP3 000043ca: DUP13 000043cb: ADD 000043cc: PUSH2 0x3d57 000043cf: JUMP 000043d0: JUMPDEST 000043d1: SWAP4 000043d2: POP 000043d3: SWAP4 000043d4: POP 000043d5: POP 000043d6: PUSH1 0xa0 000043d8: PUSH2 0x43e3 000043db: DUP12 000043dc: DUP3 000043dd: DUP13 000043de: ADD 000043df: PUSH2 0x4282 000043e2: JUMP 000043e3: JUMPDEST 000043e4: SWAP2 000043e5: POP 000043e6: POP 000043e7: SWAP3 000043e8: SWAP6 000043e9: SWAP9 000043ea: POP 000043eb: SWAP3 000043ec: SWAP6 000043ed: SWAP9 000043ee: SWAP1 000043ef: SWAP4 000043f0: SWAP7 000043f1: POP 000043f2: JUMP 000043f3: JUMPDEST 000043f4: PUSH1 0x00 000043f6: DUP1 000043f7: PUSH1 0x00 000043f9: PUSH1 0x60 000043fb: DUP5 000043fc: DUP7 000043fd: SUB 000043fe: SLT 000043ff: ISZERO 00004400: PUSH2 0x4408 00004403: JUMPI 00004404: PUSH1 0x00 00004406: DUP1 00004407: REVERT 00004408: JUMPDEST 00004409: PUSH1 0x00 0000440b: PUSH2 0x4414 0000440e: DUP7 0000440f: DUP7 00004410: PUSH2 0x3b80 00004413: JUMP 00004414: JUMPDEST 00004415: SWAP4 00004416: POP 00004417: POP 00004418: PUSH1 0x20 0000441a: PUSH2 0x4425 0000441d: DUP7 0000441e: DUP3 0000441f: DUP8 00004420: ADD 00004421: PUSH2 0x3b80 00004424: JUMP 00004425: JUMPDEST 00004426: SWAP3 00004427: POP 00004428: POP 00004429: PUSH1 0x40 0000442b: PUSH2 0x4328 0000442e: DUP7 0000442f: DUP3 00004430: DUP8 00004431: ADD 00004432: PUSH2 0x424b 00004435: JUMP 00004436: JUMPDEST 00004437: PUSH1 0x00 00004439: DUP1 0000443a: PUSH1 0x40 0000443c: DUP4 0000443d: DUP6 0000443e: SUB 0000443f: SLT 00004440: ISZERO 00004441: PUSH2 0x4449 00004444: JUMPI 00004445: PUSH1 0x00 00004447: DUP1 00004448: REVERT 00004449: JUMPDEST 0000444a: PUSH1 0x00 0000444c: PUSH2 0x4455 0000444f: DUP6 00004450: DUP6 00004451: PUSH2 0x3b80 00004454: JUMP 00004455: JUMPDEST 00004456: SWAP3 00004457: POP 00004458: POP 00004459: PUSH1 0x20 0000445b: PUSH2 0x42db 0000445e: DUP6 0000445f: DUP3 00004460: DUP7 00004461: ADD 00004462: PUSH2 0x424b 00004465: JUMP 00004466: JUMPDEST 00004467: PUSH1 0x00 00004469: DUP1 0000446a: PUSH1 0x40 0000446c: DUP4 0000446d: DUP6 0000446e: SUB 0000446f: SLT 00004470: ISZERO 00004471: PUSH2 0x4479 00004474: JUMPI 00004475: PUSH1 0x00 00004477: DUP1 00004478: REVERT 00004479: JUMPDEST 0000447a: PUSH1 0x00 0000447c: PUSH2 0x4485 0000447f: DUP6 00004480: DUP6 00004481: PUSH2 0x3b80 00004484: JUMP 00004485: JUMPDEST 00004486: SWAP3 00004487: POP 00004488: POP 00004489: PUSH1 0x20 0000448b: PUSH2 0x42db 0000448e: DUP6 0000448f: DUP3 00004490: DUP7 00004491: ADD 00004492: PUSH2 0x3cf2 00004495: JUMP 00004496: JUMPDEST 00004497: PUSH1 0x00 00004499: PUSH1 0x20 0000449b: DUP3 0000449c: DUP5 0000449d: SUB 0000449e: SLT 0000449f: ISZERO 000044a0: PUSH2 0x44a8 000044a3: JUMPI 000044a4: PUSH1 0x00 000044a6: DUP1 000044a7: REVERT 000044a8: JUMPDEST 000044a9: DUP2 000044aa: CALLDATALOAD 000044ab: PUSH8 0xffffffffffffffff 000044b4: DUP2 000044b5: GT 000044b6: ISZERO 000044b7: PUSH2 0x44bf 000044ba: JUMPI 000044bb: PUSH1 0x00 000044bd: DUP1 000044be: REVERT 000044bf: JUMPDEST 000044c0: PUSH2 0x0bb4 000044c3: DUP5 000044c4: DUP3 000044c5: DUP6 000044c6: ADD 000044c7: PUSH2 0x3b96 000044ca: JUMP 000044cb: JUMPDEST 000044cc: PUSH1 0x00 000044ce: DUP1 000044cf: PUSH1 0x40 000044d1: DUP4 000044d2: DUP6 000044d3: SUB 000044d4: SLT 000044d5: ISZERO 000044d6: PUSH2 0x44de 000044d9: JUMPI 000044da: PUSH1 0x00 000044dc: DUP1 000044dd: REVERT 000044de: JUMPDEST 000044df: PUSH1 0x00 000044e1: PUSH2 0x44ea 000044e4: DUP6 000044e5: DUP6 000044e6: PUSH2 0x3ce7 000044e9: JUMP 000044ea: JUMPDEST 000044eb: SWAP3 000044ec: POP 000044ed: POP 000044ee: PUSH1 0x20 000044f0: PUSH2 0x42db 000044f3: DUP6 000044f4: DUP3 000044f5: DUP7 000044f6: ADD 000044f7: PUSH2 0x4277 000044fa: JUMP 000044fb: JUMPDEST 000044fc: PUSH1 0x00 000044fe: PUSH1 0x20 00004500: DUP3 00004501: DUP5 00004502: SUB 00004503: SLT 00004504: ISZERO 00004505: PUSH2 0x450d 00004508: JUMPI 00004509: PUSH1 0x00 0000450b: DUP1 0000450c: REVERT 0000450d: JUMPDEST 0000450e: PUSH1 0x00 00004510: PUSH2 0x0bb4 00004513: DUP5 00004514: DUP5 00004515: PUSH2 0x3cf2 00004518: JUMP 00004519: JUMPDEST 0000451a: PUSH1 0x00 0000451c: DUP1 0000451d: PUSH1 0x00 0000451f: PUSH1 0xa0 00004521: DUP5 00004522: DUP7 00004523: SUB 00004524: SLT 00004525: ISZERO 00004526: PUSH2 0x452e 00004529: JUMPI 0000452a: PUSH1 0x00 0000452c: DUP1 0000452d: REVERT 0000452e: JUMPDEST 0000452f: PUSH1 0x00 00004531: PUSH2 0x453a 00004534: DUP7 00004535: DUP7 00004536: PUSH2 0x3cf2 00004539: JUMP 0000453a: JUMPDEST 0000453b: SWAP4 0000453c: POP 0000453d: POP 0000453e: PUSH1 0x20 00004540: PUSH2 0x454b 00004543: DUP7 00004544: DUP3 00004545: DUP8 00004546: ADD 00004547: PUSH2 0x3b80 0000454a: JUMP 0000454b: JUMPDEST 0000454c: SWAP3 0000454d: POP 0000454e: POP 0000454f: PUSH1 0x40 00004551: PUSH2 0x4328 00004554: DUP7 00004555: DUP3 00004556: DUP8 00004557: ADD 00004558: PUSH2 0x41ea 0000455b: JUMP 0000455c: JUMPDEST 0000455d: PUSH1 0x00 0000455f: PUSH2 0x0120 00004562: DUP3 00004563: DUP5 00004564: SUB 00004565: SLT 00004566: ISZERO 00004567: PUSH2 0x456f 0000456a: JUMPI 0000456b: PUSH1 0x00 0000456d: DUP1 0000456e: REVERT 0000456f: JUMPDEST 00004570: PUSH1 0x00 00004572: PUSH2 0x0bb4 00004575: DUP5 00004576: DUP5 00004577: PUSH2 0x3df8 0000457a: JUMP 0000457b: JUMPDEST 0000457c: PUSH1 0x00 0000457e: PUSH1 0xe0 00004580: DUP3 00004581: DUP5 00004582: SUB 00004583: SLT 00004584: ISZERO 00004585: PUSH2 0x458d 00004588: JUMPI 00004589: PUSH1 0x00 0000458b: DUP1 0000458c: REVERT 0000458d: JUMPDEST 0000458e: PUSH1 0x00 00004590: PUSH2 0x0bb4 00004593: DUP5 00004594: DUP5 00004595: PUSH2 0x3ecf 00004598: JUMP 00004599: JUMPDEST 0000459a: PUSH1 0x00 0000459c: PUSH1 0x20 0000459e: DUP3 0000459f: DUP5 000045a0: SUB 000045a1: SLT 000045a2: ISZERO 000045a3: PUSH2 0x45ab 000045a6: JUMPI 000045a7: PUSH1 0x00 000045a9: DUP1 000045aa: REVERT 000045ab: JUMPDEST 000045ac: DUP2 000045ad: CALLDATALOAD 000045ae: PUSH8 0xffffffffffffffff 000045b7: DUP2 000045b8: GT 000045b9: ISZERO 000045ba: PUSH2 0x45c2 000045bd: JUMPI 000045be: PUSH1 0x00 000045c0: DUP1 000045c1: REVERT 000045c2: JUMPDEST 000045c3: PUSH2 0x0bb4 000045c6: DUP5 000045c7: DUP3 000045c8: DUP6 000045c9: ADD 000045ca: PUSH2 0x3f7a 000045cd: JUMP 000045ce: JUMPDEST 000045cf: PUSH1 0x00 000045d1: PUSH2 0x0100 000045d4: DUP3 000045d5: DUP5 000045d6: SUB 000045d7: SLT 000045d8: ISZERO 000045d9: PUSH2 0x45e1 000045dc: JUMPI 000045dd: PUSH1 0x00 000045df: DUP1 000045e0: REVERT 000045e1: JUMPDEST 000045e2: PUSH1 0x00 000045e4: PUSH2 0x0bb4 000045e7: DUP5 000045e8: DUP5 000045e9: PUSH2 0x4110 000045ec: JUMP 000045ed: JUMPDEST 000045ee: PUSH1 0x00 000045f0: PUSH2 0x0100 000045f3: DUP3 000045f4: DUP5 000045f5: SUB 000045f6: SLT 000045f7: ISZERO 000045f8: PUSH2 0x4600 000045fb: JUMPI 000045fc: PUSH1 0x00 000045fe: DUP1 000045ff: REVERT 00004600: JUMPDEST 00004601: PUSH1 0x00 00004603: PUSH2 0x0bb4 00004606: DUP5 00004607: DUP5 00004608: PUSH2 0x4129 0000460b: JUMP 0000460c: JUMPDEST 0000460d: PUSH1 0x00 0000460f: PUSH1 0x60 00004611: DUP3 00004612: DUP5 00004613: SUB 00004614: SLT 00004615: ISZERO 00004616: PUSH2 0x461e 00004619: JUMPI 0000461a: PUSH1 0x00 0000461c: DUP1 0000461d: REVERT 0000461e: JUMPDEST 0000461f: PUSH1 0x00 00004621: PUSH2 0x0bb4 00004624: DUP5 00004625: DUP5 00004626: PUSH2 0x41fc 00004629: JUMP 0000462a: JUMPDEST 0000462b: PUSH1 0x00 0000462d: PUSH1 0x20 0000462f: DUP3 00004630: DUP5 00004631: SUB 00004632: SLT 00004633: ISZERO 00004634: PUSH2 0x463c 00004637: JUMPI 00004638: PUSH1 0x00 0000463a: DUP1 0000463b: REVERT 0000463c: JUMPDEST 0000463d: PUSH1 0x00 0000463f: PUSH2 0x0bb4 00004642: DUP5 00004643: DUP5 00004644: PUSH2 0x424b 00004647: JUMP 00004648: JUMPDEST 00004649: PUSH1 0x00 0000464b: DUP1 0000464c: PUSH1 0x00 0000464e: PUSH1 0x60 00004650: DUP5 00004651: DUP7 00004652: SUB 00004653: SLT 00004654: ISZERO 00004655: PUSH2 0x465d 00004658: JUMPI 00004659: PUSH1 0x00 0000465b: DUP1 0000465c: REVERT 0000465d: JUMPDEST 0000465e: PUSH1 0x00 00004660: PUSH2 0x4306 00004663: DUP7 00004664: DUP7 00004665: PUSH2 0x424b 00004668: JUMP 00004669: JUMPDEST 0000466a: PUSH1 0x00 0000466c: DUP1 0000466d: PUSH1 0x40 0000466f: DUP4 00004670: DUP6 00004671: SUB 00004672: SLT 00004673: ISZERO 00004674: PUSH2 0x467c 00004677: JUMPI 00004678: PUSH1 0x00 0000467a: DUP1 0000467b: REVERT 0000467c: JUMPDEST 0000467d: PUSH1 0x00 0000467f: PUSH2 0x4688 00004682: DUP6 00004683: DUP6 00004684: PUSH2 0x424b 00004687: JUMP 00004688: JUMPDEST 00004689: SWAP3 0000468a: POP 0000468b: POP 0000468c: PUSH1 0x20 0000468e: PUSH2 0x42db 00004691: DUP6 00004692: DUP3 00004693: DUP7 00004694: ADD 00004695: PUSH2 0x3cdc 00004698: JUMP 00004699: JUMPDEST 0000469a: PUSH1 0x00 0000469c: DUP1 0000469d: PUSH1 0x00 0000469f: DUP1 000046a0: PUSH1 0x00 000046a2: PUSH1 0xa0 000046a4: DUP7 000046a5: DUP9 000046a6: SUB 000046a7: SLT 000046a8: ISZERO 000046a9: PUSH2 0x46b1 000046ac: JUMPI 000046ad: PUSH1 0x00 000046af: DUP1 000046b0: REVERT 000046b1: JUMPDEST 000046b2: PUSH1 0x00 000046b4: PUSH2 0x46bd 000046b7: DUP9 000046b8: DUP9 000046b9: PUSH2 0x424b 000046bc: JUMP 000046bd: JUMPDEST 000046be: SWAP6 000046bf: POP 000046c0: POP 000046c1: PUSH1 0x20 000046c3: PUSH2 0x46ce 000046c6: DUP9 000046c7: DUP3 000046c8: DUP10 000046c9: ADD 000046ca: PUSH2 0x3cf2 000046cd: JUMP 000046ce: JUMPDEST 000046cf: SWAP5 000046d0: POP 000046d1: POP 000046d2: PUSH1 0x40 000046d4: PUSH2 0x46df 000046d7: DUP9 000046d8: DUP3 000046d9: DUP10 000046da: ADD 000046db: PUSH2 0x3cf2 000046de: JUMP 000046df: JUMPDEST 000046e0: SWAP4 000046e1: POP 000046e2: POP 000046e3: PUSH1 0x60 000046e5: PUSH2 0x46f0 000046e8: DUP9 000046e9: DUP3 000046ea: DUP10 000046eb: ADD 000046ec: PUSH2 0x3cf2 000046ef: JUMP 000046f0: JUMPDEST 000046f1: SWAP3 000046f2: POP 000046f3: POP 000046f4: PUSH1 0x80 000046f6: PUSH2 0x4701 000046f9: DUP9 000046fa: DUP3 000046fb: DUP10 000046fc: ADD 000046fd: PUSH2 0x3cf2 00004700: JUMP 00004701: JUMPDEST 00004702: SWAP2 00004703: POP 00004704: POP 00004705: SWAP3 00004706: SWAP6 00004707: POP 00004708: SWAP3 00004709: SWAP6 0000470a: SWAP1 0000470b: SWAP4 0000470c: POP 0000470d: JUMP 0000470e: JUMPDEST 0000470f: PUSH1 0x00 00004711: PUSH1 0x20 00004713: DUP3 00004714: DUP5 00004715: SUB 00004716: SLT 00004717: ISZERO 00004718: PUSH2 0x4720 0000471b: JUMPI 0000471c: PUSH1 0x00 0000471e: DUP1 0000471f: REVERT 00004720: JUMPDEST 00004721: PUSH1 0x00 00004723: PUSH2 0x0bb4 00004726: DUP5 00004727: DUP5 00004728: PUSH2 0x4261 0000472b: JUMP 0000472c: JUMPDEST 0000472d: PUSH1 0x00 0000472f: PUSH1 0x20 00004731: DUP3 00004732: DUP5 00004733: SUB 00004734: SLT 00004735: ISZERO 00004736: PUSH2 0x473e 00004739: JUMPI 0000473a: PUSH1 0x00 0000473c: DUP1 0000473d: REVERT 0000473e: JUMPDEST 0000473f: PUSH1 0x00 00004741: PUSH2 0x0bb4 00004744: DUP5 00004745: DUP5 00004746: PUSH2 0x426c 00004749: JUMP 0000474a: JUMPDEST 0000474b: PUSH1 0x00 0000474d: DUP1 0000474e: PUSH1 0x40 00004750: DUP4 00004751: DUP6 00004752: SUB 00004753: SLT 00004754: ISZERO 00004755: PUSH2 0x475d 00004758: JUMPI 00004759: PUSH1 0x00 0000475b: DUP1 0000475c: REVERT 0000475d: JUMPDEST 0000475e: PUSH1 0x00 00004760: PUSH2 0x4485 00004763: DUP6 00004764: DUP6 00004765: PUSH2 0x426c 00004768: JUMP 00004769: JUMPDEST 0000476a: PUSH1 0x00 0000476c: PUSH2 0x0933 0000476f: DUP4 00004770: DUP4 00004771: PUSH2 0x5255 00004774: JUMP 00004775: JUMPDEST 00004776: PUSH1 0x00 00004778: PUSH2 0x4781 0000477b: DUP4 0000477c: DUP4 0000477d: PUSH2 0x5475 00004780: JUMP 00004781: JUMPDEST 00004782: POP 00004783: POP 00004784: PUSH1 0x20 00004786: ADD 00004787: SWAP1 00004788: JUMP 00004789: JUMPDEST 0000478a: PUSH2 0x4792 0000478d: DUP2 0000478e: PUSH2 0x5b7f 00004791: JUMP 00004792: JUMPDEST 00004793: DUP3 00004794: MSTORE 00004795: POP 00004796: POP 00004797: JUMP 00004798: JUMPDEST 00004799: PUSH2 0x4792 0000479c: DUP2 0000479d: PUSH2 0x5b36 000047a0: JUMP 000047a1: JUMPDEST 000047a2: PUSH1 0x00 000047a4: PUSH2 0x47ac 000047a7: DUP3 000047a8: PUSH2 0x5b29 000047ab: JUMP 000047ac: JUMPDEST 000047ad: PUSH2 0x47b6 000047b0: DUP2 000047b1: DUP6 000047b2: PUSH2 0x5b2d 000047b5: JUMP 000047b6: JUMPDEST 000047b7: SWAP4 000047b8: POP 000047b9: DUP4 000047ba: PUSH1 0x20 000047bc: DUP3 000047bd: MUL 000047be: DUP6 000047bf: ADD 000047c0: PUSH2 0x47c8 000047c3: DUP6 000047c4: PUSH2 0x5b23 000047c7: JUMP 000047c8: JUMPDEST 000047c9: DUP1 000047ca: PUSH1 0x00 000047cc: JUMPDEST 000047cd: DUP6 000047ce: DUP2 000047cf: LT 000047d0: ISZERO 000047d1: PUSH2 0x4802 000047d4: JUMPI 000047d5: DUP5 000047d6: DUP5 000047d7: SUB 000047d8: DUP10 000047d9: MSTORE 000047da: DUP2 000047db: MLOAD 000047dc: PUSH2 0x47e5 000047df: DUP6 000047e0: DUP3 000047e1: PUSH2 0x4769 000047e4: JUMP 000047e5: JUMPDEST 000047e6: SWAP5 000047e7: POP 000047e8: PUSH2 0x47f0 000047eb: DUP4 000047ec: PUSH2 0x5b23 000047ef: JUMP 000047f0: JUMPDEST 000047f1: PUSH1 0x20 000047f3: SWAP11 000047f4: SWAP1 000047f5: SWAP11 000047f6: ADD 000047f7: SWAP10 000047f8: SWAP3 000047f9: POP 000047fa: POP 000047fb: PUSH1 0x01 000047fd: ADD 000047fe: PUSH2 0x47cc 00004801: JUMP 00004802: JUMPDEST 00004803: POP 00004804: SWAP2 00004805: SWAP8 00004806: SWAP7 00004807: POP 00004808: POP 00004809: POP 0000480a: POP 0000480b: POP 0000480c: POP 0000480d: POP 0000480e: JUMP 0000480f: JUMPDEST 00004810: PUSH1 0x00 00004812: PUSH2 0x481a 00004815: DUP3 00004816: PUSH2 0x5b29 00004819: JUMP 0000481a: JUMPDEST 0000481b: PUSH2 0x4824 0000481e: DUP2 0000481f: DUP6 00004820: PUSH2 0x5b2d 00004823: JUMP 00004824: JUMPDEST 00004825: SWAP4 00004826: POP 00004827: PUSH2 0x482f 0000482a: DUP4 0000482b: PUSH2 0x5b23 0000482e: JUMP 0000482f: JUMPDEST 00004830: DUP1 00004831: PUSH1 0x00 00004833: JUMPDEST 00004834: DUP4 00004835: DUP2 00004836: LT 00004837: ISZERO 00004838: PUSH2 0x485d 0000483b: JUMPI 0000483c: DUP2 0000483d: MLOAD 0000483e: PUSH2 0x4847 00004841: DUP9 00004842: DUP3 00004843: PUSH2 0x4775 00004846: JUMP 00004847: JUMPDEST 00004848: SWAP8 00004849: POP 0000484a: PUSH2 0x4852 0000484d: DUP4 0000484e: PUSH2 0x5b23 00004851: JUMP 00004852: JUMPDEST 00004853: SWAP3 00004854: POP 00004855: POP 00004856: PUSH1 0x01 00004858: ADD 00004859: PUSH2 0x4833 0000485c: JUMP 0000485d: JUMPDEST 0000485e: POP 0000485f: SWAP5 00004860: SWAP6 00004861: SWAP5 00004862: POP 00004863: POP 00004864: POP 00004865: POP 00004866: POP 00004867: JUMP 00004868: JUMPDEST 00004869: PUSH2 0x4792 0000486c: DUP2 0000486d: PUSH2 0x5b41 00004870: JUMP 00004871: JUMPDEST 00004872: PUSH2 0x4792 00004875: DUP2 00004876: PUSH2 0x5b46 00004879: JUMP 0000487a: JUMPDEST 0000487b: PUSH2 0x4792 0000487e: PUSH2 0x4886 00004881: DUP3 00004882: PUSH2 0x5b46 00004885: JUMP 00004886: JUMPDEST 00004887: PUSH2 0x5b46 0000488a: JUMP 0000488b: JUMPDEST 0000488c: PUSH1 0x00 0000488e: PUSH2 0x4896 00004891: DUP3 00004892: PUSH2 0x5b29 00004895: JUMP 00004896: JUMPDEST 00004897: PUSH2 0x48a0 0000489a: DUP2 0000489b: DUP6 0000489c: PUSH2 0x5b2d 0000489f: JUMP 000048a0: JUMPDEST 000048a1: SWAP4 000048a2: POP 000048a3: PUSH2 0x48b0 000048a6: DUP2 000048a7: DUP6 000048a8: PUSH1 0x20 000048aa: DUP7 000048ab: ADD 000048ac: PUSH2 0x5bb3 000048af: JUMP 000048b0: JUMPDEST 000048b1: PUSH2 0x48b9 000048b4: DUP2 000048b5: PUSH2 0x5bdf 000048b8: JUMP 000048b9: JUMPDEST 000048ba: SWAP1 000048bb: SWAP4 000048bc: ADD 000048bd: SWAP4 000048be: SWAP3 000048bf: POP 000048c0: POP 000048c1: POP 000048c2: JUMP 000048c3: JUMPDEST 000048c4: PUSH2 0x4792 000048c7: DUP2 000048c8: PUSH2 0x5b86 000048cb: JUMP 000048cc: JUMPDEST 000048cd: PUSH2 0x4792 000048d0: DUP2 000048d1: PUSH2 0x5b91 000048d4: JUMP 000048d5: JUMPDEST 000048d6: PUSH2 0x4792 000048d9: DUP2 000048da: PUSH2 0x5b9c 000048dd: JUMP 000048de: JUMPDEST 000048df: PUSH1 0x00 000048e1: PUSH2 0x48ea 000048e4: DUP4 000048e5: DUP6 000048e6: PUSH2 0x5b2d 000048e9: JUMP 000048ea: JUMPDEST 000048eb: SWAP4 000048ec: POP 000048ed: PUSH2 0x48f7 000048f0: DUP4 000048f1: DUP6 000048f2: DUP5 000048f3: PUSH2 0x5ba7 000048f6: JUMP 000048f7: JUMPDEST 000048f8: PUSH2 0x48b9 000048fb: DUP4 000048fc: PUSH2 0x5bdf 000048ff: JUMP 00004900: JUMPDEST 00004901: PUSH1 0x00 00004903: PUSH2 0x490d 00004906: PUSH1 0x2e 00004908: DUP4 00004909: PUSH2 0x5b2d 0000490c: JUMP 0000490d: JUMPDEST 0000490e: PUSH32 0x43414e5f4e4f545f4f5045524154455f4c49515549444154494e475f434f4c4c 0000492f: DUP2 00004930: MSTORE 00004931: PUSH32 0x41544552414c5f4143434f554e54000000000000000000000000000000000000 00004952: PUSH1 0x20 00004954: DUP3 00004955: ADD 00004956: MSTORE 00004957: PUSH1 0x40 00004959: ADD 0000495a: SWAP3 0000495b: SWAP2 0000495c: POP 0000495d: POP 0000495e: JUMP 0000495f: JUMPDEST 00004960: PUSH1 0x00 00004962: PUSH2 0x496c 00004965: PUSH1 0x18 00004967: DUP4 00004968: PUSH2 0x5b2d 0000496b: JUMP 0000496c: JUMPDEST 0000496d: PUSH32 0x41554354494f4e5f414c52454144595f46494e49534845440000000000000000 0000498e: DUP2 0000498f: MSTORE 00004990: PUSH1 0x20 00004992: ADD 00004993: SWAP3 00004994: SWAP2 00004995: POP 00004996: POP 00004997: JUMP 00004998: JUMPDEST 00004999: PUSH1 0x00 0000499b: PUSH2 0x49a5 0000499e: PUSH1 0x15 000049a0: DUP4 000049a1: PUSH2 0x5b2d 000049a4: JUMP 000049a5: JUMPDEST 000049a6: PUSH32 0x4f524445525f49535f4e4f545f46494c4c41424c450000000000000000000000 000049c7: DUP2 000049c8: MSTORE 000049c9: PUSH1 0x20 000049cb: ADD 000049cc: SWAP3 000049cd: SWAP2 000049ce: POP 000049cf: POP 000049d0: JUMP 000049d1: JUMPDEST 000049d2: PUSH1 0x00 000049d4: PUSH2 0x49de 000049d7: PUSH1 0x0e 000049d9: DUP4 000049da: PUSH2 0x5b2d 000049dd: JUMP 000049de: JUMPDEST 000049df: PUSH32 0x444953434f554e545f4552524f52000000000000000000000000000000000000 00004a00: DUP2 00004a01: MSTORE 00004a02: PUSH1 0x20 00004a04: ADD 00004a05: SWAP3 00004a06: SWAP2 00004a07: POP 00004a08: POP 00004a09: JUMP 00004a0a: JUMPDEST 00004a0b: PUSH1 0x00 00004a0d: PUSH2 0x4a17 00004a10: PUSH1 0x1c 00004a12: DUP4 00004a13: PUSH2 0x0a58 00004a16: JUMP 00004a17: JUMPDEST 00004a18: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000 00004a39: DUP2 00004a3a: MSTORE 00004a3b: PUSH1 0x1c 00004a3d: ADD 00004a3e: SWAP3 00004a3f: SWAP2 00004a40: POP 00004a41: POP 00004a42: JUMP 00004a43: JUMPDEST 00004a44: PUSH1 0x00 00004a46: PUSH2 0x4a50 00004a49: PUSH1 0x19 00004a4b: DUP4 00004a4c: PUSH2 0x5b2d 00004a4f: JUMP 00004a50: JUMPDEST 00004a51: PUSH32 0x544f4b454e5f5452414e534645525f46524f4d5f4552524f5200000000000000 00004a72: DUP2 00004a73: MSTORE 00004a74: PUSH1 0x20 00004a76: ADD 00004a77: SWAP3 00004a78: SWAP2 00004a79: POP 00004a7a: POP 00004a7b: JUMP 00004a7c: JUMPDEST 00004a7d: PUSH1 0x00 00004a7f: PUSH2 0x4a89 00004a82: PUSH1 0x0f 00004a84: DUP4 00004a85: PUSH2 0x5b2d 00004a88: JUMP 00004a89: JUMPDEST 00004a8a: PUSH32 0x41535345545f4e4f545f45584953540000000000000000000000000000000000 00004aab: DUP2 00004aac: MSTORE 00004aad: PUSH1 0x20 00004aaf: ADD 00004ab0: SWAP3 00004ab1: SWAP2 00004ab2: POP 00004ab3: POP 00004ab4: JUMP 00004ab5: JUMPDEST 00004ab6: PUSH1 0x00 00004ab8: PUSH2 0x4ac2 00004abb: PUSH1 0x1b 00004abd: DUP4 00004abe: PUSH2 0x5b2d 00004ac1: JUMP 00004ac2: JUMPDEST 00004ac3: PUSH32 0x4f524445525f56455253494f4e5f4e4f545f535550504f525445440000000000 00004ae4: DUP2 00004ae5: MSTORE 00004ae6: PUSH1 0x20 00004ae8: ADD 00004ae9: SWAP3 00004aea: SWAP2 00004aeb: POP 00004aec: POP 00004aed: JUMP 00004aee: JUMPDEST 00004aef: PUSH1 0x00 00004af1: PUSH2 0x4afb 00004af4: PUSH1 0x02 00004af6: DUP4 00004af7: PUSH2 0x0a58 00004afa: JUMP 00004afb: JUMPDEST 00004afc: PUSH1 0x01 00004afe: PUSH1 0xf0 00004b00: SHL 00004b01: PUSH2 0x1901 00004b04: MUL 00004b05: DUP2 00004b06: MSTORE 00004b07: PUSH1 0x02 00004b09: ADD 00004b0a: SWAP3 00004b0b: SWAP2 00004b0c: POP 00004b0d: POP 00004b0e: JUMP 00004b0f: JUMPDEST 00004b10: PUSH1 0x00 00004b12: PUSH2 0x4b1c 00004b15: PUSH1 0x2d 00004b17: DUP4 00004b18: PUSH2 0x5b2d 00004b1b: JUMP 00004b1c: JUMPDEST 00004b1d: PUSH32 0x415353454d424c595f43414c4c5f4745545f424f52524f575f494e5445524553 00004b3e: DUP2 00004b3f: MSTORE 00004b40: PUSH32 0x545f524154455f4641494c454400000000000000000000000000000000000000 00004b61: PUSH1 0x20 00004b63: DUP3 00004b64: ADD 00004b65: MSTORE 00004b66: PUSH1 0x40 00004b68: ADD 00004b69: SWAP3 00004b6a: SWAP2 00004b6b: POP 00004b6c: POP 00004b6d: JUMP 00004b6e: JUMPDEST 00004b6f: PUSH1 0x00 00004b71: PUSH2 0x4b7b 00004b74: PUSH1 0x24 00004b76: DUP4 00004b77: PUSH2 0x5b2d 00004b7a: JUMP 00004b7b: JUMPDEST 00004b7c: PUSH32 0x415353454d424c595f43414c4c5f4745545f41535345545f50524943455f4641 00004b9d: DUP2 00004b9e: MSTORE 00004b9f: PUSH1 0x01 00004ba1: PUSH1 0xe2 00004ba3: SHL 00004ba4: PUSH4 0x12531151 00004ba9: MUL 00004baa: PUSH1 0x20 00004bac: DUP3 00004bad: ADD 00004bae: MSTORE 00004baf: PUSH1 0x40 00004bb1: ADD 00004bb2: SWAP3 00004bb3: SWAP2 00004bb4: POP 00004bb5: POP 00004bb6: JUMP 00004bb7: JUMPDEST 00004bb8: PUSH1 0x00 00004bba: PUSH2 0x4bc4 00004bbd: PUSH1 0x16 00004bbf: DUP4 00004bc0: PUSH2 0x5b2d 00004bc3: JUMP 00004bc4: JUMPDEST 00004bc5: PUSH32 0x4d414b45525f4f524445525f4f5645525f4d4154434800000000000000000000 00004be6: DUP2 00004be7: MSTORE 00004be8: PUSH1 0x20 00004bea: ADD 00004beb: SWAP3 00004bec: SWAP2 00004bed: POP 00004bee: POP 00004bef: JUMP 00004bf0: JUMPDEST 00004bf1: PUSH1 0x00 00004bf3: PUSH2 0x4bfd 00004bf6: PUSH1 0x17 00004bf8: DUP4 00004bf9: PUSH2 0x5b2d 00004bfc: JUMP 00004bfd: JUMPDEST 00004bfe: PUSH32 0x494e56414c49445f4f524445525f5349474e4154555245000000000000000000 00004c1f: DUP2 00004c20: MSTORE 00004c21: PUSH1 0x20 00004c23: ADD 00004c24: SWAP3 00004c25: SWAP2 00004c26: POP 00004c27: POP 00004c28: JUMP 00004c29: JUMPDEST 00004c2a: PUSH1 0x00 00004c2c: PUSH2 0x4c36 00004c2f: PUSH1 0x13 00004c31: DUP4 00004c32: PUSH2 0x5b2d 00004c35: JUMP 00004c36: JUMPDEST 00004c37: PUSH32 0x494e56414c49445f5349474e5f4d4554484f4400000000000000000000000000 00004c58: DUP2 00004c59: MSTORE 00004c5a: PUSH1 0x20 00004c5c: ADD 00004c5d: SWAP3 00004c5e: SWAP2 00004c5f: POP 00004c60: POP 00004c61: JUMP 00004c62: JUMPDEST 00004c63: PUSH1 0x00 00004c65: PUSH2 0x4c6f 00004c68: PUSH1 0x0e 00004c6a: DUP4 00004c6b: PUSH2 0x5b2d 00004c6e: JUMP 00004c6f: JUMPDEST 00004c70: PUSH32 0x494e56414c49445f545241444552000000000000000000000000000000000000 00004c91: DUP2 00004c92: MSTORE 00004c93: PUSH1 0x20 00004c95: ADD 00004c96: SWAP3 00004c97: SWAP2 00004c98: POP 00004c99: POP 00004c9a: JUMP 00004c9b: JUMPDEST 00004c9c: PUSH1 0x00 00004c9e: PUSH2 0x4ca8 00004ca1: PUSH1 0x24 00004ca3: DUP4 00004ca4: PUSH2 0x5b2d 00004ca7: JUMP 00004ca8: JUMPDEST 00004ca9: PUSH32 0x415353454d424c595f43414c4c5f4745545f484f545f42414c414e43455f4641 00004cca: DUP2 00004ccb: MSTORE 00004ccc: PUSH1 0x01 00004cce: PUSH1 0xe2 00004cd0: SHL 00004cd1: PUSH4 0x12531151 00004cd6: MUL 00004cd7: PUSH1 0x20 00004cd9: DUP3 00004cda: ADD 00004cdb: MSTORE 00004cdc: PUSH1 0x40 00004cde: ADD 00004cdf: SWAP3 00004ce0: SWAP2 00004ce1: POP 00004ce2: POP 00004ce3: JUMP 00004ce4: JUMPDEST 00004ce5: PUSH1 0x00 00004ce7: PUSH2 0x4cf1 00004cea: PUSH1 0x0e 00004cec: DUP4 00004ced: PUSH2 0x5b2d 00004cf0: JUMP 00004cf1: JUMPDEST 00004cf2: PUSH32 0x4449564944494e475f4552524f52000000000000000000000000000000000000 00004d13: DUP2 00004d14: MSTORE 00004d15: PUSH1 0x20 00004d17: ADD 00004d18: SWAP3 00004d19: SWAP2 00004d1a: POP 00004d1b: POP 00004d1c: JUMP 00004d1d: JUMPDEST 00004d1e: PUSH1 0x00 00004d20: PUSH2 0x4d2a 00004d23: PUSH1 0x11 00004d25: DUP4 00004d26: PUSH2 0x5b2d 00004d29: JUMP 00004d2a: JUMPDEST 00004d2b: PUSH32 0x41554354494f4e5f4e4f545f4558495354000000000000000000000000000000 00004d4c: DUP2 00004d4d: MSTORE 00004d4e: PUSH1 0x20 00004d50: ADD 00004d51: SWAP3 00004d52: SWAP2 00004d53: POP 00004d54: POP 00004d55: JUMP 00004d56: JUMPDEST 00004d57: PUSH1 0x00 00004d59: PUSH2 0x4d63 00004d5c: PUSH1 0x0e 00004d5e: DUP4 00004d5f: PUSH2 0x5b2d 00004d62: JUMP 00004d63: JUMPDEST 00004d64: PUSH32 0x524f554e44494e475f4552524f52000000000000000000000000000000000000 00004d85: DUP2 00004d86: MSTORE 00004d87: PUSH1 0x20 00004d89: ADD 00004d8a: SWAP3 00004d8b: SWAP2 00004d8c: POP 00004d8d: POP 00004d8e: JUMP 00004d8f: JUMPDEST 00004d90: PUSH1 0x00 00004d92: PUSH2 0x4d9c 00004d95: PUSH1 0x1f 00004d97: DUP4 00004d98: PUSH2 0x5b2d 00004d9b: JUMP 00004d9c: JUMPDEST 00004d9d: PUSH32 0x434f4c4c41544552414c5f4143434f554e545f4c4951554944415441424c4500 00004dbe: DUP2 00004dbf: MSTORE 00004dc0: PUSH1 0x20 00004dc2: ADD 00004dc3: SWAP3 00004dc4: SWAP2 00004dc5: POP 00004dc6: POP 00004dc7: JUMP 00004dc8: JUMPDEST 00004dc9: PUSH1 0x00 00004dcb: PUSH2 0x4dd5 00004dce: PUSH1 0x1b 00004dd0: DUP4 00004dd1: PUSH2 0x5b2d 00004dd4: JUMP 00004dd5: JUMPDEST 00004dd6: PUSH32 0x41535345545f4e4f545f42454c4f4e47535f544f5f4d41524b45540000000000 00004df7: DUP2 00004df8: MSTORE 00004df9: PUSH1 0x20 00004dfb: ADD 00004dfc: SWAP3 00004dfd: SWAP2 00004dfe: POP 00004dff: POP 00004e00: JUMP 00004e01: JUMPDEST 00004e02: PUSH1 0x00 00004e04: PUSH2 0x4e0e 00004e07: PUSH1 0x1b 00004e09: DUP4 00004e0a: PUSH2 0x5b2d 00004e0d: JUMP 00004e0e: JUMPDEST 00004e0f: PUSH32 0x5452414e534645525f42414c414e43455f4e4f545f454e4f5547480000000000 00004e30: DUP2 00004e31: MSTORE 00004e32: PUSH1 0x20 00004e34: ADD 00004e35: SWAP3 00004e36: SWAP2 00004e37: POP 00004e38: POP 00004e39: JUMP 00004e3a: JUMPDEST 00004e3b: PUSH1 0x00 00004e3d: PUSH2 0x4e47 00004e40: PUSH1 0x09 00004e42: DUP4 00004e43: PUSH2 0x5b2d 00004e46: JUMP 00004e47: JUMPDEST 00004e48: PUSH1 0x01 00004e4a: PUSH1 0xb9 00004e4c: SHL 00004e4d: PUSH9 0x29aaa12fa2a92927a9 00004e57: MUL 00004e58: DUP2 00004e59: MSTORE 00004e5a: PUSH1 0x20 00004e5c: ADD 00004e5d: SWAP3 00004e5e: SWAP2 00004e5f: POP 00004e60: POP 00004e61: JUMP 00004e62: JUMPDEST 00004e63: PUSH1 0x00 00004e65: PUSH2 0x4e6f 00004e68: PUSH1 0x9f 00004e6a: DUP4 00004e6b: PUSH2 0x0a58 00004e6e: JUMP 00004e6f: JUMPDEST 00004e70: PUSH32 0x4f726465722861646472657373207472616465722c616464726573732072656c 00004e91: DUP2 00004e92: MSTORE 00004e93: PUSH32 0x617965722c61646472657373206261736541737365742c616464726573732071 00004eb4: PUSH1 0x20 00004eb6: DUP3 00004eb7: ADD 00004eb8: MSTORE 00004eb9: PUSH32 0x756f746541737365742c75696e7432353620626173654173736574416d6f756e 00004eda: PUSH1 0x40 00004edc: DUP3 00004edd: ADD 00004ede: MSTORE 00004edf: PUSH32 0x742c75696e743235362071756f74654173736574416d6f756e742c75696e7432 00004f00: PUSH1 0x60 00004f02: DUP3 00004f03: ADD 00004f04: MSTORE 00004f05: PUSH32 0x353620676173546f6b656e416d6f756e742c6279746573333220646174612900 00004f26: PUSH1 0x80 00004f28: DUP3 00004f29: ADD 00004f2a: MSTORE 00004f2b: PUSH1 0x9f 00004f2d: ADD 00004f2e: SWAP3 00004f2f: SWAP2 00004f30: POP 00004f31: POP 00004f32: JUMP 00004f33: JUMPDEST 00004f34: PUSH1 0x00 00004f36: PUSH2 0x4f40 00004f39: PUSH1 0x20 00004f3b: DUP4 00004f3c: PUSH2 0x5b2d 00004f3f: JUMP 00004f40: JUMPDEST 00004f41: PUSH32 0x4d414b45525f4f4e4c595f4f524445525f43414e4e4f545f42455f54414b4552 00004f62: DUP2 00004f63: MSTORE 00004f64: PUSH1 0x20 00004f66: ADD 00004f67: SWAP3 00004f68: SWAP2 00004f69: POP 00004f6a: POP 00004f6b: JUMP 00004f6c: JUMPDEST 00004f6d: PUSH1 0x00 00004f6f: PUSH2 0x4f79 00004f72: PUSH1 0x0d 00004f74: DUP4 00004f75: PUSH2 0x5b2d 00004f78: JUMP 00004f79: JUMPDEST 00004f7a: PUSH32 0x494e56414c49445f4d4154434800000000000000000000000000000000000000 00004f9b: DUP2 00004f9c: MSTORE 00004f9d: PUSH1 0x20 00004f9f: ADD 00004fa0: SWAP3 00004fa1: SWAP2 00004fa2: POP 00004fa3: POP 00004fa4: JUMP 00004fa5: JUMPDEST 00004fa6: PUSH1 0x00 00004fa8: PUSH2 0x4fb2 00004fab: PUSH1 0x0d 00004fad: DUP4 00004fae: PUSH2 0x5b2d 00004fb1: JUMP 00004fb2: JUMPDEST 00004fb3: PUSH32 0x494e56414c49445f4f574e455200000000000000000000000000000000000000 00004fd4: DUP2 00004fd5: MSTORE 00004fd6: PUSH1 0x20 00004fd8: ADD 00004fd9: SWAP3 00004fda: SWAP2 00004fdb: POP 00004fdc: POP 00004fdd: JUMP 00004fde: JUMPDEST 00004fdf: PUSH1 0x00 00004fe1: PUSH2 0x4feb 00004fe4: PUSH1 0x16 00004fe6: DUP4 00004fe7: PUSH2 0x5b2d 00004fea: JUMP 00004feb: JUMPDEST 00004fec: PUSH32 0x54414b45525f4f524445525f4f5645525f4d4154434800000000000000000000 0000500d: DUP2 0000500e: MSTORE 0000500f: PUSH1 0x20 00005011: ADD 00005012: SWAP3 00005013: SWAP2 00005014: POP 00005015: POP 00005016: JUMP 00005017: JUMPDEST 00005018: PUSH1 0x00 0000501a: PUSH2 0x5024 0000501d: PUSH1 0x19 0000501f: DUP4 00005020: PUSH2 0x0a58 00005023: JUMP 00005024: JUMPDEST 00005025: PUSH32 0x454950373132446f6d61696e28737472696e67206e616d652900000000000000 00005046: DUP2 00005047: MSTORE 00005048: PUSH1 0x19 0000504a: ADD 0000504b: SWAP3 0000504c: SWAP2 0000504d: POP 0000504e: POP 0000504f: JUMP 00005050: JUMPDEST 00005051: PUSH1 0x00 00005053: PUSH2 0x505d 00005056: PUSH1 0x10 00005058: DUP4 00005059: PUSH2 0x5b2d 0000505c: JUMP 0000505d: JUMPDEST 0000505e: PUSH32 0x494e543235365f4144445f4552524f5200000000000000000000000000000000 0000507f: DUP2 00005080: MSTORE 00005081: PUSH1 0x20 00005083: ADD 00005084: SWAP3 00005085: SWAP2 00005086: POP 00005087: POP 00005088: JUMP 00005089: JUMPDEST 0000508a: PUSH1 0x00 0000508c: PUSH2 0x5096 0000508f: PUSH1 0x20 00005091: DUP4 00005092: PUSH2 0x5b2d 00005095: JUMP 00005096: JUMPDEST 00005097: PUSH32 0x424f52524f575f494e5445524553545f524154455f4558434545445f33303025 000050b8: DUP2 000050b9: MSTORE 000050ba: PUSH1 0x20 000050bc: ADD 000050bd: SWAP3 000050be: SWAP2 000050bf: POP 000050c0: POP 000050c1: JUMP 000050c2: JUMPDEST 000050c3: PUSH1 0x00 000050c5: PUSH2 0x50cf 000050c8: PUSH1 0x09 000050ca: DUP4 000050cb: PUSH2 0x5b2d 000050ce: JUMP 000050cf: JUMPDEST 000050d0: PUSH1 0x01 000050d2: PUSH1 0xb9 000050d4: SHL 000050d5: PUSH9 0x2727aa2fa7aba722a9 000050df: MUL 000050e0: DUP2 000050e1: MSTORE 000050e2: PUSH1 0x20 000050e4: ADD 000050e5: SWAP3 000050e6: SWAP2 000050e7: POP 000050e8: POP 000050e9: JUMP 000050ea: JUMPDEST 000050eb: PUSH1 0x00 000050ed: PUSH2 0x50f7 000050f0: PUSH1 0x09 000050f2: DUP4 000050f3: PUSH2 0x5b2d 000050f6: JUMP 000050f7: JUMPDEST 000050f8: PUSH1 0x01 000050fa: PUSH1 0xb9 000050fc: SHL 000050fd: PUSH9 0x20a2222fa2a92927a9 00005107: MUL 00005108: DUP2 00005109: MSTORE 0000510a: PUSH1 0x20 0000510c: ADD 0000510d: SWAP3 0000510e: SWAP2 0000510f: POP 00005110: POP 00005111: JUMP 00005112: JUMPDEST 00005113: PUSH1 0x00 00005115: PUSH2 0x511f 00005118: PUSH1 0x0e 0000511a: DUP4 0000511b: PUSH2 0x5b2d 0000511e: JUMP 0000511f: JUMPDEST 00005120: PUSH32 0x494e56414c49445f53454e444552000000000000000000000000000000000000 00005141: DUP2 00005142: MSTORE 00005143: PUSH1 0x20 00005145: ADD 00005146: SWAP3 00005147: SWAP2 00005148: POP 00005149: POP 0000514a: JUMP 0000514b: JUMPDEST 0000514c: PUSH1 0x00 0000514e: PUSH2 0x5158 00005151: PUSH1 0x23 00005153: DUP4 00005154: PUSH2 0x5b2d 00005157: JUMP 00005158: JUMPDEST 00005159: PUSH32 0x4d414b45525f4f524445525f43414e5f4e4f545f42455f4d41524b45545f4f52 0000517a: DUP2 0000517b: MSTORE 0000517c: PUSH1 0x01 0000517e: PUSH1 0xe9 00005180: SHL 00005181: PUSH3 0x2222a9 00005185: MUL 00005186: PUSH1 0x20 00005188: DUP3 00005189: ADD 0000518a: MSTORE 0000518b: PUSH1 0x40 0000518d: ADD 0000518e: SWAP3 0000518f: SWAP2 00005190: POP 00005191: POP 00005192: JUMP 00005193: JUMPDEST 00005194: PUSH1 0x00 00005196: PUSH2 0x51a0 00005199: PUSH1 0x0c 0000519b: DUP4 0000519c: PUSH2 0x5b2d 0000519f: JUMP 000051a0: JUMPDEST 000051a1: PUSH32 0x494e56414c49445f534944450000000000000000000000000000000000000000 000051c2: DUP2 000051c3: MSTORE 000051c4: PUSH1 0x20 000051c6: ADD 000051c7: SWAP3 000051c8: SWAP2 000051c9: POP 000051ca: POP 000051cb: JUMP 000051cc: JUMPDEST 000051cd: PUSH1 0x00 000051cf: PUSH2 0x51d9 000051d2: PUSH1 0x09 000051d4: DUP4 000051d5: PUSH2 0x5b2d 000051d8: JUMP 000051d9: JUMPDEST 000051da: PUSH1 0x01 000051dc: PUSH1 0xb9 000051de: SHL 000051df: PUSH9 0x26aaa62fa2a92927a9 000051e9: MUL 000051ea: DUP2 000051eb: MSTORE 000051ec: PUSH1 0x20 000051ee: ADD 000051ef: SWAP3 000051f0: SWAP2 000051f1: POP 000051f2: POP 000051f3: JUMP 000051f4: JUMPDEST 000051f5: PUSH1 0x00 000051f7: PUSH2 0x5201 000051fa: PUSH1 0x10 000051fc: DUP4 000051fd: PUSH2 0x5b2d 00005200: JUMP 00005201: JUMPDEST 00005202: PUSH32 0x4d41524b45545f4e4f545f455849535400000000000000000000000000000000 00005223: DUP2 00005224: MSTORE 00005225: PUSH1 0x20 00005227: ADD 00005228: SWAP3 00005229: SWAP2 0000522a: POP 0000522b: POP 0000522c: JUMP 0000522d: JUMPDEST 0000522e: PUSH1 0x00 00005230: PUSH2 0x523a 00005233: PUSH1 0x09 00005235: DUP4 00005236: PUSH2 0x5b2d 00005239: JUMP 0000523a: JUMPDEST 0000523b: PUSH1 0x01 0000523d: PUSH1 0xb9 0000523f: SHL 00005240: PUSH9 0x26a7a22fa2a92927a9 0000524a: MUL 0000524b: DUP2 0000524c: MSTORE 0000524d: PUSH1 0x20 0000524f: ADD 00005250: SWAP3 00005251: SWAP2 00005252: POP 00005253: POP 00005254: JUMP 00005255: JUMPDEST 00005256: DUP1 00005257: MLOAD 00005258: PUSH1 0x00 0000525a: SWAP1 0000525b: PUSH1 0x40 0000525d: DUP5 0000525e: ADD 0000525f: SWAP1 00005260: PUSH2 0x5269 00005263: DUP6 00005264: DUP3 00005265: PUSH2 0x48cc 00005268: JUMP 00005269: JUMPDEST 0000526a: POP 0000526b: PUSH1 0x20 0000526d: DUP4 0000526e: ADD 0000526f: MLOAD 00005270: DUP5 00005271: DUP3 00005272: SUB 00005273: PUSH1 0x20 00005275: DUP7 00005276: ADD 00005277: MSTORE 00005278: PUSH2 0x1c09 0000527b: DUP3 0000527c: DUP3 0000527d: PUSH2 0x488b 00005280: JUMP 00005281: JUMPDEST 00005282: DUP1 00005283: MLOAD 00005284: PUSH1 0x60 00005286: DUP4 00005287: ADD 00005288: SWAP1 00005289: PUSH2 0x5292 0000528c: DUP5 0000528d: DUP3 0000528e: PUSH2 0x48c3 00005291: JUMP 00005292: JUMPDEST 00005293: POP 00005294: PUSH1 0x20 00005296: DUP3 00005297: ADD 00005298: MLOAD 00005299: PUSH2 0x52a5 0000529c: PUSH1 0x20 0000529e: DUP6 0000529f: ADD 000052a0: DUP3 000052a1: PUSH2 0x48c3 000052a4: JUMP 000052a5: JUMPDEST 000052a6: POP 000052a7: PUSH1 0x40 000052a9: DUP3 000052aa: ADD 000052ab: MLOAD 000052ac: PUSH2 0x2bd2 000052af: PUSH1 0x40 000052b1: DUP6 000052b2: ADD 000052b3: DUP3 000052b4: PUSH2 0x48c3 000052b7: JUMP 000052b8: JUMPDEST 000052b9: DUP1 000052ba: MLOAD 000052bb: PUSH2 0x0120 000052be: DUP4 000052bf: ADD 000052c0: SWAP1 000052c1: PUSH2 0x52ca 000052c4: DUP5 000052c5: DUP3 000052c6: PUSH2 0x4798 000052c9: JUMP 000052ca: JUMPDEST 000052cb: POP 000052cc: PUSH1 0x20 000052ce: DUP3 000052cf: ADD 000052d0: MLOAD 000052d1: PUSH2 0x52dd 000052d4: PUSH1 0x20 000052d6: DUP6 000052d7: ADD 000052d8: DUP3 000052d9: PUSH2 0x546c 000052dc: JUMP 000052dd: JUMPDEST 000052de: POP 000052df: PUSH1 0x40 000052e1: DUP3 000052e2: ADD 000052e3: MLOAD 000052e4: PUSH2 0x52f0 000052e7: PUSH1 0x40 000052e9: DUP6 000052ea: ADD 000052eb: DUP3 000052ec: PUSH2 0x4798 000052ef: JUMP 000052f0: JUMPDEST 000052f1: POP 000052f2: PUSH1 0x60 000052f4: DUP3 000052f5: ADD 000052f6: MLOAD 000052f7: PUSH2 0x5303 000052fa: PUSH1 0x60 000052fc: DUP6 000052fd: ADD 000052fe: DUP3 000052ff: PUSH2 0x4798 00005302: JUMP 00005303: JUMPDEST 00005304: POP 00005305: PUSH1 0x80 00005307: DUP3 00005308: ADD 00005309: MLOAD 0000530a: PUSH2 0x5316 0000530d: PUSH1 0x80 0000530f: DUP6 00005310: ADD 00005311: DUP3 00005312: PUSH2 0x4871 00005315: JUMP 00005316: JUMPDEST 00005317: POP 00005318: PUSH1 0xa0 0000531a: DUP3 0000531b: ADD 0000531c: MLOAD 0000531d: PUSH2 0x5329 00005320: PUSH1 0xa0 00005322: DUP6 00005323: ADD 00005324: DUP3 00005325: PUSH2 0x4871 00005328: JUMP 00005329: JUMPDEST 0000532a: POP 0000532b: PUSH1 0xc0 0000532d: DUP3 0000532e: ADD 0000532f: MLOAD 00005330: PUSH2 0x533c 00005333: PUSH1 0xc0 00005335: DUP6 00005336: ADD 00005337: DUP3 00005338: PUSH2 0x4871 0000533b: JUMP 0000533c: JUMPDEST 0000533d: POP 0000533e: PUSH1 0xe0 00005340: DUP3 00005341: ADD 00005342: MLOAD 00005343: PUSH2 0x534f 00005346: PUSH1 0xe0 00005348: DUP6 00005349: ADD 0000534a: DUP3 0000534b: PUSH2 0x4871 0000534e: JUMP 0000534f: JUMPDEST 00005350: POP 00005351: PUSH2 0x0100 00005354: DUP3 00005355: ADD 00005356: MLOAD 00005357: PUSH2 0x2bd2 0000535a: PUSH2 0x0100 0000535d: DUP6 0000535e: ADD 0000535f: DUP3 00005360: PUSH2 0x4868 00005363: JUMP 00005364: JUMPDEST 00005365: DUP1 00005366: MLOAD 00005367: PUSH1 0x80 00005369: DUP4 0000536a: ADD 0000536b: SWAP1 0000536c: PUSH2 0x5375 0000536f: DUP5 00005370: DUP3 00005371: PUSH2 0x4868 00005374: JUMP 00005375: JUMPDEST 00005376: POP 00005377: PUSH1 0x20 00005379: DUP3 0000537a: ADD 0000537b: MLOAD 0000537c: PUSH2 0x5388 0000537f: PUSH1 0x20 00005381: DUP6 00005382: ADD 00005383: DUP3 00005384: PUSH2 0x48d5 00005387: JUMP 00005388: JUMPDEST 00005389: POP 0000538a: PUSH1 0x40 0000538c: DUP3 0000538d: ADD 0000538e: MLOAD 0000538f: PUSH2 0x539b 00005392: PUSH1 0x40 00005394: DUP6 00005395: ADD 00005396: DUP3 00005397: PUSH2 0x4871 0000539a: JUMP 0000539b: JUMPDEST 0000539c: POP 0000539d: PUSH1 0x60 0000539f: DUP3 000053a0: ADD 000053a1: MLOAD 000053a2: PUSH2 0x2bd2 000053a5: PUSH1 0x60 000053a7: DUP6 000053a8: ADD 000053a9: DUP3 000053aa: PUSH2 0x4871 000053ad: JUMP 000053ae: JUMPDEST 000053af: DUP1 000053b0: MLOAD 000053b1: PUSH1 0xe0 000053b3: DUP4 000053b4: ADD 000053b5: SWAP1 000053b6: PUSH2 0x53bf 000053b9: DUP5 000053ba: DUP3 000053bb: PUSH2 0x4798 000053be: JUMP 000053bf: JUMPDEST 000053c0: POP 000053c1: PUSH1 0x20 000053c3: DUP3 000053c4: ADD 000053c5: MLOAD 000053c6: PUSH2 0x53d2 000053c9: PUSH1 0x20 000053cb: DUP6 000053cc: ADD 000053cd: DUP3 000053ce: PUSH2 0x4798 000053d1: JUMP 000053d2: JUMPDEST 000053d3: POP 000053d4: PUSH1 0x40 000053d6: DUP3 000053d7: ADD 000053d8: MLOAD 000053d9: PUSH2 0x53e5 000053dc: PUSH1 0x40 000053de: DUP6 000053df: ADD 000053e0: DUP3 000053e1: PUSH2 0x4871 000053e4: JUMP 000053e5: JUMPDEST 000053e6: POP 000053e7: PUSH1 0x60 000053e9: DUP3 000053ea: ADD 000053eb: MLOAD 000053ec: PUSH2 0x53f8 000053ef: PUSH1 0x60 000053f1: DUP6 000053f2: ADD 000053f3: DUP3 000053f4: PUSH2 0x4871 000053f7: JUMP 000053f8: JUMPDEST 000053f9: POP 000053fa: PUSH1 0x80 000053fc: DUP3 000053fd: ADD 000053fe: MLOAD 000053ff: PUSH2 0x540b 00005402: PUSH1 0x80 00005404: DUP6 00005405: ADD 00005406: DUP3 00005407: PUSH2 0x4871 0000540a: JUMP 0000540b: JUMPDEST 0000540c: POP 0000540d: PUSH1 0xa0 0000540f: DUP3 00005410: ADD 00005411: MLOAD 00005412: PUSH2 0x541e 00005415: PUSH1 0xa0 00005417: DUP6 00005418: ADD 00005419: DUP3 0000541a: PUSH2 0x4871 0000541d: JUMP 0000541e: JUMPDEST 0000541f: POP 00005420: PUSH1 0xc0 00005422: DUP3 00005423: ADD 00005424: MLOAD 00005425: PUSH2 0x2bd2 00005428: PUSH1 0xc0 0000542a: DUP6 0000542b: ADD 0000542c: DUP3 0000542d: PUSH2 0x4868 00005430: JUMP 00005431: JUMPDEST 00005432: DUP1 00005433: MLOAD 00005434: PUSH1 0x60 00005436: DUP4 00005437: ADD 00005438: SWAP1 00005439: PUSH2 0x5442 0000543c: DUP5 0000543d: DUP3 0000543e: PUSH2 0x4798 00005441: JUMP 00005442: JUMPDEST 00005443: POP 00005444: PUSH1 0x20 00005446: DUP3 00005447: ADD 00005448: MLOAD 00005449: PUSH2 0x5455 0000544c: PUSH1 0x20 0000544e: DUP6 0000544f: ADD 00005450: DUP3 00005451: PUSH2 0x4798 00005454: JUMP 00005455: JUMPDEST 00005456: POP 00005457: PUSH1 0x40 00005459: DUP3 0000545a: ADD 0000545b: MLOAD 0000545c: PUSH2 0x2bd2 0000545f: PUSH1 0x40 00005461: DUP6 00005462: ADD 00005463: DUP3 00005464: PUSH2 0x4798 00005467: JUMP 00005468: JUMPDEST 00005469: SWAP1 0000546a: MSTORE 0000546b: JUMP 0000546c: JUMPDEST 0000546d: PUSH2 0x4792 00005470: DUP2 00005471: PUSH2 0x5b5d 00005474: JUMP 00005475: JUMPDEST 00005476: PUSH2 0x4792 00005479: DUP2 0000547a: PUSH2 0x5b70 0000547d: JUMP 0000547e: JUMPDEST 0000547f: PUSH2 0x4792 00005482: DUP2 00005483: PUSH2 0x5b79 00005486: JUMP 00005487: JUMPDEST 00005488: PUSH1 0x00 0000548a: PUSH2 0x5493 0000548d: DUP3 0000548e: DUP6 0000548f: PUSH2 0x487a 00005492: JUMP 00005493: JUMPDEST 00005494: PUSH1 0x20 00005496: DUP3 00005497: ADD 00005498: SWAP2 00005499: POP 0000549a: PUSH2 0x54a3 0000549d: DUP3 0000549e: DUP5 0000549f: PUSH2 0x487a 000054a2: JUMP 000054a3: JUMPDEST 000054a4: POP 000054a5: PUSH1 0x20 000054a7: ADD 000054a8: SWAP3 000054a9: SWAP2 000054aa: POP 000054ab: POP 000054ac: JUMP 000054ad: JUMPDEST 000054ae: PUSH1 0x00 000054b0: PUSH2 0x54b8 000054b3: DUP3 000054b4: PUSH2 0x4a0a 000054b7: JUMP 000054b8: JUMPDEST 000054b9: SWAP2 000054ba: POP 000054bb: PUSH2 0x54c4 000054be: DUP3 000054bf: DUP5 000054c0: PUSH2 0x487a 000054c3: JUMP 000054c4: JUMPDEST 000054c5: POP 000054c6: PUSH1 0x20 000054c8: ADD 000054c9: SWAP2 000054ca: SWAP1 000054cb: POP 000054cc: JUMP 000054cd: JUMPDEST 000054ce: PUSH1 0x00 000054d0: PUSH2 0x54d8 000054d3: DUP3 000054d4: PUSH2 0x4aee 000054d7: JUMP 000054d8: JUMPDEST 000054d9: SWAP2 000054da: POP 000054db: PUSH2 0x5493 000054de: DUP3 000054df: DUP6 000054e0: PUSH2 0x487a 000054e3: JUMP 000054e4: JUMPDEST 000054e5: PUSH1 0x00 000054e7: PUSH2 0x0d92 000054ea: DUP3 000054eb: PUSH2 0x4e62 000054ee: JUMP 000054ef: JUMPDEST 000054f0: PUSH1 0x00 000054f2: PUSH2 0x0d92 000054f5: DUP3 000054f6: PUSH2 0x5017 000054f9: JUMP 000054fa: JUMPDEST 000054fb: PUSH1 0x20 000054fd: DUP2 000054fe: ADD 000054ff: PUSH2 0x0d92 00005502: DUP3 00005503: DUP5 00005504: PUSH2 0x4798 00005507: JUMP 00005508: JUMPDEST 00005509: PUSH1 0x20 0000550b: DUP2 0000550c: ADD 0000550d: PUSH2 0x0d92 00005510: DUP3 00005511: DUP5 00005512: PUSH2 0x4789 00005515: JUMP 00005516: JUMPDEST 00005517: PUSH1 0x20 00005519: DUP1 0000551a: DUP3 0000551b: MSTORE 0000551c: DUP2 0000551d: ADD 0000551e: PUSH2 0x0933 00005521: DUP2 00005522: DUP5 00005523: PUSH2 0x480f 00005526: JUMP 00005527: JUMPDEST 00005528: PUSH1 0x20 0000552a: DUP2 0000552b: ADD 0000552c: PUSH2 0x0d92 0000552f: DUP3 00005530: DUP5 00005531: PUSH2 0x4868 00005534: JUMP 00005535: JUMPDEST 00005536: PUSH1 0x40 00005538: DUP2 00005539: ADD 0000553a: PUSH2 0x5543 0000553d: DUP3 0000553e: DUP6 0000553f: PUSH2 0x4868 00005542: JUMP 00005543: JUMPDEST 00005544: PUSH2 0x0933 00005547: PUSH1 0x20 00005549: DUP4 0000554a: ADD 0000554b: DUP5 0000554c: PUSH2 0x5475 0000554f: JUMP 00005550: JUMPDEST 00005551: PUSH1 0x80 00005553: DUP2 00005554: ADD 00005555: PUSH2 0x555e 00005558: DUP3 00005559: DUP8 0000555a: PUSH2 0x4871 0000555d: JUMP 0000555e: JUMPDEST 0000555f: PUSH2 0x556b 00005562: PUSH1 0x20 00005564: DUP4 00005565: ADD 00005566: DUP7 00005567: PUSH2 0x547e 0000556a: JUMP 0000556b: JUMPDEST 0000556c: PUSH2 0x5578 0000556f: PUSH1 0x40 00005571: DUP4 00005572: ADD 00005573: DUP6 00005574: PUSH2 0x4871 00005577: JUMP 00005578: JUMPDEST 00005579: PUSH2 0x1c09 0000557c: PUSH1 0x60 0000557e: DUP4 0000557f: ADD 00005580: DUP5 00005581: PUSH2 0x4871 00005584: JUMP 00005585: JUMPDEST 00005586: PUSH1 0x20 00005588: DUP1 00005589: DUP3 0000558a: MSTORE 0000558b: DUP2 0000558c: ADD 0000558d: PUSH2 0x0d92 00005590: DUP2 00005591: PUSH2 0x4900 00005594: JUMP 00005595: JUMPDEST 00005596: PUSH1 0x20 00005598: DUP1 00005599: DUP3 0000559a: MSTORE 0000559b: DUP2 0000559c: ADD 0000559d: PUSH2 0x0d92 000055a0: DUP2 000055a1: PUSH2 0x495f 000055a4: JUMP 000055a5: JUMPDEST 000055a6: PUSH1 0x20 000055a8: DUP1 000055a9: DUP3 000055aa: MSTORE 000055ab: DUP2 000055ac: ADD 000055ad: PUSH2 0x0d92 000055b0: DUP2 000055b1: PUSH2 0x4998 000055b4: JUMP 000055b5: JUMPDEST 000055b6: PUSH1 0x20 000055b8: DUP1 000055b9: DUP3 000055ba: MSTORE 000055bb: DUP2 000055bc: ADD 000055bd: PUSH2 0x0d92 000055c0: DUP2 000055c1: PUSH2 0x49d1 000055c4: JUMP 000055c5: JUMPDEST 000055c6: PUSH1 0x20 000055c8: DUP1 000055c9: DUP3 000055ca: MSTORE 000055cb: DUP2 000055cc: ADD 000055cd: PUSH2 0x0d92 000055d0: DUP2 000055d1: PUSH2 0x4a43 000055d4: JUMP 000055d5: JUMPDEST 000055d6: PUSH1 0x20 000055d8: DUP1 000055d9: DUP3 000055da: MSTORE 000055db: DUP2 000055dc: ADD 000055dd: PUSH2 0x0d92 000055e0: DUP2 000055e1: PUSH2 0x4a7c 000055e4: JUMP 000055e5: JUMPDEST 000055e6: PUSH1 0x20 000055e8: DUP1 000055e9: DUP3 000055ea: MSTORE 000055eb: DUP2 000055ec: ADD 000055ed: PUSH2 0x0d92 000055f0: DUP2 000055f1: PUSH2 0x4ab5 000055f4: JUMP 000055f5: JUMPDEST 000055f6: PUSH1 0x20 000055f8: DUP1 000055f9: DUP3 000055fa: MSTORE 000055fb: DUP2 000055fc: ADD 000055fd: PUSH2 0x0d92 00005600: DUP2 00005601: PUSH2 0x4b0f 00005604: JUMP 00005605: JUMPDEST 00005606: PUSH1 0x20 00005608: DUP1 00005609: DUP3 0000560a: MSTORE 0000560b: DUP2 0000560c: ADD 0000560d: PUSH2 0x0d92 00005610: DUP2 00005611: PUSH2 0x4b6e 00005614: JUMP 00005615: JUMPDEST 00005616: PUSH1 0x20 00005618: DUP1 00005619: DUP3 0000561a: MSTORE 0000561b: DUP2 0000561c: ADD 0000561d: PUSH2 0x0d92 00005620: DUP2 00005621: PUSH2 0x4bb7 00005624: JUMP 00005625: JUMPDEST 00005626: PUSH1 0x20 00005628: DUP1 00005629: DUP3 0000562a: MSTORE 0000562b: DUP2 0000562c: ADD 0000562d: PUSH2 0x0d92 00005630: DUP2 00005631: PUSH2 0x4bf0 00005634: JUMP 00005635: JUMPDEST 00005636: PUSH1 0x20 00005638: DUP1 00005639: DUP3 0000563a: MSTORE 0000563b: DUP2 0000563c: ADD 0000563d: PUSH2 0x0d92 00005640: DUP2 00005641: PUSH2 0x4c29 00005644: JUMP 00005645: JUMPDEST 00005646: PUSH1 0x20 00005648: DUP1 00005649: DUP3 0000564a: MSTORE 0000564b: DUP2 0000564c: ADD 0000564d: PUSH2 0x0d92 00005650: DUP2 00005651: PUSH2 0x4c62 00005654: JUMP 00005655: JUMPDEST 00005656: PUSH1 0x20 00005658: DUP1 00005659: DUP3 0000565a: MSTORE 0000565b: DUP2 0000565c: ADD 0000565d: PUSH2 0x0d92 00005660: DUP2 00005661: PUSH2 0x4c9b 00005664: JUMP 00005665: JUMPDEST 00005666: PUSH1 0x20 00005668: DUP1 00005669: DUP3 0000566a: MSTORE 0000566b: DUP2 0000566c: ADD 0000566d: PUSH2 0x0d92 00005670: DUP2 00005671: PUSH2 0x4ce4 00005674: JUMP 00005675: JUMPDEST 00005676: PUSH1 0x20 00005678: DUP1 00005679: DUP3 0000567a: MSTORE 0000567b: DUP2 0000567c: ADD 0000567d: PUSH2 0x0d92 00005680: DUP2 00005681: PUSH2 0x4d1d 00005684: JUMP 00005685: JUMPDEST 00005686: PUSH1 0x20 00005688: DUP1 00005689: DUP3 0000568a: MSTORE 0000568b: DUP2 0000568c: ADD 0000568d: PUSH2 0x0d92 00005690: DUP2 00005691: PUSH2 0x4d56 00005694: JUMP 00005695: JUMPDEST 00005696: PUSH1 0x20 00005698: DUP1 00005699: DUP3 0000569a: MSTORE 0000569b: DUP2 0000569c: ADD 0000569d: PUSH2 0x0d92 000056a0: DUP2 000056a1: PUSH2 0x4d8f 000056a4: JUMP 000056a5: JUMPDEST 000056a6: PUSH1 0x20 000056a8: DUP1 000056a9: DUP3 000056aa: MSTORE 000056ab: DUP2 000056ac: ADD 000056ad: PUSH2 0x0d92 000056b0: DUP2 000056b1: PUSH2 0x4dc8 000056b4: JUMP 000056b5: JUMPDEST 000056b6: PUSH1 0x20 000056b8: DUP1 000056b9: DUP3 000056ba: MSTORE 000056bb: DUP2 000056bc: ADD 000056bd: PUSH2 0x0d92 000056c0: DUP2 000056c1: PUSH2 0x4e01 000056c4: JUMP 000056c5: JUMPDEST 000056c6: PUSH1 0x20 000056c8: DUP1 000056c9: DUP3 000056ca: MSTORE 000056cb: DUP2 000056cc: ADD 000056cd: PUSH2 0x0d92 000056d0: DUP2 000056d1: PUSH2 0x4e3a 000056d4: JUMP 000056d5: JUMPDEST 000056d6: PUSH1 0x20 000056d8: DUP1 000056d9: DUP3 000056da: MSTORE 000056db: DUP2 000056dc: ADD 000056dd: PUSH2 0x0d92 000056e0: DUP2 000056e1: PUSH2 0x4f33 000056e4: JUMP 000056e5: JUMPDEST 000056e6: PUSH1 0x20 000056e8: DUP1 000056e9: DUP3 000056ea: MSTORE 000056eb: DUP2 000056ec: ADD 000056ed: PUSH2 0x0d92 000056f0: DUP2 000056f1: PUSH2 0x4f6c 000056f4: JUMP 000056f5: JUMPDEST 000056f6: PUSH1 0x20 000056f8: DUP1 000056f9: DUP3 000056fa: MSTORE 000056fb: DUP2 000056fc: ADD 000056fd: PUSH2 0x0d92 00005700: DUP2 00005701: PUSH2 0x4fa5 00005704: JUMP 00005705: JUMPDEST 00005706: PUSH1 0x20 00005708: DUP1 00005709: DUP3 0000570a: MSTORE 0000570b: DUP2 0000570c: ADD 0000570d: PUSH2 0x0d92 00005710: DUP2 00005711: PUSH2 0x4fde 00005714: JUMP 00005715: JUMPDEST 00005716: PUSH1 0x20 00005718: DUP1 00005719: DUP3 0000571a: MSTORE 0000571b: DUP2 0000571c: ADD 0000571d: PUSH2 0x0d92 00005720: DUP2 00005721: PUSH2 0x5050 00005724: JUMP 00005725: JUMPDEST 00005726: PUSH1 0x20 00005728: DUP1 00005729: DUP3 0000572a: MSTORE 0000572b: DUP2 0000572c: ADD 0000572d: PUSH2 0x0d92 00005730: DUP2 00005731: PUSH2 0x5089 00005734: JUMP 00005735: JUMPDEST 00005736: PUSH1 0x20 00005738: DUP1 00005739: DUP3 0000573a: MSTORE 0000573b: DUP2 0000573c: ADD 0000573d: PUSH2 0x0d92 00005740: DUP2 00005741: PUSH2 0x50c2 00005744: JUMP 00005745: JUMPDEST 00005746: PUSH1 0x20 00005748: DUP1 00005749: DUP3 0000574a: MSTORE 0000574b: DUP2 0000574c: ADD 0000574d: PUSH2 0x0d92 00005750: DUP2 00005751: PUSH2 0x50ea 00005754: JUMP 00005755: JUMPDEST 00005756: PUSH1 0x20 00005758: DUP1 00005759: DUP3 0000575a: MSTORE 0000575b: DUP2 0000575c: ADD 0000575d: PUSH2 0x0d92 00005760: DUP2 00005761: PUSH2 0x5112 00005764: JUMP 00005765: JUMPDEST 00005766: PUSH1 0x20 00005768: DUP1 00005769: DUP3 0000576a: MSTORE 0000576b: DUP2 0000576c: ADD 0000576d: PUSH2 0x0d92 00005770: DUP2 00005771: PUSH2 0x514b 00005774: JUMP 00005775: JUMPDEST 00005776: PUSH1 0x20 00005778: DUP1 00005779: DUP3 0000577a: MSTORE 0000577b: DUP2 0000577c: ADD 0000577d: PUSH2 0x0d92 00005780: DUP2 00005781: PUSH2 0x5193 00005784: JUMP 00005785: JUMPDEST 00005786: PUSH1 0x20 00005788: DUP1 00005789: DUP3 0000578a: MSTORE 0000578b: DUP2 0000578c: ADD 0000578d: PUSH2 0x0d92 00005790: DUP2 00005791: PUSH2 0x51cc 00005794: JUMP 00005795: JUMPDEST 00005796: PUSH1 0x20 00005798: DUP1 00005799: DUP3 0000579a: MSTORE 0000579b: DUP2 0000579c: ADD 0000579d: PUSH2 0x0d92 000057a0: DUP2 000057a1: PUSH2 0x51f4 000057a4: JUMP 000057a5: JUMPDEST 000057a6: PUSH1 0x20 000057a8: DUP1 000057a9: DUP3 000057aa: MSTORE 000057ab: DUP2 000057ac: ADD 000057ad: PUSH2 0x0d92 000057b0: DUP2 000057b1: PUSH2 0x522d 000057b4: JUMP 000057b5: JUMPDEST 000057b6: PUSH1 0x60 000057b8: DUP2 000057b9: ADD 000057ba: PUSH2 0x0d92 000057bd: DUP3 000057be: DUP5 000057bf: PUSH2 0x5281 000057c2: JUMP 000057c3: JUMPDEST 000057c4: PUSH2 0x0120 000057c7: DUP2 000057c8: ADD 000057c9: PUSH2 0x0d92 000057cc: DUP3 000057cd: DUP5 000057ce: PUSH2 0x52b8 000057d1: JUMP 000057d2: JUMPDEST 000057d3: PUSH1 0x80 000057d5: DUP2 000057d6: ADD 000057d7: PUSH2 0x0d92 000057da: DUP3 000057db: DUP5 000057dc: PUSH2 0x5364 000057df: JUMP 000057e0: JUMPDEST 000057e1: PUSH1 0xe0 000057e3: DUP2 000057e4: ADD 000057e5: PUSH2 0x0d92 000057e8: DUP3 000057e9: DUP5 000057ea: PUSH2 0x53ae 000057ed: JUMP 000057ee: JUMPDEST 000057ef: PUSH2 0x01a0 000057f2: DUP2 000057f3: ADD 000057f4: PUSH2 0x57fd 000057f7: DUP3 000057f8: DUP15 000057f9: PUSH2 0x5431 000057fc: JUMP 000057fd: JUMPDEST 000057fe: PUSH2 0x580a 00005801: PUSH1 0x60 00005803: DUP4 00005804: ADD 00005805: DUP14 00005806: PUSH2 0x4798 00005809: JUMP 0000580a: JUMPDEST 0000580b: PUSH2 0x5817 0000580e: PUSH1 0x80 00005810: DUP4 00005811: ADD 00005812: DUP13 00005813: PUSH2 0x4798 00005816: JUMP 00005817: JUMPDEST 00005818: PUSH2 0x5824 0000581b: PUSH1 0xa0 0000581d: DUP4 0000581e: ADD 0000581f: DUP12 00005820: PUSH2 0x4798 00005823: JUMP 00005824: JUMPDEST 00005825: PUSH2 0x5831 00005828: PUSH1 0xc0 0000582a: DUP4 0000582b: ADD 0000582c: DUP11 0000582d: PUSH2 0x4871 00005830: JUMP 00005831: JUMPDEST 00005832: PUSH2 0x583e 00005835: PUSH1 0xe0 00005837: DUP4 00005838: ADD 00005839: DUP10 0000583a: PUSH2 0x4871 0000583d: JUMP 0000583e: JUMPDEST 0000583f: PUSH2 0x584c 00005842: PUSH2 0x0100 00005845: DUP4 00005846: ADD 00005847: DUP9 00005848: PUSH2 0x4871 0000584b: JUMP 0000584c: JUMPDEST 0000584d: PUSH2 0x585a 00005850: PUSH2 0x0120 00005853: DUP4 00005854: ADD 00005855: DUP8 00005856: PUSH2 0x4871 00005859: JUMP 0000585a: JUMPDEST 0000585b: PUSH2 0x5868 0000585e: PUSH2 0x0140 00005861: DUP4 00005862: ADD 00005863: DUP7 00005864: PUSH2 0x4871 00005867: JUMP 00005868: JUMPDEST 00005869: PUSH2 0x5876 0000586c: PUSH2 0x0160 0000586f: DUP4 00005870: ADD 00005871: DUP6 00005872: PUSH2 0x4871 00005875: JUMP 00005876: JUMPDEST 00005877: PUSH2 0x5884 0000587a: PUSH2 0x0180 0000587d: DUP4 0000587e: ADD 0000587f: DUP5 00005880: PUSH2 0x4871 00005883: JUMP 00005884: JUMPDEST 00005885: SWAP13 00005886: SWAP12 00005887: POP 00005888: POP 00005889: POP 0000588a: POP 0000588b: POP 0000588c: POP 0000588d: POP 0000588e: POP 0000588f: POP 00005890: POP 00005891: POP 00005892: POP 00005893: JUMP 00005894: JUMPDEST 00005895: PUSH1 0x80 00005897: DUP2 00005898: ADD 00005899: PUSH2 0x58a2 0000589c: DUP3 0000589d: DUP8 0000589e: PUSH2 0x5468 000058a1: JUMP 000058a2: JUMPDEST 000058a3: PUSH2 0x58af 000058a6: PUSH1 0x20 000058a8: DUP4 000058a9: ADD 000058aa: DUP7 000058ab: PUSH2 0x4798 000058ae: JUMP 000058af: JUMPDEST 000058b0: PUSH2 0x58bc 000058b3: PUSH1 0x40 000058b5: DUP4 000058b6: ADD 000058b7: DUP6 000058b8: PUSH2 0x4798 000058bb: JUMP 000058bc: JUMPDEST 000058bd: PUSH2 0x1c09 000058c0: PUSH1 0x60 000058c2: DUP4 000058c3: ADD 000058c4: DUP5 000058c5: PUSH2 0x4798 000058c8: JUMP 000058c9: JUMPDEST 000058ca: PUSH1 0xe0 000058cc: DUP2 000058cd: ADD 000058ce: PUSH2 0x58d7 000058d1: DUP3 000058d2: DUP13 000058d3: PUSH2 0x5468 000058d6: JUMP 000058d7: JUMPDEST 000058d8: PUSH2 0x58e4 000058db: PUSH1 0x20 000058dd: DUP4 000058de: ADD 000058df: DUP12 000058e0: PUSH2 0x4798 000058e3: JUMP 000058e4: JUMPDEST 000058e5: PUSH2 0x58f1 000058e8: PUSH1 0x40 000058ea: DUP4 000058eb: ADD 000058ec: DUP11 000058ed: PUSH2 0x4798 000058f0: JUMP 000058f1: JUMPDEST 000058f2: PUSH2 0x58fe 000058f5: PUSH1 0x60 000058f7: DUP4 000058f8: ADD 000058f9: DUP10 000058fa: PUSH2 0x4798 000058fd: JUMP 000058fe: JUMPDEST 000058ff: DUP2 00005900: DUP2 00005901: SUB 00005902: PUSH1 0x80 00005904: DUP4 00005905: ADD 00005906: MSTORE 00005907: PUSH2 0x5911 0000590a: DUP2 0000590b: DUP8 0000590c: DUP10 0000590d: PUSH2 0x48de 00005910: JUMP 00005911: JUMPDEST 00005912: SWAP1 00005913: POP 00005914: DUP2 00005915: DUP2 00005916: SUB 00005917: PUSH1 0xa0 00005919: DUP4 0000591a: ADD 0000591b: MSTORE 0000591c: PUSH2 0x5926 0000591f: DUP2 00005920: DUP6 00005921: DUP8 00005922: PUSH2 0x48de 00005925: JUMP 00005926: JUMPDEST 00005927: SWAP1 00005928: POP 00005929: PUSH2 0x5935 0000592c: PUSH1 0xc0 0000592e: DUP4 0000592f: ADD 00005930: DUP5 00005931: PUSH2 0x547e 00005934: JUMP 00005935: JUMPDEST 00005936: SWAP11 00005937: SWAP10 00005938: POP 00005939: POP 0000593a: POP 0000593b: POP 0000593c: POP 0000593d: POP 0000593e: POP 0000593f: POP 00005940: POP 00005941: POP 00005942: JUMP 00005943: JUMPDEST 00005944: PUSH1 0x60 00005946: DUP2 00005947: ADD 00005948: PUSH2 0x5951 0000594b: DUP3 0000594c: DUP7 0000594d: PUSH2 0x5468 00005950: JUMP 00005951: JUMPDEST 00005952: PUSH2 0x595e 00005955: PUSH1 0x20 00005957: DUP4 00005958: ADD 00005959: DUP6 0000595a: PUSH2 0x4798 0000595d: JUMP 0000595e: JUMPDEST 0000595f: PUSH2 0x0bb4 00005962: PUSH1 0x40 00005964: DUP4 00005965: ADD 00005966: DUP5 00005967: PUSH2 0x546c 0000596a: JUMP 0000596b: JUMPDEST 0000596c: PUSH1 0x60 0000596e: DUP2 0000596f: ADD 00005970: PUSH2 0x5979 00005973: DUP3 00005974: DUP7 00005975: PUSH2 0x5468 00005978: JUMP 00005979: JUMPDEST 0000597a: DUP2 0000597b: DUP2 0000597c: SUB 0000597d: PUSH1 0x20 0000597f: DUP4 00005980: ADD 00005981: MSTORE 00005982: PUSH2 0x598b 00005985: DUP2 00005986: DUP6 00005987: PUSH2 0x47a1 0000598a: JUMP 0000598b: JUMPDEST 0000598c: SWAP1 0000598d: POP 0000598e: PUSH2 0x0bb4 00005991: PUSH1 0x40 00005993: DUP4 00005994: ADD 00005995: DUP5 00005996: PUSH2 0x4871 00005999: JUMP 0000599a: JUMPDEST 0000599b: PUSH1 0x40 0000599d: DUP2 0000599e: ADD 0000599f: PUSH2 0x59a8 000059a2: DUP3 000059a3: DUP6 000059a4: PUSH2 0x5468 000059a7: JUMP 000059a8: JUMPDEST 000059a9: PUSH2 0x0933 000059ac: PUSH1 0x20 000059ae: DUP4 000059af: ADD 000059b0: DUP5 000059b1: PUSH2 0x4871 000059b4: JUMP 000059b5: JUMPDEST 000059b6: PUSH2 0x0100 000059b9: DUP2 000059ba: ADD 000059bb: PUSH2 0x59c4 000059be: DUP3 000059bf: DUP6 000059c0: PUSH2 0x5468 000059c3: JUMP 000059c4: JUMPDEST 000059c5: PUSH2 0x0933 000059c8: PUSH1 0x20 000059ca: DUP4 000059cb: ADD 000059cc: DUP5 000059cd: PUSH2 0x53ae 000059d0: JUMP 000059d1: JUMPDEST 000059d2: PUSH1 0x60 000059d4: DUP2 000059d5: ADD 000059d6: PUSH2 0x59df 000059d9: DUP3 000059da: DUP7 000059db: PUSH2 0x5468 000059de: JUMP 000059df: JUMPDEST 000059e0: PUSH2 0x59ec 000059e3: PUSH1 0x20 000059e5: DUP4 000059e6: ADD 000059e7: DUP6 000059e8: PUSH2 0x546c 000059eb: JUMP 000059ec: JUMPDEST 000059ed: PUSH2 0x0bb4 000059f0: PUSH1 0x40 000059f2: DUP4 000059f3: ADD 000059f4: DUP5 000059f5: PUSH2 0x4868 000059f8: JUMP 000059f9: JUMPDEST 000059fa: PUSH1 0xc0 000059fc: DUP2 000059fd: ADD 000059fe: PUSH2 0x5a07 00005a01: DUP3 00005a02: DUP10 00005a03: PUSH2 0x5468 00005a06: JUMP 00005a07: JUMPDEST 00005a08: PUSH2 0x5a14 00005a0b: PUSH1 0x20 00005a0d: DUP4 00005a0e: ADD 00005a0f: DUP9 00005a10: PUSH2 0x546c 00005a13: JUMP 00005a14: JUMPDEST 00005a15: PUSH2 0x5a21 00005a18: PUSH1 0x40 00005a1a: DUP4 00005a1b: ADD 00005a1c: DUP8 00005a1d: PUSH2 0x4871 00005a20: JUMP 00005a21: JUMPDEST 00005a22: PUSH2 0x5a2e 00005a25: PUSH1 0x60 00005a27: DUP4 00005a28: ADD 00005a29: DUP7 00005a2a: PUSH2 0x4871 00005a2d: JUMP 00005a2e: JUMPDEST 00005a2f: PUSH2 0x5a3b 00005a32: PUSH1 0x80 00005a34: DUP4 00005a35: ADD 00005a36: DUP6 00005a37: PUSH2 0x4871 00005a3a: JUMP 00005a3b: JUMPDEST 00005a3c: PUSH2 0x5a48 00005a3f: PUSH1 0xa0 00005a41: DUP4 00005a42: ADD 00005a43: DUP5 00005a44: PUSH2 0x4871 00005a47: JUMP 00005a48: JUMPDEST 00005a49: SWAP8 00005a4a: SWAP7 00005a4b: POP 00005a4c: POP 00005a4d: POP 00005a4e: POP 00005a4f: POP 00005a50: POP 00005a51: POP 00005a52: JUMP 00005a53: JUMPDEST 00005a54: PUSH1 0x40 00005a56: DUP2 00005a57: ADD 00005a58: PUSH2 0x5543 00005a5b: DUP3 00005a5c: DUP6 00005a5d: PUSH2 0x5468 00005a60: JUMP 00005a61: JUMPDEST 00005a62: PUSH1 0x60 00005a64: DUP2 00005a65: ADD 00005a66: PUSH2 0x5a6f 00005a69: DUP3 00005a6a: DUP7 00005a6b: PUSH2 0x5468 00005a6e: JUMP 00005a6f: JUMPDEST 00005a70: PUSH2 0x5a7c 00005a73: PUSH1 0x20 00005a75: DUP4 00005a76: ADD 00005a77: DUP6 00005a78: PUSH2 0x5475 00005a7b: JUMP 00005a7c: JUMPDEST 00005a7d: PUSH2 0x0bb4 00005a80: PUSH1 0x40 00005a82: DUP4 00005a83: ADD 00005a84: DUP5 00005a85: PUSH2 0x4871 00005a88: JUMP 00005a89: JUMPDEST 00005a8a: PUSH1 0x20 00005a8c: DUP2 00005a8d: ADD 00005a8e: PUSH2 0x0d92 00005a91: DUP3 00005a92: DUP5 00005a93: PUSH2 0x4871 00005a96: JUMP 00005a97: JUMPDEST 00005a98: PUSH1 0x40 00005a9a: DUP2 00005a9b: ADD 00005a9c: PUSH2 0x59a8 00005a9f: DUP3 00005aa0: DUP6 00005aa1: PUSH2 0x4871 00005aa4: JUMP 00005aa5: JUMPDEST 00005aa6: PUSH1 0x20 00005aa8: DUP2 00005aa9: ADD 00005aaa: PUSH2 0x0d92 00005aad: DUP3 00005aae: DUP5 00005aaf: PUSH2 0x5475 00005ab2: JUMP 00005ab3: JUMPDEST 00005ab4: PUSH1 0x40 00005ab6: MLOAD 00005ab7: DUP2 00005ab8: DUP2 00005ab9: ADD 00005aba: PUSH8 0xffffffffffffffff 00005ac3: DUP2 00005ac4: GT 00005ac5: DUP3 00005ac6: DUP3 00005ac7: LT 00005ac8: OR 00005ac9: ISZERO 00005aca: PUSH2 0x5ad2 00005acd: JUMPI 00005ace: PUSH1 0x00 00005ad0: DUP1 00005ad1: REVERT 00005ad2: JUMPDEST 00005ad3: PUSH1 0x40 00005ad5: MSTORE 00005ad6: SWAP2 00005ad7: SWAP1 00005ad8: POP 00005ad9: JUMP 00005ada: JUMPDEST 00005adb: PUSH1 0x00 00005add: PUSH8 0xffffffffffffffff 00005ae6: DUP3 00005ae7: GT 00005ae8: ISZERO 00005ae9: PUSH2 0x5af1 00005aec: JUMPI 00005aed: PUSH1 0x00 00005aef: DUP1 00005af0: REVERT 00005af1: JUMPDEST 00005af2: POP 00005af3: PUSH1 0x20 00005af5: SWAP1 00005af6: DUP2 00005af7: MUL 00005af8: ADD 00005af9: SWAP1 00005afa: JUMP 00005afb: JUMPDEST 00005afc: PUSH1 0x00 00005afe: PUSH8 0xffffffffffffffff 00005b07: DUP3 00005b08: GT 00005b09: ISZERO 00005b0a: PUSH2 0x5b12 00005b0d: JUMPI 00005b0e: PUSH1 0x00 00005b10: DUP1 00005b11: REVERT 00005b12: JUMPDEST 00005b13: POP 00005b14: PUSH1 0x20 00005b16: PUSH1 0x1f 00005b18: SWAP2 00005b19: SWAP1 00005b1a: SWAP2 00005b1b: ADD 00005b1c: PUSH1 0x1f 00005b1e: NOT 00005b1f: AND 00005b20: ADD 00005b21: SWAP1 00005b22: JUMP 00005b23: JUMPDEST 00005b24: PUSH1 0x20 00005b26: ADD 00005b27: SWAP1 00005b28: JUMP 00005b29: JUMPDEST 00005b2a: MLOAD 00005b2b: SWAP1 00005b2c: JUMP 00005b2d: JUMPDEST 00005b2e: SWAP1 00005b2f: DUP2 00005b30: MSTORE 00005b31: PUSH1 0x20 00005b33: ADD 00005b34: SWAP1 00005b35: JUMP 00005b36: JUMPDEST 00005b37: PUSH1 0x00 00005b39: PUSH2 0x0d92 00005b3c: DUP3 00005b3d: PUSH2 0x5b64 00005b40: JUMP 00005b41: JUMPDEST 00005b42: ISZERO 00005b43: ISZERO 00005b44: SWAP1 00005b45: JUMP 00005b46: JUMPDEST 00005b47: SWAP1 00005b48: JUMP 00005b49: JUMPDEST 00005b4a: DUP1 00005b4b: PUSH2 0x0a58 00005b4e: DUP2 00005b4f: PUSH2 0x5be9 00005b52: JUMP 00005b53: JUMPDEST 00005b54: DUP1 00005b55: PUSH2 0x0a58 00005b58: DUP2 00005b59: PUSH2 0x5bf3 00005b5c: JUMP 00005b5d: JUMPDEST 00005b5e: PUSH2 0xffff 00005b61: AND 00005b62: SWAP1 00005b63: JUMP 00005b64: JUMPDEST 00005b65: PUSH1 0x01 00005b67: PUSH1 0x01 00005b69: PUSH1 0xa0 00005b6b: SHL 00005b6c: SUB 00005b6d: AND 00005b6e: SWAP1 00005b6f: JUMP 00005b70: JUMPDEST 00005b71: PUSH4 0xffffffff 00005b76: AND 00005b77: SWAP1 00005b78: JUMP 00005b79: JUMPDEST 00005b7a: PUSH1 0xff 00005b7c: AND 00005b7d: SWAP1 00005b7e: JUMP 00005b7f: JUMPDEST 00005b80: PUSH1 0x00 00005b82: PUSH2 0x0d92 00005b85: DUP3 00005b86: JUMPDEST 00005b87: PUSH1 0x00 00005b89: PUSH2 0x0d92 00005b8c: DUP3 00005b8d: PUSH2 0x5b36 00005b90: JUMP 00005b91: JUMPDEST 00005b92: PUSH1 0x00 00005b94: PUSH2 0x0d92 00005b97: DUP3 00005b98: PUSH2 0x5b49 00005b9b: JUMP 00005b9c: JUMPDEST 00005b9d: PUSH1 0x00 00005b9f: PUSH2 0x0d92 00005ba2: DUP3 00005ba3: PUSH2 0x5b53 00005ba6: JUMP 00005ba7: JUMPDEST 00005ba8: DUP3 00005ba9: DUP2 00005baa: DUP4 00005bab: CALLDATACOPY 00005bac: POP 00005bad: PUSH1 0x00 00005baf: SWAP2 00005bb0: ADD 00005bb1: MSTORE 00005bb2: JUMP 00005bb3: JUMPDEST 00005bb4: PUSH1 0x00 00005bb6: JUMPDEST 00005bb7: DUP4 00005bb8: DUP2 00005bb9: LT 00005bba: ISZERO 00005bbb: PUSH2 0x5bce 00005bbe: JUMPI 00005bbf: DUP2 00005bc0: DUP2 00005bc1: ADD 00005bc2: MLOAD 00005bc3: DUP4 00005bc4: DUP3 00005bc5: ADD 00005bc6: MSTORE 00005bc7: PUSH1 0x20 00005bc9: ADD 00005bca: PUSH2 0x5bb6 00005bcd: JUMP 00005bce: JUMPDEST 00005bcf: DUP4 00005bd0: DUP2 00005bd1: GT 00005bd2: ISZERO 00005bd3: PUSH2 0x2bd2 00005bd6: JUMPI 00005bd7: POP 00005bd8: POP 00005bd9: PUSH1 0x00 00005bdb: SWAP2 00005bdc: ADD 00005bdd: MSTORE 00005bde: JUMP 00005bdf: JUMPDEST 00005be0: PUSH1 0x1f 00005be2: ADD 00005be3: PUSH1 0x1f 00005be5: NOT 00005be6: AND 00005be7: SWAP1 00005be8: JUMP 00005be9: JUMPDEST 00005bea: PUSH1 0x07 00005bec: DUP2 00005bed: LT 00005bee: PUSH2 0x0945 00005bf1: JUMPI 00005bf2: INVALID 00005bf3: JUMPDEST 00005bf4: PUSH1 0x02 00005bf6: DUP2 00005bf7: LT 00005bf8: PUSH2 0x0945 00005bfb: JUMPI 00005bfc: INVALID 00005bfd: JUMPDEST 00005bfe: PUSH2 0x5c06 00005c01: DUP2 00005c02: PUSH2 0x5b36 00005c05: JUMP 00005c06: JUMPDEST 00005c07: DUP2 00005c08: EQ 00005c09: PUSH2 0x0945 00005c0c: JUMPI 00005c0d: PUSH1 0x00 00005c0f: DUP1 00005c10: REVERT 00005c11: JUMPDEST 00005c12: PUSH2 0x5c06 00005c15: DUP2 00005c16: PUSH2 0x5b41 00005c19: JUMP 00005c1a: JUMPDEST 00005c1b: PUSH2 0x5c06 00005c1e: DUP2 00005c1f: PUSH2 0x5b46 00005c22: JUMP 00005c23: JUMPDEST 00005c24: PUSH1 0x07 00005c26: DUP2 00005c27: LT 00005c28: PUSH2 0x0945 00005c2b: JUMPI 00005c2c: PUSH1 0x00 00005c2e: DUP1 00005c2f: REVERT 00005c30: JUMPDEST 00005c31: PUSH2 0x5c06 00005c34: DUP2 00005c35: PUSH2 0x5b5d 00005c38: JUMP 00005c39: JUMPDEST 00005c3a: PUSH2 0x5c06 00005c3d: DUP2 00005c3e: PUSH2 0x5b70 00005c41: JUMP 00005c42: JUMPDEST 00005c43: PUSH2 0x5c06 00005c46: DUP2 00005c47: PUSH2 0x5b79 00005c4a: JUMP 00005c4b: INVALID 00005c4c: LOG2 00005c4d: PUSH6 0x627a7a723058 00005c54: KECCAK256 00005c55: CODECOPY 00005c56: DUP12 00005c57: SWAP13 00005c58: UNKNOWN(0xC4) 00005c59: GASLIMIT 00005c5a: CALLDATALOAD 00005c5b: NOT 00005c5c: DIFFICULTY 00005c5d: DUP16 00005c5e: JUMPI 00005c5f: UNKNOWN(0x2A) 00005c60: DUP1 00005c61: SDIV 00005c62: EXP 00005c63: PUSH23 0xd547f927512a27d158ef90497e37907b1f6c6578706572 00005c7b: PUSH10
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_id: 0x3126d1ccac44cd06a3ab2ad373802dcfc818a83136bafa158d26851472cb20b6
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0x3126d1ccac44cd06a3ab2ad373802dcfc818a83136bafa158d26851472cb20b6",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xddf1f0f4",
"selector": "0xddf1f0f4",
"calldata_variants": [
"0xddf1f0f4",
"0xddf1f0f40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe45c1879",
"selector": "0xe45c1879",
"calldata_variants": [
"0xe45c1879",
"0xe45c18790000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xee684955",
"selector": "0xee684955",
"calldata_variants": [
"0xee684955",
"0xee6849550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf7888aec",
"selector": "0xf7888aec",
"calldata_variants": [
"0xf7888aec",
"0xf7888aec0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa352c00",
"selector": "0xfa352c00",
"calldata_variants": [
"0xfa352c00",
"0xfa352c000000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6fc9191",
"selector": "0xa6fc9191",
"calldata_variants": [
"0xa6fc9191",
"0xa6fc91910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb31610db",
"selector": "0xb31610db",
"calldata_variants": [
"0xb31610db",
"0xb31610db0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2894,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 3148,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 3288,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 7,
"untrusted_delegatecall_count": 7
}
|
| high | auth | codex | EIP712 domain omits chainId and verifying contract, enabling cross-contract order replay | 85 | no | — |
viewevidence_json{
"evidence": "The EIP712 domain separator is computed only from the protocol name, with no chainId or contract address. Order hashes are derived from this domain and validated via `ecrecover`, so signatures are valid across any Hydro deployment.",
"locations": [
"contracts/Contract.sol:2862",
"contracts/Contract.sol:2872",
"contracts/Contract.sol:4831",
"contracts/Contract.sol:4838",
"contracts/Contract.sol:4264"
],
"recommendation": "Include `chainId` and `verifyingContract` (and ideally a version) in the EIP712 domain separator and order hash, then invalidate/rotate any existing off-chain orders that were signed under the old domain.",
"exploit_scenario": "1) Victim signs an order off-chain for a different Hydro deployment (or chain) where the domain is still just \"Hydro Protocol\". 2) Victim also has balances in this contract. 3) Attacker (the order\u2019s relayer or its approved delegate) calls `matchOrders` on this contract using the victim\u2019s signed order plus an attacker-controlled counter-order at a favorable price. 4) Because the order hash is derived from an EIP712 domain that lacks chainId/contract binding, `Signature.isValidSignature` accepts the replayed signature and the exchange settles, transferring victim assets to the attacker."
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x9523ce78ea0dbd8f7d18158b530e62ac779dcd4b51e5a3f3d2774db826a01f09
call_targets:
0x241e82c79452f51fbfc89fac6d912e021db1a3b7
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x9523ce78ea0dbd8f7d18158b530e62ac779dcd4b51e5a3f3d2774db826a01f09",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x241e82c79452f51fbfc89fac6d912e021db1a3b7"
],
"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": "0xddf1f0f4",
"selector": "0xddf1f0f4",
"calldata_variants": [
"0xddf1f0f4",
"0xddf1f0f40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe45c1879",
"selector": "0xe45c1879",
"calldata_variants": [
"0xe45c1879",
"0xe45c18790000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xee684955",
"selector": "0xee684955",
"calldata_variants": [
"0xee684955",
"0xee6849550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf7888aec",
"selector": "0xf7888aec",
"calldata_variants": [
"0xf7888aec",
"0xf7888aec0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa352c00",
"selector": "0xfa352c00",
"calldata_variants": [
"0xfa352c00",
"0xfa352c000000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6fc9191",
"selector": "0xa6fc9191",
"calldata_variants": [
"0xa6fc9191",
"0xa6fc91910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb31610db",
"selector": "0xb31610db",
"calldata_variants": [
"0xb31610db",
"0xb31610db0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5551,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "constant"
}
],
"call_count": 1,
"guards_detected": [],
"untrusted_call_count": 1
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x9523ce78ea0dbd8f7d18158b530e62ac779dcd4b51e5a3f3d2774db826a01f09
call_targets:
0x241e82c79452f51fbfc89fac6d912e021db1a3b7
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x9523ce78ea0dbd8f7d18158b530e62ac779dcd4b51e5a3f3d2774db826a01f09",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x241e82c79452f51fbfc89fac6d912e021db1a3b7"
],
"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": "0xddf1f0f4",
"selector": "0xddf1f0f4",
"calldata_variants": [
"0xddf1f0f4",
"0xddf1f0f40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe45c1879",
"selector": "0xe45c1879",
"calldata_variants": [
"0xe45c1879",
"0xe45c18790000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xee684955",
"selector": "0xee684955",
"calldata_variants": [
"0xee684955",
"0xee6849550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf7888aec",
"selector": "0xf7888aec",
"calldata_variants": [
"0xf7888aec",
"0xf7888aec0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa352c00",
"selector": "0xfa352c00",
"calldata_variants": [
"0xfa352c00",
"0xfa352c000000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6fc9191",
"selector": "0xa6fc9191",
"calldata_variants": [
"0xa6fc9191",
"0xa6fc91910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb31610db",
"selector": "0xb31610db",
"calldata_variants": [
"0xb31610db",
"0xb31610db0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5551,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "constant"
}
],
"eth_value_calls": 1,
"guards_detected": []
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 7
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 12
}
|