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

Analysis Run

ff7f23a9-503b-490f-a989-b437a8f79cd7

complete
Chain ID
1
Address
Block Number
Created
Sun, Jan 4, 2026 3:21 AM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31539 report.consolidate complete 1 / 1 3 months ago
77861 artifact.fetch complete 1 / 3 1 week ago
77862 tool.cast_disasm complete 1 / 3 1 week ago
77863 analysis.bundle complete 1 / 3 1 week ago
77864 capability.graph complete 1 / 3 1 week ago
77865 detector.run complete 1 / 3 1 week ago
77866 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
1
No findings?
no
Summary
Found 1 concrete exploit path: the governance token proxy can be initialized by anyone before the deployer does, letting an attacker set themselves as minter and later drain the DAO’s ETH via mintShares + exit.
View stderr
[codex:539630] OpenAI Codex v0.77.0 (research preview)
[codex:539630] --------
[codex:539630] workdir: /tmp/codex-multi-hjrj18uk
[codex:539630] model: gpt-5.2-codex
[codex:539630] provider: openai
[codex:539630] approval: never
[codex:539630] sandbox: read-only
[codex:539630] reasoning effort: xhigh
[codex:539630] reasoning summaries: auto
[codex:539630] session id: 019b8702-075f-7401-a9de-d5b517b00769
[codex:539630] --------
[codex:539630] user
[codex:539630] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:539630] 
[codex:539630] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:539630] 
[codex:539630] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:539630] - Gas inefficiency, code quality, naming, or best practices
[codex:539630] - Theoretical vulnerabilities without a clear extraction path
[codex:539630] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:539630] - Front-running unless it enables theft beyond MEV
[codex:539630] - DoS, griefing, or issues that don't result in attacker profit
[codex:539630] - Missing events, view function issues, or informational findings
[codex:539630] 
[codex:539630] HIGH-VALUE PATTERNS TO HUNT:
[codex:539630] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:539630] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:539630] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:539630] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:539630] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:539630] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:539630] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:539630] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:539630] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:539630] 
[codex:539630] For each finding, you MUST provide:
[codex:539630] 1. Exact file and line numbers of vulnerable code
[codex:539630] 2. Step-by-step exploit transaction sequence
[codex:539630] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:539630] 
[codex:539630] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:539630] 
[codex:539630] Output MUST be valid JSON matching the provided schema.
[codex:539630] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:539630] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:539630] mcp startup: no servers
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Reading instructions from AUDIT_BUNDLE.txt**
[codex:539630] exec
[codex:539630] /bin/bash -lc ls in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630] AUDIT_BUNDLE.txt
[codex:539630] codex-output-schema.json
[codex:539630] contracts
[codex:539630] exec
[codex:539630] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:539630] 
[codex:539630] ================================================================================
[codex:539630] FILE: contracts/@pie-dao/proxy/contracts/PProxy.sol
[codex:539630] ================================================================================
[codex:539630] pragma solidity ^0.7.1;
[codex:539630] 
[codex:539630] import "./PProxyStorage.sol";
[codex:539630] 
[codex:539630] contract PProxy is PProxyStorage {
[codex:539630] 
[codex:539630]     bytes32 constant IMPLEMENTATION_SLOT = keccak256(abi.encodePacked("IMPLEMENTATION_SLOT"));
[codex:539630]     bytes32 constant OWNER_SLOT = keccak256(abi.encodePacked("OWNER_SLOT"));
[codex:539630] 
[codex:539630]     modifier onlyProxyOwner() {
[codex:539630]         require(msg.sender == readAddress(OWNER_SLOT), "PProxy.onlyProxyOwner: msg sender not owner");
[codex:539630]         _;
[codex:539630]     }
[codex:539630] 
[codex:539630]     constructor () public {
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Planning contract inspection strategy**
[codex:539630] exec
[codex:539630] /bin/bash -lc 'rg --files' in /tmp/codex-multi-hjrj18uk succeeded in 8ms:
[codex:539630] codex-output-schema.json
[codex:539630] AUDIT_BUNDLE.txt
[codex:539630] contracts/src/interfaces/IElasticToken.sol
[codex:539630] contracts/src/interfaces/IUniswapV2Pair.sol
[codex:539630] contracts/src/core/ElasticDAO.sol
[codex:539630] contracts/hardhat/console.sol
[codex:539630] contracts/src/tokens/ElasticGovernanceToken.sol
[codex:539630] contracts/@pie-dao/proxy/contracts/PProxy.sol
[codex:539630] contracts/@pie-dao/proxy/contracts/PProxyStorage.sol
[codex:539630] contracts/src/libraries/SafeMath.sol
[codex:539630] contracts/src/libraries/ElasticMath.sol
[codex:539630] contracts/src/models/Ecosystem.sol
[codex:539630] contracts/src/models/Token.sol
[codex:539630] contracts/src/models/DAO.sol
[codex:539630] contracts/src/models/EternalModel.sol
[codex:539630] contracts/src/models/TokenHolder.sol
[codex:539630] contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol
[codex:539630] contracts/@openzeppelin/contracts/utils/ReentrancyGuard.sol
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Examining core contract files**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,240p' contracts/src/core/ElasticDAO.sol" in /tmp/codex-multi-hjrj18uk succeeded in 6ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] pragma experimental ABIEncoderV2;
[codex:539630] 
[codex:539630] import '../interfaces/IUniswapV2Pair.sol';
[codex:539630] 
[codex:539630] import '../libraries/ElasticMath.sol';
[codex:539630] 
[codex:539630] import '../models/DAO.sol';
[codex:539630] import '../models/Ecosystem.sol';
[codex:539630] import '../models/Token.sol';
[codex:539630] 
[codex:539630] import '@openzeppelin/contracts/utils/ReentrancyGuard.sol';
[codex:539630] 
[codex:539630] import '@pie-dao/proxy/contracts/PProxy.sol';
[codex:539630] import 'hardhat/console.sol';
[codex:539630] 
[codex:539630] /**
[codex:539630]  * @dev The ElasticDAO contract outlines and defines all the functionality
[codex:539630]  * such as initialize, Join, exit, etc for an elasticDAO.
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '240,520p' contracts/src/core/ElasticDAO.sol" in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630]    * The correct value of ETH, calculated via deltaE,
[codex:539630]    * must be sent in the transaction by the calling address
[codex:539630]    * The token contract should be successfully be able to mint token.makxLambdaPurchase
[codex:539630]    */
[codex:539630]   function join() external payable onlyAfterSummoning onlyWhenOpen nonReentrant {
[codex:539630]     Token.Instance memory token = _getToken();
[codex:539630] 
[codex:539630]     ElasticGovernanceToken tokenContract = ElasticGovernanceToken(token.uuid);
[codex:539630]     uint256 capitalDelta =
[codex:539630]       ElasticMath.capitalDelta(
[codex:539630]         // the current totalBalance of the DAO is inclusive of msg.value,
[codex:539630]         // capitalDelta is to be calculated without the msg.value
[codex:539630]         SafeMath.sub(address(this).balance, msg.value),
[codex:539630]         tokenContract.totalSupply()
[codex:539630]       );
[codex:539630]     uint256 deltaE =
[codex:539630]       ElasticMath.deltaE(
[codex:539630]         token.maxLambdaPurchase,
[codex:539630]         capitalDelta,
[codex:539630]         token.k,
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '520,1040p' contracts/src/core/ElasticDAO.sol" in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630]    * @return ecosystem Ecosystem.Instance
[codex:539630]    */
[codex:539630]   function _buildEcosystem(address _controller, Ecosystem.Instance memory _defaults)
[codex:539630]     internal
[codex:539630]     returns (Ecosystem.Instance memory ecosystem)
[codex:539630]   {
[codex:539630]     ecosystem.daoAddress = address(this);
[codex:539630]     ecosystem.daoModelAddress = _deployProxy(_defaults.daoModelAddress, _controller);
[codex:539630]     ecosystem.ecosystemModelAddress = _deployProxy(_defaults.ecosystemModelAddress, _controller);
[codex:539630]     ecosystem.governanceTokenAddress = _deployProxy(_defaults.governanceTokenAddress, _controller);
[codex:539630]     ecosystem.tokenHolderModelAddress = _deployProxy(
[codex:539630]       _defaults.tokenHolderModelAddress,
[codex:539630]       _controller
[codex:539630]     );
[codex:539630]     ecosystem.tokenModelAddress = _deployProxy(_defaults.tokenModelAddress, _controller);
[codex:539630] 
[codex:539630]     Ecosystem(ecosystem.ecosystemModelAddress).serialize(ecosystem);
[codex:539630]     return ecosystem;
[codex:539630]   }
[codex:539630] 
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Analyzing model security for reentrancy**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,240p' contracts/src/models/DAO.sol" in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] pragma experimental ABIEncoderV2;
[codex:539630] 
[codex:539630] import '@openzeppelin/contracts/utils/ReentrancyGuard.sol';
[codex:539630] 
[codex:539630] import './Ecosystem.sol';
[codex:539630] import './EternalModel.sol';
[codex:539630] 
[codex:539630] /**
[codex:539630]  * @author ElasticDAO - https://ElasticDAO.org
[codex:539630]  * @notice This contract is used for storing core DAO data
[codex:539630]  * @dev ElasticDAO network contracts can read/write from this contract
[codex:539630]  */
[codex:539630] contract DAO is EternalModel, ReentrancyGuard {
[codex:539630]   struct Instance {
[codex:539630]     address uuid;
[codex:539630]     address[] summoners;
[codex:539630]     bool summoned;
[codex:539630]     string name;
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Reviewing EternalModel context**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,240p' contracts/src/models/EternalModel.sol" in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] pragma experimental ABIEncoderV2;
[codex:539630] 
[codex:539630] /**
[codex:539630]  * @title Implementation of Eternal Storage for ElasticDAO -
[codex:539630]  * - (https://fravoll.github.io/solidity-patterns/eternal_storage.html)
[codex:539630]  * @author ElasticDAO - https://ElasticDAO.org
[codex:539630]  * @notice This contract is used for storing contract network data
[codex:539630]  * @dev ElasticDAO network contracts can read/write from this contract
[codex:539630]  */
[codex:539630] contract EternalModel {
[codex:539630]   struct Storage {
[codex:539630]     mapping(bytes32 => address) addressStorage;
[codex:539630]     mapping(bytes32 => bool) boolStorage;
[codex:539630]     mapping(bytes32 => bytes) bytesStorage;
[codex:539630]     mapping(bytes32 => int256) intStorage;
[codex:539630]     mapping(bytes32 => string) stringStorage;
[codex:539630]     mapping(bytes32 => uint256) uIntStorage;
[codex:539630]   }
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Checking for Token and TokenHolder models**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,260p' contracts/src/models/Token.sol" in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] pragma experimental ABIEncoderV2;
[codex:539630] import '@openzeppelin/contracts/utils/ReentrancyGuard.sol';
[codex:539630] 
[codex:539630] import './Ecosystem.sol';
[codex:539630] import './EternalModel.sol';
[codex:539630] import '../tokens/ElasticGovernanceToken.sol';
[codex:539630] 
[codex:539630] /**
[codex:539630]  * @title A data storage for EGT (Elastic Governance Token)
[codex:539630]  * @notice More info about EGT could be found in ./tokens/ElasticGovernanceToken.sol
[codex:539630]  * @notice This contract is used for storing token data
[codex:539630]  * @dev ElasticDAO network contracts can read/write from this contract
[codex:539630]  * Serialize - Translation of data from the concerned struct to key-value pairs
[codex:539630]  * Deserialize - Translation of data from the key-value pairs to a struct
[codex:539630]  */
[codex:539630] contract Token is EternalModel, ReentrancyGuard {
[codex:539630]   struct Instance {
[codex:539630]     address uuid;
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Checking token-related terms**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,260p' contracts/src/models/TokenHolder.sol" in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] pragma experimental ABIEncoderV2;
[codex:539630] 
[codex:539630] import '@openzeppelin/contracts/utils/ReentrancyGuard.sol';
[codex:539630] 
[codex:539630] import './Ecosystem.sol';
[codex:539630] import './EternalModel.sol';
[codex:539630] import './Token.sol';
[codex:539630] 
[codex:539630] /**
[codex:539630]  * @title a data storage for Token holders
[codex:539630]  * @author ElasticDAO - https://ElasticDAO.org
[codex:539630]  * @notice This contract is used for storing token data
[codex:539630]  * @dev ElasticDAO network contracts can read/write from this contract
[codex:539630]  * Serialize - Translation of data from the concerned struct to key-value pairs
[codex:539630]  * Deserialize - Translation of data from the key-value pairs to a struct
[codex:539630]  */
[codex:539630] contract TokenHolder is EternalModel, ReentrancyGuard {
[codex:539630]   struct Instance {
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Considering ecosystem model**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,260p' contracts/src/models/Ecosystem.sol" in /tmp/codex-multi-hjrj18uk succeeded in 6ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] pragma experimental ABIEncoderV2;
[codex:539630] 
[codex:539630] import '@openzeppelin/contracts/utils/ReentrancyGuard.sol';
[codex:539630] 
[codex:539630] import './EternalModel.sol';
[codex:539630] 
[codex:539630] /**
[codex:539630]  * @title ElasticDAO ecosystem
[codex:539630]  * @author ElasticDAO - https://ElasticDAO.org
[codex:539630]  * @notice This contract is used for storing core dao data
[codex:539630]  * @dev ElasticDAO network contracts can read/write from this contract
[codex:539630]  * @dev Serialize - Translation of data from the concerned struct to key-value pairs
[codex:539630]  * @dev Deserialize - Translation of data from the key-value pairs to a struct
[codex:539630]  */
[codex:539630] contract Ecosystem is EternalModel, ReentrancyGuard {
[codex:539630]   struct Instance {
[codex:539630]     address daoAddress;
[codex:539630]     // Models
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Exploring ElasticMath interface**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,260p' contracts/src/libraries/ElasticMath.sol" in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] 
[codex:539630] import './SafeMath.sol';
[codex:539630] 
[codex:539630] /**
[codex:539630]  * @dev Provides functions for performing ElasticDAO specific math.
[codex:539630]  *
[codex:539630]  * These functions correspond with functions provided by the JS SDK and should
[codex:539630]  * always be used instead of doing calculations within other contracts to avoid
[codex:539630]  * any inconsistencies in the math.
[codex:539630]  *
[codex:539630]  * Notes:
[codex:539630]  *
[codex:539630]  * - Dash values represent the state after a transaction has completed successfully.
[codex:539630]  * - Non-dash values represent the current state, before the transaction has completed.
[codex:539630]  * - Lambda is the math term for shares. We typically expose the value to users as
[codex:539630]  *   shares instead of lambda because it's easier to grok.
[codex:539630]  */
[codex:539630] library ElasticMath {
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Inspecting SafeMath module**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,240p' contracts/src/libraries/SafeMath.sol" in /tmp/codex-multi-hjrj18uk succeeded in 6ms:
[codex:539630] // SPDX-License-Identifier: MIT
[codex:539630] pragma solidity 0.7.2;
[codex:539630] 
[codex:539630] /**
[codex:539630]  * @dev Wrappers over Solidity's arithmetic operations with added overflow
[codex:539630]  * checks.
[codex:539630]  *
[codex:539630]  * Arithmetic operations in Solidity wrap on overflow. This can easily result
[codex:539630]  * in bugs, because programmers usually assume that an overflow raises an
[codex:539630]  * error, which is the standard behavior in high level programming languages.
[codex:539630]  * `SafeMath` restores this intuition by reverting the transaction when an
[codex:539630]  * operation overflows.
[codex:539630]  *
[codex:539630]  * Using this library instead of the unchecked operations eliminates an entire
[codex:539630]  * class of bugs, so it's recommended to use it always.
[codex:539630]  */
[codex:539630] library SafeMath {
[codex:539630]   /**
[codex:539630]    * @dev Returns the addition of two unsigned integers, reverting on
[codex:539630]    * overflow.
[codex:539630] 
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Analyzing potential vulnerabilities in contract math and initialization**
[codex:539630] 
[codex:539630] I'm examining how SafeMath.div's require on divisor might cause reverts, impacting functions like wdiv and possibly blocking small share exits without enabling profit. I'm also exploring unprotected proxy initializations that could let attackers hijack tokens or DAOs before proper setup, focusing on whether front-running initialize calls could allow control or profit extraction. Additionally, I'm scrutinizing join/exit logic for possible economic exploits through share minting and ETH withdrawal mismatches, considering if elasticity and share value math might allow arbitrage or improper gains. This involves unfolding the formulas behind token minting costs and exit paybacks to check for profit opportunities. Let's explore this detailed interplay closely!
[codex:539630] thinking
[codex:539630] **Evaluating intricate reentrancy and initialization risks**
[codex:539630] 
[codex:539630] I'm reviewing the detailed math showing join-then-exit yields loss, ruling out simple arbitrage, and confirming that reentrancy protections prevent common exploits via token burning or refunds. However, I’m curious about how default ecosystem records can be set by anyone before initialization, possibly letting an attacker plant malicious proxy implementations that a DAO deployer might unknowingly use. I’m also checking if uninitialized proxies or missing access controls in models could allow unauthorized storage changes or disrupt DAO setup, though direct profit seems unlikely. The interplay of SafeMath’s strict division checks, rounding in fixed-point math, and proxy storage layouts is complex, so I’m carefully tracing possible indirect effects or edge cases!
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,200p' contracts/src/interfaces/IUniswapV2Pair.sol" in /tmp/codex-multi-hjrj18uk succeeded in 6ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] 
[codex:539630] interface IUniswapV2Pair {
[codex:539630]   function sync() external;
[codex:539630] }
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Considering token interface**
[codex:539630] exec
[codex:539630] /bin/bash -lc "sed -n '1,200p' contracts/src/interfaces/IElasticToken.sol" in /tmp/codex-multi-hjrj18uk succeeded in 5ms:
[codex:539630] // SPDX-License-Identifier: GPLv3
[codex:539630] pragma solidity 0.7.2;
[codex:539630] 
[codex:539630] import '@openzeppelin/contracts/token/ERC20/IERC20.sol';
[codex:539630] 
[codex:539630] interface IElasticToken is IERC20 {
[codex:539630]   /**
[codex:539630]    * @dev Returns the amount of shares owned by @param _account.
[codex:539630]    * @param _account - address of the account
[codex:539630]    * @return lambda uint256 - lambda is the number of shares
[codex:539630]    */
[codex:539630]   function balanceOfInShares(address _account) external view returns (uint256 lambda);
[codex:539630] 
[codex:539630]   /**
[codex:539630]    * @dev Reduces the balance(tokens) of @param _account by @param _amount
[codex:539630]    * @param _account address of the account
[codex:539630]    * @param _amount - the amount by which the number of tokens has to be reduced
[codex:539630]    * @return bool
[codex:539630]    */
[codex:539630]   function burn(address _account, uint256 _amount) external returns (bool);
[codex:539630] 
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Analyzing proxy and token initialization risks**
[codex:539630] thinking
[codex:539630] **Examining token and DAO initialization order risks**
[codex:539630] 
[codex:539630] I'll map out the specific call order risk where an attacker could front-run the token's initialize call before the DAO deployer, potentially seizing control of minter and burner roles, leading to unauthorized minting and fund withdrawal. To confirm and detail this, I plan to find exact lines of the relevant initialize functions for clearer reference.
[codex:539630] exec
[codex:539630] /bin/bash -lc "nl -ba contracts/src/tokens/ElasticGovernanceToken.sol | sed -n '1,200p'" in /tmp/codex-multi-hjrj18uk succeeded in 8ms:
[codex:539630]      1	// SPDX-License-Identifier: GPLv3
[codex:539630]      2	pragma solidity 0.7.2;
[codex:539630]      3	pragma experimental ABIEncoderV2;
[codex:539630]      4	
[codex:539630]      5	import '../interfaces/IElasticToken.sol';
[codex:539630]      6	
[codex:539630]      7	import '../libraries/ElasticMath.sol';
[codex:539630]      8	
[codex:539630]      9	import '../core/ElasticDAO.sol';
[codex:539630]     10	import '../models/DAO.sol';
[codex:539630]     11	import '../models/Ecosystem.sol';
[codex:539630]     12	import '../models/Token.sol';
[codex:539630]     13	import '../models/TokenHolder.sol';
[codex:539630]     14	
[codex:539630]     15	import '@openzeppelin/contracts/utils/ReentrancyGuard.sol';
[codex:539630]     16	
[codex:539630]     17	/**
[codex:539630]     18	 * @dev ElasticGovernanceToken contract outlines and defines all the functionality
[codex:539630]     19	 * of an ElasticGovernanceToken and also serves as it's storage
[codex:539630]     20	 */
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Identifying key vulnerable function line numbers**
[codex:539630] exec
[codex:539630] /bin/bash -lc "nl -ba contracts/src/tokens/ElasticGovernanceToken.sol | sed -n '240,420p'" in /tmp/codex-multi-hjrj18uk succeeded in 7ms:
[codex:539630]    240	   *
[codex:539630]    241	   * @param _spender - address of the spender
[codex:539630]    242	   * @param _subtractedValue - the value the allowance has to be decreased by
[codex:539630]    243	   *
[codex:539630]    244	   * @dev Requirement:
[codex:539630]    245	   * Allowance cannot be lower than 0
[codex:539630]    246	   *
[codex:539630]    247	   * @return bool
[codex:539630]    248	   */
[codex:539630]    249	  function decreaseAllowance(address _spender, uint256 _subtractedValue)
[codex:539630]    250	    external
[codex:539630]    251	    nonReentrant
[codex:539630]    252	    returns (bool)
[codex:539630]    253	  {
[codex:539630]    254	    uint256 newAllowance = SafeMath.sub(_allowances[msg.sender][_spender], _subtractedValue);
[codex:539630]    255	    _approve(msg.sender, _spender, newAllowance);
[codex:539630]    256	    return true;
[codex:539630]    257	  }
[codex:539630]    258	
[codex:539630]    259	  /**
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Adding line numbers for exit**
[codex:539630] exec
[codex:539630] /bin/bash -lc "nl -ba contracts/src/core/ElasticDAO.sol | sed -n '120,220p'" in /tmp/codex-multi-hjrj18uk succeeded in 6ms:
[codex:539630]    120	      if (_summoners[i] == address(0)) {
[codex:539630]    121	        revert('ElasticDAO: Summoner address can not be zero address');
[codex:539630]    122	      }
[codex:539630]    123	    }
[codex:539630]    124	
[codex:539630]    125	    controller = _controller;
[codex:539630]    126	    deployer = msg.sender;
[codex:539630]    127	    summoners = _summoners;
[codex:539630]    128	
[codex:539630]    129	    Ecosystem.Instance memory defaults = Ecosystem(_ecosystemModelAddress).deserialize(address(0));
[codex:539630]    130	    Ecosystem.Instance memory ecosystem = _buildEcosystem(controller, defaults);
[codex:539630]    131	    ecosystemModelAddress = ecosystem.ecosystemModelAddress;
[codex:539630]    132	
[codex:539630]    133	    bool success = _buildDAO(_summoners, _name, _maxVotingLambda, ecosystem);
[codex:539630]    134	    initialized = true;
[codex:539630]    135	    require(success, 'ElasticDAO: Build DAO Failed');
[codex:539630]    136	  }
[codex:539630]    137	
[codex:539630]    138	  function addLiquidityPool(address _poolAddress)
[codex:539630]    139	    external
[codex:539630] 
[codex:539630] thinking
[codex:539630] **Summarizing key vulnerability and plan**
[codex:539630] codex
[codex:539630] {"no_findings":false,"summary":"Found 1 concrete exploit path: the governance token proxy can be initialized by anyone before the deployer does, letting an attacker set themselves as minter and later drain the DAO’s ETH via mintShares + exit.","findings":[{"severity":"high","category":"auth","title":"Unprotected governance token initialization lets attacker become minter and drain DAO ETH","exploit_scenario":"1) After ElasticDAO.initialize deploys the governance token proxy but before the deployer calls initializeToken, attacker calls ElasticGovernanceToken.initialize on the proxy, setting _minter/_burner to themselves and passing the DAO’s Ecosystem.Instance (via ElasticDAO.getEcosystem) so storage is wired to the real DAO.\n2) Once the DAO is seeded/summoned and holds ETH, attacker calls mintShares(attacker, huge_amount) as the authorized minter.\n3) Attacker calls ElasticDAO.exit(huge_amount) to burn the forged shares and withdraw nearly all ETH proportional to their inflated share count.\nProfit potential: up to the entire ETH balance held by the DAO (seeded + joined ETH).","recommendation":"Restrict ElasticGovernanceToken.initialize to the DAO (or a trusted deployer) and/or make initialization happen atomically in the DAO deployment flow so no external account can front‑run. Consider an initializer modifier that enforces msg.sender == _ecosystem.daoAddress.","evidence":"ElasticGovernanceToken.initialize is external and lacks any access control beyond initialized=false, but it sets daoAddress/minter/burner. Once attacker sets minter, mintShares is callable by them, and ElasticDAO.exit pays ETH based on share balance.","locations":["contracts/src/tokens/ElasticGovernanceToken.sol:62","contracts/src/tokens/ElasticGovernanceToken.sol:74","contracts/src/tokens/ElasticGovernanceToken.sol:300","contracts/src/core/ElasticDAO.sol:204"]}]}
[codex:539630] tokens used
[codex:539630] 56,153
[codex:539630] {"no_findings":false,"summary":"Found 1 concrete exploit path: the governance token proxy can be initialized by anyone before the deployer does, letting an attacker set themselves as minter and later drain the DAO’s ETH via mintShares + exit.","findings":[{"severity":"high","category":"auth","title":"Unprotected governance token initialization lets attacker become minter and drain DAO ETH","exploit_scenario":"1) After ElasticDAO.initialize deploys the governance token proxy but before the deployer calls initializeToken, attacker calls ElasticGovernanceToken.initialize on the proxy, setting _minter/_burner to themselves and passing the DAO’s Ecosystem.Instance (via ElasticDAO.getEcosystem) so storage is wired to the real DAO.\n2) Once the DAO is seeded/summoned and holds ETH, attacker calls mintShares(attacker, huge_amount) as the authorized minter.\n3) Attacker calls ElasticDAO.exit(huge_amount) to burn the forged shares and withdraw nearly all ETH proportional to their inflated share count.\nProfit potential: up to the entire ETH balance held by the DAO (seeded + joined ETH).","recommendation":"Restrict ElasticGovernanceToken.initialize to the DAO (or a trusted deployer) and/or make initialization happen atomically in the DAO deployment flow so no external account can front‑run. Consider an initializer modifier that enforces msg.sender == _ecosystem.daoAddress.","evidence":"ElasticGovernanceToken.initialize is external and lacks any access control beyond initialized=false, but it sets daoAddress/minter/burner. Once attacker sets minter, mintShares is callable by them, and ElasticDAO.exit pays ETH based on share balance.","locations":["contracts/src/tokens/ElasticGovernanceToken.sol:62","contracts/src/tokens/ElasticGovernanceToken.sol:74","contracts/src/tokens/ElasticGovernanceToken.sol:300","contracts/src/core/ElasticDAO.sol:204"]}]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-04T03:21:52.960634+00:00",
        "returncode": 0
    },
    "summary": "Found 1 concrete exploit path: the governance token proxy can be initialized by anyone before the deployer does, letting an attacker set themselves as minter and later drain the DAO\u2019s ETH via mintShares + exit.",
    "raw_final": {
        "summary": "Found 1 concrete exploit path: the governance token proxy can be initialized by anyone before the deployer does, letting an attacker set themselves as minter and later drain the DAO\u2019s ETH via mintShares + exit.",
        "findings": [
            {
                "title": "Unprotected governance token initialization lets attacker become minter and drain DAO ETH",
                "category": "auth",
                "evidence": "ElasticGovernanceToken.initialize is external and lacks any access control beyond initialized=false, but it sets daoAddress/minter/burner. Once attacker sets minter, mintShares is callable by them, and ElasticDAO.exit pays ETH based on share balance.",
                "severity": "high",
                "locations": [
                    "contracts/src/tokens/ElasticGovernanceToken.sol:62",
                    "contracts/src/tokens/ElasticGovernanceToken.sol:74",
                    "contracts/src/tokens/ElasticGovernanceToken.sol:300",
                    "contracts/src/core/ElasticDAO.sol:204"
                ],
                "recommendation": "Restrict ElasticGovernanceToken.initialize to the DAO (or a trusted deployer) and/or make initialization happen atomically in the DAO deployment flow so no external account can front\u2011run. Consider an initializer modifier that enforces msg.sender == _ecosystem.daoAddress.",
                "exploit_scenario": "1) After ElasticDAO.initialize deploys the governance token proxy but before the deployer calls initializeToken, attacker calls ElasticGovernanceToken.initialize on the proxy, setting _minter/_burner to themselves and passing the DAO\u2019s Ecosystem.Instance (via ElasticDAO.getEcosystem) so storage is wired to the real DAO.\n2) Once the DAO is seeded/summoned and holds ETH, attacker calls mintShares(attacker, huge_amount) as the authorized minter.\n3) Attacker calls ElasticDAO.exit(huge_amount) to burn the forged shares and withdraw nearly all ETH proportional to their inflated share count.\nProfit potential: up to the entire ETH balance held by the DAO (seeded + joined ETH)."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
35
EXT*/BALANCE
33
Total opcodes
10424
Flags
delegatecall_present create_opcodes_present heavy_ext_balance_usage call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH3 0x00014b
0000000d: JUMPI
0000000e: PUSH1 0x00
00000010: CALLDATALOAD
00000011: PUSH1 0xe0
00000013: SHR
00000014: DUP1
00000015: PUSH4 0x8ae7b77e
0000001a: GT
0000001b: PUSH3 0x0000bb
0000001f: JUMPI
00000020: DUP1
00000021: PUSH4 0xb688a363
00000026: GT
00000027: PUSH3 0x000079
0000002b: JUMPI
0000002c: DUP1
0000002d: PUSH4 0xb688a363
00000032: EQ
00000033: PUSH3 0x000378
00000037: JUMPI
00000038: DUP1
00000039: PUSH4 0xb7a906ec
0000003e: EQ
0000003f: PUSH3 0x000382
00000043: JUMPI
00000044: DUP1
00000045: PUSH4 0xd38b576d
0000004a: EQ
0000004b: PUSH3 0x0003a7
0000004f: JUMPI
00000050: DUP1
00000051: PUSH4 0xd5f39488
00000056: EQ
00000057: PUSH3 0x0003cc
0000005b: JUMPI
0000005c: DUP1
0000005d: PUSH4 0xee6a934c
00000062: EQ
00000063: PUSH3 0x0003e4
00000067: JUMPI
00000068: DUP1
00000069: PUSH4 0xf77c4791
0000006e: EQ
0000006f: PUSH3 0x000409
00000073: JUMPI
00000074: PUSH3 0x000153
00000078: JUMP
00000079: JUMPDEST
0000007a: DUP1
0000007b: PUSH4 0x8ae7b77e
00000080: EQ
00000081: PUSH3 0x0002bb
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0x92eefe9b
0000008c: EQ
0000008d: PUSH3 0x0002e0
00000091: JUMPI
00000092: DUP1
00000093: PUSH4 0x985da726
00000098: EQ
00000099: PUSH3 0x000305
0000009d: JUMPI
0000009e: DUP1
0000009f: PUSH4 0xa0f2c977
000000a4: EQ
000000a5: PUSH3 0x00032c
000000a9: JUMPI
000000aa: DUP1
000000ab: PUSH4 0xae22107f
000000b0: EQ
000000b1: PUSH3 0x000353
000000b5: JUMPI
000000b6: PUSH3 0x000153
000000ba: JUMP
000000bb: JUMPDEST
000000bc: DUP1
000000bd: PUSH4 0x3af401f6
000000c2: GT
000000c3: PUSH3 0x000109
000000c7: JUMPI
000000c8: DUP1
000000c9: PUSH4 0x3af401f6
000000ce: EQ
000000cf: PUSH3 0x000200
000000d3: JUMPI
000000d4: DUP1
000000d5: PUSH4 0x79d747be
000000da: EQ
000000db: PUSH3 0x000225
000000df: JUMPI
000000e0: DUP1
000000e1: PUSH4 0x7a5f0ffd
000000e6: EQ
000000e7: PUSH3 0x00024a
000000eb: JUMPI
000000ec: DUP1
000000ed: PUSH4 0x7f8661a1
000000f2: EQ
000000f3: PUSH3 0x000271
000000f7: JUMPI
000000f8: DUP1
000000f9: PUSH4 0x81bfaf1a
000000fe: EQ
000000ff: PUSH3 0x000296
00000103: JUMPI
00000104: PUSH3 0x000153
00000108: JUMP
00000109: JUMPDEST
0000010a: DUP1
0000010b: PUSH4 0x02eb9336
00000110: EQ
00000111: PUSH3 0x000155
00000115: JUMPI
00000116: DUP1
00000117: PUSH4 0x035d9f2a
0000011c: EQ
0000011d: PUSH3 0x000185
00000121: JUMPI
00000122: DUP1
00000123: PUSH4 0x03ca8c09
00000128: EQ
00000129: PUSH3 0x0001aa
0000012d: JUMPI
0000012e: DUP1
0000012f: PUSH4 0x158ef93e
00000134: EQ
00000135: PUSH3 0x0001cf
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0x1fb46089
00000140: EQ
00000141: PUSH3 0x0001f6
00000145: JUMPI
00000146: PUSH3 0x000153
0000014a: JUMP
0000014b: JUMPDEST
0000014c: CALLDATASIZE
0000014d: PUSH3 0x000153
00000151: JUMPI
00000152: STOP
00000153: JUMPDEST
00000154: STOP
00000155: JUMPDEST
00000156: CALLVALUE
00000157: DUP1
00000158: ISZERO
00000159: PUSH3 0x000162
0000015d: JUMPI
0000015e: PUSH1 0x00
00000160: DUP1
00000161: REVERT
00000162: JUMPDEST
00000163: POP
00000164: PUSH3 0x00016d
00000168: PUSH3 0x000421
0000016c: JUMP
0000016d: JUMPDEST
0000016e: PUSH1 0x40
00000170: MLOAD
00000171: PUSH3 0x00017c
00000175: SWAP2
00000176: SWAP1
00000177: PUSH3 0x00342c
0000017b: JUMP
0000017c: JUMPDEST
0000017d: PUSH1 0x40
0000017f: MLOAD
00000180: DUP1
00000181: SWAP2
00000182: SUB
00000183: SWAP1
00000184: RETURN
00000185: JUMPDEST
00000186: CALLVALUE
00000187: DUP1
00000188: ISZERO
00000189: PUSH3 0x000192
0000018d: JUMPI
0000018e: PUSH1 0x00
00000190: DUP1
00000191: REVERT
00000192: JUMPDEST
00000193: POP
00000194: PUSH3 0x000153
00000198: PUSH3 0x0001a4
0000019c: CALLDATASIZE
0000019d: PUSH1 0x04
0000019f: PUSH3 0x0031f6
000001a3: JUMP
000001a4: JUMPDEST
000001a5: PUSH3 0x000430
000001a9: JUMP
000001aa: JUMPDEST
000001ab: CALLVALUE
000001ac: DUP1
000001ad: ISZERO
000001ae: PUSH3 0x0001b7
000001b2: JUMPI
000001b3: PUSH1 0x00
000001b5: DUP1
000001b6: REVERT
000001b7: JUMPDEST
000001b8: POP
000001b9: PUSH3 0x000153
000001bd: PUSH3 0x0001c9
000001c1: CALLDATASIZE
000001c2: PUSH1 0x04
000001c4: PUSH3 0x002f52
000001c8: JUMP
000001c9: JUMPDEST
000001ca: PUSH3 0x000934
000001ce: JUMP
000001cf: JUMPDEST
000001d0: CALLVALUE
000001d1: DUP1
000001d2: ISZERO
000001d3: PUSH3 0x0001dc
000001d7: JUMPI
000001d8: PUSH1 0x00
000001da: DUP1
000001db: REVERT
000001dc: JUMPDEST
000001dd: POP
000001de: PUSH3 0x0001e7
000001e2: PUSH3 0x000a4e
000001e6: JUMP
000001e7: JUMPDEST
000001e8: PUSH1 0x40
000001ea: MLOAD
000001eb: PUSH3 0x00017c
000001ef: SWAP2
000001f0: SWAP1
000001f1: PUSH3 0x0034da
000001f5: JUMP
000001f6: JUMPDEST
000001f7: PUSH3 0x000153
000001fb: PUSH3 0x000a57
000001ff: JUMP
00000200: JUMPDEST
00000201: CALLVALUE
00000202: DUP1
00000203: ISZERO
00000204: PUSH3 0x00020d
00000208: JUMPI
00000209: PUSH1 0x00
0000020b: DUP1
0000020c: REVERT
0000020d: JUMPDEST
0000020e: POP
0000020f: PUSH3 0x000153
00000213: PUSH3 0x00021f
00000217: CALLDATASIZE
00000218: PUSH1 0x04
0000021a: PUSH3 0x002e70
0000021e: JUMP
0000021f: JUMPDEST
00000220: PUSH3 0x000dec
00000224: JUMP
00000225: JUMPDEST
00000226: CALLVALUE
00000227: DUP1
00000228: ISZERO
00000229: PUSH3 0x000232
0000022d: JUMPI
0000022e: PUSH1 0x00
00000230: DUP1
00000231: REVERT
00000232: JUMPDEST
00000233: POP
00000234: PUSH3 0x00016d
00000238: PUSH3 0x000244
0000023c: CALLDATASIZE
0000023d: PUSH1 0x04
0000023f: PUSH3 0x0031f6
00000243: JUMP
00000244: JUMPDEST
00000245: PUSH3 0x000f47
00000249: JUMP
0000024a: JUMPDEST
0000024b: CALLVALUE
0000024c: DUP1
0000024d: ISZERO
0000024e: PUSH3 0x000257
00000252: JUMPI
00000253: PUSH1 0x00
00000255: DUP1
00000256: REVERT
00000257: JUMPDEST
00000258: POP
00000259: PUSH3 0x000262
0000025d: PUSH3 0x000f6f
00000261: JUMP
00000262: JUMPDEST
00000263: PUSH1 0x40
00000265: MLOAD
00000266: PUSH3 0x00017c
0000026a: SWAP2
0000026b: SWAP1
0000026c: PUSH3 0x003baf
00000270: JUMP
00000271: JUMPDEST
00000272: CALLVALUE
00000273: DUP1
00000274: ISZERO
00000275: PUSH3 0x00027e
00000279: JUMPI
0000027a: PUSH1 0x00
0000027c: DUP1
0000027d: REVERT
0000027e: JUMPDEST
0000027f: POP
00000280: PUSH3 0x000153
00000284: PUSH3 0x000290
00000288: CALLDATASIZE
00000289: PUSH1 0x04
0000028b: PUSH3 0x0031f6
0000028f: JUMP
00000290: JUMPDEST
00000291: PUSH3 0x000f75
00000295: JUMP
00000296: JUMPDEST
00000297: CALLVALUE
00000298: DUP1
00000299: ISZERO
0000029a: PUSH3 0x0002a3
0000029e: JUMPI
0000029f: PUSH1 0x00
000002a1: DUP1
000002a2: REVERT
000002a3: JUMPDEST
000002a4: POP
000002a5: PUSH3 0x000153
000002a9: PUSH3 0x0002b5
000002ad: CALLDATASIZE
000002ae: PUSH1 0x04
000002b0: PUSH3 0x002dd7
000002b4: JUMP
000002b5: JUMPDEST
000002b6: PUSH3 0x00117b
000002ba: JUMP
000002bb: JUMPDEST
000002bc: CALLVALUE
000002bd: DUP1
000002be: ISZERO
000002bf: PUSH3 0x0002c8
000002c3: JUMPI
000002c4: PUSH1 0x00
000002c6: DUP1
000002c7: REVERT
000002c8: JUMPDEST
000002c9: POP
000002ca: PUSH3 0x000153
000002ce: PUSH3 0x0002da
000002d2: CALLDATASIZE
000002d3: PUSH1 0x04
000002d5: PUSH3 0x0031f6
000002d9: JUMP
000002da: JUMPDEST
000002db: PUSH3 0x0013f5
000002df: JUMP
000002e0: JUMPDEST
000002e1: CALLVALUE
000002e2: DUP1
000002e3: ISZERO
000002e4: PUSH3 0x0002ed
000002e8: JUMPI
000002e9: PUSH1 0x00
000002eb: DUP1
000002ec: REVERT
000002ed: JUMPDEST
000002ee: POP
000002ef: PUSH3 0x000153
000002f3: PUSH3 0x0002ff
000002f7: CALLDATASIZE
000002f8: PUSH1 0x04
000002fa: PUSH3 0x002d99
000002fe: JUMP
000002ff: JUMPDEST
00000300: PUSH3 0x0015ab
00000304: JUMP
00000305: JUMPDEST
00000306: CALLVALUE
00000307: DUP1
00000308: ISZERO
00000309: PUSH3 0x000312
0000030d: JUMPI
0000030e: PUSH1 0x00
00000310: DUP1
00000311: REVERT
00000312: JUMPDEST
00000313: POP
00000314: PUSH3 0x00031d
00000318: PUSH3 0x001803
0000031c: JUMP
0000031d: JUMPDEST
0000031e: PUSH1 0x40
00000320: MLOAD
00000321: PUSH3 0x00017c
00000325: SWAP2
00000326: SWAP1
00000327: PUSH3 0x003b25
0000032b: JUMP
0000032c: JUMPDEST
0000032d: CALLVALUE
0000032e: DUP1
0000032f: ISZERO
00000330: PUSH3 0x000339
00000334: JUMPI
00000335: PUSH1 0x00
00000337: DUP1
00000338: REVERT
00000339: JUMPDEST
0000033a: POP
0000033b: PUSH3 0x000344
0000033f: PUSH3 0x00181c
00000343: JUMP
00000344: JUMPDEST
00000345: PUSH1 0x40
00000347: MLOAD
00000348: PUSH3 0x00017c
0000034c: SWAP2
0000034d: SWAP1
0000034e: PUSH3 0x003b8a
00000352: JUMP
00000353: JUMPDEST
00000354: CALLVALUE
00000355: DUP1
00000356: ISZERO
00000357: PUSH3 0x000360
0000035b: JUMPI
0000035c: PUSH1 0x00
0000035e: DUP1
0000035f: REVERT
00000360: JUMPDEST
00000361: POP
00000362: PUSH3 0x0001e7
00000366: PUSH3 0x000372
0000036a: CALLDATASIZE
0000036b: PUSH1 0x04
0000036d: PUSH3 0x002d99
00000371: JUMP
00000372: JUMPDEST
00000373: PUSH3 0x001830
00000377: JUMP
00000378: JUMPDEST
00000379: PUSH3 0x000153
0000037d: PUSH3 0x0019ac
00000381: JUMP
00000382: JUMPDEST
00000383: CALLVALUE
00000384: DUP1
00000385: ISZERO
00000386: PUSH3 0x00038f
0000038a: JUMPI
0000038b: PUSH1 0x00
0000038d: DUP1
0000038e: REVERT
0000038f: JUMPDEST
00000390: POP
00000391: PUSH3 0x000153
00000395: PUSH3 0x0003a1
00000399: CALLDATASIZE
0000039a: PUSH1 0x04
0000039c: PUSH3 0x002e70
000003a0: JUMP
000003a1: JUMPDEST
000003a2: PUSH3 0x001df7
000003a6: JUMP
000003a7: JUMPDEST
000003a8: CALLVALUE
000003a9: DUP1
000003aa: ISZERO
000003ab: PUSH3 0x0003b4
000003af: JUMPI
000003b0: PUSH1 0x00
000003b2: DUP1
000003b3: REVERT
000003b4: JUMPDEST
000003b5: POP
000003b6: PUSH3 0x00016d
000003ba: PUSH3 0x0003c6
000003be: CALLDATASIZE
000003bf: PUSH1 0x04
000003c1: PUSH3 0x0031f6
000003c5: JUMP
000003c6: JUMPDEST
000003c7: PUSH3 0x002116
000003cb: JUMP
000003cc: JUMPDEST
000003cd: CALLVALUE
000003ce: DUP1
000003cf: ISZERO
000003d0: PUSH3 0x0003d9
000003d4: JUMPI
000003d5: PUSH1 0x00
000003d7: DUP1
000003d8: REVERT
000003d9: JUMPDEST
000003da: POP
000003db: PUSH3 0x00016d
000003df: PUSH3 0x002124
000003e3: JUMP
000003e4: JUMPDEST
000003e5: CALLVALUE
000003e6: DUP1
000003e7: ISZERO
000003e8: PUSH3 0x0003f1
000003ec: JUMPI
000003ed: PUSH1 0x00
000003ef: DUP1
000003f0: REVERT
000003f1: JUMPDEST
000003f2: POP
000003f3: PUSH3 0x0001e7
000003f7: PUSH3 0x000403
000003fb: CALLDATASIZE
000003fc: PUSH1 0x04
000003fe: PUSH3 0x002d99
00000402: JUMP
00000403: JUMPDEST
00000404: PUSH3 0x002133
00000408: JUMP
00000409: JUMPDEST
0000040a: CALLVALUE
0000040b: DUP1
0000040c: ISZERO
0000040d: PUSH3 0x000416
00000411: JUMPI
00000412: PUSH1 0x00
00000414: DUP1
00000415: REVERT
00000416: JUMPDEST
00000417: POP
00000418: PUSH3 0x00016d
0000041c: PUSH3 0x00220d
00000420: JUMP
00000421: JUMPDEST
00000422: PUSH1 0x02
00000424: SLOAD
00000425: PUSH1 0x01
00000427: PUSH1 0x01
00000429: PUSH1 0xa0
0000042b: SHL
0000042c: SUB
0000042d: AND
0000042e: DUP2
0000042f: JUMP
00000430: JUMPDEST
00000431: PUSH3 0x00043a
00000435: PUSH3 0x0029b2
00000439: JUMP
0000043a: JUMPDEST
0000043b: PUSH3 0x000444
0000043f: PUSH3 0x00221c
00000443: JUMP
00000444: JUMPDEST
00000445: PUSH1 0x40
00000447: DUP2
00000448: ADD
00000449: MLOAD
0000044a: SWAP1
0000044b: SWAP2
0000044c: POP
0000044d: ISZERO
0000044e: PUSH3 0x000475
00000452: JUMPI
00000453: PUSH1 0x40
00000455: MLOAD
00000456: PUSH3 0x461bcd
0000045a: PUSH1 0xe5
0000045c: SHL
0000045d: DUP2
0000045e: MSTORE
0000045f: PUSH1 0x04
00000461: ADD
00000462: PUSH3 0x00046c
00000466: SWAP1
00000467: PUSH3 0x0034e5
0000046b: JUMP
0000046c: JUMPDEST
0000046d: PUSH1 0x40
0000046f: MLOAD
00000470: DUP1
00000471: SWAP2
00000472: SUB
00000473: SWAP1
00000474: REVERT
00000475: JUMPDEST
00000476: PUSH3 0x00047f
0000047a: PUSH3 0x002a01
0000047e: JUMP
0000047f: JUMPDEST
00000480: PUSH3 0x000489
00000484: PUSH3 0x0022cf
00000488: JUMP
00000489: JUMPDEST
0000048a: PUSH1 0x20
0000048c: DUP2
0000048d: ADD
0000048e: MLOAD
0000048f: SWAP1
00000490: SWAP2
00000491: POP
00000492: PUSH3 0x00049b
00000496: PUSH3 0x0029b2
0000049a: JUMP
0000049b: JUMPDEST
0000049c: PUSH1 0x40
0000049e: MLOAD
0000049f: PUSH4 0xa094717b
000004a4: PUSH1 0xe0
000004a6: SHL
000004a7: DUP2
000004a8: MSTORE
000004a9: PUSH1 0x01
000004ab: PUSH1 0x01
000004ad: PUSH1 0xa0
000004af: SHL
000004b0: SUB
000004b1: DUP4
000004b2: AND
000004b3: SWAP1
000004b4: PUSH4 0xa094717b
000004b9: SWAP1
000004ba: PUSH3 0x0004cb
000004be: SWAP1
000004bf: ADDRESS
000004c0: SWAP1
000004c1: DUP8
000004c2: SWAP1
000004c3: PUSH1 0x04
000004c5: ADD
000004c6: PUSH3 0x003440
000004ca: JUMP
000004cb: JUMPDEST
000004cc: PUSH1 0x00
000004ce: PUSH1 0x40
000004d0: MLOAD
000004d1: DUP1
000004d2: DUP4
000004d3: SUB
000004d4: DUP2
000004d5: DUP7
000004d6: DUP1
000004d7: EXTCODESIZE
000004d8: ISZERO
000004d9: DUP1
000004da: ISZERO
000004db: PUSH3 0x0004e4
000004df: JUMPI
000004e0: PUSH1 0x00
000004e2: DUP1
000004e3: REVERT
000004e4: JUMPDEST
000004e5: POP
000004e6: GAS
000004e7: STATICCALL
000004e8: ISZERO
000004e9: DUP1
000004ea: ISZERO
000004eb: PUSH3 0x0004f9
000004ef: JUMPI
000004f0: RETURNDATASIZE
000004f1: PUSH1 0x00
000004f3: DUP1
000004f4: RETURNDATACOPY
000004f5: RETURNDATASIZE
000004f6: PUSH1 0x00
000004f8: REVERT
000004f9: JUMPDEST
000004fa: POP
000004fb: POP
000004fc: POP
000004fd: POP
000004fe: PUSH1 0x40
00000500: MLOAD
00000501: RETURNDATASIZE
00000502: PUSH1 0x00
00000504: DUP3
00000505: RETURNDATACOPY
00000506: PUSH1 0x1f
00000508: RETURNDATASIZE
00000509: SWAP1
0000050a: DUP2
0000050b: ADD
0000050c: PUSH1 0x1f
0000050e: NOT
0000050f: AND
00000510: DUP3
00000511: ADD
00000512: PUSH1 0x40
00000514: MSTORE
00000515: PUSH3 0x000523
00000519: SWAP2
0000051a: SWAP1
0000051b: DUP2
0000051c: ADD
0000051d: SWAP1
0000051e: PUSH3 0x002fdd
00000522: JUMP
00000523: JUMPDEST
00000524: SWAP1
00000525: POP
00000526: PUSH1 0x00
00000528: DUP3
00000529: PUSH1 0x01
0000052b: PUSH1 0x01
0000052d: PUSH1 0xa0
0000052f: SHL
00000530: SUB
00000531: AND
00000532: PUSH4 0x1f773228
00000537: DUP4
00000538: CALLER
00000539: PUSH1 0x40
0000053b: MLOAD
0000053c: DUP4
0000053d: PUSH4 0xffffffff
00000542: AND
00000543: PUSH1 0xe0
00000545: SHL
00000546: DUP2
00000547: MSTORE
00000548: PUSH1 0x04
0000054a: ADD
0000054b: PUSH3 0x000557
0000054f: SWAP3
00000550: SWAP2
00000551: SWAP1
00000552: PUSH3 0x003b3a
00000556: JUMP
00000557: JUMPDEST
00000558: PUSH1 0x20
0000055a: PUSH1 0x40
0000055c: MLOAD
0000055d: DUP1
0000055e: DUP4
0000055f: SUB
00000560: DUP2
00000561: DUP7
00000562: DUP1
00000563: EXTCODESIZE
00000564: ISZERO
00000565: DUP1
00000566: ISZERO
00000567: PUSH3 0x000570
0000056b: JUMPI
0000056c: PUSH1 0x00
0000056e: DUP1
0000056f: REVERT
00000570: JUMPDEST
00000571: POP
00000572: GAS
00000573: STATICCALL
00000574: ISZERO
00000575: DUP1
00000576: ISZERO
00000577: PUSH3 0x000585
0000057b: JUMPI
0000057c: RETURNDATASIZE
0000057d: PUSH1 0x00
0000057f: DUP1
00000580: RETURNDATACOPY
00000581: RETURNDATASIZE
00000582: PUSH1 0x00
00000584: REVERT
00000585: JUMPDEST
00000586: POP
00000587: POP
00000588: POP
00000589: POP
0000058a: PUSH1 0x40
0000058c: MLOAD
0000058d: RETURNDATASIZE
0000058e: PUSH1 0x1f
00000590: NOT
00000591: PUSH1 0x1f
00000593: DUP3
00000594: ADD
00000595: AND
00000596: DUP3
00000597: ADD
00000598: DUP1
00000599: PUSH1 0x40
0000059b: MSTORE
0000059c: POP
0000059d: DUP2
0000059e: ADD
0000059f: SWAP1
000005a0: PUSH3 0x0005ab
000005a4: SWAP2
000005a5: SWAP1
000005a6: PUSH3 0x002f35
000005aa: JUMP
000005ab: JUMPDEST
000005ac: SWAP1
000005ad: POP
000005ae: DUP1
000005af: PUSH3 0x0005cd
000005b3: JUMPI
000005b4: PUSH1 0x40
000005b6: MLOAD
000005b7: PUSH3 0x461bcd
000005bb: PUSH1 0xe5
000005bd: SHL
000005be: DUP2
000005bf: MSTORE
000005c0: PUSH1 0x04
000005c2: ADD
000005c3: PUSH3 0x00046c
000005c7: SWAP1
000005c8: PUSH3 0x00357d
000005cc: JUMP
000005cd: JUMPDEST
000005ce: PUSH1 0x02
000005d0: PUSH1 0x00
000005d2: SLOAD
000005d3: EQ
000005d4: ISZERO
000005d5: PUSH3 0x0005f3
000005d9: JUMPI
000005da: PUSH1 0x40
000005dc: MLOAD
000005dd: PUSH3 0x461bcd
000005e1: PUSH1 0xe5
000005e3: SHL
000005e4: DUP2
000005e5: MSTORE
000005e6: PUSH1 0x04
000005e8: ADD
000005e9: PUSH3 0x00046c
000005ed: SWAP1
000005ee: PUSH3 0x003ab7
000005f2: JUMP
000005f3: JUMPDEST
000005f4: PUSH1 0x02
000005f6: PUSH1 0x00
000005f8: SSTORE
000005f9: SELFBALANCE
000005fa: PUSH3 0x000618
000005fe: JUMPI
000005ff: PUSH1 0x40
00000601: MLOAD
00000602: PUSH3 0x461bcd
00000606: PUSH1 0xe5
00000608: SHL
00000609: DUP2
0000060a: MSTORE
0000060b: PUSH1 0x04
0000060d: ADD
0000060e: PUSH3 0x00046c
00000612: SWAP1
00000613: PUSH3 0x003a5a
00000617: JUMP
00000618: JUMPDEST
00000619: PUSH3 0x000622
0000061d: PUSH3 0x002a01
00000621: JUMP
00000622: JUMPDEST
00000623: PUSH3 0x00062c
00000627: PUSH3 0x0022cf
0000062b: JUMP
0000062c: JUMPDEST
0000062d: PUSH1 0x20
0000062f: DUP2
00000630: ADD
00000631: MLOAD
00000632: SWAP1
00000633: SWAP2
00000634: POP
00000635: PUSH3 0x00063e
00000639: PUSH3 0x0029b2
0000063d: JUMP
0000063e: JUMPDEST
0000063f: PUSH1 0x40
00000641: MLOAD
00000642: PUSH4 0xa094717b
00000647: PUSH1 0xe0
00000649: SHL
0000064a: DUP2
0000064b: MSTORE
0000064c: PUSH1 0x01
0000064e: PUSH1 0x01
00000650: PUSH1 0xa0
00000652: SHL
00000653: SUB
00000654: DUP4
00000655: AND
00000656: SWAP1
00000657: PUSH4 0xa094717b
0000065c: SWAP1
0000065d: PUSH3 0x00066e
00000661: SWAP1
00000662: ADDRESS
00000663: SWAP1
00000664: DUP8
00000665: SWAP1
00000666: PUSH1 0x04
00000668: ADD
00000669: PUSH3 0x003440
0000066d: JUMP
0000066e: JUMPDEST
0000066f: PUSH1 0x00
00000671: PUSH1 0x40
00000673: MLOAD
00000674: DUP1
00000675: DUP4
00000676: SUB
00000677: DUP2
00000678: DUP7
00000679: DUP1
0000067a: EXTCODESIZE
0000067b: ISZERO
0000067c: DUP1
0000067d: ISZERO
0000067e: PUSH3 0x000687
00000682: JUMPI
00000683: PUSH1 0x00
00000685: DUP1
00000686: REVERT
00000687: JUMPDEST
00000688: POP
00000689: GAS
0000068a: STATICCALL
0000068b: ISZERO
0000068c: DUP1
0000068d: ISZERO
0000068e: PUSH3 0x00069c
00000692: JUMPI
00000693: RETURNDATASIZE
00000694: PUSH1 0x00
00000696: DUP1
00000697: RETURNDATACOPY
00000698: RETURNDATASIZE
00000699: PUSH1 0x00
0000069b: REVERT
0000069c: JUMPDEST
0000069d: POP
0000069e: POP
0000069f: POP
000006a0: POP
000006a1: PUSH1 0x40
000006a3: MLOAD
000006a4: RETURNDATASIZE
000006a5: PUSH1 0x00
000006a7: DUP3
000006a8: RETURNDATACOPY
000006a9: PUSH1 0x1f
000006ab: RETURNDATASIZE
000006ac: SWAP1
000006ad: DUP2
000006ae: ADD
000006af: PUSH1 0x1f
000006b1: NOT
000006b2: AND
000006b3: DUP3
000006b4: ADD
000006b5: PUSH1 0x40
000006b7: MSTORE
000006b8: PUSH3 0x0006c6
000006bc: SWAP2
000006bd: SWAP1
000006be: DUP2
000006bf: ADD
000006c0: SWAP1
000006c1: PUSH3 0x002fdd
000006c5: JUMP
000006c6: JUMPDEST
000006c7: SWAP1
000006c8: POP
000006c9: PUSH3 0x0006d2
000006cd: PUSH3 0x002a36
000006d1: JUMP
000006d2: JUMPDEST
000006d3: PUSH1 0x80
000006d5: DUP5
000006d6: ADD
000006d7: MLOAD
000006d8: PUSH1 0xa0
000006da: DUP6
000006db: ADD
000006dc: MLOAD
000006dd: PUSH1 0x40
000006df: MLOAD
000006e0: PUSH4 0xa094717b
000006e5: PUSH1 0xe0
000006e7: SHL
000006e8: DUP2
000006e9: MSTORE
000006ea: PUSH1 0x01
000006ec: PUSH1 0x01
000006ee: PUSH1 0xa0
000006f0: SHL
000006f1: SUB
000006f2: SWAP1
000006f3: SWAP3
000006f4: AND
000006f5: SWAP2
000006f6: PUSH4 0xa094717b
000006fb: SWAP2
000006fc: PUSH3 0x00070b
00000700: SWAP2
00000701: DUP9
00000702: SWAP1
00000703: PUSH1 0x04
00000705: ADD
00000706: PUSH3 0x003440
0000070a: JUMP
0000070b: JUMPDEST
0000070c: PUSH1 0x00
0000070e: PUSH1 0x40
00000710: MLOAD
00000711: DUP1
00000712: DUP4
00000713: SUB
00000714: DUP2
00000715: DUP7
00000716: DUP1
00000717: EXTCODESIZE
00000718: ISZERO
00000719: DUP1
0000071a: ISZERO
0000071b: PUSH3 0x000724
0000071f: JUMPI
00000720: PUSH1 0x00
00000722: DUP1
00000723: REVERT
00000724: JUMPDEST
00000725: POP
00000726: GAS
00000727: STATICCALL
00000728: ISZERO
00000729: DUP1
0000072a: ISZERO
0000072b: PUSH3 0x000739
0000072f: JUMPI
00000730: RETURNDATASIZE
00000731: PUSH1 0x00
00000733: DUP1
00000734: RETURNDATACOPY
00000735: RETURNDATASIZE
00000736: PUSH1 0x00
00000738: REVERT
00000739: JUMPDEST
0000073a: POP
0000073b: POP
0000073c: POP
0000073d: POP
0000073e: PUSH1 0x40
00000740: MLOAD
00000741: RETURNDATASIZE
00000742: PUSH1 0x00
00000744: DUP3
00000745: RETURNDATACOPY
00000746: PUSH1 0x1f
00000748: RETURNDATASIZE
00000749: SWAP1
0000074a: DUP2
0000074b: ADD
0000074c: PUSH1 0x1f
0000074e: NOT
0000074f: AND
00000750: DUP3
00000751: ADD
00000752: PUSH1 0x40
00000754: MSTORE
00000755: PUSH3 0x000763
00000759: SWAP2
0000075a: SWAP1
0000075b: DUP2
0000075c: ADD
0000075d: SWAP1
0000075e: PUSH3 0x0030e3
00000762: JUMP
00000763: JUMPDEST
00000764: DUP1
00000765: MLOAD
00000766: SWAP1
00000767: SWAP2
00000768: POP
00000769: PUSH1 0x00
0000076b: JUMPDEST
0000076c: DUP4
0000076d: PUSH1 0xa0
0000076f: ADD
00000770: MLOAD
00000771: DUP2
00000772: LT
00000773: ISZERO
00000774: PUSH3 0x00088b
00000778: JUMPI
00000779: DUP2
0000077a: PUSH1 0x01
0000077c: PUSH1 0x01
0000077e: PUSH1 0xa0
00000780: SHL
00000781: SUB
00000782: AND
00000783: PUSH4 0x528c198a
00000788: DUP7
00000789: PUSH1 0x01
0000078b: PUSH1 0x01
0000078d: PUSH1 0xa0
0000078f: SHL
00000790: SUB
00000791: AND
00000792: PUSH4 0xd21957e2
00000797: DUP8
00000798: DUP6
00000799: PUSH1 0x40
0000079b: MLOAD
0000079c: DUP4
0000079d: PUSH4 0xffffffff
000007a2: AND
000007a3: PUSH1 0xe0
000007a5: SHL
000007a6: DUP2
000007a7: MSTORE
000007a8: PUSH1 0x04
000007aa: ADD
000007ab: PUSH3 0x0007b7
000007af: SWAP3
000007b0: SWAP2
000007b1: SWAP1
000007b2: PUSH3 0x003b66
000007b6: JUMP
000007b7: JUMPDEST
000007b8: PUSH1 0x20
000007ba: PUSH1 0x40
000007bc: MLOAD
000007bd: DUP1
000007be: DUP4
000007bf: SUB
000007c0: DUP2
000007c1: DUP7
000007c2: DUP1
000007c3: EXTCODESIZE
000007c4: ISZERO
000007c5: DUP1
000007c6: ISZERO
000007c7: PUSH3 0x0007d0
000007cb: JUMPI
000007cc: PUSH1 0x00
000007ce: DUP1
000007cf: REVERT
000007d0: JUMPDEST
000007d1: POP
000007d2: GAS
000007d3: STATICCALL
000007d4: ISZERO
000007d5: DUP1
000007d6: ISZERO
000007d7: PUSH3 0x0007e5
000007db: JUMPI
000007dc: RETURNDATASIZE
000007dd: PUSH1 0x00
000007df: DUP1
000007e0: RETURNDATACOPY
000007e1: RETURNDATASIZE
000007e2: PUSH1 0x00
000007e4: REVERT
000007e5: JUMPDEST
000007e6: POP
000007e7: POP
000007e8: POP
000007e9: POP
000007ea: PUSH1 0x40
000007ec: MLOAD
000007ed: RETURNDATASIZE
000007ee: PUSH1 0x1f
000007f0: NOT
000007f1: PUSH1 0x1f
000007f3: DUP3
000007f4: ADD
000007f5: AND
000007f6: DUP3
000007f7: ADD
000007f8: DUP1
000007f9: PUSH1 0x40
000007fb: MSTORE
000007fc: POP
000007fd: DUP2
000007fe: ADD
000007ff: SWAP1
00000800: PUSH3 0x00080b
00000804: SWAP2
00000805: SWAP1
00000806: PUSH3 0x002db8
0000080a: JUMP
0000080b: JUMPDEST
0000080c: DUP15
0000080d: PUSH1 0x40
0000080f: MLOAD
00000810: DUP4
00000811: PUSH4 0xffffffff
00000816: AND
00000817: PUSH1 0xe0
00000819: SHL
0000081a: DUP2
0000081b: MSTORE
0000081c: PUSH1 0x04
0000081e: ADD
0000081f: PUSH3 0x00082b
00000823: SWAP3
00000824: SWAP2
00000825: SWAP1
00000826: PUSH3 0x00345f
0000082a: JUMP
0000082b: JUMPDEST
0000082c: PUSH1 0x20
0000082e: PUSH1 0x40
00000830: MLOAD
00000831: DUP1
00000832: DUP4
00000833: SUB
00000834: DUP2
00000835: PUSH1 0x00
00000837: DUP8
00000838: DUP1
00000839: EXTCODESIZE
0000083a: ISZERO
0000083b: DUP1
0000083c: ISZERO
0000083d: PUSH3 0x000846
00000841: JUMPI
00000842: PUSH1 0x00
00000844: DUP1
00000845: REVERT
00000846: JUMPDEST
00000847: POP
00000848: GAS
00000849: CALL
0000084a: ISZERO
0000084b: DUP1
0000084c: ISZERO
0000084d: PUSH3 0x00085b
00000851: JUMPI
00000852: RETURNDATASIZE
00000853: PUSH1 0x00
00000855: DUP1
00000856: RETURNDATACOPY
00000857: RETURNDATASIZE
00000858: PUSH1 0x00
0000085a: REVERT
0000085b: JUMPDEST
0000085c: POP
0000085d: POP
0000085e: POP
0000085f: POP
00000860: PUSH1 0x40
00000862: MLOAD
00000863: RETURNDATASIZE
00000864: PUSH1 0x1f
00000866: NOT
00000867: PUSH1 0x1f
00000869: DUP3
0000086a: ADD
0000086b: AND
0000086c: DUP3
0000086d: ADD
0000086e: DUP1
0000086f: PUSH1 0x40
00000871: MSTORE
00000872: POP
00000873: DUP2
00000874: ADD
00000875: SWAP1
00000876: PUSH3 0x000881
0000087a: SWAP2
0000087b: SWAP1
0000087c: PUSH3 0x002f35
00000880: JUMP
00000881: JUMPDEST
00000882: POP
00000883: PUSH1 0x01
00000885: ADD
00000886: PUSH3 0x00076b
0000088a: JUMP
0000088b: JUMPDEST
0000088c: POP
0000088d: PUSH1 0x01
0000088f: PUSH1 0x40
00000891: DUP1
00000892: DUP6
00000893: ADD
00000894: SWAP2
00000895: SWAP1
00000896: SWAP2
00000897: MSTORE
00000898: MLOAD
00000899: PUSH4 0x8ddf5ad7
0000089e: PUSH1 0xe0
000008a0: SHL
000008a1: DUP2
000008a2: MSTORE
000008a3: PUSH1 0x01
000008a5: PUSH1 0x01
000008a7: PUSH1 0xa0
000008a9: SHL
000008aa: SUB
000008ab: DUP6
000008ac: AND
000008ad: SWAP1
000008ae: PUSH4 0x8ddf5ad7
000008b3: SWAP1
000008b4: PUSH3 0x0008c3
000008b8: SWAP1
000008b9: DUP7
000008ba: SWAP1
000008bb: PUSH1 0x04
000008bd: ADD
000008be: PUSH3 0x003b25
000008c2: JUMP
000008c3: JUMPDEST
000008c4: PUSH1 0x00
000008c6: PUSH1 0x40
000008c8: MLOAD
000008c9: DUP1
000008ca: DUP4
000008cb: SUB
000008cc: DUP2
000008cd: PUSH1 0x00
000008cf: DUP8
000008d0: DUP1
000008d1: EXTCODESIZE
000008d2: ISZERO
000008d3: DUP1
000008d4: ISZERO
000008d5: PUSH3 0x0008de
000008d9: JUMPI
000008da: PUSH1 0x00
000008dc: DUP1
000008dd: REVERT
000008de: JUMPDEST
000008df: POP
000008e0: GAS
000008e1: CALL
000008e2: ISZERO
000008e3: DUP1
000008e4: ISZERO
000008e5: PUSH3 0x0008f3
000008e9: JUMPI
000008ea: RETURNDATASIZE
000008eb: PUSH1 0x00
000008ed: DUP1
000008ee: RETURNDATACOPY
000008ef: RETURNDATASIZE
000008f0: PUSH1 0x00
000008f2: REVERT
000008f3: JUMPDEST
000008f4: POP
000008f5: POP
000008f6: PUSH1 0x40
000008f8: MLOAD
000008f9: CALLER
000008fa: SWAP3
000008fb: POP
000008fc: PUSH32 0x531d8741ce68554af130fdf373b13575ca1ee3bbcdd61b3981c40e59e4067129
0000091d: SWAP2
0000091e: POP
0000091f: PUSH1 0x00
00000921: SWAP1
00000922: LOG2
00000923: POP
00000924: POP
00000925: PUSH1 0x01
00000927: PUSH1 0x00
00000929: SSTORE
0000092a: POP
0000092b: POP
0000092c: POP
0000092d: POP
0000092e: POP
0000092f: POP
00000930: POP
00000931: POP
00000932: POP
00000933: JUMP
00000934: JUMPDEST
00000935: PUSH3 0x00093e
00000939: PUSH3 0x0029b2
0000093d: JUMP
0000093e: JUMPDEST
0000093f: PUSH3 0x000948
00000943: PUSH3 0x00221c
00000947: JUMP
00000948: JUMPDEST
00000949: PUSH1 0x40
0000094b: DUP2
0000094c: ADD
0000094d: MLOAD
0000094e: SWAP1
0000094f: SWAP2
00000950: POP
00000951: ISZERO
00000952: PUSH3 0x000970
00000956: JUMPI
00000957: PUSH1 0x40
00000959: MLOAD
0000095a: PUSH3 0x461bcd
0000095e: PUSH1 0xe5
00000960: SHL
00000961: DUP2
00000962: MSTORE
00000963: PUSH1 0x04
00000965: ADD
00000966: PUSH3 0x00046c
0000096a: SWAP1
0000096b: PUSH3 0x0034e5
0000096f: JUMP
00000970: JUMPDEST
00000971: PUSH1 0x01
00000973: SLOAD
00000974: PUSH1 0x01
00000976: PUSH1 0x01
00000978: PUSH1 0xa0
0000097a: SHL
0000097b: SUB
0000097c: AND
0000097d: CALLER
0000097e: EQ
0000097f: PUSH3 0x00099d
00000983: JUMPI
00000984: PUSH1 0x40
00000986: MLOAD
00000987: PUSH3 0x461bcd
0000098b: PUSH1 0xe5
0000098d: SHL
0000098e: DUP2
0000098f: MSTORE
00000990: PUSH1 0x04
00000992: ADD
00000993: PUSH3 0x00046c
00000997: SWAP1
00000998: PUSH3 0x003674
0000099c: JUMP
0000099d: JUMPDEST
0000099e: PUSH1 0x02
000009a0: PUSH1 0x00
000009a2: SLOAD
000009a3: EQ
000009a4: ISZERO
000009a5: PUSH3 0x0009c3
000009a9: JUMPI
000009aa: PUSH1 0x40
000009ac: MLOAD
000009ad: PUSH3 0x461bcd
000009b1: PUSH1 0xe5
000009b3: SHL
000009b4: DUP2
000009b5: MSTORE
000009b6: PUSH1 0x04
000009b8: ADD
000009b9: PUSH3 0x00046c
000009bd: SWAP1
000009be: PUSH3 0x003ab7
000009c2: JUMP
000009c3: JUMPDEST
000009c4: PUSH1 0x02
000009c6: PUSH1 0x00
000009c8: SSTORE
000009c9: PUSH3 0x0009d2
000009cd: PUSH3 0x002a01
000009d1: JUMP
000009d2: JUMPDEST
000009d3: PUSH3 0x0009dc
000009d7: PUSH3 0x0022cf
000009db: JUMP
000009dc: JUMPDEST
000009dd: SWAP1
000009de: POP
000009df: PUSH3 0x0009e8
000009e3: PUSH3 0x002a36
000009e7: JUMP
000009e8: JUMPDEST
000009e9: PUSH1 0x03
000009eb: SLOAD
000009ec: PUSH3 0x000a06
000009f0: SWAP1
000009f1: PUSH1 0x01
000009f3: PUSH1 0x01
000009f5: PUSH1 0xa0
000009f7: SHL
000009f8: SUB
000009f9: AND
000009fa: DUP11
000009fb: DUP11
000009fc: DUP11
000009fd: DUP11
000009fe: DUP11
000009ff: DUP11
00000a00: DUP10
00000a01: PUSH3 0x00235f
00000a05: JUMP
00000a06: JUMPDEST
00000a07: DUP1
00000a08: MLOAD
00000a09: PUSH1 0x40
00000a0b: MLOAD
00000a0c: SWAP2
00000a0d: SWAP3
00000a0e: POP
00000a0f: PUSH1 0x01
00000a11: PUSH1 0x01
00000a13: PUSH1 0xa0
00000a15: SHL
00000a16: SUB
00000a17: AND
00000a18: SWAP1
00000a19: PUSH32 0xad65bbe394ae719938a7445c7588b2cdb455ea64f1364115b1e073e31bb1af9b
00000a3a: SWAP1
00000a3b: PUSH1 0x00
00000a3d: SWAP1
00000a3e: LOG2
00000a3f: POP
00000a40: POP
00000a41: PUSH1 0x01
00000a43: PUSH1 0x00
00000a45: SSTORE
00000a46: POP
00000a47: POP
00000a48: POP
00000a49: POP
00000a4a: POP
00000a4b: POP
00000a4c: POP
00000a4d: JUMP
00000a4e: JUMPDEST
00000a4f: PUSH1 0x06
00000a51: SLOAD
00000a52: PUSH1 0xff
00000a54: AND
00000a55: DUP2
00000a56: JUMP
00000a57: JUMPDEST
00000a58: PUSH3 0x000a61
00000a5c: PUSH3 0x0029b2
00000a60: JUMP
00000a61: JUMPDEST
00000a62: PUSH3 0x000a6b
00000a66: PUSH3 0x00221c
00000a6a: JUMP
00000a6b: JUMPDEST
00000a6c: PUSH1 0x40
00000a6e: DUP2
00000a6f: ADD
00000a70: MLOAD
00000a71: SWAP1
00000a72: SWAP2
00000a73: POP
00000a74: ISZERO
00000a75: PUSH3 0x000a93
00000a79: JUMPI
00000a7a: PUSH1 0x40
00000a7c: MLOAD
00000a7d: PUSH3 0x461bcd
00000a81: PUSH1 0xe5
00000a83: SHL
00000a84: DUP2
00000a85: MSTORE
00000a86: PUSH1 0x04
00000a88: ADD
00000a89: PUSH3 0x00046c
00000a8d: SWAP1
00000a8e: PUSH3 0x0034e5
00000a92: JUMP
00000a93: JUMPDEST
00000a94: PUSH3 0x000a9d
00000a98: PUSH3 0x002a01
00000a9c: JUMP
00000a9d: JUMPDEST
00000a9e: PUSH3 0x000aa7
00000aa2: PUSH3 0x0022cf
00000aa6: JUMP
00000aa7: JUMPDEST
00000aa8: PUSH1 0x20
00000aaa: DUP2
00000aab: ADD
00000aac: MLOAD
00000aad: SWAP1
00000aae: SWAP2
00000aaf: POP
00000ab0: PUSH3 0x000ab9
00000ab4: PUSH3 0x0029b2
00000ab8: JUMP
00000ab9: JUMPDEST
00000aba: PUSH1 0x40
00000abc: MLOAD
00000abd: PUSH4 0xa094717b
00000ac2: PUSH1 0xe0
00000ac4: SHL
00000ac5: DUP2
00000ac6: MSTORE
00000ac7: PUSH1 0x01
00000ac9: PUSH1 0x01
00000acb: PUSH1 0xa0
00000acd: SHL
00000ace: SUB
00000acf: DUP4
00000ad0: AND
00000ad1: SWAP1
00000ad2: PUSH4 0xa094717b
00000ad7: SWAP1
00000ad8: PUSH3 0x000ae9
00000adc: SWAP1
00000add: ADDRESS
00000ade: SWAP1
00000adf: DUP8
00000ae0: SWAP1
00000ae1: PUSH1 0x04
00000ae3: ADD
00000ae4: PUSH3 0x003440
00000ae8: JUMP
00000ae9: JUMPDEST
00000aea: PUSH1 0x00
00000aec: PUSH1 0x40
00000aee: MLOAD
00000aef: DUP1
00000af0: DUP4
00000af1: SUB
00000af2: DUP2
00000af3: DUP7
00000af4: DUP1
00000af5: EXTCODESIZE
00000af6: ISZERO
00000af7: DUP1
00000af8: ISZERO
00000af9: PUSH3 0x000b02
00000afd: JUMPI
00000afe: PUSH1 0x00
00000b00: DUP1
00000b01: REVERT
00000b02: JUMPDEST
00000b03: POP
00000b04: GAS
00000b05: STATICCALL
00000b06: ISZERO
00000b07: DUP1
00000b08: ISZERO
00000b09: PUSH3 0x000b17
00000b0d: JUMPI
00000b0e: RETURNDATASIZE
00000b0f: PUSH1 0x00
00000b11: DUP1
00000b12: RETURNDATACOPY
00000b13: RETURNDATASIZE
00000b14: PUSH1 0x00
00000b16: REVERT
00000b17: JUMPDEST
00000b18: POP
00000b19: POP
00000b1a: POP
00000b1b: POP
00000b1c: PUSH1 0x40
00000b1e: MLOAD
00000b1f: RETURNDATASIZE
00000b20: PUSH1 0x00
00000b22: DUP3
00000b23: RETURNDATACOPY
00000b24: PUSH1 0x1f
00000b26: RETURNDATASIZE
00000b27: SWAP1
00000b28: DUP2
00000b29: ADD
00000b2a: PUSH1 0x1f
00000b2c: NOT
00000b2d: AND
00000b2e: DUP3
00000b2f: ADD
00000b30: PUSH1 0x40
00000b32: MSTORE
00000b33: PUSH3 0x000b41
00000b37: SWAP2
00000b38: SWAP1
00000b39: DUP2
00000b3a: ADD
00000b3b: SWAP1
00000b3c: PUSH3 0x002fdd
00000b40: JUMP
00000b41: JUMPDEST
00000b42: SWAP1
00000b43: POP
00000b44: PUSH1 0x00
00000b46: DUP3
00000b47: PUSH1 0x01
00000b49: PUSH1 0x01
00000b4b: PUSH1 0xa0
00000b4d: SHL
00000b4e: SUB
00000b4f: AND
00000b50: PUSH4 0x1f773228
00000b55: DUP4
00000b56: CALLER
00000b57: PUSH1 0x40
00000b59: MLOAD
00000b5a: DUP4
00000b5b: PUSH4 0xffffffff
00000b60: AND
00000b61: PUSH1 0xe0
00000b63: SHL
00000b64: DUP2
00000b65: MSTORE
00000b66: PUSH1 0x04
00000b68: ADD
00000b69: PUSH3 0x000b75
00000b6d: SWAP3
00000b6e: SWAP2
00000b6f: SWAP1
00000b70: PUSH3 0x003b3a
00000b74: JUMP
00000b75: JUMPDEST
00000b76: PUSH1 0x20
00000b78: PUSH1 0x40
00000b7a: MLOAD
00000b7b: DUP1
00000b7c: DUP4
00000b7d: SUB
00000b7e: DUP2
00000b7f: DUP7
00000b80: DUP1
00000b81: EXTCODESIZE
00000b82: ISZERO
00000b83: DUP1
00000b84: ISZERO
00000b85: PUSH3 0x000b8e
00000b89: JUMPI
00000b8a: PUSH1 0x00
00000b8c: DUP1
00000b8d: REVERT
00000b8e: JUMPDEST
00000b8f: POP
00000b90: GAS
00000b91: STATICCALL
00000b92: ISZERO
00000b93: DUP1
00000b94: ISZERO
00000b95: PUSH3 0x000ba3
00000b99: JUMPI
00000b9a: RETURNDATASIZE
00000b9b: PUSH1 0x00
00000b9d: DUP1
00000b9e: RETURNDATACOPY
00000b9f: RETURNDATASIZE
00000ba0: PUSH1 0x00
00000ba2: REVERT
00000ba3: JUMPDEST
00000ba4: POP
00000ba5: POP
00000ba6: POP
00000ba7: POP
00000ba8: PUSH1 0x40
00000baa: MLOAD
00000bab: RETURNDATASIZE
00000bac: PUSH1 0x1f
00000bae: NOT
00000baf: PUSH1 0x1f
00000bb1: DUP3
00000bb2: ADD
00000bb3: AND
00000bb4: DUP3
00000bb5: ADD
00000bb6: DUP1
00000bb7: PUSH1 0x40
00000bb9: MSTORE
00000bba: POP
00000bbb: DUP2
00000bbc: ADD
00000bbd: SWAP1
00000bbe: PUSH3 0x000bc9
00000bc2: SWAP2
00000bc3: SWAP1
00000bc4: PUSH3 0x002f35
00000bc8: JUMP
00000bc9: JUMPDEST
00000bca: SWAP1
00000bcb: POP
00000bcc: DUP1
00000bcd: PUSH3 0x000beb
00000bd1: JUMPI
00000bd2: PUSH1 0x40
00000bd4: MLOAD
00000bd5: PUSH3 0x461bcd
00000bd9: PUSH1 0xe5
00000bdb: SHL
00000bdc: DUP2
00000bdd: MSTORE
00000bde: PUSH1 0x04
00000be0: ADD
00000be1: PUSH3 0x00046c
00000be5: SWAP1
00000be6: PUSH3 0x00357d
00000bea: JUMP
00000beb: JUMPDEST
00000bec: PUSH3 0x000bf5
00000bf0: PUSH3 0x002a01
00000bf4: JUMP
00000bf5: JUMPDEST
00000bf6: PUSH3 0x000bff
00000bfa: PUSH3 0x0022cf
00000bfe: JUMP
00000bff: JUMPDEST
00000c00: SWAP1
00000c01: POP
00000c02: PUSH1 0x00
00000c04: DUP2
00000c05: PUSH1 0x80
00000c07: ADD
00000c08: MLOAD
00000c09: PUSH1 0x01
00000c0b: PUSH1 0x01
00000c0d: PUSH1 0xa0
00000c0f: SHL
00000c10: SUB
00000c11: AND
00000c12: PUSH4 0x7663f822
00000c17: DUP4
00000c18: PUSH1 0xa0
00000c1a: ADD
00000c1b: MLOAD
00000c1c: DUP5
00000c1d: PUSH1 0x00
00000c1f: ADD
00000c20: MLOAD
00000c21: PUSH1 0x40
00000c23: MLOAD
00000c24: DUP4
00000c25: PUSH4 0xffffffff
00000c2a: AND
00000c2b: PUSH1 0xe0
00000c2d: SHL
00000c2e: DUP2
00000c2f: MSTORE
00000c30: PUSH1 0x04
00000c32: ADD
00000c33: PUSH3 0x000c3f
00000c37: SWAP3
00000c38: SWAP2
00000c39: SWAP1
00000c3a: PUSH3 0x003478
00000c3e: JUMP
00000c3f: JUMPDEST
00000c40: PUSH1 0x20
00000c42: PUSH1 0x40
00000c44: MLOAD
00000c45: DUP1
00000c46: DUP4
00000c47: SUB
00000c48: DUP2
00000c49: DUP7
00000c4a: DUP1
00000c4b: EXTCODESIZE
00000c4c: ISZERO
00000c4d: DUP1
00000c4e: ISZERO
00000c4f: PUSH3 0x000c58
00000c53: JUMPI
00000c54: PUSH1 0x00
00000c56: DUP1
00000c57: REVERT
00000c58: JUMPDEST
00000c59: POP
00000c5a: GAS
00000c5b: STATICCALL
00000c5c: ISZERO
00000c5d: DUP1
00000c5e: ISZERO
00000c5f: PUSH3 0x000c6d
00000c63: JUMPI
00000c64: RETURNDATASIZE
00000c65: PUSH1 0x00
00000c67: DUP1
00000c68: RETURNDATACOPY
00000c69: RETURNDATASIZE
00000c6a: PUSH1 0x00
00000c6c: REVERT
00000c6d: JUMPDEST
00000c6e: POP
00000c6f: POP
00000c70: POP
00000c71: POP
00000c72: PUSH1 0x40
00000c74: MLOAD
00000c75: RETURNDATASIZE
00000c76: PUSH1 0x1f
00000c78: NOT
00000c79: PUSH1 0x1f
00000c7b: DUP3
00000c7c: ADD
00000c7d: AND
00000c7e: DUP3
00000c7f: ADD
00000c80: DUP1
00000c81: PUSH1 0x40
00000c83: MSTORE
00000c84: POP
00000c85: DUP2
00000c86: ADD
00000c87: SWAP1
00000c88: PUSH3 0x000c93
00000c8c: SWAP2
00000c8d: SWAP1
00000c8e: PUSH3 0x002f35
00000c92: JUMP
00000c93: JUMPDEST
00000c94: SWAP1
00000c95: POP
00000c96: DUP1
00000c97: PUSH3 0x000cb5
00000c9b: JUMPI
00000c9c: PUSH1 0x40
00000c9e: MLOAD
00000c9f: PUSH3 0x461bcd
00000ca3: PUSH1 0xe5
00000ca5: SHL
00000ca6: DUP2
00000ca7: MSTORE
00000ca8: PUSH1 0x04
00000caa: ADD
00000cab: PUSH3 0x00046c
00000caf: SWAP1
00000cb0: PUSH3 0x003a0d
00000cb4: JUMP
00000cb5: JUMPDEST
00000cb6: PUSH1 0x02
00000cb8: PUSH1 0x00
00000cba: SLOAD
00000cbb: EQ
00000cbc: ISZERO
00000cbd: PUSH3 0x000cdb
00000cc1: JUMPI
00000cc2: PUSH1 0x40
00000cc4: MLOAD
00000cc5: PUSH3 0x461bcd
00000cc9: PUSH1 0xe5
00000ccb: SHL
00000ccc: DUP2
00000ccd: MSTORE
00000cce: PUSH1 0x04
00000cd0: ADD
00000cd1: PUSH3 0x00046c
00000cd5: SWAP1
00000cd6: PUSH3 0x003ab7
00000cda: JUMP
00000cdb: JUMPDEST
00000cdc: PUSH1 0x02
00000cde: PUSH1 0x00
00000ce0: SSTORE
00000ce1: PUSH3 0x000cea
00000ce5: PUSH3 0x002a36
00000ce9: JUMP
00000cea: JUMPDEST
00000ceb: PUSH3 0x000cf4
00000cef: PUSH3 0x002452
00000cf3: JUMP
00000cf4: JUMPDEST
00000cf5: SWAP1
00000cf6: POP
00000cf7: PUSH1 0x00
00000cf9: CALLVALUE
00000cfa: SWAP1
00000cfb: POP
00000cfc: PUSH1 0x00
00000cfe: PUSH3 0x000d0d
00000d02: DUP3
00000d03: DUP5
00000d04: PUSH1 0x60
00000d06: ADD
00000d07: MLOAD
00000d08: PUSH3 0x002502
00000d0c: JUMP
00000d0d: JUMPDEST
00000d0e: DUP4
00000d0f: MLOAD
00000d10: PUSH1 0x40
00000d12: MLOAD
00000d13: PUSH4 0x29460cc5
00000d18: PUSH1 0xe1
00000d1a: SHL
00000d1b: DUP2
00000d1c: MSTORE
00000d1d: SWAP2
00000d1e: SWAP3
00000d1f: POP
00000d20: PUSH1 0x01
00000d22: PUSH1 0x01
00000d24: PUSH1 0xa0
00000d26: SHL
00000d27: SUB
00000d28: AND
00000d29: SWAP1
00000d2a: PUSH4 0x528c198a
00000d2f: SWAP1
00000d30: PUSH3 0x000d41
00000d34: SWAP1
00000d35: CALLER
00000d36: SWAP1
00000d37: DUP6
00000d38: SWAP1
00000d39: PUSH1 0x04
00000d3b: ADD
00000d3c: PUSH3 0x00345f
00000d40: JUMP
00000d41: JUMPDEST
00000d42: PUSH1 0x20
00000d44: PUSH1 0x40
00000d46: MLOAD
00000d47: DUP1
00000d48: DUP4
00000d49: SUB
00000d4a: DUP2
00000d4b: PUSH1 0x00
00000d4d: DUP8
00000d4e: DUP1
00000d4f: EXTCODESIZE
00000d50: ISZERO
00000d51: DUP1
00000d52: ISZERO
00000d53: PUSH3 0x000d5c
00000d57: JUMPI
00000d58: PUSH1 0x00
00000d5a: DUP1
00000d5b: REVERT
00000d5c: JUMPDEST
00000d5d: POP
00000d5e: GAS
00000d5f: CALL
00000d60: ISZERO
00000d61: DUP1
00000d62: ISZERO
00000d63: PUSH3 0x000d71
00000d67: JUMPI
00000d68: RETURNDATASIZE
00000d69: PUSH1 0x00
00000d6b: DUP1
00000d6c: RETURNDATACOPY
00000d6d: RETURNDATASIZE
00000d6e: PUSH1 0x00
00000d70: REVERT
00000d71: JUMPDEST
00000d72: POP
00000d73: POP
00000d74: POP
00000d75: POP
00000d76: PUSH1 0x40
00000d78: MLOAD
00000d79: RETURNDATASIZE
00000d7a: PUSH1 0x1f
00000d7c: NOT
00000d7d: PUSH1 0x1f
00000d7f: DUP3
00000d80: ADD
00000d81: AND
00000d82: DUP3
00000d83: ADD
00000d84: DUP1
00000d85: PUSH1 0x40
00000d87: MSTORE
00000d88: POP
00000d89: DUP2
00000d8a: ADD
00000d8b: SWAP1
00000d8c: PUSH3 0x000d97
00000d90: SWAP2
00000d91: SWAP1
00000d92: PUSH3 0x002f35
00000d96: JUMP
00000d97: JUMPDEST
00000d98: POP
00000d99: CALLER
00000d9a: PUSH1 0x01
00000d9c: PUSH1 0x01
00000d9e: PUSH1 0xa0
00000da0: SHL
00000da1: SUB
00000da2: AND
00000da3: PUSH32 0xa96fef7037987460add666d968bcde669ee0974f50e035c76e65a383d8299967
00000dc4: DUP3
00000dc5: PUSH1 0x40
00000dc7: MLOAD
00000dc8: PUSH3 0x000dd3
00000dcc: SWAP2
00000dcd: SWAP1
00000dce: PUSH3 0x003baf
00000dd2: JUMP
00000dd3: JUMPDEST
00000dd4: PUSH1 0x40
00000dd6: MLOAD
00000dd7: DUP1
00000dd8: SWAP2
00000dd9: SUB
00000dda: SWAP1
00000ddb: LOG2
00000ddc: POP
00000ddd: POP
00000dde: PUSH1 0x01
00000de0: PUSH1 0x00
00000de2: SSTORE
00000de3: POP
00000de4: POP
00000de5: POP
00000de6: POP
00000de7: POP
00000de8: POP
00000de9: POP
00000dea: POP
00000deb: JUMP
00000dec: JUMPDEST
00000ded: PUSH1 0x03
00000def: SLOAD
00000df0: PUSH1 0x01
00000df2: PUSH1 0x01
00000df4: PUSH1 0xa0
00000df6: SHL
00000df7: SUB
00000df8: AND
00000df9: CALLER
00000dfa: EQ
00000dfb: PUSH3 0x000e19
00000dff: JUMPI
00000e00: PUSH1 0x40
00000e02: MLOAD
00000e03: PUSH3 0x461bcd
00000e07: PUSH1 0xe5
00000e09: SHL
00000e0a: DUP2
00000e0b: MSTORE
00000e0c: PUSH1 0x04
00000e0e: ADD
00000e0f: PUSH3 0x00046c
00000e13: SWAP1
00000e14: PUSH3 0x0036fd
00000e18: JUMP
00000e19: JUMPDEST
00000e1a: PUSH1 0x02
00000e1c: PUSH1 0x00
00000e1e: SLOAD
00000e1f: EQ
00000e20: ISZERO
00000e21: PUSH3 0x000e3f
00000e25: JUMPI
00000e26: PUSH1 0x40
00000e28: MLOAD
00000e29: PUSH3 0x461bcd
00000e2d: PUSH1 0xe5
00000e2f: SHL
00000e30: DUP2
00000e31: MSTORE
00000e32: PUSH1 0x04
00000e34: ADD
00000e35: PUSH3 0x00046c
00000e39: SWAP1
00000e3a: PUSH3 0x003ab7
00000e3e: JUMP
00000e3f: JUMPDEST
00000e40: PUSH1 0x02
00000e42: PUSH1 0x00
00000e44: SSTORE
00000e45: DUP1
00000e46: MLOAD
00000e47: DUP3
00000e48: MLOAD
00000e49: EQ
00000e4a: PUSH3 0x000e68
00000e4e: JUMPI
00000e4f: PUSH1 0x40
00000e51: MLOAD
00000e52: PUSH3 0x461bcd
00000e56: PUSH1 0xe5
00000e58: SHL
00000e59: DUP2
00000e5a: MSTORE
00000e5b: PUSH1 0x04
00000e5d: ADD
00000e5e: PUSH3 0x00046c
00000e62: SWAP1
00000e63: PUSH3 0x0036ab
00000e67: JUMP
00000e68: JUMPDEST
00000e69: PUSH1 0x00
00000e6b: PUSH3 0x000e74
00000e6f: PUSH3 0x002452
00000e73: JUMP
00000e74: JUMPDEST
00000e75: MLOAD
00000e76: SWAP1
00000e77: POP
00000e78: PUSH1 0x00
00000e7a: JUMPDEST
00000e7b: DUP4
00000e7c: MLOAD
00000e7d: DUP2
00000e7e: LT
00000e7f: ISZERO
00000e80: PUSH3 0x000f3c
00000e84: JUMPI
00000e85: DUP2
00000e86: PUSH1 0x01
00000e88: PUSH1 0x01
00000e8a: PUSH1 0xa0
00000e8c: SHL
00000e8d: SUB
00000e8e: AND
00000e8f: PUSH4 0x528c198a
00000e94: DUP6
00000e95: DUP4
00000e96: DUP2
00000e97: MLOAD
00000e98: DUP2
00000e99: LT
00000e9a: PUSH3 0x000ea0
00000e9e: JUMPI
00000e9f: INVALID
00000ea0: JUMPDEST
00000ea1: PUSH1 0x20
00000ea3: MUL
00000ea4: PUSH1 0x20
00000ea6: ADD
00000ea7: ADD
00000ea8: MLOAD
00000ea9: DUP6
00000eaa: DUP5
00000eab: DUP2
00000eac: MLOAD
00000ead: DUP2
00000eae: LT
00000eaf: PUSH3 0x000eb5
00000eb3: JUMPI
00000eb4: INVALID
00000eb5: JUMPDEST
00000eb6: PUSH1 0x20
00000eb8: MUL
00000eb9: PUSH1 0x20
00000ebb: ADD
00000ebc: ADD
00000ebd: MLOAD
00000ebe: PUSH1 0x40
00000ec0: MLOAD
00000ec1: DUP4
00000ec2: PUSH4 0xffffffff
00000ec7: AND
00000ec8: PUSH1 0xe0
00000eca: SHL
00000ecb: DUP2
00000ecc: MSTORE
00000ecd: PUSH1 0x04
00000ecf: ADD
00000ed0: PUSH3 0x000edc
00000ed4: SWAP3
00000ed5: SWAP2
00000ed6: SWAP1
00000ed7: PUSH3 0x00345f
00000edb: JUMP
00000edc: JUMPDEST
00000edd: PUSH1 0x20
00000edf: PUSH1 0x40
00000ee1: MLOAD
00000ee2: DUP1
00000ee3: DUP4
00000ee4: SUB
00000ee5: DUP2
00000ee6: PUSH1 0x00
00000ee8: DUP8
00000ee9: DUP1
00000eea: EXTCODESIZE
00000eeb: ISZERO
00000eec: DUP1
00000eed: ISZERO
00000eee: PUSH3 0x000ef7
00000ef2: JUMPI
00000ef3: PUSH1 0x00
00000ef5: DUP1
00000ef6: REVERT
00000ef7: JUMPDEST
00000ef8: POP
00000ef9: GAS
00000efa: CALL
00000efb: ISZERO
00000efc: DUP1
00000efd: ISZERO
00000efe: PUSH3 0x000f0c
00000f02: JUMPI
00000f03: RETURNDATASIZE
00000f04: PUSH1 0x00
00000f06: DUP1
00000f07: RETURNDATACOPY
00000f08: RETURNDATASIZE
00000f09: PUSH1 0x00
00000f0b: REVERT
00000f0c: JUMPDEST
00000f0d: POP
00000f0e: POP
00000f0f: POP
00000f10: POP
00000f11: PUSH1 0x40
00000f13: MLOAD
00000f14: RETURNDATASIZE
00000f15: PUSH1 0x1f
00000f17: NOT
00000f18: PUSH1 0x1f
00000f1a: DUP3
00000f1b: ADD
00000f1c: AND
00000f1d: DUP3
00000f1e: ADD
00000f1f: DUP1
00000f20: PUSH1 0x40
00000f22: MSTORE
00000f23: POP
00000f24: DUP2
00000f25: ADD
00000f26: SWAP1
00000f27: PUSH3 0x000f32
00000f2b: SWAP2
00000f2c: SWAP1
00000f2d: PUSH3 0x002f35
00000f31: JUMP
00000f32: JUMPDEST
00000f33: POP
00000f34: PUSH1 0x01
00000f36: ADD
00000f37: PUSH3 0x000e7a
00000f3b: JUMP
00000f3c: JUMPDEST
00000f3d: POP
00000f3e: POP
00000f3f: PUSH1 0x01
00000f41: PUSH1 0x00
00000f43: SSTORE
00000f44: POP
00000f45: POP
00000f46: JUMP
00000f47: JUMPDEST
00000f48: PUSH1 0x05
00000f4a: DUP2
00000f4b: DUP2
00000f4c: SLOAD
00000f4d: DUP2
00000f4e: LT
00000f4f: PUSH3 0x000f55
00000f53: JUMPI
00000f54: INVALID
00000f55: JUMPDEST
00000f56: PUSH1 0x00
00000f58: SWAP2
00000f59: DUP3
00000f5a: MSTORE
00000f5b: PUSH1 0x20
00000f5d: SWAP1
00000f5e: SWAP2
00000f5f: KECCAK256
00000f60: ADD
00000f61: SLOAD
00000f62: PUSH1 0x01
00000f64: PUSH1 0x01
00000f66: PUSH1 0xa0
00000f68: SHL
00000f69: SUB
00000f6a: AND
00000f6b: SWAP1
00000f6c: POP
00000f6d: DUP2
00000f6e: JUMP
00000f6f: JUMPDEST
00000f70: PUSH1 0x05
00000f72: SLOAD
00000f73: SWAP1
00000f74: JUMP
00000f75: JUMPDEST
00000f76: PUSH3 0x000f7f
00000f7a: PUSH3 0x0029b2
00000f7e: JUMP
00000f7f: JUMPDEST
00000f80: PUSH3 0x000f89
00000f84: PUSH3 0x00221c
00000f88: JUMP
00000f89: JUMPDEST
00000f8a: SWAP1
00000f8b: POP
00000f8c: DUP1
00000f8d: PUSH1 0x40
00000f8f: ADD
00000f90: MLOAD
00000f91: PUSH3 0x000faf
00000f95: JUMPI
00000f96: PUSH1 0x40
00000f98: MLOAD
00000f99: PUSH3 0x461bcd
00000f9d: PUSH1 0xe5
00000f9f: SHL
00000fa0: DUP2
00000fa1: MSTORE
00000fa2: PUSH1 0x04
00000fa4: ADD
00000fa5: PUSH3 0x00046c
00000fa9: SWAP1
00000faa: PUSH3 0x003734
00000fae: JUMP
00000faf: JUMPDEST
00000fb0: PUSH1 0x02
00000fb2: PUSH1 0x00
00000fb4: SLOAD
00000fb5: EQ
00000fb6: ISZERO
00000fb7: PUSH3 0x000fd5
00000fbb: JUMPI
00000fbc: PUSH1 0x40
00000fbe: MLOAD
00000fbf: PUSH3 0x461bcd
00000fc3: PUSH1 0xe5
00000fc5: SHL
00000fc6: DUP2
00000fc7: MSTORE
00000fc8: PUSH1 0x04
00000fca: ADD
00000fcb: PUSH3 0x00046c
00000fcf: SWAP1
00000fd0: PUSH3 0x003ab7
00000fd4: JUMP
00000fd5: JUMPDEST
00000fd6: PUSH1 0x02
00000fd8: PUSH1 0x00
00000fda: SSTORE
00000fdb: PUSH3 0x000fe4
00000fdf: PUSH3 0x002a36
00000fe3: JUMP
00000fe4: JUMPDEST
00000fe5: PUSH3 0x000fee
00000fe9: PUSH3 0x002452
00000fed: JUMP
00000fee: JUMPDEST
00000fef: SWAP1
00000ff0: POP
00000ff1: PUSH1 0x00
00000ff3: DUP2
00000ff4: PUSH1 0x00
00000ff6: ADD
00000ff7: MLOAD
00000ff8: SWAP1
00000ff9: POP
00000ffa: PUSH1 0x00
00000ffc: PUSH3 0x00100b
00001000: DUP6
00001001: DUP5
00001002: PUSH1 0xc0
00001004: ADD
00001005: MLOAD
00001006: PUSH3 0x002502
0000100a: JUMP
0000100b: JUMPDEST
0000100c: SWAP1
0000100d: POP
0000100e: PUSH1 0x00
00001010: PUSH3 0x00101b
00001014: DUP3
00001015: SELFBALANCE
00001016: PUSH3 0x002543
0000101a: JUMP
0000101b: JUMPDEST
0000101c: PUSH1 0x40
0000101e: MLOAD
0000101f: PUSH4 0x3b9e9f01
00001024: PUSH1 0xe2
00001026: SHL
00001027: DUP2
00001028: MSTORE
00001029: SWAP1
0000102a: SWAP2
0000102b: POP
0000102c: PUSH1 0x01
0000102e: PUSH1 0x01
00001030: PUSH1 0xa0
00001032: SHL
00001033: SUB
00001034: DUP5
00001035: AND
00001036: SWAP1
00001037: PUSH4 0xee7a7c04
0000103c: SWAP1
0000103d: PUSH3 0x00104e
00001041: SWAP1
00001042: CALLER
00001043: SWAP1
00001044: DUP11
00001045: SWAP1
00001046: PUSH1 0x04
00001048: ADD
00001049: PUSH3 0x00345f
0000104d: JUMP
0000104e: JUMPDEST
0000104f: PUSH1 0x20
00001051: PUSH1 0x40
00001053: MLOAD
00001054: DUP1
00001055: DUP4
00001056: SUB
00001057: DUP2
00001058: PUSH1 0x00
0000105a: DUP8
0000105b: DUP1
0000105c: EXTCODESIZE
0000105d: ISZERO
0000105e: DUP1
0000105f: ISZERO
00001060: PUSH3 0x001069
00001064: JUMPI
00001065: PUSH1 0x00
00001067: DUP1
00001068: REVERT
00001069: JUMPDEST
0000106a: POP
0000106b: GAS
0000106c: CALL
0000106d: ISZERO
0000106e: DUP1
0000106f: ISZERO
00001070: PUSH3 0x00107e
00001074: JUMPI
00001075: RETURNDATASIZE
00001076: PUSH1 0x00
00001078: DUP1
00001079: RETURNDATACOPY
0000107a: RETURNDATASIZE
0000107b: PUSH1 0x00
0000107d: REVERT
0000107e: JUMPDEST
0000107f: POP
00001080: POP
00001081: POP
00001082: POP
00001083: PUSH1 0x40
00001085: MLOAD
00001086: RETURNDATASIZE
00001087: PUSH1 0x1f
00001089: NOT
0000108a: PUSH1 0x1f
0000108c: DUP3
0000108d: ADD
0000108e: AND
0000108f: DUP3
00001090: ADD
00001091: DUP1
00001092: PUSH1 0x40
00001094: MSTORE
00001095: POP
00001096: DUP2
00001097: ADD
00001098: SWAP1
00001099: PUSH3 0x0010a4
0000109d: SWAP2
0000109e: SWAP1
0000109f: PUSH3 0x002f35
000010a3: JUMP
000010a4: JUMPDEST
000010a5: POP
000010a6: PUSH1 0x00
000010a8: CALLER
000010a9: PUSH1 0x01
000010ab: PUSH1 0x01
000010ad: PUSH1 0xa0
000010af: SHL
000010b0: SUB
000010b1: AND
000010b2: DUP3
000010b3: PUSH1 0x40
000010b5: MLOAD
000010b6: PUSH3 0x0010c0
000010ba: SWAP1
000010bb: PUSH3 0x003429
000010bf: JUMP
000010c0: JUMPDEST
000010c1: PUSH1 0x00
000010c3: PUSH1 0x40
000010c5: MLOAD
000010c6: DUP1
000010c7: DUP4
000010c8: SUB
000010c9: DUP2
000010ca: DUP6
000010cb: DUP8
000010cc: GAS
000010cd: CALL
000010ce: SWAP3
000010cf: POP
000010d0: POP
000010d1: POP
000010d2: RETURNDATASIZE
000010d3: DUP1
000010d4: PUSH1 0x00
000010d6: DUP2
000010d7: EQ
000010d8: PUSH3 0x0010ff
000010dc: JUMPI
000010dd: PUSH1 0x40
000010df: MLOAD
000010e0: SWAP2
000010e1: POP
000010e2: PUSH1 0x1f
000010e4: NOT
000010e5: PUSH1 0x3f
000010e7: RETURNDATASIZE
000010e8: ADD
000010e9: AND
000010ea: DUP3
000010eb: ADD
000010ec: PUSH1 0x40
000010ee: MSTORE
000010ef: RETURNDATASIZE
000010f0: DUP3
000010f1: MSTORE
000010f2: RETURNDATASIZE
000010f3: PUSH1 0x00
000010f5: PUSH1 0x20
000010f7: DUP5
000010f8: ADD
000010f9: RETURNDATACOPY
000010fa: PUSH3 0x001104
000010fe: JUMP
000010ff: JUMPDEST
00001100: PUSH1 0x60
00001102: SWAP2
00001103: POP
00001104: JUMPDEST
00001105: POP
00001106: POP
00001107: SWAP1
00001108: POP
00001109: DUP1
0000110a: PUSH3 0x001128
0000110e: JUMPI
0000110f: PUSH1 0x40
00001111: MLOAD
00001112: PUSH3 0x461bcd
00001116: PUSH1 0xe5
00001118: SHL
00001119: DUP2
0000111a: MSTORE
0000111b: PUSH1 0x04
0000111d: ADD
0000111e: PUSH3 0x00046c
00001122: SWAP1
00001123: PUSH3 0x003aee
00001127: JUMP
00001128: JUMPDEST
00001129: CALLER
0000112a: PUSH1 0x01
0000112c: PUSH1 0x01
0000112e: PUSH1 0xa0
00001130: SHL
00001131: SUB
00001132: AND
00001133: PUSH32 0xc2232c352b7f8527d40991c3b030909196b5fabe6680418abb178b8ff08a7419
00001154: DUP9
00001155: DUP5
00001156: PUSH1 0x40
00001158: MLOAD
00001159: PUSH3 0x001165
0000115d: SWAP3
0000115e: SWAP2
0000115f: SWAP1
00001160: PUSH3 0x003bb8
00001164: JUMP
00001165: JUMPDEST
00001166: PUSH1 0x40
00001168: MLOAD
00001169: DUP1
0000116a: SWAP2
0000116b: SUB
0000116c: SWAP1
0000116d: LOG2
0000116e: POP
0000116f: POP
00001170: PUSH1 0x01
00001172: PUSH1 0x00
00001174: SSTORE
00001175: POP
00001176: POP
00001177: POP
00001178: POP
00001179: POP
0000117a: JUMP
0000117b: JUMPDEST
0000117c: PUSH1 0x02
0000117e: PUSH1 0x00
00001180: SLOAD
00001181: EQ
00001182: ISZERO
00001183: PUSH3 0x0011a1
00001187: JUMPI
00001188: PUSH1 0x40
0000118a: MLOAD
0000118b: PUSH3 0x461bcd
0000118f: PUSH1 0xe5
00001191: SHL
00001192: DUP2
00001193: MSTORE
00001194: PUSH1 0x04
00001196: ADD
00001197: PUSH3 0x00046c
0000119b: SWAP1
0000119c: PUSH3 0x003ab7
000011a0: JUMP
000011a1: JUMPDEST
000011a2: PUSH1 0x02
000011a4: PUSH1 0x00
000011a6: SSTORE
000011a7: PUSH1 0x06
000011a9: SLOAD
000011aa: PUSH1 0xff
000011ac: AND
000011ad: ISZERO
000011ae: PUSH3 0x0011cc
000011b2: JUMPI
000011b3: PUSH1 0x40
000011b5: MLOAD
000011b6: PUSH3 0x461bcd
000011ba: PUSH1 0xe5
000011bc: SHL
000011bd: DUP2
000011be: MSTORE
000011bf: PUSH1 0x04
000011c1: ADD
000011c2: PUSH3 0x00046c
000011c6: SWAP1
000011c7: PUSH3 0x003821
000011cb: JUMP
000011cc: JUMPDEST
000011cd: PUSH1 0x01
000011cf: PUSH1 0x01
000011d1: PUSH1 0xa0
000011d3: SHL
000011d4: SUB
000011d5: DUP6
000011d6: AND
000011d7: ISZERO
000011d8: DUP1
000011d9: ISZERO
000011da: SWAP1
000011db: PUSH3 0x0011ed
000011df: JUMPI
000011e0: POP
000011e1: PUSH1 0x01
000011e3: PUSH1 0x01
000011e5: PUSH1 0xa0
000011e7: SHL
000011e8: SUB
000011e9: DUP5
000011ea: AND
000011eb: ISZERO
000011ec: ISZERO
000011ed: JUMPDEST
000011ee: PUSH3 0x00120c
000011f2: JUMPI
000011f3: PUSH1 0x40
000011f5: MLOAD
000011f6: PUSH3 0x461bcd
000011fa: PUSH1 0xe5
000011fc: SHL
000011fd: DUP2
000011fe: MSTORE
000011ff: PUSH1 0x04
00001201: ADD
00001202: PUSH3 0x00046c
00001206: SWAP1
00001207: PUSH3 0x00388f
0000120b: JUMP
0000120c: JUMPDEST
0000120d: PUSH1 0x00
0000120f: DUP4
00001210: MLOAD
00001211: GT
00001212: PUSH3 0x001230
00001216: JUMPI
00001217: PUSH1 0x40
00001219: MLOAD
0000121a: PUSH3 0x461bcd
0000121e: PUSH1 0xe5
00001220: SHL
00001221: DUP2
00001222: MSTORE
00001223: PUSH1 0x04
00001225: ADD
00001226: PUSH3 0x00046c
0000122a: SWAP1
0000122b: PUSH3 0x0039c5
0000122f: JUMP
00001230: JUMPDEST
00001231: PUSH1 0x00
00001233: JUMPDEST
00001234: DUP4
00001235: MLOAD
00001236: DUP2
00001237: LT
00001238: ISZERO
00001239: PUSH3 0x001290
0000123d: JUMPI
0000123e: PUSH1 0x00
00001240: PUSH1 0x01
00001242: PUSH1 0x01
00001244: PUSH1 0xa0
00001246: SHL
00001247: SUB
00001248: AND
00001249: DUP5
0000124a: DUP3
0000124b: DUP2
0000124c: MLOAD
0000124d: DUP2
0000124e: LT
0000124f: PUSH3 0x001255
00001253: JUMPI
00001254: INVALID
00001255: JUMPDEST
00001256: PUSH1 0x20
00001258: MUL
00001259: PUSH1 0x20
0000125b: ADD
0000125c: ADD
0000125d: MLOAD
0000125e: PUSH1 0x01
00001260: PUSH1 0x01
00001262: PUSH1 0xa0
00001264: SHL
00001265: SUB
00001266: AND
00001267: EQ
00001268: ISZERO
00001269: PUSH3 0x001287
0000126d: JUMPI
0000126e: PUSH1 0x40
00001270: MLOAD
00001271: PUSH3 0x461bcd
00001275: PUSH1 0xe5
00001277: SHL
00001278: DUP2
00001279: MSTORE
0000127a: PUSH1 0x04
0000127c: ADD
0000127d: PUSH3 0x00046c
00001281: SWAP1
00001282: PUSH3 0x003529
00001286: JUMP
00001287: JUMPDEST
00001288: PUSH1 0x01
0000128a: ADD
0000128b: PUSH3 0x001233
0000128f: JUMP
00001290: JUMPDEST
00001291: POP
00001292: PUSH1 0x03
00001294: DUP1
00001295: SLOAD
00001296: PUSH1 0x01
00001298: PUSH1 0x01
0000129a: PUSH1 0xa0
0000129c: SHL
0000129d: SUB
0000129e: DUP7
0000129f: AND
000012a0: PUSH1 0x01
000012a2: PUSH1 0x01
000012a4: PUSH1 0xa0
000012a6: SHL
000012a7: SUB
000012a8: NOT
000012a9: SWAP2
000012aa: DUP3
000012ab: AND
000012ac: OR
000012ad: SWAP1
000012ae: SWAP2
000012af: SSTORE
000012b0: PUSH1 0x01
000012b2: DUP1
000012b3: SLOAD
000012b4: SWAP1
000012b5: SWAP2
000012b6: AND
000012b7: CALLER
000012b8: OR
000012b9: SWAP1
000012ba: SSTORE
000012bb: DUP3
000012bc: MLOAD
000012bd: PUSH3 0x0012cf
000012c1: SWAP1
000012c2: PUSH1 0x04
000012c4: SWAP1
000012c5: PUSH1 0x20
000012c7: DUP7
000012c8: ADD
000012c9: SWAP1
000012ca: PUSH3 0x002a9b
000012ce: JUMP
000012cf: JUMPDEST
000012d0: POP
000012d1: PUSH3 0x0012da
000012d5: PUSH3 0x002a01
000012d9: JUMP
000012da: JUMPDEST
000012db: PUSH1 0x40
000012dd: MLOAD
000012de: PUSH4 0x332a4d09
000012e3: PUSH1 0xe0
000012e5: SHL
000012e6: DUP2
000012e7: MSTORE
000012e8: PUSH1 0x01
000012ea: PUSH1 0x01
000012ec: PUSH1 0xa0
000012ee: SHL
000012ef: SUB
000012f0: DUP8
000012f1: AND
000012f2: SWAP1
000012f3: PUSH4 0x332a4d09
000012f8: SWAP1
000012f9: PUSH3 0x001309
000012fd: SWAP1
000012fe: PUSH1 0x00
00001300: SWAP1
00001301: PUSH1 0x04
00001303: ADD
00001304: PUSH3 0x00342c
00001308: JUMP
00001309: JUMPDEST
0000130a: PUSH1 0xc0
0000130c: PUSH1 0x40
0000130e: MLOAD
0000130f: DUP1
00001310: DUP4
00001311: SUB
00001312: DUP2
00001313: DUP7
00001314: DUP1
00001315: EXTCODESIZE
00001316: ISZERO
00001317: DUP1
00001318: ISZERO
00001319: PUSH3 0x001322
0000131d: JUMPI
0000131e: PUSH1 0x00
00001320: DUP1
00001321: REVERT
00001322: JUMPDEST
00001323: POP
00001324: GAS
00001325: STATICCALL
00001326: ISZERO
00001327: DUP1
00001328: ISZERO
00001329: PUSH3 0x001337
0000132d: JUMPI
0000132e: RETURNDATASIZE
0000132f: PUSH1 0x00
00001331: DUP1
00001332: RETURNDATACOPY
00001333: RETURNDATASIZE
00001334: PUSH1 0x00
00001336: REVERT
00001337: JUMPDEST
00001338: POP
00001339: POP
0000133a: POP
0000133b: POP
0000133c: PUSH1 0x40
0000133e: MLOAD
0000133f: RETURNDATASIZE
00001340: PUSH1 0x1f
00001342: NOT
00001343: PUSH1 0x1f
00001345: DUP3
00001346: ADD
00001347: AND
00001348: DUP3
00001349: ADD
0000134a: DUP1
0000134b: PUSH1 0x40
0000134d: MSTORE
0000134e: POP
0000134f: DUP2
00001350: ADD
00001351: SWAP1
00001352: PUSH3 0x00135d
00001356: SWAP2
00001357: SWAP1
00001358: PUSH3 0x0030c5
0000135c: JUMP
0000135d: JUMPDEST
0000135e: SWAP1
0000135f: POP
00001360: PUSH3 0x001369
00001364: PUSH3 0x002a01
00001368: JUMP
00001369: JUMPDEST
0000136a: PUSH1 0x03
0000136c: SLOAD
0000136d: PUSH3 0x001381
00001371: SWAP1
00001372: PUSH1 0x01
00001374: PUSH1 0x01
00001376: PUSH1 0xa0
00001378: SHL
00001379: SUB
0000137a: AND
0000137b: DUP4
0000137c: PUSH3 0x00257d
00001380: JUMP
00001381: JUMPDEST
00001382: PUSH1 0x40
00001384: DUP2
00001385: ADD
00001386: MLOAD
00001387: PUSH1 0x02
00001389: DUP1
0000138a: SLOAD
0000138b: PUSH1 0x01
0000138d: PUSH1 0x01
0000138f: PUSH1 0xa0
00001391: SHL
00001392: SUB
00001393: NOT
00001394: AND
00001395: PUSH1 0x01
00001397: PUSH1 0x01
00001399: PUSH1 0xa0
0000139b: SHL
0000139c: SUB
0000139d: SWAP1
0000139e: SWAP3
0000139f: AND
000013a0: SWAP2
000013a1: SWAP1
000013a2: SWAP2
000013a3: OR
000013a4: SWAP1
000013a5: SSTORE
000013a6: SWAP1
000013a7: POP
000013a8: PUSH1 0x00
000013aa: PUSH3 0x0013b7
000013ae: DUP7
000013af: DUP7
000013b0: DUP7
000013b1: DUP6
000013b2: PUSH3 0x00268c
000013b6: JUMP
000013b7: JUMPDEST
000013b8: PUSH1 0x06
000013ba: DUP1
000013bb: SLOAD
000013bc: PUSH1 0xff
000013be: NOT
000013bf: AND
000013c0: PUSH1 0x01
000013c2: OR
000013c3: SWAP1
000013c4: SSTORE
000013c5: SWAP1
000013c6: POP
000013c7: DUP1
000013c8: PUSH3 0x0013e6
000013cc: JUMPI
000013cd: PUSH1 0x40
000013cf: MLOAD
000013d0: PUSH3 0x461bcd
000013d4: PUSH1 0xe5
000013d6: SHL
000013d7: DUP2
000013d8: MSTORE
000013d9: PUSH1 0x04
000013db: ADD
000013dc: PUSH3 0x00046c
000013e0: SWAP1
000013e1: PUSH3 0x00394d
000013e5: JUMP
000013e6: JUMPDEST
000013e7: POP
000013e8: POP
000013e9: PUSH1 0x01
000013eb: PUSH1 0x00
000013ed: SSTORE
000013ee: POP
000013ef: POP
000013f0: POP
000013f1: POP
000013f2: POP
000013f3: POP
000013f4: JUMP
000013f5: JUMPDEST
000013f6: PUSH1 0x03
000013f8: SLOAD
000013f9: PUSH1 0x01
000013fb: PUSH1 0x01
000013fd: PUSH1 0xa0
000013ff: SHL
00001400: SUB
00001401: AND
00001402: CALLER
00001403: EQ
00001404: PUSH3 0x001422
00001408: JUMPI
00001409: PUSH1 0x40
0000140b: MLOAD
0000140c: PUSH3 0x461bcd
00001410: PUSH1 0xe5
00001412: SHL
00001413: DUP2
00001414: MSTORE
00001415: PUSH1 0x04
00001417: ADD
00001418: PUSH3 0x00046c
0000141c: SWAP1
0000141d: PUSH3 0x0036fd
00001421: JUMP
00001422: JUMPDEST
00001423: PUSH1 0x02
00001425: PUSH1 0x00
00001427: SLOAD
00001428: EQ
00001429: ISZERO
0000142a: PUSH3 0x001448
0000142e: JUMPI
0000142f: PUSH1 0x40
00001431: MLOAD
00001432: PUSH3 0x461bcd
00001436: PUSH1 0xe5
00001438: SHL
00001439: DUP2
0000143a: MSTORE
0000143b: PUSH1 0x04
0000143d: ADD
0000143e: PUSH3 0x00046c
00001442: SWAP1
00001443: PUSH3 0x003ab7
00001447: JUMP
00001448: JUMPDEST
00001449: PUSH1 0x02
0000144b: PUSH1 0x00
0000144d: SSTORE
0000144e: PUSH3 0x001457
00001452: PUSH3 0x002a01
00001456: JUMP
00001457: JUMPDEST
00001458: PUSH3 0x001461
0000145c: PUSH3 0x0022cf
00001460: JUMP
00001461: JUMPDEST
00001462: PUSH1 0x20
00001464: DUP2
00001465: ADD
00001466: MLOAD
00001467: SWAP1
00001468: SWAP2
00001469: POP
0000146a: PUSH3 0x001473
0000146e: PUSH3 0x0029b2
00001472: JUMP
00001473: JUMPDEST
00001474: PUSH1 0x40
00001476: MLOAD
00001477: PUSH4 0xa094717b
0000147c: PUSH1 0xe0
0000147e: SHL
0000147f: DUP2
00001480: MSTORE
00001481: PUSH1 0x01
00001483: PUSH1 0x01
00001485: PUSH1 0xa0
00001487: SHL
00001488: SUB
00001489: DUP4
0000148a: AND
0000148b: SWAP1
0000148c: PUSH4 0xa094717b
00001491: SWAP1
00001492: PUSH3 0x0014a3
00001496: SWAP1
00001497: ADDRESS
00001498: SWAP1
00001499: DUP8
0000149a: SWAP1
0000149b: PUSH1 0x04
0000149d: ADD
0000149e: PUSH3 0x003440
000014a2: JUMP
000014a3: JUMPDEST
000014a4: PUSH1 0x00
000014a6: PUSH1 0x40
000014a8: MLOAD
000014a9: DUP1
000014aa: DUP4
000014ab: SUB
000014ac: DUP2
000014ad: DUP7
000014ae: DUP1
000014af: EXTCODESIZE
000014b0: ISZERO
000014b1: DUP1
000014b2: ISZERO
000014b3: PUSH3 0x0014bc
000014b7: JUMPI
000014b8: PUSH1 0x00
000014ba: DUP1
000014bb: REVERT
000014bc: JUMPDEST
000014bd: POP
000014be: GAS
000014bf: STATICCALL
000014c0: ISZERO
000014c1: DUP1
000014c2: ISZERO
000014c3: PUSH3 0x0014d1
000014c7: JUMPI
000014c8: RETURNDATASIZE
000014c9: PUSH1 0x00
000014cb: DUP1
000014cc: RETURNDATACOPY
000014cd: RETURNDATASIZE
000014ce: PUSH1 0x00
000014d0: REVERT
000014d1: JUMPDEST
000014d2: POP
000014d3: POP
000014d4: POP
000014d5: POP
000014d6: PUSH1 0x40
000014d8: MLOAD
000014d9: RETURNDATASIZE
000014da: PUSH1 0x00
000014dc: DUP3
000014dd: RETURNDATACOPY
000014de: PUSH1 0x1f
000014e0: RETURNDATASIZE
000014e1: SWAP1
000014e2: DUP2
000014e3: ADD
000014e4: PUSH1 0x1f
000014e6: NOT
000014e7: AND
000014e8: DUP3
000014e9: ADD
000014ea: PUSH1 0x40
000014ec: MSTORE
000014ed: PUSH3 0x0014fb
000014f1: SWAP2
000014f2: SWAP1
000014f3: DUP2
000014f4: ADD
000014f5: SWAP1
000014f6: PUSH3 0x002fdd
000014fa: JUMP
000014fb: JUMPDEST
000014fc: PUSH1 0x80
000014fe: DUP2
000014ff: ADD
00001500: DUP6
00001501: SWAP1
00001502: MSTORE
00001503: PUSH1 0x40
00001505: MLOAD
00001506: PUSH4 0x8ddf5ad7
0000150b: PUSH1 0xe0
0000150d: SHL
0000150e: DUP2
0000150f: MSTORE
00001510: SWAP1
00001511: SWAP2
00001512: POP
00001513: PUSH1 0x01
00001515: PUSH1 0x01
00001517: PUSH1 0xa0
00001519: SHL
0000151a: SUB
0000151b: DUP4
0000151c: AND
0000151d: SWAP1
0000151e: PUSH4 0x8ddf5ad7
00001523: SWAP1
00001524: PUSH3 0x001533
00001528: SWAP1
00001529: DUP5
0000152a: SWAP1
0000152b: PUSH1 0x04
0000152d: ADD
0000152e: PUSH3 0x003b25
00001532: JUMP
00001533: JUMPDEST
00001534: PUSH1 0x00
00001536: PUSH1 0x40
00001538: MLOAD
00001539: DUP1
0000153a: DUP4
0000153b: SUB
0000153c: DUP2
0000153d: PUSH1 0x00
0000153f: DUP8
00001540: DUP1
00001541: EXTCODESIZE
00001542: ISZERO
00001543: DUP1
00001544: ISZERO
00001545: PUSH3 0x00154e
00001549: JUMPI
0000154a: PUSH1 0x00
0000154c: DUP1
0000154d: REVERT
0000154e: JUMPDEST
0000154f: POP
00001550: GAS
00001551: CALL
00001552: ISZERO
00001553: DUP1
00001554: ISZERO
00001555: PUSH3 0x001563
00001559: JUMPI
0000155a: RETURNDATASIZE
0000155b: PUSH1 0x00
0000155d: DUP1
0000155e: RETURNDATACOPY
0000155f: RETURNDATASIZE
00001560: PUSH1 0x00
00001562: REVERT
00001563: JUMPDEST
00001564: POP
00001565: POP
00001566: POP
00001567: POP
00001568: PUSH32 0x68b01fc17fc90d1e4b26e6de28d98f855786209201c0245626efad6e216ad6bf
00001589: DUP5
0000158a: PUSH1 0x40
0000158c: MLOAD
0000158d: PUSH3 0x001598
00001591: SWAP2
00001592: SWAP1
00001593: PUSH3 0x003baf
00001597: JUMP
00001598: JUMPDEST
00001599: PUSH1 0x40
0000159b: MLOAD
0000159c: DUP1
0000159d: SWAP2
0000159e: SUB
0000159f: SWAP1
000015a0: LOG1
000015a1: POP
000015a2: POP
000015a3: PUSH1 0x01
000015a5: PUSH1 0x00
000015a7: SSTORE
000015a8: POP
000015a9: POP
000015aa: JUMP
000015ab: JUMPDEST
000015ac: PUSH1 0x03
000015ae: SLOAD
000015af: PUSH1 0x01
000015b1: PUSH1 0x01
000015b3: PUSH1 0xa0
000015b5: SHL
000015b6: SUB
000015b7: AND
000015b8: CALLER
000015b9: EQ
000015ba: PUSH3 0x0015d8
000015be: JUMPI
000015bf: PUSH1 0x40
000015c1: MLOAD
000015c2: PUSH3 0x461bcd
000015c6: PUSH1 0xe5
000015c8: SHL
000015c9: DUP2
000015ca: MSTORE
000015cb: PUSH1 0x04
000015cd: ADD
000015ce: PUSH3 0x00046c
000015d2: SWAP1
000015d3: PUSH3 0x0036fd
000015d7: JUMP
000015d8: JUMPDEST
000015d9: PUSH1 0x02
000015db: PUSH1 0x00
000015dd: SLOAD
000015de: EQ
000015df: ISZERO
000015e0: PUSH3 0x0015fe
000015e4: JUMPI
000015e5: PUSH1 0x40
000015e7: MLOAD
000015e8: PUSH3 0x461bcd
000015ec: PUSH1 0xe5
000015ee: SHL
000015ef: DUP2
000015f0: MSTORE
000015f1: PUSH1 0x04
000015f3: ADD
000015f4: PUSH3 0x00046c
000015f8: SWAP1
000015f9: PUSH3 0x003ab7
000015fd: JUMP
000015fe: JUMPDEST
000015ff: PUSH1 0x02
00001601: PUSH1 0x00
00001603: SSTORE
00001604: PUSH1 0x01
00001606: PUSH1 0x01
00001608: PUSH1 0xa0
0000160a: SHL
0000160b: SUB
0000160c: DUP2
0000160d: AND
0000160e: PUSH3 0x00162c
00001612: JUMPI
00001613: PUSH1 0x40
00001615: MLOAD
00001616: PUSH3 0x461bcd
0000161a: PUSH1 0xe5
0000161c: SHL
0000161d: DUP2
0000161e: MSTORE
0000161f: PUSH1 0x04
00001621: ADD
00001622: PUSH3 0x00046c
00001626: SWAP1
00001627: PUSH3 0x00388f
0000162b: JUMP
0000162c: JUMPDEST
0000162d: PUSH1 0x03
0000162f: DUP1
00001630: SLOAD
00001631: PUSH1 0x01
00001633: PUSH1 0x01
00001635: PUSH1 0xa0
00001637: SHL
00001638: SUB
00001639: NOT
0000163a: AND
0000163b: PUSH1 0x01
0000163d: PUSH1 0x01
0000163f: PUSH1 0xa0
00001641: SHL
00001642: SUB
00001643: DUP4
00001644: AND
00001645: OR
00001646: SWAP1
00001647: SSTORE
00001648: PUSH1 0x00
0000164a: PUSH3 0x001653
0000164e: PUSH3 0x002452
00001652: JUMP
00001653: JUMPDEST
00001654: MLOAD
00001655: PUSH1 0x03
00001657: SLOAD
00001658: PUSH1 0x40
0000165a: MLOAD
0000165b: PUSH4 0x54cb6b67
00001660: PUSH1 0xe1
00001662: SHL
00001663: DUP2
00001664: MSTORE
00001665: SWAP2
00001666: SWAP3
00001667: POP
00001668: PUSH1 0x00
0000166a: SWAP2
0000166b: PUSH1 0x01
0000166d: PUSH1 0x01
0000166f: PUSH1 0xa0
00001671: SHL
00001672: SUB
00001673: DUP1
00001674: DUP6
00001675: AND
00001676: SWAP3
00001677: PUSH4 0xa996d6ce
0000167c: SWAP3
0000167d: PUSH3 0x00168e
00001681: SWAP3
00001682: SWAP1
00001683: SWAP2
00001684: AND
00001685: SWAP1
00001686: PUSH1 0x04
00001688: ADD
00001689: PUSH3 0x00342c
0000168d: JUMP
0000168e: JUMPDEST
0000168f: PUSH1 0x20
00001691: PUSH1 0x40
00001693: MLOAD
00001694: DUP1
00001695: DUP4
00001696: SUB
00001697: DUP2
00001698: PUSH1 0x00
0000169a: DUP8
0000169b: DUP1
0000169c: EXTCODESIZE
0000169d: ISZERO
0000169e: DUP1
0000169f: ISZERO
000016a0: PUSH3 0x0016a9
000016a4: JUMPI
000016a5: PUSH1 0x00
000016a7: DUP1
000016a8: REVERT
000016a9: JUMPDEST
000016aa: POP
000016ab: GAS
000016ac: CALL
000016ad: ISZERO
000016ae: DUP1
000016af: ISZERO
000016b0: PUSH3 0x0016be
000016b4: JUMPI
000016b5: RETURNDATASIZE
000016b6: PUSH1 0x00
000016b8: DUP1
000016b9: RETURNDATACOPY
000016ba: RETURNDATASIZE
000016bb: PUSH1 0x00
000016bd: REVERT
000016be: JUMPDEST
000016bf: POP
000016c0: POP
000016c1: POP
000016c2: POP
000016c3: PUSH1 0x40
000016c5: MLOAD
000016c6: RETURNDATASIZE
000016c7: PUSH1 0x1f
000016c9: NOT
000016ca: PUSH1 0x1f
000016cc: DUP3
000016cd: ADD
000016ce: AND
000016cf: DUP3
000016d0: ADD
000016d1: DUP1
000016d2: PUSH1 0x40
000016d4: MSTORE
000016d5: POP
000016d6: DUP2
000016d7: ADD
000016d8: SWAP1
000016d9: PUSH3 0x0016e4
000016dd: SWAP2
000016de: SWAP1
000016df: PUSH3 0x002f35
000016e3: JUMP
000016e4: JUMPDEST
000016e5: SWAP1
000016e6: POP
000016e7: DUP1
000016e8: PUSH3 0x001706
000016ec: JUMPI
000016ed: PUSH1 0x40
000016ef: MLOAD
000016f0: PUSH3 0x461bcd
000016f4: PUSH1 0xe5
000016f6: SHL
000016f7: DUP2
000016f8: MSTORE
000016f9: PUSH1 0x04
000016fb: ADD
000016fc: PUSH3 0x00046c
00001700: SWAP1
00001701: PUSH3 0x0038fb
00001705: JUMP
00001706: JUMPDEST
00001707: PUSH1 0x03
00001709: SLOAD
0000170a: PUSH1 0x40
0000170c: MLOAD
0000170d: PUSH4 0x7e51dad5
00001712: PUSH1 0xe1
00001714: SHL
00001715: DUP2
00001716: MSTORE
00001717: PUSH1 0x01
00001719: PUSH1 0x01
0000171b: PUSH1 0xa0
0000171d: SHL
0000171e: SUB
0000171f: DUP5
00001720: DUP2
00001721: AND
00001722: SWAP3
00001723: PUSH4 0xfca3b5aa
00001728: SWAP3
00001729: PUSH3 0x00173a
0000172d: SWAP3
0000172e: SWAP1
0000172f: SWAP2
00001730: AND
00001731: SWAP1
00001732: PUSH1 0x04
00001734: ADD
00001735: PUSH3 0x00342c
00001739: JUMP
0000173a: JUMPDEST
0000173b: PUSH1 0x20
0000173d: PUSH1 0x40
0000173f: MLOAD
00001740: DUP1
00001741: DUP4
00001742: SUB
00001743: DUP2
00001744: PUSH1 0x00
00001746: DUP8
00001747: DUP1
00001748: EXTCODESIZE
00001749: ISZERO
0000174a: DUP1
0000174b: ISZERO
0000174c: PUSH3 0x001755
00001750: JUMPI
00001751: PUSH1 0x00
00001753: DUP1
00001754: REVERT
00001755: JUMPDEST
00001756: POP
00001757: GAS
00001758: CALL
00001759: ISZERO
0000175a: DUP1
0000175b: ISZERO
0000175c: PUSH3 0x00176a
00001760: JUMPI
00001761: RETURNDATASIZE
00001762: PUSH1 0x00
00001764: DUP1
00001765: RETURNDATACOPY
00001766: RETURNDATASIZE
00001767: PUSH1 0x00
00001769: REVERT
0000176a: JUMPDEST
0000176b: POP
0000176c: POP
0000176d: POP
0000176e: POP
0000176f: PUSH1 0x40
00001771: MLOAD
00001772: RETURNDATASIZE
00001773: PUSH1 0x1f
00001775: NOT
00001776: PUSH1 0x1f
00001778: DUP3
00001779: ADD
0000177a: AND
0000177b: DUP3
0000177c: ADD
0000177d: DUP1
0000177e: PUSH1 0x40
00001780: MSTORE
00001781: POP
00001782: DUP2
00001783: ADD
00001784: SWAP1
00001785: PUSH3 0x001790
00001789: SWAP2
0000178a: SWAP1
0000178b: PUSH3 0x002f35
0000178f: JUMP
00001790: JUMPDEST
00001791: SWAP1
00001792: POP
00001793: DUP1
00001794: PUSH3 0x0017b2
00001798: JUMPI
00001799: PUSH1 0x40
0000179b: MLOAD
0000179c: PUSH3 0x461bcd
000017a0: PUSH1 0xe5
000017a2: SHL
000017a3: DUP2
000017a4: MSTORE
000017a5: PUSH1 0x04
000017a7: ADD
000017a8: PUSH3 0x00046c
000017ac: SWAP1
000017ad: PUSH3 0x0035eb
000017b1: JUMP
000017b2: JUMPDEST
000017b3: PUSH1 0x03
000017b5: SLOAD
000017b6: PUSH1 0x40
000017b8: MLOAD
000017b9: PUSH32 0x027c3e080ed9215f564a9455a666f7e459b3edc0bb6e02a1bf842fde4d0ccfc1
000017da: SWAP2
000017db: PUSH3 0x0017f1
000017df: SWAP2
000017e0: PUSH1 0x01
000017e2: PUSH1 0x01
000017e4: PUSH1 0xa0
000017e6: SHL
000017e7: SUB
000017e8: SWAP1
000017e9: SWAP2
000017ea: AND
000017eb: SWAP1
000017ec: PUSH3 0x00342c
000017f0: JUMP
000017f1: JUMPDEST
000017f2: PUSH1 0x40
000017f4: MLOAD
000017f5: DUP1
000017f6: SWAP2
000017f7: SUB
000017f8: SWAP1
000017f9: LOG1
000017fa: POP
000017fb: POP
000017fc: PUSH1 0x01
000017fe: PUSH1 0x00
00001800: SSTORE
00001801: POP
00001802: JUMP
00001803: JUMPDEST
00001804: PUSH3 0x00180d
00001808: PUSH3 0x0029b2
0000180c: JUMP
0000180d: JUMPDEST
0000180e: PUSH3 0x001817
00001812: PUSH3 0x00221c
00001816: JUMP
00001817: JUMPDEST
00001818: SWAP1
00001819: POP
0000181a: SWAP1
0000181b: JUMP
0000181c: JUMPDEST
0000181d: PUSH3 0x001826
00001821: PUSH3 0x002a01
00001825: JUMP
00001826: JUMPDEST
00001827: PUSH3 0x001817
0000182b: PUSH3 0x0022cf
0000182f: JUMP
00001830: JUMPDEST
00001831: PUSH1 0x03
00001833: SLOAD
00001834: PUSH1 0x00
00001836: SWAP1
00001837: PUSH1 0x01
00001839: PUSH1 0x01
0000183b: PUSH1 0xa0
0000183d: SHL
0000183e: SUB
0000183f: AND
00001840: CALLER
00001841: EQ
00001842: PUSH3 0x001860
00001846: JUMPI
00001847: PUSH1 0x40
00001849: MLOAD
0000184a: PUSH3 0x461bcd
0000184e: PUSH1 0xe5
00001850: SHL
00001851: DUP2
00001852: MSTORE
00001853: PUSH1 0x04
00001855: ADD
00001856: PUSH3 0x00046c
0000185a: SWAP1
0000185b: PUSH3 0x0036fd
0000185f: JUMP
00001860: JUMPDEST
00001861: PUSH1 0x02
00001863: PUSH1 0x00
00001865: SLOAD
00001866: EQ
00001867: ISZERO
00001868: PUSH3 0x001886
0000186c: JUMPI
0000186d: PUSH1 0x40
0000186f: MLOAD
00001870: PUSH3 0x461bcd
00001874: PUSH1 0xe5
00001876: SHL
00001877: DUP2
00001878: MSTORE
00001879: PUSH1 0x04
0000187b: ADD
0000187c: PUSH3 0x00046c
00001880: SWAP1
00001881: PUSH3 0x003ab7
00001885: JUMP
00001886: JUMPDEST
00001887: PUSH1 0x02
00001889: PUSH1 0x00
0000188b: SWAP1
0000188c: DUP2
0000188d: SSTORE
0000188e: JUMPDEST
0000188f: PUSH1 0x05
00001891: SLOAD
00001892: DUP2
00001893: LT
00001894: ISZERO
00001895: PUSH3 0x00196d
00001899: JUMPI
0000189a: DUP3
0000189b: PUSH1 0x01
0000189d: PUSH1 0x01
0000189f: PUSH1 0xa0
000018a1: SHL
000018a2: SUB
000018a3: AND
000018a4: PUSH1 0x05
000018a6: DUP3
000018a7: DUP2
000018a8: SLOAD
000018a9: DUP2
000018aa: LT
000018ab: PUSH3 0x0018b1
000018af: JUMPI
000018b0: INVALID
000018b1: JUMPDEST
000018b2: PUSH1 0x00
000018b4: SWAP2
000018b5: DUP3
000018b6: MSTORE
000018b7: PUSH1 0x20
000018b9: SWAP1
000018ba: SWAP2
000018bb: KECCAK256
000018bc: ADD
000018bd: SLOAD
000018be: PUSH1 0x01
000018c0: PUSH1 0x01
000018c2: PUSH1 0xa0
000018c4: SHL
000018c5: SUB
000018c6: AND
000018c7: EQ
000018c8: ISZERO
000018c9: PUSH3 0x001964
000018cd: JUMPI
000018ce: PUSH1 0x05
000018d0: DUP1
000018d1: SLOAD
000018d2: PUSH1 0x00
000018d4: NOT
000018d5: DUP2
000018d6: ADD
000018d7: SWAP1
000018d8: DUP2
000018d9: LT
000018da: PUSH3 0x0018e0
000018de: JUMPI
000018df: INVALID
000018e0: JUMPDEST
000018e1: PUSH1 0x00
000018e3: SWAP2
000018e4: DUP3
000018e5: MSTORE
000018e6: PUSH1 0x20
000018e8: SWAP1
000018e9: SWAP2
000018ea: KECCAK256
000018eb: ADD
000018ec: SLOAD
000018ed: PUSH1 0x05
000018ef: DUP1
000018f0: SLOAD
000018f1: PUSH1 0x01
000018f3: PUSH1 0x01
000018f5: PUSH1 0xa0
000018f7: SHL
000018f8: SUB
000018f9: SWAP1
000018fa: SWAP3
000018fb: AND
000018fc: SWAP2
000018fd: DUP4
000018fe: SWAP1
000018ff: DUP2
00001900: LT
00001901: PUSH3 0x001907
00001905: JUMPI
00001906: INVALID
00001907: JUMPDEST
00001908: SWAP1
00001909: PUSH1 0x00
0000190b: MSTORE
0000190c: PUSH1 0x20
0000190e: PUSH1 0x00
00001910: KECCAK256
00001911: ADD
00001912: PUSH1 0x00
00001914: PUSH2 0x0100
00001917: EXP
00001918: DUP2
00001919: SLOAD
0000191a: DUP2
0000191b: PUSH1 0x01
0000191d: PUSH1 0x01
0000191f: PUSH1 0xa0
00001921: SHL
00001922: SUB
00001923: MUL
00001924: NOT
00001925: AND
00001926: SWAP1
00001927: DUP4
00001928: PUSH1 0x01
0000192a: PUSH1 0x01
0000192c: PUSH1 0xa0
0000192e: SHL
0000192f: SUB
00001930: AND
00001931: MUL
00001932: OR
00001933: SWAP1
00001934: SSTORE
00001935: POP
00001936: PUSH1 0x05
00001938: DUP1
00001939: SLOAD
0000193a: DUP1
0000193b: PUSH3 0x001941
0000193f: JUMPI
00001940: INVALID
00001941: JUMPDEST
00001942: PUSH1 0x00
00001944: DUP3
00001945: DUP2
00001946: MSTORE
00001947: PUSH1 0x20
00001949: SWAP1
0000194a: KECCAK256
0000194b: DUP2
0000194c: ADD
0000194d: PUSH1 0x00
0000194f: NOT
00001950: SWAP1
00001951: DUP2
00001952: ADD
00001953: DUP1
00001954: SLOAD
00001955: PUSH1 0x01
00001957: PUSH1 0x01
00001959: PUSH1 0xa0
0000195b: SHL
0000195c: SUB
0000195d: NOT
0000195e: AND
0000195f: SWAP1
00001960: SSTORE
00001961: ADD
00001962: SWAP1
00001963: SSTORE
00001964: JUMPDEST
00001965: PUSH1 0x01
00001967: ADD
00001968: PUSH3 0x00188e
0000196c: JUMP
0000196d: JUMPDEST
0000196e: POP
0000196f: PUSH1 0x40
00001971: MLOAD
00001972: PUSH1 0x01
00001974: PUSH1 0x01
00001976: PUSH1 0xa0
00001978: SHL
00001979: SUB
0000197a: DUP4
0000197b: AND
0000197c: SWAP1
0000197d: PUSH32 0x59c3fbcae88f30e9b0e35c132a7f68c53231dffa4722f197c7ecb0ee013eee60
0000199e: SWAP1
0000199f: PUSH1 0x00
000019a1: SWAP1
000019a2: LOG2
000019a3: PUSH1 0x01
000019a5: PUSH1 0x00
000019a7: SSTORE
000019a8: SWAP2
000019a9: SWAP1
000019aa: POP
000019ab: JUMP
000019ac: JUMPDEST
000019ad: PUSH3 0x0019b6
000019b1: PUSH3 0x0029b2
000019b5: JUMP
000019b6: JUMPDEST
000019b7: PUSH3 0x0019c0
000019bb: PUSH3 0x00221c
000019bf: JUMP
000019c0: JUMPDEST
000019c1: SWAP1
000019c2: POP
000019c3: DUP1
000019c4: PUSH1 0x40
000019c6: ADD
000019c7: MLOAD
000019c8: PUSH3 0x0019e6
000019cc: JUMPI
000019cd: PUSH1 0x40
000019cf: MLOAD
000019d0: PUSH3 0x461bcd
000019d4: PUSH1 0xe5
000019d6: SHL
000019d7: DUP2
000019d8: MSTORE
000019d9: PUSH1 0x04
000019db: ADD
000019dc: PUSH3 0x00046c
000019e0: SWAP1
000019e1: PUSH3 0x003734
000019e5: JUMP
000019e6: JUMPDEST
000019e7: PUSH1 0x00
000019e9: SELFBALANCE
000019ea: GT
000019eb: PUSH3 0x001a09
000019ef: JUMPI
000019f0: PUSH1 0x40
000019f2: MLOAD
000019f3: PUSH3 0x461bcd
000019f7: PUSH1 0xe5
000019f9: SHL
000019fa: DUP2
000019fb: MSTORE
000019fc: PUSH1 0x04
000019fe: ADD
000019ff: PUSH3 0x00046c
00001a03: SWAP1
00001a04: PUSH3 0x0035b4
00001a08: JUMP
00001a09: JUMPDEST
00001a0a: PUSH1 0x02
00001a0c: PUSH1 0x00
00001a0e: SLOAD
00001a0f: EQ
00001a10: ISZERO
00001a11: PUSH3 0x001a2f
00001a15: JUMPI
00001a16: PUSH1 0x40
00001a18: MLOAD
00001a19: PUSH3 0x461bcd
00001a1d: PUSH1 0xe5
00001a1f: SHL
00001a20: DUP2
00001a21: MSTORE
00001a22: PUSH1 0x04
00001a24: ADD
00001a25: PUSH3 0x00046c
00001a29: SWAP1
00001a2a: PUSH3 0x003ab7
00001a2e: JUMP
00001a2f: JUMPDEST
00001a30: PUSH1 0x02
00001a32: PUSH1 0x00
00001a34: SSTORE
00001a35: PUSH3 0x001a3e
00001a39: PUSH3 0x002a36
00001a3d: JUMP
00001a3e: JUMPDEST
00001a3f: PUSH3 0x001a48
00001a43: PUSH3 0x002452
00001a47: JUMP
00001a48: JUMPDEST
00001a49: DUP1
00001a4a: MLOAD
00001a4b: SWAP1
00001a4c: SWAP2
00001a4d: POP
00001a4e: PUSH1 0x00
00001a50: PUSH3 0x001ada
00001a54: PUSH3 0x001a5f
00001a58: SELFBALANCE
00001a59: CALLVALUE
00001a5a: PUSH3 0x002735
00001a5e: JUMP
00001a5f: JUMPDEST
00001a60: DUP4
00001a61: PUSH1 0x01
00001a63: PUSH1 0x01
00001a65: PUSH1 0xa0
00001a67: SHL
00001a68: SUB
00001a69: AND
00001a6a: PUSH4 0x18160ddd
00001a6f: PUSH1 0x40
00001a71: MLOAD
00001a72: DUP2
00001a73: PUSH4 0xffffffff
00001a78: AND
00001a79: PUSH1 0xe0
00001a7b: SHL
00001a7c: DUP2
00001a7d: MSTORE
00001a7e: PUSH1 0x04
00001a80: ADD
00001a81: PUSH1 0x20
00001a83: PUSH1 0x40
00001a85: MLOAD
00001a86: DUP1
00001a87: DUP4
00001a88: SUB
00001a89: DUP2
00001a8a: DUP7
00001a8b: DUP1
00001a8c: EXTCODESIZE
00001a8d: ISZERO
00001a8e: DUP1
00001a8f: ISZERO
00001a90: PUSH3 0x001a99
00001a94: JUMPI
00001a95: PUSH1 0x00
00001a97: DUP1
00001a98: REVERT
00001a99: JUMPDEST
00001a9a: POP
00001a9b: GAS
00001a9c: STATICCALL
00001a9d: ISZERO
00001a9e: DUP1
00001a9f: ISZERO
00001aa0: PUSH3 0x001aae
00001aa4: JUMPI
00001aa5: RETURNDATASIZE
00001aa6: PUSH1 0x00
00001aa8: DUP1
00001aa9: RETURNDATACOPY
00001aaa: RETURNDATASIZE
00001aab: PUSH1 0x00
00001aad: REVERT
00001aae: JUMPDEST
00001aaf: POP
00001ab0: POP
00001ab1: POP
00001ab2: POP
00001ab3: PUSH1 0x40
00001ab5: MLOAD
00001ab6: RETURNDATASIZE
00001ab7: PUSH1 0x1f
00001ab9: NOT
00001aba: PUSH1 0x1f
00001abc: DUP3
00001abd: ADD
00001abe: AND
00001abf: DUP3
00001ac0: ADD
00001ac1: DUP1
00001ac2: PUSH1 0x40
00001ac4: MSTORE
00001ac5: POP
00001ac6: DUP2
00001ac7: ADD
00001ac8: SWAP1
00001ac9: PUSH3 0x001ad4
00001acd: SWAP2
00001ace: SWAP1
00001acf: PUSH3 0x00320f
00001ad3: JUMP
00001ad4: JUMPDEST
00001ad5: PUSH3 0x002760
00001ad9: JUMP
00001ada: JUMPDEST
00001adb: SWAP1
00001adc: POP
00001add: PUSH1 0x00
00001adf: PUSH3 0x001b03
00001ae3: DUP5
00001ae4: PUSH2 0x0100
00001ae7: ADD
00001ae8: MLOAD
00001ae9: DUP4
00001aea: DUP7
00001aeb: PUSH1 0xa0
00001aed: ADD
00001aee: MLOAD
00001aef: DUP8
00001af0: PUSH1 0x80
00001af2: ADD
00001af3: MLOAD
00001af4: DUP9
00001af5: PUSH1 0xc0
00001af7: ADD
00001af8: MLOAD
00001af9: DUP10
00001afa: PUSH1 0xe0
00001afc: ADD
00001afd: MLOAD
00001afe: PUSH3 0x00276e
00001b02: JUMP
00001b03: JUMPDEST
00001b04: SWAP1
00001b05: POP
00001b06: DUP1
00001b07: CALLVALUE
00001b08: LT
00001b09: ISZERO
00001b0a: PUSH3 0x001b28
00001b0e: JUMPI
00001b0f: PUSH1 0x40
00001b11: MLOAD
00001b12: PUSH3 0x461bcd
00001b16: PUSH1 0xe5
00001b18: SHL
00001b19: DUP2
00001b1a: MSTORE
00001b1b: PUSH1 0x04
00001b1d: ADD
00001b1e: PUSH3 0x00046c
00001b22: SWAP1
00001b23: PUSH3 0x0038c6
00001b27: JUMP
00001b28: JUMPDEST
00001b29: PUSH1 0x00
00001b2b: PUSH3 0x001b3f
00001b2f: DUP6
00001b30: PUSH2 0x0100
00001b33: ADD
00001b34: MLOAD
00001b35: DUP7
00001b36: PUSH1 0xc0
00001b38: ADD
00001b39: MLOAD
00001b3a: PUSH3 0x0027d8
00001b3e: JUMP
00001b3f: JUMPDEST
00001b40: SWAP1
00001b41: POP
00001b42: PUSH1 0x00
00001b44: PUSH3 0x001b58
00001b48: DUP3
00001b49: DUP8
00001b4a: PUSH1 0xc0
00001b4c: ADD
00001b4d: MLOAD
00001b4e: DUP9
00001b4f: PUSH1 0xe0
00001b51: ADD
00001b52: MLOAD
00001b53: PUSH3 0x002800
00001b57: JUMP
00001b58: JUMPDEST
00001b59: SWAP1
00001b5a: POP
00001b5b: PUSH3 0x001b64
00001b5f: PUSH3 0x002a01
00001b63: JUMP
00001b64: JUMPDEST
00001b65: PUSH3 0x001b6e
00001b69: PUSH3 0x0022cf
00001b6d: JUMP
00001b6e: JUMPDEST
00001b6f: PUSH1 0x80
00001b71: DUP2
00001b72: ADD
00001b73: MLOAD
00001b74: PUSH1 0xe0
00001b76: DUP10
00001b77: ADD
00001b78: DUP5
00001b79: SWAP1
00001b7a: MSTORE
00001b7b: PUSH1 0x40
00001b7d: MLOAD
00001b7e: PUSH4 0x0b8bde65
00001b83: PUSH1 0xe3
00001b85: SHL
00001b86: DUP2
00001b87: MSTORE
00001b88: SWAP2
00001b89: SWAP3
00001b8a: POP
00001b8b: SWAP1
00001b8c: PUSH1 0x01
00001b8e: PUSH1 0x01
00001b90: PUSH1 0xa0
00001b92: SHL
00001b93: SUB
00001b94: DUP3
00001b95: AND
00001b96: SWAP1
00001b97: PUSH4 0x5c5ef328
00001b9c: SWAP1
00001b9d: PUSH3 0x001bac
00001ba1: SWAP1
00001ba2: DUP12
00001ba3: SWAP1
00001ba4: PUSH1 0x04
00001ba6: ADD
00001ba7: PUSH3 0x003b9a
00001bab: JUMP
00001bac: JUMPDEST
00001bad: PUSH1 0x00
00001baf: PUSH1 0x40
00001bb1: MLOAD
00001bb2: DUP1
00001bb3: DUP4
00001bb4: SUB
00001bb5: DUP2
00001bb6: PUSH1 0x00
00001bb8: DUP8
00001bb9: DUP1
00001bba: EXTCODESIZE
00001bbb: ISZERO
00001bbc: DUP1
00001bbd: ISZERO
00001bbe: PUSH3 0x001bc7
00001bc2: JUMPI
00001bc3: PUSH1 0x00
00001bc5: DUP1
00001bc6: REVERT
00001bc7: JUMPDEST
00001bc8: POP
00001bc9: GAS
00001bca: CALL
00001bcb: ISZERO
00001bcc: DUP1
00001bcd: ISZERO
00001bce: PUSH3 0x001bdc
00001bd2: JUMPI
00001bd3: RETURNDATASIZE
00001bd4: PUSH1 0x00
00001bd6: DUP1
00001bd7: RETURNDATACOPY
00001bd8: RETURNDATASIZE
00001bd9: PUSH1 0x00
00001bdb: REVERT
00001bdc: JUMPDEST
00001bdd: POP
00001bde: POP
00001bdf: POP
00001be0: PUSH2 0x0100
00001be3: DUP10
00001be4: ADD
00001be5: MLOAD
00001be6: PUSH1 0x40
00001be8: MLOAD
00001be9: PUSH4 0x29460cc5
00001bee: PUSH1 0xe1
00001bf0: SHL
00001bf1: DUP2
00001bf2: MSTORE
00001bf3: PUSH1 0x00
00001bf5: SWAP3
00001bf6: POP
00001bf7: PUSH1 0x01
00001bf9: PUSH1 0x01
00001bfb: PUSH1 0xa0
00001bfd: SHL
00001bfe: SUB
00001bff: DUP11
00001c00: AND
00001c01: SWAP2
00001c02: PUSH4 0x528c198a
00001c07: SWAP2
00001c08: PUSH3 0x001c17
00001c0c: SWAP2
00001c0d: CALLER
00001c0e: SWAP2
00001c0f: PUSH1 0x04
00001c11: ADD
00001c12: PUSH3 0x00345f
00001c16: JUMP
00001c17: JUMPDEST
00001c18: PUSH1 0x20
00001c1a: PUSH1 0x40
00001c1c: MLOAD
00001c1d: DUP1
00001c1e: DUP4
00001c1f: SUB
00001c20: DUP2
00001c21: PUSH1 0x00
00001c23: DUP8
00001c24: DUP1
00001c25: EXTCODESIZE
00001c26: ISZERO
00001c27: DUP1
00001c28: ISZERO
00001c29: PUSH3 0x001c32
00001c2d: JUMPI
00001c2e: PUSH1 0x00
00001c30: DUP1
00001c31: REVERT
00001c32: JUMPDEST
00001c33: POP
00001c34: GAS
00001c35: CALL
00001c36: ISZERO
00001c37: DUP1
00001c38: ISZERO
00001c39: PUSH3 0x001c47
00001c3d: JUMPI
00001c3e: RETURNDATASIZE
00001c3f: PUSH1 0x00
00001c41: DUP1
00001c42: RETURNDATACOPY
00001c43: RETURNDATASIZE
00001c44: PUSH1 0x00
00001c46: REVERT
00001c47: JUMPDEST
00001c48: POP
00001c49: POP
00001c4a: POP
00001c4b: POP
00001c4c: PUSH1 0x40
00001c4e: MLOAD
00001c4f: RETURNDATASIZE
00001c50: PUSH1 0x1f
00001c52: NOT
00001c53: PUSH1 0x1f
00001c55: DUP3
00001c56: ADD
00001c57: AND
00001c58: DUP3
00001c59: ADD
00001c5a: DUP1
00001c5b: PUSH1 0x40
00001c5d: MSTORE
00001c5e: POP
00001c5f: DUP2
00001c60: ADD
00001c61: SWAP1
00001c62: PUSH3 0x001c6d
00001c66: SWAP2
00001c67: SWAP1
00001c68: PUSH3 0x002f35
00001c6c: JUMP
00001c6d: JUMPDEST
00001c6e: SWAP1
00001c6f: POP
00001c70: DUP1
00001c71: PUSH3 0x001c8f
00001c75: JUMPI
00001c76: PUSH1 0x40
00001c78: MLOAD
00001c79: PUSH3 0x461bcd
00001c7d: PUSH1 0xe5
00001c7f: SHL
00001c80: DUP2
00001c81: MSTORE
00001c82: PUSH1 0x04
00001c84: ADD
00001c85: PUSH3 0x00046c
00001c89: SWAP1
00001c8a: PUSH3 0x0037a0
00001c8e: JUMP
00001c8f: JUMPDEST
00001c90: PUSH1 0x00
00001c92: JUMPDEST
00001c93: PUSH1 0x05
00001c95: SLOAD
00001c96: DUP2
00001c97: LT
00001c98: ISZERO
00001c99: PUSH3 0x001d1c
00001c9d: JUMPI
00001c9e: PUSH1 0x05
00001ca0: DUP2
00001ca1: DUP2
00001ca2: SLOAD
00001ca3: DUP2
00001ca4: LT
00001ca5: PUSH3 0x001cab
00001ca9: JUMPI
00001caa: INVALID
00001cab: JUMPDEST
00001cac: PUSH1 0x00
00001cae: SWAP2
00001caf: DUP3
00001cb0: MSTORE
00001cb1: PUSH1 0x20
00001cb3: DUP3
00001cb4: KECCAK256
00001cb5: ADD
00001cb6: SLOAD
00001cb7: PUSH1 0x40
00001cb9: DUP1
00001cba: MLOAD
00001cbb: PUSH1 0x01
00001cbd: PUSH3 0x093517
00001cc1: PUSH1 0xe0
00001cc3: SHL
00001cc4: SUB
00001cc5: NOT
00001cc6: DUP2
00001cc7: MSTORE
00001cc8: SWAP1
00001cc9: MLOAD
00001cca: PUSH1 0x01
00001ccc: PUSH1 0x01
00001cce: PUSH1 0xa0
00001cd0: SHL
00001cd1: SUB
00001cd2: SWAP1
00001cd3: SWAP3
00001cd4: AND
00001cd5: SWAP3
00001cd6: PUSH4 0xfff6cae9
00001cdb: SWAP3
00001cdc: PUSH1 0x04
00001cde: DUP1
00001cdf: DUP5
00001ce0: ADD
00001ce1: SWAP4
00001ce2: DUP3
00001ce3: SWAP1
00001ce4: SUB
00001ce5: ADD
00001ce6: DUP2
00001ce7: DUP4
00001ce8: DUP8
00001ce9: DUP1
00001cea: EXTCODESIZE
00001ceb: ISZERO
00001cec: DUP1
00001ced: ISZERO
00001cee: PUSH3 0x001cf7
00001cf2: JUMPI
00001cf3: PUSH1 0x00
00001cf5: DUP1
00001cf6: REVERT
00001cf7: JUMPDEST
00001cf8: POP
00001cf9: GAS
00001cfa: CALL
00001cfb: ISZERO
00001cfc: DUP1
00001cfd: ISZERO
00001cfe: PUSH3 0x001d0c
00001d02: JUMPI
00001d03: RETURNDATASIZE
00001d04: PUSH1 0x00
00001d06: DUP1
00001d07: RETURNDATACOPY
00001d08: RETURNDATASIZE
00001d09: PUSH1 0x00
00001d0b: REVERT
00001d0c: JUMPDEST
00001d0d: POP
00001d0e: POP
00001d0f: POP
00001d10: POP
00001d11: PUSH1 0x01
00001d13: DUP2
00001d14: ADD
00001d15: SWAP1
00001d16: POP
00001d17: PUSH3 0x001c92
00001d1b: JUMP
00001d1c: JUMPDEST
00001d1d: POP
00001d1e: DUP1
00001d1f: DUP1
00001d20: ISZERO
00001d21: PUSH3 0x001d2a
00001d25: JUMPI
00001d26: POP
00001d27: DUP6
00001d28: CALLVALUE
00001d29: GT
00001d2a: JUMPDEST
00001d2b: ISZERO
00001d2c: PUSH3 0x001db5
00001d30: JUMPI
00001d31: CALLER
00001d32: PUSH3 0x001d3d
00001d36: CALLVALUE
00001d37: DUP9
00001d38: PUSH3 0x002735
00001d3c: JUMP
00001d3d: JUMPDEST
00001d3e: PUSH1 0x40
00001d40: MLOAD
00001d41: PUSH3 0x001d4b
00001d45: SWAP1
00001d46: PUSH3 0x003429
00001d4a: JUMP
00001d4b: JUMPDEST
00001d4c: PUSH1 0x00
00001d4e: PUSH1 0x40
00001d50: MLOAD
00001d51: DUP1
00001d52: DUP4
00001d53: SUB
00001d54: DUP2
00001d55: DUP6
00001d56: DUP8
00001d57: GAS
00001d58: CALL
00001d59: SWAP3
00001d5a: POP
00001d5b: POP
00001d5c: POP
00001d5d: RETURNDATASIZE
00001d5e: DUP1
00001d5f: PUSH1 0x00
00001d61: DUP2
00001d62: EQ
00001d63: PUSH3 0x001d8a
00001d67: JUMPI
00001d68: PUSH1 0x40
00001d6a: MLOAD
00001d6b: SWAP2
00001d6c: POP
00001d6d: PUSH1 0x1f
00001d6f: NOT
00001d70: PUSH1 0x3f
00001d72: RETURNDATASIZE
00001d73: ADD
00001d74: AND
00001d75: DUP3
00001d76: ADD
00001d77: PUSH1 0x40
00001d79: MSTORE
00001d7a: RETURNDATASIZE
00001d7b: DUP3
00001d7c: MSTORE
00001d7d: RETURNDATASIZE
00001d7e: PUSH1 0x00
00001d80: PUSH1 0x20
00001d82: DUP5
00001d83: ADD
00001d84: RETURNDATACOPY
00001d85: PUSH3 0x001d8f
00001d89: JUMP
00001d8a: JUMPDEST
00001d8b: PUSH1 0x60
00001d8d: SWAP2
00001d8e: POP
00001d8f: JUMPDEST
00001d90: POP
00001d91: POP
00001d92: DUP1
00001d93: SWAP2
00001d94: POP
00001d95: POP
00001d96: DUP1
00001d97: PUSH3 0x001db5
00001d9b: JUMPI
00001d9c: PUSH1 0x40
00001d9e: MLOAD
00001d9f: PUSH3 0x461bcd
00001da3: PUSH1 0xe5
00001da5: SHL
00001da6: DUP2
00001da7: MSTORE
00001da8: PUSH1 0x04
00001daa: ADD
00001dab: PUSH3 0x00046c
00001daf: SWAP1
00001db0: PUSH3 0x003769
00001db4: JUMP
00001db5: JUMPDEST
00001db6: CALLER
00001db7: PUSH1 0x01
00001db9: PUSH1 0x01
00001dbb: PUSH1 0xa0
00001dbd: SHL
00001dbe: SUB
00001dbf: AND
00001dc0: PUSH32 0x9dc8971e92eed0890c17bd5c55d7c0dc69b9937962c9c6485c4e2b05d808b61c
00001de1: DUP11
00001de2: PUSH2 0x0100
00001de5: ADD
00001de6: MLOAD
00001de7: CALLVALUE
00001de8: PUSH1 0x40
00001dea: MLOAD
00001deb: PUSH3 0x000dd3
00001def: SWAP3
00001df0: SWAP2
00001df1: SWAP1
00001df2: PUSH3 0x003bb8
00001df6: JUMP
00001df7: JUMPDEST
00001df8: PUSH1 0x03
00001dfa: SLOAD
00001dfb: PUSH1 0x01
00001dfd: PUSH1 0x01
00001dff: PUSH1 0xa0
00001e01: SHL
00001e02: SUB
00001e03: AND
00001e04: CALLER
00001e05: EQ
00001e06: PUSH3 0x001e24
00001e0a: JUMPI
00001e0b: PUSH1 0x40
00001e0d: MLOAD
00001e0e: PUSH3 0x461bcd
00001e12: PUSH1 0xe5
00001e14: SHL
00001e15: DUP2
00001e16: MSTORE
00001e17: PUSH1 0x04
00001e19: ADD
00001e1a: PUSH3 0x00046c
00001e1e: SWAP1
00001e1f: PUSH3 0x0036fd
00001e23: JUMP
00001e24: JUMPDEST
00001e25: PUSH1 0x02
00001e27: PUSH1 0x00
00001e29: SLOAD
00001e2a: EQ
00001e2b: ISZERO
00001e2c: PUSH3 0x001e4a
00001e30: JUMPI
00001e31: PUSH1 0x40
00001e33: MLOAD
00001e34: PUSH3 0x461bcd
00001e38: PUSH1 0xe5
00001e3a: SHL
00001e3b: DUP2
00001e3c: MSTORE
00001e3d: PUSH1 0x04
00001e3f: ADD
00001e40: PUSH3 0x00046c
00001e44: SWAP1
00001e45: PUSH3 0x003ab7
00001e49: JUMP
00001e4a: JUMPDEST
00001e4b: PUSH1 0x02
00001e4d: PUSH1 0x00
00001e4f: SSTORE
00001e50: DUP1
00001e51: MLOAD
00001e52: DUP3
00001e53: MLOAD
00001e54: EQ
00001e55: PUSH3 0x001e73
00001e59: JUMPI
00001e5a: PUSH1 0x40
00001e5c: MLOAD
00001e5d: PUSH3 0x461bcd
00001e61: PUSH1 0xe5
00001e63: SHL
00001e64: DUP2
00001e65: MSTORE
00001e66: PUSH1 0x04
00001e68: ADD
00001e69: PUSH3 0x00046c
00001e6d: SWAP1
00001e6e: PUSH3 0x0036ab
00001e72: JUMP
00001e73: JUMPDEST
00001e74: PUSH1 0x00
00001e76: PUSH3 0x001e7f
00001e7a: PUSH3 0x002452
00001e7e: JUMP
00001e7f: JUMPDEST
00001e80: MLOAD
00001e81: SWAP1
00001e82: POP
00001e83: PUSH1 0x00
00001e85: JUMPDEST
00001e86: DUP4
00001e87: MLOAD
00001e88: DUP2
00001e89: LT
00001e8a: ISZERO
00001e8b: PUSH3 0x000f3c
00001e8f: JUMPI
00001e90: PUSH1 0x00
00001e92: DUP3
00001e93: PUSH1 0x01
00001e95: PUSH1 0x01
00001e97: PUSH1 0xa0
00001e99: SHL
00001e9a: SUB
00001e9b: AND
00001e9c: PUSH4 0x3e174aaf
00001ea1: DUP7
00001ea2: DUP5
00001ea3: DUP2
00001ea4: MLOAD
00001ea5: DUP2
00001ea6: LT
00001ea7: PUSH3 0x001ead
00001eab: JUMPI
00001eac: INVALID
00001ead: JUMPDEST
00001eae: PUSH1 0x20
00001eb0: MUL
00001eb1: PUSH1 0x20
00001eb3: ADD
00001eb4: ADD
00001eb5: MLOAD
00001eb6: PUSH1 0x40
00001eb8: MLOAD
00001eb9: DUP3
00001eba: PUSH4 0xffffffff
00001ebf: AND
00001ec0: PUSH1 0xe0
00001ec2: SHL
00001ec3: DUP2
00001ec4: MSTORE
00001ec5: PUSH1 0x04
00001ec7: ADD
00001ec8: PUSH3 0x001ed3
00001ecc: SWAP2
00001ecd: SWAP1
00001ece: PUSH3 0x00342c
00001ed2: JUMP
00001ed3: JUMPDEST
00001ed4: PUSH1 0x20
00001ed6: PUSH1 0x40
00001ed8: MLOAD
00001ed9: DUP1
00001eda: DUP4
00001edb: SUB
00001edc: DUP2
00001edd: DUP7
00001ede: DUP1
00001edf: EXTCODESIZE
00001ee0: ISZERO
00001ee1: DUP1
00001ee2: ISZERO
00001ee3: PUSH3 0x001eec
00001ee7: JUMPI
00001ee8: PUSH1 0x00
00001eea: DUP1
00001eeb: REVERT
00001eec: JUMPDEST
00001eed: POP
00001eee: GAS
00001eef: STATICCALL
00001ef0: ISZERO
00001ef1: DUP1
00001ef2: ISZERO
00001ef3: PUSH3 0x001f01
00001ef7: JUMPI
00001ef8: RETURNDATASIZE
00001ef9: PUSH1 0x00
00001efb: DUP1
00001efc: RETURNDATACOPY
00001efd: RETURNDATASIZE
00001efe: PUSH1 0x00
00001f00: REVERT
00001f01: JUMPDEST
00001f02: POP
00001f03: POP
00001f04: POP
00001f05: POP
00001f06: PUSH1 0x40
00001f08: MLOAD
00001f09: RETURNDATASIZE
00001f0a: PUSH1 0x1f
00001f0c: NOT
00001f0d: PUSH1 0x1f
00001f0f: DUP3
00001f10: ADD
00001f11: AND
00001f12: DUP3
00001f13: ADD
00001f14: DUP1
00001f15: PUSH1 0x40
00001f17: MSTORE
00001f18: POP
00001f19: DUP2
00001f1a: ADD
00001f1b: SWAP1
00001f1c: PUSH3 0x001f27
00001f20: SWAP2
00001f21: SWAP1
00001f22: PUSH3 0x00320f
00001f26: JUMP
00001f27: JUMPDEST
00001f28: SWAP1
00001f29: POP
00001f2a: DUP4
00001f2b: DUP3
00001f2c: DUP2
00001f2d: MLOAD
00001f2e: DUP2
00001f2f: LT
00001f30: PUSH3 0x001f36
00001f34: JUMPI
00001f35: INVALID
00001f36: JUMPDEST
00001f37: PUSH1 0x20
00001f39: MUL
00001f3a: PUSH1 0x20
00001f3c: ADD
00001f3d: ADD
00001f3e: MLOAD
00001f3f: DUP2
00001f40: LT
00001f41: ISZERO
00001f42: PUSH3 0x00205c
00001f46: JUMPI
00001f47: DUP1
00001f48: ISZERO
00001f49: PUSH3 0x001fe9
00001f4d: JUMPI
00001f4e: DUP3
00001f4f: PUSH1 0x01
00001f51: PUSH1 0x01
00001f53: PUSH1 0xa0
00001f55: SHL
00001f56: SUB
00001f57: AND
00001f58: PUSH4 0xee7a7c04
00001f5d: DUP7
00001f5e: DUP5
00001f5f: DUP2
00001f60: MLOAD
00001f61: DUP2
00001f62: LT
00001f63: PUSH3 0x001f69
00001f67: JUMPI
00001f68: INVALID
00001f69: JUMPDEST
00001f6a: PUSH1 0x20
00001f6c: MUL
00001f6d: PUSH1 0x20
00001f6f: ADD
00001f70: ADD
00001f71: MLOAD
00001f72: DUP4
00001f73: PUSH1 0x40
00001f75: MLOAD
00001f76: DUP4
00001f77: PUSH4 0xffffffff
00001f7c: AND
00001f7d: PUSH1 0xe0
00001f7f: SHL
00001f80: DUP2
00001f81: MSTORE
00001f82: PUSH1 0x04
00001f84: ADD
00001f85: PUSH3 0x001f91
00001f89: SWAP3
00001f8a: SWAP2
00001f8b: SWAP1
00001f8c: PUSH3 0x00345f
00001f90: JUMP
00001f91: JUMPDEST
00001f92: PUSH1 0x20
00001f94: PUSH1 0x40
00001f96: MLOAD
00001f97: DUP1
00001f98: DUP4
00001f99: SUB
00001f9a: DUP2
00001f9b: PUSH1 0x00
00001f9d: DUP8
00001f9e: DUP1
00001f9f: EXTCODESIZE
00001fa0: ISZERO
00001fa1: DUP1
00001fa2: ISZERO
00001fa3: PUSH3 0x001fac
00001fa7: JUMPI
00001fa8: PUSH1 0x00
00001faa: DUP1
00001fab: REVERT
00001fac: JUMPDEST
00001fad: POP
00001fae: GAS
00001faf: CALL
00001fb0: ISZERO
00001fb1: DUP1
00001fb2: ISZERO
00001fb3: PUSH3 0x001fc1
00001fb7: JUMPI
00001fb8: RETURNDATASIZE
00001fb9: PUSH1 0x00
00001fbb: DUP1
00001fbc: RETURNDATACOPY
00001fbd: RETURNDATASIZE
00001fbe: PUSH1 0x00
00001fc0: REVERT
00001fc1: JUMPDEST
00001fc2: POP
00001fc3: POP
00001fc4: POP
00001fc5: POP
00001fc6: PUSH1 0x40
00001fc8: MLOAD
00001fc9: RETURNDATASIZE
00001fca: PUSH1 0x1f
00001fcc: NOT
00001fcd: PUSH1 0x1f
00001fcf: DUP3
00001fd0: ADD
00001fd1: AND
00001fd2: DUP3
00001fd3: ADD
00001fd4: DUP1
00001fd5: PUSH1 0x40
00001fd7: MSTORE
00001fd8: POP
00001fd9: DUP2
00001fda: ADD
00001fdb: SWAP1
00001fdc: PUSH3 0x001fe7
00001fe0: SWAP2
00001fe1: SWAP1
00001fe2: PUSH3 0x002f35
00001fe6: JUMP
00001fe7: JUMPDEST
00001fe8: POP
00001fe9: JUMPDEST
00001fea: DUP5
00001feb: DUP3
00001fec: DUP2
00001fed: MLOAD
00001fee: DUP2
00001fef: LT
00001ff0: PUSH3 0x001ff6
00001ff4: JUMPI
00001ff5: INVALID
00001ff6: JUMPDEST
00001ff7: PUSH1 0x20
00001ff9: MUL
00001ffa: PUSH1 0x20
00001ffc: ADD
00001ffd: ADD
00001ffe: MLOAD
00001fff: PUSH1 0x01
00002001: PUSH1 0x01
00002003: PUSH1 0xa0
00002005: SHL
00002006: SUB
00002007: AND
00002008: PUSH32 0xdb17d6f3e7a8028d993046bb62e057669da73aa42e7a1e3e3699c0a24f2996d5
00002029: DUP6
0000202a: DUP5
0000202b: DUP2
0000202c: MLOAD
0000202d: DUP2
0000202e: LT
0000202f: PUSH3 0x002035
00002033: JUMPI
00002034: INVALID
00002035: JUMPDEST
00002036: PUSH1 0x20
00002038: MUL
00002039: PUSH1 0x20
0000203b: ADD
0000203c: ADD
0000203d: MLOAD
0000203e: DUP4
0000203f: PUSH1 0x40
00002041: MLOAD
00002042: PUSH3 0x00204e
00002046: SWAP3
00002047: SWAP2
00002048: SWAP1
00002049: PUSH3 0x003bb8
0000204d: JUMP
0000204e: JUMPDEST
0000204f: PUSH1 0x40
00002051: MLOAD
00002052: DUP1
00002053: SWAP2
00002054: SUB
00002055: SWAP1
00002056: LOG2
00002057: PUSH3 0x00210c
0000205b: JUMP
0000205c: JUMPDEST
0000205d: DUP3
0000205e: PUSH1 0x01
00002060: PUSH1 0x01
00002062: PUSH1 0xa0
00002064: SHL
00002065: SUB
00002066: AND
00002067: PUSH4 0xee7a7c04
0000206c: DUP7
0000206d: DUP5
0000206e: DUP2
0000206f: MLOAD
00002070: DUP2
00002071: LT
00002072: PUSH3 0x002078
00002076: JUMPI
00002077: INVALID
00002078: JUMPDEST
00002079: PUSH1 0x20
0000207b: MUL
0000207c: PUSH1 0x20
0000207e: ADD
0000207f: ADD
00002080: MLOAD
00002081: DUP7
00002082: DUP6
00002083: DUP2
00002084: MLOAD
00002085: DUP2
00002086: LT
00002087: PUSH3 0x00208d
0000208b: JUMPI
0000208c: INVALID
0000208d: JUMPDEST
0000208e: PUSH1 0x20
00002090: MUL
00002091: PUSH1 0x20
00002093: ADD
00002094: ADD
00002095: MLOAD
00002096: PUSH1 0x40
00002098: MLOAD
00002099: DUP4
0000209a: PUSH4 0xffffffff
0000209f: AND
000020a0: PUSH1 0xe0
000020a2: SHL
000020a3: DUP2
000020a4: MSTORE
000020a5: PUSH1 0x04
000020a7: ADD
000020a8: PUSH3 0x0020b4
000020ac: SWAP3
000020ad: SWAP2
000020ae: SWAP1
000020af: PUSH3 0x00345f
000020b3: JUMP
000020b4: JUMPDEST
000020b5: PUSH1 0x20
000020b7: PUSH1 0x40
000020b9: MLOAD
000020ba: DUP1
000020bb: DUP4
000020bc: SUB
000020bd: DUP2
000020be: PUSH1 0x00
000020c0: DUP8
000020c1: DUP1
000020c2: EXTCODESIZE
000020c3: ISZERO
000020c4: DUP1
000020c5: ISZERO
000020c6: PUSH3 0x0020cf
000020ca: JUMPI
000020cb: PUSH1 0x00
000020cd: DUP1
000020ce: REVERT
000020cf: JUMPDEST
000020d0: POP
000020d1: GAS
000020d2: CALL
000020d3: ISZERO
000020d4: DUP1
000020d5: ISZERO
000020d6: PUSH3 0x0020e4
000020da: JUMPI
000020db: RETURNDATASIZE
000020dc: PUSH1 0x00
000020de: DUP1
000020df: RETURNDATACOPY
000020e0: RETURNDATASIZE
000020e1: PUSH1 0x00
000020e3: REVERT
000020e4: JUMPDEST
000020e5: POP
000020e6: POP
000020e7: POP
000020e8: POP
000020e9: PUSH1 0x40
000020eb: MLOAD
000020ec: RETURNDATASIZE
000020ed: PUSH1 0x1f
000020ef: NOT
000020f0: PUSH1 0x1f
000020f2: DUP3
000020f3: ADD
000020f4: AND
000020f5: DUP3
000020f6: ADD
000020f7: DUP1
000020f8: PUSH1 0x40
000020fa: MSTORE
000020fb: POP
000020fc: DUP2
000020fd: ADD
000020fe: SWAP1
000020ff: PUSH3 0x00210a
00002103: SWAP2
00002104: SWAP1
00002105: PUSH3 0x002f35
00002109: JUMP
0000210a: JUMPDEST
0000210b: POP
0000210c: JUMPDEST
0000210d: POP
0000210e: PUSH1 0x01
00002110: ADD
00002111: PUSH3 0x001e85
00002115: JUMP
00002116: JUMPDEST
00002117: PUSH1 0x04
00002119: DUP2
0000211a: DUP2
0000211b: SLOAD
0000211c: DUP2
0000211d: LT
0000211e: PUSH3 0x000f55
00002122: JUMPI
00002123: INVALID
00002124: JUMPDEST
00002125: PUSH1 0x01
00002127: SLOAD
00002128: PUSH1 0x01
0000212a: PUSH1 0x01
0000212c: PUSH1 0xa0
0000212e: SHL
0000212f: SUB
00002130: AND
00002131: DUP2
00002132: JUMP
00002133: JUMPDEST
00002134: PUSH1 0x03
00002136: SLOAD
00002137: PUSH1 0x00
00002139: SWAP1
0000213a: PUSH1 0x01
0000213c: PUSH1 0x01
0000213e: PUSH1 0xa0
00002140: SHL
00002141: SUB
00002142: AND
00002143: CALLER
00002144: EQ
00002145: PUSH3 0x002163
00002149: JUMPI
0000214a: PUSH1 0x40
0000214c: MLOAD
0000214d: PUSH3 0x461bcd
00002151: PUSH1 0xe5
00002153: SHL
00002154: DUP2
00002155: MSTORE
00002156: PUSH1 0x04
00002158: ADD
00002159: PUSH3 0x00046c
0000215d: SWAP1
0000215e: PUSH3 0x0036fd
00002162: JUMP
00002163: JUMPDEST
00002164: PUSH1 0x02
00002166: PUSH1 0x00
00002168: SLOAD
00002169: EQ
0000216a: ISZERO
0000216b: PUSH3 0x002189
0000216f: JUMPI
00002170: PUSH1 0x40
00002172: MLOAD
00002173: PUSH3 0x461bcd
00002177: PUSH1 0xe5
00002179: SHL
0000217a: DUP2
0000217b: MSTORE
0000217c: PUSH1 0x04
0000217e: ADD
0000217f: PUSH3 0x00046c
00002183: SWAP1
00002184: PUSH3 0x003ab7
00002188: JUMP
00002189: JUMPDEST
0000218a: PUSH1 0x02
0000218c: PUSH1 0x00
0000218e: SWAP1
0000218f: DUP2
00002190: SSTORE
00002191: PUSH1 0x05
00002193: DUP1
00002194: SLOAD
00002195: PUSH1 0x01
00002197: DUP2
00002198: ADD
00002199: DUP3
0000219a: SSTORE
0000219b: SWAP1
0000219c: DUP3
0000219d: MSTORE
0000219e: PUSH32 0x036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0
000021bf: ADD
000021c0: DUP1
000021c1: SLOAD
000021c2: PUSH1 0x01
000021c4: PUSH1 0x01
000021c6: PUSH1 0xa0
000021c8: SHL
000021c9: SUB
000021ca: NOT
000021cb: AND
000021cc: PUSH1 0x01
000021ce: PUSH1 0x01
000021d0: PUSH1 0xa0
000021d2: SHL
000021d3: SUB
000021d4: DUP6
000021d5: AND
000021d6: SWAP1
000021d7: DUP2
000021d8: OR
000021d9: SWAP1
000021da: SWAP2
000021db: SSTORE
000021dc: PUSH1 0x40
000021de: MLOAD
000021df: SWAP1
000021e0: SWAP2
000021e1: PUSH32 0xb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d89
00002202: SWAP2
00002203: LOG2
00002204: PUSH1 0x01
00002206: PUSH1 0x00
00002208: SSTORE
00002209: SWAP2
0000220a: SWAP1
0000220b: POP
0000220c: JUMP
0000220d: JUMPDEST
0000220e: PUSH1 0x03
00002210: SLOAD
00002211: PUSH1 0x01
00002213: PUSH1 0x01
00002215: PUSH1 0xa0
00002217: SHL
00002218: SUB
00002219: AND
0000221a: DUP2
0000221b: JUMP
0000221c: JUMPDEST
0000221d: PUSH3 0x002226
00002221: PUSH3 0x0029b2
00002225: JUMP
00002226: JUMPDEST
00002227: PUSH3 0x002230
0000222b: PUSH3 0x002a01
0000222f: JUMP
00002230: JUMPDEST
00002231: PUSH3 0x00223a
00002235: PUSH3 0x0022cf
00002239: JUMP
0000223a: JUMPDEST
0000223b: PUSH1 0x20
0000223d: DUP2
0000223e: ADD
0000223f: MLOAD
00002240: PUSH1 0x40
00002242: MLOAD
00002243: PUSH4 0xa094717b
00002248: PUSH1 0xe0
0000224a: SHL
0000224b: DUP2
0000224c: MSTORE
0000224d: SWAP2
0000224e: SWAP3
0000224f: POP
00002250: PUSH1 0x01
00002252: PUSH1 0x01
00002254: PUSH1 0xa0
00002256: SHL
00002257: SUB
00002258: AND
00002259: SWAP1
0000225a: PUSH4 0xa094717b
0000225f: SWAP1
00002260: PUSH3 0x002271
00002264: SWAP1
00002265: ADDRESS
00002266: SWAP1
00002267: DUP6
00002268: SWAP1
00002269: PUSH1 0x04
0000226b: ADD
0000226c: PUSH3 0x003440
00002270: JUMP
00002271: JUMPDEST
00002272: PUSH1 0x00
00002274: PUSH1 0x40
00002276: MLOAD
00002277: DUP1
00002278: DUP4
00002279: SUB
0000227a: DUP2
0000227b: DUP7
0000227c: DUP1
0000227d: EXTCODESIZE
0000227e: ISZERO
0000227f: DUP1
00002280: ISZERO
00002281: PUSH3 0x00228a
00002285: JUMPI
00002286: PUSH1 0x00
00002288: DUP1
00002289: REVERT
0000228a: JUMPDEST
0000228b: POP
0000228c: GAS
0000228d: STATICCALL
0000228e: ISZERO
0000228f: DUP1
00002290: ISZERO
00002291: PUSH3 0x00229f
00002295: JUMPI
00002296: RETURNDATASIZE
00002297: PUSH1 0x00
00002299: DUP1
0000229a: RETURNDATACOPY
0000229b: RETURNDATASIZE
0000229c: PUSH1 0x00
0000229e: REVERT
0000229f: JUMPDEST
000022a0: POP
000022a1: POP
000022a2: POP
000022a3: POP
000022a4: PUSH1 0x40
000022a6: MLOAD
000022a7: RETURNDATASIZE
000022a8: PUSH1 0x00
000022aa: DUP3
000022ab: RETURNDATACOPY
000022ac: PUSH1 0x1f
000022ae: RETURNDATASIZE
000022af: SWAP1
000022b0: DUP2
000022b1: ADD
000022b2: PUSH1 0x1f
000022b4: NOT
000022b5: AND
000022b6: DUP3
000022b7: ADD
000022b8: PUSH1 0x40
000022ba: MSTORE
000022bb: PUSH3 0x0022c9
000022bf: SWAP2
000022c0: SWAP1
000022c1: DUP2
000022c2: ADD
000022c3: SWAP1
000022c4: PUSH3 0x002fdd
000022c8: JUMP
000022c9: JUMPDEST
000022ca: SWAP2
000022cb: POP
000022cc: POP
000022cd: SWAP1
000022ce: JUMP
000022cf: JUMPDEST
000022d0: PUSH3 0x0022d9
000022d4: PUSH3 0x002a01
000022d8: JUMP
000022d9: JUMPDEST
000022da: PUSH1 0x02
000022dc: SLOAD
000022dd: PUSH1 0x40
000022df: MLOAD
000022e0: PUSH4 0x332a4d09
000022e5: PUSH1 0xe0
000022e7: SHL
000022e8: DUP2
000022e9: MSTORE
000022ea: PUSH1 0x01
000022ec: PUSH1 0x01
000022ee: PUSH1 0xa0
000022f0: SHL
000022f1: SUB
000022f2: SWAP1
000022f3: SWAP2
000022f4: AND
000022f5: SWAP1
000022f6: PUSH4 0x332a4d09
000022fb: SWAP1
000022fc: PUSH3 0x00230b
00002300: SWAP1
00002301: ADDRESS
00002302: SWAP1
00002303: PUSH1 0x04
00002305: ADD
00002306: PUSH3 0x00342c
0000230a: JUMP
0000230b: JUMPDEST
0000230c: PUSH1 0xc0
0000230e: PUSH1 0x40
00002310: MLOAD
00002311: DUP1
00002312: DUP4
00002313: SUB
00002314: DUP2
00002315: DUP7
00002316: DUP1
00002317: EXTCODESIZE
00002318: ISZERO
00002319: DUP1
0000231a: ISZERO
0000231b: PUSH3 0x002324
0000231f: JUMPI
00002320: PUSH1 0x00
00002322: DUP1
00002323: REVERT
00002324: JUMPDEST
00002325: POP
00002326: GAS
00002327: STATICCALL
00002328: ISZERO
00002329: DUP1
0000232a: ISZERO
0000232b: PUSH3 0x002339
0000232f: JUMPI
00002330: RETURNDATASIZE
00002331: PUSH1 0x00
00002333: DUP1
00002334: RETURNDATACOPY
00002335: RETURNDATASIZE
00002336: PUSH1 0x00
00002338: REVERT
00002339: JUMPDEST
0000233a: POP
0000233b: POP
0000233c: POP
0000233d: POP
0000233e: PUSH1 0x40
00002340: MLOAD
00002341: RETURNDATASIZE
00002342: PUSH1 0x1f
00002344: NOT
00002345: PUSH1 0x1f
00002347: DUP3
00002348: ADD
00002349: AND
0000234a: DUP3
0000234b: ADD
0000234c: DUP1
0000234d: PUSH1 0x40
0000234f: MSTORE
00002350: POP
00002351: DUP2
00002352: ADD
00002353: SWAP1
00002354: PUSH3 0x001817
00002358: SWAP2
00002359: SWAP1
0000235a: PUSH3 0x0030c5
0000235e: JUMP
0000235f: JUMPDEST
00002360: PUSH3 0x002369
00002364: PUSH3 0x002a36
00002368: JUMP
00002369: JUMPDEST
0000236a: PUSH1 0x60
0000236c: DUP2
0000236d: ADD
0000236e: DUP7
0000236f: SWAP1
00002370: MSTORE
00002371: PUSH2 0x0140
00002374: DUP2
00002375: ADD
00002376: DUP3
00002377: SWAP1
00002378: MSTORE
00002379: PUSH1 0x80
0000237b: DUP2
0000237c: ADD
0000237d: DUP6
0000237e: SWAP1
0000237f: MSTORE
00002380: PUSH1 0xa0
00002382: DUP1
00002383: DUP3
00002384: ADD
00002385: DUP6
00002386: SWAP1
00002387: MSTORE
00002388: PUSH1 0x00
0000238a: PUSH1 0xc0
0000238c: DUP4
0000238d: ADD
0000238e: MSTORE
0000238f: PUSH8 0x0de0b6b3a7640000
00002398: PUSH1 0xe0
0000239a: DUP4
0000239b: ADD
0000239c: MSTORE
0000239d: PUSH2 0x0100
000023a0: DUP3
000023a1: ADD
000023a2: DUP5
000023a3: SWAP1
000023a4: MSTORE
000023a5: PUSH1 0x20
000023a7: DUP3
000023a8: ADD
000023a9: DUP10
000023aa: SWAP1
000023ab: MSTORE
000023ac: PUSH1 0x40
000023ae: DUP1
000023af: DUP4
000023b0: ADD
000023b1: DUP10
000023b2: SWAP1
000023b3: MSTORE
000023b4: SWAP1
000023b5: DUP4
000023b6: ADD
000023b7: MLOAD
000023b8: PUSH1 0x01
000023ba: PUSH1 0x01
000023bc: PUSH1 0xa0
000023be: SHL
000023bf: SUB
000023c0: AND
000023c1: DUP1
000023c2: DUP4
000023c3: MSTORE
000023c4: SWAP1
000023c5: MLOAD
000023c6: PUSH4 0x05732157
000023cb: PUSH1 0xe5
000023cd: SHL
000023ce: DUP2
000023cf: MSTORE
000023d0: PUSH4 0xae642ae0
000023d5: SWAP1
000023d6: PUSH3 0x0023eb
000023da: SWAP1
000023db: DUP13
000023dc: SWAP1
000023dd: DUP2
000023de: SWAP1
000023df: DUP8
000023e0: SWAP1
000023e1: DUP8
000023e2: SWAP1
000023e3: PUSH1 0x04
000023e5: ADD
000023e6: PUSH3 0x003492
000023ea: JUMP
000023eb: JUMPDEST
000023ec: PUSH1 0x00
000023ee: PUSH1 0x40
000023f0: MLOAD
000023f1: DUP1
000023f2: DUP4
000023f3: SUB
000023f4: DUP2
000023f5: PUSH1 0x00
000023f7: DUP8
000023f8: DUP1
000023f9: EXTCODESIZE
000023fa: ISZERO
000023fb: DUP1
000023fc: ISZERO
000023fd: PUSH3 0x002406
00002401: JUMPI
00002402: PUSH1 0x00
00002404: DUP1
00002405: REVERT
00002406: JUMPDEST
00002407: POP
00002408: GAS
00002409: CALL
0000240a: ISZERO
0000240b: DUP1
0000240c: ISZERO
0000240d: PUSH3 0x00241b
00002411: JUMPI
00002412: RETURNDATASIZE
00002413: PUSH1 0x00
00002415: DUP1
00002416: RETURNDATACOPY
00002417: RETURNDATASIZE
00002418: PUSH1 0x00
0000241a: REVERT
0000241b: JUMPDEST
0000241c: POP
0000241d: POP
0000241e: POP
0000241f: POP
00002420: PUSH1 0x40
00002422: MLOAD
00002423: RETURNDATASIZE
00002424: PUSH1 0x00
00002426: DUP3
00002427: RETURNDATACOPY
00002428: PUSH1 0x1f
0000242a: RETURNDATASIZE
0000242b: SWAP1
0000242c: DUP2
0000242d: ADD
0000242e: PUSH1 0x1f
00002430: NOT
00002431: AND
00002432: DUP3
00002433: ADD
00002434: PUSH1 0x40
00002436: MSTORE
00002437: PUSH3 0x002445
0000243b: SWAP2
0000243c: SWAP1
0000243d: DUP2
0000243e: ADD
0000243f: SWAP1
00002440: PUSH3 0x0030e3
00002444: JUMP
00002445: JUMPDEST
00002446: SWAP10
00002447: SWAP9
00002448: POP
00002449: POP
0000244a: POP
0000244b: POP
0000244c: POP
0000244d: POP
0000244e: POP
0000244f: POP
00002450: POP
00002451: JUMP
00002452: JUMPDEST
00002453: PUSH3 0x00245c
00002457: PUSH3 0x002a36
0000245b: JUMP
0000245c: JUMPDEST
0000245d: PUSH3 0x002466
00002461: PUSH3 0x002a01
00002465: JUMP
00002466: JUMPDEST
00002467: PUSH3 0x002470
0000246b: PUSH3 0x0022cf
0000246f: JUMP
00002470: JUMPDEST
00002471: SWAP1
00002472: POP
00002473: DUP1
00002474: PUSH1 0x80
00002476: ADD
00002477: MLOAD
00002478: PUSH1 0x01
0000247a: PUSH1 0x01
0000247c: PUSH1 0xa0
0000247e: SHL
0000247f: SUB
00002480: AND
00002481: PUSH4 0xa094717b
00002486: DUP3
00002487: PUSH1 0xa0
00002489: ADD
0000248a: MLOAD
0000248b: DUP4
0000248c: PUSH1 0x40
0000248e: MLOAD
0000248f: DUP4
00002490: PUSH4 0xffffffff
00002495: AND
00002496: PUSH1 0xe0
00002498: SHL
00002499: DUP2
0000249a: MSTORE
0000249b: PUSH1 0x04
0000249d: ADD
0000249e: PUSH3 0x0024aa
000024a2: SWAP3
000024a3: SWAP2
000024a4: SWAP1
000024a5: PUSH3 0x003440
000024a9: JUMP
000024aa: JUMPDEST
000024ab: PUSH1 0x00
000024ad: PUSH1 0x40
000024af: MLOAD
000024b0: DUP1
000024b1: DUP4
000024b2: SUB
000024b3: DUP2
000024b4: DUP7
000024b5: DUP1
000024b6: EXTCODESIZE
000024b7: ISZERO
000024b8: DUP1
000024b9: ISZERO
000024ba: PUSH3 0x0024c3
000024be: JUMPI
000024bf: PUSH1 0x00
000024c1: DUP1
000024c2: REVERT
000024c3: JUMPDEST
000024c4: POP
000024c5: GAS
000024c6: STATICCALL
000024c7: ISZERO
000024c8: DUP1
000024c9: ISZERO
000024ca: PUSH3 0x0024d8
000024ce: JUMPI
000024cf: RETURNDATASIZE
000024d0: PUSH1 0x00
000024d2: DUP1
000024d3: RETURNDATACOPY
000024d4: RETURNDATASIZE
000024d5: PUSH1 0x00
000024d7: REVERT
000024d8: JUMPDEST
000024d9: POP
000024da: POP
000024db: POP
000024dc: POP
000024dd: PUSH1 0x40
000024df: MLOAD
000024e0: RETURNDATASIZE
000024e1: PUSH1 0x00
000024e3: DUP3
000024e4: RETURNDATACOPY
000024e5: PUSH1 0x1f
000024e7: RETURNDATASIZE
000024e8: SWAP1
000024e9: DUP2
000024ea: ADD
000024eb: PUSH1 0x1f
000024ed: NOT
000024ee: AND
000024ef: DUP3
000024f0: ADD
000024f1: PUSH1 0x40
000024f3: MSTORE
000024f4: PUSH3 0x0022c9
000024f8: SWAP2
000024f9: SWAP1
000024fa: DUP2
000024fb: ADD
000024fc: SWAP1
000024fd: PUSH3 0x0030e3
00002501: JUMP
00002502: JUMPDEST
00002503: PUSH1 0x00
00002505: PUSH3 0x00253a
00002509: PUSH3 0x002533
0000250d: PUSH3 0x002520
00002511: DUP6
00002512: PUSH8 0x0de0b6b3a7640000
0000251b: PUSH3 0x002823
0000251f: JUMP
00002520: JUMPDEST
00002521: PUSH3 0x00252d
00002525: DUP6
00002526: PUSH1 0x02
00002528: PUSH3 0x002863
0000252c: JUMP
0000252d: JUMPDEST
0000252e: PUSH3 0x0027d8
00002532: JUMP
00002533: JUMPDEST
00002534: DUP4
00002535: PUSH3 0x002863
00002539: JUMP
0000253a: JUMPDEST
0000253b: SWAP1
0000253c: POP
0000253d: JUMPDEST
0000253e: SWAP3
0000253f: SWAP2
00002540: POP
00002541: POP
00002542: JUMP
00002543: JUMPDEST
00002544: PUSH1 0x00
00002546: PUSH3 0x00253a
0000254a: PUSH3 0x00256e
0000254e: PUSH3 0x002559
00002552: DUP6
00002553: DUP6
00002554: PUSH3 0x002823
00002558: JUMP
00002559: JUMPDEST
0000255a: PUSH3 0x00252d
0000255e: PUSH8 0x0de0b6b3a7640000
00002567: PUSH1 0x02
00002569: PUSH3 0x002863
0000256d: JUMP
0000256e: JUMPDEST
0000256f: PUSH8 0x0de0b6b3a7640000
00002578: PUSH3 0x002863
0000257c: JUMP
0000257d: JUMPDEST
0000257e: PUSH3 0x002587
00002582: PUSH3 0x002a01
00002586: JUMP
00002587: JUMPDEST
00002588: ADDRESS
00002589: DUP2
0000258a: MSTORE
0000258b: PUSH1 0x20
0000258d: DUP3
0000258e: ADD
0000258f: MLOAD
00002590: PUSH3 0x00259b
00002594: SWAP1
00002595: DUP5
00002596: PUSH3 0x002896
0000259a: JUMP
0000259b: JUMPDEST
0000259c: PUSH1 0x01
0000259e: PUSH1 0x01
000025a0: PUSH1 0xa0
000025a2: SHL
000025a3: SUB
000025a4: AND
000025a5: PUSH1 0x20
000025a7: DUP3
000025a8: ADD
000025a9: MSTORE
000025aa: PUSH1 0x40
000025ac: DUP3
000025ad: ADD
000025ae: MLOAD
000025af: PUSH3 0x0025ba
000025b3: SWAP1
000025b4: DUP5
000025b5: PUSH3 0x002896
000025b9: JUMP
000025ba: JUMPDEST
000025bb: PUSH1 0x01
000025bd: PUSH1 0x01
000025bf: PUSH1 0xa0
000025c1: SHL
000025c2: SUB
000025c3: AND
000025c4: PUSH1 0x40
000025c6: DUP3
000025c7: ADD
000025c8: MSTORE
000025c9: PUSH1 0xa0
000025cb: DUP3
000025cc: ADD
000025cd: MLOAD
000025ce: PUSH3 0x0025d9
000025d2: SWAP1
000025d3: DUP5
000025d4: PUSH3 0x002896
000025d8: JUMP
000025d9: JUMPDEST
000025da: PUSH1 0x01
000025dc: PUSH1 0x01
000025de: PUSH1 0xa0
000025e0: SHL
000025e1: SUB
000025e2: AND
000025e3: PUSH1 0xa0
000025e5: DUP3
000025e6: ADD
000025e7: MSTORE
000025e8: PUSH1 0x60
000025ea: DUP3
000025eb: ADD
000025ec: MLOAD
000025ed: PUSH3 0x0025f8
000025f1: SWAP1
000025f2: DUP5
000025f3: PUSH3 0x002896
000025f7: JUMP
000025f8: JUMPDEST
000025f9: PUSH1 0x01
000025fb: PUSH1 0x01
000025fd: PUSH1 0xa0
000025ff: SHL
00002600: SUB
00002601: AND
00002602: PUSH1 0x60
00002604: DUP3
00002605: ADD
00002606: MSTORE
00002607: PUSH1 0x80
00002609: DUP3
0000260a: ADD
0000260b: MLOAD
0000260c: PUSH3 0x002617
00002610: SWAP1
00002611: DUP5
00002612: PUSH3 0x002896
00002616: JUMP
00002617: JUMPDEST
00002618: PUSH1 0x01
0000261a: PUSH1 0x01
0000261c: PUSH1 0xa0
0000261e: SHL
0000261f: SUB
00002620: SWAP1
00002621: DUP2
00002622: AND
00002623: PUSH1 0x80
00002625: DUP4
00002626: ADD
00002627: MSTORE
00002628: PUSH1 0x40
0000262a: DUP1
0000262b: DUP4
0000262c: ADD
0000262d: MLOAD
0000262e: SWAP1
0000262f: MLOAD
00002630: PUSH4 0x2d113407
00002635: PUSH1 0xe2
00002637: SHL
00002638: DUP2
00002639: MSTORE
0000263a: SWAP2
0000263b: AND
0000263c: SWAP1
0000263d: PUSH4 0xb444d01c
00002642: SWAP1
00002643: PUSH3 0x002652
00002647: SWAP1
00002648: DUP5
00002649: SWAP1
0000264a: PUSH1 0x04
0000264c: ADD
0000264d: PUSH3 0x003b8a
00002651: JUMP
00002652: JUMPDEST
00002653: PUSH1 0x00
00002655: PUSH1 0x40
00002657: MLOAD
00002658: DUP1
00002659: DUP4
0000265a: SUB
0000265b: DUP2
0000265c: PUSH1 0x00
0000265e: DUP8
0000265f: DUP1
00002660: EXTCODESIZE
00002661: ISZERO
00002662: DUP1
00002663: ISZERO
00002664: PUSH3 0x00266d
00002668: JUMPI
00002669: PUSH1 0x00
0000266b: DUP1
0000266c: REVERT
0000266d: JUMPDEST
0000266e: POP
0000266f: GAS
00002670: CALL
00002671: ISZERO
00002672: DUP1
00002673: ISZERO
00002674: PUSH3 0x002682
00002678: JUMPI
00002679: RETURNDATASIZE
0000267a: PUSH1 0x00
0000267c: DUP1
0000267d: RETURNDATACOPY
0000267e: RETURNDATASIZE
0000267f: PUSH1 0x00
00002681: REVERT
00002682: JUMPDEST
00002683: POP
00002684: POP
00002685: POP
00002686: POP
00002687: SWAP3
00002688: SWAP2
00002689: POP
0000268a: POP
0000268b: JUMP
0000268c: JUMPDEST
0000268d: PUSH1 0x20
0000268f: DUP2
00002690: ADD
00002691: MLOAD
00002692: PUSH1 0x00
00002694: SWAP1
00002695: PUSH3 0x00269e
00002699: PUSH3 0x0029b2
0000269d: JUMP
0000269e: JUMPDEST
0000269f: ADDRESS
000026a0: DUP2
000026a1: MSTORE
000026a2: PUSH1 0xc0
000026a4: DUP2
000026a5: ADD
000026a6: DUP5
000026a7: SWAP1
000026a8: MSTORE
000026a9: PUSH1 0x80
000026ab: DUP2
000026ac: ADD
000026ad: DUP6
000026ae: SWAP1
000026af: MSTORE
000026b0: PUSH1 0x60
000026b2: DUP2
000026b3: ADD
000026b4: DUP7
000026b5: SWAP1
000026b6: MSTORE
000026b7: PUSH1 0x00
000026b9: PUSH1 0x40
000026bb: DUP1
000026bc: DUP4
000026bd: ADD
000026be: SWAP2
000026bf: SWAP1
000026c0: SWAP2
000026c1: MSTORE
000026c2: PUSH1 0x20
000026c4: DUP3
000026c5: ADD
000026c6: DUP9
000026c7: SWAP1
000026c8: MSTORE
000026c9: MLOAD
000026ca: PUSH4 0x8ddf5ad7
000026cf: PUSH1 0xe0
000026d1: SHL
000026d2: DUP2
000026d3: MSTORE
000026d4: PUSH1 0x01
000026d6: PUSH1 0x01
000026d8: PUSH1 0xa0
000026da: SHL
000026db: SUB
000026dc: DUP4
000026dd: AND
000026de: SWAP1
000026df: PUSH4 0x8ddf5ad7
000026e4: SWAP1
000026e5: PUSH3 0x0026f4
000026e9: SWAP1
000026ea: DUP5
000026eb: SWAP1
000026ec: PUSH1 0x04
000026ee: ADD
000026ef: PUSH3 0x003b25
000026f3: JUMP
000026f4: JUMPDEST
000026f5: PUSH1 0x00
000026f7: PUSH1 0x40
000026f9: MLOAD
000026fa: DUP1
000026fb: DUP4
000026fc: SUB
000026fd: DUP2
000026fe: PUSH1 0x00
00002700: DUP8
00002701: DUP1
00002702: EXTCODESIZE
00002703: ISZERO
00002704: DUP1
00002705: ISZERO
00002706: PUSH3 0x00270f
0000270a: JUMPI
0000270b: PUSH1 0x00
0000270d: DUP1
0000270e: REVERT
0000270f: JUMPDEST
00002710: POP
00002711: GAS
00002712: CALL
00002713: ISZERO
00002714: DUP1
00002715: ISZERO
00002716: PUSH3 0x002724
0000271a: JUMPI
0000271b: RETURNDATASIZE
0000271c: PUSH1 0x00
0000271e: DUP1
0000271f: RETURNDATACOPY
00002720: RETURNDATASIZE
00002721: PUSH1 0x00
00002723: REVERT
00002724: JUMPDEST
00002725: POP
00002726: PUSH1 0x01
00002728: SWAP11
00002729: SWAP10
0000272a: POP
0000272b: POP
0000272c: POP
0000272d: POP
0000272e: POP
0000272f: POP
00002730: POP
00002731: POP
00002732: POP
00002733: POP
00002734: JUMP
00002735: JUMPDEST
00002736: PUSH1 0x00
00002738: DUP3
00002739: DUP3
0000273a: GT
0000273b: ISZERO
0000273c: PUSH3 0x00275a
00002740: JUMPI
00002741: PUSH1 0x40
00002743: MLOAD
00002744: PUSH3 0x461bcd
00002748: PUSH1 0xe5
0000274a: SHL
0000274b: DUP2
0000274c: MSTORE
0000274d: PUSH1 0x04
0000274f: ADD
00002750: PUSH3 0x00046c
00002754: SWAP1
00002755: PUSH3 0x0037ea
00002759: JUMP
0000275a: JUMPDEST
0000275b: POP
0000275c: SWAP1
0000275d: SUB
0000275e: SWAP1
0000275f: JUMP
00002760: JUMPDEST
00002761: PUSH1 0x00
00002763: PUSH3 0x00253a
00002767: DUP4
00002768: DUP4
00002769: PUSH3 0x002502
0000276d: JUMP
0000276e: JUMPDEST
0000276f: PUSH1 0x00
00002771: DUP1
00002772: PUSH3 0x00277d
00002776: DUP9
00002777: DUP6
00002778: PUSH3 0x0027d8
0000277c: JUMP
0000277d: JUMPDEST
0000277e: SWAP1
0000277f: POP
00002780: PUSH3 0x0027cc
00002784: PUSH3 0x00278f
00002788: DUP9
00002789: DUP9
0000278a: PUSH3 0x002543
0000278e: JUMP
0000278f: JUMPDEST
00002790: PUSH3 0x0027b4
00002794: PUSH3 0x0027ba
00002798: DUP5
00002799: PUSH3 0x0027b4
0000279d: PUSH3 0x0027a9
000027a1: DUP8
000027a2: DUP12
000027a3: DUP12
000027a4: PUSH3 0x002800
000027a8: JUMP
000027a9: JUMPDEST
000027aa: PUSH3 0x0027b4
000027ae: DUP13
000027af: PUSH3 0x002994
000027b3: JUMP
000027b4: JUMPDEST
000027b5: PUSH3 0x002543
000027b9: JUMP
000027ba: JUMPDEST
000027bb: PUSH3 0x0027c6
000027bf: DUP9
000027c0: DUP9
000027c1: PUSH3 0x002543
000027c5: JUMP
000027c6: JUMPDEST
000027c7: PUSH3 0x002735
000027cb: JUMP
000027cc: JUMPDEST
000027cd: SWAP9
000027ce: SWAP8
000027cf: POP
000027d0: POP
000027d1: POP
000027d2: POP
000027d3: POP
000027d4: POP
000027d5: POP
000027d6: POP
000027d7: JUMP
000027d8: JUMPDEST
000027d9: PUSH1 0x00
000027db: DUP3
000027dc: DUP3
000027dd: ADD
000027de: DUP4
000027df: DUP2
000027e0: LT
000027e1: ISZERO
000027e2: PUSH3 0x00253a
000027e6: JUMPI
000027e7: PUSH1 0x40
000027e9: MLOAD
000027ea: PUSH3 0x461bcd
000027ee: PUSH1 0xe5
000027f0: SHL
000027f1: DUP2
000027f2: MSTORE
000027f3: PUSH1 0x04
000027f5: ADD
000027f6: PUSH3 0x00046c
000027fa: SWAP1
000027fb: PUSH3 0x00363d
000027ff: JUMP
00002800: JUMPDEST
00002801: PUSH1 0x00
00002803: PUSH3 0x002819
00002807: PUSH3 0x002812
0000280b: DUP6
0000280c: DUP6
0000280d: PUSH3 0x002502
00002811: JUMP
00002812: JUMPDEST
00002813: DUP4
00002814: PUSH3 0x002543
00002818: JUMP
00002819: JUMPDEST
0000281a: SWAP1
0000281b: POP
0000281c: JUMPDEST
0000281d: SWAP4
0000281e: SWAP3
0000281f: POP
00002820: POP
00002821: POP
00002822: JUMP
00002823: JUMPDEST
00002824: PUSH1 0x00
00002826: DUP3
00002827: PUSH3 0x002834
0000282b: JUMPI
0000282c: POP
0000282d: PUSH1 0x00
0000282f: PUSH3 0x00253d
00002833: JUMP
00002834: JUMPDEST
00002835: DUP3
00002836: DUP3
00002837: MUL
00002838: DUP3
00002839: DUP5
0000283a: DUP3
0000283b: DUP2
0000283c: PUSH3 0x002842
00002840: JUMPI
00002841: INVALID
00002842: JUMPDEST
00002843: DIV
00002844: EQ
00002845: PUSH3 0x00253a
00002849: JUMPI
0000284a: PUSH1 0x40
0000284c: MLOAD
0000284d: PUSH3 0x461bcd
00002851: PUSH1 0xe5
00002853: SHL
00002854: DUP2
00002855: MSTORE
00002856: PUSH1 0x04
00002858: ADD
00002859: PUSH3 0x00046c
0000285d: SWAP1
0000285e: PUSH3 0x003984
00002862: JUMP
00002863: JUMPDEST
00002864: PUSH1 0x00
00002866: DUP1
00002867: DUP3
00002868: DUP5
00002869: DUP2
0000286a: PUSH3 0x002870
0000286e: JUMPI
0000286f: INVALID
00002870: JUMPDEST
00002871: DIV
00002872: SWAP1
00002873: POP
00002874: PUSH1 0x00
00002876: DUP2
00002877: GT
00002878: PUSH3 0x00253a
0000287c: JUMPI
0000287d: PUSH1 0x40
0000287f: MLOAD
00002880: PUSH3 0x461bcd
00002884: PUSH1 0xe5
00002886: SHL
00002887: DUP2
00002888: MSTORE
00002889: PUSH1 0x04
0000288b: ADD
0000288c: PUSH3 0x00046c
00002890: SWAP1
00002891: PUSH3 0x003858
00002895: JUMP
00002896: JUMPDEST
00002897: PUSH1 0x00
00002899: DUP1
0000289a: PUSH1 0x40
0000289c: MLOAD
0000289d: PUSH3 0x0028a7
000028a1: SWAP1
000028a2: PUSH3 0x002b05
000028a6: JUMP
000028a7: JUMPDEST
000028a8: PUSH1 0x40
000028aa: MLOAD
000028ab: DUP1
000028ac: SWAP2
000028ad: SUB
000028ae: SWAP1
000028af: PUSH1 0x00
000028b1: CREATE
000028b2: DUP1
000028b3: ISZERO
000028b4: DUP1
000028b5: ISZERO
000028b6: PUSH3 0x0028c4
000028ba: JUMPI
000028bb: RETURNDATASIZE
000028bc: PUSH1 0x00
000028be: DUP1
000028bf: RETURNDATACOPY
000028c0: RETURNDATASIZE
000028c1: PUSH1 0x00
000028c3: REVERT
000028c4: JUMPDEST
000028c5: POP
000028c6: PUSH1 0x40
000028c8: MLOAD
000028c9: PUSH4 0x6bc26a13
000028ce: PUSH1 0xe1
000028d0: SHL
000028d1: DUP2
000028d2: MSTORE
000028d3: SWAP1
000028d4: SWAP2
000028d5: POP
000028d6: PUSH1 0x01
000028d8: PUSH1 0x01
000028da: PUSH1 0xa0
000028dc: SHL
000028dd: SUB
000028de: DUP3
000028df: AND
000028e0: SWAP1
000028e1: PUSH4 0xd784d426
000028e6: SWAP1
000028e7: PUSH3 0x0028f6
000028eb: SWAP1
000028ec: DUP8
000028ed: SWAP1
000028ee: PUSH1 0x04
000028f0: ADD
000028f1: PUSH3 0x00342c
000028f5: JUMP
000028f6: JUMPDEST
000028f7: PUSH1 0x00
000028f9: PUSH1 0x40
000028fb: MLOAD
000028fc: DUP1
000028fd: DUP4
000028fe: SUB
000028ff: DUP2
00002900: PUSH1 0x00
00002902: DUP8
00002903: DUP1
00002904: EXTCODESIZE
00002905: ISZERO
00002906: DUP1
00002907: ISZERO
00002908: PUSH3 0x002911
0000290c: JUMPI
0000290d: PUSH1 0x00
0000290f: DUP1
00002910: REVERT
00002911: JUMPDEST
00002912: POP
00002913: GAS
00002914: CALL
00002915: ISZERO
00002916: DUP1
00002917: ISZERO
00002918: PUSH3 0x002926
0000291c: JUMPI
0000291d: RETURNDATASIZE
0000291e: PUSH1 0x00
00002920: DUP1
00002921: RETURNDATACOPY
00002922: RETURNDATASIZE
00002923: PUSH1 0x00
00002925: REVERT
00002926: JUMPDEST
00002927: POP
00002928: POP
00002929: PUSH1 0x40
0000292b: MLOAD
0000292c: PUSH4 0x32abba47
00002931: PUSH1 0xe2
00002933: SHL
00002934: DUP2
00002935: MSTORE
00002936: PUSH1 0x01
00002938: PUSH1 0x01
0000293a: PUSH1 0xa0
0000293c: SHL
0000293d: SUB
0000293e: DUP5
0000293f: AND
00002940: SWAP3
00002941: POP
00002942: PUSH4 0xcaaee91c
00002947: SWAP2
00002948: POP
00002949: PUSH3 0x002958
0000294d: SWAP1
0000294e: DUP7
0000294f: SWAP1
00002950: PUSH1 0x04
00002952: ADD
00002953: PUSH3 0x00342c
00002957: JUMP
00002958: JUMPDEST
00002959: PUSH1 0x00
0000295b: PUSH1 0x40
0000295d: MLOAD
0000295e: DUP1
0000295f: DUP4
00002960: SUB
00002961: DUP2
00002962: PUSH1 0x00
00002964: DUP8
00002965: DUP1
00002966: EXTCODESIZE
00002967: ISZERO
00002968: DUP1
00002969: ISZERO
0000296a: PUSH3 0x002973
0000296e: JUMPI
0000296f: PUSH1 0x00
00002971: DUP1
00002972: REVERT
00002973: JUMPDEST
00002974: POP
00002975: GAS
00002976: CALL
00002977: ISZERO
00002978: DUP1
00002979: ISZERO
0000297a: PUSH3 0x002988
0000297e: JUMPI
0000297f: RETURNDATASIZE
00002980: PUSH1 0x00
00002982: DUP1
00002983: RETURNDATACOPY
00002984: RETURNDATASIZE
00002985: PUSH1 0x00
00002987: REVERT
00002988: JUMPDEST
00002989: POP
0000298a: SWAP3
0000298b: SWAP7
0000298c: SWAP6
0000298d: POP
0000298e: POP
0000298f: POP
00002990: POP
00002991: POP
00002992: POP
00002993: JUMP
00002994: JUMPDEST
00002995: PUSH1 0x00
00002997: PUSH3 0x0029aa
0000299b: DUP3
0000299c: PUSH8 0x0de0b6b3a7640000
000029a5: PUSH3 0x0027d8
000029a9: JUMP
000029aa: JUMPDEST
000029ab: SWAP1
000029ac: POP
000029ad: JUMPDEST
000029ae: SWAP2
000029af: SWAP1
000029b0: POP
000029b1: JUMP
000029b2: JUMPDEST
000029b3: PUSH1 0x40
000029b5: MLOAD
000029b6: DUP1
000029b7: PUSH1 0xe0
000029b9: ADD
000029ba: PUSH1 0x40
000029bc: MSTORE
000029bd: DUP1
000029be: PUSH1 0x00
000029c0: PUSH1 0x01
000029c2: PUSH1 0x01
000029c4: PUSH1 0xa0
000029c6: SHL
000029c7: SUB
000029c8: AND
000029c9: DUP2
000029ca: MSTORE
000029cb: PUSH1 0x20
000029cd: ADD
000029ce: PUSH1 0x60
000029d0: DUP2
000029d1: MSTORE
000029d2: PUSH1 0x20
000029d4: ADD
000029d5: PUSH1 0x00
000029d7: ISZERO
000029d8: ISZERO
000029d9: DUP2
000029da: MSTORE
000029db: PUSH1 0x20
000029dd: ADD
000029de: PUSH1 0x60
000029e0: DUP2
000029e1: MSTORE
000029e2: PUSH1 0x20
000029e4: ADD
000029e5: PUSH1 0x00
000029e7: DUP2
000029e8: MSTORE
000029e9: PUSH1 0x20
000029eb: ADD
000029ec: PUSH1 0x00
000029ee: DUP2
000029ef: MSTORE
000029f0: PUSH1 0x20
000029f2: ADD
000029f3: PUSH3 0x0029fc
000029f7: PUSH3 0x002a01
000029fb: JUMP
000029fc: JUMPDEST
000029fd: SWAP1
000029fe: MSTORE
000029ff: SWAP1
00002a00: JUMP
00002a01: JUMPDEST
00002a02: PUSH1 0x40
00002a04: DUP1
00002a05: MLOAD
00002a06: PUSH1 0xc0
00002a08: DUP2
00002a09: ADD
00002a0a: DUP3
00002a0b: MSTORE
00002a0c: PUSH1 0x00
00002a0e: DUP1
00002a0f: DUP3
00002a10: MSTORE
00002a11: PUSH1 0x20
00002a13: DUP3
00002a14: ADD
00002a15: DUP2
00002a16: SWAP1
00002a17: MSTORE
00002a18: SWAP2
00002a19: DUP2
00002a1a: ADD
00002a1b: DUP3
00002a1c: SWAP1
00002a1d: MSTORE
00002a1e: PUSH1 0x60
00002a20: DUP2
00002a21: ADD
00002a22: DUP3
00002a23: SWAP1
00002a24: MSTORE
00002a25: PUSH1 0x80
00002a27: DUP2
00002a28: ADD
00002a29: DUP3
00002a2a: SWAP1
00002a2b: MSTORE
00002a2c: PUSH1 0xa0
00002a2e: DUP2
00002a2f: ADD
00002a30: SWAP2
00002a31: SWAP1
00002a32: SWAP2
00002a33: MSTORE
00002a34: SWAP1
00002a35: JUMP
00002a36: JUMPDEST
00002a37: PUSH1 0x40
00002a39: MLOAD
00002a3a: DUP1
00002a3b: PUSH2 0x0160
00002a3e: ADD
00002a3f: PUSH1 0x40
00002a41: MSTORE
00002a42: DUP1
00002a43: PUSH1 0x00
00002a45: PUSH1 0x01
00002a47: PUSH1 0x01
00002a49: PUSH1 0xa0
00002a4b: SHL
00002a4c: SUB
00002a4d: AND
00002a4e: DUP2
00002a4f: MSTORE
00002a50: PUSH1 0x20
00002a52: ADD
00002a53: PUSH1 0x60
00002a55: DUP2
00002a56: MSTORE
00002a57: PUSH1 0x20
00002a59: ADD
00002a5a: PUSH1 0x60
00002a5c: DUP2
00002a5d: MSTORE
00002a5e: PUSH1 0x20
00002a60: ADD
00002a61: PUSH1 0x00
00002a63: DUP2
00002a64: MSTORE
00002a65: PUSH1 0x20
00002a67: ADD
00002a68: PUSH1 0x00
00002a6a: DUP2
00002a6b: MSTORE
00002a6c: PUSH1 0x20
00002a6e: ADD
00002a6f: PUSH1 0x00
00002a71: DUP2
00002a72: MSTORE
00002a73: PUSH1 0x20
00002a75: ADD
00002a76: PUSH1 0x00
00002a78: DUP2
00002a79: MSTORE
00002a7a: PUSH1 0x20
00002a7c: ADD
00002a7d: PUSH1 0x00
00002a7f: DUP2
00002a80: MSTORE
00002a81: PUSH1 0x20
00002a83: ADD
00002a84: PUSH1 0x00
00002a86: DUP2
00002a87: MSTORE
00002a88: PUSH1 0x20
00002a8a: ADD
00002a8b: PUSH1 0x00
00002a8d: DUP2
00002a8e: MSTORE
00002a8f: PUSH1 0x20
00002a91: ADD
00002a92: PUSH3 0x0029fc
00002a96: PUSH3 0x002a01
00002a9a: JUMP
00002a9b: JUMPDEST
00002a9c: DUP3
00002a9d: DUP1
00002a9e: SLOAD
00002a9f: DUP3
00002aa0: DUP3
00002aa1: SSTORE
00002aa2: SWAP1
00002aa3: PUSH1 0x00
00002aa5: MSTORE
00002aa6: PUSH1 0x20
00002aa8: PUSH1 0x00
00002aaa: KECCAK256
00002aab: SWAP1
00002aac: DUP2
00002aad: ADD
00002aae: SWAP3
00002aaf: DUP3
00002ab0: ISZERO
00002ab1: PUSH3 0x002af3
00002ab5: JUMPI
00002ab6: SWAP2
00002ab7: PUSH1 0x20
00002ab9: MUL
00002aba: DUP3
00002abb: ADD
00002abc: JUMPDEST
00002abd: DUP3
00002abe: DUP2
00002abf: GT
00002ac0: ISZERO
00002ac1: PUSH3 0x002af3
00002ac5: JUMPI
00002ac6: DUP3
00002ac7: MLOAD
00002ac8: DUP3
00002ac9: SLOAD
00002aca: PUSH1 0x01
00002acc: PUSH1 0x01
00002ace: PUSH1 0xa0
00002ad0: SHL
00002ad1: SUB
00002ad2: NOT
00002ad3: AND
00002ad4: PUSH1 0x01
00002ad6: PUSH1 0x01
00002ad8: PUSH1 0xa0
00002ada: SHL
00002adb: SUB
00002adc: SWAP1
00002add: SWAP2
00002ade: AND
00002adf: OR
00002ae0: DUP3
00002ae1: SSTORE
00002ae2: PUSH1 0x20
00002ae4: SWAP1
00002ae5: SWAP3
00002ae6: ADD
00002ae7: SWAP2
00002ae8: PUSH1 0x01
00002aea: SWAP1
00002aeb: SWAP2
00002aec: ADD
00002aed: SWAP1
00002aee: PUSH3 0x002abc
00002af2: JUMP
00002af3: JUMPDEST
00002af4: POP
00002af5: PUSH3 0x002b01
00002af9: SWAP3
00002afa: SWAP2
00002afb: POP
00002afc: PUSH3 0x002b13
00002b00: JUMP
00002b01: JUMPDEST
00002b02: POP
00002b03: SWAP1
00002b04: JUMP
00002b05: JUMPDEST
00002b06: PUSH2 0x0616
00002b09: DUP1
00002b0a: PUSH3 0x003c7a
00002b0e: DUP4
00002b0f: CODECOPY
00002b10: ADD
00002b11: SWAP1
00002b12: JUMP
00002b13: JUMPDEST
00002b14: JUMPDEST
00002b15: DUP1
00002b16: DUP3
00002b17: GT
00002b18: ISZERO
00002b19: PUSH3 0x002b01
00002b1d: JUMPI
00002b1e: DUP1
00002b1f: SLOAD
00002b20: PUSH1 0x01
00002b22: PUSH1 0x01
00002b24: PUSH1 0xa0
00002b26: SHL
00002b27: SUB
00002b28: NOT
00002b29: AND
00002b2a: DUP2
00002b2b: SSTORE
00002b2c: PUSH1 0x01
00002b2e: ADD
00002b2f: PUSH3 0x002b14
00002b33: JUMP
00002b34: JUMPDEST
00002b35: DUP1
00002b36: MLOAD
00002b37: PUSH3 0x0029ad
00002b3b: DUP2
00002b3c: PUSH3 0x003c60
00002b40: JUMP
00002b41: JUMPDEST
00002b42: PUSH1 0x00
00002b44: DUP3
00002b45: PUSH1 0x1f
00002b47: DUP4
00002b48: ADD
00002b49: SLT
00002b4a: PUSH3 0x002b52
00002b4e: JUMPI
00002b4f: DUP1
00002b50: DUP2
00002b51: REVERT
00002b52: JUMPDEST
00002b53: DUP2
00002b54: CALLDATALOAD
00002b55: PUSH3 0x002b69
00002b59: PUSH3 0x002b63
00002b5d: DUP3
00002b5e: PUSH3 0x003beb
00002b62: JUMP
00002b63: JUMPDEST
00002b64: PUSH3 0x003bc6
00002b68: JUMP
00002b69: JUMPDEST
00002b6a: DUP2
00002b6b: DUP2
00002b6c: MSTORE
00002b6d: SWAP2
00002b6e: POP
00002b6f: PUSH1 0x20
00002b71: DUP1
00002b72: DUP4
00002b73: ADD
00002b74: SWAP1
00002b75: DUP5
00002b76: DUP2
00002b77: ADD
00002b78: DUP2
00002b79: DUP5
00002b7a: MUL
00002b7b: DUP7
00002b7c: ADD
00002b7d: DUP3
00002b7e: ADD
00002b7f: DUP8
00002b80: LT
00002b81: ISZERO
00002b82: PUSH3 0x002b8b
00002b86: JUMPI
00002b87: PUSH1 0x00
00002b89: DUP1
00002b8a: REVERT
00002b8b: JUMPDEST
00002b8c: PUSH1 0x00
00002b8e: JUMPDEST
00002b8f: DUP5
00002b90: DUP2
00002b91: LT
00002b92: ISZERO
00002b93: PUSH3 0x002bb7
00002b97: JUMPI
00002b98: DUP2
00002b99: CALLDATALOAD
00002b9a: PUSH3 0x002ba4
00002b9e: DUP2
00002b9f: PUSH3 0x003c60
00002ba3: JUMP
00002ba4: JUMPDEST
00002ba5: DUP5
00002ba6: MSTORE
00002ba7: SWAP3
00002ba8: DUP3
00002ba9: ADD
00002baa: SWAP3
00002bab: SWAP1
00002bac: DUP3
00002bad: ADD
00002bae: SWAP1
00002baf: PUSH1 0x01
00002bb1: ADD
00002bb2: PUSH3 0x002b8e
00002bb6: JUMP
00002bb7: JUMPDEST
00002bb8: POP
00002bb9: POP
00002bba: POP
00002bbb: POP
00002bbc: POP
00002bbd: SWAP3
00002bbe: SWAP2
00002bbf: POP
00002bc0: POP
00002bc1: JUMP
00002bc2: JUMPDEST
00002bc3: PUSH1 0x00
00002bc5: DUP3
00002bc6: PUSH1 0x1f
00002bc8: DUP4
00002bc9: ADD
00002bca: SLT
00002bcb: PUSH3 0x002bd3
00002bcf: JUMPI
00002bd0: DUP1
00002bd1: DUP2
00002bd2: REVERT
00002bd3: JUMPDEST
00002bd4: DUP2
00002bd5: MLOAD
00002bd6: PUSH3 0x002be4
00002bda: PUSH3 0x002b63
00002bde: DUP3
00002bdf: PUSH3 0x003beb
00002be3: JUMP
00002be4: JUMPDEST
00002be5: DUP2
00002be6: DUP2
00002be7: MSTORE
00002be8: SWAP2
00002be9: POP
00002bea: PUSH1 0x20
00002bec: DUP1
00002bed: DUP4
00002bee: ADD
00002bef: SWAP1
00002bf0: DUP5
00002bf1: DUP2
00002bf2: ADD
00002bf3: DUP2
00002bf4: DUP5
00002bf5: MUL
00002bf6: DUP7
00002bf7: ADD
00002bf8: DUP3
00002bf9: ADD
00002bfa: DUP8
00002bfb: LT
00002bfc: ISZERO
00002bfd: PUSH3 0x002c06
00002c01: JUMPI
00002c02: PUSH1 0x00
00002c04: DUP1
00002c05: REVERT
00002c06: JUMPDEST
00002c07: PUSH1 0x00
00002c09: JUMPDEST
00002c0a: DUP5
00002c0b: DUP2
00002c0c: LT
00002c0d: ISZERO
00002c0e: PUSH3 0x002bb7
00002c12: JUMPI
00002c13: DUP2
00002c14: MLOAD
00002c15: PUSH3 0x002c1f
00002c19: DUP2
00002c1a: PUSH3 0x003c60
00002c1e: JUMP
00002c1f: JUMPDEST
00002c20: DUP5
00002c21: MSTORE
00002c22: SWAP3
00002c23: DUP3
00002c24: ADD
00002c25: SWAP3
00002c26: SWAP1
00002c27: DUP3
00002c28: ADD
00002c29: SWAP1
00002c2a: PUSH1 0x01
00002c2c: ADD
00002c2d: PUSH3 0x002c09
00002c31: JUMP
00002c32: JUMPDEST
00002c33: DUP1
00002c34: MLOAD
00002c35: DUP1
00002c36: ISZERO
00002c37: ISZERO
00002c38: DUP2
00002c39: EQ
00002c3a: PUSH3 0x0029ad
00002c3e: JUMPI
00002c3f: PUSH1 0x00
00002c41: DUP1
00002c42: REVERT
00002c43: JUMPDEST
00002c44: PUSH1 0x00
00002c46: DUP3
00002c47: PUSH1 0x1f
00002c49: DUP4
00002c4a: ADD
00002c4b: SLT
00002c4c: PUSH3 0x002c54
00002c50: JUMPI
00002c51: DUP1
00002c52: DUP2
00002c53: REVERT
00002c54: JUMPDEST
00002c55: DUP2
00002c56: CALLDATALOAD
00002c57: PUSH3 0x002c65
00002c5b: PUSH3 0x002b63
00002c5f: DUP3
00002c60: PUSH3 0x003c0a
00002c64: JUMP
00002c65: JUMPDEST
00002c66: SWAP2
00002c67: POP
00002c68: DUP1
00002c69: DUP3
00002c6a: MSTORE
00002c6b: DUP4
00002c6c: PUSH1 0x20
00002c6e: DUP3
00002c6f: DUP6
00002c70: ADD
00002c71: ADD
00002c72: GT
00002c73: ISZERO
00002c74: PUSH3 0x002c7d
00002c78: JUMPI
00002c79: PUSH1 0x00
00002c7b: DUP1
00002c7c: REVERT
00002c7d: JUMPDEST
00002c7e: DUP1
00002c7f: PUSH1 0x20
00002c81: DUP5
00002c82: ADD
00002c83: PUSH1 0x20
00002c85: DUP5
00002c86: ADD
00002c87: CALLDATACOPY
00002c88: PUSH1 0x00
00002c8a: SWAP1
00002c8b: DUP3
00002c8c: ADD
00002c8d: PUSH1 0x20
00002c8f: ADD
00002c90: MSTORE
00002c91: SWAP3
00002c92: SWAP2
00002c93: POP
00002c94: POP
00002c95: JUMP
00002c96: JUMPDEST
00002c97: PUSH1 0x00
00002c99: DUP3
00002c9a: PUSH1 0x1f
00002c9c: DUP4
00002c9d: ADD
00002c9e: SLT
00002c9f: PUSH3 0x002ca7
00002ca3: JUMPI
00002ca4: DUP1
00002ca5: DUP2
00002ca6: REVERT
00002ca7: JUMPDEST
00002ca8: DUP2
00002ca9: MLOAD
00002caa: PUSH3 0x002cb8
00002cae: PUSH3 0x002b63
00002cb2: DUP3
00002cb3: PUSH3 0x003c0a
00002cb7: JUMP
00002cb8: JUMPDEST
00002cb9: SWAP2
00002cba: POP
00002cbb: DUP1
00002cbc: DUP3
00002cbd: MSTORE
00002cbe: DUP4
00002cbf: PUSH1 0x20
00002cc1: DUP3
00002cc2: DUP6
00002cc3: ADD
00002cc4: ADD
00002cc5: GT
00002cc6: ISZERO
00002cc7: PUSH3 0x002cd0
00002ccb: JUMPI
00002ccc: PUSH1 0x00
00002cce: DUP1
00002ccf: REVERT
00002cd0: JUMPDEST
00002cd1: PUSH3 0x002ce3
00002cd5: DUP2
00002cd6: PUSH1 0x20
00002cd8: DUP5
00002cd9: ADD
00002cda: PUSH1 0x20
00002cdc: DUP7
00002cdd: ADD
00002cde: PUSH3 0x003c2d
00002ce2: JUMP
00002ce3: JUMPDEST
00002ce4: POP
00002ce5: SWAP3
00002ce6: SWAP2
00002ce7: POP
00002ce8: POP
00002ce9: JUMP
00002cea: JUMPDEST
00002ceb: PUSH1 0x00
00002ced: PUSH1 0xc0
00002cef: DUP3
00002cf0: DUP5
00002cf1: SUB
00002cf2: SLT
00002cf3: ISZERO
00002cf4: PUSH3 0x002cfc
00002cf8: JUMPI
00002cf9: DUP1
00002cfa: DUP2
00002cfb: REVERT
00002cfc: JUMPDEST
00002cfd: PUSH1 0x40
00002cff: MLOAD
00002d00: PUSH1 0xc0
00002d02: DUP2
00002d03: ADD
00002d04: DUP2
00002d05: DUP2
00002d06: LT
00002d07: PUSH8 0xffffffffffffffff
00002d10: DUP3
00002d11: GT
00002d12: OR
00002d13: ISZERO
00002d14: PUSH3 0x002d1a
00002d18: JUMPI
00002d19: INVALID
00002d1a: JUMPDEST
00002d1b: DUP1
00002d1c: PUSH1 0x40
00002d1e: MSTORE
00002d1f: POP
00002d20: DUP1
00002d21: SWAP2
00002d22: POP
00002d23: DUP3
00002d24: MLOAD
00002d25: PUSH3 0x002d2f
00002d29: DUP2
00002d2a: PUSH3 0x003c60
00002d2e: JUMP
00002d2f: JUMPDEST
00002d30: DUP2
00002d31: MSTORE
00002d32: PUSH1 0x20
00002d34: DUP4
00002d35: ADD
00002d36: MLOAD
00002d37: PUSH3 0x002d41
00002d3b: DUP2
00002d3c: PUSH3 0x003c60
00002d40: JUMP
00002d41: JUMPDEST
00002d42: PUSH1 0x20
00002d44: DUP3
00002d45: ADD
00002d46: MSTORE
00002d47: PUSH3 0x002d54
00002d4b: PUSH1 0x40
00002d4d: DUP5
00002d4e: ADD
00002d4f: PUSH3 0x002b34
00002d53: JUMP
00002d54: JUMPDEST
00002d55: PUSH1 0x40
00002d57: DUP3
00002d58: ADD
00002d59: MSTORE
00002d5a: PUSH3 0x002d67
00002d5e: PUSH1 0x60
00002d60: DUP5
00002d61: ADD
00002d62: PUSH3 0x002b34
00002d66: JUMP
00002d67: JUMPDEST
00002d68: PUSH1 0x60
00002d6a: DUP3
00002d6b: ADD
00002d6c: MSTORE
00002d6d: PUSH3 0x002d7a
00002d71: PUSH1 0x80
00002d73: DUP5
00002d74: ADD
00002d75: PUSH3 0x002b34
00002d79: JUMP
00002d7a: JUMPDEST
00002d7b: PUSH1 0x80
00002d7d: DUP3
00002d7e: ADD
00002d7f: MSTORE
00002d80: PUSH3 0x002d8d
00002d84: PUSH1 0xa0
00002d86: DUP5
00002d87: ADD
00002d88: PUSH3 0x002b34
00002d8c: JUMP
00002d8d: JUMPDEST
00002d8e: PUSH1 0xa0
00002d90: DUP3
00002d91: ADD
00002d92: MSTORE
00002d93: POP
00002d94: SWAP3
00002d95: SWAP2
00002d96: POP
00002d97: POP
00002d98: JUMP
00002d99: JUMPDEST
00002d9a: PUSH1 0x00
00002d9c: PUSH1 0x20
00002d9e: DUP3
00002d9f: DUP5
00002da0: SUB
00002da1: SLT
00002da2: ISZERO
00002da3: PUSH3 0x002dab
00002da7: JUMPI
00002da8: DUP1
00002da9: DUP2
00002daa: REVERT
00002dab: JUMPDEST
00002dac: DUP2
00002dad: CALLDATALOAD
00002dae: PUSH3 0x00253a
00002db2: DUP2
00002db3: PUSH3 0x003c60
00002db7: JUMP
00002db8: JUMPDEST
00002db9: PUSH1 0x00
00002dbb: PUSH1 0x20
00002dbd: DUP3
00002dbe: DUP5
00002dbf: SUB
00002dc0: SLT
00002dc1: ISZERO
00002dc2: PUSH3 0x002dca
00002dc6: JUMPI
00002dc7: DUP1
00002dc8: DUP2
00002dc9: REVERT
00002dca: JUMPDEST
00002dcb: DUP2
00002dcc: MLOAD
00002dcd: PUSH3 0x00253a
00002dd1: DUP2
00002dd2: PUSH3 0x003c60
00002dd6: JUMP
00002dd7: JUMPDEST
00002dd8: PUSH1 0x00
00002dda: DUP1
00002ddb: PUSH1 0x00
00002ddd: DUP1
00002dde: PUSH1 0x00
00002de0: PUSH1 0xa0
00002de2: DUP7
00002de3: DUP9
00002de4: SUB
00002de5: SLT
00002de6: ISZERO
00002de7: PUSH3 0x002def
00002deb: JUMPI
00002dec: DUP1
00002ded: DUP2
00002dee: REVERT
00002def: JUMPDEST
00002df0: DUP6
00002df1: CALLDATALOAD
00002df2: PUSH3 0x002dfc
00002df6: DUP2
00002df7: PUSH3 0x003c60
00002dfb: JUMP
00002dfc: JUMPDEST
00002dfd: SWAP5
00002dfe: POP
00002dff: PUSH1 0x20
00002e01: DUP7
00002e02: ADD
00002e03: CALLDATALOAD
00002e04: PUSH3 0x002e0e
00002e08: DUP2
00002e09: PUSH3 0x003c60
00002e0d: JUMP
00002e0e: JUMPDEST
00002e0f: SWAP4
00002e10: POP
00002e11: PUSH1 0x40
00002e13: DUP7
00002e14: ADD
00002e15: CALLDATALOAD
00002e16: PUSH8 0xffffffffffffffff
00002e1f: DUP1
00002e20: DUP3
00002e21: GT
00002e22: ISZERO
00002e23: PUSH3 0x002e2b
00002e27: JUMPI
00002e28: DUP3
00002e29: DUP4
00002e2a: REVERT
00002e2b: JUMPDEST
00002e2c: PUSH3 0x002e39
00002e30: DUP10
00002e31: DUP4
00002e32: DUP11
00002e33: ADD
00002e34: PUSH3 0x002b41
00002e38: JUMP
00002e39: JUMPDEST
00002e3a: SWAP5
00002e3b: POP
00002e3c: PUSH1 0x60
00002e3e: DUP9
00002e3f: ADD
00002e40: CALLDATALOAD
00002e41: SWAP2
00002e42: POP
00002e43: DUP1
00002e44: DUP3
00002e45: GT
00002e46: ISZERO
00002e47: PUSH3 0x002e4f
00002e4b: JUMPI
00002e4c: DUP3
00002e4d: DUP4
00002e4e: REVERT
00002e4f: JUMPDEST
00002e50: POP
00002e51: PUSH3 0x002e5e
00002e55: DUP9
00002e56: DUP3
00002e57: DUP10
00002e58: ADD
00002e59: PUSH3 0x002c43
00002e5d: JUMP
00002e5e: JUMPDEST
00002e5f: SWAP6
00002e60: SWAP9
00002e61: SWAP5
00002e62: SWAP8
00002e63: POP
00002e64: SWAP3
00002e65: SWAP6
00002e66: PUSH1 0x80
00002e68: ADD
00002e69: CALLDATALOAD
00002e6a: SWAP4
00002e6b: SWAP3
00002e6c: POP
00002e6d: POP
00002e6e: POP
00002e6f: JUMP
00002e70: JUMPDEST
00002e71: PUSH1 0x00
00002e73: DUP1
00002e74: PUSH1 0x40
00002e76: DUP4
00002e77: DUP6
00002e78: SUB
00002e79: SLT
00002e7a: ISZERO
00002e7b: PUSH3 0x002e83
00002e7f: JUMPI
00002e80: DUP2
00002e81: DUP3
00002e82: REVERT
00002e83: JUMPDEST
00002e84: DUP3
00002e85: CALLDATALOAD
00002e86: PUSH8 0xffffffffffffffff
00002e8f: DUP1
00002e90: DUP3
00002e91: GT
00002e92: ISZERO
00002e93: PUSH3 0x002e9b
00002e97: JUMPI
00002e98: DUP4
00002e99: DUP5
00002e9a: REVERT
00002e9b: JUMPDEST
00002e9c: PUSH3 0x002ea9
00002ea0: DUP7
00002ea1: DUP4
00002ea2: DUP8
00002ea3: ADD
00002ea4: PUSH3 0x002b41
00002ea8: JUMP
00002ea9: JUMPDEST
00002eaa: SWAP4
00002eab: POP
00002eac: PUSH1 0x20
00002eae: SWAP2
00002eaf: POP
00002eb0: DUP2
00002eb1: DUP6
00002eb2: ADD
00002eb3: CALLDATALOAD
00002eb4: DUP2
00002eb5: DUP2
00002eb6: GT
00002eb7: ISZERO
00002eb8: PUSH3 0x002ec0
00002ebc: JUMPI
00002ebd: DUP4
00002ebe: DUP5
00002ebf: REVERT
00002ec0: JUMPDEST
00002ec1: DUP6
00002ec2: ADD
00002ec3: SWAP1
00002ec4: POP
00002ec5: PUSH1 0x1f
00002ec7: DUP2
00002ec8: ADD
00002ec9: DUP7
00002eca: SGT
00002ecb: PUSH3 0x002ed3
00002ecf: JUMPI
00002ed0: DUP3
00002ed1: DUP4
00002ed2: REVERT
00002ed3: JUMPDEST
00002ed4: DUP1
00002ed5: CALLDATALOAD
00002ed6: PUSH3 0x002ee4
00002eda: PUSH3 0x002b63
00002ede: DUP3
00002edf: PUSH3 0x003beb
00002ee3: JUMP
00002ee4: JUMPDEST
00002ee5: DUP2
00002ee6: DUP2
00002ee7: MSTORE
00002ee8: DUP4
00002ee9: DUP2
00002eea: ADD
00002eeb: SWAP1
00002eec: DUP4
00002eed: DUP6
00002eee: ADD
00002eef: DUP6
00002ef0: DUP5
00002ef1: MUL
00002ef2: DUP6
00002ef3: ADD
00002ef4: DUP7
00002ef5: ADD
00002ef6: DUP11
00002ef7: LT
00002ef8: ISZERO
00002ef9: PUSH3 0x002f01
00002efd: JUMPI
00002efe: DUP7
00002eff: DUP8
00002f00: REVERT
00002f01: JUMPDEST
00002f02: DUP7
00002f03: SWAP5
00002f04: POP
00002f05: JUMPDEST
00002f06: DUP4
00002f07: DUP6
00002f08: LT
00002f09: ISZERO
00002f0a: PUSH3 0x002f25
00002f0e: JUMPI
00002f0f: DUP1
00002f10: CALLDATALOAD
00002f11: DUP4
00002f12: MSTORE
00002f13: PUSH1 0x01
00002f15: SWAP5
00002f16: SWAP1
00002f17: SWAP5
00002f18: ADD
00002f19: SWAP4
00002f1a: SWAP2
00002f1b: DUP6
00002f1c: ADD
00002f1d: SWAP2
00002f1e: DUP6
00002f1f: ADD
00002f20: PUSH3 0x002f05
00002f24: JUMP
00002f25: JUMPDEST
00002f26: POP
00002f27: DUP1
00002f28: SWAP6
00002f29: POP
00002f2a: POP
00002f2b: POP
00002f2c: POP
00002f2d: POP
00002f2e: POP
00002f2f: SWAP3
00002f30: POP
00002f31: SWAP3
00002f32: SWAP1
00002f33: POP
00002f34: JUMP
00002f35: JUMPDEST
00002f36: PUSH1 0x00
00002f38: PUSH1 0x20
00002f3a: DUP3
00002f3b: DUP5
00002f3c: SUB
00002f3d: SLT
00002f3e: ISZERO
00002f3f: PUSH3 0x002f47
00002f43: JUMPI
00002f44: DUP1
00002f45: DUP2
00002f46: REVERT
00002f47: JUMPDEST
00002f48: PUSH3 0x00253a
00002f4c: DUP3
00002f4d: PUSH3 0x002c32
00002f51: JUMP
00002f52: JUMPDEST
00002f53: PUSH1 0x00
00002f55: DUP1
00002f56: PUSH1 0x00
00002f58: DUP1
00002f59: PUSH1 0x00
00002f5b: DUP1
00002f5c: PUSH1 0xc0
00002f5e: DUP8
00002f5f: DUP10
00002f60: SUB
00002f61: SLT
00002f62: ISZERO
00002f63: PUSH3 0x002f6b
00002f67: JUMPI
00002f68: DUP4
00002f69: DUP5
00002f6a: REVERT
00002f6b: JUMPDEST
00002f6c: DUP7
00002f6d: CALLDATALOAD
00002f6e: PUSH8 0xffffffffffffffff
00002f77: DUP1
00002f78: DUP3
00002f79: GT
00002f7a: ISZERO
00002f7b: PUSH3 0x002f83
00002f7f: JUMPI
00002f80: DUP6
00002f81: DUP7
00002f82: REVERT
00002f83: JUMPDEST
00002f84: PUSH3 0x002f91
00002f88: DUP11
00002f89: DUP4
00002f8a: DUP12
00002f8b: ADD
00002f8c: PUSH3 0x002c43
00002f90: JUMP
00002f91: JUMPDEST
00002f92: SWAP8
00002f93: POP
00002f94: PUSH1 0x20
00002f96: DUP10
00002f97: ADD
00002f98: CALLDATALOAD
00002f99: SWAP2
00002f9a: POP
00002f9b: DUP1
00002f9c: DUP3
00002f9d: GT
00002f9e: ISZERO
00002f9f: PUSH3 0x002fa7
00002fa3: JUMPI
00002fa4: DUP6
00002fa5: DUP7
00002fa6: REVERT
00002fa7: JUMPDEST
00002fa8: POP
00002fa9: PUSH3 0x002fb6
00002fad: DUP10
00002fae: DUP3
00002faf: DUP11
00002fb0: ADD
00002fb1: PUSH3 0x002c43
00002fb5: JUMP
00002fb6: JUMPDEST
00002fb7: SWAP7
00002fb8: SWAP10
00002fb9: SWAP7
00002fba: SWAP9
00002fbb: POP
00002fbc: POP
00002fbd: POP
00002fbe: POP
00002fbf: PUSH1 0x40
00002fc1: DUP6
00002fc2: ADD
00002fc3: CALLDATALOAD
00002fc4: SWAP5
00002fc5: PUSH1 0x60
00002fc7: DUP2
00002fc8: ADD
00002fc9: CALLDATALOAD
00002fca: SWAP5
00002fcb: PUSH1 0x80
00002fcd: DUP3
00002fce: ADD
00002fcf: CALLDATALOAD
00002fd0: SWAP5
00002fd1: POP
00002fd2: PUSH1 0xa0
00002fd4: SWAP1
00002fd5: SWAP2
00002fd6: ADD
00002fd7: CALLDATALOAD
00002fd8: SWAP3
00002fd9: POP
00002fda: SWAP1
00002fdb: POP
00002fdc: JUMP
00002fdd: JUMPDEST
00002fde: PUSH1 0x00
00002fe0: PUSH1 0x20
00002fe2: DUP3
00002fe3: DUP5
00002fe4: SUB
00002fe5: SLT
00002fe6: ISZERO
00002fe7: PUSH3 0x002fef
00002feb: JUMPI
00002fec: DUP1
00002fed: DUP2
00002fee: REVERT
00002fef: JUMPDEST
00002ff0: DUP2
00002ff1: MLOAD
00002ff2: PUSH8 0xffffffffffffffff
00002ffb: DUP1
00002ffc: DUP3
00002ffd: GT
00002ffe: ISZERO
00002fff: PUSH3 0x003007
00003003: JUMPI
00003004: DUP3
00003005: DUP4
00003006: REVERT
00003007: JUMPDEST
00003008: SWAP1
00003009: DUP4
0000300a: ADD
0000300b: SWAP1
0000300c: PUSH2 0x0180
0000300f: DUP3
00003010: DUP7
00003011: SUB
00003012: SLT
00003013: ISZERO
00003014: PUSH3 0x00301c
00003018: JUMPI
00003019: DUP3
0000301a: DUP4
0000301b: REVERT
0000301c: JUMPDEST
0000301d: PUSH3 0x003028
00003021: PUSH1 0xe0
00003023: PUSH3 0x003bc6
00003027: JUMP
00003028: JUMPDEST
00003029: PUSH3 0x003033
0000302d: DUP4
0000302e: PUSH3 0x002b34
00003032: JUMP
00003033: JUMPDEST
00003034: DUP2
00003035: MSTORE
00003036: PUSH1 0x20
00003038: DUP4
00003039: ADD
0000303a: MLOAD
0000303b: DUP3
0000303c: DUP2
0000303d: GT
0000303e: ISZERO
0000303f: PUSH3 0x003047
00003043: JUMPI
00003044: DUP5
00003045: DUP6
00003046: REVERT
00003047: JUMPDEST
00003048: PUSH3 0x003055
0000304c: DUP8
0000304d: DUP3
0000304e: DUP7
0000304f: ADD
00003050: PUSH3 0x002bc2
00003054: JUMP
00003055: JUMPDEST
00003056: PUSH1 0x20
00003058: DUP4
00003059: ADD
0000305a: MSTORE
0000305b: POP
0000305c: PUSH3 0x003069
00003060: PUSH1 0x40
00003062: DUP5
00003063: ADD
00003064: PUSH3 0x002c32
00003068: JUMP
00003069: JUMPDEST
0000306a: PUSH1 0x40
0000306c: DUP3
0000306d: ADD
0000306e: MSTORE
0000306f: PUSH1 0x60
00003071: DUP4
00003072: ADD
00003073: MLOAD
00003074: DUP3
00003075: DUP2
00003076: GT
00003077: ISZERO
00003078: PUSH3 0x003080
0000307c: JUMPI
0000307d: DUP5
0000307e: DUP6
0000307f: REVERT
00003080: JUMPDEST
00003081: PUSH3 0x00308e
00003085: DUP8
00003086: DUP3
00003087: DUP7
00003088: ADD
00003089: PUSH3 0x002c96
0000308d: JUMP
0000308e: JUMPDEST
0000308f: PUSH1 0x60
00003091: DUP4
00003092: ADD
00003093: MSTORE
00003094: POP
00003095: PUSH1 0x80
00003097: DUP4
00003098: ADD
00003099: MLOAD
0000309a: PUSH1 0x80
0000309c: DUP3
0000309d: ADD
0000309e: MSTORE
0000309f: PUSH1 0xa0
000030a1: DUP4
000030a2: ADD
000030a3: MLOAD
000030a4: PUSH1 0xa0
000030a6: DUP3
000030a7: ADD
000030a8: MSTORE
000030a9: PUSH3 0x0030b7
000030ad: DUP7
000030ae: PUSH1 0xc0
000030b0: DUP6
000030b1: ADD
000030b2: PUSH3 0x002cea
000030b6: JUMP
000030b7: JUMPDEST
000030b8: PUSH1 0xc0
000030ba: DUP3
000030bb: ADD
000030bc: MSTORE
000030bd: SWAP6
000030be: SWAP5
000030bf: POP
000030c0: POP
000030c1: POP
000030c2: POP
000030c3: POP
000030c4: JUMP
000030c5: JUMPDEST
000030c6: PUSH1 0x00
000030c8: PUSH1 0xc0
000030ca: DUP3
000030cb: DUP5
000030cc: SUB
000030cd: SLT
000030ce: ISZERO
000030cf: PUSH3 0x0030d7
000030d3: JUMPI
000030d4: DUP1
000030d5: DUP2
000030d6: REVERT
000030d7: JUMPDEST
000030d8: PUSH3 0x00253a
000030dc: DUP4
000030dd: DUP4
000030de: PUSH3 0x002cea
000030e2: JUMP
000030e3: JUMPDEST
000030e4: PUSH1 0x00
000030e6: PUSH1 0x20
000030e8: DUP3
000030e9: DUP5
000030ea: SUB
000030eb: SLT
000030ec: ISZERO
000030ed: PUSH3 0x0030f5
000030f1: JUMPI
000030f2: DUP1
000030f3: DUP2
000030f4: REVERT
000030f5: JUMPDEST
000030f6: DUP2
000030f7: MLOAD
000030f8: PUSH8 0xffffffffffffffff
00003101: DUP1
00003102: DUP3
00003103: GT
00003104: ISZERO
00003105: PUSH3 0x00310d
00003109: JUMPI
0000310a: DUP3
0000310b: DUP4
0000310c: REVERT
0000310d: JUMPDEST
0000310e: SWAP1
0000310f: DUP4
00003110: ADD
00003111: SWAP1
00003112: PUSH2 0x0200
00003115: DUP3
00003116: DUP7
00003117: SUB
00003118: SLT
00003119: ISZERO
0000311a: PUSH3 0x003122
0000311e: JUMPI
0000311f: DUP3
00003120: DUP4
00003121: REVERT
00003122: JUMPDEST
00003123: PUSH3 0x00312f
00003127: PUSH2 0x0160
0000312a: PUSH3 0x003bc6
0000312e: JUMP
0000312f: JUMPDEST
00003130: PUSH3 0x00313a
00003134: DUP4
00003135: PUSH3 0x002b34
00003139: JUMP
0000313a: JUMPDEST
0000313b: DUP2
0000313c: MSTORE
0000313d: PUSH1 0x20
0000313f: DUP4
00003140: ADD
00003141: MLOAD
00003142: DUP3
00003143: DUP2
00003144: GT
00003145: ISZERO
00003146: PUSH3 0x00314e
0000314a: JUMPI
0000314b: DUP5
0000314c: DUP6
0000314d: REVERT
0000314e: JUMPDEST
0000314f: PUSH3 0x00315c
00003153: DUP8
00003154: DUP3
00003155: DUP7
00003156: ADD
00003157: PUSH3 0x002c96
0000315b: JUMP
0000315c: JUMPDEST
0000315d: PUSH1 0x20
0000315f: DUP4
00003160: ADD
00003161: MSTORE
00003162: POP
00003163: PUSH1 0x40
00003165: DUP4
00003166: ADD
00003167: MLOAD
00003168: DUP3
00003169: DUP2
0000316a: GT
0000316b: ISZERO
0000316c: PUSH3 0x003174
00003170: JUMPI
00003171: DUP5
00003172: DUP6
00003173: REVERT
00003174: JUMPDEST
00003175: PUSH3 0x003182
00003179: DUP8
0000317a: DUP3
0000317b: DUP7
0000317c: ADD
0000317d: PUSH3 0x002c96
00003181: JUMP
00003182: JUMPDEST
00003183: PUSH1 0x40
00003185: DUP4
00003186: ADD
00003187: MSTORE
00003188: POP
00003189: PUSH1 0x60
0000318b: DUP4
0000318c: ADD
0000318d: MLOAD
0000318e: PUSH1 0x60
00003190: DUP3
00003191: ADD
00003192: MSTORE
00003193: PUSH1 0x80
00003195: DUP4
00003196: ADD
00003197: MLOAD
00003198: PUSH1 0x80
0000319a: DUP3
0000319b: ADD
0000319c: MSTORE
0000319d: PUSH1 0xa0
0000319f: DUP4
000031a0: ADD
000031a1: MLOAD
000031a2: PUSH1 0xa0
000031a4: DUP3
000031a5: ADD
000031a6: MSTORE
000031a7: PUSH1 0xc0
000031a9: DUP4
000031aa: ADD
000031ab: MLOAD
000031ac: PUSH1 0xc0
000031ae: DUP3
000031af: ADD
000031b0: MSTORE
000031b1: PUSH1 0xe0
000031b3: DUP4
000031b4: ADD
000031b5: MLOAD
000031b6: PUSH1 0xe0
000031b8: DUP3
000031b9: ADD
000031ba: MSTORE
000031bb: PUSH2 0x0100
000031be: SWAP2
000031bf: POP
000031c0: DUP2
000031c1: DUP4
000031c2: ADD
000031c3: MLOAD
000031c4: DUP3
000031c5: DUP3
000031c6: ADD
000031c7: MSTORE
000031c8: PUSH2 0x0120
000031cb: SWAP2
000031cc: POP
000031cd: DUP2
000031ce: DUP4
000031cf: ADD
000031d0: MLOAD
000031d1: DUP3
000031d2: DUP3
000031d3: ADD
000031d4: MSTORE
000031d5: PUSH2 0x0140
000031d8: SWAP2
000031d9: POP
000031da: PUSH3 0x0031e7
000031de: DUP7
000031df: DUP4
000031e0: DUP6
000031e1: ADD
000031e2: PUSH3 0x002cea
000031e6: JUMP
000031e7: JUMPDEST
000031e8: SWAP2
000031e9: DUP2
000031ea: ADD
000031eb: SWAP2
000031ec: SWAP1
000031ed: SWAP2
000031ee: MSTORE
000031ef: SWAP5
000031f0: SWAP4
000031f1: POP
000031f2: POP
000031f3: POP
000031f4: POP
000031f5: JUMP
000031f6: JUMPDEST
000031f7: PUSH1 0x00
000031f9: PUSH1 0x20
000031fb: DUP3
000031fc: DUP5
000031fd: SUB
000031fe: SLT
000031ff: ISZERO
00003200: PUSH3 0x003208
00003204: JUMPI
00003205: DUP1
00003206: DUP2
00003207: REVERT
00003208: JUMPDEST
00003209: POP
0000320a: CALLDATALOAD
0000320b: SWAP2
0000320c: SWAP1
0000320d: POP
0000320e: JUMP
0000320f: JUMPDEST
00003210: PUSH1 0x00
00003212: PUSH1 0x20
00003214: DUP3
00003215: DUP5
00003216: SUB
00003217: SLT
00003218: ISZERO
00003219: PUSH3 0x003221
0000321d: JUMPI
0000321e: DUP1
0000321f: DUP2
00003220: REVERT
00003221: JUMPDEST
00003222: POP
00003223: MLOAD
00003224: SWAP2
00003225: SWAP1
00003226: POP
00003227: JUMP
00003228: JUMPDEST
00003229: PUSH1 0x01
0000322b: PUSH1 0x01
0000322d: PUSH1 0xa0
0000322f: SHL
00003230: SUB
00003231: AND
00003232: SWAP1
00003233: MSTORE
00003234: JUMP
00003235: JUMPDEST
00003236: ISZERO
00003237: ISZERO
00003238: SWAP1
00003239: MSTORE
0000323a: JUMP
0000323b: JUMPDEST
0000323c: PUSH1 0x00
0000323e: DUP2
0000323f: MLOAD
00003240: DUP1
00003241: DUP5
00003242: MSTORE
00003243: PUSH3 0x003255
00003247: DUP2
00003248: PUSH1 0x20
0000324a: DUP7
0000324b: ADD
0000324c: PUSH1 0x20
0000324e: DUP7
0000324f: ADD
00003250: PUSH3 0x003c2d
00003254: JUMP
00003255: JUMPDEST
00003256: PUSH1 0x1f
00003258: ADD
00003259: PUSH1 0x1f
0000325b: NOT
0000325c: AND
0000325d: SWAP3
0000325e: SWAP1
0000325f: SWAP3
00003260: ADD
00003261: PUSH1 0x20
00003263: ADD
00003264: SWAP3
00003265: SWAP2
00003266: POP
00003267: POP
00003268: JUMP
00003269: JUMPDEST
0000326a: DUP1
0000326b: MLOAD
0000326c: PUSH1 0x01
0000326e: PUSH1 0x01
00003270: PUSH1 0xa0
00003272: SHL
00003273: SUB
00003274: SWAP1
00003275: DUP2
00003276: AND
00003277: DUP4
00003278: MSTORE
00003279: PUSH1 0x20
0000327b: DUP1
0000327c: DUP4
0000327d: ADD
0000327e: MLOAD
0000327f: PUSH2 0x0180
00003282: DUP3
00003283: DUP7
00003284: ADD
00003285: DUP2
00003286: SWAP1
00003287: MSTORE
00003288: DUP2
00003289: MLOAD
0000328a: SWAP1
0000328b: DUP7
0000328c: ADD
0000328d: DUP2
0000328e: SWAP1
0000328f: MSTORE
00003290: PUSH1 0x00
00003292: SWAP4
00003293: PUSH2 0x01a0
00003296: DUP8
00003297: ADD
00003298: SWAP4
00003299: SWAP3
0000329a: DUP4
0000329b: ADD
0000329c: SWAP3
0000329d: SWAP1
0000329e: SWAP2
0000329f: DUP6
000032a0: SWAP1
000032a1: JUMPDEST
000032a2: DUP1
000032a3: DUP3
000032a4: LT
000032a5: ISZERO
000032a6: PUSH3 0x0032c5
000032aa: JUMPI
000032ab: DUP5
000032ac: MLOAD
000032ad: DUP5
000032ae: AND
000032af: DUP7
000032b0: MSTORE
000032b1: SWAP5
000032b2: DUP3
000032b3: ADD
000032b4: SWAP5
000032b5: SWAP4
000032b6: DUP3
000032b7: ADD
000032b8: SWAP4
000032b9: PUSH1 0x01
000032bb: SWAP2
000032bc: SWAP1
000032bd: SWAP2
000032be: ADD
000032bf: SWAP1
000032c0: PUSH3 0x0032a1
000032c4: JUMP
000032c5: JUMPDEST
000032c6: POP
000032c7: POP
000032c8: POP
000032c9: POP
000032ca: POP
000032cb: PUSH1 0x40
000032cd: DUP4
000032ce: ADD
000032cf: MLOAD
000032d0: PUSH3 0x0032de
000032d4: PUSH1 0x40
000032d6: DUP7
000032d7: ADD
000032d8: DUP3
000032d9: PUSH3 0x003235
000032dd: JUMP
000032de: JUMPDEST
000032df: POP
000032e0: PUSH1 0x60
000032e2: DUP4
000032e3: ADD
000032e4: MLOAD
000032e5: DUP5
000032e6: DUP3
000032e7: SUB
000032e8: PUSH1 0x60
000032ea: DUP7
000032eb: ADD
000032ec: MSTORE
000032ed: PUSH3 0x0032f8
000032f1: DUP3
000032f2: DUP3
000032f3: PUSH3 0x00323b
000032f7: JUMP
000032f8: JUMPDEST
000032f9: SWAP2
000032fa: POP
000032fb: POP
000032fc: PUSH1 0x80
000032fe: DUP4
000032ff: ADD
00003300: MLOAD
00003301: PUSH1 0x80
00003303: DUP6
00003304: ADD
00003305: MSTORE
00003306: PUSH1 0xa0
00003308: DUP4
00003309: ADD
0000330a: MLOAD
0000330b: PUSH1 0xa0
0000330d: DUP6
0000330e: ADD
0000330f: MSTORE
00003310: PUSH1 0xc0
00003312: DUP4
00003313: ADD
00003314: MLOAD
00003315: PUSH3 0x003323
00003319: PUSH1 0xc0
0000331b: DUP7
0000331c: ADD
0000331d: DUP3
0000331e: PUSH3 0x00332b
00003322: JUMP
00003323: JUMPDEST
00003324: POP
00003325: SWAP4
00003326: SWAP3
00003327: POP
00003328: POP
00003329: POP
0000332a: JUMP
0000332b: JUMPDEST
0000332c: DUP1
0000332d: MLOAD
0000332e: PUSH1 0x01
00003330: PUSH1 0x01
00003332: PUSH1 0xa0
00003334: SHL
00003335: SUB
00003336: SWAP1
00003337: DUP2
00003338: AND
00003339: DUP4
0000333a: MSTORE
0000333b: PUSH1 0x20
0000333d: DUP1
0000333e: DUP4
0000333f: ADD
00003340: MLOAD
00003341: DUP3
00003342: AND
00003343: SWAP1
00003344: DUP5
00003345: ADD
00003346: MSTORE
00003347: PUSH1 0x40
00003349: DUP1
0000334a: DUP4
0000334b: ADD
0000334c: MLOAD
0000334d: DUP3
0000334e: AND
0000334f: SWAP1
00003350: DUP5
00003351: ADD
00003352: MSTORE
00003353: PUSH1 0x60
00003355: DUP1
00003356: DUP4
00003357: ADD
00003358: MLOAD
00003359: DUP3
0000335a: AND
0000335b: SWAP1
0000335c: DUP5
0000335d: ADD
0000335e: MSTORE
0000335f: PUSH1 0x80
00003361: DUP1
00003362: DUP4
00003363: ADD
00003364: MLOAD
00003365: DUP3
00003366: AND
00003367: SWAP1
00003368: DUP5
00003369: ADD
0000336a: MSTORE
0000336b: PUSH1 0xa0
0000336d: SWAP2
0000336e: DUP3
0000336f: ADD
00003370: MLOAD
00003371: AND
00003372: SWAP2
00003373: ADD
00003374: MSTORE
00003375: JUMP
00003376: JUMPDEST
00003377: PUSH1 0x00
00003379: PUSH2 0x0200
0000337c: PUSH3 0x003388
00003380: DUP5
00003381: DUP5
00003382: MLOAD
00003383: PUSH3 0x003228
00003387: JUMP
00003388: JUMPDEST
00003389: PUSH1 0x20
0000338b: DUP4
0000338c: ADD
0000338d: MLOAD
0000338e: DUP2
0000338f: PUSH1 0x20
00003391: DUP7
00003392: ADD
00003393: MSTORE
00003394: PUSH3 0x0033a1
00003398: DUP3
00003399: DUP7
0000339a: ADD
0000339b: DUP3
0000339c: PUSH3 0x00323b
000033a0: JUMP
000033a1: JUMPDEST
000033a2: SWAP2
000033a3: POP
000033a4: POP
000033a5: PUSH1 0x40
000033a7: DUP4
000033a8: ADD
000033a9: MLOAD
000033aa: DUP5
000033ab: DUP3
000033ac: SUB
000033ad: PUSH1 0x40
000033af: DUP7
000033b0: ADD
000033b1: MSTORE
000033b2: PUSH3 0x0033bd
000033b6: DUP3
000033b7: DUP3
000033b8: PUSH3 0x00323b
000033bc: JUMP
000033bd: JUMPDEST
000033be: SWAP2
000033bf: POP
000033c0: POP
000033c1: PUSH1 0x60
000033c3: DUP4
000033c4: ADD
000033c5: MLOAD
000033c6: PUSH1 0x60
000033c8: DUP6
000033c9: ADD
000033ca: MSTORE
000033cb: PUSH1 0x80
000033cd: DUP4
000033ce: ADD
000033cf: MLOAD
000033d0: PUSH1 0x80
000033d2: DUP6
000033d3: ADD
000033d4: MSTORE
000033d5: PUSH1 0xa0
000033d7: DUP4
000033d8: ADD
000033d9: MLOAD
000033da: PUSH1 0xa0
000033dc: DUP6
000033dd: ADD
000033de: MSTORE
000033df: PUSH1 0xc0
000033e1: DUP4
000033e2: ADD
000033e3: MLOAD
000033e4: PUSH1 0xc0
000033e6: DUP6
000033e7: ADD
000033e8: MSTORE
000033e9: PUSH1 0xe0
000033eb: DUP4
000033ec: ADD
000033ed: MLOAD
000033ee: PUSH1 0xe0
000033f0: DUP6
000033f1: ADD
000033f2: MSTORE
000033f3: PUSH2 0x0100
000033f6: DUP1
000033f7: DUP5
000033f8: ADD
000033f9: MLOAD
000033fa: DUP2
000033fb: DUP7
000033fc: ADD
000033fd: MSTORE
000033fe: POP
000033ff: PUSH2 0x0120
00003402: DUP1
00003403: DUP5
00003404: ADD
00003405: MLOAD
00003406: DUP2
00003407: DUP7
00003408: ADD
00003409: MSTORE
0000340a: POP
0000340b: PUSH2 0x0140
0000340e: DUP1
0000340f: DUP5
00003410: ADD
00003411: MLOAD
00003412: PUSH3 0x00341f
00003416: DUP3
00003417: DUP8
00003418: ADD
00003419: DUP3
0000341a: PUSH3 0x00332b
0000341e: JUMP
0000341f: JUMPDEST
00003420: POP
00003421: SWAP1
00003422: SWAP5
00003423: SWAP4
00003424: POP
00003425: POP
00003426: POP
00003427: POP
00003428: JUMP
00003429: JUMPDEST
0000342a: SWAP1
0000342b: JUMP
0000342c: JUMPDEST
0000342d: PUSH1 0x01
0000342f: PUSH1 0x01
00003431: PUSH1 0xa0
00003433: SHL
00003434: SUB
00003435: SWAP2
00003436: SWAP1
00003437: SWAP2
00003438: AND
00003439: DUP2
0000343a: MSTORE
0000343b: PUSH1 0x20
0000343d: ADD
0000343e: SWAP1
0000343f: JUMP
00003440: JUMPDEST
00003441: PUSH1 0x01
00003443: PUSH1 0x01
00003445: PUSH1 0xa0
00003447: SHL
00003448: SUB
00003449: DUP4
0000344a: AND
0000344b: DUP2
0000344c: MSTORE
0000344d: PUSH1 0xe0
0000344f: DUP2
00003450: ADD
00003451: PUSH3 0x00281c
00003455: PUSH1 0x20
00003457: DUP4
00003458: ADD
00003459: DUP5
0000345a: PUSH3 0x00332b
0000345e: JUMP
0000345f: JUMPDEST
00003460: PUSH1 0x01
00003462: PUSH1 0x01
00003464: PUSH1 0xa0
00003466: SHL
00003467: SUB
00003468: SWAP3
00003469: SWAP1
0000346a: SWAP3
0000346b: AND
0000346c: DUP3
0000346d: MSTORE
0000346e: PUSH1 0x20
00003470: DUP3
00003471: ADD
00003472: MSTORE
00003473: PUSH1 0x40
00003475: ADD
00003476: SWAP1
00003477: JUMP
00003478: JUMPDEST
00003479: PUSH1 0x01
0000347b: PUSH1 0x01
0000347d: PUSH1 0xa0
0000347f: SHL
00003480: SUB
00003481: SWAP3
00003482: DUP4
00003483: AND
00003484: DUP2
00003485: MSTORE
00003486: SWAP2
00003487: AND
00003488: PUSH1 0x20
0000348a: DUP3
0000348b: ADD
0000348c: MSTORE
0000348d: PUSH1 0x40
0000348f: ADD
00003490: SWAP1
00003491: JUMP
00003492: JUMPDEST
00003493: PUSH1 0x01
00003495: PUSH1 0x01
00003497: PUSH1 0xa0
00003499: SHL
0000349a: SUB
0000349b: DUP6
0000349c: DUP2
0000349d: AND
0000349e: DUP3
0000349f: MSTORE
000034a0: DUP5
000034a1: AND
000034a2: PUSH1 0x20
000034a4: DUP3
000034a5: ADD
000034a6: MSTORE
000034a7: PUSH1 0x00
000034a9: PUSH2 0x0120
000034ac: PUSH3 0x0034ba
000034b0: PUSH1 0x40
000034b2: DUP5
000034b3: ADD
000034b4: DUP7
000034b5: PUSH3 0x00332b
000034b9: JUMP
000034ba: JUMPDEST
000034bb: DUP1
000034bc: PUSH2 0x0100
000034bf: DUP5
000034c0: ADD
000034c1: MSTORE
000034c2: PUSH3 0x0034cf
000034c6: DUP2
000034c7: DUP5
000034c8: ADD
000034c9: DUP6
000034ca: PUSH3 0x003376
000034ce: JUMP
000034cf: JUMPDEST
000034d0: SWAP8
000034d1: SWAP7
000034d2: POP
000034d3: POP
000034d4: POP
000034d5: POP
000034d6: POP
000034d7: POP
000034d8: POP
000034d9: JUMP
000034da: JUMPDEST
000034db: SWAP1
000034dc: ISZERO
000034dd: ISZERO
000034de: DUP2
000034df: MSTORE
000034e0: PUSH1 0x20
000034e2: ADD
000034e3: SWAP1
000034e4: JUMP
000034e5: JUMPDEST
000034e6: PUSH1 0x20
000034e8: DUP1
000034e9: DUP3
000034ea: MSTORE
000034eb: PUSH1 0x24
000034ed: SWAP1
000034ee: DUP3
000034ef: ADD
000034f0: MSTORE
000034f1: PUSH32 0x456c617374696344414f3a2044414f206d757374206e6f742062652073756d6d
00003512: PUSH1 0x40
00003514: DUP3
00003515: ADD
00003516: MSTORE
00003517: PUSH4 0x1bdb9959
0000351c: PUSH1 0xe2
0000351e: SHL
0000351f: PUSH1 0x60
00003521: DUP3
00003522: ADD
00003523: MSTORE
00003524: PUSH1 0x80
00003526: ADD
00003527: SWAP1
00003528: JUMP
00003529: JUMPDEST
0000352a: PUSH1 0x20
0000352c: DUP1
0000352d: DUP3
0000352e: MSTORE
0000352f: PUSH1 0x34
00003531: SWAP1
00003532: DUP3
00003533: ADD
00003534: MSTORE
00003535: PUSH32 0x456c617374696344414f3a2053756d6d6f6e657220616464726573732063616e
00003556: PUSH1 0x40
00003558: DUP3
00003559: ADD
0000355a: MSTORE
0000355b: PUSH20 0x206e6f74206265207a65726f2061646472657373
00003570: PUSH1 0x60
00003572: SHL
00003573: PUSH1 0x60
00003575: DUP3
00003576: ADD
00003577: MSTORE
00003578: PUSH1 0x80
0000357a: ADD
0000357b: SWAP1
0000357c: JUMP
0000357d: JUMPDEST
0000357e: PUSH1 0x20
00003580: DUP1
00003581: DUP3
00003582: MSTORE
00003583: PUSH1 0x1a
00003585: SWAP1
00003586: DUP3
00003587: ADD
00003588: MSTORE
00003589: PUSH32 0x456c617374696344414f3a204f6e6c792073756d6d6f6e657273000000000000
000035aa: PUSH1 0x40
000035ac: DUP3
000035ad: ADD
000035ae: MSTORE
000035af: PUSH1 0x60
000035b1: ADD
000035b2: SWAP1
000035b3: JUMP
000035b4: JUMPDEST
000035b5: PUSH1 0x20
000035b7: DUP1
000035b8: DUP3
000035b9: MSTORE
000035ba: PUSH1 0x1e
000035bc: SWAP1
000035bd: DUP3
000035be: ADD
000035bf: MSTORE
000035c0: PUSH32 0x456c617374696344414f3a20546869732044414f20697320636c6f7365640000
000035e1: PUSH1 0x40
000035e3: DUP3
000035e4: ADD
000035e5: MSTORE
000035e6: PUSH1 0x60
000035e8: ADD
000035e9: SWAP1
000035ea: JUMP
000035eb: JUMPDEST
000035ec: PUSH1 0x20
000035ee: DUP1
000035ef: DUP3
000035f0: MSTORE
000035f1: PUSH1 0x32
000035f3: SWAP1
000035f4: DUP3
000035f5: ADD
000035f6: MSTORE
000035f7: PUSH32 0x456c617374696344414f3a20536574204d696e746572206661696c6564206475
00003618: PUSH1 0x40
0000361a: DUP3
0000361b: ADD
0000361c: MSTORE
0000361d: PUSH18 0x3934b7339039b2ba21b7b73a3937b63632b9
00003630: PUSH1 0x71
00003632: SHL
00003633: PUSH1 0x60
00003635: DUP3
00003636: ADD
00003637: MSTORE
00003638: PUSH1 0x80
0000363a: ADD
0000363b: SWAP1
0000363c: JUMP
0000363d: JUMPDEST
0000363e: PUSH1 0x20
00003640: DUP1
00003641: DUP3
00003642: MSTORE
00003643: PUSH1 0x1b
00003645: SWAP1
00003646: DUP3
00003647: ADD
00003648: MSTORE
00003649: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000
0000366a: PUSH1 0x40
0000366c: DUP3
0000366d: ADD
0000366e: MSTORE
0000366f: PUSH1 0x60
00003671: ADD
00003672: SWAP1
00003673: JUMP
00003674: JUMPDEST
00003675: PUSH1 0x20
00003677: DUP1
00003678: DUP3
00003679: MSTORE
0000367a: PUSH1 0x19
0000367c: SWAP1
0000367d: DUP3
0000367e: ADD
0000367f: MSTORE
00003680: PUSH32 0x456c617374696344414f3a204f6e6c79206465706c6f79657200000000000000
000036a1: PUSH1 0x40
000036a3: DUP3
000036a4: ADD
000036a5: MSTORE
000036a6: PUSH1 0x60
000036a8: ADD
000036a9: SWAP1
000036aa: JUMP
000036ab: JUMPDEST
000036ac: PUSH1 0x20
000036ae: DUP1
000036af: DUP3
000036b0: MSTORE
000036b1: PUSH1 0x32
000036b3: SWAP1
000036b4: DUP3
000036b5: ADD
000036b6: MSTORE
000036b7: PUSH32 0x456c617374696344414f3a20416e20616d6f756e742069732072657175697265
000036d8: PUSH1 0x40
000036da: DUP3
000036db: ADD
000036dc: MSTORE
000036dd: PUSH18 0x6420666f7220656163682061646472657373
000036f0: PUSH1 0x70
000036f2: SHL
000036f3: PUSH1 0x60
000036f5: DUP3
000036f6: ADD
000036f7: MSTORE
000036f8: PUSH1 0x80
000036fa: ADD
000036fb: SWAP1
000036fc: JUMP
000036fd: JUMPDEST
000036fe: PUSH1 0x20
00003700: DUP1
00003701: DUP3
00003702: MSTORE
00003703: PUSH1 0x1b
00003705: SWAP1
00003706: DUP3
00003707: ADD
00003708: MSTORE
00003709: PUSH32 0x456c617374696344414f3a204f6e6c7920636f6e74726f6c6c65720000000000
0000372a: PUSH1 0x40
0000372c: DUP3
0000372d: ADD
0000372e: MSTORE
0000372f: PUSH1 0x60
00003731: ADD
00003732: SWAP1
00003733: JUMP
00003734: JUMPDEST
00003735: PUSH1 0x20
00003737: DUP1
00003738: DUP3
00003739: MSTORE
0000373a: DUP2
0000373b: DUP2
0000373c: ADD
0000373d: MSTORE
0000373e: PUSH32 0x456c617374696344414f3a2044414f206d7573742062652073756d6d6f6e6564
0000375f: PUSH1 0x40
00003761: DUP3
00003762: ADD
00003763: MSTORE
00003764: PUSH1 0x60
00003766: ADD
00003767: SWAP1
00003768: JUMP
00003769: JUMPDEST
0000376a: PUSH1 0x20
0000376c: DUP1
0000376d: DUP3
0000376e: MSTORE
0000376f: PUSH1 0x1d
00003771: SWAP1
00003772: DUP3
00003773: ADD
00003774: MSTORE
00003775: PUSH32 0x456c617374696344414f3a205472616e73616374696f6e4661696c6564000000
00003796: PUSH1 0x40
00003798: DUP3
00003799: ADD
0000379a: MSTORE
0000379b: PUSH1 0x60
0000379d: ADD
0000379e: SWAP1
0000379f: JUMP
000037a0: JUMPDEST
000037a1: PUSH1 0x20
000037a3: DUP1
000037a4: DUP3
000037a5: MSTORE
000037a6: PUSH1 0x2a
000037a8: SWAP1
000037a9: DUP3
000037aa: ADD
000037ab: MSTORE
000037ac: PUSH32 0x456c617374696344414f3a204d696e7420536861726573204661696c65642064
000037cd: PUSH1 0x40
000037cf: DUP3
000037d0: ADD
000037d1: MSTORE
000037d2: PUSH10 0x3ab934b733902537b4b7
000037dd: PUSH1 0xb1
000037df: SHL
000037e0: PUSH1 0x60
000037e2: DUP3
000037e3: ADD
000037e4: MSTORE
000037e5: PUSH1 0x80
000037e7: ADD
000037e8: SWAP1
000037e9: JUMP
000037ea: JUMPDEST
000037eb: PUSH1 0x20
000037ed: DUP1
000037ee: DUP3
000037ef: MSTORE
000037f0: PUSH1 0x1e
000037f2: SWAP1
000037f3: DUP3
000037f4: ADD
000037f5: MSTORE
000037f6: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000
00003817: PUSH1 0x40
00003819: DUP3
0000381a: ADD
0000381b: MSTORE
0000381c: PUSH1 0x60
0000381e: ADD
0000381f: SWAP1
00003820: JUMP
00003821: JUMPDEST
00003822: PUSH1 0x20
00003824: DUP1
00003825: DUP3
00003826: MSTORE
00003827: PUSH1 0x1f
00003829: SWAP1
0000382a: DUP3
0000382b: ADD
0000382c: MSTORE
0000382d: PUSH32 0x456c617374696344414f3a20416c726561647920696e697469616c697a656400
0000384e: PUSH1 0x40
00003850: DUP3
00003851: ADD
00003852: MSTORE
00003853: PUSH1 0x60
00003855: ADD
00003856: SWAP1
00003857: JUMP
00003858: JUMPDEST
00003859: PUSH1 0x20
0000385b: DUP1
0000385c: DUP3
0000385d: MSTORE
0000385e: PUSH1 0x1a
00003860: SWAP1
00003861: DUP3
00003862: ADD
00003863: MSTORE
00003864: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000
00003885: PUSH1 0x40
00003887: DUP3
00003888: ADD
00003889: MSTORE
0000388a: PUSH1 0x60
0000388c: ADD
0000388d: SWAP1
0000388e: JUMP
0000388f: JUMPDEST
00003890: PUSH1 0x20
00003892: DUP1
00003893: DUP3
00003894: MSTORE
00003895: PUSH1 0x18
00003897: SWAP1
00003898: DUP3
00003899: ADD
0000389a: MSTORE
0000389b: PUSH32 0x456c617374696344414f3a2041646472657373205a65726f0000000000000000
000038bc: PUSH1 0x40
000038be: DUP3
000038bf: ADD
000038c0: MSTORE
000038c1: PUSH1 0x60
000038c3: ADD
000038c4: SWAP1
000038c5: JUMP
000038c6: JUMPDEST
000038c7: PUSH1 0x20
000038c9: DUP1
000038ca: DUP3
000038cb: MSTORE
000038cc: DUP2
000038cd: DUP2
000038ce: ADD
000038cf: MSTORE
000038d0: PUSH32 0x456c617374696344414f3a20496e636f72726563742045544820616d6f756e74
000038f1: PUSH1 0x40
000038f3: DUP3
000038f4: ADD
000038f5: MSTORE
000038f6: PUSH1 0x60
000038f8: ADD
000038f9: SWAP1
000038fa: JUMP
000038fb: JUMPDEST
000038fc: PUSH1 0x20
000038fe: DUP1
000038ff: DUP3
00003900: MSTORE
00003901: PUSH1 0x32
00003903: SWAP1
00003904: DUP3
00003905: ADD
00003906: MSTORE
00003907: PUSH32 0x456c617374696344414f3a20536574204275726e6572206661696c6564206475
00003928: PUSH1 0x40
0000392a: DUP3
0000392b: ADD
0000392c: MSTORE
0000392d: PUSH18 0x3934b7339039b2ba21b7b73a3937b63632b9
00003940: PUSH1 0x71
00003942: SHL
00003943: PUSH1 0x60
00003945: DUP3
00003946: ADD
00003947: MSTORE
00003948: PUSH1 0x80
0000394a: ADD
0000394b: SWAP1
0000394c: JUMP
0000394d: JUMPDEST
0000394e: PUSH1 0x20
00003950: DUP1
00003951: DUP3
00003952: MSTORE
00003953: PUSH1 0x1c
00003955: SWAP1
00003956: DUP3
00003957: ADD
00003958: MSTORE
00003959: PUSH32 0x456c617374696344414f3a204275696c642044414f204661696c656400000000
0000397a: PUSH1 0x40
0000397c: DUP3
0000397d: ADD
0000397e: MSTORE
0000397f: PUSH1 0x60
00003981: ADD
00003982: SWAP1
00003983: JUMP
00003984: JUMPDEST
00003985: PUSH1 0x20
00003987: DUP1
00003988: DUP3
00003989: MSTORE
0000398a: PUSH1 0x21
0000398c: SWAP1
0000398d: DUP3
0000398e: ADD
0000398f: MSTORE
00003990: PUSH32 0x536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f
000039b1: PUSH1 0x40
000039b3: DUP3
000039b4: ADD
000039b5: MSTORE
000039b6: PUSH1 0x77
000039b8: PUSH1 0xf8
000039ba: SHL
000039bb: PUSH1 0x60
000039bd: DUP3
000039be: ADD
000039bf: MSTORE
000039c0: PUSH1 0x80
000039c2: ADD
000039c3: SWAP1
000039c4: JUMP
000039c5: JUMPDEST
000039c6: PUSH1 0x20
000039c8: DUP1
000039c9: DUP3
000039ca: MSTORE
000039cb: PUSH1 0x28
000039cd: SWAP1
000039ce: DUP3
000039cf: ADD
000039d0: MSTORE
000039d1: PUSH32 0x456c617374696344414f3a204174206c6561737420312073756d6d6f6e657220
000039f2: PUSH1 0x40
000039f4: DUP3
000039f5: ADD
000039f6: MSTORE
000039f7: PUSH8 0x1c995c5d5a5c9959
00003a00: PUSH1 0xc2
00003a02: SHL
00003a03: PUSH1 0x60
00003a05: DUP3
00003a06: ADD
00003a07: MSTORE
00003a08: PUSH1 0x80
00003a0a: ADD
00003a0b: SWAP1
00003a0c: JUMP
00003a0d: JUMPDEST
00003a0e: PUSH1 0x20
00003a10: DUP1
00003a11: DUP3
00003a12: MSTORE
00003a13: PUSH1 0x2d
00003a15: SWAP1
00003a16: DUP3
00003a17: ADD
00003a18: MSTORE
00003a19: PUSH32 0x456c617374696344414f3a20506c656173652063616c6c20696e697469616c69
00003a3a: PUSH1 0x40
00003a3c: DUP3
00003a3d: ADD
00003a3e: MSTORE
00003a3f: PUSH13 0x1e99551bdad95b88199a5c9cdd
00003a4d: PUSH1 0x9a
00003a4f: SHL
00003a50: PUSH1 0x60
00003a52: DUP3
00003a53: ADD
00003a54: MSTORE
00003a55: PUSH1 0x80
00003a57: ADD
00003a58: SWAP1
00003a59: JUMP
00003a5a: JUMPDEST
00003a5b: PUSH1 0x20
00003a5d: DUP1
00003a5e: DUP3
00003a5f: MSTORE
00003a60: PUSH1 0x39
00003a62: SWAP1
00003a63: DUP3
00003a64: ADD
00003a65: MSTORE
00003a66: PUSH32 0x456c617374696344414f3a20506c6561736520736565642044414f2077697468
00003a87: PUSH1 0x40
00003a89: DUP3
00003a8a: ADD
00003a8b: MSTORE
00003a8c: PUSH32 0x2045544820746f20736574204554483a45475420726174696f00000000000000
00003aad: PUSH1 0x60
00003aaf: DUP3
00003ab0: ADD
00003ab1: MSTORE
00003ab2: PUSH1 0x80
00003ab4: ADD
00003ab5: SWAP1
00003ab6: JUMP
00003ab7: JUMPDEST
00003ab8: PUSH1 0x20
00003aba: DUP1
00003abb: DUP3
00003abc: MSTORE
00003abd: PUSH1 0x1f
00003abf: SWAP1
00003ac0: DUP3
00003ac1: ADD
00003ac2: MSTORE
00003ac3: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00
00003ae4: PUSH1 0x40
00003ae6: DUP3
00003ae7: ADD
00003ae8: MSTORE
00003ae9: PUSH1 0x60
00003aeb: ADD
00003aec: SWAP1
00003aed: JUMP
00003aee: JUMPDEST
00003aef: PUSH1 0x20
00003af1: DUP1
00003af2: DUP3
00003af3: MSTORE
00003af4: PUSH1 0x17
00003af6: SWAP1
00003af7: DUP3
00003af8: ADD
00003af9: MSTORE
00003afa: PUSH32 0x456c617374696344414f3a2045786974204661696c6564000000000000000000
00003b1b: PUSH1 0x40
00003b1d: DUP3
00003b1e: ADD
00003b1f: MSTORE
00003b20: PUSH1 0x60
00003b22: ADD
00003b23: SWAP1
00003b24: JUMP
00003b25: JUMPDEST
00003b26: PUSH1 0x00
00003b28: PUSH1 0x20
00003b2a: DUP3
00003b2b: MSTORE
00003b2c: PUSH3 0x00253a
00003b30: PUSH1 0x20
00003b32: DUP4
00003b33: ADD
00003b34: DUP5
00003b35: PUSH3 0x003269
00003b39: JUMP
00003b3a: JUMPDEST
00003b3b: PUSH1 0x00
00003b3d: PUSH1 0x40
00003b3f: DUP3
00003b40: MSTORE
00003b41: PUSH3 0x003b4f
00003b45: PUSH1 0x40
00003b47: DUP4
00003b48: ADD
00003b49: DUP6
00003b4a: PUSH3 0x003269
00003b4e: JUMP
00003b4f: JUMPDEST
00003b50: SWAP1
00003b51: POP
00003b52: PUSH1 0x01
00003b54: DUP1
00003b55: PUSH1 0xa0
00003b57: SHL
00003b58: SUB
00003b59: DUP4
00003b5a: AND
00003b5b: PUSH1 0x20
00003b5d: DUP4
00003b5e: ADD
00003b5f: MSTORE
00003b60: SWAP4
00003b61: SWAP3
00003b62: POP
00003b63: POP
00003b64: POP
00003b65: JUMP
00003b66: JUMPDEST
00003b67: PUSH1 0x00
00003b69: PUSH1 0x40
00003b6b: DUP3
00003b6c: MSTORE
00003b6d: PUSH3 0x003b7b
00003b71: PUSH1 0x40
00003b73: DUP4
00003b74: ADD
00003b75: DUP6
00003b76: PUSH3 0x003269
00003b7a: JUMP
00003b7b: JUMPDEST
00003b7c: SWAP1
00003b7d: POP
00003b7e: DUP3
00003b7f: PUSH1 0x20
00003b81: DUP4
00003b82: ADD
00003b83: MSTORE
00003b84: SWAP4
00003b85: SWAP3
00003b86: POP
00003b87: POP
00003b88: POP
00003b89: JUMP
00003b8a: JUMPDEST
00003b8b: PUSH1 0xc0
00003b8d: DUP2
00003b8e: ADD
00003b8f: PUSH3 0x00253d
00003b93: DUP3
00003b94: DUP5
00003b95: PUSH3 0x00332b
00003b99: JUMP
00003b9a: JUMPDEST
00003b9b: PUSH1 0x00
00003b9d: PUSH1 0x20
00003b9f: DUP3
00003ba0: MSTORE
00003ba1: PUSH3 0x00253a
00003ba5: PUSH1 0x20
00003ba7: DUP4
00003ba8: ADD
00003ba9: DUP5
00003baa: PUSH3 0x003376
00003bae: JUMP
00003baf: JUMPDEST
00003bb0: SWAP1
00003bb1: DUP2
00003bb2: MSTORE
00003bb3: PUSH1 0x20
00003bb5: ADD
00003bb6: SWAP1
00003bb7: JUMP
00003bb8: JUMPDEST
00003bb9: SWAP2
00003bba: DUP3
00003bbb: MSTORE
00003bbc: PUSH1 0x20
00003bbe: DUP3
00003bbf: ADD
00003bc0: MSTORE
00003bc1: PUSH1 0x40
00003bc3: ADD
00003bc4: SWAP1
00003bc5: JUMP
00003bc6: JUMPDEST
00003bc7: PUSH1 0x40
00003bc9: MLOAD
00003bca: DUP2
00003bcb: DUP2
00003bcc: ADD
00003bcd: PUSH8 0xffffffffffffffff
00003bd6: DUP2
00003bd7: GT
00003bd8: DUP3
00003bd9: DUP3
00003bda: LT
00003bdb: OR
00003bdc: ISZERO
00003bdd: PUSH3 0x003be3
00003be1: JUMPI
00003be2: INVALID
00003be3: JUMPDEST
00003be4: PUSH1 0x40
00003be6: MSTORE
00003be7: SWAP2
00003be8: SWAP1
00003be9: POP
00003bea: JUMP
00003beb: JUMPDEST
00003bec: PUSH1 0x00
00003bee: PUSH8 0xffffffffffffffff
00003bf7: DUP3
00003bf8: GT
00003bf9: ISZERO
00003bfa: PUSH3 0x003c00
00003bfe: JUMPI
00003bff: INVALID
00003c00: JUMPDEST
00003c01: POP
00003c02: PUSH1 0x20
00003c04: SWAP1
00003c05: DUP2
00003c06: MUL
00003c07: ADD
00003c08: SWAP1
00003c09: JUMP
00003c0a: JUMPDEST
00003c0b: PUSH1 0x00
00003c0d: PUSH8 0xffffffffffffffff
00003c16: DUP3
00003c17: GT
00003c18: ISZERO
00003c19: PUSH3 0x003c1f
00003c1d: JUMPI
00003c1e: INVALID
00003c1f: JUMPDEST
00003c20: POP
00003c21: PUSH1 0x1f
00003c23: ADD
00003c24: PUSH1 0x1f
00003c26: NOT
00003c27: AND
00003c28: PUSH1 0x20
00003c2a: ADD
00003c2b: SWAP1
00003c2c: JUMP
00003c2d: JUMPDEST
00003c2e: PUSH1 0x00
00003c30: JUMPDEST
00003c31: DUP4
00003c32: DUP2
00003c33: LT
00003c34: ISZERO
00003c35: PUSH3 0x003c4a
00003c39: JUMPI
00003c3a: DUP2
00003c3b: DUP2
00003c3c: ADD
00003c3d: MLOAD
00003c3e: DUP4
00003c3f: DUP3
00003c40: ADD
00003c41: MSTORE
00003c42: PUSH1 0x20
00003c44: ADD
00003c45: PUSH3 0x003c30
00003c49: JUMP
00003c4a: JUMPDEST
00003c4b: DUP4
00003c4c: DUP2
00003c4d: GT
00003c4e: ISZERO
00003c4f: PUSH3 0x003c5a
00003c53: JUMPI
00003c54: PUSH1 0x00
00003c56: DUP5
00003c57: DUP5
00003c58: ADD
00003c59: MSTORE
00003c5a: JUMPDEST
00003c5b: POP
00003c5c: POP
00003c5d: POP
00003c5e: POP
00003c5f: JUMP
00003c60: JUMPDEST
00003c61: PUSH1 0x01
00003c63: PUSH1 0x01
00003c65: PUSH1 0xa0
00003c67: SHL
00003c68: SUB
00003c69: DUP2
00003c6a: AND
00003c6b: DUP2
00003c6c: EQ
00003c6d: PUSH3 0x003c76
00003c71: JUMPI
00003c72: PUSH1 0x00
00003c74: DUP1
00003c75: REVERT
00003c76: JUMPDEST
00003c77: POP
00003c78: JUMP
00003c79: INVALID
00003c7a: PUSH1 0x80
00003c7c: PUSH1 0x40
00003c7e: MSTORE
00003c7f: CALLVALUE
00003c80: DUP1
00003c81: ISZERO
00003c82: PUSH2 0x0010
00003c85: JUMPI
00003c86: PUSH1 0x00
00003c88: DUP1
00003c89: REVERT
00003c8a: JUMPDEST
00003c8b: POP
00003c8c: PUSH2 0x0054
00003c8f: PUSH1 0x40
00003c91: MLOAD
00003c92: PUSH1 0x20
00003c94: ADD
00003c95: DUP1
00003c96: DUP1
00003c97: PUSH10 0x13d5d3915497d4d313d5
00003ca2: PUSH1 0xb2
00003ca4: SHL
00003ca5: DUP2
00003ca6: MSTORE
00003ca7: POP
00003ca8: PUSH1 0x0a
00003caa: ADD
00003cab: SWAP1
00003cac: POP
00003cad: PUSH1 0x40
00003caf: MLOAD
00003cb0: PUSH1 0x20
00003cb2: DUP2
00003cb3: DUP4
00003cb4: SUB
00003cb5: SUB
00003cb6: DUP2
00003cb7: MSTORE
00003cb8: SWAP1
00003cb9: PUSH1 0x40
00003cbb: MSTORE
00003cbc: DUP1
00003cbd: MLOAD
00003cbe: SWAP1
00003cbf: PUSH1 0x20
00003cc1: ADD
00003cc2: KECCAK256
00003cc3: CALLER
00003cc4: PUSH2 0x0059
00003cc7: PUSH1 0x20
00003cc9: SHL
00003cca: PUSH1 0x20
00003ccc: SHR
00003ccd: JUMP
00003cce: JUMPDEST
00003ccf: PUSH2 0x007f
00003cd2: JUMP
00003cd3: JUMPDEST
00003cd4: PUSH2 0x006b
00003cd7: DUP3
00003cd8: PUSH2 0x0066
00003cdb: DUP4
00003cdc: PUSH2 0x006f
00003cdf: JUMP
00003ce0: JUMPDEST
00003ce1: PUSH2 0x007b
00003ce4: JUMP
00003ce5: JUMPDEST
00003ce6: POP
00003ce7: POP
00003ce8: JUMP
00003ce9: JUMPDEST
00003cea: PUSH1 0x01
00003cec: PUSH1 0x01
00003cee: PUSH1 0xa0
00003cf0: SHL
00003cf1: SUB
00003cf2: AND
00003cf3: SWAP1
00003cf4: JUMP
00003cf5: JUMPDEST
00003cf6: SWAP1
00003cf7: SSTORE
00003cf8: JUMP
00003cf9: JUMPDEST
00003cfa: PUSH2 0x0588
00003cfd: DUP1
00003cfe: PUSH2 0x008e
00003d01: PUSH1 0x00
00003d03: CODECOPY
00003d04: PUSH1 0x00
00003d06: RETURN
00003d07: INVALID
00003d08: PUSH1 0x80
00003d0a: PUSH1 0x40
00003d0c: MSTORE
00003d0d: PUSH1 0x04
00003d0f: CALLDATASIZE
00003d10: LT
00003d11: PUSH2 0x0086
00003d14: JUMPI
00003d15: PUSH1 0x00
00003d17: CALLDATALOAD
00003d18: PUSH1 0xe0
00003d1a: SHR
00003d1b: DUP1
00003d1c: PUSH4 0x9d84ae69
00003d21: GT
00003d22: PUSH2 0x0059
00003d25: JUMPI
00003d26: DUP1
00003d27: PUSH4 0x9d84ae69
00003d2c: EQ
00003d2d: PUSH2 0x015a
00003d30: JUMPI
00003d31: DUP1
00003d32: PUSH4 0xaaf10f42
00003d37: EQ
00003d38: PUSH2 0x0184
00003d3b: JUMPI
00003d3c: DUP1
00003d3d: PUSH4 0xbb15ac8e
00003d42: EQ
00003d43: PUSH2 0x0199
00003d46: JUMPI
00003d47: DUP1
00003d48: PUSH4 0xcaaee91c
00003d4d: EQ
00003d4e: PUSH2 0x01d7
00003d51: JUMPI
00003d52: DUP1
00003d53: PUSH4 0xd784d426
00003d58: EQ
00003d59: PUSH2 0x020a
00003d5c: JUMPI
00003d5d: PUSH2 0x0086
00003d60: JUMP
00003d61: JUMPDEST
00003d62: DUP1
00003d63: PUSH4 0x1ab7710d
00003d68: EQ
00003d69: PUSH2 0x0090
00003d6c: JUMPI
00003d6d: DUP1
00003d6e: PUSH4 0x37a440e6
00003d73: EQ
00003d74: PUSH2 0x00c1
00003d77: JUMPI
00003d78: DUP1
00003d79: PUSH4 0x5ced058e
00003d7e: EQ
00003d7f: PUSH2 0x00fd
00003d82: JUMPI
00003d83: DUP1
00003d84: PUSH4 0x82c947b7
00003d89: EQ
00003d8a: PUSH2 0x0127
00003d8d: JUMPI
00003d8e: JUMPDEST
00003d8f: PUSH2 0x008e
00003d92: PUSH2 0x023d
00003d95: JUMP
00003d96: JUMPDEST
00003d97: STOP
00003d98: JUMPDEST
00003d99: CALLVALUE
00003d9a: DUP1
00003d9b: ISZERO
00003d9c: PUSH2 0x009c
00003d9f: JUMPI
00003da0: PUSH1 0x00
00003da2: DUP1
00003da3: REVERT
00003da4: JUMPDEST
00003da5: POP
00003da6: PUSH2 0x00a5
00003da9: PUSH2 0x02ab
00003dac: JUMP
00003dad: JUMPDEST
00003dae: PUSH1 0x40
00003db0: DUP1
00003db1: MLOAD
00003db2: PUSH1 0x01
00003db4: PUSH1 0x01
00003db6: PUSH1 0xa0
00003db8: SHL
00003db9: SUB
00003dba: SWAP1
00003dbb: SWAP3
00003dbc: AND
00003dbd: DUP3
00003dbe: MSTORE
00003dbf: MLOAD
00003dc0: SWAP1
00003dc1: DUP2
00003dc2: SWAP1
00003dc3: SUB
00003dc4: PUSH1 0x20
00003dc6: ADD
00003dc7: SWAP1
00003dc8: RETURN
00003dc9: JUMPDEST
00003dca: CALLVALUE
00003dcb: DUP1
00003dcc: ISZERO
00003dcd: PUSH2 0x00cd
00003dd0: JUMPI
00003dd1: PUSH1 0x00
00003dd3: DUP1
00003dd4: REVERT
00003dd5: JUMPDEST
00003dd6: POP
00003dd7: PUSH2 0x00eb
00003dda: PUSH1 0x04
00003ddc: DUP1
00003ddd: CALLDATASIZE
00003dde: SUB
00003ddf: PUSH1 0x20
00003de1: DUP2
00003de2: LT
00003de3: ISZERO
00003de4: PUSH2 0x00e4
00003de7: JUMPI
00003de8: PUSH1 0x00
00003dea: DUP1
00003deb: REVERT
00003dec: JUMPDEST
00003ded: POP
00003dee: CALLDATALOAD
00003def: PUSH2 0x02ee
00003df2: JUMP
00003df3: JUMPDEST
00003df4: PUSH1 0x40
00003df6: DUP1
00003df7: MLOAD
00003df8: SWAP2
00003df9: DUP3
00003dfa: MSTORE
00003dfb: MLOAD
00003dfc: SWAP1
00003dfd: DUP2
00003dfe: SWAP1
00003dff: SUB
00003e00: PUSH1 0x20
00003e02: ADD
00003e03: SWAP1
00003e04: RETURN
00003e05: JUMPDEST
00003e06: CALLVALUE
00003e07: DUP1
00003e08: ISZERO
00003e09: PUSH2 0x0109
00003e0c: JUMPI
00003e0d: PUSH1 0x00
00003e0f: DUP1
00003e10: REVERT
00003e11: JUMPDEST
00003e12: POP
00003e13: PUSH2 0x00a5
00003e16: PUSH1 0x04
00003e18: DUP1
00003e19: CALLDATASIZE
00003e1a: SUB
00003e1b: PUSH1 0x20
00003e1d: DUP2
00003e1e: LT
00003e1f: ISZERO
00003e20: PUSH2 0x0120
00003e23: JUMPI
00003e24: PUSH1 0x00
00003e26: DUP1
00003e27: REVERT
00003e28: JUMPDEST
00003e29: POP
00003e2a: CALLDATALOAD
00003e2b: PUSH2 0x02f2
00003e2e: JUMP
00003e2f: JUMPDEST
00003e30: CALLVALUE
00003e31: DUP1
00003e32: ISZERO
00003e33: PUSH2 0x0133
00003e36: JUMPI
00003e37: PUSH1 0x00
00003e39: DUP1
00003e3a: REVERT
00003e3b: JUMPDEST
00003e3c: POP
00003e3d: PUSH2 0x00eb
00003e40: PUSH1 0x04
00003e42: DUP1
00003e43: CALLDATASIZE
00003e44: SUB
00003e45: PUSH1 0x20
00003e47: DUP2
00003e48: LT
00003e49: ISZERO
00003e4a: PUSH2 0x014a
00003e4d: JUMPI
00003e4e: PUSH1 0x00
00003e50: DUP1
00003e51: REVERT
00003e52: JUMPDEST
00003e53: POP
00003e54: CALLDATALOAD
00003e55: PUSH1 0x01
00003e57: PUSH1 0x01
00003e59: PUSH1 0xa0
00003e5b: SHL
00003e5c: SUB
00003e5d: AND
00003e5e: PUSH2 0x02f5
00003e61: JUMP
00003e62: JUMPDEST
00003e63: CALLVALUE
00003e64: DUP1
00003e65: ISZERO
00003e66: PUSH2 0x0166
00003e69: JUMPI
00003e6a: PUSH1 0x00
00003e6c: DUP1
00003e6d: REVERT
00003e6e: JUMPDEST
00003e6f: POP
00003e70: PUSH2 0x00a5
00003e73: PUSH1 0x04
00003e75: DUP1
00003e76: CALLDATASIZE
00003e77: SUB
00003e78: PUSH1 0x20
00003e7a: DUP2
00003e7b: LT
00003e7c: ISZERO
00003e7d: PUSH2 0x017d
00003e80: JUMPI
00003e81: PUSH1 0x00
00003e83: DUP1
00003e84: REVERT
00003e85: JUMPDEST
00003e86: POP
00003e87: CALLDATALOAD
00003e88: PUSH2 0x0301
00003e8b: JUMP
00003e8c: JUMPDEST
00003e8d: CALLVALUE
00003e8e: DUP1
00003e8f: ISZERO
00003e90: PUSH2 0x0190
00003e93: JUMPI
00003e94: PUSH1 0x00
00003e96: DUP1
00003e97: REVERT
00003e98: JUMPDEST
00003e99: POP
00003e9a: PUSH2 0x00a5
00003e9d: PUSH2 0x031a
00003ea0: JUMP
00003ea1: JUMPDEST
00003ea2: CALLVALUE
00003ea3: DUP1
00003ea4: ISZERO
00003ea5: PUSH2 0x01a5
00003ea8: JUMPI
00003ea9: PUSH1 0x00
00003eab: DUP1
00003eac: REVERT
00003ead: JUMPDEST
00003eae: POP
00003eaf: PUSH2 0x01c3
00003eb2: PUSH1 0x04
00003eb4: DUP1
00003eb5: CALLDATASIZE
00003eb6: SUB
00003eb7: PUSH1 0x20
00003eb9: DUP2
00003eba: LT
00003ebb: ISZERO
00003ebc: PUSH2 0x01bc
00003ebf: JUMPI
00003ec0: PUSH1 0x00
00003ec2: DUP1
00003ec3: REVERT
00003ec4: JUMPDEST
00003ec5: POP
00003ec6: CALLDATALOAD
00003ec7: PUSH2 0x0361
00003eca: JUMP
00003ecb: JUMPDEST
00003ecc: PUSH1 0x40
00003ece: DUP1
00003ecf: MLOAD
00003ed0: SWAP2
00003ed1: ISZERO
00003ed2: ISZERO
00003ed3: DUP3
00003ed4: MSTORE
00003ed5: MLOAD
00003ed6: SWAP1
00003ed7: DUP2
00003ed8: SWAP1
00003ed9: SUB
00003eda: PUSH1 0x20
00003edc: ADD
00003edd: SWAP1
00003ede: RETURN
00003edf: JUMPDEST
00003ee0: CALLVALUE
00003ee1: DUP1
00003ee2: ISZERO
00003ee3: PUSH2 0x01e3
00003ee6: JUMPI
00003ee7: PUSH1 0x00
00003ee9: DUP1
00003eea: REVERT
00003eeb: JUMPDEST
00003eec: POP
00003eed: PUSH2 0x008e
00003ef0: PUSH1 0x04
00003ef2: DUP1
00003ef3: CALLDATASIZE
00003ef4: SUB
00003ef5: PUSH1 0x20
00003ef7: DUP2
00003ef8: LT
00003ef9: ISZERO
00003efa: PUSH2 0x01fa
00003efd: JUMPI
00003efe: PUSH1 0x00
00003f00: DUP1
00003f01: REVERT
00003f02: JUMPDEST
00003f03: POP
00003f04: CALLDATALOAD
00003f05: PUSH1 0x01
00003f07: PUSH1 0x01
00003f09: PUSH1 0xa0
00003f0b: SHL
00003f0c: SUB
00003f0d: AND
00003f0e: PUSH2 0x0375
00003f11: JUMP
00003f12: JUMPDEST
00003f13: CALLVALUE
00003f14: DUP1
00003f15: ISZERO
00003f16: PUSH2 0x0216
00003f19: JUMPI
00003f1a: PUSH1 0x00
00003f1c: DUP1
00003f1d: REVERT
00003f1e: JUMPDEST
00003f1f: POP
00003f20: PUSH2 0x008e
00003f23: PUSH1 0x04
00003f25: DUP1
00003f26: CALLDATASIZE
00003f27: SUB
00003f28: PUSH1 0x20
00003f2a: DUP2
00003f2b: LT
00003f2c: ISZERO
00003f2d: PUSH2 0x022d
00003f30: JUMPI
00003f31: PUSH1 0x00
00003f33: DUP1
00003f34: REVERT
00003f35: JUMPDEST
00003f36: POP
00003f37: CALLDATALOAD
00003f38: PUSH1 0x01
00003f3a: PUSH1 0x01
00003f3c: PUSH1 0xa0
00003f3e: SHL
00003f3f: SUB
00003f40: AND
00003f41: PUSH2 0x0440
00003f44: JUMP
00003f45: JUMPDEST
00003f46: PUSH1 0x00
00003f48: PUSH2 0x0284
00003f4b: PUSH1 0x40
00003f4d: MLOAD
00003f4e: PUSH1 0x20
00003f50: ADD
00003f51: DUP1
00003f52: DUP1
00003f53: PUSH19 0x12535413115351539510551253d397d4d313d5
00003f67: PUSH1 0x6a
00003f69: SHL
00003f6a: DUP2
00003f6b: MSTORE
00003f6c: POP
00003f6d: PUSH1 0x13
00003f6f: ADD
00003f70: SWAP1
00003f71: POP
00003f72: PUSH1 0x40
00003f74: MLOAD
00003f75: PUSH1 0x20
00003f77: DUP2
00003f78: DUP4
00003f79: SUB
00003f7a: SUB
00003f7b: DUP2
00003f7c: MSTORE
00003f7d: SWAP1
00003f7e: PUSH1 0x40
00003f80: MSTORE
00003f81: DUP1
00003f82: MLOAD
00003f83: SWAP1
00003f84: PUSH1 0x20
00003f86: ADD
00003f87: KECCAK256
00003f88: PUSH2 0x0301
00003f8b: JUMP
00003f8c: JUMPDEST
00003f8d: SWAP1
00003f8e: POP
00003f8f: PUSH1 0x40
00003f91: MLOAD
00003f92: CALLDATASIZE
00003f93: PUSH1 0x00
00003f95: DUP3
00003f96: CALLDATACOPY
00003f97: PUSH1 0x00
00003f99: DUP1
00003f9a: CALLDATASIZE
00003f9b: DUP4
00003f9c: DUP6
00003f9d: GAS
00003f9e: DELEGATECALL
00003f9f: RETURNDATASIZE
00003fa0: DUP1
00003fa1: PUSH1 0x00
00003fa3: DUP5
00003fa4: RETURNDATACOPY
00003fa5: DUP2
00003fa6: DUP1
00003fa7: ISZERO
00003fa8: PUSH2 0x02a7
00003fab: JUMPI
00003fac: DUP2
00003fad: DUP5
00003fae: RETURN
00003faf: JUMPDEST
00003fb0: DUP2
00003fb1: DUP5
00003fb2: REVERT
00003fb3: JUMPDEST
00003fb4: PUSH1 0x00
00003fb6: PUSH2 0x02e9
00003fb9: PUSH1 0x40
00003fbb: MLOAD
00003fbc: PUSH1 0x20
00003fbe: ADD
00003fbf: DUP1
00003fc0: DUP1
00003fc1: PUSH10 0x13d5d3915497d4d313d5
00003fcc: PUSH1 0xb2
00003fce: SHL
00003fcf: DUP2
00003fd0: MSTORE
00003fd1: POP
00003fd2: PUSH1 0x0a
00003fd4: ADD
00003fd5: SWAP1
00003fd6: POP
00003fd7: PUSH1 0x40
00003fd9: MLOAD
00003fda: PUSH1 0x20
00003fdc: DUP2
00003fdd: DUP4
00003fde: SUB
00003fdf: SUB
00003fe0: DUP2
00003fe1: MSTORE
00003fe2: SWAP1
00003fe3: PUSH1 0x40
00003fe5: MSTORE
00003fe6: DUP1
00003fe7: MLOAD
00003fe8: SWAP1
00003fe9: PUSH1 0x20
00003feb: ADD
00003fec: KECCAK256
00003fed: PUSH2 0x0301
00003ff0: JUMP
00003ff1: JUMPDEST
00003ff2: SWAP1
00003ff3: POP
00003ff4: SWAP1
00003ff5: JUMP
00003ff6: JUMPDEST
00003ff7: SLOAD
00003ff8: SWAP1
00003ff9: JUMP
00003ffa: JUMPDEST
00003ffb: SWAP1
00003ffc: JUMP
00003ffd: JUMPDEST
00003ffe: PUSH1 0x01
00004000: PUSH1 0x01
00004002: PUSH1 0xa0
00004004: SHL
00004005: SUB
00004006: AND
00004007: SWAP1
00004008: JUMP
00004009: JUMPDEST
0000400a: PUSH1 0x00
0000400c: PUSH2 0x0314
0000400f: PUSH2 0x030f
00004012: DUP4
00004013: PUSH2 0x02ee
00004016: JUMP
00004017: JUMPDEST
00004018: PUSH2 0x02f2
0000401b: JUMP
0000401c: JUMPDEST
0000401d: SWAP3
0000401e: SWAP2
0000401f: POP
00004020: POP
00004021: JUMP
00004022: JUMPDEST
00004023: PUSH1 0x00
00004025: PUSH2 0x02e9
00004028: PUSH1 0x40
0000402a: MLOAD
0000402b: PUSH1 0x20
0000402d: ADD
0000402e: DUP1
0000402f: DUP1
00004030: PUSH19 0x12535413115351539510551253d397d4d313d5
00004044: PUSH1 0x6a
00004046: SHL
00004047: DUP2
00004048: MSTORE
00004049: POP
0000404a: PUSH1 0x13
0000404c: ADD
0000404d: SWAP1
0000404e: POP
0000404f: PUSH1 0x40
00004051: MLOAD
00004052: PUSH1 0x20
00004054: DUP2
00004055: DUP4
00004056: SUB
00004057: SUB
00004058: DUP2
00004059: MSTORE
0000405a: SWAP1
0000405b: PUSH1 0x40
0000405d: MSTORE
0000405e: DUP1
0000405f: MLOAD
00004060: SWAP1
00004061: PUSH1 0x20
00004063: ADD
00004064: KECCAK256
00004065: PUSH2 0x0301
00004068: JUMP
00004069: JUMPDEST
0000406a: PUSH1 0x00
0000406c: PUSH1 0x01
0000406e: PUSH2 0x036e
00004071: DUP4
00004072: PUSH2 0x02ee
00004075: JUMP
00004076: JUMPDEST
00004077: EQ
00004078: SWAP3
00004079: SWAP2
0000407a: POP
0000407b: POP
0000407c: JUMP
0000407d: JUMPDEST
0000407e: PUSH2 0x03b1
00004081: PUSH1 0x40
00004083: MLOAD
00004084: PUSH1 0x20
00004086: ADD
00004087: DUP1
00004088: DUP1
00004089: PUSH10 0x13d5d3915497d4d313d5
00004094: PUSH1 0xb2
00004096: SHL
00004097: DUP2
00004098: MSTORE
00004099: POP
0000409a: PUSH1 0x0a
0000409c: ADD
0000409d: SWAP1
0000409e: POP
0000409f: PUSH1 0x40
000040a1: MLOAD
000040a2: PUSH1 0x20
000040a4: DUP2
000040a5: DUP4
000040a6: SUB
000040a7: SUB
000040a8: DUP2
000040a9: MSTORE
000040aa: SWAP1
000040ab: PUSH1 0x40
000040ad: MSTORE
000040ae: DUP1
000040af: MLOAD
000040b0: SWAP1
000040b1: PUSH1 0x20
000040b3: ADD
000040b4: KECCAK256
000040b5: PUSH2 0x0301
000040b8: JUMP
000040b9: JUMPDEST
000040ba: PUSH1 0x01
000040bc: PUSH1 0x01
000040be: PUSH1 0xa0
000040c0: SHL
000040c1: SUB
000040c2: AND
000040c3: CALLER
000040c4: PUSH1 0x01
000040c6: PUSH1 0x01
000040c8: PUSH1 0xa0
000040ca: SHL
000040cb: SUB
000040cc: AND
000040cd: EQ
000040ce: PUSH2 0x0400
000040d1: JUMPI
000040d2: PUSH1 0x40
000040d4: MLOAD
000040d5: PUSH3 0x461bcd
000040d9: PUSH1 0xe5
000040db: SHL
000040dc: DUP2
000040dd: MSTORE
000040de: PUSH1 0x04
000040e0: ADD
000040e1: DUP1
000040e2: DUP1
000040e3: PUSH1 0x20
000040e5: ADD
000040e6: DUP3
000040e7: DUP2
000040e8: SUB
000040e9: DUP3
000040ea: MSTORE
000040eb: PUSH1 0x2b
000040ed: DUP2
000040ee: MSTORE
000040ef: PUSH1 0x20
000040f1: ADD
000040f2: DUP1
000040f3: PUSH2 0x0528
000040f6: PUSH1 0x2b
000040f8: SWAP2
000040f9: CODECOPY
000040fa: PUSH1 0x40
000040fc: ADD
000040fd: SWAP2
000040fe: POP
000040ff: POP
00004100: PUSH1 0x40
00004102: MLOAD
00004103: DUP1
00004104: SWAP2
00004105: SUB
00004106: SWAP1
00004107: REVERT
00004108: JUMPDEST
00004109: PUSH2 0x043d
0000410c: PUSH1 0x40
0000410e: MLOAD
0000410f: PUSH1 0x20
00004111: ADD
00004112: DUP1
00004113: DUP1
00004114: PUSH10 0x13d5d3915497d4d313d5
0000411f: PUSH1 0xb2
00004121: SHL
00004122: DUP2
00004123: MSTORE
00004124: POP
00004125: PUSH1 0x0a
00004127: ADD
00004128: SWAP1
00004129: POP
0000412a: PUSH1 0x40
0000412c: MLOAD
0000412d: PUSH1 0x20
0000412f: DUP2
00004130: DUP4
00004131: SUB
00004132: SUB
00004133: DUP2
00004134: MSTORE
00004135: SWAP1
00004136: PUSH1 0x40
00004138: MSTORE
00004139: DUP1
0000413a: MLOAD
0000413b: SWAP1
0000413c: PUSH1 0x20
0000413e: ADD
0000413f: KECCAK256
00004140: DUP3
00004141: PUSH2 0x050d
00004144: JUMP
00004145: JUMPDEST
00004146: POP
00004147: JUMP
00004148: JUMPDEST
00004149: PUSH2 0x047c
0000414c: PUSH1 0x40
0000414e: MLOAD
0000414f: PUSH1 0x20
00004151: ADD
00004152: DUP1
00004153: DUP1
00004154: PUSH10 0x13d5d3915497d4d313d5
0000415f: PUSH1 0xb2
00004161: SHL
00004162: DUP2
00004163: MSTORE
00004164: POP
00004165: PUSH1 0x0a
00004167: ADD
00004168: SWAP1
00004169: POP
0000416a: PUSH1 0x40
0000416c: MLOAD
0000416d: PUSH1 0x20
0000416f: DUP2
00004170: DUP4
00004171: SUB
00004172: SUB
00004173: DUP2
00004174: MSTORE
00004175: SWAP1
00004176: PUSH1 0x40
00004178: MSTORE
00004179: DUP1
0000417a: MLOAD
0000417b: SWAP1
0000417c: PUSH1 0x20
0000417e: ADD
0000417f: KECCAK256
00004180: PUSH2 0x0301
00004183: JUMP
00004184: JUMPDEST
00004185: PUSH1 0x01
00004187: PUSH1 0x01
00004189: PUSH1 0xa0
0000418b: SHL
0000418c: SUB
0000418d: AND
0000418e: CALLER
0000418f: PUSH1 0x01
00004191: PUSH1 0x01
00004193: PUSH1 0xa0
00004195: SHL
00004196: SUB
00004197: AND
00004198: EQ
00004199: PUSH2 0x04cb
0000419c: JUMPI
0000419d: PUSH1 0x40
0000419f: MLOAD
000041a0: PUSH3 0x461bcd
000041a4: PUSH1 0xe5
000041a6: SHL
000041a7: DUP2
000041a8: MSTORE
000041a9: PUSH1 0x04
000041ab: ADD
000041ac: DUP1
000041ad: DUP1
000041ae: PUSH1 0x20
000041b0: ADD
000041b1: DUP3
000041b2: DUP2
000041b3: SUB
000041b4: DUP3
000041b5: MSTORE
000041b6: PUSH1 0x2b
000041b8: DUP2
000041b9: MSTORE
000041ba: PUSH1 0x20
000041bc: ADD
000041bd: DUP1
000041be: PUSH2 0x0528
000041c1: PUSH1 0x2b
000041c3: SWAP2
000041c4: CODECOPY
000041c5: PUSH1 0x40
000041c7: ADD
000041c8: SWAP2
000041c9: POP
000041ca: POP
000041cb: PUSH1 0x40
000041cd: MLOAD
000041ce: DUP1
000041cf: SWAP2
000041d0: SUB
000041d1: SWAP1
000041d2: REVERT
000041d3: JUMPDEST
000041d4: PUSH2 0x043d
000041d7: PUSH1 0x40
000041d9: MLOAD
000041da: PUSH1 0x20
000041dc: ADD
000041dd: DUP1
000041de: DUP1
000041df: PUSH19 0x12535413115351539510551253d397d4d313d5
000041f3: PUSH1 0x6a
000041f5: SHL
000041f6: DUP2
000041f7: MSTORE
000041f8: POP
000041f9: PUSH1 0x13
000041fb: ADD
000041fc: SWAP1
000041fd: POP
000041fe: PUSH1 0x40
00004200: MLOAD
00004201: PUSH1 0x20
00004203: DUP2
00004204: DUP4
00004205: SUB
00004206: SUB
00004207: DUP2
00004208: MSTORE
00004209: SWAP1
0000420a: PUSH1 0x40
0000420c: MSTORE
0000420d: DUP1
0000420e: MLOAD
0000420f: SWAP1
00004210: PUSH1 0x20
00004212: ADD
00004213: KECCAK256
00004214: DUP3
00004215: JUMPDEST
00004216: PUSH2 0x051f
00004219: DUP3
0000421a: PUSH2 0x051a
0000421d: DUP4
0000421e: PUSH2 0x02f5
00004221: JUMP
00004222: JUMPDEST
00004223: PUSH2 0x0523
00004226: JUMP
00004227: JUMPDEST
00004228: POP
00004229: POP
0000422a: JUMP
0000422b: JUMPDEST
0000422c: SWAP1
0000422d: SSTORE
0000422e: JUMP
0000422f: INVALID
00004230: POP
00004231: POP
00004232: PUSH19 0x6f78792e6f6e6c7950726f78794f776e65723a
00004246: KECCAK256
00004247: PUSH14 0x73672073656e646572206e6f7420
00004256: PUSH16 0x776e6572a26469706673582212201304
00004267: PC
00004268: STOP
00004269: RETURN
0000426a: LOG0
0000426b: UNKNOWN(0xF8)
0000426c: UNKNOWN(0xB4)
0000426d: BASEFEE
0000426e: CHAINID
0000426f: UNKNOWN(0xCC)
00004270: UNKNOWN(0xDC)
00004271: UNKNOWN(0xE4)
00004272: UNKNOWN(0xBE)
00004273: PUSH31 0xa9edb399b703cac8c007f15cb93a4b204a64736f6c63430007020033a26469
00004293: PUSH17 0x6673582212204133693e20a368be9a564d
000042a5: UNKNOWN(0xDE)
000042a6: UNKNOWN(0xC0)
000042a7: UNKNOWN(0xC4)
000042a8: OR
000042a9: UNKNOWN(0xA5)
000042aa: OR
000042ab: CALLDATACOPY
000042ac: SWAP2
000042ad: UNKNOWN(0xC2)
000042ae: SWAP2
000042af: PUSH6 0x852da247153c
000042b6: PUSH10 0xb4dfc664736f6c634300
000042c1: SMOD
000042c2: MUL
000042c3: STOP
000042c4: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0xb7ff7a94e6bfa2e582fd9dfcec83ebb63d4e7faa867ea1e5889877a5836e06eb
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0xb7ff7a94e6bfa2e582fd9dfcec83ebb63d4e7faa867ea1e5889877a5836e06eb",
    "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": "0xb688a363",
            "selector": "0xb688a363",
            "calldata_variants": [
                "0xb688a363",
                "0xb688a3630000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb7a906ec",
            "selector": "0xb7a906ec",
            "calldata_variants": [
                "0xb7a906ec",
                "0xb7a906ec0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd38b576d",
            "selector": "0xd38b576d",
            "calldata_variants": [
                "0xd38b576d",
                "0xd38b576d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd5f39488",
            "selector": "0xd5f39488",
            "calldata_variants": [
                "0xd5f39488",
                "0xd5f394880000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee6a934c",
            "selector": "0xee6a934c",
            "calldata_variants": [
                "0xee6a934c",
                "0xee6a934c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf77c4791",
            "selector": "0xf77c4791",
            "calldata_variants": [
                "0xf77c4791",
                "0xf77c47910000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8ae7b77e",
            "selector": "0x8ae7b77e",
            "calldata_variants": [
                "0x8ae7b77e",
                "0x8ae7b77e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x92eefe9b",
            "selector": "0x92eefe9b",
            "calldata_variants": [
                "0x92eefe9b",
                "0x92eefe9b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 16286,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high auth codex Unprotected governance token initialization lets attacker become minter and drain DAO ETH 85 no
view
evidence_json
{
    "evidence": "ElasticGovernanceToken.initialize is external and lacks any access control beyond initialized=false, but it sets daoAddress/minter/burner. Once attacker sets minter, mintShares is callable by them, and ElasticDAO.exit pays ETH based on share balance.",
    "locations": [
        "contracts/src/tokens/ElasticGovernanceToken.sol:62",
        "contracts/src/tokens/ElasticGovernanceToken.sol:74",
        "contracts/src/tokens/ElasticGovernanceToken.sol:300",
        "contracts/src/core/ElasticDAO.sol:204"
    ],
    "recommendation": "Restrict ElasticGovernanceToken.initialize to the DAO (or a trusted deployer) and/or make initialization happen atomically in the DAO deployment flow so no external account can front\u2011run. Consider an initializer modifier that enforces msg.sender == _ecosystem.daoAddress.",
    "exploit_scenario": "1) After ElasticDAO.initialize deploys the governance token proxy but before the deployer calls initializeToken, attacker calls ElasticGovernanceToken.initialize on the proxy, setting _minter/_burner to themselves and passing the DAO\u2019s Ecosystem.Instance (via ElasticDAO.getEcosystem) so storage is wired to the real DAO.\n2) Once the DAO is seeded/summoned and holds ETH, attacker calls mintShares(attacker, huge_amount) as the authorized minter.\n3) Attacker calls ElasticDAO.exit(huge_amount) to burn the forged shares and withdraw nearly all ETH proportional to their inflated share count.\nProfit potential: up to the entire ETH balance held by the DAO (seeded + joined ETH)."
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x92d006c7e96bc8ac2106febda5a37a3a58175d841047f0950bab56419e585306
call_targets: 0x4f40e2f1edf9999124b2fcf26b04821e6ca7196d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x92d006c7e96bc8ac2106febda5a37a3a58175d841047f0950bab56419e585306",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x4f40e2f1edf9999124b2fcf26b04821e6ca7196d"
    ],
    "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": "0xb688a363",
            "selector": "0xb688a363",
            "calldata_variants": [
                "0xb688a363",
                "0xb688a3630000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb7a906ec",
            "selector": "0xb7a906ec",
            "calldata_variants": [
                "0xb7a906ec",
                "0xb7a906ec0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd38b576d",
            "selector": "0xd38b576d",
            "calldata_variants": [
                "0xd38b576d",
                "0xd38b576d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd5f39488",
            "selector": "0xd5f39488",
            "calldata_variants": [
                "0xd5f39488",
                "0xd5f394880000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee6a934c",
            "selector": "0xee6a934c",
            "calldata_variants": [
                "0xee6a934c",
                "0xee6a934c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf77c4791",
            "selector": "0xf77c4791",
            "calldata_variants": [
                "0xf77c4791",
                "0xf77c47910000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8ae7b77e",
            "selector": "0x8ae7b77e",
            "calldata_variants": [
                "0x8ae7b77e",
                "0x8ae7b77e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x92eefe9b",
            "selector": "0x92eefe9b",
            "calldata_variants": [
                "0x92eefe9b",
                "0x92eefe9b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2121,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2273,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3423,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 20,
    "guards_detected": [],
    "untrusted_call_count": 20
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x92d006c7e96bc8ac2106febda5a37a3a58175d841047f0950bab56419e585306
call_targets: 0x4f40e2f1edf9999124b2fcf26b04821e6ca7196d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x92d006c7e96bc8ac2106febda5a37a3a58175d841047f0950bab56419e585306",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x4f40e2f1edf9999124b2fcf26b04821e6ca7196d"
    ],
    "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": "0xb688a363",
            "selector": "0xb688a363",
            "calldata_variants": [
                "0xb688a363",
                "0xb688a3630000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb7a906ec",
            "selector": "0xb7a906ec",
            "calldata_variants": [
                "0xb7a906ec",
                "0xb7a906ec0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd38b576d",
            "selector": "0xd38b576d",
            "calldata_variants": [
                "0xd38b576d",
                "0xd38b576d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd5f39488",
            "selector": "0xd5f39488",
            "calldata_variants": [
                "0xd5f39488",
                "0xd5f394880000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee6a934c",
            "selector": "0xee6a934c",
            "calldata_variants": [
                "0xee6a934c",
                "0xee6a934c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf77c4791",
            "selector": "0xf77c4791",
            "calldata_variants": [
                "0xf77c4791",
                "0xf77c47910000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8ae7b77e",
            "selector": "0x8ae7b77e",
            "calldata_variants": [
                "0x8ae7b77e",
                "0x8ae7b77e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x92eefe9b",
            "selector": "0x92eefe9b",
            "calldata_variants": [
                "0x92eefe9b",
                "0x92eefe9b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2121,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2273,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3423,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 20,
    "guards_detected": []
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0xe0aca105a0159c1d5f46d63a4efaab544c45e3d4b2f3ca47359fdd95179a6223
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0xe0aca105a0159c1d5f46d63a4efaab544c45e3d4b2f3ca47359fdd95179a6223",
    "confirmed": false,
    "trace_mode": "structLogs",
    "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": "0xb688a363",
            "selector": "0xb688a363",
            "calldata_variants": [
                "0xb688a363",
                "0xb688a3630000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb7a906ec",
            "selector": "0xb7a906ec",
            "calldata_variants": [
                "0xb7a906ec",
                "0xb7a906ec0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd38b576d",
            "selector": "0xd38b576d",
            "calldata_variants": [
                "0xd38b576d",
                "0xd38b576d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd5f39488",
            "selector": "0xd5f39488",
            "calldata_variants": [
                "0xd5f39488",
                "0xd5f394880000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee6a934c",
            "selector": "0xee6a934c",
            "calldata_variants": [
                "0xee6a934c",
                "0xee6a934c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf77c4791",
            "selector": "0xf77c4791",
            "calldata_variants": [
                "0xf77c4791",
                "0xf77c47910000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8ae7b77e",
            "selector": "0x8ae7b77e",
            "calldata_variants": [
                "0x8ae7b77e",
                "0x8ae7b77e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x92eefe9b",
            "selector": "0x92eefe9b",
            "calldata_variants": [
                "0x92eefe9b",
                "0x92eefe9b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 1,
    "create2_count": 0
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 1
}
low other cast Contract creation opcode present 60 no
view
evidence_json
{
    "notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
    "create_count": 1,
    "create2_count": 0
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 33
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 35
}