448847a9-2a92-4f30-829c-c34a5fdc63f2
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 30515 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 103949 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 103950 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 103951 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 103952 | capability.graph | complete | 1 / 3 | 1 week ago |
| 103953 | detector.run | complete | 1 / 3 | 1 week ago |
| 103954 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:510870] OpenAI Codex v0.77.0 (research preview)
[codex:510870] --------
[codex:510870] workdir: /tmp/codex-multi-v651rhhp
[codex:510870] model: gpt-5.2-codex
[codex:510870] provider: openai
[codex:510870] approval: never
[codex:510870] sandbox: read-only
[codex:510870] reasoning effort: xhigh
[codex:510870] reasoning summaries: auto
[codex:510870] session id: 019b6ab3-c0fe-7113-9f38-fa18b14e4941
[codex:510870] --------
[codex:510870] user
[codex:510870] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:510870] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:510870] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:510870]
[codex:510870] Scope rules:
[codex:510870] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:510870] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:510870]
[codex:510870] Output MUST be valid JSON matching the provided schema.
[codex:510870] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:510870] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:510870]
[codex:510870] Output constraints (IMPORTANT):
[codex:510870] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:510870] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:510870] mcp startup: no servers
[codex:510870]
[codex:510870] thinking
[codex:510870] **Preparing to read AUDIT_BUNDLE.txt**
[codex:510870] exec
[codex:510870] /bin/bash -lc ls in /tmp/codex-multi-v651rhhp succeeded in 5ms:
[codex:510870] AUDIT_BUNDLE.txt
[codex:510870] codex-output-schema.json
[codex:510870] contracts
[codex:510870]
[codex:510870] thinking
[codex:510870] **Reading AUDIT_BUNDLE.txt**
[codex:510870] exec
[codex:510870] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-v651rhhp succeeded in 5ms:
[codex:510870] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:510870]
[codex:510870] ================================================================================
[codex:510870] FILE: contracts/Contract.sol
[codex:510870] ================================================================================
[codex:510870] // File: @chainlink/contracts/src/v0.6/interfaces/AggregatorV3Interface.sol
[codex:510870]
[codex:510870] pragma solidity >=0.6.0;
[codex:510870]
[codex:510870] interface AggregatorV3Interface {
[codex:510870]
[codex:510870] function decimals() external view returns (uint8);
[codex:510870] function description() external view returns (string memory);
[codex:510870] function version() external view returns (uint256);
[codex:510870]
[codex:510870] // getRoundData and latestRoundData should both raise "No data present"
[codex:510870] // if they do not have data to report, instead of returning unset values
[codex:510870] // which could be misinterpreted as actual reported values.
[codex:510870] function getRoundData(uint80 _roundId)
[codex:510870] external
[codex:510870]
[codex:510870] thinking
[codex:510870] **Preparing to fully review contract files**
[codex:510870]
[codex:510870] I need to make sure I read the entire AUDIT_BUNDLE carefully before analyzing. Since the previous output was truncated, I'll explore the contracts folder directly and view the Contract.sol file in sections using tools like sed and ripgrep to get the full content for vulnerability analysis.
[codex:510870] exec
[codex:510870] /bin/bash -lc 'rg -n "contract" contracts/Contract.sol' in /tmp/codex-multi-v651rhhp succeeded in 7ms:
[codex:510870] 1:// File: @chainlink/contracts/src/v0.6/interfaces/AggregatorV3Interface.sol
[codex:510870] 37:// File: @openzeppelin/contracts/math/SafeMath.sol
[codex:510870] 118: // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
[codex:510870] 199:// File: @openzeppelin/contracts/token/ERC20/IERC20.sol
[codex:510870] 277:// File: @openzeppelin/contracts/utils/Address.sol
[codex:510870] 286: * @dev Returns true if `account` is a contract.
[codex:510870] 291: * false is an externally-owned account (EOA) and not a contract.
[codex:510870] 297: * - a contract in construction
[codex:510870] 298: * - an address where a contract will be created
[codex:510870] 299: * - an address where a contract lived, but was destroyed
[codex:510870] 303: // This method relies in extcodesize, which returns 0 for contracts in
[codex:510870] 318: * of certain opcodes, possibly making contracts go over the 2300 gas limit
[codex:510870] 350: * - `target` must be a contract.
[codex:510870] 375: * - the calling contract must have an ETH balance of at least `value`.
[codex:510870] 396: require(isContract(target), "Address: call to non-contract");
[codex:510870] 419:// File: @openzeppelin/contracts/token/ERC20/SafeERC20.sol
[codex:510870] 429: * contract returns false). Tokens that return no value (and instead revert or
[codex:510870] 432: * To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract,
[codex:510870] 476: * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement
[codex:510870] 484: // the target address contains contract code and also asserts for success in the low-level call.
[codex:510870]
[codex:510870] thinking
[codex:510870] **Extracting contract section around oneBTC**
[codex:510870] exec
[codex:510870] /bin/bash -lc "sed -n '960,1723p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-v651rhhp succeeded in 5ms:
[codex:510870] }
[codex:510870]
[codex:510870] // File: contracts/oneBTC.sol
[codex:510870]
[codex:510870] pragma solidity ^0.6.0;
[codex:510870]
[codex:510870]
[codex:510870]
[codex:510870]
[codex:510870]
[codex:510870]
[codex:510870]
[codex:510870] interface IUniswapOracle {
[codex:510870] // We need the current prices of just about everything for the system to work!
[codex:510870] //
[codex:510870] // Return the average time weighted price of oneBTC (the Bitcoin stable coin),
[codex:510870] // the collateral (USDC, DAI, etc), and the cryptocurrencies (BTC, BTC, etc).
[codex:510870] // This includes functions for changing the time interval for average,
[codex:510870] // updating the oracle price, and returning the current price.
[codex:510870] function changeInterval(uint256 seconds_) external;
[codex:510870]
[codex:510870] thinking
[codex:510870] **Analyzing oneBTC contract for vulnerabilities**
[codex:510870] exec
[codex:510870] /bin/bash -lc 'rg -n "ethPrice" -n contracts/Contract.sol' in /tmp/codex-multi-v651rhhp succeeded in 7ms:
[codex:510870] 1005: AggregatorV3Interface internal ethPrice;
[codex:510870] 1460: ethPrice = AggregatorV3Interface(ethOracleChainLink_);
[codex:510870]
[codex:510870]
[codex:510870] thinking
[codex:510870] **Analyzing potential vulnerabilities in governance-controlled functions**
[codex:510870] thinking
[codex:510870] **Identifying oracle and configuration risks with access control**
[codex:510870]
[codex:510870] I’m looking closely at how oracle data is used without strict validation—like Chainlink prices potentially negative or stale—and how some governance-controlled settings might enable undercollateralized minting if misconfigured. The interplay of oracle calls during token transfers and updates poses risks around stale data, denial of service, or price manipulation, but many depend on governance trust and careful parameter setup.
[codex:510870] exec
[codex:510870] /bin/bash -lc 'rg -n "oneBTC" -n contracts' in /tmp/codex-multi-v651rhhp succeeded in 9ms:
[codex:510870] contracts/Contract.sol:957:// File: contracts/oneBTC.sol
[codex:510870] contracts/Contract.sol:970: // Return the average time weighted price of oneBTC (the Bitcoin stable coin),
[codex:510870] contracts/Contract.sol:979:contract oneBTC is ERC20("oneBTC", "oneBTC"), Ownable, ReentrancyGuard {
[codex:510870] contracts/Contract.sol:980: // oneBTC is the first fractionally backed stable coin that is especially designed for
[codex:510870] contracts/Contract.sol:982: // to mint new oneBTC. The Ethereum community will govern this BTC treasury, spending it
[codex:510870] contracts/Contract.sol:983: // on public goods, to re-collateralize oneBTC, or on discount and perks for consumers to
[codex:510870] contracts/Contract.sol:984: // adopt oneBTC or BTC.
[codex:510870] contracts/Contract.sol:992: // At 100% reserve ratio, each oneBTC is backed 1-to-1 by $1 of existing stable coins
[codex:510870] contracts/Contract.sol:998: address public stimulus; // oneBTC builds a stimulus fund in BTC.
[codex:510870] contracts/Contract.sol:1002: // will provide Oracle prices for oneBTC, oneBTC, etc in the future. For now, we will get those
[codex:510870] contracts/Contract.sol:1008: address public oneTokenOracle; // oracle for the oneBTC stable coin
[codex:510870] contracts/Contract.sol:1096: // fee to charge when minting oneBTC - this will go into collateral
[codex:510870] contracts/Contract.sol:1098: // fee to charge when redeeming oneBTC - this will go into collateral
[codex:510870] contracts/Contract.sol:1101: // set governance access to only oneBTC - BTC pool multisig (elected after rewards)
[codex:510870] contracts/Contract.sol:1113: mapping (address => uint256) private _burnedStablecoin; // maps user to burned oneBTC
[codex:510870] contracts/Contract.sol:1180: // return price of oneBTC in 10 ** 9 decimal
[codex:510870] contracts/Contract.sol:1194: * @return The total number of oneBTC.
[codex:510870] contracts/Contract.sol:1218: // oracle asset for collateral (oneBTC is BTC, oneWHBAR is WHBAR, etc...)
[codex:510870] contracts/Contract.sol:1434: // tokenSymbol: oneBTC etc...
[codex:510870] contracts/Contract.sol:1530: // calculates how much you will need to send in order to mint oneBTC, depending on current market prices + reserve ratio
[codex:510870]
[codex:510870] thinking
[codex:510870] **Identifying line numbers for findings**
[codex:510870] exec
[codex:510870] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1290,1385p'" in /tmp/codex-multi-v651rhhp succeeded in 6ms:
[codex:510870] 1290 * increaseAllowance and decreaseAllowance should be used instead.
[codex:510870] 1291 * Changing an allowance with this method brings the risk that someone may transfer both
[codex:510870] 1292 * the old and the new allowance - if they are both greater than zero - if a transfer
[codex:510870] 1293 * transaction is mined before the later approve() call is mined.
[codex:510870] 1294 *
[codex:510870] 1295 * @param spender The address which will spend the funds.
[codex:510870] 1296 * @param value The amount of tokens to be spent.
[codex:510870] 1297 */
[codex:510870] 1298 function approve(address spender, uint256 value)
[codex:510870] 1299 public
[codex:510870] 1300 override
[codex:510870] 1301 validRecipient(spender)
[codex:510870] 1302 updateProtocol()
[codex:510870] 1303 returns (bool)
[codex:510870] 1304 {
[codex:510870] 1305 _allowedOne[msg.sender][spender] = value;
[codex:510870] 1306 emit Approval(msg.sender, spender, value);
[codex:510870] 1307 return true;
[codex:510870] 1308 }
[codex:510870] 1309
[codex:510870]
[codex:510870] thinking
[codex:510870] **Reviewing code from line 1381**
[codex:510870] exec
[codex:510870] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1380,1445p'" in /tmp/codex-multi-v651rhhp succeeded in 6ms:
[codex:510870] 1380 // returns $Z / Stimulus
[codex:510870] 1381 function getStimulusOracle()
[codex:510870] 1382 public
[codex:510870] 1383 view
[codex:510870] 1384 returns (uint256)
[codex:510870] 1385 {
[codex:510870] 1386 if (chainLink) {
[codex:510870] 1387 (
[codex:510870] 1388 uint80 roundID,
[codex:510870] 1389 int price,
[codex:510870] 1390 uint startedAt,
[codex:510870] 1391 uint timeStamp,
[codex:510870] 1392 uint80 answeredInRound
[codex:510870] 1393 ) = chainlinkStimulusOracle.latestRoundData();
[codex:510870] 1394
[codex:510870] 1395 require(timeStamp > 0, "Rounds not complete");
[codex:510870] 1396
[codex:510870] 1397 return uint256(price).mul(10); // 10 ** 9 price
[codex:510870] 1398 } else {
[codex:510870] 1399 // stimulusTWAP has `stimulusDecimals` decimals
[codex:510870]
[codex:510870] thinking
[codex:510870] **Inspecting Chainlink validation and consultOneDeposit**
[codex:510870] exec
[codex:510870] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1510,1585p'" in /tmp/codex-multi-v651rhhp succeeded in 7ms:
[codex:510870] 1510 function setPendingGov(address pendingGov_)
[codex:510870] 1511 external
[codex:510870] 1512 onlyIchiGov
[codex:510870] 1513 {
[codex:510870] 1514 address oldPendingGov = pendingGov;
[codex:510870] 1515 pendingGov = pendingGov_;
[codex:510870] 1516 emit NewPendingGov(oldPendingGov, pendingGov_);
[codex:510870] 1517 }
[codex:510870] 1518
[codex:510870] 1519 function acceptGov()
[codex:510870] 1520 external
[codex:510870] 1521 {
[codex:510870] 1522 require(msg.sender == pendingGov, "!pending");
[codex:510870] 1523 address oldGov = gov;
[codex:510870] 1524 gov = pendingGov;
[codex:510870] 1525 pendingGov = address(0);
[codex:510870] 1526 emit NewGov(oldGov, gov);
[codex:510870] 1527 }
[codex:510870] 1528 // ======================================================
[codex:510870] 1529
[codex:510870]
[codex:510870] thinking
[codex:510870] **Analyzing potential configuration risks**
[codex:510870] exec
[codex:510870] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1030,1125p'" in /tmp/codex-multi-v651rhhp succeeded in 6ms:
[codex:510870] 1030 address public wethAddress;
[codex:510870] 1031 address public ethUsdcUniswapOracle;
[codex:510870] 1032 address public gov;
[codex:510870] 1033 // allows you to transfer the governance to a different user - they must accept it!
[codex:510870] 1034 address public pendingGov;
[codex:510870] 1035 uint256 public reserveStepSize; // step size of update of reserve rate (e.g. 5 * 10 ** 8 = 0.5%)
[codex:510870] 1036 uint256 public reserveRatio; // a number between 0 and 100 * 10 ** 9.
[codex:510870] 1037 // 0 = 0%
[codex:510870] 1038 // 100 * 10 ** 9 = 100%
[codex:510870] 1039
[codex:510870] 1040 // map of acceptable collaterals
[codex:510870] 1041 mapping (address => bool) public acceptedCollateral;
[codex:510870] 1042 address[] public collateralArray;
[codex:510870] 1043
[codex:510870] 1044 // modifier to allow auto update of TWAP oracle prices
[codex:510870] 1045 // also updates reserves rate programatically
[codex:510870] 1046 modifier updateProtocol() {
[codex:510870] 1047 if (address(oneTokenOracle) != address(0)) {
[codex:510870] 1048 // only update if stimulusOracle is set
[codex:510870] 1049 if (!chainLink) IUniswapOracle(stimulusOracle).update();
[codex:510870]
[codex:510870] thinking
[codex:510870] **Analyzing oracle and update vulnerabilities**
[codex:510870] exec
[codex:510870] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1160,1235p'" in /tmp/codex-multi-v651rhhp succeeded in 6ms:
[codex:510870] 1160 // returns 10 ** 9 price of collateral
[codex:510870] 1161 function getCollateralUsd(address collateral_) public view returns (uint256) {
[codex:510870] 1162 require(previouslySeenCollateral[collateral_], "must be an existing collateral");
[codex:510870] 1163 uint256 ethUsdcTWAP = IUniswapOracle(ethUsdcUniswapOracle).consult(wethAddress, 1 * 10 ** 18); // 1 ETH = X USDC (10 ^ 6 decimals)
[codex:510870] 1164 return ethUsdcTWAP.mul(10 ** 3).mul(10 ** 9).div((IUniswapOracle(collateralOracle[collateral_]).consult(wethAddress, 10 ** 18)).mul(10 ** 9).div(10 ** collateralDecimals[collateral_]));
[codex:510870] 1165 }
[codex:510870] 1166
[codex:510870] 1167 function globalCollateralValue() public view returns (uint256) {
[codex:510870] 1168 uint256 totalCollateralUsd = 0;
[codex:510870] 1169
[codex:510870] 1170 for (uint i = 0; i < collateralArray.length; i++){
[codex:510870] 1171 // Exclude null addresses
[codex:510870] 1172 if (collateralArray[i] != address(0)){
[codex:510870] 1173 totalCollateralUsd += IERC20(collateralArray[i]).balanceOf(address(this)).mul(10 ** 9).div(10 ** collateralDecimals[collateralArray[i]]).mul(getCollateralUsd(collateralArray[i])).div(10 ** 9); // add stablecoin balance
[codex:510870] 1174 }
[codex:510870] 1175
[codex:510870] 1176 }
[codex:510870] 1177 return totalCollateralUsd;
[codex:510870] 1178 }
[codex:510870] 1179
[codex:510870]
[codex:510870] thinking
[codex:510870] **Analyzing potential vulnerabilities and oracle risks**
[codex:510870]
[codex:510870] I'm evaluating possible issues including rounding that might let tiny free mints, risks from frequent oracle updates triggered by user actions allowing TWAP manipulation, missing validation of Chainlink oracle data leading to stale or negative prices, and the risk of ERC20 transfers being blocked if oracle calls revert—each of these presents different exploitable or design vulnerabilities worth reporting.
[codex:510870] exec
[codex:510870] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1228,1285p'" in /tmp/codex-multi-v651rhhp succeeded in 6ms:
[codex:510870] 1228 }
[codex:510870] 1229
[codex:510870] 1230 /**
[codex:510870] 1231 * @dev Transfer tokens to a specified address.
[codex:510870] 1232 * @param to The address to transfer to.
[codex:510870] 1233 * @param value The amount to be transferred.
[codex:510870] 1234 * @return True on success, false otherwise.
[codex:510870] 1235 */
[codex:510870] 1236 function transfer(address to, uint256 value)
[codex:510870] 1237 public
[codex:510870] 1238 override
[codex:510870] 1239 validRecipient(to)
[codex:510870] 1240 updateProtocol()
[codex:510870] 1241 returns (bool)
[codex:510870] 1242 {
[codex:510870] 1243 _oneBalances[msg.sender] = _oneBalances[msg.sender].sub(value);
[codex:510870] 1244 _oneBalances[to] = _oneBalances[to].add(value);
[codex:510870] 1245 emit Transfer(msg.sender, to, value);
[codex:510870] 1246
[codex:510870] 1247 return true;
[codex:510870]
[codex:510870] thinking
[codex:510870] **Preparing detailed vulnerability findings and JSON output**
[codex:510870] codex
[codex:510870] {"no_findings":false,"summary":"Found 2 medium-risk oracle issues: Chainlink feed validation is incomplete, and Uniswap TWAPs are used directly without freshness/manipulation safeguards, affecting mint/withdraw pricing and reserve updates.","findings":[{"severity":"medium","category":"oracle","title":"Chainlink oracle response not validated for freshness/positivity","exploit_scenario":"If the Chainlink feed returns stale data or a negative/zero price, `getStimulusOracle()` casts the value to `uint256` and accepts it. This can make the stimulus price effectively enormous (on negative cast) or stale, allowing attackers to mint oneBTC with materially less stimulus than intended and later redeem at normal rates, draining collateral when the feed recovers.","recommendation":"Validate oracle data: require `price > 0`, `answeredInRound >= roundID`, and `timeStamp` within a max staleness window. Use `decimals()` to scale rather than hard-coded multiplication.","evidence":"`getStimulusOracle()` only checks `timeStamp > 0` and casts `price` to `uint256` without verifying positivity or answeredInRound freshness.","locations":["contracts/Contract.sol:1386"]},{"severity":"medium","category":"oracle","title":"Uniswap TWAP pricing used without freshness/manipulation checks","exploit_scenario":"Minting, withdrawals, and reserve-ratio updates rely directly on Uniswap oracle `consult()` results. An attacker who can skew the Uniswap price around an oracle update (especially if the TWAP interval is short) can temporarily distort `getCollateralUsd()`/`getOneTokenUsd()` and then mint under-collateralized oneBTC or redeem for excess collateral, draining reserves.","recommendation":"Enforce minimum TWAP windows and reject oracle data if the last update is too recent or too old. Add sanity bounds (e.g., compare to Chainlink/reference feeds) and circuit breakers to prevent extreme deviations from being used for mint/withdraw calculations.","evidence":"Pricing paths use `consult()` directly for collateral and oneBTC valuation, and `updateProtocol()` triggers oracle updates without validating resulting price freshness or deviation.","locations":["contracts/Contract.sol:1046","contracts/Contract.sol:1161","contracts/Contract.sol:1186"]}]}
[codex:510870] tokens used
[codex:510870] 83,529
[codex:510870] {"no_findings":false,"summary":"Found 2 medium-risk oracle issues: Chainlink feed validation is incomplete, and Uniswap TWAPs are used directly without freshness/manipulation safeguards, affecting mint/withdraw pricing and reserve updates.","findings":[{"severity":"medium","category":"oracle","title":"Chainlink oracle response not validated for freshness/positivity","exploit_scenario":"If the Chainlink feed returns stale data or a negative/zero price, `getStimulusOracle()` casts the value to `uint256` and accepts it. This can make the stimulus price effectively enormous (on negative cast) or stale, allowing attackers to mint oneBTC with materially less stimulus than intended and later redeem at normal rates, draining collateral when the feed recovers.","recommendation":"Validate oracle data: require `price > 0`, `answeredInRound >= roundID`, and `timeStamp` within a max staleness window. Use `decimals()` to scale rather than hard-coded multiplication.","evidence":"`getStimulusOracle()` only checks `timeStamp > 0` and casts `price` to `uint256` without verifying positivity or answeredInRound freshness.","locations":["contracts/Contract.sol:1386"]},{"severity":"medium","category":"oracle","title":"Uniswap TWAP pricing used without freshness/manipulation checks","exploit_scenario":"Minting, withdrawals, and reserve-ratio updates rely directly on Uniswap oracle `consult()` results. An attacker who can skew the Uniswap price around an oracle update (especially if the TWAP interval is short) can temporarily distort `getCollateralUsd()`/`getOneTokenUsd()` and then mint under-collateralized oneBTC or redeem for excess collateral, draining reserves.","recommendation":"Enforce minimum TWAP windows and reject oracle data if the last update is too recent or too old. Add sanity bounds (e.g., compare to Chainlink/reference feeds) and circuit breakers to prevent extreme deviations from being used for mint/withdraw calculations.","evidence":"Pricing paths use `consult()` directly for collateral and oneBTC valuation, and `updateProtocol()` triggers oracle updates without validating resulting price freshness or deviation.","locations":["contracts/Contract.sol:1046","contracts/Contract.sol:1161","contracts/Contract.sol:1186"]}]}
{
"codex": {
"ran_at": "2025-12-29T15:27:54.073231+00:00",
"returncode": 0
},
"summary": "Found 2 medium-risk oracle issues: Chainlink feed validation is incomplete, and Uniswap TWAPs are used directly without freshness/manipulation safeguards, affecting mint/withdraw pricing and reserve updates.",
"raw_final": {
"summary": "Found 2 medium-risk oracle issues: Chainlink feed validation is incomplete, and Uniswap TWAPs are used directly without freshness/manipulation safeguards, affecting mint/withdraw pricing and reserve updates.",
"findings": [
{
"title": "Chainlink oracle response not validated for freshness/positivity",
"category": "oracle",
"evidence": "`getStimulusOracle()` only checks `timeStamp > 0` and casts `price` to `uint256` without verifying positivity or answeredInRound freshness.",
"severity": "medium",
"locations": [
"contracts/Contract.sol:1386"
],
"recommendation": "Validate oracle data: require `price > 0`, `answeredInRound >= roundID`, and `timeStamp` within a max staleness window. Use `decimals()` to scale rather than hard-coded multiplication.",
"exploit_scenario": "If the Chainlink feed returns stale data or a negative/zero price, `getStimulusOracle()` casts the value to `uint256` and accepts it. This can make the stimulus price effectively enormous (on negative cast) or stale, allowing attackers to mint oneBTC with materially less stimulus than intended and later redeem at normal rates, draining collateral when the feed recovers."
},
{
"title": "Uniswap TWAP pricing used without freshness/manipulation checks",
"category": "oracle",
"evidence": "Pricing paths use `consult()` directly for collateral and oneBTC valuation, and `updateProtocol()` triggers oracle updates without validating resulting price freshness or deviation.",
"severity": "medium",
"locations": [
"contracts/Contract.sol:1046",
"contracts/Contract.sol:1161",
"contracts/Contract.sol:1186"
],
"recommendation": "Enforce minimum TWAP windows and reject oracle data if the last update is too recent or too old. Add sanity bounds (e.g., compare to Chainlink/reference feeds) and circuit breakers to prevent extreme deviations from being used for mint/withdraw calculations.",
"exploit_scenario": "Minting, withdrawals, and reserve-ratio updates rely directly on Uniswap oracle `consult()` results. An attacker who can skew the Uniswap price around an oracle update (especially if the TWAP interval is short) can temporarily distort `getCollateralUsd()`/`getOneTokenUsd()` and then mint under-collateralized oneBTC or redeem for excess collateral, draining reserves."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x03f9 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x7dbe5f10 00000019: GT 0000001a: PUSH2 0x0213 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xc99d3a06 00000024: GT 00000025: PUSH2 0x0123 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xe9144e73 0000002f: GT 00000030: PUSH2 0x00ab 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xf196d018 0000003a: GT 0000003b: PUSH2 0x007a 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xf196d018 00000045: EQ 00000046: PUSH2 0x0e24 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xf1ae3c7f 00000050: EQ 00000051: PUSH2 0x0e57 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf2fde38b 0000005b: EQ 0000005c: PUSH2 0x0e8a 0000005f: JUMPI 00000060: DUP1 00000061: PUSH4 0xf6cad255 00000066: EQ 00000067: PUSH2 0x0ebd 0000006a: JUMPI 0000006b: DUP1 0000006c: PUSH4 0xfdec254f 00000071: EQ 00000072: PUSH2 0x0ef0 00000075: JUMPI 00000076: PUSH2 0x03f9 00000079: JUMP 0000007a: JUMPDEST 0000007b: DUP1 0000007c: PUSH4 0xe9144e73 00000081: EQ 00000082: PUSH2 0x0d7f 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xe941fa78 0000008c: EQ 0000008d: PUSH2 0x0db2 00000090: JUMPI 00000091: DUP1 00000092: PUSH4 0xeb7afed0 00000097: EQ 00000098: PUSH2 0x0dc7 0000009b: JUMPI 0000009c: DUP1 0000009d: PUSH4 0xefdf0bb0 000000a2: EQ 000000a3: PUSH2 0x0df1 000000a6: JUMPI 000000a7: PUSH2 0x03f9 000000aa: JUMP 000000ab: JUMPDEST 000000ac: DUP1 000000ad: PUSH4 0xd494d586 000000b2: GT 000000b3: PUSH2 0x00f2 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xd494d586 000000bd: EQ 000000be: PUSH2 0x0c9f 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xda2b9bfa 000000c8: EQ 000000c9: PUSH2 0x0cd2 000000cc: JUMPI 000000cd: DUP1 000000ce: PUSH4 0xdd62ed3e 000000d3: EQ 000000d4: PUSH2 0x0ce7 000000d7: JUMPI 000000d8: DUP1 000000d9: PUSH4 0xe2b11a64 000000de: EQ 000000df: PUSH2 0x0d22 000000e2: JUMPI 000000e3: DUP1 000000e4: PUSH4 0xe56df6c6 000000e9: EQ 000000ea: PUSH2 0x0d55 000000ed: JUMPI 000000ee: PUSH2 0x03f9 000000f1: JUMP 000000f2: JUMPDEST 000000f3: DUP1 000000f4: PUSH4 0xc99d3a06 000000f9: EQ 000000fa: PUSH2 0x0c18 000000fd: JUMPI 000000fe: DUP1 000000ff: PUSH4 0xca7f171a 00000104: EQ 00000105: PUSH2 0x0c4b 00000108: JUMPI 00000109: DUP1 0000010a: PUSH4 0xce72d8fd 0000010f: EQ 00000110: PUSH2 0x0c75 00000113: JUMPI 00000114: DUP1 00000115: PUSH4 0xd2d97b06 0000011a: EQ 0000011b: PUSH2 0x0c8a 0000011e: JUMPI 0000011f: PUSH2 0x03f9 00000122: JUMP 00000123: JUMPDEST 00000124: DUP1 00000125: PUSH4 0x95d89b41 0000012a: GT 0000012b: PUSH2 0x01a6 0000012e: JUMPI 0000012f: DUP1 00000130: PUSH4 0xa457c2d7 00000135: GT 00000136: PUSH2 0x0175 00000139: JUMPI 0000013a: DUP1 0000013b: PUSH4 0xa457c2d7 00000140: EQ 00000141: PUSH2 0x0b00 00000144: JUMPI 00000145: DUP1 00000146: PUSH4 0xa9059cbb 0000014b: EQ 0000014c: PUSH2 0x0b39 0000014f: JUMPI 00000150: DUP1 00000151: PUSH4 0xb37c5515 00000156: EQ 00000157: PUSH2 0x0b72 0000015a: JUMPI 0000015b: DUP1 0000015c: PUSH4 0xc072ea43 00000161: EQ 00000162: PUSH2 0x0bb5 00000165: JUMPI 00000166: DUP1 00000167: PUSH4 0xc522e74f 0000016c: EQ 0000016d: PUSH2 0x0bee 00000170: JUMPI 00000171: PUSH2 0x03f9 00000174: JUMP 00000175: JUMPDEST 00000176: DUP1 00000177: PUSH4 0x95d89b41 0000017c: EQ 0000017d: PUSH2 0x0aac 00000180: JUMPI 00000181: DUP1 00000182: PUSH4 0x99b16efd 00000187: EQ 00000188: PUSH2 0x0ac1 0000018b: JUMPI 0000018c: DUP1 0000018d: PUSH4 0x9bf74519 00000192: EQ 00000193: PUSH2 0x0ad6 00000196: JUMPI 00000197: DUP1 00000198: PUSH4 0x9f81aed7 0000019d: EQ 0000019e: PUSH2 0x0aeb 000001a1: JUMPI 000001a2: PUSH2 0x03f9 000001a5: JUMP 000001a6: JUMPDEST 000001a7: DUP1 000001a8: PUSH4 0x8da5cb5b 000001ad: GT 000001ae: PUSH2 0x01e2 000001b1: JUMPI 000001b2: DUP1 000001b3: PUSH4 0x8da5cb5b 000001b8: EQ 000001b9: PUSH2 0x0a41 000001bc: JUMPI 000001bd: DUP1 000001be: PUSH4 0x8fe605ad 000001c3: EQ 000001c4: PUSH2 0x0a56 000001c7: JUMPI 000001c8: DUP1 000001c9: PUSH4 0x93fab9ee 000001ce: EQ 000001cf: PUSH2 0x0a6b 000001d2: JUMPI 000001d3: DUP1 000001d4: PUSH4 0x94bf804d 000001d9: EQ 000001da: PUSH2 0x0a80 000001dd: JUMPI 000001de: PUSH2 0x03f9 000001e1: JUMP 000001e2: JUMPDEST 000001e3: DUP1 000001e4: PUSH4 0x7dbe5f10 000001e9: EQ 000001ea: PUSH2 0x09ba 000001ed: JUMPI 000001ee: DUP1 000001ef: PUSH4 0x8028faa2 000001f4: EQ 000001f5: PUSH2 0x09cf 000001f8: JUMPI 000001f9: DUP1 000001fa: PUSH4 0x84233707 000001ff: EQ 00000200: PUSH2 0x09f9 00000203: JUMPI 00000204: DUP1 00000205: PUSH4 0x89a604eb 0000020a: EQ 0000020b: PUSH2 0x0a2c 0000020e: JUMPI 0000020f: PUSH2 0x03f9 00000212: JUMP 00000213: JUMPDEST 00000214: DUP1 00000215: PUSH4 0x25bbfee2 0000021a: GT 0000021b: PUSH2 0x030e 0000021e: JUMPI 0000021f: DUP1 00000220: PUSH4 0x54588637 00000225: GT 00000226: PUSH2 0x02a1 00000229: JUMPI 0000022a: DUP1 0000022b: PUSH4 0x75e8ef5c 00000230: GT 00000231: PUSH2 0x0270 00000234: JUMPI 00000235: DUP1 00000236: PUSH4 0x75e8ef5c 0000023b: EQ 0000023c: PUSH2 0x08d6 0000023f: JUMPI 00000240: DUP1 00000241: PUSH4 0x77be2f14 00000246: EQ 00000247: PUSH2 0x0900 0000024a: JUMPI 0000024b: DUP1 0000024c: PUSH4 0x7bc6729b 00000251: EQ 00000252: PUSH2 0x0933 00000255: JUMPI 00000256: DUP1 00000257: PUSH4 0x7c365e1b 0000025c: EQ 0000025d: PUSH2 0x0948 00000260: JUMPI 00000261: DUP1 00000262: PUSH4 0x7c4368c1 00000267: EQ 00000268: PUSH2 0x0981 0000026b: JUMPI 0000026c: PUSH2 0x03f9 0000026f: JUMP 00000270: JUMPDEST 00000271: DUP1 00000272: PUSH4 0x54588637 00000277: EQ 00000278: PUSH2 0x0846 0000027b: JUMPI 0000027c: DUP1 0000027d: PUSH4 0x6ca2fc1b 00000282: EQ 00000283: PUSH2 0x085b 00000286: JUMPI 00000287: DUP1 00000288: PUSH4 0x70a08231 0000028d: EQ 0000028e: PUSH2 0x088e 00000291: JUMPI 00000292: DUP1 00000293: PUSH4 0x715018a6 00000298: EQ 00000299: PUSH2 0x08c1 0000029c: JUMPI 0000029d: PUSH2 0x03f9 000002a0: JUMP 000002a1: JUMPDEST 000002a2: DUP1 000002a3: PUSH4 0x39509351 000002a8: GT 000002a9: PUSH2 0x02dd 000002ac: JUMPI 000002ad: DUP1 000002ae: PUSH4 0x39509351 000002b3: EQ 000002b4: PUSH2 0x07ce 000002b7: JUMPI 000002b8: DUP1 000002b9: PUSH4 0x491547f5 000002be: EQ 000002bf: PUSH2 0x0807 000002c2: JUMPI 000002c3: DUP1 000002c4: PUSH4 0x4d7efed7 000002c9: EQ 000002ca: PUSH2 0x081c 000002cd: JUMPI 000002ce: DUP1 000002cf: PUSH4 0x4f0e0ef3 000002d4: EQ 000002d5: PUSH2 0x0831 000002d8: JUMPI 000002d9: PUSH2 0x03f9 000002dc: JUMP 000002dd: JUMPDEST 000002de: DUP1 000002df: PUSH4 0x25bbfee2 000002e4: EQ 000002e5: PUSH2 0x0728 000002e8: JUMPI 000002e9: DUP1 000002ea: PUSH4 0x29e85c1f 000002ef: EQ 000002f0: PUSH2 0x075b 000002f3: JUMPI 000002f4: DUP1 000002f5: PUSH4 0x2e3d4807 000002fa: EQ 000002fb: PUSH2 0x078e 000002fe: JUMPI 000002ff: DUP1 00000300: PUSH4 0x313ce567 00000305: EQ 00000306: PUSH2 0x07a3 00000309: JUMPI 0000030a: PUSH2 0x03f9 0000030d: JUMP 0000030e: JUMPDEST 0000030f: DUP1 00000310: PUSH4 0x13966db5 00000315: GT 00000316: PUSH2 0x0391 00000319: JUMPI 0000031a: DUP1 0000031b: PUSH4 0x1cf3cf31 00000320: GT 00000321: PUSH2 0x0360 00000324: JUMPI 00000325: DUP1 00000326: PUSH4 0x1cf3cf31 0000032b: EQ 0000032c: PUSH2 0x0636 0000032f: JUMPI 00000330: DUP1 00000331: PUSH4 0x23b872dd 00000336: EQ 00000337: PUSH2 0x0688 0000033a: JUMPI 0000033b: DUP1 0000033c: PUSH4 0x23e6f5e2 00000341: EQ 00000342: PUSH2 0x06cb 00000345: JUMPI 00000346: DUP1 00000347: PUSH4 0x24552f33 0000034c: EQ 0000034d: PUSH2 0x06fe 00000350: JUMPI 00000351: DUP1 00000352: PUSH4 0x25240810 00000357: EQ 00000358: PUSH2 0x0713 0000035b: JUMPI 0000035c: PUSH2 0x03f9 0000035f: JUMP 00000360: JUMPDEST 00000361: DUP1 00000362: PUSH4 0x13966db5 00000367: EQ 00000368: PUSH2 0x05bc 0000036b: JUMPI 0000036c: DUP1 0000036d: PUSH4 0x1432e810 00000372: EQ 00000373: PUSH2 0x05d1 00000376: JUMPI 00000377: DUP1 00000378: PUSH4 0x17d33845 0000037d: EQ 0000037e: PUSH2 0x060c 00000381: JUMPI 00000382: DUP1 00000383: PUSH4 0x18160ddd 00000388: EQ 00000389: PUSH2 0x0621 0000038c: JUMPI 0000038d: PUSH2 0x03f9 00000390: JUMP 00000391: JUMPDEST 00000392: DUP1 00000393: PUSH4 0x0c7d5cd8 00000398: GT 00000399: PUSH2 0x03cd 0000039c: JUMPI 0000039d: DUP1 0000039e: PUSH4 0x0c7d5cd8 000003a3: EQ 000003a4: PUSH2 0x053a 000003a7: JUMPI 000003a8: DUP1 000003a9: PUSH4 0x0ed2dff0 000003ae: EQ 000003af: PUSH2 0x0561 000003b2: JUMPI 000003b3: DUP1 000003b4: PUSH4 0x1190016c 000003b9: EQ 000003ba: PUSH2 0x0592 000003bd: JUMPI 000003be: DUP1 000003bf: PUSH4 0x12d43a51 000003c4: EQ 000003c5: PUSH2 0x05a7 000003c8: JUMPI 000003c9: PUSH2 0x03f9 000003cc: JUMP 000003cd: JUMPDEST 000003ce: DUP1 000003cf: PUSH3 0xf714ce 000003d3: EQ 000003d4: PUSH2 0x03fe 000003d7: JUMPI 000003d8: DUP1 000003d9: PUSH4 0x06fdde03 000003de: EQ 000003df: PUSH2 0x0439 000003e2: JUMPI 000003e3: DUP1 000003e4: PUSH4 0x095ea7b3 000003e9: EQ 000003ea: PUSH2 0x04c3 000003ed: JUMPI 000003ee: DUP1 000003ef: PUSH4 0x0acac95e 000003f4: EQ 000003f5: PUSH2 0x0510 000003f8: JUMPI 000003f9: JUMPDEST 000003fa: PUSH1 0x00 000003fc: DUP1 000003fd: REVERT 000003fe: JUMPDEST 000003ff: CALLVALUE 00000400: DUP1 00000401: ISZERO 00000402: PUSH2 0x040a 00000405: JUMPI 00000406: PUSH1 0x00 00000408: DUP1 00000409: REVERT 0000040a: JUMPDEST 0000040b: POP 0000040c: PUSH2 0x0437 0000040f: PUSH1 0x04 00000411: DUP1 00000412: CALLDATASIZE 00000413: SUB 00000414: PUSH1 0x40 00000416: DUP2 00000417: LT 00000418: ISZERO 00000419: PUSH2 0x0421 0000041c: JUMPI 0000041d: PUSH1 0x00 0000041f: DUP1 00000420: REVERT 00000421: JUMPDEST 00000422: POP 00000423: DUP1 00000424: CALLDATALOAD 00000425: SWAP1 00000426: PUSH1 0x20 00000428: ADD 00000429: CALLDATALOAD 0000042a: PUSH1 0x01 0000042c: PUSH1 0x01 0000042e: PUSH1 0xa0 00000430: SHL 00000431: SUB 00000432: AND 00000433: PUSH2 0x0f05 00000436: JUMP 00000437: JUMPDEST 00000438: STOP 00000439: JUMPDEST 0000043a: CALLVALUE 0000043b: DUP1 0000043c: ISZERO 0000043d: PUSH2 0x0445 00000440: JUMPI 00000441: PUSH1 0x00 00000443: DUP1 00000444: REVERT 00000445: JUMPDEST 00000446: POP 00000447: PUSH2 0x044e 0000044a: PUSH2 0x139c 0000044d: JUMP 0000044e: JUMPDEST 0000044f: PUSH1 0x40 00000451: DUP1 00000452: MLOAD 00000453: PUSH1 0x20 00000455: DUP1 00000456: DUP3 00000457: MSTORE 00000458: DUP4 00000459: MLOAD 0000045a: DUP2 0000045b: DUP4 0000045c: ADD 0000045d: MSTORE 0000045e: DUP4 0000045f: MLOAD 00000460: SWAP2 00000461: SWAP3 00000462: DUP4 00000463: SWAP3 00000464: SWAP1 00000465: DUP4 00000466: ADD 00000467: SWAP2 00000468: DUP6 00000469: ADD 0000046a: SWAP1 0000046b: DUP1 0000046c: DUP4 0000046d: DUP4 0000046e: PUSH1 0x00 00000470: JUMPDEST 00000471: DUP4 00000472: DUP2 00000473: LT 00000474: ISZERO 00000475: PUSH2 0x0488 00000478: JUMPI 00000479: DUP2 0000047a: DUP2 0000047b: ADD 0000047c: MLOAD 0000047d: DUP4 0000047e: DUP3 0000047f: ADD 00000480: MSTORE 00000481: PUSH1 0x20 00000483: ADD 00000484: PUSH2 0x0470 00000487: JUMP 00000488: JUMPDEST 00000489: POP 0000048a: POP 0000048b: POP 0000048c: POP 0000048d: SWAP1 0000048e: POP 0000048f: SWAP1 00000490: DUP2 00000491: ADD 00000492: SWAP1 00000493: PUSH1 0x1f 00000495: AND 00000496: DUP1 00000497: ISZERO 00000498: PUSH2 0x04b5 0000049b: JUMPI 0000049c: DUP1 0000049d: DUP3 0000049e: SUB 0000049f: DUP1 000004a0: MLOAD 000004a1: PUSH1 0x01 000004a3: DUP4 000004a4: PUSH1 0x20 000004a6: SUB 000004a7: PUSH2 0x0100 000004aa: EXP 000004ab: SUB 000004ac: NOT 000004ad: AND 000004ae: DUP2 000004af: MSTORE 000004b0: PUSH1 0x20 000004b2: ADD 000004b3: SWAP2 000004b4: POP 000004b5: JUMPDEST 000004b6: POP 000004b7: SWAP3 000004b8: POP 000004b9: POP 000004ba: POP 000004bb: PUSH1 0x40 000004bd: MLOAD 000004be: DUP1 000004bf: SWAP2 000004c0: SUB 000004c1: SWAP1 000004c2: RETURN 000004c3: JUMPDEST 000004c4: CALLVALUE 000004c5: DUP1 000004c6: ISZERO 000004c7: PUSH2 0x04cf 000004ca: JUMPI 000004cb: PUSH1 0x00 000004cd: DUP1 000004ce: REVERT 000004cf: JUMPDEST 000004d0: POP 000004d1: PUSH2 0x04fc 000004d4: PUSH1 0x04 000004d6: DUP1 000004d7: CALLDATASIZE 000004d8: SUB 000004d9: PUSH1 0x40 000004db: DUP2 000004dc: LT 000004dd: ISZERO 000004de: PUSH2 0x04e6 000004e1: JUMPI 000004e2: PUSH1 0x00 000004e4: DUP1 000004e5: REVERT 000004e6: JUMPDEST 000004e7: POP 000004e8: PUSH1 0x01 000004ea: PUSH1 0x01 000004ec: PUSH1 0xa0 000004ee: SHL 000004ef: SUB 000004f0: DUP2 000004f1: CALLDATALOAD 000004f2: AND 000004f3: SWAP1 000004f4: PUSH1 0x20 000004f6: ADD 000004f7: CALLDATALOAD 000004f8: PUSH2 0x1433 000004fb: JUMP 000004fc: JUMPDEST 000004fd: PUSH1 0x40 000004ff: DUP1 00000500: MLOAD 00000501: SWAP2 00000502: ISZERO 00000503: ISZERO 00000504: DUP3 00000505: MSTORE 00000506: MLOAD 00000507: SWAP1 00000508: DUP2 00000509: SWAP1 0000050a: SUB 0000050b: PUSH1 0x20 0000050d: ADD 0000050e: SWAP1 0000050f: RETURN 00000510: JUMPDEST 00000511: CALLVALUE 00000512: DUP1 00000513: ISZERO 00000514: PUSH2 0x051c 00000517: JUMPI 00000518: PUSH1 0x00 0000051a: DUP1 0000051b: REVERT 0000051c: JUMPDEST 0000051d: POP 0000051e: PUSH2 0x04fc 00000521: PUSH1 0x04 00000523: DUP1 00000524: CALLDATASIZE 00000525: SUB 00000526: PUSH1 0x20 00000528: DUP2 00000529: LT 0000052a: ISZERO 0000052b: PUSH2 0x0533 0000052e: JUMPI 0000052f: PUSH1 0x00 00000531: DUP1 00000532: REVERT 00000533: JUMPDEST 00000534: POP 00000535: CALLDATALOAD 00000536: PUSH2 0x16f4 00000539: JUMP 0000053a: JUMPDEST 0000053b: CALLVALUE 0000053c: DUP1 0000053d: ISZERO 0000053e: PUSH2 0x0546 00000541: JUMPI 00000542: PUSH1 0x00 00000544: DUP1 00000545: REVERT 00000546: JUMPDEST 00000547: POP 00000548: PUSH2 0x054f 0000054b: PUSH2 0x19e6 0000054e: JUMP 0000054f: JUMPDEST 00000550: PUSH1 0x40 00000552: DUP1 00000553: MLOAD 00000554: SWAP2 00000555: DUP3 00000556: MSTORE 00000557: MLOAD 00000558: SWAP1 00000559: DUP2 0000055a: SWAP1 0000055b: SUB 0000055c: PUSH1 0x20 0000055e: ADD 0000055f: SWAP1 00000560: RETURN 00000561: JUMPDEST 00000562: CALLVALUE 00000563: DUP1 00000564: ISZERO 00000565: PUSH2 0x056d 00000568: JUMPI 00000569: PUSH1 0x00 0000056b: DUP1 0000056c: REVERT 0000056d: JUMPDEST 0000056e: POP 0000056f: PUSH2 0x0576 00000572: PUSH2 0x19ec 00000575: JUMP 00000576: JUMPDEST 00000577: PUSH1 0x40 00000579: DUP1 0000057a: MLOAD 0000057b: PUSH1 0x01 0000057d: PUSH1 0x01 0000057f: PUSH1 0xa0 00000581: SHL 00000582: SUB 00000583: SWAP1 00000584: SWAP3 00000585: AND 00000586: DUP3 00000587: MSTORE 00000588: MLOAD 00000589: SWAP1 0000058a: DUP2 0000058b: SWAP1 0000058c: SUB 0000058d: PUSH1 0x20 0000058f: ADD 00000590: SWAP1 00000591: RETURN 00000592: JUMPDEST 00000593: CALLVALUE 00000594: DUP1 00000595: ISZERO 00000596: PUSH2 0x059e 00000599: JUMPI 0000059a: PUSH1 0x00 0000059c: DUP1 0000059d: REVERT 0000059e: JUMPDEST 0000059f: POP 000005a0: PUSH2 0x054f 000005a3: PUSH2 0x19fb 000005a6: JUMP 000005a7: JUMPDEST 000005a8: CALLVALUE 000005a9: DUP1 000005aa: ISZERO 000005ab: PUSH2 0x05b3 000005ae: JUMPI 000005af: PUSH1 0x00 000005b1: DUP1 000005b2: REVERT 000005b3: JUMPDEST 000005b4: POP 000005b5: PUSH2 0x0576 000005b8: PUSH2 0x1a04 000005bb: JUMP 000005bc: JUMPDEST 000005bd: CALLVALUE 000005be: DUP1 000005bf: ISZERO 000005c0: PUSH2 0x05c8 000005c3: JUMPI 000005c4: PUSH1 0x00 000005c6: DUP1 000005c7: REVERT 000005c8: JUMPDEST 000005c9: POP 000005ca: PUSH2 0x054f 000005cd: PUSH2 0x1a13 000005d0: JUMP 000005d1: JUMPDEST 000005d2: CALLVALUE 000005d3: DUP1 000005d4: ISZERO 000005d5: PUSH2 0x05dd 000005d8: JUMPI 000005d9: PUSH1 0x00 000005db: DUP1 000005dc: REVERT 000005dd: JUMPDEST 000005de: POP 000005df: PUSH2 0x0437 000005e2: PUSH1 0x04 000005e4: DUP1 000005e5: CALLDATASIZE 000005e6: SUB 000005e7: PUSH1 0x40 000005e9: DUP2 000005ea: LT 000005eb: ISZERO 000005ec: PUSH2 0x05f4 000005ef: JUMPI 000005f0: PUSH1 0x00 000005f2: DUP1 000005f3: REVERT 000005f4: JUMPDEST 000005f5: POP 000005f6: PUSH1 0x01 000005f8: PUSH1 0x01 000005fa: PUSH1 0xa0 000005fc: SHL 000005fd: SUB 000005fe: DUP2 000005ff: CALLDATALOAD 00000600: DUP2 00000601: AND 00000602: SWAP2 00000603: PUSH1 0x20 00000605: ADD 00000606: CALLDATALOAD 00000607: AND 00000608: PUSH2 0x1a19 0000060b: JUMP 0000060c: JUMPDEST 0000060d: CALLVALUE 0000060e: DUP1 0000060f: ISZERO 00000610: PUSH2 0x0618 00000613: JUMPI 00000614: PUSH1 0x00 00000616: DUP1 00000617: REVERT 00000618: JUMPDEST 00000619: POP 0000061a: PUSH2 0x054f 0000061d: PUSH2 0x1af6 00000620: JUMP 00000621: JUMPDEST 00000622: CALLVALUE 00000623: DUP1 00000624: ISZERO 00000625: PUSH2 0x062d 00000628: JUMPI 00000629: PUSH1 0x00 0000062b: DUP1 0000062c: REVERT 0000062d: JUMPDEST 0000062e: POP 0000062f: PUSH2 0x054f 00000632: PUSH2 0x1afc 00000635: JUMP 00000636: JUMPDEST 00000637: CALLVALUE 00000638: DUP1 00000639: ISZERO 0000063a: PUSH2 0x0642 0000063d: JUMPI 0000063e: PUSH1 0x00 00000640: DUP1 00000641: REVERT 00000642: JUMPDEST 00000643: POP 00000644: PUSH2 0x066f 00000647: PUSH1 0x04 00000649: DUP1 0000064a: CALLDATASIZE 0000064b: SUB 0000064c: PUSH1 0x40 0000064e: DUP2 0000064f: LT 00000650: ISZERO 00000651: PUSH2 0x0659 00000654: JUMPI 00000655: PUSH1 0x00 00000657: DUP1 00000658: REVERT 00000659: JUMPDEST 0000065a: POP 0000065b: DUP1 0000065c: CALLDATALOAD 0000065d: SWAP1 0000065e: PUSH1 0x20 00000660: ADD 00000661: CALLDATALOAD 00000662: PUSH1 0x01 00000664: PUSH1 0x01 00000666: PUSH1 0xa0 00000668: SHL 00000669: SUB 0000066a: AND 0000066b: PUSH2 0x1b02 0000066e: JUMP 0000066f: JUMPDEST 00000670: PUSH1 0x40 00000672: DUP1 00000673: MLOAD 00000674: SWAP3 00000675: DUP4 00000676: MSTORE 00000677: PUSH1 0x20 00000679: DUP4 0000067a: ADD 0000067b: SWAP2 0000067c: SWAP1 0000067d: SWAP2 0000067e: MSTORE 0000067f: DUP1 00000680: MLOAD 00000681: SWAP2 00000682: DUP3 00000683: SWAP1 00000684: SUB 00000685: ADD 00000686: SWAP1 00000687: RETURN 00000688: JUMPDEST 00000689: CALLVALUE 0000068a: DUP1 0000068b: ISZERO 0000068c: PUSH2 0x0694 0000068f: JUMPI 00000690: PUSH1 0x00 00000692: DUP1 00000693: REVERT 00000694: JUMPDEST 00000695: POP 00000696: PUSH2 0x04fc 00000699: PUSH1 0x04 0000069b: DUP1 0000069c: CALLDATASIZE 0000069d: SUB 0000069e: PUSH1 0x60 000006a0: DUP2 000006a1: LT 000006a2: ISZERO 000006a3: PUSH2 0x06ab 000006a6: JUMPI 000006a7: PUSH1 0x00 000006a9: DUP1 000006aa: REVERT 000006ab: JUMPDEST 000006ac: POP 000006ad: PUSH1 0x01 000006af: PUSH1 0x01 000006b1: PUSH1 0xa0 000006b3: SHL 000006b4: SUB 000006b5: DUP2 000006b6: CALLDATALOAD 000006b7: DUP2 000006b8: AND 000006b9: SWAP2 000006ba: PUSH1 0x20 000006bc: DUP2 000006bd: ADD 000006be: CALLDATALOAD 000006bf: SWAP1 000006c0: SWAP2 000006c1: AND 000006c2: SWAP1 000006c3: PUSH1 0x40 000006c5: ADD 000006c6: CALLDATALOAD 000006c7: PUSH2 0x1c43 000006ca: JUMP 000006cb: JUMPDEST 000006cc: CALLVALUE 000006cd: DUP1 000006ce: ISZERO 000006cf: PUSH2 0x06d7 000006d2: JUMPI 000006d3: PUSH1 0x00 000006d5: DUP1 000006d6: REVERT 000006d7: JUMPDEST 000006d8: POP 000006d9: PUSH2 0x04fc 000006dc: PUSH1 0x04 000006de: DUP1 000006df: CALLDATASIZE 000006e0: SUB 000006e1: PUSH1 0x20 000006e3: DUP2 000006e4: LT 000006e5: ISZERO 000006e6: PUSH2 0x06ee 000006e9: JUMPI 000006ea: PUSH1 0x00 000006ec: DUP1 000006ed: REVERT 000006ee: JUMPDEST 000006ef: POP 000006f0: CALLDATALOAD 000006f1: PUSH1 0x01 000006f3: PUSH1 0x01 000006f5: PUSH1 0xa0 000006f7: SHL 000006f8: SUB 000006f9: AND 000006fa: PUSH2 0x1f84 000006fd: JUMP 000006fe: JUMPDEST 000006ff: CALLVALUE 00000700: DUP1 00000701: ISZERO 00000702: PUSH2 0x070a 00000705: JUMPI 00000706: PUSH1 0x00 00000708: DUP1 00000709: REVERT 0000070a: JUMPDEST 0000070b: POP 0000070c: PUSH2 0x054f 0000070f: PUSH2 0x200c 00000712: JUMP 00000713: JUMPDEST 00000714: CALLVALUE 00000715: DUP1 00000716: ISZERO 00000717: PUSH2 0x071f 0000071a: JUMPI 0000071b: PUSH1 0x00 0000071d: DUP1 0000071e: REVERT 0000071f: JUMPDEST 00000720: POP 00000721: PUSH2 0x0576 00000724: PUSH2 0x2012 00000727: JUMP 00000728: JUMPDEST 00000729: CALLVALUE 0000072a: DUP1 0000072b: ISZERO 0000072c: PUSH2 0x0734 0000072f: JUMPI 00000730: PUSH1 0x00 00000732: DUP1 00000733: REVERT 00000734: JUMPDEST 00000735: POP 00000736: PUSH2 0x0437 00000739: PUSH1 0x04 0000073b: DUP1 0000073c: CALLDATASIZE 0000073d: SUB 0000073e: PUSH1 0x20 00000740: DUP2 00000741: LT 00000742: ISZERO 00000743: PUSH2 0x074b 00000746: JUMPI 00000747: PUSH1 0x00 00000749: DUP1 0000074a: REVERT 0000074b: JUMPDEST 0000074c: POP 0000074d: CALLDATALOAD 0000074e: PUSH1 0x01 00000750: PUSH1 0x01 00000752: PUSH1 0xa0 00000754: SHL 00000755: SUB 00000756: AND 00000757: PUSH2 0x2021 0000075a: JUMP 0000075b: JUMPDEST 0000075c: CALLVALUE 0000075d: DUP1 0000075e: ISZERO 0000075f: PUSH2 0x0767 00000762: JUMPI 00000763: PUSH1 0x00 00000765: DUP1 00000766: REVERT 00000767: JUMPDEST 00000768: POP 00000769: PUSH2 0x04fc 0000076c: PUSH1 0x04 0000076e: DUP1 0000076f: CALLDATASIZE 00000770: SUB 00000771: PUSH1 0x20 00000773: DUP2 00000774: LT 00000775: ISZERO 00000776: PUSH2 0x077e 00000779: JUMPI 0000077a: PUSH1 0x00 0000077c: DUP1 0000077d: REVERT 0000077e: JUMPDEST 0000077f: POP 00000780: CALLDATALOAD 00000781: PUSH1 0x01 00000783: PUSH1 0x01 00000785: PUSH1 0xa0 00000787: SHL 00000788: SUB 00000789: AND 0000078a: PUSH2 0x257f 0000078d: JUMP 0000078e: JUMPDEST 0000078f: CALLVALUE 00000790: DUP1 00000791: ISZERO 00000792: PUSH2 0x079a 00000795: JUMPI 00000796: PUSH1 0x00 00000798: DUP1 00000799: REVERT 0000079a: JUMPDEST 0000079b: POP 0000079c: PUSH2 0x054f 0000079f: PUSH2 0x25f4 000007a2: JUMP 000007a3: JUMPDEST 000007a4: CALLVALUE 000007a5: DUP1 000007a6: ISZERO 000007a7: PUSH2 0x07af 000007aa: JUMPI 000007ab: PUSH1 0x00 000007ad: DUP1 000007ae: REVERT 000007af: JUMPDEST 000007b0: POP 000007b1: PUSH2 0x07b8 000007b4: PUSH2 0x2853 000007b7: JUMP 000007b8: JUMPDEST 000007b9: PUSH1 0x40 000007bb: DUP1 000007bc: MLOAD 000007bd: PUSH1 0xff 000007bf: SWAP1 000007c0: SWAP3 000007c1: AND 000007c2: DUP3 000007c3: MSTORE 000007c4: MLOAD 000007c5: SWAP1 000007c6: DUP2 000007c7: SWAP1 000007c8: SUB 000007c9: PUSH1 0x20 000007cb: ADD 000007cc: SWAP1 000007cd: RETURN 000007ce: JUMPDEST 000007cf: CALLVALUE 000007d0: DUP1 000007d1: ISZERO 000007d2: PUSH2 0x07da 000007d5: JUMPI 000007d6: PUSH1 0x00 000007d8: DUP1 000007d9: REVERT 000007da: JUMPDEST 000007db: POP 000007dc: PUSH2 0x04fc 000007df: PUSH1 0x04 000007e1: DUP1 000007e2: CALLDATASIZE 000007e3: SUB 000007e4: PUSH1 0x40 000007e6: DUP2 000007e7: LT 000007e8: ISZERO 000007e9: PUSH2 0x07f1 000007ec: JUMPI 000007ed: PUSH1 0x00 000007ef: DUP1 000007f0: REVERT 000007f1: JUMPDEST 000007f2: POP 000007f3: PUSH1 0x01 000007f5: PUSH1 0x01 000007f7: PUSH1 0xa0 000007f9: SHL 000007fa: SUB 000007fb: DUP2 000007fc: CALLDATALOAD 000007fd: AND 000007fe: SWAP1 000007ff: PUSH1 0x20 00000801: ADD 00000802: CALLDATALOAD 00000803: PUSH2 0x285c 00000806: JUMP 00000807: JUMPDEST 00000808: CALLVALUE 00000809: DUP1 0000080a: ISZERO 0000080b: PUSH2 0x0813 0000080e: JUMPI 0000080f: PUSH1 0x00 00000811: DUP1 00000812: REVERT 00000813: JUMPDEST 00000814: POP 00000815: PUSH2 0x054f 00000818: PUSH2 0x28f0 0000081b: JUMP 0000081c: JUMPDEST 0000081d: CALLVALUE 0000081e: DUP1 0000081f: ISZERO 00000820: PUSH2 0x0828 00000823: JUMPI 00000824: PUSH1 0x00 00000826: DUP1 00000827: REVERT 00000828: JUMPDEST 00000829: POP 0000082a: PUSH2 0x0576 0000082d: PUSH2 0x28f6 00000830: JUMP 00000831: JUMPDEST 00000832: CALLVALUE 00000833: DUP1 00000834: ISZERO 00000835: PUSH2 0x083d 00000838: JUMPI 00000839: PUSH1 0x00 0000083b: DUP1 0000083c: REVERT 0000083d: JUMPDEST 0000083e: POP 0000083f: PUSH2 0x0576 00000842: PUSH2 0x2905 00000845: JUMP 00000846: JUMPDEST 00000847: CALLVALUE 00000848: DUP1 00000849: ISZERO 0000084a: PUSH2 0x0852 0000084d: JUMPI 0000084e: PUSH1 0x00 00000850: DUP1 00000851: REVERT 00000852: JUMPDEST 00000853: POP 00000854: PUSH2 0x0576 00000857: PUSH2 0x2914 0000085a: JUMP 0000085b: JUMPDEST 0000085c: CALLVALUE 0000085d: DUP1 0000085e: ISZERO 0000085f: PUSH2 0x0867 00000862: JUMPI 00000863: PUSH1 0x00 00000865: DUP1 00000866: REVERT 00000867: JUMPDEST 00000868: POP 00000869: PUSH2 0x054f 0000086c: PUSH1 0x04 0000086e: DUP1 0000086f: CALLDATASIZE 00000870: SUB 00000871: PUSH1 0x20 00000873: DUP2 00000874: LT 00000875: ISZERO 00000876: PUSH2 0x087e 00000879: JUMPI 0000087a: PUSH1 0x00 0000087c: DUP1 0000087d: REVERT 0000087e: JUMPDEST 0000087f: POP 00000880: CALLDATALOAD 00000881: PUSH1 0x01 00000883: PUSH1 0x01 00000885: PUSH1 0xa0 00000887: SHL 00000888: SUB 00000889: AND 0000088a: PUSH2 0x2923 0000088d: JUMP 0000088e: JUMPDEST 0000088f: CALLVALUE 00000890: DUP1 00000891: ISZERO 00000892: PUSH2 0x089a 00000895: JUMPI 00000896: PUSH1 0x00 00000898: DUP1 00000899: REVERT 0000089a: JUMPDEST 0000089b: POP 0000089c: PUSH2 0x054f 0000089f: PUSH1 0x04 000008a1: DUP1 000008a2: CALLDATASIZE 000008a3: SUB 000008a4: PUSH1 0x20 000008a6: DUP2 000008a7: LT 000008a8: ISZERO 000008a9: PUSH2 0x08b1 000008ac: JUMPI 000008ad: PUSH1 0x00 000008af: DUP1 000008b0: REVERT 000008b1: JUMPDEST 000008b2: POP 000008b3: CALLDATALOAD 000008b4: PUSH1 0x01 000008b6: PUSH1 0x01 000008b8: PUSH1 0xa0 000008ba: SHL 000008bb: SUB 000008bc: AND 000008bd: PUSH2 0x293e 000008c0: JUMP 000008c1: JUMPDEST 000008c2: CALLVALUE 000008c3: DUP1 000008c4: ISZERO 000008c5: PUSH2 0x08cd 000008c8: JUMPI 000008c9: PUSH1 0x00 000008cb: DUP1 000008cc: REVERT 000008cd: JUMPDEST 000008ce: POP 000008cf: PUSH2 0x0437 000008d2: PUSH2 0x2959 000008d5: JUMP 000008d6: JUMPDEST 000008d7: CALLVALUE 000008d8: DUP1 000008d9: ISZERO 000008da: PUSH2 0x08e2 000008dd: JUMPI 000008de: PUSH1 0x00 000008e0: DUP1 000008e1: REVERT 000008e2: JUMPDEST 000008e3: POP 000008e4: PUSH2 0x0437 000008e7: PUSH1 0x04 000008e9: DUP1 000008ea: CALLDATASIZE 000008eb: SUB 000008ec: PUSH1 0x20 000008ee: DUP2 000008ef: LT 000008f0: ISZERO 000008f1: PUSH2 0x08f9 000008f4: JUMPI 000008f5: PUSH1 0x00 000008f7: DUP1 000008f8: REVERT 000008f9: JUMPDEST 000008fa: POP 000008fb: CALLDATALOAD 000008fc: PUSH2 0x2a18 000008ff: JUMP 00000900: JUMPDEST 00000901: CALLVALUE 00000902: DUP1 00000903: ISZERO 00000904: PUSH2 0x090c 00000907: JUMPI 00000908: PUSH1 0x00 0000090a: DUP1 0000090b: REVERT 0000090c: JUMPDEST 0000090d: POP 0000090e: PUSH2 0x04fc 00000911: PUSH1 0x04 00000913: DUP1 00000914: CALLDATASIZE 00000915: SUB 00000916: PUSH1 0x20 00000918: DUP2 00000919: LT 0000091a: ISZERO 0000091b: PUSH2 0x0923 0000091e: JUMPI 0000091f: PUSH1 0x00 00000921: DUP1 00000922: REVERT 00000923: JUMPDEST 00000924: POP 00000925: CALLDATALOAD 00000926: PUSH1 0x01 00000928: PUSH1 0x01 0000092a: PUSH1 0xa0 0000092c: SHL 0000092d: SUB 0000092e: AND 0000092f: PUSH2 0x2a6a 00000932: JUMP 00000933: JUMPDEST 00000934: CALLVALUE 00000935: DUP1 00000936: ISZERO 00000937: PUSH2 0x093f 0000093a: JUMPI 0000093b: PUSH1 0x00 0000093d: DUP1 0000093e: REVERT 0000093f: JUMPDEST 00000940: POP 00000941: PUSH2 0x0437 00000944: PUSH2 0x2adf 00000947: JUMP 00000948: JUMPDEST 00000949: CALLVALUE 0000094a: DUP1 0000094b: ISZERO 0000094c: PUSH2 0x0954 0000094f: JUMPI 00000950: PUSH1 0x00 00000952: DUP1 00000953: REVERT 00000954: JUMPDEST 00000955: POP 00000956: PUSH2 0x0437 00000959: PUSH1 0x04 0000095b: DUP1 0000095c: CALLDATASIZE 0000095d: SUB 0000095e: PUSH1 0x40 00000960: DUP2 00000961: LT 00000962: ISZERO 00000963: PUSH2 0x096b 00000966: JUMPI 00000967: PUSH1 0x00 00000969: DUP1 0000096a: REVERT 0000096b: JUMPDEST 0000096c: POP 0000096d: PUSH1 0x01 0000096f: PUSH1 0x01 00000971: PUSH1 0xa0 00000973: SHL 00000974: SUB 00000975: DUP2 00000976: CALLDATALOAD 00000977: AND 00000978: SWAP1 00000979: PUSH1 0x20 0000097b: ADD 0000097c: CALLDATALOAD 0000097d: PUSH2 0x2b97 00000980: JUMP 00000981: JUMPDEST 00000982: CALLVALUE 00000983: DUP1 00000984: ISZERO 00000985: PUSH2 0x098d 00000988: JUMPI 00000989: PUSH1 0x00 0000098b: DUP1 0000098c: REVERT 0000098d: JUMPDEST 0000098e: POP 0000098f: PUSH2 0x0437 00000992: PUSH1 0x04 00000994: DUP1 00000995: CALLDATASIZE 00000996: SUB 00000997: PUSH1 0x40 00000999: DUP2 0000099a: LT 0000099b: ISZERO 0000099c: PUSH2 0x09a4 0000099f: JUMPI 000009a0: PUSH1 0x00 000009a2: DUP1 000009a3: REVERT 000009a4: JUMPDEST 000009a5: POP 000009a6: PUSH1 0x01 000009a8: PUSH1 0x01 000009aa: PUSH1 0xa0 000009ac: SHL 000009ad: SUB 000009ae: DUP2 000009af: CALLDATALOAD 000009b0: AND 000009b1: SWAP1 000009b2: PUSH1 0x20 000009b4: ADD 000009b5: CALLDATALOAD 000009b6: PUSH2 0x2c3f 000009b9: JUMP 000009ba: JUMPDEST 000009bb: CALLVALUE 000009bc: DUP1 000009bd: ISZERO 000009be: PUSH2 0x09c6 000009c1: JUMPI 000009c2: PUSH1 0x00 000009c4: DUP1 000009c5: REVERT 000009c6: JUMPDEST 000009c7: POP 000009c8: PUSH2 0x04fc 000009cb: PUSH2 0x2d90 000009ce: JUMP 000009cf: JUMPDEST 000009d0: CALLVALUE 000009d1: DUP1 000009d2: ISZERO 000009d3: PUSH2 0x09db 000009d6: JUMPI 000009d7: PUSH1 0x00 000009d9: DUP1 000009da: REVERT 000009db: JUMPDEST 000009dc: POP 000009dd: PUSH2 0x0437 000009e0: PUSH1 0x04 000009e2: DUP1 000009e3: CALLDATASIZE 000009e4: SUB 000009e5: PUSH1 0x20 000009e7: DUP2 000009e8: LT 000009e9: ISZERO 000009ea: PUSH2 0x09f2 000009ed: JUMPI 000009ee: PUSH1 0x00 000009f0: DUP1 000009f1: REVERT 000009f2: JUMPDEST 000009f3: POP 000009f4: CALLDATALOAD 000009f5: PUSH2 0x2da0 000009f8: JUMP 000009f9: JUMPDEST 000009fa: CALLVALUE 000009fb: DUP1 000009fc: ISZERO 000009fd: PUSH2 0x0a05 00000a00: JUMPI 00000a01: PUSH1 0x00 00000a03: DUP1 00000a04: REVERT 00000a05: JUMPDEST 00000a06: POP 00000a07: PUSH2 0x04fc 00000a0a: PUSH1 0x04 00000a0c: DUP1 00000a0d: CALLDATASIZE 00000a0e: SUB 00000a0f: PUSH1 0x20 00000a11: DUP2 00000a12: LT 00000a13: ISZERO 00000a14: PUSH2 0x0a1c 00000a17: JUMPI 00000a18: PUSH1 0x00 00000a1a: DUP1 00000a1b: REVERT 00000a1c: JUMPDEST 00000a1d: POP 00000a1e: CALLDATALOAD 00000a1f: PUSH1 0x01 00000a21: PUSH1 0x01 00000a23: PUSH1 0xa0 00000a25: SHL 00000a26: SUB 00000a27: AND 00000a28: PUSH2 0x2df2 00000a2b: JUMP 00000a2c: JUMPDEST 00000a2d: CALLVALUE 00000a2e: DUP1 00000a2f: ISZERO 00000a30: PUSH2 0x0a38 00000a33: JUMPI 00000a34: PUSH1 0x00 00000a36: DUP1 00000a37: REVERT 00000a38: JUMPDEST 00000a39: POP 00000a3a: PUSH2 0x054f 00000a3d: PUSH2 0x2e6f 00000a40: JUMP 00000a41: JUMPDEST 00000a42: CALLVALUE 00000a43: DUP1 00000a44: ISZERO 00000a45: PUSH2 0x0a4d 00000a48: JUMPI 00000a49: PUSH1 0x00 00000a4b: DUP1 00000a4c: REVERT 00000a4d: JUMPDEST 00000a4e: POP 00000a4f: PUSH2 0x0576 00000a52: PUSH2 0x2e75 00000a55: JUMP 00000a56: JUMPDEST 00000a57: CALLVALUE 00000a58: DUP1 00000a59: ISZERO 00000a5a: PUSH2 0x0a62 00000a5d: JUMPI 00000a5e: PUSH1 0x00 00000a60: DUP1 00000a61: REVERT 00000a62: JUMPDEST 00000a63: POP 00000a64: PUSH2 0x054f 00000a67: PUSH2 0x2e89 00000a6a: JUMP 00000a6b: JUMPDEST 00000a6c: CALLVALUE 00000a6d: DUP1 00000a6e: ISZERO 00000a6f: PUSH2 0x0a77 00000a72: JUMPI 00000a73: PUSH1 0x00 00000a75: DUP1 00000a76: REVERT 00000a77: JUMPDEST 00000a78: POP 00000a79: PUSH2 0x054f 00000a7c: PUSH2 0x2f3e 00000a7f: JUMP 00000a80: JUMPDEST 00000a81: PUSH2 0x0437 00000a84: PUSH1 0x04 00000a86: DUP1 00000a87: CALLDATASIZE 00000a88: SUB 00000a89: PUSH1 0x40 00000a8b: DUP2 00000a8c: LT 00000a8d: ISZERO 00000a8e: PUSH2 0x0a96 00000a91: JUMPI 00000a92: PUSH1 0x00 00000a94: DUP1 00000a95: REVERT 00000a96: JUMPDEST 00000a97: POP 00000a98: DUP1 00000a99: CALLDATALOAD 00000a9a: SWAP1 00000a9b: PUSH1 0x20 00000a9d: ADD 00000a9e: CALLDATALOAD 00000a9f: PUSH1 0x01 00000aa1: PUSH1 0x01 00000aa3: PUSH1 0xa0 00000aa5: SHL 00000aa6: SUB 00000aa7: AND 00000aa8: PUSH2 0x2f44 00000aab: JUMP 00000aac: JUMPDEST 00000aad: CALLVALUE 00000aae: DUP1 00000aaf: ISZERO 00000ab0: PUSH2 0x0ab8 00000ab3: JUMPI 00000ab4: PUSH1 0x00 00000ab6: DUP1 00000ab7: REVERT 00000ab8: JUMPDEST 00000ab9: POP 00000aba: PUSH2 0x044e 00000abd: PUSH2 0x335f 00000ac0: JUMP 00000ac1: JUMPDEST 00000ac2: CALLVALUE 00000ac3: DUP1 00000ac4: ISZERO 00000ac5: PUSH2 0x0acd 00000ac8: JUMPI 00000ac9: PUSH1 0x00 00000acb: DUP1 00000acc: REVERT 00000acd: JUMPDEST 00000ace: POP 00000acf: PUSH2 0x0576 00000ad2: PUSH2 0x33c0 00000ad5: JUMP 00000ad6: JUMPDEST 00000ad7: CALLVALUE 00000ad8: DUP1 00000ad9: ISZERO 00000ada: PUSH2 0x0ae2 00000add: JUMPI 00000ade: PUSH1 0x00 00000ae0: DUP1 00000ae1: REVERT 00000ae2: JUMPDEST 00000ae3: POP 00000ae4: PUSH2 0x0437 00000ae7: PUSH2 0x33cf 00000aea: JUMP 00000aeb: JUMPDEST 00000aec: CALLVALUE 00000aed: DUP1 00000aee: ISZERO 00000aef: PUSH2 0x0af7 00000af2: JUMPI 00000af3: PUSH1 0x00 00000af5: DUP1 00000af6: REVERT 00000af7: JUMPDEST 00000af8: POP 00000af9: PUSH2 0x054f 00000afc: PUSH2 0x3487 00000aff: JUMP 00000b00: JUMPDEST 00000b01: CALLVALUE 00000b02: DUP1 00000b03: ISZERO 00000b04: PUSH2 0x0b0c 00000b07: JUMPI 00000b08: PUSH1 0x00 00000b0a: DUP1 00000b0b: REVERT 00000b0c: JUMPDEST 00000b0d: POP 00000b0e: PUSH2 0x04fc 00000b11: PUSH1 0x04 00000b13: DUP1 00000b14: CALLDATASIZE 00000b15: SUB 00000b16: PUSH1 0x40 00000b18: DUP2 00000b19: LT 00000b1a: ISZERO 00000b1b: PUSH2 0x0b23 00000b1e: JUMPI 00000b1f: PUSH1 0x00 00000b21: DUP1 00000b22: REVERT 00000b23: JUMPDEST 00000b24: POP 00000b25: PUSH1 0x01 00000b27: PUSH1 0x01 00000b29: PUSH1 0xa0 00000b2b: SHL 00000b2c: SUB 00000b2d: DUP2 00000b2e: CALLDATALOAD 00000b2f: AND 00000b30: SWAP1 00000b31: PUSH1 0x20 00000b33: ADD 00000b34: CALLDATALOAD 00000b35: PUSH2 0x348d 00000b38: JUMP 00000b39: JUMPDEST 00000b3a: CALLVALUE 00000b3b: DUP1 00000b3c: ISZERO 00000b3d: PUSH2 0x0b45 00000b40: JUMPI 00000b41: PUSH1 0x00 00000b43: DUP1 00000b44: REVERT 00000b45: JUMPDEST 00000b46: POP 00000b47: PUSH2 0x04fc 00000b4a: PUSH1 0x04 00000b4c: DUP1 00000b4d: CALLDATASIZE 00000b4e: SUB 00000b4f: PUSH1 0x40 00000b51: DUP2 00000b52: LT 00000b53: ISZERO 00000b54: PUSH2 0x0b5c 00000b57: JUMPI 00000b58: PUSH1 0x00 00000b5a: DUP1 00000b5b: REVERT 00000b5c: JUMPDEST 00000b5d: POP 00000b5e: PUSH1 0x01 00000b60: PUSH1 0x01 00000b62: PUSH1 0xa0 00000b64: SHL 00000b65: SUB 00000b66: DUP2 00000b67: CALLDATALOAD 00000b68: AND 00000b69: SWAP1 00000b6a: PUSH1 0x20 00000b6c: ADD 00000b6d: CALLDATALOAD 00000b6e: PUSH2 0x3576 00000b71: JUMP 00000b72: JUMPDEST 00000b73: CALLVALUE 00000b74: DUP1 00000b75: ISZERO 00000b76: PUSH2 0x0b7e 00000b79: JUMPI 00000b7a: PUSH1 0x00 00000b7c: DUP1 00000b7d: REVERT 00000b7e: JUMPDEST 00000b7f: POP 00000b80: PUSH2 0x0437 00000b83: PUSH1 0x04 00000b85: DUP1 00000b86: CALLDATASIZE 00000b87: SUB 00000b88: PUSH1 0x60 00000b8a: DUP2 00000b8b: LT 00000b8c: ISZERO 00000b8d: PUSH2 0x0b95 00000b90: JUMPI 00000b91: PUSH1 0x00 00000b93: DUP1 00000b94: REVERT 00000b95: JUMPDEST 00000b96: POP 00000b97: PUSH1 0x01 00000b99: PUSH1 0x01 00000b9b: PUSH1 0xa0 00000b9d: SHL 00000b9e: SUB 00000b9f: DUP2 00000ba0: CALLDATALOAD 00000ba1: DUP2 00000ba2: AND 00000ba3: SWAP2 00000ba4: PUSH1 0x20 00000ba6: DUP2 00000ba7: ADD 00000ba8: CALLDATALOAD 00000ba9: SWAP2 00000baa: PUSH1 0x40 00000bac: SWAP1 00000bad: SWAP2 00000bae: ADD 00000baf: CALLDATALOAD 00000bb0: AND 00000bb1: PUSH2 0x3862 00000bb4: JUMP 00000bb5: JUMPDEST 00000bb6: CALLVALUE 00000bb7: DUP1 00000bb8: ISZERO 00000bb9: PUSH2 0x0bc1 00000bbc: JUMPI 00000bbd: PUSH1 0x00 00000bbf: DUP1 00000bc0: REVERT 00000bc1: JUMPDEST 00000bc2: POP 00000bc3: PUSH2 0x066f 00000bc6: PUSH1 0x04 00000bc8: DUP1 00000bc9: CALLDATASIZE 00000bca: SUB 00000bcb: PUSH1 0x40 00000bcd: DUP2 00000bce: LT 00000bcf: ISZERO 00000bd0: PUSH2 0x0bd8 00000bd3: JUMPI 00000bd4: PUSH1 0x00 00000bd6: DUP1 00000bd7: REVERT 00000bd8: JUMPDEST 00000bd9: POP 00000bda: DUP1 00000bdb: CALLDATALOAD 00000bdc: SWAP1 00000bdd: PUSH1 0x20 00000bdf: ADD 00000be0: CALLDATALOAD 00000be1: PUSH1 0x01 00000be3: PUSH1 0x01 00000be5: PUSH1 0xa0 00000be7: SHL 00000be8: SUB 00000be9: AND 00000bea: PUSH2 0x397f 00000bed: JUMP 00000bee: JUMPDEST 00000bef: CALLVALUE 00000bf0: DUP1 00000bf1: ISZERO 00000bf2: PUSH2 0x0bfa 00000bf5: JUMPI 00000bf6: PUSH1 0x00 00000bf8: DUP1 00000bf9: REVERT 00000bfa: JUMPDEST 00000bfb: POP 00000bfc: PUSH2 0x0576 00000bff: PUSH1 0x04 00000c01: DUP1 00000c02: CALLDATASIZE 00000c03: SUB 00000c04: PUSH1 0x20 00000c06: DUP2 00000c07: LT 00000c08: ISZERO 00000c09: PUSH2 0x0c11 00000c0c: JUMPI 00000c0d: PUSH1 0x00 00000c0f: DUP1 00000c10: REVERT 00000c11: JUMPDEST 00000c12: POP 00000c13: CALLDATALOAD 00000c14: PUSH2 0x3b24 00000c17: JUMP 00000c18: JUMPDEST 00000c19: CALLVALUE 00000c1a: DUP1 00000c1b: ISZERO 00000c1c: PUSH2 0x0c24 00000c1f: JUMPI 00000c20: PUSH1 0x00 00000c22: DUP1 00000c23: REVERT 00000c24: JUMPDEST 00000c25: POP 00000c26: PUSH2 0x0437 00000c29: PUSH1 0x04 00000c2b: DUP1 00000c2c: CALLDATASIZE 00000c2d: SUB 00000c2e: PUSH1 0x20 00000c30: DUP2 00000c31: LT 00000c32: ISZERO 00000c33: PUSH2 0x0c3b 00000c36: JUMPI 00000c37: PUSH1 0x00 00000c39: DUP1 00000c3a: REVERT 00000c3b: JUMPDEST 00000c3c: POP 00000c3d: CALLDATALOAD 00000c3e: PUSH1 0x01 00000c40: PUSH1 0x01 00000c42: PUSH1 0xa0 00000c44: SHL 00000c45: SUB 00000c46: AND 00000c47: PUSH2 0x3b4b 00000c4a: JUMP 00000c4b: JUMPDEST 00000c4c: CALLVALUE 00000c4d: DUP1 00000c4e: ISZERO 00000c4f: PUSH2 0x0c57 00000c52: JUMPI 00000c53: PUSH1 0x00 00000c55: DUP1 00000c56: REVERT 00000c57: JUMPDEST 00000c58: POP 00000c59: PUSH2 0x0437 00000c5c: PUSH1 0x04 00000c5e: DUP1 00000c5f: CALLDATASIZE 00000c60: SUB 00000c61: PUSH1 0x20 00000c63: DUP2 00000c64: LT 00000c65: ISZERO 00000c66: PUSH2 0x0c6e 00000c69: JUMPI 00000c6a: PUSH1 0x00 00000c6c: DUP1 00000c6d: REVERT 00000c6e: JUMPDEST 00000c6f: POP 00000c70: CALLDATALOAD 00000c71: PUSH2 0x3bb9 00000c74: JUMP 00000c75: JUMPDEST 00000c76: CALLVALUE 00000c77: DUP1 00000c78: ISZERO 00000c79: PUSH2 0x0c81 00000c7c: JUMPI 00000c7d: PUSH1 0x00 00000c7f: DUP1 00000c80: REVERT 00000c81: JUMPDEST 00000c82: POP 00000c83: PUSH2 0x0576 00000c86: PUSH2 0x3c53 00000c89: JUMP 00000c8a: JUMPDEST 00000c8b: CALLVALUE 00000c8c: DUP1 00000c8d: ISZERO 00000c8e: PUSH2 0x0c96 00000c91: JUMPI 00000c92: PUSH1 0x00 00000c94: DUP1 00000c95: REVERT 00000c96: JUMPDEST 00000c97: POP 00000c98: PUSH2 0x054f 00000c9b: PUSH2 0x3c62 00000c9e: JUMP 00000c9f: JUMPDEST 00000ca0: CALLVALUE 00000ca1: DUP1 00000ca2: ISZERO 00000ca3: PUSH2 0x0cab 00000ca6: JUMPI 00000ca7: PUSH1 0x00 00000ca9: DUP1 00000caa: REVERT 00000cab: JUMPDEST 00000cac: POP 00000cad: PUSH2 0x054f 00000cb0: PUSH1 0x04 00000cb2: DUP1 00000cb3: CALLDATASIZE 00000cb4: SUB 00000cb5: PUSH1 0x20 00000cb7: DUP2 00000cb8: LT 00000cb9: ISZERO 00000cba: PUSH2 0x0cc2 00000cbd: JUMPI 00000cbe: PUSH1 0x00 00000cc0: DUP1 00000cc1: REVERT 00000cc2: JUMPDEST 00000cc3: POP 00000cc4: CALLDATALOAD 00000cc5: PUSH1 0x01 00000cc7: PUSH1 0x01 00000cc9: PUSH1 0xa0 00000ccb: SHL 00000ccc: SUB 00000ccd: AND 00000cce: PUSH2 0x3dd7 00000cd1: JUMP 00000cd2: JUMPDEST 00000cd3: CALLVALUE 00000cd4: DUP1 00000cd5: ISZERO 00000cd6: PUSH2 0x0cde 00000cd9: JUMPI 00000cda: PUSH1 0x00 00000cdc: DUP1 00000cdd: REVERT 00000cde: JUMPDEST 00000cdf: POP 00000ce0: PUSH2 0x0576 00000ce3: PUSH2 0x3f7c 00000ce6: JUMP 00000ce7: JUMPDEST 00000ce8: CALLVALUE 00000ce9: DUP1 00000cea: ISZERO 00000ceb: PUSH2 0x0cf3 00000cee: JUMPI 00000cef: PUSH1 0x00 00000cf1: DUP1 00000cf2: REVERT 00000cf3: JUMPDEST 00000cf4: POP 00000cf5: PUSH2 0x054f 00000cf8: PUSH1 0x04 00000cfa: DUP1 00000cfb: CALLDATASIZE 00000cfc: SUB 00000cfd: PUSH1 0x40 00000cff: DUP2 00000d00: LT 00000d01: ISZERO 00000d02: PUSH2 0x0d0a 00000d05: JUMPI 00000d06: PUSH1 0x00 00000d08: DUP1 00000d09: REVERT 00000d0a: JUMPDEST 00000d0b: POP 00000d0c: PUSH1 0x01 00000d0e: PUSH1 0x01 00000d10: PUSH1 0xa0 00000d12: SHL 00000d13: SUB 00000d14: DUP2 00000d15: CALLDATALOAD 00000d16: DUP2 00000d17: AND 00000d18: SWAP2 00000d19: PUSH1 0x20 00000d1b: ADD 00000d1c: CALLDATALOAD 00000d1d: AND 00000d1e: PUSH2 0x3f8b 00000d21: JUMP 00000d22: JUMPDEST 00000d23: CALLVALUE 00000d24: DUP1 00000d25: ISZERO 00000d26: PUSH2 0x0d2e 00000d29: JUMPI 00000d2a: PUSH1 0x00 00000d2c: DUP1 00000d2d: REVERT 00000d2e: JUMPDEST 00000d2f: POP 00000d30: PUSH2 0x04fc 00000d33: PUSH1 0x04 00000d35: DUP1 00000d36: CALLDATASIZE 00000d37: SUB 00000d38: PUSH1 0x20 00000d3a: DUP2 00000d3b: LT 00000d3c: ISZERO 00000d3d: PUSH2 0x0d45 00000d40: JUMPI 00000d41: PUSH1 0x00 00000d43: DUP1 00000d44: REVERT 00000d45: JUMPDEST 00000d46: POP 00000d47: CALLDATALOAD 00000d48: PUSH1 0x01 00000d4a: PUSH1 0x01 00000d4c: PUSH1 0xa0 00000d4e: SHL 00000d4f: SUB 00000d50: AND 00000d51: PUSH2 0x3fb6 00000d54: JUMP 00000d55: JUMPDEST 00000d56: CALLVALUE 00000d57: DUP1 00000d58: ISZERO 00000d59: PUSH2 0x0d61 00000d5c: JUMPI 00000d5d: PUSH1 0x00 00000d5f: DUP1 00000d60: REVERT 00000d61: JUMPDEST 00000d62: POP 00000d63: PUSH2 0x0437 00000d66: PUSH1 0x04 00000d68: DUP1 00000d69: CALLDATASIZE 00000d6a: SUB 00000d6b: PUSH1 0x20 00000d6d: DUP2 00000d6e: LT 00000d6f: ISZERO 00000d70: PUSH2 0x0d78 00000d73: JUMPI 00000d74: PUSH1 0x00 00000d76: DUP1 00000d77: REVERT 00000d78: JUMPDEST 00000d79: POP 00000d7a: CALLDATALOAD 00000d7b: PUSH2 0x3fcb 00000d7e: JUMP 00000d7f: JUMPDEST 00000d80: CALLVALUE 00000d81: DUP1 00000d82: ISZERO 00000d83: PUSH2 0x0d8b 00000d86: JUMPI 00000d87: PUSH1 0x00 00000d89: DUP1 00000d8a: REVERT 00000d8b: JUMPDEST 00000d8c: POP 00000d8d: PUSH2 0x0576 00000d90: PUSH1 0x04 00000d92: DUP1 00000d93: CALLDATASIZE 00000d94: SUB 00000d95: PUSH1 0x20 00000d97: DUP2 00000d98: LT 00000d99: ISZERO 00000d9a: PUSH2 0x0da2 00000d9d: JUMPI 00000d9e: PUSH1 0x00 00000da0: DUP1 00000da1: REVERT 00000da2: JUMPDEST 00000da3: POP 00000da4: CALLDATALOAD 00000da5: PUSH1 0x01 00000da7: PUSH1 0x01 00000da9: PUSH1 0xa0 00000dab: SHL 00000dac: SUB 00000dad: AND 00000dae: PUSH2 0x4066 00000db1: JUMP 00000db2: JUMPDEST 00000db3: CALLVALUE 00000db4: DUP1 00000db5: ISZERO 00000db6: PUSH2 0x0dbe 00000db9: JUMPI 00000dba: PUSH1 0x00 00000dbc: DUP1 00000dbd: REVERT 00000dbe: JUMPDEST 00000dbf: POP 00000dc0: PUSH2 0x054f 00000dc3: PUSH2 0x4081 00000dc6: JUMP 00000dc7: JUMPDEST 00000dc8: CALLVALUE 00000dc9: DUP1 00000dca: ISZERO 00000dcb: PUSH2 0x0dd3 00000dce: JUMPI 00000dcf: PUSH1 0x00 00000dd1: DUP1 00000dd2: REVERT 00000dd3: JUMPDEST 00000dd4: POP 00000dd5: PUSH2 0x0437 00000dd8: PUSH1 0x04 00000dda: DUP1 00000ddb: CALLDATASIZE 00000ddc: SUB 00000ddd: PUSH1 0x20 00000ddf: DUP2 00000de0: LT 00000de1: ISZERO 00000de2: PUSH2 0x0dea 00000de5: JUMPI 00000de6: PUSH1 0x00 00000de8: DUP1 00000de9: REVERT 00000dea: JUMPDEST 00000deb: POP 00000dec: CALLDATALOAD 00000ded: PUSH2 0x4087 00000df0: JUMP 00000df1: JUMPDEST 00000df2: CALLVALUE 00000df3: DUP1 00000df4: ISZERO 00000df5: PUSH2 0x0dfd 00000df8: JUMPI 00000df9: PUSH1 0x00 00000dfb: DUP1 00000dfc: REVERT 00000dfd: JUMPDEST 00000dfe: POP 00000dff: PUSH2 0x0437 00000e02: PUSH1 0x04 00000e04: DUP1 00000e05: CALLDATASIZE 00000e06: SUB 00000e07: PUSH1 0x20 00000e09: DUP2 00000e0a: LT 00000e0b: ISZERO 00000e0c: PUSH2 0x0e14 00000e0f: JUMPI 00000e10: PUSH1 0x00 00000e12: DUP1 00000e13: REVERT 00000e14: JUMPDEST 00000e15: POP 00000e16: CALLDATALOAD 00000e17: PUSH1 0x01 00000e19: PUSH1 0x01 00000e1b: PUSH1 0xa0 00000e1d: SHL 00000e1e: SUB 00000e1f: AND 00000e20: PUSH2 0x40d9 00000e23: JUMP 00000e24: JUMPDEST 00000e25: CALLVALUE 00000e26: DUP1 00000e27: ISZERO 00000e28: PUSH2 0x0e30 00000e2b: JUMPI 00000e2c: PUSH1 0x00 00000e2e: DUP1 00000e2f: REVERT 00000e30: JUMPDEST 00000e31: POP 00000e32: PUSH2 0x0437 00000e35: PUSH1 0x04 00000e37: DUP1 00000e38: CALLDATASIZE 00000e39: SUB 00000e3a: PUSH1 0x20 00000e3c: DUP2 00000e3d: LT 00000e3e: ISZERO 00000e3f: PUSH2 0x0e47 00000e42: JUMPI 00000e43: PUSH1 0x00 00000e45: DUP1 00000e46: REVERT 00000e47: JUMPDEST 00000e48: POP 00000e49: CALLDATALOAD 00000e4a: PUSH1 0x01 00000e4c: PUSH1 0x01 00000e4e: PUSH1 0xa0 00000e50: SHL 00000e51: SUB 00000e52: AND 00000e53: PUSH2 0x419b 00000e56: JUMP 00000e57: JUMPDEST 00000e58: CALLVALUE 00000e59: DUP1 00000e5a: ISZERO 00000e5b: PUSH2 0x0e63 00000e5e: JUMPI 00000e5f: PUSH1 0x00 00000e61: DUP1 00000e62: REVERT 00000e63: JUMPDEST 00000e64: POP 00000e65: PUSH2 0x054f 00000e68: PUSH1 0x04 00000e6a: DUP1 00000e6b: CALLDATASIZE 00000e6c: SUB 00000e6d: PUSH1 0x20 00000e6f: DUP2 00000e70: LT 00000e71: ISZERO 00000e72: PUSH2 0x0e7a 00000e75: JUMPI 00000e76: PUSH1 0x00 00000e78: DUP1 00000e79: REVERT 00000e7a: JUMPDEST 00000e7b: POP 00000e7c: CALLDATALOAD 00000e7d: PUSH1 0x01 00000e7f: PUSH1 0x01 00000e81: PUSH1 0xa0 00000e83: SHL 00000e84: SUB 00000e85: AND 00000e86: PUSH2 0x424b 00000e89: JUMP 00000e8a: JUMPDEST 00000e8b: CALLVALUE 00000e8c: DUP1 00000e8d: ISZERO 00000e8e: PUSH2 0x0e96 00000e91: JUMPI 00000e92: PUSH1 0x00 00000e94: DUP1 00000e95: REVERT 00000e96: JUMPDEST 00000e97: POP 00000e98: PUSH2 0x0437 00000e9b: PUSH1 0x04 00000e9d: DUP1 00000e9e: CALLDATASIZE 00000e9f: SUB 00000ea0: PUSH1 0x20 00000ea2: DUP2 00000ea3: LT 00000ea4: ISZERO 00000ea5: PUSH2 0x0ead 00000ea8: JUMPI 00000ea9: PUSH1 0x00 00000eab: DUP1 00000eac: REVERT 00000ead: JUMPDEST 00000eae: POP 00000eaf: CALLDATALOAD 00000eb0: PUSH1 0x01 00000eb2: PUSH1 0x01 00000eb4: PUSH1 0xa0 00000eb6: SHL 00000eb7: SUB 00000eb8: AND 00000eb9: PUSH2 0x425d 00000ebc: JUMP 00000ebd: JUMPDEST 00000ebe: CALLVALUE 00000ebf: DUP1 00000ec0: ISZERO 00000ec1: PUSH2 0x0ec9 00000ec4: JUMPI 00000ec5: PUSH1 0x00 00000ec7: DUP1 00000ec8: REVERT 00000ec9: JUMPDEST 00000eca: POP 00000ecb: PUSH2 0x04fc 00000ece: PUSH1 0x04 00000ed0: DUP1 00000ed1: CALLDATASIZE 00000ed2: SUB 00000ed3: PUSH1 0x20 00000ed5: DUP2 00000ed6: LT 00000ed7: ISZERO 00000ed8: PUSH2 0x0ee0 00000edb: JUMPI 00000edc: PUSH1 0x00 00000ede: DUP1 00000edf: REVERT 00000ee0: JUMPDEST 00000ee1: POP 00000ee2: CALLDATALOAD 00000ee3: PUSH1 0x01 00000ee5: PUSH1 0x01 00000ee7: PUSH1 0xa0 00000ee9: SHL 00000eea: SUB 00000eeb: AND 00000eec: PUSH2 0x4378 00000eef: JUMP 00000ef0: JUMPDEST 00000ef1: CALLVALUE 00000ef2: DUP1 00000ef3: ISZERO 00000ef4: PUSH2 0x0efc 00000ef7: JUMPI 00000ef8: PUSH1 0x00 00000efa: DUP1 00000efb: REVERT 00000efc: JUMPDEST 00000efd: POP 00000efe: PUSH2 0x054f 00000f01: PUSH2 0x438d 00000f04: JUMP 00000f05: JUMPDEST 00000f06: PUSH1 0x02 00000f08: PUSH1 0x06 00000f0a: SLOAD 00000f0b: EQ 00000f0c: ISZERO 00000f0d: PUSH2 0x0f5d 00000f10: JUMPI 00000f11: PUSH1 0x40 00000f13: DUP1 00000f14: MLOAD 00000f15: PUSH3 0x461bcd 00000f19: PUSH1 0xe5 00000f1b: SHL 00000f1c: DUP2 00000f1d: MSTORE 00000f1e: PUSH1 0x20 00000f20: PUSH1 0x04 00000f22: DUP3 00000f23: ADD 00000f24: MSTORE 00000f25: PUSH1 0x1f 00000f27: PUSH1 0x24 00000f29: DUP3 00000f2a: ADD 00000f2b: MSTORE 00000f2c: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00 00000f4d: PUSH1 0x44 00000f4f: DUP3 00000f50: ADD 00000f51: MSTORE 00000f52: SWAP1 00000f53: MLOAD 00000f54: SWAP1 00000f55: DUP2 00000f56: SWAP1 00000f57: SUB 00000f58: PUSH1 0x64 00000f5a: ADD 00000f5b: SWAP1 00000f5c: REVERT 00000f5d: JUMPDEST 00000f5e: PUSH1 0x02 00000f60: PUSH1 0x06 00000f62: SSTORE 00000f63: PUSH1 0x0d 00000f65: SLOAD 00000f66: PUSH1 0x01 00000f68: PUSH1 0x01 00000f6a: PUSH1 0xa0 00000f6c: SHL 00000f6d: SUB 00000f6e: AND 00000f6f: ISZERO 00000f70: PUSH2 0x1194 00000f73: JUMPI 00000f74: PUSH1 0x0e 00000f76: SLOAD 00000f77: PUSH1 0x01 00000f79: PUSH1 0xa0 00000f7b: SHL 00000f7c: SWAP1 00000f7d: DIV 00000f7e: PUSH1 0xff 00000f80: AND 00000f81: PUSH2 0x0fed 00000f84: JUMPI 00000f85: PUSH1 0x0e 00000f87: PUSH1 0x00 00000f89: SWAP1 00000f8a: SLOAD 00000f8b: SWAP1 00000f8c: PUSH2 0x0100 00000f8f: EXP 00000f90: SWAP1 00000f91: DIV 00000f92: PUSH1 0x01 00000f94: PUSH1 0x01 00000f96: PUSH1 0xa0 00000f98: SHL 00000f99: SUB 00000f9a: AND 00000f9b: PUSH1 0x01 00000f9d: PUSH1 0x01 00000f9f: PUSH1 0xa0 00000fa1: SHL 00000fa2: SUB 00000fa3: AND 00000fa4: PUSH4 0xa2e62045 00000fa9: PUSH1 0x40 00000fab: MLOAD 00000fac: DUP2 00000fad: PUSH4 0xffffffff 00000fb2: AND 00000fb3: PUSH1 0xe0 00000fb5: SHL 00000fb6: DUP2 00000fb7: MSTORE 00000fb8: PUSH1 0x04 00000fba: ADD 00000fbb: PUSH1 0x00 00000fbd: PUSH1 0x40 00000fbf: MLOAD 00000fc0: DUP1 00000fc1: DUP4 00000fc2: SUB 00000fc3: DUP2 00000fc4: PUSH1 0x00 00000fc6: DUP8 00000fc7: DUP1 00000fc8: EXTCODESIZE 00000fc9: ISZERO 00000fca: DUP1 00000fcb: ISZERO 00000fcc: PUSH2 0x0fd4 00000fcf: JUMPI 00000fd0: PUSH1 0x00 00000fd2: DUP1 00000fd3: REVERT 00000fd4: JUMPDEST 00000fd5: POP 00000fd6: GAS 00000fd7: CALL 00000fd8: ISZERO 00000fd9: DUP1 00000fda: ISZERO 00000fdb: PUSH2 0x0fe8 00000fde: JUMPI 00000fdf: RETURNDATASIZE 00000fe0: PUSH1 0x00 00000fe2: DUP1 00000fe3: RETURNDATACOPY 00000fe4: RETURNDATASIZE 00000fe5: PUSH1 0x00 00000fe7: REVERT 00000fe8: JUMPDEST 00000fe9: POP 00000fea: POP 00000feb: POP 00000fec: POP 00000fed: JUMPDEST 00000fee: PUSH1 0x0d 00000ff0: PUSH1 0x00 00000ff2: SWAP1 00000ff3: SLOAD 00000ff4: SWAP1 00000ff5: PUSH2 0x0100 00000ff8: EXP 00000ff9: SWAP1 00000ffa: DIV 00000ffb: PUSH1 0x01 00000ffd: PUSH1 0x01 00000fff: PUSH1 0xa0 00001001: SHL 00001002: SUB 00001003: AND 00001004: PUSH1 0x01 00001006: PUSH1 0x01 00001008: PUSH1 0xa0 0000100a: SHL 0000100b: SUB 0000100c: AND 0000100d: PUSH4 0xa2e62045 00001012: PUSH1 0x40 00001014: MLOAD 00001015: DUP2 00001016: PUSH4 0xffffffff 0000101b: AND 0000101c: PUSH1 0xe0 0000101e: SHL 0000101f: DUP2 00001020: MSTORE 00001021: PUSH1 0x04 00001023: ADD 00001024: PUSH1 0x00 00001026: PUSH1 0x40 00001028: MLOAD 00001029: DUP1 0000102a: DUP4 0000102b: SUB 0000102c: DUP2 0000102d: PUSH1 0x00 0000102f: DUP8 00001030: DUP1 00001031: EXTCODESIZE 00001032: ISZERO 00001033: DUP1 00001034: ISZERO 00001035: PUSH2 0x103d 00001038: JUMPI 00001039: PUSH1 0x00 0000103b: DUP1 0000103c: REVERT 0000103d: JUMPDEST 0000103e: POP 0000103f: GAS 00001040: CALL 00001041: ISZERO 00001042: DUP1 00001043: ISZERO 00001044: PUSH2 0x1051 00001047: JUMPI 00001048: RETURNDATASIZE 00001049: PUSH1 0x00 0000104b: DUP1 0000104c: RETURNDATACOPY 0000104d: RETURNDATASIZE 0000104e: PUSH1 0x00 00001050: REVERT 00001051: JUMPDEST 00001052: POP 00001053: POP 00001054: POP 00001055: POP 00001056: PUSH1 0x00 00001058: JUMPDEST 00001059: PUSH1 0x1c 0000105b: SLOAD 0000105c: DUP2 0000105d: LT 0000105e: ISZERO 0000105f: PUSH2 0x1130 00001062: JUMPI 00001063: PUSH1 0x1b 00001065: PUSH1 0x00 00001067: PUSH1 0x1c 00001069: DUP4 0000106a: DUP2 0000106b: SLOAD 0000106c: DUP2 0000106d: LT 0000106e: PUSH2 0x1073 00001071: JUMPI 00001072: INVALID 00001073: JUMPDEST 00001074: PUSH1 0x00 00001076: SWAP2 00001077: DUP3 00001078: MSTORE 00001079: PUSH1 0x20 0000107b: DUP1 0000107c: DUP4 0000107d: KECCAK256 0000107e: SWAP1 0000107f: SWAP2 00001080: ADD 00001081: SLOAD 00001082: PUSH1 0x01 00001084: PUSH1 0x01 00001086: PUSH1 0xa0 00001088: SHL 00001089: SUB 0000108a: AND 0000108b: DUP4 0000108c: MSTORE 0000108d: DUP3 0000108e: ADD 0000108f: SWAP3 00001090: SWAP1 00001091: SWAP3 00001092: MSTORE 00001093: PUSH1 0x40 00001095: ADD 00001096: SWAP1 00001097: KECCAK256 00001098: SLOAD 00001099: PUSH1 0xff 0000109b: AND 0000109c: ISZERO 0000109d: PUSH2 0x1128 000010a0: JUMPI 000010a1: PUSH1 0x1f 000010a3: PUSH1 0x00 000010a5: PUSH1 0x1c 000010a7: DUP4 000010a8: DUP2 000010a9: SLOAD 000010aa: DUP2 000010ab: LT 000010ac: PUSH2 0x10b1 000010af: JUMPI 000010b0: INVALID 000010b1: JUMPDEST 000010b2: PUSH1 0x00 000010b4: SWAP2 000010b5: DUP3 000010b6: MSTORE 000010b7: PUSH1 0x20 000010b9: DUP1 000010ba: DUP4 000010bb: KECCAK256 000010bc: SWAP1 000010bd: SWAP2 000010be: ADD 000010bf: SLOAD 000010c0: PUSH1 0x01 000010c2: PUSH1 0x01 000010c4: PUSH1 0xa0 000010c6: SHL 000010c7: SUB 000010c8: SWAP1 000010c9: DUP2 000010ca: AND 000010cb: DUP5 000010cc: MSTORE 000010cd: SWAP1 000010ce: DUP4 000010cf: ADD 000010d0: SWAP4 000010d1: SWAP1 000010d2: SWAP4 000010d3: MSTORE 000010d4: PUSH1 0x40 000010d6: SWAP2 000010d7: DUP3 000010d8: ADD 000010d9: DUP2 000010da: KECCAK256 000010db: SLOAD 000010dc: DUP3 000010dd: MLOAD 000010de: PUSH4 0xa2e62045 000010e3: PUSH1 0xe0 000010e5: SHL 000010e6: DUP2 000010e7: MSTORE 000010e8: SWAP3 000010e9: MLOAD 000010ea: SWAP4 000010eb: AND 000010ec: SWAP3 000010ed: PUSH4 0xa2e62045 000010f2: SWAP3 000010f3: PUSH1 0x04 000010f5: DUP1 000010f6: DUP3 000010f7: ADD 000010f8: SWAP4 000010f9: SWAP3 000010fa: SWAP2 000010fb: DUP3 000010fc: SWAP1 000010fd: SUB 000010fe: ADD 000010ff: DUP2 00001100: DUP4 00001101: DUP8 00001102: DUP1 00001103: EXTCODESIZE 00001104: ISZERO 00001105: DUP1 00001106: ISZERO 00001107: PUSH2 0x110f 0000110a: JUMPI 0000110b: PUSH1 0x00 0000110d: DUP1 0000110e: REVERT 0000110f: JUMPDEST 00001110: POP 00001111: GAS 00001112: CALL 00001113: ISZERO 00001114: DUP1 00001115: ISZERO 00001116: PUSH2 0x1123 00001119: JUMPI 0000111a: RETURNDATASIZE 0000111b: PUSH1 0x00 0000111d: DUP1 0000111e: RETURNDATACOPY 0000111f: RETURNDATASIZE 00001120: PUSH1 0x00 00001122: REVERT 00001123: JUMPDEST 00001124: POP 00001125: POP 00001126: POP 00001127: POP 00001128: JUMPDEST 00001129: PUSH1 0x01 0000112b: ADD 0000112c: PUSH2 0x1058 0000112f: JUMP 00001130: JUMPDEST 00001131: POP 00001132: PUSH1 0x08 00001134: SLOAD 00001135: PUSH1 0x07 00001137: SLOAD 00001138: TIMESTAMP 00001139: SUB 0000113a: LT 0000113b: PUSH2 0x1194 0000113e: JUMPI 0000113f: PUSH4 0x3b9aca00 00001144: PUSH2 0x114b 00001147: PUSH2 0x2e89 0000114a: JUMP 0000114b: JUMPDEST 0000114c: GT 0000114d: ISZERO 0000114e: PUSH2 0x1175 00001151: JUMPI 00001152: PUSH2 0x1170 00001155: PUSH2 0x116b 00001158: PUSH1 0x19 0000115a: SLOAD 0000115b: PUSH1 0x1a 0000115d: SLOAD 0000115e: PUSH2 0x43ed 00001161: SWAP1 00001162: SWAP2 00001163: SWAP1 00001164: PUSH4 0xffffffff 00001169: AND 0000116a: JUMP 0000116b: JUMPDEST 0000116c: PUSH2 0x442f 0000116f: JUMP 00001170: JUMPDEST 00001171: PUSH2 0x118f 00001174: JUMP 00001175: JUMPDEST 00001176: PUSH2 0x118f 00001179: PUSH2 0x116b 0000117c: PUSH1 0x19 0000117e: SLOAD 0000117f: PUSH1 0x1a 00001181: SLOAD 00001182: PUSH2 0x4393 00001185: SWAP1 00001186: SWAP2 00001187: SWAP1 00001188: PUSH4 0xffffffff 0000118d: AND 0000118e: JUMP 0000118f: JUMPDEST 00001190: TIMESTAMP 00001191: PUSH1 0x07 00001193: SSTORE 00001194: JUMPDEST 00001195: DUP2 00001196: PUSH2 0x11e6 00001199: JUMPI 0000119a: PUSH1 0x40 0000119c: DUP1 0000119d: MLOAD 0000119e: PUSH3 0x461bcd 000011a2: PUSH1 0xe5 000011a4: SHL 000011a5: DUP2 000011a6: MSTORE 000011a7: PUSH1 0x20 000011a9: PUSH1 0x04 000011ab: DUP3 000011ac: ADD 000011ad: MSTORE 000011ae: PUSH1 0x1d 000011b0: PUSH1 0x24 000011b2: DUP3 000011b3: ADD 000011b4: MSTORE 000011b5: PUSH32 0x6d757374207769746864726177206e6f6e2d7a65726f20616d6f756e74000000 000011d6: PUSH1 0x44 000011d8: DUP3 000011d9: ADD 000011da: MSTORE 000011db: SWAP1 000011dc: MLOAD 000011dd: SWAP1 000011de: DUP2 000011df: SWAP1 000011e0: SUB 000011e1: PUSH1 0x64 000011e3: ADD 000011e4: SWAP1 000011e5: REVERT 000011e6: JUMPDEST 000011e7: CALLER 000011e8: PUSH1 0x00 000011ea: SWAP1 000011eb: DUP2 000011ec: MSTORE 000011ed: PUSH1 0x12 000011ef: PUSH1 0x20 000011f1: MSTORE 000011f2: PUSH1 0x40 000011f4: SWAP1 000011f5: KECCAK256 000011f6: SLOAD 000011f7: DUP3 000011f8: GT 000011f9: ISZERO 000011fa: PUSH2 0x1241 000011fd: JUMPI 000011fe: PUSH1 0x40 00001200: DUP1 00001201: MLOAD 00001202: PUSH3 0x461bcd 00001206: PUSH1 0xe5 00001208: SHL 00001209: DUP2 0000120a: MSTORE 0000120b: PUSH1 0x20 0000120d: PUSH1 0x04 0000120f: DUP3 00001210: ADD 00001211: MSTORE 00001212: PUSH1 0x14 00001214: PUSH1 0x24 00001216: DUP3 00001217: ADD 00001218: MSTORE 00001219: PUSH20 0x696e73756666696369656e742062616c616e6365 0000122e: PUSH1 0x60 00001230: SHL 00001231: PUSH1 0x44 00001233: DUP3 00001234: ADD 00001235: MSTORE 00001236: SWAP1 00001237: MLOAD 00001238: SWAP1 00001239: DUP2 0000123a: SWAP1 0000123b: SUB 0000123c: PUSH1 0x64 0000123e: ADD 0000123f: SWAP1 00001240: REVERT 00001241: JUMPDEST 00001242: PUSH1 0x01 00001244: PUSH1 0x01 00001246: PUSH1 0xa0 00001248: SHL 00001249: SUB 0000124a: DUP2 0000124b: AND 0000124c: PUSH1 0x00 0000124e: SWAP1 0000124f: DUP2 00001250: MSTORE 00001251: PUSH1 0x1e 00001253: PUSH1 0x20 00001255: MSTORE 00001256: PUSH1 0x40 00001258: SWAP1 00001259: KECCAK256 0000125a: SLOAD 0000125b: PUSH1 0xff 0000125d: AND 0000125e: PUSH2 0x12ae 00001261: JUMPI 00001262: PUSH1 0x40 00001264: DUP1 00001265: MLOAD 00001266: PUSH3 0x461bcd 0000126a: PUSH1 0xe5 0000126c: SHL 0000126d: DUP2 0000126e: MSTORE 0000126f: PUSH1 0x20 00001271: PUSH1 0x04 00001273: DUP3 00001274: ADD 00001275: MSTORE 00001276: PUSH1 0x1e 00001278: PUSH1 0x24 0000127a: DUP3 0000127b: ADD 0000127c: MSTORE 0000127d: PUSH32 0x6d75737420626520616e206578697374696e6720636f6c6c61746572616c0000 0000129e: PUSH1 0x44 000012a0: DUP3 000012a1: ADD 000012a2: MSTORE 000012a3: SWAP1 000012a4: MLOAD 000012a5: SWAP1 000012a6: DUP2 000012a7: SWAP1 000012a8: SUB 000012a9: PUSH1 0x64 000012ab: ADD 000012ac: SWAP1 000012ad: REVERT 000012ae: JUMPDEST 000012af: PUSH1 0x10 000012b1: SLOAD 000012b2: CALLER 000012b3: PUSH1 0x00 000012b5: SWAP1 000012b6: DUP2 000012b7: MSTORE 000012b8: PUSH1 0x13 000012ba: PUSH1 0x20 000012bc: MSTORE 000012bd: PUSH1 0x40 000012bf: SWAP1 000012c0: KECCAK256 000012c1: SLOAD 000012c2: NUMBER 000012c3: SWAP2 000012c4: ADD 000012c5: GT 000012c6: ISZERO 000012c7: PUSH2 0x1301 000012ca: JUMPI 000012cb: PUSH1 0x40 000012cd: MLOAD 000012ce: PUSH3 0x461bcd 000012d2: PUSH1 0xe5 000012d4: SHL 000012d5: DUP2 000012d6: MSTORE 000012d7: PUSH1 0x04 000012d9: ADD 000012da: DUP1 000012db: DUP1 000012dc: PUSH1 0x20 000012de: ADD 000012df: DUP3 000012e0: DUP2 000012e1: SUB 000012e2: DUP3 000012e3: MSTORE 000012e4: PUSH1 0x2a 000012e6: DUP2 000012e7: MSTORE 000012e8: PUSH1 0x20 000012ea: ADD 000012eb: DUP1 000012ec: PUSH2 0x4ab4 000012ef: PUSH1 0x2a 000012f1: SWAP2 000012f2: CODECOPY 000012f3: PUSH1 0x40 000012f5: ADD 000012f6: SWAP2 000012f7: POP 000012f8: POP 000012f9: PUSH1 0x40 000012fb: MLOAD 000012fc: DUP1 000012fd: SWAP2 000012fe: SUB 000012ff: SWAP1 00001300: REVERT 00001301: JUMPDEST 00001302: PUSH1 0x11 00001304: SLOAD 00001305: PUSH2 0x130e 00001308: SWAP1 00001309: DUP4 0000130a: PUSH2 0x43ed 0000130d: JUMP 0000130e: JUMPDEST 0000130f: PUSH1 0x11 00001311: SSTORE 00001312: CALLER 00001313: PUSH1 0x00 00001315: SWAP1 00001316: DUP2 00001317: MSTORE 00001318: PUSH1 0x12 0000131a: PUSH1 0x20 0000131c: MSTORE 0000131d: PUSH1 0x40 0000131f: SWAP1 00001320: KECCAK256 00001321: SLOAD 00001322: PUSH2 0x132b 00001325: SWAP1 00001326: DUP4 00001327: PUSH2 0x43ed 0000132a: JUMP 0000132b: JUMPDEST 0000132c: CALLER 0000132d: PUSH1 0x00 0000132f: SWAP1 00001330: DUP2 00001331: MSTORE 00001332: PUSH1 0x12 00001334: PUSH1 0x20 00001336: SWAP1 00001337: DUP2 00001338: MSTORE 00001339: PUSH1 0x40 0000133b: DUP1 0000133c: DUP4 0000133d: KECCAK256 0000133e: SWAP4 0000133f: SWAP1 00001340: SWAP4 00001341: SSTORE 00001342: PUSH1 0x25 00001344: SWAP1 00001345: MSTORE 00001346: KECCAK256 00001347: SLOAD 00001348: PUSH2 0x1351 0000134b: SWAP1 0000134c: DUP4 0000134d: PUSH2 0x4393 00001350: JUMP 00001351: JUMPDEST 00001352: CALLER 00001353: PUSH1 0x00 00001355: DUP2 00001356: DUP2 00001357: MSTORE 00001358: PUSH1 0x25 0000135a: PUSH1 0x20 0000135c: SWAP1 0000135d: DUP2 0000135e: MSTORE 0000135f: PUSH1 0x40 00001361: DUP1 00001362: DUP4 00001363: KECCAK256 00001364: SWAP5 00001365: SWAP1 00001366: SWAP5 00001367: SSTORE 00001368: PUSH1 0x13 0000136a: DUP2 0000136b: MSTORE 0000136c: DUP4 0000136d: DUP3 0000136e: KECCAK256 0000136f: NUMBER 00001370: SWAP1 00001371: SSTORE 00001372: DUP4 00001373: MLOAD 00001374: DUP7 00001375: DUP2 00001376: MSTORE 00001377: SWAP4 00001378: MLOAD 00001379: SWAP2 0000137a: SWAP4 0000137b: PUSH1 0x00 0000137d: DUP1 0000137e: MLOAD 0000137f: PUSH1 0x20 00001381: PUSH2 0x4a11 00001384: DUP4 00001385: CODECOPY 00001386: DUP2 00001387: MLOAD 00001388: SWAP2 00001389: MSTORE 0000138a: SWAP3 0000138b: SWAP1 0000138c: DUP2 0000138d: SWAP1 0000138e: SUB 0000138f: SWAP1 00001390: SWAP2 00001391: ADD 00001392: SWAP1 00001393: LOG3 00001394: POP 00001395: POP 00001396: PUSH1 0x01 00001398: PUSH1 0x06 0000139a: SSTORE 0000139b: JUMP 0000139c: JUMPDEST 0000139d: PUSH1 0x03 0000139f: DUP1 000013a0: SLOAD 000013a1: PUSH1 0x40 000013a3: DUP1 000013a4: MLOAD 000013a5: PUSH1 0x20 000013a7: PUSH1 0x1f 000013a9: PUSH1 0x02 000013ab: PUSH1 0x00 000013ad: NOT 000013ae: PUSH2 0x0100 000013b1: PUSH1 0x01 000013b3: DUP9 000013b4: AND 000013b5: ISZERO 000013b6: MUL 000013b7: ADD 000013b8: SWAP1 000013b9: SWAP6 000013ba: AND 000013bb: SWAP5 000013bc: SWAP1 000013bd: SWAP5 000013be: DIV 000013bf: SWAP4 000013c0: DUP5 000013c1: ADD 000013c2: DUP2 000013c3: SWAP1 000013c4: DIV 000013c5: DUP2 000013c6: MUL 000013c7: DUP3 000013c8: ADD 000013c9: DUP2 000013ca: ADD 000013cb: SWAP1 000013cc: SWAP3 000013cd: MSTORE 000013ce: DUP3 000013cf: DUP2 000013d0: MSTORE 000013d1: PUSH1 0x60 000013d3: SWAP4 000013d4: SWAP1 000013d5: SWAP3 000013d6: SWAP1 000013d7: SWAP2 000013d8: DUP4 000013d9: ADD 000013da: DUP3 000013db: DUP3 000013dc: DUP1 000013dd: ISZERO 000013de: PUSH2 0x1428 000013e1: JUMPI 000013e2: DUP1 000013e3: PUSH1 0x1f 000013e5: LT 000013e6: PUSH2 0x13fd 000013e9: JUMPI 000013ea: PUSH2 0x0100 000013ed: DUP1 000013ee: DUP4 000013ef: SLOAD 000013f0: DIV 000013f1: MUL 000013f2: DUP4 000013f3: MSTORE 000013f4: SWAP2 000013f5: PUSH1 0x20 000013f7: ADD 000013f8: SWAP2 000013f9: PUSH2 0x1428 000013fc: JUMP 000013fd: JUMPDEST 000013fe: DUP3 000013ff: ADD 00001400: SWAP2 00001401: SWAP1 00001402: PUSH1 0x00 00001404: MSTORE 00001405: PUSH1 0x20 00001407: PUSH1 0x00 00001409: KECCAK256 0000140a: SWAP1 0000140b: JUMPDEST 0000140c: DUP2 0000140d: SLOAD 0000140e: DUP2 0000140f: MSTORE 00001410: SWAP1 00001411: PUSH1 0x01 00001413: ADD 00001414: SWAP1 00001415: PUSH1 0x20 00001417: ADD 00001418: DUP1 00001419: DUP4 0000141a: GT 0000141b: PUSH2 0x140b 0000141e: JUMPI 0000141f: DUP3 00001420: SWAP1 00001421: SUB 00001422: PUSH1 0x1f 00001424: AND 00001425: DUP3 00001426: ADD 00001427: SWAP2 00001428: JUMPDEST 00001429: POP 0000142a: POP 0000142b: POP 0000142c: POP 0000142d: POP 0000142e: SWAP1 0000142f: POP 00001430: JUMPDEST 00001431: SWAP1 00001432: JUMP 00001433: JUMPDEST 00001434: PUSH1 0x00 00001436: DUP3 00001437: PUSH1 0x01 00001439: PUSH1 0x01 0000143b: PUSH1 0xa0 0000143d: SHL 0000143e: SUB 0000143f: DUP2 00001440: AND 00001441: PUSH2 0x1449 00001444: JUMPI 00001445: PUSH1 0x00 00001447: DUP1 00001448: REVERT 00001449: JUMPDEST 0000144a: PUSH1 0x01 0000144c: PUSH1 0x01 0000144e: PUSH1 0xa0 00001450: SHL 00001451: SUB 00001452: DUP2 00001453: AND 00001454: ADDRESS 00001455: EQ 00001456: ISZERO 00001457: PUSH2 0x145f 0000145a: JUMPI 0000145b: PUSH1 0x00 0000145d: DUP1 0000145e: REVERT 0000145f: JUMPDEST 00001460: PUSH1 0x0d 00001462: SLOAD 00001463: PUSH1 0x01 00001465: PUSH1 0x01 00001467: PUSH1 0xa0 00001469: SHL 0000146a: SUB 0000146b: AND 0000146c: ISZERO 0000146d: PUSH2 0x168c 00001470: JUMPI 00001471: PUSH1 0x0e 00001473: SLOAD 00001474: PUSH1 0x01 00001476: PUSH1 0xa0 00001478: SHL 00001479: SWAP1 0000147a: DIV 0000147b: PUSH1 0xff 0000147d: AND 0000147e: PUSH2 0x14ea 00001481: JUMPI 00001482: PUSH1 0x0e 00001484: PUSH1 0x00 00001486: SWAP1 00001487: SLOAD 00001488: SWAP1 00001489: PUSH2 0x0100 0000148c: EXP 0000148d: SWAP1 0000148e: DIV 0000148f: PUSH1 0x01 00001491: PUSH1 0x01 00001493: PUSH1 0xa0 00001495: SHL 00001496: SUB 00001497: AND 00001498: PUSH1 0x01 0000149a: PUSH1 0x01 0000149c: PUSH1 0xa0 0000149e: SHL 0000149f: SUB 000014a0: AND 000014a1: PUSH4 0xa2e62045 000014a6: PUSH1 0x40 000014a8: MLOAD 000014a9: DUP2 000014aa: PUSH4 0xffffffff 000014af: AND 000014b0: PUSH1 0xe0 000014b2: SHL 000014b3: DUP2 000014b4: MSTORE 000014b5: PUSH1 0x04 000014b7: ADD 000014b8: PUSH1 0x00 000014ba: PUSH1 0x40 000014bc: MLOAD 000014bd: DUP1 000014be: DUP4 000014bf: SUB 000014c0: DUP2 000014c1: PUSH1 0x00 000014c3: DUP8 000014c4: DUP1 000014c5: EXTCODESIZE 000014c6: ISZERO 000014c7: DUP1 000014c8: ISZERO 000014c9: PUSH2 0x14d1 000014cc: JUMPI 000014cd: PUSH1 0x00 000014cf: DUP1 000014d0: REVERT 000014d1: JUMPDEST 000014d2: POP 000014d3: GAS 000014d4: CALL 000014d5: ISZERO 000014d6: DUP1 000014d7: ISZERO 000014d8: PUSH2 0x14e5 000014db: JUMPI 000014dc: RETURNDATASIZE 000014dd: PUSH1 0x00 000014df: DUP1 000014e0: RETURNDATACOPY 000014e1: RETURNDATASIZE 000014e2: PUSH1 0x00 000014e4: REVERT 000014e5: JUMPDEST 000014e6: POP 000014e7: POP 000014e8: POP 000014e9: POP 000014ea: JUMPDEST 000014eb: PUSH1 0x0d 000014ed: PUSH1 0x00 000014ef: SWAP1 000014f0: SLOAD 000014f1: SWAP1 000014f2: PUSH2 0x0100 000014f5: EXP 000014f6: SWAP1 000014f7: DIV 000014f8: PUSH1 0x01 000014fa: PUSH1 0x01 000014fc: PUSH1 0xa0 000014fe: SHL 000014ff: SUB 00001500: AND 00001501: PUSH1 0x01 00001503: PUSH1 0x01 00001505: PUSH1 0xa0 00001507: SHL 00001508: SUB 00001509: AND 0000150a: PUSH4 0xa2e62045 0000150f: PUSH1 0x40 00001511: MLOAD 00001512: DUP2 00001513: PUSH4 0xffffffff 00001518: AND 00001519: PUSH1 0xe0 0000151b: SHL 0000151c: DUP2 0000151d: MSTORE 0000151e: PUSH1 0x04 00001520: ADD 00001521: PUSH1 0x00 00001523: PUSH1 0x40 00001525: MLOAD 00001526: DUP1 00001527: DUP4 00001528: SUB 00001529: DUP2 0000152a: PUSH1 0x00 0000152c: DUP8 0000152d: DUP1 0000152e: EXTCODESIZE 0000152f: ISZERO 00001530: DUP1 00001531: ISZERO 00001532: PUSH2 0x153a 00001535: JUMPI 00001536: PUSH1 0x00 00001538: DUP1 00001539: REVERT 0000153a: JUMPDEST 0000153b: POP 0000153c: GAS 0000153d: CALL 0000153e: ISZERO 0000153f: DUP1 00001540: ISZERO 00001541: PUSH2 0x154e 00001544: JUMPI 00001545: RETURNDATASIZE 00001546: PUSH1 0x00 00001548: DUP1 00001549: RETURNDATACOPY 0000154a: RETURNDATASIZE 0000154b: PUSH1 0x00 0000154d: REVERT 0000154e: JUMPDEST 0000154f: POP 00001550: POP 00001551: POP 00001552: POP 00001553: PUSH1 0x00 00001555: JUMPDEST 00001556: PUSH1 0x1c 00001558: SLOAD 00001559: DUP2 0000155a: LT 0000155b: ISZERO 0000155c: PUSH2 0x162d 0000155f: JUMPI 00001560: PUSH1 0x1b 00001562: PUSH1 0x00 00001564: PUSH1 0x1c 00001566: DUP4 00001567: DUP2 00001568: SLOAD 00001569: DUP2 0000156a: LT 0000156b: PUSH2 0x1570 0000156e: JUMPI 0000156f: INVALID 00001570: JUMPDEST 00001571: PUSH1 0x00 00001573: SWAP2 00001574: DUP3 00001575: MSTORE 00001576: PUSH1 0x20 00001578: DUP1 00001579: DUP4 0000157a: KECCAK256 0000157b: SWAP1 0000157c: SWAP2 0000157d: ADD 0000157e: SLOAD 0000157f: PUSH1 0x01 00001581: PUSH1 0x01 00001583: PUSH1 0xa0 00001585: SHL 00001586: SUB 00001587: AND 00001588: DUP4 00001589: MSTORE 0000158a: DUP3 0000158b: ADD 0000158c: SWAP3 0000158d: SWAP1 0000158e: SWAP3 0000158f: MSTORE 00001590: PUSH1 0x40 00001592: ADD 00001593: SWAP1 00001594: KECCAK256 00001595: SLOAD 00001596: PUSH1 0xff 00001598: AND 00001599: ISZERO 0000159a: PUSH2 0x1625 0000159d: JUMPI 0000159e: PUSH1 0x1f 000015a0: PUSH1 0x00 000015a2: PUSH1 0x1c 000015a4: DUP4 000015a5: DUP2 000015a6: SLOAD 000015a7: DUP2 000015a8: LT 000015a9: PUSH2 0x15ae 000015ac: JUMPI 000015ad: INVALID 000015ae: JUMPDEST 000015af: PUSH1 0x00 000015b1: SWAP2 000015b2: DUP3 000015b3: MSTORE 000015b4: PUSH1 0x20 000015b6: DUP1 000015b7: DUP4 000015b8: KECCAK256 000015b9: SWAP1 000015ba: SWAP2 000015bb: ADD 000015bc: SLOAD 000015bd: PUSH1 0x01 000015bf: PUSH1 0x01 000015c1: PUSH1 0xa0 000015c3: SHL 000015c4: SUB 000015c5: SWAP1 000015c6: DUP2 000015c7: AND 000015c8: DUP5 000015c9: MSTORE 000015ca: SWAP1 000015cb: DUP4 000015cc: ADD 000015cd: SWAP4 000015ce: SWAP1 000015cf: SWAP4 000015d0: MSTORE 000015d1: PUSH1 0x40 000015d3: SWAP2 000015d4: DUP3 000015d5: ADD 000015d6: DUP2 000015d7: KECCAK256 000015d8: SLOAD 000015d9: DUP3 000015da: MLOAD 000015db: PUSH4 0xa2e62045 000015e0: PUSH1 0xe0 000015e2: SHL 000015e3: DUP2 000015e4: MSTORE 000015e5: SWAP3 000015e6: MLOAD 000015e7: SWAP4 000015e8: AND 000015e9: SWAP3 000015ea: PUSH4 0xa2e62045 000015ef: SWAP3 000015f0: PUSH1 0x04 000015f2: DUP1 000015f3: DUP3 000015f4: ADD 000015f5: SWAP4 000015f6: SWAP3 000015f7: SWAP2 000015f8: DUP3 000015f9: SWAP1 000015fa: SUB 000015fb: ADD 000015fc: DUP2 000015fd: DUP4 000015fe: DUP8 000015ff: DUP1 00001600: EXTCODESIZE 00001601: ISZERO 00001602: DUP1 00001603: ISZERO 00001604: PUSH2 0x160c 00001607: JUMPI 00001608: PUSH1 0x00 0000160a: DUP1 0000160b: REVERT 0000160c: JUMPDEST 0000160d: POP 0000160e: GAS 0000160f: CALL 00001610: ISZERO 00001611: DUP1 00001612: ISZERO 00001613: PUSH2 0x1620 00001616: JUMPI 00001617: RETURNDATASIZE 00001618: PUSH1 0x00 0000161a: DUP1 0000161b: RETURNDATACOPY 0000161c: RETURNDATASIZE 0000161d: PUSH1 0x00 0000161f: REVERT 00001620: JUMPDEST 00001621: POP 00001622: POP 00001623: POP 00001624: POP 00001625: JUMPDEST 00001626: PUSH1 0x01 00001628: ADD 00001629: PUSH2 0x1555 0000162c: JUMP 0000162d: JUMPDEST 0000162e: POP 0000162f: PUSH1 0x08 00001631: SLOAD 00001632: PUSH1 0x07 00001634: SLOAD 00001635: TIMESTAMP 00001636: SUB 00001637: LT 00001638: PUSH2 0x168c 0000163b: JUMPI 0000163c: PUSH4 0x3b9aca00 00001641: PUSH2 0x1648 00001644: PUSH2 0x2e89 00001647: JUMP 00001648: JUMPDEST 00001649: GT 0000164a: ISZERO 0000164b: PUSH2 0x166d 0000164e: JUMPI 0000164f: PUSH2 0x1668 00001652: PUSH2 0x116b 00001655: PUSH1 0x19 00001657: SLOAD 00001658: PUSH1 0x1a 0000165a: SLOAD 0000165b: PUSH2 0x43ed 0000165e: SWAP1 0000165f: SWAP2 00001660: SWAP1 00001661: PUSH4 0xffffffff 00001666: AND 00001667: JUMP 00001668: JUMPDEST 00001669: PUSH2 0x1687 0000166c: JUMP 0000166d: JUMPDEST 0000166e: PUSH2 0x1687 00001671: PUSH2 0x116b 00001674: PUSH1 0x19 00001676: SLOAD 00001677: PUSH1 0x1a 00001679: SLOAD 0000167a: PUSH2 0x4393 0000167d: SWAP1 0000167e: SWAP2 0000167f: SWAP1 00001680: PUSH4 0xffffffff 00001685: AND 00001686: JUMP 00001687: JUMPDEST 00001688: TIMESTAMP 00001689: PUSH1 0x07 0000168b: SSTORE 0000168c: JUMPDEST 0000168d: CALLER 0000168e: PUSH1 0x00 00001690: DUP2 00001691: DUP2 00001692: MSTORE 00001693: PUSH1 0x14 00001695: PUSH1 0x20 00001697: SWAP1 00001698: DUP2 00001699: MSTORE 0000169a: PUSH1 0x40 0000169c: DUP1 0000169d: DUP4 0000169e: KECCAK256 0000169f: PUSH1 0x01 000016a1: PUSH1 0x01 000016a3: PUSH1 0xa0 000016a5: SHL 000016a6: SUB 000016a7: DUP10 000016a8: AND 000016a9: DUP1 000016aa: DUP6 000016ab: MSTORE 000016ac: SWAP1 000016ad: DUP4 000016ae: MSTORE 000016af: SWAP3 000016b0: DUP2 000016b1: SWAP1 000016b2: KECCAK256 000016b3: DUP8 000016b4: SWAP1 000016b5: SSTORE 000016b6: DUP1 000016b7: MLOAD 000016b8: DUP8 000016b9: DUP2 000016ba: MSTORE 000016bb: SWAP1 000016bc: MLOAD 000016bd: SWAP3 000016be: SWAP4 000016bf: SWAP3 000016c0: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 000016e1: SWAP3 000016e2: SWAP2 000016e3: DUP2 000016e4: SWAP1 000016e5: SUB 000016e6: SWAP1 000016e7: SWAP2 000016e8: ADD 000016e9: SWAP1 000016ea: LOG3 000016eb: POP 000016ec: PUSH1 0x01 000016ee: SWAP4 000016ef: SWAP3 000016f0: POP 000016f1: POP 000016f2: POP 000016f3: JUMP 000016f4: JUMPDEST 000016f5: PUSH1 0x23 000016f7: SLOAD 000016f8: PUSH1 0x00 000016fa: SWAP1 000016fb: PUSH1 0x01 000016fd: PUSH1 0x01 000016ff: PUSH1 0xa0 00001701: SHL 00001702: SUB 00001703: AND 00001704: CALLER 00001705: EQ 00001706: PUSH2 0x1744 00001709: JUMPI 0000170a: PUSH1 0x40 0000170c: DUP1 0000170d: MLOAD 0000170e: PUSH3 0x461bcd 00001712: PUSH1 0xe5 00001714: SHL 00001715: DUP2 00001716: MSTORE 00001717: PUSH1 0x20 00001719: PUSH1 0x04 0000171b: DUP3 0000171c: ADD 0000171d: MSTORE 0000171e: PUSH1 0x1d 00001720: PUSH1 0x24 00001722: DUP3 00001723: ADD 00001724: MSTORE 00001725: PUSH1 0x00 00001727: DUP1 00001728: MLOAD 00001729: PUSH1 0x20 0000172b: PUSH2 0x4ade 0000172e: DUP4 0000172f: CODECOPY 00001730: DUP2 00001731: MLOAD 00001732: SWAP2 00001733: MSTORE 00001734: PUSH1 0x44 00001736: DUP3 00001737: ADD 00001738: MSTORE 00001739: SWAP1 0000173a: MLOAD 0000173b: SWAP1 0000173c: DUP2 0000173d: SWAP1 0000173e: SUB 0000173f: PUSH1 0x64 00001741: ADD 00001742: SWAP1 00001743: REVERT 00001744: JUMPDEST 00001745: DUP2 00001746: PUSH2 0x1780 00001749: JUMPI 0000174a: PUSH1 0x40 0000174c: MLOAD 0000174d: PUSH3 0x461bcd 00001751: PUSH1 0xe5 00001753: SHL 00001754: DUP2 00001755: MSTORE 00001756: PUSH1 0x04 00001758: ADD 00001759: DUP1 0000175a: DUP1 0000175b: PUSH1 0x20 0000175d: ADD 0000175e: DUP3 0000175f: DUP2 00001760: SUB 00001761: DUP3 00001762: MSTORE 00001763: PUSH1 0x22 00001765: DUP2 00001766: MSTORE 00001767: PUSH1 0x20 00001769: ADD 0000176a: DUP1 0000176b: PUSH2 0x4997 0000176e: PUSH1 0x22 00001770: SWAP2 00001771: CODECOPY 00001772: PUSH1 0x40 00001774: ADD 00001775: SWAP2 00001776: POP 00001777: POP 00001778: PUSH1 0x40 0000177a: MLOAD 0000177b: DUP1 0000177c: SWAP2 0000177d: SUB 0000177e: SWAP1 0000177f: REVERT 00001780: JUMPDEST 00001781: PUSH1 0x08 00001783: DUP3 00001784: SWAP1 00001785: SSTORE 00001786: PUSH1 0x00 00001788: JUMPDEST 00001789: PUSH1 0x1c 0000178b: SLOAD 0000178c: DUP2 0000178d: LT 0000178e: ISZERO 0000178f: PUSH2 0x1867 00001792: JUMPI 00001793: PUSH1 0x1b 00001795: PUSH1 0x00 00001797: PUSH1 0x1c 00001799: DUP4 0000179a: DUP2 0000179b: SLOAD 0000179c: DUP2 0000179d: LT 0000179e: PUSH2 0x17a3 000017a1: JUMPI 000017a2: INVALID 000017a3: JUMPDEST 000017a4: PUSH1 0x00 000017a6: SWAP2 000017a7: DUP3 000017a8: MSTORE 000017a9: PUSH1 0x20 000017ab: DUP1 000017ac: DUP4 000017ad: KECCAK256 000017ae: SWAP1 000017af: SWAP2 000017b0: ADD 000017b1: SLOAD 000017b2: PUSH1 0x01 000017b4: PUSH1 0x01 000017b6: PUSH1 0xa0 000017b8: SHL 000017b9: SUB 000017ba: AND 000017bb: DUP4 000017bc: MSTORE 000017bd: DUP3 000017be: ADD 000017bf: SWAP3 000017c0: SWAP1 000017c1: SWAP3 000017c2: MSTORE 000017c3: PUSH1 0x40 000017c5: ADD 000017c6: SWAP1 000017c7: KECCAK256 000017c8: SLOAD 000017c9: PUSH1 0xff 000017cb: AND 000017cc: ISZERO 000017cd: PUSH2 0x185f 000017d0: JUMPI 000017d1: PUSH1 0x1f 000017d3: PUSH1 0x00 000017d5: PUSH1 0x1c 000017d7: DUP4 000017d8: DUP2 000017d9: SLOAD 000017da: DUP2 000017db: LT 000017dc: PUSH2 0x17e1 000017df: JUMPI 000017e0: INVALID 000017e1: JUMPDEST 000017e2: PUSH1 0x00 000017e4: SWAP2 000017e5: DUP3 000017e6: MSTORE 000017e7: PUSH1 0x20 000017e9: DUP1 000017ea: DUP4 000017eb: KECCAK256 000017ec: SWAP1 000017ed: SWAP2 000017ee: ADD 000017ef: SLOAD 000017f0: PUSH1 0x01 000017f2: PUSH1 0x01 000017f4: PUSH1 0xa0 000017f6: SHL 000017f7: SUB 000017f8: SWAP1 000017f9: DUP2 000017fa: AND 000017fb: DUP5 000017fc: MSTORE 000017fd: SWAP1 000017fe: DUP4 000017ff: ADD 00001800: SWAP4 00001801: SWAP1 00001802: SWAP4 00001803: MSTORE 00001804: PUSH1 0x40 00001806: SWAP2 00001807: DUP3 00001808: ADD 00001809: DUP2 0000180a: KECCAK256 0000180b: SLOAD 0000180c: DUP3 0000180d: MLOAD 0000180e: PUSH4 0x63c75607 00001813: PUSH1 0xe0 00001815: SHL 00001816: DUP2 00001817: MSTORE 00001818: PUSH1 0x04 0000181a: DUP2 0000181b: ADD 0000181c: DUP9 0000181d: SWAP1 0000181e: MSTORE 0000181f: SWAP3 00001820: MLOAD 00001821: SWAP4 00001822: AND 00001823: SWAP3 00001824: PUSH4 0x63c75607 00001829: SWAP3 0000182a: PUSH1 0x24 0000182c: DUP1 0000182d: DUP3 0000182e: ADD 0000182f: SWAP4 00001830: SWAP3 00001831: SWAP2 00001832: DUP3 00001833: SWAP1 00001834: SUB 00001835: ADD 00001836: DUP2 00001837: DUP4 00001838: DUP8 00001839: DUP1 0000183a: EXTCODESIZE 0000183b: ISZERO 0000183c: DUP1 0000183d: ISZERO 0000183e: PUSH2 0x1846 00001841: JUMPI 00001842: PUSH1 0x00 00001844: DUP1 00001845: REVERT 00001846: JUMPDEST 00001847: POP 00001848: GAS 00001849: CALL 0000184a: ISZERO 0000184b: DUP1 0000184c: ISZERO 0000184d: PUSH2 0x185a 00001850: JUMPI 00001851: RETURNDATASIZE 00001852: PUSH1 0x00 00001854: DUP1 00001855: RETURNDATACOPY 00001856: RETURNDATASIZE 00001857: PUSH1 0x00 00001859: REVERT 0000185a: JUMPDEST 0000185b: POP 0000185c: POP 0000185d: POP 0000185e: POP 0000185f: JUMPDEST 00001860: PUSH1 0x01 00001862: ADD 00001863: PUSH2 0x1788 00001866: JUMP 00001867: JUMPDEST 00001868: POP 00001869: PUSH1 0x16 0000186b: SLOAD 0000186c: PUSH1 0x40 0000186e: DUP1 0000186f: MLOAD 00001870: PUSH4 0x63c75607 00001875: PUSH1 0xe0 00001877: SHL 00001878: DUP2 00001879: MSTORE 0000187a: PUSH1 0x04 0000187c: DUP2 0000187d: ADD 0000187e: DUP6 0000187f: SWAP1 00001880: MSTORE 00001881: SWAP1 00001882: MLOAD 00001883: PUSH1 0x01 00001885: PUSH1 0x01 00001887: PUSH1 0xa0 00001889: SHL 0000188a: SUB 0000188b: SWAP1 0000188c: SWAP3 0000188d: AND 0000188e: SWAP2 0000188f: PUSH4 0x63c75607 00001894: SWAP2 00001895: PUSH1 0x24 00001897: DUP1 00001898: DUP3 00001899: ADD 0000189a: SWAP3 0000189b: PUSH1 0x00 0000189d: SWAP3 0000189e: SWAP1 0000189f: SWAP2 000018a0: SWAP1 000018a1: DUP3 000018a2: SWAP1 000018a3: SUB 000018a4: ADD 000018a5: DUP2 000018a6: DUP4 000018a7: DUP8 000018a8: DUP1 000018a9: EXTCODESIZE 000018aa: ISZERO 000018ab: DUP1 000018ac: ISZERO 000018ad: PUSH2 0x18b5 000018b0: JUMPI 000018b1: PUSH1 0x00 000018b3: DUP1 000018b4: REVERT 000018b5: JUMPDEST 000018b6: POP 000018b7: GAS 000018b8: CALL 000018b9: ISZERO 000018ba: DUP1 000018bb: ISZERO 000018bc: PUSH2 0x18c9 000018bf: JUMPI 000018c0: RETURNDATASIZE 000018c1: PUSH1 0x00 000018c3: DUP1 000018c4: RETURNDATACOPY 000018c5: RETURNDATASIZE 000018c6: PUSH1 0x00 000018c8: REVERT 000018c9: JUMPDEST 000018ca: POP 000018cb: POP 000018cc: PUSH1 0x0d 000018ce: SLOAD 000018cf: PUSH1 0x40 000018d1: DUP1 000018d2: MLOAD 000018d3: PUSH4 0x63c75607 000018d8: PUSH1 0xe0 000018da: SHL 000018db: DUP2 000018dc: MSTORE 000018dd: PUSH1 0x04 000018df: DUP2 000018e0: ADD 000018e1: DUP8 000018e2: SWAP1 000018e3: MSTORE 000018e4: SWAP1 000018e5: MLOAD 000018e6: PUSH1 0x01 000018e8: PUSH1 0x01 000018ea: PUSH1 0xa0 000018ec: SHL 000018ed: SUB 000018ee: SWAP1 000018ef: SWAP3 000018f0: AND 000018f1: SWAP4 000018f2: POP 000018f3: PUSH4 0x63c75607 000018f8: SWAP3 000018f9: POP 000018fa: PUSH1 0x24 000018fc: DUP1 000018fd: DUP3 000018fe: ADD 000018ff: SWAP3 00001900: PUSH1 0x00 00001902: SWAP3 00001903: SWAP1 00001904: SWAP2 00001905: SWAP1 00001906: DUP3 00001907: SWAP1 00001908: SUB 00001909: ADD 0000190a: DUP2 0000190b: DUP4 0000190c: DUP8 0000190d: DUP1 0000190e: EXTCODESIZE 0000190f: ISZERO 00001910: DUP1 00001911: ISZERO 00001912: PUSH2 0x191a 00001915: JUMPI 00001916: PUSH1 0x00 00001918: DUP1 00001919: REVERT 0000191a: JUMPDEST 0000191b: POP 0000191c: GAS 0000191d: CALL 0000191e: ISZERO 0000191f: DUP1 00001920: ISZERO 00001921: PUSH2 0x192e 00001924: JUMPI 00001925: RETURNDATASIZE 00001926: PUSH1 0x00 00001928: DUP1 00001929: RETURNDATACOPY 0000192a: RETURNDATASIZE 0000192b: PUSH1 0x00 0000192d: REVERT 0000192e: JUMPDEST 0000192f: POP 00001930: POP 00001931: PUSH1 0x0e 00001933: SLOAD 00001934: PUSH1 0x01 00001936: PUSH1 0xa0 00001938: SHL 00001939: SWAP1 0000193a: DIV 0000193b: PUSH1 0xff 0000193d: AND 0000193e: SWAP2 0000193f: POP 00001940: PUSH2 0x19ab 00001943: SWAP1 00001944: POP 00001945: JUMPI 00001946: PUSH1 0x0e 00001948: SLOAD 00001949: PUSH1 0x40 0000194b: DUP1 0000194c: MLOAD 0000194d: PUSH4 0x63c75607 00001952: PUSH1 0xe0 00001954: SHL 00001955: DUP2 00001956: MSTORE 00001957: PUSH1 0x04 00001959: DUP2 0000195a: ADD 0000195b: DUP6 0000195c: SWAP1 0000195d: MSTORE 0000195e: SWAP1 0000195f: MLOAD 00001960: PUSH1 0x01 00001962: PUSH1 0x01 00001964: PUSH1 0xa0 00001966: SHL 00001967: SUB 00001968: SWAP1 00001969: SWAP3 0000196a: AND 0000196b: SWAP2 0000196c: PUSH4 0x63c75607 00001971: SWAP2 00001972: PUSH1 0x24 00001974: DUP1 00001975: DUP3 00001976: ADD 00001977: SWAP3 00001978: PUSH1 0x00 0000197a: SWAP3 0000197b: SWAP1 0000197c: SWAP2 0000197d: SWAP1 0000197e: DUP3 0000197f: SWAP1 00001980: SUB 00001981: ADD 00001982: DUP2 00001983: DUP4 00001984: DUP8 00001985: DUP1 00001986: EXTCODESIZE 00001987: ISZERO 00001988: DUP1 00001989: ISZERO 0000198a: PUSH2 0x1992 0000198d: JUMPI 0000198e: PUSH1 0x00 00001990: DUP1 00001991: REVERT 00001992: JUMPDEST 00001993: POP 00001994: GAS 00001995: CALL 00001996: ISZERO 00001997: DUP1 00001998: ISZERO 00001999: PUSH2 0x19a6 0000199c: JUMPI 0000199d: RETURNDATASIZE 0000199e: PUSH1 0x00 000019a0: DUP1 000019a1: RETURNDATACOPY 000019a2: RETURNDATASIZE 000019a3: PUSH1 0x00 000019a5: REVERT 000019a6: JUMPDEST 000019a7: POP 000019a8: POP 000019a9: POP 000019aa: POP 000019ab: JUMPDEST 000019ac: PUSH1 0x40 000019ae: DUP1 000019af: MLOAD 000019b0: DUP4 000019b1: DUP2 000019b2: MSTORE 000019b3: SWAP1 000019b4: MLOAD 000019b5: PUSH32 0xf96993476642ad4471e701dee382f1d8b7947acb089dba94a2f49e477e85c879 000019d6: SWAP2 000019d7: DUP2 000019d8: SWAP1 000019d9: SUB 000019da: PUSH1 0x20 000019dc: ADD 000019dd: SWAP1 000019de: LOG1 000019df: POP 000019e0: PUSH1 0x01 000019e2: SWAP2 000019e3: SWAP1 000019e4: POP 000019e5: JUMP 000019e6: JUMPDEST 000019e7: PUSH1 0x1a 000019e9: SLOAD 000019ea: DUP2 000019eb: JUMP 000019ec: JUMPDEST 000019ed: PUSH1 0x0e 000019ef: SLOAD 000019f0: PUSH1 0x01 000019f2: PUSH1 0x01 000019f4: PUSH1 0xa0 000019f6: SHL 000019f7: SUB 000019f8: AND 000019f9: DUP2 000019fa: JUMP 000019fb: JUMPDEST 000019fc: PUSH5 0x174876e800 00001a02: DUP2 00001a03: JUMP 00001a04: JUMPDEST 00001a05: PUSH1 0x17 00001a07: SLOAD 00001a08: PUSH1 0x01 00001a0a: PUSH1 0x01 00001a0c: PUSH1 0xa0 00001a0e: SHL 00001a0f: SUB 00001a10: AND 00001a11: DUP2 00001a12: JUMP 00001a13: JUMPDEST 00001a14: PUSH1 0x20 00001a16: SLOAD 00001a17: DUP2 00001a18: JUMP 00001a19: JUMPDEST 00001a1a: PUSH1 0x23 00001a1c: SLOAD 00001a1d: PUSH1 0x01 00001a1f: PUSH1 0x01 00001a21: PUSH1 0xa0 00001a23: SHL 00001a24: SUB 00001a25: AND 00001a26: CALLER 00001a27: EQ 00001a28: PUSH2 0x1a66 00001a2b: JUMPI 00001a2c: PUSH1 0x40 00001a2e: DUP1 00001a2f: MLOAD 00001a30: PUSH3 0x461bcd 00001a34: PUSH1 0xe5 00001a36: SHL 00001a37: DUP2 00001a38: MSTORE 00001a39: PUSH1 0x20 00001a3b: PUSH1 0x04 00001a3d: DUP3 00001a3e: ADD 00001a3f: MSTORE 00001a40: PUSH1 0x1d 00001a42: PUSH1 0x24 00001a44: DUP3 00001a45: ADD 00001a46: MSTORE 00001a47: PUSH1 0x00 00001a49: DUP1 00001a4a: MLOAD 00001a4b: PUSH1 0x20 00001a4d: PUSH2 0x4ade 00001a50: DUP4 00001a51: CODECOPY 00001a52: DUP2 00001a53: MLOAD 00001a54: SWAP2 00001a55: MSTORE 00001a56: PUSH1 0x44 00001a58: DUP3 00001a59: ADD 00001a5a: MSTORE 00001a5b: SWAP1 00001a5c: MLOAD 00001a5d: SWAP1 00001a5e: DUP2 00001a5f: SWAP1 00001a60: SUB 00001a61: PUSH1 0x64 00001a63: ADD 00001a64: SWAP1 00001a65: REVERT 00001a66: JUMPDEST 00001a67: PUSH1 0x01 00001a69: PUSH1 0x01 00001a6b: PUSH1 0xa0 00001a6d: SHL 00001a6e: SUB 00001a6f: DUP3 00001a70: AND 00001a71: PUSH1 0x00 00001a73: SWAP1 00001a74: DUP2 00001a75: MSTORE 00001a76: PUSH1 0x1b 00001a78: PUSH1 0x20 00001a7a: MSTORE 00001a7b: PUSH1 0x40 00001a7d: SWAP1 00001a7e: KECCAK256 00001a7f: SLOAD 00001a80: PUSH1 0xff 00001a82: AND 00001a83: PUSH2 0x1ac8 00001a86: JUMPI 00001a87: PUSH1 0x40 00001a89: DUP1 00001a8a: MLOAD 00001a8b: PUSH3 0x461bcd 00001a8f: PUSH1 0xe5 00001a91: SHL 00001a92: DUP2 00001a93: MSTORE 00001a94: PUSH1 0x20 00001a96: PUSH1 0x04 00001a98: DUP3 00001a99: ADD 00001a9a: MSTORE 00001a9b: PUSH1 0x12 00001a9d: PUSH1 0x24 00001a9f: DUP3 00001aa0: ADD 00001aa1: MSTORE 00001aa2: PUSH18 0x1a5b9d985b1a590818dbdb1b185d195c985b 00001ab5: PUSH1 0x72 00001ab7: SHL 00001ab8: PUSH1 0x44 00001aba: DUP3 00001abb: ADD 00001abc: MSTORE 00001abd: SWAP1 00001abe: MLOAD 00001abf: SWAP1 00001ac0: DUP2 00001ac1: SWAP1 00001ac2: SUB 00001ac3: PUSH1 0x64 00001ac5: ADD 00001ac6: SWAP1 00001ac7: REVERT 00001ac8: JUMPDEST 00001ac9: PUSH1 0x01 00001acb: PUSH1 0x01 00001acd: PUSH1 0xa0 00001acf: SHL 00001ad0: SUB 00001ad1: SWAP2 00001ad2: DUP3 00001ad3: AND 00001ad4: PUSH1 0x00 00001ad6: SWAP1 00001ad7: DUP2 00001ad8: MSTORE 00001ad9: PUSH1 0x1f 00001adb: PUSH1 0x20 00001add: MSTORE 00001ade: PUSH1 0x40 00001ae0: SWAP1 00001ae1: KECCAK256 00001ae2: DUP1 00001ae3: SLOAD 00001ae4: PUSH1 0x01 00001ae6: PUSH1 0x01 00001ae8: PUSH1 0xa0 00001aea: SHL 00001aeb: SUB 00001aec: NOT 00001aed: AND 00001aee: SWAP2 00001aef: SWAP1 00001af0: SWAP3 00001af1: AND 00001af2: OR 00001af3: SWAP1 00001af4: SSTORE 00001af5: JUMP 00001af6: JUMPDEST 00001af7: PUSH1 0x0a 00001af9: SLOAD 00001afa: DUP2 00001afb: JUMP 00001afc: JUMPDEST 00001afd: PUSH1 0x11 00001aff: SLOAD 00001b00: SWAP1 00001b01: JUMP 00001b02: JUMPDEST 00001b03: PUSH1 0x00 00001b05: DUP1 00001b06: DUP4 00001b07: PUSH2 0x1b52 00001b0a: JUMPI 00001b0b: PUSH1 0x40 00001b0d: DUP1 00001b0e: MLOAD 00001b0f: PUSH3 0x461bcd 00001b13: PUSH1 0xe5 00001b15: SHL 00001b16: DUP2 00001b17: MSTORE 00001b18: PUSH1 0x20 00001b1a: PUSH1 0x04 00001b1c: DUP3 00001b1d: ADD 00001b1e: MSTORE 00001b1f: PUSH1 0x18 00001b21: PUSH1 0x24 00001b23: DUP3 00001b24: ADD 00001b25: MSTORE 00001b26: PUSH24 0x1b5d5cdd081d5cd9481d985b1a59081bdb99505b5bdd5b9d 00001b3f: PUSH1 0x42 00001b41: SHL 00001b42: PUSH1 0x44 00001b44: DUP3 00001b45: ADD 00001b46: MSTORE 00001b47: SWAP1 00001b48: MLOAD 00001b49: SWAP1 00001b4a: DUP2 00001b4b: SWAP1 00001b4c: SUB 00001b4d: PUSH1 0x64 00001b4f: ADD 00001b50: SWAP1 00001b51: REVERT 00001b52: JUMPDEST 00001b53: PUSH1 0x01 00001b55: PUSH1 0x01 00001b57: PUSH1 0xa0 00001b59: SHL 00001b5a: SUB 00001b5b: DUP4 00001b5c: AND 00001b5d: PUSH1 0x00 00001b5f: SWAP1 00001b60: DUP2 00001b61: MSTORE 00001b62: PUSH1 0x1b 00001b64: PUSH1 0x20 00001b66: MSTORE 00001b67: PUSH1 0x40 00001b69: SWAP1 00001b6a: KECCAK256 00001b6b: SLOAD 00001b6c: PUSH1 0xff 00001b6e: AND 00001b6f: PUSH2 0x1bbf 00001b72: JUMPI 00001b73: PUSH1 0x40 00001b75: DUP1 00001b76: MLOAD 00001b77: PUSH3 0x461bcd 00001b7b: PUSH1 0xe5 00001b7d: SHL 00001b7e: DUP2 00001b7f: MSTORE 00001b80: PUSH1 0x20 00001b82: PUSH1 0x04 00001b84: DUP3 00001b85: ADD 00001b86: MSTORE 00001b87: PUSH1 0x1e 00001b89: PUSH1 0x24 00001b8b: DUP3 00001b8c: ADD 00001b8d: MSTORE 00001b8e: PUSH32 0x6d75737420626520616e20616363657074656420636f6c6c61746572616c0000 00001baf: PUSH1 0x44 00001bb1: DUP3 00001bb2: ADD 00001bb3: MSTORE 00001bb4: SWAP1 00001bb5: MLOAD 00001bb6: SWAP1 00001bb7: DUP2 00001bb8: SWAP1 00001bb9: SUB 00001bba: PUSH1 0x64 00001bbc: ADD 00001bbd: SWAP1 00001bbe: REVERT 00001bbf: JUMPDEST 00001bc0: PUSH1 0x01 00001bc2: PUSH1 0x01 00001bc4: PUSH1 0xa0 00001bc6: SHL 00001bc7: SUB 00001bc8: DUP4 00001bc9: AND 00001bca: PUSH1 0x00 00001bcc: SWAP1 00001bcd: DUP2 00001bce: MSTORE 00001bcf: PUSH1 0x1d 00001bd1: PUSH1 0x20 00001bd3: MSTORE 00001bd4: PUSH1 0x40 00001bd6: DUP2 00001bd7: KECCAK256 00001bd8: SLOAD 00001bd9: PUSH1 0x21 00001bdb: SLOAD 00001bdc: PUSH2 0x1c18 00001bdf: SWAP2 00001be0: PUSH4 0x3b9aca00 00001be5: SWAP2 00001be6: PUSH2 0x1c05 00001be9: SWAP2 00001bea: PUSH1 0x0a 00001bec: EXP 00001bed: SWAP1 00001bee: PUSH2 0x1c12 00001bf1: SWAP1 00001bf2: PUSH2 0x1c0b 00001bf5: SWAP1 00001bf6: PUSH5 0x174876e800 00001bfc: SWAP1 00001bfd: DUP6 00001bfe: SWAP1 00001bff: DUP14 00001c00: SWAP1 00001c01: PUSH2 0x4487 00001c04: JUMP 00001c05: JUMPDEST 00001c06: SWAP1 00001c07: PUSH2 0x44e0 00001c0a: JUMP 00001c0b: JUMPDEST 00001c0c: DUP11 00001c0d: SWAP1 00001c0e: PUSH2 0x43ed 00001c11: JUMP 00001c12: JUMPDEST 00001c13: SWAP1 00001c14: PUSH2 0x4487 00001c17: JUMP 00001c18: JUMPDEST 00001c19: SWAP1 00001c1a: POP 00001c1b: PUSH2 0x1c34 00001c1e: PUSH2 0x1c26 00001c21: DUP6 00001c22: PUSH2 0x3dd7 00001c25: JUMP 00001c26: JUMPDEST 00001c27: PUSH2 0x1c05 00001c2a: DUP4 00001c2b: PUSH4 0x3b9aca00 00001c30: PUSH2 0x4487 00001c33: JUMP 00001c34: JUMPDEST 00001c35: SWAP3 00001c36: POP 00001c37: PUSH1 0x00 00001c39: SWAP2 00001c3a: POP 00001c3b: POP 00001c3c: JUMPDEST 00001c3d: SWAP3 00001c3e: POP 00001c3f: SWAP3 00001c40: SWAP1 00001c41: POP 00001c42: JUMP 00001c43: JUMPDEST 00001c44: PUSH1 0x00 00001c46: DUP3 00001c47: PUSH1 0x01 00001c49: PUSH1 0x01 00001c4b: PUSH1 0xa0 00001c4d: SHL 00001c4e: SUB 00001c4f: DUP2 00001c50: AND 00001c51: PUSH2 0x1c59 00001c54: JUMPI 00001c55: PUSH1 0x00 00001c57: DUP1 00001c58: REVERT 00001c59: JUMPDEST 00001c5a: PUSH1 0x01 00001c5c: PUSH1 0x01 00001c5e: PUSH1 0xa0 00001c60: SHL 00001c61: SUB 00001c62: DUP2 00001c63: AND 00001c64: ADDRESS 00001c65: EQ 00001c66: ISZERO 00001c67: PUSH2 0x1c6f 00001c6a: JUMPI 00001c6b: PUSH1 0x00 00001c6d: DUP1 00001c6e: REVERT 00001c6f: JUMPDEST 00001c70: PUSH1 0x0d 00001c72: SLOAD 00001c73: PUSH1 0x01 00001c75: PUSH1 0x01 00001c77: PUSH1 0xa0 00001c79: SHL 00001c7a: SUB 00001c7b: AND 00001c7c: ISZERO 00001c7d: PUSH2 0x1e9c 00001c80: JUMPI 00001c81: PUSH1 0x0e 00001c83: SLOAD 00001c84: PUSH1 0x01 00001c86: PUSH1 0xa0 00001c88: SHL 00001c89: SWAP1 00001c8a: DIV 00001c8b: PUSH1 0xff 00001c8d: AND 00001c8e: PUSH2 0x1cfa 00001c91: JUMPI 00001c92: PUSH1 0x0e 00001c94: PUSH1 0x00 00001c96: SWAP1 00001c97: SLOAD 00001c98: SWAP1 00001c99: PUSH2 0x0100 00001c9c: EXP 00001c9d: SWAP1 00001c9e: DIV 00001c9f: PUSH1 0x01 00001ca1: PUSH1 0x01 00001ca3: PUSH1 0xa0 00001ca5: SHL 00001ca6: SUB 00001ca7: AND 00001ca8: PUSH1 0x01 00001caa: PUSH1 0x01 00001cac: PUSH1 0xa0 00001cae: SHL 00001caf: SUB 00001cb0: AND 00001cb1: PUSH4 0xa2e62045 00001cb6: PUSH1 0x40 00001cb8: MLOAD 00001cb9: DUP2 00001cba: PUSH4 0xffffffff 00001cbf: AND 00001cc0: PUSH1 0xe0 00001cc2: SHL 00001cc3: DUP2 00001cc4: MSTORE 00001cc5: PUSH1 0x04 00001cc7: ADD 00001cc8: PUSH1 0x00 00001cca: PUSH1 0x40 00001ccc: MLOAD 00001ccd: DUP1 00001cce: DUP4 00001ccf: SUB 00001cd0: DUP2 00001cd1: PUSH1 0x00 00001cd3: DUP8 00001cd4: DUP1 00001cd5: EXTCODESIZE 00001cd6: ISZERO 00001cd7: DUP1 00001cd8: ISZERO 00001cd9: PUSH2 0x1ce1 00001cdc: JUMPI 00001cdd: PUSH1 0x00 00001cdf: DUP1 00001ce0: REVERT 00001ce1: JUMPDEST 00001ce2: POP 00001ce3: GAS 00001ce4: CALL 00001ce5: ISZERO 00001ce6: DUP1 00001ce7: ISZERO 00001ce8: PUSH2 0x1cf5 00001ceb: JUMPI 00001cec: RETURNDATASIZE 00001ced: PUSH1 0x00 00001cef: DUP1 00001cf0: RETURNDATACOPY 00001cf1: RETURNDATASIZE 00001cf2: PUSH1 0x00 00001cf4: REVERT 00001cf5: JUMPDEST 00001cf6: POP 00001cf7: POP 00001cf8: POP 00001cf9: POP 00001cfa: JUMPDEST 00001cfb: PUSH1 0x0d 00001cfd: PUSH1 0x00 00001cff: SWAP1 00001d00: SLOAD 00001d01: SWAP1 00001d02: PUSH2 0x0100 00001d05: EXP 00001d06: SWAP1 00001d07: DIV 00001d08: PUSH1 0x01 00001d0a: PUSH1 0x01 00001d0c: PUSH1 0xa0 00001d0e: SHL 00001d0f: SUB 00001d10: AND 00001d11: PUSH1 0x01 00001d13: PUSH1 0x01 00001d15: PUSH1 0xa0 00001d17: SHL 00001d18: SUB 00001d19: AND 00001d1a: PUSH4 0xa2e62045 00001d1f: PUSH1 0x40 00001d21: MLOAD 00001d22: DUP2 00001d23: PUSH4 0xffffffff 00001d28: AND 00001d29: PUSH1 0xe0 00001d2b: SHL 00001d2c: DUP2 00001d2d: MSTORE 00001d2e: PUSH1 0x04 00001d30: ADD 00001d31: PUSH1 0x00 00001d33: PUSH1 0x40 00001d35: MLOAD 00001d36: DUP1 00001d37: DUP4 00001d38: SUB 00001d39: DUP2 00001d3a: PUSH1 0x00 00001d3c: DUP8 00001d3d: DUP1 00001d3e: EXTCODESIZE 00001d3f: ISZERO 00001d40: DUP1 00001d41: ISZERO 00001d42: PUSH2 0x1d4a 00001d45: JUMPI 00001d46: PUSH1 0x00 00001d48: DUP1 00001d49: REVERT 00001d4a: JUMPDEST 00001d4b: POP 00001d4c: GAS 00001d4d: CALL 00001d4e: ISZERO 00001d4f: DUP1 00001d50: ISZERO 00001d51: PUSH2 0x1d5e 00001d54: JUMPI 00001d55: RETURNDATASIZE 00001d56: PUSH1 0x00 00001d58: DUP1 00001d59: RETURNDATACOPY 00001d5a: RETURNDATASIZE 00001d5b: PUSH1 0x00 00001d5d: REVERT 00001d5e: JUMPDEST 00001d5f: POP 00001d60: POP 00001d61: POP 00001d62: POP 00001d63: PUSH1 0x00 00001d65: JUMPDEST 00001d66: PUSH1 0x1c 00001d68: SLOAD 00001d69: DUP2 00001d6a: LT 00001d6b: ISZERO 00001d6c: PUSH2 0x1e3d 00001d6f: JUMPI 00001d70: PUSH1 0x1b 00001d72: PUSH1 0x00 00001d74: PUSH1 0x1c 00001d76: DUP4 00001d77: DUP2 00001d78: SLOAD 00001d79: DUP2 00001d7a: LT 00001d7b: PUSH2 0x1d80 00001d7e: JUMPI 00001d7f: INVALID 00001d80: JUMPDEST 00001d81: PUSH1 0x00 00001d83: SWAP2 00001d84: DUP3 00001d85: MSTORE 00001d86: PUSH1 0x20 00001d88: DUP1 00001d89: DUP4 00001d8a: KECCAK256 00001d8b: SWAP1 00001d8c: SWAP2 00001d8d: ADD 00001d8e: SLOAD 00001d8f: PUSH1 0x01 00001d91: PUSH1 0x01 00001d93: PUSH1 0xa0 00001d95: SHL 00001d96: SUB 00001d97: AND 00001d98: DUP4 00001d99: MSTORE 00001d9a: DUP3 00001d9b: ADD 00001d9c: SWAP3 00001d9d: SWAP1 00001d9e: SWAP3 00001d9f: MSTORE 00001da0: PUSH1 0x40 00001da2: ADD 00001da3: SWAP1 00001da4: KECCAK256 00001da5: SLOAD 00001da6: PUSH1 0xff 00001da8: AND 00001da9: ISZERO 00001daa: PUSH2 0x1e35 00001dad: JUMPI 00001dae: PUSH1 0x1f 00001db0: PUSH1 0x00 00001db2: PUSH1 0x1c 00001db4: DUP4 00001db5: DUP2 00001db6: SLOAD 00001db7: DUP2 00001db8: LT 00001db9: PUSH2 0x1dbe 00001dbc: JUMPI 00001dbd: INVALID 00001dbe: JUMPDEST 00001dbf: PUSH1 0x00 00001dc1: SWAP2 00001dc2: DUP3 00001dc3: MSTORE 00001dc4: PUSH1 0x20 00001dc6: DUP1 00001dc7: DUP4 00001dc8: KECCAK256 00001dc9: SWAP1 00001dca: SWAP2 00001dcb: ADD 00001dcc: SLOAD 00001dcd: PUSH1 0x01 00001dcf: PUSH1 0x01 00001dd1: PUSH1 0xa0 00001dd3: SHL 00001dd4: SUB 00001dd5: SWAP1 00001dd6: DUP2 00001dd7: AND 00001dd8: DUP5 00001dd9: MSTORE 00001dda: SWAP1 00001ddb: DUP4 00001ddc: ADD 00001ddd: SWAP4 00001dde: SWAP1 00001ddf: SWAP4 00001de0: MSTORE 00001de1: PUSH1 0x40 00001de3: SWAP2 00001de4: DUP3 00001de5: ADD 00001de6: DUP2 00001de7: KECCAK256 00001de8: SLOAD 00001de9: DUP3 00001dea: MLOAD 00001deb: PUSH4 0xa2e62045 00001df0: PUSH1 0xe0 00001df2: SHL 00001df3: DUP2 00001df4: MSTORE 00001df5: SWAP3 00001df6: MLOAD 00001df7: SWAP4 00001df8: AND 00001df9: SWAP3 00001dfa: PUSH4 0xa2e62045 00001dff: SWAP3 00001e00: PUSH1 0x04 00001e02: DUP1 00001e03: DUP3 00001e04: ADD 00001e05: SWAP4 00001e06: SWAP3 00001e07: SWAP2 00001e08: DUP3 00001e09: SWAP1 00001e0a: SUB 00001e0b: ADD 00001e0c: DUP2 00001e0d: DUP4 00001e0e: DUP8 00001e0f: DUP1 00001e10: EXTCODESIZE 00001e11: ISZERO 00001e12: DUP1 00001e13: ISZERO 00001e14: PUSH2 0x1e1c 00001e17: JUMPI 00001e18: PUSH1 0x00 00001e1a: DUP1 00001e1b: REVERT 00001e1c: JUMPDEST 00001e1d: POP 00001e1e: GAS 00001e1f: CALL 00001e20: ISZERO 00001e21: DUP1 00001e22: ISZERO 00001e23: PUSH2 0x1e30 00001e26: JUMPI 00001e27: RETURNDATASIZE 00001e28: PUSH1 0x00 00001e2a: DUP1 00001e2b: RETURNDATACOPY 00001e2c: RETURNDATASIZE 00001e2d: PUSH1 0x00 00001e2f: REVERT 00001e30: JUMPDEST 00001e31: POP 00001e32: POP 00001e33: POP 00001e34: POP 00001e35: JUMPDEST 00001e36: PUSH1 0x01 00001e38: ADD 00001e39: PUSH2 0x1d65 00001e3c: JUMP 00001e3d: JUMPDEST 00001e3e: POP 00001e3f: PUSH1 0x08 00001e41: SLOAD 00001e42: PUSH1 0x07 00001e44: SLOAD 00001e45: TIMESTAMP 00001e46: SUB 00001e47: LT 00001e48: PUSH2 0x1e9c 00001e4b: JUMPI 00001e4c: PUSH4 0x3b9aca00 00001e51: PUSH2 0x1e58 00001e54: PUSH2 0x2e89 00001e57: JUMP 00001e58: JUMPDEST 00001e59: GT 00001e5a: ISZERO 00001e5b: PUSH2 0x1e7d 00001e5e: JUMPI 00001e5f: PUSH2 0x1e78 00001e62: PUSH2 0x116b 00001e65: PUSH1 0x19 00001e67: SLOAD 00001e68: PUSH1 0x1a 00001e6a: SLOAD 00001e6b: PUSH2 0x43ed 00001e6e: SWAP1 00001e6f: SWAP2 00001e70: SWAP1 00001e71: PUSH4 0xffffffff 00001e76: AND 00001e77: JUMP 00001e78: JUMPDEST 00001e79: PUSH2 0x1e97 00001e7c: JUMP 00001e7d: JUMPDEST 00001e7e: PUSH2 0x1e97 00001e81: PUSH2 0x116b 00001e84: PUSH1 0x19 00001e86: SLOAD 00001e87: PUSH1 0x1a 00001e89: SLOAD 00001e8a: PUSH2 0x4393 00001e8d: SWAP1 00001e8e: SWAP2 00001e8f: SWAP1 00001e90: PUSH4 0xffffffff 00001e95: AND 00001e96: JUMP 00001e97: JUMPDEST 00001e98: TIMESTAMP 00001e99: PUSH1 0x07 00001e9b: SSTORE 00001e9c: JUMPDEST 00001e9d: PUSH1 0x01 00001e9f: PUSH1 0x01 00001ea1: PUSH1 0xa0 00001ea3: SHL 00001ea4: SUB 00001ea5: DUP6 00001ea6: AND 00001ea7: PUSH1 0x00 00001ea9: SWAP1 00001eaa: DUP2 00001eab: MSTORE 00001eac: PUSH1 0x14 00001eae: PUSH1 0x20 00001eb0: SWAP1 00001eb1: DUP2 00001eb2: MSTORE 00001eb3: PUSH1 0x40 00001eb5: DUP1 00001eb6: DUP4 00001eb7: KECCAK256 00001eb8: CALLER 00001eb9: DUP5 00001eba: MSTORE 00001ebb: SWAP1 00001ebc: SWAP2 00001ebd: MSTORE 00001ebe: SWAP1 00001ebf: KECCAK256 00001ec0: SLOAD 00001ec1: PUSH2 0x1eca 00001ec4: SWAP1 00001ec5: DUP5 00001ec6: PUSH2 0x43ed 00001ec9: JUMP 00001eca: JUMPDEST 00001ecb: PUSH1 0x01 00001ecd: PUSH1 0x01 00001ecf: PUSH1 0xa0 00001ed1: SHL 00001ed2: SUB 00001ed3: DUP7 00001ed4: AND 00001ed5: PUSH1 0x00 00001ed7: DUP2 00001ed8: DUP2 00001ed9: MSTORE 00001eda: PUSH1 0x14 00001edc: PUSH1 0x20 00001ede: SWAP1 00001edf: DUP2 00001ee0: MSTORE 00001ee1: PUSH1 0x40 00001ee3: DUP1 00001ee4: DUP4 00001ee5: KECCAK256 00001ee6: CALLER 00001ee7: DUP5 00001ee8: MSTORE 00001ee9: DUP3 00001eea: MSTORE 00001eeb: DUP1 00001eec: DUP4 00001eed: KECCAK256 00001eee: SWAP5 00001eef: SWAP1 00001ef0: SWAP5 00001ef1: SSTORE 00001ef2: SWAP2 00001ef3: DUP2 00001ef4: MSTORE 00001ef5: PUSH1 0x12 00001ef7: SWAP1 00001ef8: SWAP2 00001ef9: MSTORE 00001efa: KECCAK256 00001efb: SLOAD 00001efc: PUSH2 0x1f05 00001eff: SWAP1 00001f00: DUP5 00001f01: PUSH2 0x43ed 00001f04: JUMP 00001f05: JUMPDEST 00001f06: PUSH1 0x01 00001f08: PUSH1 0x01 00001f0a: PUSH1 0xa0 00001f0c: SHL 00001f0d: SUB 00001f0e: DUP1 00001f0f: DUP8 00001f10: AND 00001f11: PUSH1 0x00 00001f13: SWAP1 00001f14: DUP2 00001f15: MSTORE 00001f16: PUSH1 0x12 00001f18: PUSH1 0x20 00001f1a: MSTORE 00001f1b: PUSH1 0x40 00001f1d: DUP1 00001f1e: DUP3 00001f1f: KECCAK256 00001f20: SWAP4 00001f21: SWAP1 00001f22: SWAP4 00001f23: SSTORE 00001f24: SWAP1 00001f25: DUP7 00001f26: AND 00001f27: DUP2 00001f28: MSTORE 00001f29: KECCAK256 00001f2a: SLOAD 00001f2b: PUSH2 0x1f34 00001f2e: SWAP1 00001f2f: DUP5 00001f30: PUSH2 0x4393 00001f33: JUMP 00001f34: JUMPDEST 00001f35: PUSH1 0x01 00001f37: PUSH1 0x01 00001f39: PUSH1 0xa0 00001f3b: SHL 00001f3c: SUB 00001f3d: DUP1 00001f3e: DUP7 00001f3f: AND 00001f40: PUSH1 0x00 00001f42: DUP2 00001f43: DUP2 00001f44: MSTORE 00001f45: PUSH1 0x12 00001f47: PUSH1 0x20 00001f49: SWAP1 00001f4a: DUP2 00001f4b: MSTORE 00001f4c: PUSH1 0x40 00001f4e: SWAP2 00001f4f: DUP3 00001f50: SWAP1 00001f51: KECCAK256 00001f52: SWAP5 00001f53: SWAP1 00001f54: SWAP5 00001f55: SSTORE 00001f56: DUP1 00001f57: MLOAD 00001f58: DUP8 00001f59: DUP2 00001f5a: MSTORE 00001f5b: SWAP1 00001f5c: MLOAD 00001f5d: SWAP2 00001f5e: SWAP4 00001f5f: SWAP3 00001f60: DUP10 00001f61: AND 00001f62: SWAP3 00001f63: PUSH1 0x00 00001f65: DUP1 00001f66: MLOAD 00001f67: PUSH1 0x20 00001f69: PUSH2 0x4a11 00001f6c: DUP4 00001f6d: CODECOPY 00001f6e: DUP2 00001f6f: MLOAD 00001f70: SWAP2 00001f71: MSTORE 00001f72: SWAP3 00001f73: SWAP2 00001f74: DUP3 00001f75: SWAP1 00001f76: SUB 00001f77: ADD 00001f78: SWAP1 00001f79: LOG3 00001f7a: POP 00001f7b: PUSH1 0x01 00001f7d: SWAP5 00001f7e: SWAP4 00001f7f: POP 00001f80: POP 00001f81: POP 00001f82: POP 00001f83: JUMP 00001f84: JUMPDEST 00001f85: PUSH1 0x23 00001f87: SLOAD 00001f88: PUSH1 0x00 00001f8a: SWAP1 00001f8b: PUSH1 0x01 00001f8d: PUSH1 0x01 00001f8f: PUSH1 0xa0 00001f91: SHL 00001f92: SUB 00001f93: AND 00001f94: CALLER 00001f95: EQ 00001f96: PUSH2 0x1fd4 00001f99: JUMPI 00001f9a: PUSH1 0x40 00001f9c: DUP1 00001f9d: MLOAD 00001f9e: PUSH3 0x461bcd 00001fa2: PUSH1 0xe5 00001fa4: SHL 00001fa5: DUP2 00001fa6: MSTORE 00001fa7: PUSH1 0x20 00001fa9: PUSH1 0x04 00001fab: DUP3 00001fac: ADD 00001fad: MSTORE 00001fae: PUSH1 0x1d 00001fb0: PUSH1 0x24 00001fb2: DUP3 00001fb3: ADD 00001fb4: MSTORE 00001fb5: PUSH1 0x00 00001fb7: DUP1 00001fb8: MLOAD 00001fb9: PUSH1 0x20 00001fbb: PUSH2 0x4ade 00001fbe: DUP4 00001fbf: CODECOPY 00001fc0: DUP2 00001fc1: MLOAD 00001fc2: SWAP2 00001fc3: MSTORE 00001fc4: PUSH1 0x44 00001fc6: DUP3 00001fc7: ADD 00001fc8: MSTORE 00001fc9: SWAP1 00001fca: MLOAD 00001fcb: SWAP1 00001fcc: DUP2 00001fcd: SWAP1 00001fce: SUB 00001fcf: PUSH1 0x64 00001fd1: ADD 00001fd2: SWAP1 00001fd3: REVERT 00001fd4: JUMPDEST 00001fd5: POP 00001fd6: PUSH1 0x0b 00001fd8: DUP1 00001fd9: SLOAD 00001fda: PUSH1 0x01 00001fdc: PUSH1 0x01 00001fde: PUSH1 0xa0 00001fe0: SHL 00001fe1: SUB 00001fe2: DUP4 00001fe3: AND 00001fe4: PUSH1 0x01 00001fe6: PUSH1 0x01 00001fe8: PUSH1 0xa0 00001fea: SHL 00001feb: SUB 00001fec: NOT 00001fed: SWAP1 00001fee: SWAP2 00001fef: AND 00001ff0: OR 00001ff1: SWAP1 00001ff2: SSTORE 00001ff3: PUSH1 0x0e 00001ff5: DUP1 00001ff6: SLOAD 00001ff7: PUSH1 0xff 00001ff9: PUSH1 0xa0 00001ffb: SHL 00001ffc: NOT 00001ffd: AND 00001ffe: PUSH1 0x01 00002000: PUSH1 0xa0 00002002: SHL 00002003: OR 00002004: SWAP1 00002005: SSTORE 00002006: PUSH1 0x01 00002008: SWAP2 00002009: SWAP1 0000200a: POP 0000200b: JUMP 0000200c: JUMPDEST 0000200d: PUSH1 0x0f 0000200f: SLOAD 00002010: DUP2 00002011: JUMP 00002012: JUMPDEST 00002013: PUSH1 0x18 00002015: SLOAD 00002016: PUSH1 0x01 00002018: PUSH1 0x01 0000201a: PUSH1 0xa0 0000201c: SHL 0000201d: SUB 0000201e: AND 0000201f: DUP2 00002020: JUMP 00002021: JUMPDEST 00002022: PUSH1 0x02 00002024: PUSH1 0x06 00002026: SLOAD 00002027: EQ 00002028: ISZERO 00002029: PUSH2 0x2079 0000202c: JUMPI 0000202d: PUSH1 0x40 0000202f: DUP1 00002030: MLOAD 00002031: PUSH3 0x461bcd 00002035: PUSH1 0xe5 00002037: SHL 00002038: DUP2 00002039: MSTORE 0000203a: PUSH1 0x20 0000203c: PUSH1 0x04 0000203e: DUP3 0000203f: ADD 00002040: MSTORE 00002041: PUSH1 0x1f 00002043: PUSH1 0x24 00002045: DUP3 00002046: ADD 00002047: MSTORE 00002048: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00 00002069: PUSH1 0x44 0000206b: DUP3 0000206c: ADD 0000206d: MSTORE 0000206e: SWAP1 0000206f: MLOAD 00002070: SWAP1 00002071: DUP2 00002072: SWAP1 00002073: SUB 00002074: PUSH1 0x64 00002076: ADD 00002077: SWAP1 00002078: REVERT 00002079: JUMPDEST 0000207a: PUSH1 0x02 0000207c: PUSH1 0x06 0000207e: SSTORE 0000207f: PUSH1 0x0d 00002081: SLOAD 00002082: PUSH1 0x01 00002084: PUSH1 0x01 00002086: PUSH1 0xa0 00002088: SHL 00002089: SUB 0000208a: AND 0000208b: ISZERO 0000208c: PUSH2 0x22ab 0000208f: JUMPI 00002090: PUSH1 0x0e 00002092: SLOAD 00002093: PUSH1 0x01 00002095: PUSH1 0xa0 00002097: SHL 00002098: SWAP1 00002099: DIV 0000209a: PUSH1 0xff 0000209c: AND 0000209d: PUSH2 0x2109 000020a0: JUMPI 000020a1: PUSH1 0x0e 000020a3: PUSH1 0x00 000020a5: SWAP1 000020a6: SLOAD 000020a7: SWAP1 000020a8: PUSH2 0x0100 000020ab: EXP 000020ac: SWAP1 000020ad: DIV 000020ae: PUSH1 0x01 000020b0: PUSH1 0x01 000020b2: PUSH1 0xa0 000020b4: SHL 000020b5: SUB 000020b6: AND 000020b7: PUSH1 0x01 000020b9: PUSH1 0x01 000020bb: PUSH1 0xa0 000020bd: SHL 000020be: SUB 000020bf: AND 000020c0: PUSH4 0xa2e62045 000020c5: PUSH1 0x40 000020c7: MLOAD 000020c8: DUP2 000020c9: PUSH4 0xffffffff 000020ce: AND 000020cf: PUSH1 0xe0 000020d1: SHL 000020d2: DUP2 000020d3: MSTORE 000020d4: PUSH1 0x04 000020d6: ADD 000020d7: PUSH1 0x00 000020d9: PUSH1 0x40 000020db: MLOAD 000020dc: DUP1 000020dd: DUP4 000020de: SUB 000020df: DUP2 000020e0: PUSH1 0x00 000020e2: DUP8 000020e3: DUP1 000020e4: EXTCODESIZE 000020e5: ISZERO 000020e6: DUP1 000020e7: ISZERO 000020e8: PUSH2 0x20f0 000020eb: JUMPI 000020ec: PUSH1 0x00 000020ee: DUP1 000020ef: REVERT 000020f0: JUMPDEST 000020f1: POP 000020f2: GAS 000020f3: CALL 000020f4: ISZERO 000020f5: DUP1 000020f6: ISZERO 000020f7: PUSH2 0x2104 000020fa: JUMPI 000020fb: RETURNDATASIZE 000020fc: PUSH1 0x00 000020fe: DUP1 000020ff: RETURNDATACOPY 00002100: RETURNDATASIZE 00002101: PUSH1 0x00 00002103: REVERT 00002104: JUMPDEST 00002105: POP 00002106: POP 00002107: POP 00002108: POP 00002109: JUMPDEST 0000210a: PUSH1 0x0d 0000210c: PUSH1 0x00 0000210e: SWAP1 0000210f: SLOAD 00002110: SWAP1 00002111: PUSH2 0x0100 00002114: EXP 00002115: SWAP1 00002116: DIV 00002117: PUSH1 0x01 00002119: PUSH1 0x01 0000211b: PUSH1 0xa0 0000211d: SHL 0000211e: SUB 0000211f: AND 00002120: PUSH1 0x01 00002122: PUSH1 0x01 00002124: PUSH1 0xa0 00002126: SHL 00002127: SUB 00002128: AND 00002129: PUSH4 0xa2e62045 0000212e: PUSH1 0x40 00002130: MLOAD 00002131: DUP2 00002132: PUSH4 0xffffffff 00002137: AND 00002138: PUSH1 0xe0 0000213a: SHL 0000213b: DUP2 0000213c: MSTORE 0000213d: PUSH1 0x04 0000213f: ADD 00002140: PUSH1 0x00 00002142: PUSH1 0x40 00002144: MLOAD 00002145: DUP1 00002146: DUP4 00002147: SUB 00002148: DUP2 00002149: PUSH1 0x00 0000214b: DUP8 0000214c: DUP1 0000214d: EXTCODESIZE 0000214e: ISZERO 0000214f: DUP1 00002150: ISZERO 00002151: PUSH2 0x2159 00002154: JUMPI 00002155: PUSH1 0x00 00002157: DUP1 00002158: REVERT 00002159: JUMPDEST 0000215a: POP 0000215b: GAS 0000215c: CALL 0000215d: ISZERO 0000215e: DUP1 0000215f: ISZERO 00002160: PUSH2 0x216d 00002163: JUMPI 00002164: RETURNDATASIZE 00002165: PUSH1 0x00 00002167: DUP1 00002168: RETURNDATACOPY 00002169: RETURNDATASIZE 0000216a: PUSH1 0x00 0000216c: REVERT 0000216d: JUMPDEST 0000216e: POP 0000216f: POP 00002170: POP 00002171: POP 00002172: PUSH1 0x00 00002174: JUMPDEST 00002175: PUSH1 0x1c 00002177: SLOAD 00002178: DUP2 00002179: LT 0000217a: ISZERO 0000217b: PUSH2 0x224c 0000217e: JUMPI 0000217f: PUSH1 0x1b 00002181: PUSH1 0x00 00002183: PUSH1 0x1c 00002185: DUP4 00002186: DUP2 00002187: SLOAD 00002188: DUP2 00002189: LT 0000218a: PUSH2 0x218f 0000218d: JUMPI 0000218e: INVALID 0000218f: JUMPDEST 00002190: PUSH1 0x00 00002192: SWAP2 00002193: DUP3 00002194: MSTORE 00002195: PUSH1 0x20 00002197: DUP1 00002198: DUP4 00002199: KECCAK256 0000219a: SWAP1 0000219b: SWAP2 0000219c: ADD 0000219d: SLOAD 0000219e: PUSH1 0x01 000021a0: PUSH1 0x01 000021a2: PUSH1 0xa0 000021a4: SHL 000021a5: SUB 000021a6: AND 000021a7: DUP4 000021a8: MSTORE 000021a9: DUP3 000021aa: ADD 000021ab: SWAP3 000021ac: SWAP1 000021ad: SWAP3 000021ae: MSTORE 000021af: PUSH1 0x40 000021b1: ADD 000021b2: SWAP1 000021b3: KECCAK256 000021b4: SLOAD 000021b5: PUSH1 0xff 000021b7: AND 000021b8: ISZERO 000021b9: PUSH2 0x2244 000021bc: JUMPI 000021bd: PUSH1 0x1f 000021bf: PUSH1 0x00 000021c1: PUSH1 0x1c 000021c3: DUP4 000021c4: DUP2 000021c5: SLOAD 000021c6: DUP2 000021c7: LT 000021c8: PUSH2 0x21cd 000021cb: JUMPI 000021cc: INVALID 000021cd: JUMPDEST 000021ce: PUSH1 0x00 000021d0: SWAP2 000021d1: DUP3 000021d2: MSTORE 000021d3: PUSH1 0x20 000021d5: DUP1 000021d6: DUP4 000021d7: KECCAK256 000021d8: SWAP1 000021d9: SWAP2 000021da: ADD 000021db: SLOAD 000021dc: PUSH1 0x01 000021de: PUSH1 0x01 000021e0: PUSH1 0xa0 000021e2: SHL 000021e3: SUB 000021e4: SWAP1 000021e5: DUP2 000021e6: AND 000021e7: DUP5 000021e8: MSTORE 000021e9: SWAP1 000021ea: DUP4 000021eb: ADD 000021ec: SWAP4 000021ed: SWAP1 000021ee: SWAP4 000021ef: MSTORE 000021f0: PUSH1 0x40 000021f2: SWAP2 000021f3: DUP3 000021f4: ADD 000021f5: DUP2 000021f6: KECCAK256 000021f7: SLOAD 000021f8: DUP3 000021f9: MLOAD 000021fa: PUSH4 0xa2e62045 000021ff: PUSH1 0xe0 00002201: SHL 00002202: DUP2 00002203: MSTORE 00002204: SWAP3 00002205: MLOAD 00002206: SWAP4 00002207: AND 00002208: SWAP3 00002209: PUSH4 0xa2e62045 0000220e: SWAP3 0000220f: PUSH1 0x04 00002211: DUP1 00002212: DUP3 00002213: ADD 00002214: SWAP4 00002215: SWAP3 00002216: SWAP2 00002217: DUP3 00002218: SWAP1 00002219: SUB 0000221a: ADD 0000221b: DUP2 0000221c: DUP4 0000221d: DUP8 0000221e: DUP1 0000221f: EXTCODESIZE 00002220: ISZERO 00002221: DUP1 00002222: ISZERO 00002223: PUSH2 0x222b 00002226: JUMPI 00002227: PUSH1 0x00 00002229: DUP1 0000222a: REVERT 0000222b: JUMPDEST 0000222c: POP 0000222d: GAS 0000222e: CALL 0000222f: ISZERO 00002230: DUP1 00002231: ISZERO 00002232: PUSH2 0x223f 00002235: JUMPI 00002236: RETURNDATASIZE 00002237: PUSH1 0x00 00002239: DUP1 0000223a: RETURNDATACOPY 0000223b: RETURNDATASIZE 0000223c: PUSH1 0x00 0000223e: REVERT 0000223f: JUMPDEST 00002240: POP 00002241: POP 00002242: POP 00002243: POP 00002244: JUMPDEST 00002245: PUSH1 0x01 00002247: ADD 00002248: PUSH2 0x2174 0000224b: JUMP 0000224c: JUMPDEST 0000224d: POP 0000224e: PUSH1 0x08 00002250: SLOAD 00002251: PUSH1 0x07 00002253: SLOAD 00002254: TIMESTAMP 00002255: SUB 00002256: LT 00002257: PUSH2 0x22ab 0000225a: JUMPI 0000225b: PUSH4 0x3b9aca00 00002260: PUSH2 0x2267 00002263: PUSH2 0x2e89 00002266: JUMP 00002267: JUMPDEST 00002268: GT 00002269: ISZERO 0000226a: PUSH2 0x228c 0000226d: JUMPI 0000226e: PUSH2 0x2287 00002271: PUSH2 0x116b 00002274: PUSH1 0x19 00002276: SLOAD 00002277: PUSH1 0x1a 00002279: SLOAD 0000227a: PUSH2 0x43ed 0000227d: SWAP1 0000227e: SWAP2 0000227f: SWAP1 00002280: PUSH4 0xffffffff 00002285: AND 00002286: JUMP 00002287: JUMPDEST 00002288: PUSH2 0x22a6 0000228b: JUMP 0000228c: JUMPDEST 0000228d: PUSH2 0x22a6 00002290: PUSH2 0x116b 00002293: PUSH1 0x19 00002295: SLOAD 00002296: PUSH1 0x1a 00002298: SLOAD 00002299: PUSH2 0x4393 0000229c: SWAP1 0000229d: SWAP2 0000229e: SWAP1 0000229f: PUSH4 0xffffffff 000022a4: AND 000022a5: JUMP 000022a6: JUMPDEST 000022a7: TIMESTAMP 000022a8: PUSH1 0x07 000022aa: SSTORE 000022ab: JUMPDEST 000022ac: PUSH1 0x01 000022ae: PUSH1 0x01 000022b0: PUSH1 0xa0 000022b2: SHL 000022b3: SUB 000022b4: DUP2 000022b5: AND 000022b6: PUSH1 0x00 000022b8: SWAP1 000022b9: DUP2 000022ba: MSTORE 000022bb: PUSH1 0x1e 000022bd: PUSH1 0x20 000022bf: MSTORE 000022c0: PUSH1 0x40 000022c2: SWAP1 000022c3: KECCAK256 000022c4: SLOAD 000022c5: PUSH1 0xff 000022c7: AND 000022c8: PUSH2 0x2318 000022cb: JUMPI 000022cc: PUSH1 0x40 000022ce: DUP1 000022cf: MLOAD 000022d0: PUSH3 0x461bcd 000022d4: PUSH1 0xe5 000022d6: SHL 000022d7: DUP2 000022d8: MSTORE 000022d9: PUSH1 0x20 000022db: PUSH1 0x04 000022dd: DUP3 000022de: ADD 000022df: MSTORE 000022e0: PUSH1 0x1e 000022e2: PUSH1 0x24 000022e4: DUP3 000022e5: ADD 000022e6: MSTORE 000022e7: PUSH32 0x6d75737420626520616e206578697374696e6720636f6c6c61746572616c0000 00002308: PUSH1 0x44 0000230a: DUP3 0000230b: ADD 0000230c: MSTORE 0000230d: SWAP1 0000230e: MLOAD 0000230f: SWAP1 00002310: DUP2 00002311: SWAP1 00002312: SUB 00002313: PUSH1 0x64 00002315: ADD 00002316: SWAP1 00002317: REVERT 00002318: JUMPDEST 00002319: PUSH1 0x10 0000231b: SLOAD 0000231c: CALLER 0000231d: PUSH1 0x00 0000231f: SWAP1 00002320: DUP2 00002321: MSTORE 00002322: PUSH1 0x13 00002324: PUSH1 0x20 00002326: MSTORE 00002327: PUSH1 0x40 00002329: SWAP1 0000232a: KECCAK256 0000232b: SLOAD 0000232c: NUMBER 0000232d: SWAP2 0000232e: ADD 0000232f: GT 00002330: ISZERO 00002331: PUSH2 0x236b 00002334: JUMPI 00002335: PUSH1 0x40 00002337: MLOAD 00002338: PUSH3 0x461bcd 0000233c: PUSH1 0xe5 0000233e: SHL 0000233f: DUP2 00002340: MSTORE 00002341: PUSH1 0x04 00002343: ADD 00002344: DUP1 00002345: DUP1 00002346: PUSH1 0x20 00002348: ADD 00002349: DUP3 0000234a: DUP2 0000234b: SUB 0000234c: DUP3 0000234d: MSTORE 0000234e: PUSH1 0x2a 00002350: DUP2 00002351: MSTORE 00002352: PUSH1 0x20 00002354: ADD 00002355: DUP1 00002356: PUSH2 0x4ab4 00002359: PUSH1 0x2a 0000235b: SWAP2 0000235c: CODECOPY 0000235d: PUSH1 0x40 0000235f: ADD 00002360: SWAP2 00002361: POP 00002362: POP 00002363: PUSH1 0x40 00002365: MLOAD 00002366: DUP1 00002367: SWAP2 00002368: SUB 00002369: SWAP1 0000236a: REVERT 0000236b: JUMPDEST 0000236c: CALLER 0000236d: PUSH1 0x00 0000236f: SWAP1 00002370: DUP2 00002371: MSTORE 00002372: PUSH1 0x25 00002374: PUSH1 0x20 00002376: MSTORE 00002377: PUSH1 0x40 00002379: SWAP1 0000237a: KECCAK256 0000237b: SLOAD 0000237c: DUP1 0000237d: PUSH2 0x23cd 00002380: JUMPI 00002381: PUSH1 0x40 00002383: DUP1 00002384: MLOAD 00002385: PUSH3 0x461bcd 00002389: PUSH1 0xe5 0000238b: SHL 0000238c: DUP2 0000238d: MSTORE 0000238e: PUSH1 0x20 00002390: PUSH1 0x04 00002392: DUP3 00002393: ADD 00002394: MSTORE 00002395: PUSH1 0x1d 00002397: PUSH1 0x24 00002399: DUP3 0000239a: ADD 0000239b: MSTORE 0000239c: PUSH32 0x696e73756666696369656e74206f6e6542544320746f2072656465656d000000 000023bd: PUSH1 0x44 000023bf: DUP3 000023c0: ADD 000023c1: MSTORE 000023c2: SWAP1 000023c3: MLOAD 000023c4: SWAP1 000023c5: DUP2 000023c6: SWAP1 000023c7: SUB 000023c8: PUSH1 0x64 000023ca: ADD 000023cb: SWAP1 000023cc: REVERT 000023cd: JUMPDEST 000023ce: CALLER 000023cf: PUSH1 0x00 000023d1: SWAP1 000023d2: DUP2 000023d3: MSTORE 000023d4: PUSH1 0x25 000023d6: PUSH1 0x20 000023d8: SWAP1 000023d9: DUP2 000023da: MSTORE 000023db: PUSH1 0x40 000023dd: DUP1 000023de: DUP4 000023df: KECCAK256 000023e0: DUP4 000023e1: SWAP1 000023e2: SSTORE 000023e3: PUSH1 0x01 000023e5: PUSH1 0x01 000023e7: PUSH1 0xa0 000023e9: SHL 000023ea: SUB 000023eb: DUP6 000023ec: AND 000023ed: DUP4 000023ee: MSTORE 000023ef: PUSH1 0x1d 000023f1: SWAP1 000023f2: SWAP2 000023f3: MSTORE 000023f4: DUP2 000023f5: KECCAK256 000023f6: SLOAD 000023f7: PUSH1 0x21 000023f9: SLOAD 000023fa: PUSH2 0x242a 000023fd: SWAP2 000023fe: PUSH4 0x3b9aca00 00002403: SWAP2 00002404: PUSH2 0x1c05 00002407: SWAP2 00002408: PUSH1 0x0a 0000240a: EXP 0000240b: SWAP1 0000240c: PUSH2 0x1c12 0000240f: SWAP1 00002410: PUSH2 0x2423 00002413: SWAP1 00002414: PUSH5 0x174876e800 0000241a: SWAP1 0000241b: DUP6 0000241c: SWAP1 0000241d: DUP11 0000241e: SWAP1 0000241f: PUSH2 0x4487 00002422: JUMP 00002423: JUMPDEST 00002424: DUP8 00002425: SWAP1 00002426: PUSH2 0x43ed 00002429: JUMP 0000242a: JUMPDEST 0000242b: SWAP1 0000242c: POP 0000242d: PUSH2 0x2438 00002430: PUSH2 0x1c26 00002433: DUP5 00002434: PUSH2 0x3dd7 00002437: JUMP 00002438: JUMPDEST 00002439: SWAP1 0000243a: POP 0000243b: PUSH1 0x00 0000243d: DUP4 0000243e: PUSH1 0x01 00002440: PUSH1 0x01 00002442: PUSH1 0xa0 00002444: SHL 00002445: SUB 00002446: AND 00002447: PUSH4 0x70a08231 0000244c: ADDRESS 0000244d: PUSH1 0x40 0000244f: MLOAD 00002450: DUP3 00002451: PUSH4 0xffffffff 00002456: AND 00002457: PUSH1 0xe0 00002459: SHL 0000245a: DUP2 0000245b: MSTORE 0000245c: PUSH1 0x04 0000245e: ADD 0000245f: DUP1 00002460: DUP3 00002461: PUSH1 0x01 00002463: PUSH1 0x01 00002465: PUSH1 0xa0 00002467: SHL 00002468: SUB 00002469: AND 0000246a: DUP2 0000246b: MSTORE 0000246c: PUSH1 0x20 0000246e: ADD 0000246f: SWAP2 00002470: POP 00002471: POP 00002472: PUSH1 0x20 00002474: PUSH1 0x40 00002476: MLOAD 00002477: DUP1 00002478: DUP4 00002479: SUB 0000247a: DUP2 0000247b: DUP7 0000247c: DUP1 0000247d: EXTCODESIZE 0000247e: ISZERO 0000247f: DUP1 00002480: ISZERO 00002481: PUSH2 0x2489 00002484: JUMPI 00002485: PUSH1 0x00 00002487: DUP1 00002488: REVERT 00002489: JUMPDEST 0000248a: POP 0000248b: GAS 0000248c: STATICCALL 0000248d: ISZERO 0000248e: DUP1 0000248f: ISZERO 00002490: PUSH2 0x249d 00002493: JUMPI 00002494: RETURNDATASIZE 00002495: PUSH1 0x00 00002497: DUP1 00002498: RETURNDATACOPY 00002499: RETURNDATASIZE 0000249a: PUSH1 0x00 0000249c: REVERT 0000249d: JUMPDEST 0000249e: POP 0000249f: POP 000024a0: POP 000024a1: POP 000024a2: PUSH1 0x40 000024a4: MLOAD 000024a5: RETURNDATASIZE 000024a6: PUSH1 0x20 000024a8: DUP2 000024a9: LT 000024aa: ISZERO 000024ab: PUSH2 0x24b3 000024ae: JUMPI 000024af: PUSH1 0x00 000024b1: DUP1 000024b2: REVERT 000024b3: JUMPDEST 000024b4: POP 000024b5: MLOAD 000024b6: DUP3 000024b7: GT 000024b8: ISZERO 000024b9: PUSH2 0x24f3 000024bc: JUMPI 000024bd: PUSH1 0x40 000024bf: MLOAD 000024c0: PUSH3 0x461bcd 000024c4: PUSH1 0xe5 000024c6: SHL 000024c7: DUP2 000024c8: MSTORE 000024c9: PUSH1 0x04 000024cb: ADD 000024cc: DUP1 000024cd: DUP1 000024ce: PUSH1 0x20 000024d0: ADD 000024d1: DUP3 000024d2: DUP2 000024d3: SUB 000024d4: DUP3 000024d5: MSTORE 000024d6: PUSH1 0x39 000024d8: DUP2 000024d9: MSTORE 000024da: PUSH1 0x20 000024dc: ADD 000024dd: DUP1 000024de: PUSH2 0x4936 000024e1: PUSH1 0x39 000024e3: SWAP2 000024e4: CODECOPY 000024e5: PUSH1 0x40 000024e7: ADD 000024e8: SWAP2 000024e9: POP 000024ea: POP 000024eb: PUSH1 0x40 000024ed: MLOAD 000024ee: DUP1 000024ef: SWAP2 000024f0: SUB 000024f1: SWAP1 000024f2: REVERT 000024f3: JUMPDEST 000024f4: PUSH2 0x24fe 000024f7: DUP5 000024f8: CALLER 000024f9: DUP5 000024fa: PUSH2 0x4522 000024fd: JUMP 000024fe: JUMPDEST 000024ff: CALLER 00002500: PUSH1 0x00 00002502: DUP2 00002503: DUP2 00002504: MSTORE 00002505: PUSH1 0x13 00002507: PUSH1 0x20 00002509: SWAP1 0000250a: DUP2 0000250b: MSTORE 0000250c: PUSH1 0x40 0000250e: SWAP2 0000250f: DUP3 00002510: SWAP1 00002511: KECCAK256 00002512: NUMBER 00002513: SWAP1 00002514: SSTORE 00002515: PUSH1 0x09 00002517: SLOAD 00002518: DUP3 00002519: MLOAD 0000251a: PUSH1 0x01 0000251c: PUSH1 0x01 0000251e: PUSH1 0xa0 00002520: SHL 00002521: SUB 00002522: SWAP2 00002523: DUP3 00002524: AND 00002525: DUP2 00002526: MSTORE 00002527: SWAP2 00002528: DUP3 00002529: ADD 0000252a: SWAP4 0000252b: SWAP1 0000252c: SWAP4 0000252d: MSTORE 0000252e: SWAP2 0000252f: DUP7 00002530: AND 00002531: DUP3 00002532: DUP3 00002533: ADD 00002534: MSTORE 00002535: PUSH1 0x60 00002537: DUP3 00002538: ADD 00002539: DUP5 0000253a: SWAP1 0000253b: MSTORE 0000253c: PUSH1 0x80 0000253e: DUP3 0000253f: ADD 00002540: DUP4 00002541: SWAP1 00002542: MSTORE 00002543: PUSH1 0xa0 00002545: DUP3 00002546: ADD 00002547: DUP6 00002548: SWAP1 00002549: MSTORE 0000254a: MLOAD 0000254b: PUSH32 0xbbbdee62287b5bf3bee13cab60a29ad729cf38109bccbd2a986a11c99b8ca704 0000256c: SWAP2 0000256d: DUP2 0000256e: SWAP1 0000256f: SUB 00002570: PUSH1 0xc0 00002572: ADD 00002573: SWAP1 00002574: LOG1 00002575: POP 00002576: POP 00002577: PUSH1 0x01 00002579: PUSH1 0x06 0000257b: SSTORE 0000257c: POP 0000257d: POP 0000257e: JUMP 0000257f: JUMPDEST 00002580: PUSH1 0x23 00002582: SLOAD 00002583: PUSH1 0x00 00002585: SWAP1 00002586: PUSH1 0x01 00002588: PUSH1 0x01 0000258a: PUSH1 0xa0 0000258c: SHL 0000258d: SUB 0000258e: AND 0000258f: CALLER 00002590: EQ 00002591: PUSH2 0x25cf 00002594: JUMPI 00002595: PUSH1 0x40 00002597: DUP1 00002598: MLOAD 00002599: PUSH3 0x461bcd 0000259d: PUSH1 0xe5 0000259f: SHL 000025a0: DUP2 000025a1: MSTORE 000025a2: PUSH1 0x20 000025a4: PUSH1 0x04 000025a6: DUP3 000025a7: ADD 000025a8: MSTORE 000025a9: PUSH1 0x1d 000025ab: PUSH1 0x24 000025ad: DUP3 000025ae: ADD 000025af: MSTORE 000025b0: PUSH1 0x00 000025b2: DUP1 000025b3: MLOAD 000025b4: PUSH1 0x20 000025b6: PUSH2 0x4ade 000025b9: DUP4 000025ba: CODECOPY 000025bb: DUP2 000025bc: MLOAD 000025bd: SWAP2 000025be: MSTORE 000025bf: PUSH1 0x44 000025c1: DUP3 000025c2: ADD 000025c3: MSTORE 000025c4: SWAP1 000025c5: MLOAD 000025c6: SWAP1 000025c7: DUP2 000025c8: SWAP1 000025c9: SUB 000025ca: PUSH1 0x64 000025cc: ADD 000025cd: SWAP1 000025ce: REVERT 000025cf: JUMPDEST 000025d0: POP 000025d1: PUSH1 0x16 000025d3: DUP1 000025d4: SLOAD 000025d5: PUSH1 0x01 000025d7: PUSH1 0x01 000025d9: PUSH1 0xa0 000025db: SHL 000025dc: SUB 000025dd: DUP4 000025de: AND 000025df: PUSH1 0x01 000025e1: PUSH1 0x01 000025e3: PUSH1 0xa0 000025e5: SHL 000025e6: SUB 000025e7: NOT 000025e8: SWAP1 000025e9: SWAP2 000025ea: AND 000025eb: OR 000025ec: SWAP1 000025ed: SSTORE 000025ee: PUSH1 0x01 000025f0: SWAP2 000025f1: SWAP1 000025f2: POP 000025f3: JUMP 000025f4: JUMPDEST 000025f5: PUSH1 0x0e 000025f7: SLOAD 000025f8: PUSH1 0x00 000025fa: SWAP1 000025fb: PUSH1 0x01 000025fd: PUSH1 0xa0 000025ff: SHL 00002600: SWAP1 00002601: DIV 00002602: PUSH1 0xff 00002604: AND 00002605: ISZERO 00002606: PUSH2 0x270d 00002609: JUMPI 0000260a: PUSH1 0x00 0000260c: DUP1 0000260d: PUSH1 0x00 0000260f: DUP1 00002610: PUSH1 0x00 00002612: PUSH1 0x0b 00002614: PUSH1 0x00 00002616: SWAP1 00002617: SLOAD 00002618: SWAP1 00002619: PUSH2 0x0100 0000261c: EXP 0000261d: SWAP1 0000261e: DIV 0000261f: PUSH1 0x01 00002621: PUSH1 0x01 00002623: PUSH1 0xa0 00002625: SHL 00002626: SUB 00002627: AND 00002628: PUSH1 0x01 0000262a: PUSH1 0x01 0000262c: PUSH1 0xa0 0000262e: SHL 0000262f: SUB 00002630: AND 00002631: PUSH4 0xfeaf968c 00002636: PUSH1 0x40 00002638: MLOAD 00002639: DUP2 0000263a: PUSH4 0xffffffff 0000263f: AND 00002640: PUSH1 0xe0 00002642: SHL 00002643: DUP2 00002644: MSTORE 00002645: PUSH1 0x04 00002647: ADD 00002648: PUSH1 0xa0 0000264a: PUSH1 0x40 0000264c: MLOAD 0000264d: DUP1 0000264e: DUP4 0000264f: SUB 00002650: DUP2 00002651: DUP7 00002652: DUP1 00002653: EXTCODESIZE 00002654: ISZERO 00002655: DUP1 00002656: ISZERO 00002657: PUSH2 0x265f 0000265a: JUMPI 0000265b: PUSH1 0x00 0000265d: DUP1 0000265e: REVERT 0000265f: JUMPDEST 00002660: POP 00002661: GAS 00002662: STATICCALL 00002663: ISZERO 00002664: DUP1 00002665: ISZERO 00002666: PUSH2 0x2673 00002669: JUMPI 0000266a: RETURNDATASIZE 0000266b: PUSH1 0x00 0000266d: DUP1 0000266e: RETURNDATACOPY 0000266f: RETURNDATASIZE 00002670: PUSH1 0x00 00002672: REVERT 00002673: JUMPDEST 00002674: POP 00002675: POP 00002676: POP 00002677: POP 00002678: PUSH1 0x40 0000267a: MLOAD 0000267b: RETURNDATASIZE 0000267c: PUSH1 0xa0 0000267e: DUP2 0000267f: LT 00002680: ISZERO 00002681: PUSH2 0x2689 00002684: JUMPI 00002685: PUSH1 0x00 00002687: DUP1 00002688: REVERT 00002689: JUMPDEST 0000268a: POP 0000268b: DUP1 0000268c: MLOAD 0000268d: PUSH1 0x20 0000268f: DUP3 00002690: ADD 00002691: MLOAD 00002692: PUSH1 0x40 00002694: DUP4 00002695: ADD 00002696: MLOAD 00002697: PUSH1 0x60 00002699: DUP5 0000269a: ADD 0000269b: MLOAD 0000269c: PUSH1 0x80 0000269e: SWAP1 0000269f: SWAP5 000026a0: ADD 000026a1: MLOAD 000026a2: SWAP3 000026a3: SWAP9 000026a4: POP 000026a5: SWAP1 000026a6: SWAP7 000026a7: POP 000026a8: SWAP5 000026a9: POP 000026aa: SWAP1 000026ab: SWAP3 000026ac: POP 000026ad: SWAP1 000026ae: POP 000026af: DUP2 000026b0: PUSH2 0x26f6 000026b3: JUMPI 000026b4: PUSH1 0x40 000026b6: DUP1 000026b7: MLOAD 000026b8: PUSH3 0x461bcd 000026bc: PUSH1 0xe5 000026be: SHL 000026bf: DUP2 000026c0: MSTORE 000026c1: PUSH1 0x20 000026c3: PUSH1 0x04 000026c5: DUP3 000026c6: ADD 000026c7: MSTORE 000026c8: PUSH1 0x13 000026ca: PUSH1 0x24 000026cc: DUP3 000026cd: ADD 000026ce: MSTORE 000026cf: PUSH19 0x526f756e6473206e6f7420636f6d706c657465 000026e3: PUSH1 0x68 000026e5: SHL 000026e6: PUSH1 0x44 000026e8: DUP3 000026e9: ADD 000026ea: MSTORE 000026eb: SWAP1 000026ec: MLOAD 000026ed: SWAP1 000026ee: DUP2 000026ef: SWAP1 000026f0: SUB 000026f1: PUSH1 0x64 000026f3: ADD 000026f4: SWAP1 000026f5: REVERT 000026f6: JUMPDEST 000026f7: PUSH2 0x2701 000026fa: DUP5 000026fb: PUSH1 0x0a 000026fd: PUSH2 0x4487 00002700: JUMP 00002701: JUMPDEST 00002702: SWAP6 00002703: POP 00002704: POP 00002705: POP 00002706: POP 00002707: POP 00002708: POP 00002709: PUSH2 0x1430 0000270c: JUMP 0000270d: JUMPDEST 0000270e: PUSH1 0x0e 00002710: SLOAD 00002711: PUSH1 0x15 00002713: SLOAD 00002714: PUSH1 0x40 00002716: DUP1 00002717: MLOAD 00002718: PUSH4 0x3ddac953 0000271d: PUSH1 0xe0 0000271f: SHL 00002720: DUP2 00002721: MSTORE 00002722: PUSH1 0x01 00002724: PUSH1 0x01 00002726: PUSH1 0xa0 00002728: SHL 00002729: SUB 0000272a: SWAP3 0000272b: DUP4 0000272c: AND 0000272d: PUSH1 0x04 0000272f: DUP3 00002730: ADD 00002731: MSTORE 00002732: PUSH8 0x0de0b6b3a7640000 0000273b: PUSH1 0x24 0000273d: DUP3 0000273e: ADD 0000273f: MSTORE 00002740: SWAP1 00002741: MLOAD 00002742: PUSH1 0x00 00002744: SWAP4 00002745: SWAP3 00002746: SWAP1 00002747: SWAP3 00002748: AND 00002749: SWAP2 0000274a: PUSH4 0x3ddac953 0000274f: SWAP2 00002750: PUSH1 0x44 00002752: DUP1 00002753: DUP3 00002754: ADD 00002755: SWAP3 00002756: PUSH1 0x20 00002758: SWAP3 00002759: SWAP1 0000275a: SWAP2 0000275b: SWAP1 0000275c: DUP3 0000275d: SWAP1 0000275e: SUB 0000275f: ADD 00002760: DUP2 00002761: DUP7 00002762: DUP1 00002763: EXTCODESIZE 00002764: ISZERO 00002765: DUP1 00002766: ISZERO 00002767: PUSH2 0x276f 0000276a: JUMPI 0000276b: PUSH1 0x00 0000276d: DUP1 0000276e: REVERT 0000276f: JUMPDEST 00002770: POP 00002771: GAS 00002772: STATICCALL 00002773: ISZERO 00002774: DUP1 00002775: ISZERO 00002776: PUSH2 0x2783 00002779: JUMPI 0000277a: RETURNDATASIZE 0000277b: PUSH1 0x00 0000277d: DUP1 0000277e: RETURNDATACOPY 0000277f: RETURNDATASIZE 00002780: PUSH1 0x00 00002782: REVERT 00002783: JUMPDEST 00002784: POP 00002785: POP 00002786: POP 00002787: POP 00002788: PUSH1 0x40 0000278a: MLOAD 0000278b: RETURNDATASIZE 0000278c: PUSH1 0x20 0000278e: DUP2 0000278f: LT 00002790: ISZERO 00002791: PUSH2 0x2799 00002794: JUMPI 00002795: PUSH1 0x00 00002797: DUP1 00002798: REVERT 00002799: JUMPDEST 0000279a: POP 0000279b: MLOAD 0000279c: PUSH1 0x16 0000279e: SLOAD 0000279f: PUSH1 0x15 000027a1: SLOAD 000027a2: PUSH1 0x40 000027a4: DUP1 000027a5: MLOAD 000027a6: PUSH4 0x3ddac953 000027ab: PUSH1 0xe0 000027ad: SHL 000027ae: DUP2 000027af: MSTORE 000027b0: PUSH1 0x01 000027b2: PUSH1 0x01 000027b4: PUSH1 0xa0 000027b6: SHL 000027b7: SUB 000027b8: SWAP3 000027b9: DUP4 000027ba: AND 000027bb: PUSH1 0x04 000027bd: DUP3 000027be: ADD 000027bf: MSTORE 000027c0: PUSH8 0x0de0b6b3a7640000 000027c9: PUSH1 0x24 000027cb: DUP3 000027cc: ADD 000027cd: MSTORE 000027ce: SWAP1 000027cf: MLOAD 000027d0: SWAP4 000027d1: SWAP5 000027d2: POP 000027d3: PUSH1 0x00 000027d5: SWAP4 000027d6: SWAP2 000027d7: SWAP1 000027d8: SWAP3 000027d9: AND 000027da: SWAP2 000027db: PUSH4 0x3ddac953 000027e0: SWAP2 000027e1: PUSH1 0x44 000027e3: DUP1 000027e4: DUP4 000027e5: ADD 000027e6: SWAP3 000027e7: PUSH1 0x20 000027e9: SWAP3 000027ea: SWAP2 000027eb: SWAP1 000027ec: DUP3 000027ed: SWAP1 000027ee: SUB 000027ef: ADD 000027f0: DUP2 000027f1: DUP7 000027f2: DUP1 000027f3: EXTCODESIZE 000027f4: ISZERO 000027f5: DUP1 000027f6: ISZERO 000027f7: PUSH2 0x27ff 000027fa: JUMPI 000027fb: PUSH1 0x00 000027fd: DUP1 000027fe: REVERT 000027ff: JUMPDEST 00002800: POP 00002801: GAS 00002802: STATICCALL 00002803: ISZERO 00002804: DUP1 00002805: ISZERO 00002806: PUSH2 0x2813 00002809: JUMPI 0000280a: RETURNDATASIZE 0000280b: PUSH1 0x00 0000280d: DUP1 0000280e: RETURNDATACOPY 0000280f: RETURNDATASIZE 00002810: PUSH1 0x00 00002812: REVERT 00002813: JUMPDEST 00002814: POP 00002815: POP 00002816: POP 00002817: POP 00002818: PUSH1 0x40 0000281a: MLOAD 0000281b: RETURNDATASIZE 0000281c: PUSH1 0x20 0000281e: DUP2 0000281f: LT 00002820: ISZERO 00002821: PUSH2 0x2829 00002824: JUMPI 00002825: PUSH1 0x00 00002827: DUP1 00002828: REVERT 00002829: JUMPDEST 0000282a: POP 0000282b: MLOAD 0000282c: PUSH1 0x0a 0000282e: DUP1 0000282f: SLOAD 00002830: SWAP2 00002831: SWAP3 00002832: POP 00002833: PUSH2 0x284a 00002836: SWAP2 00002837: DUP5 00002838: SWAP2 00002839: PUSH2 0x1c05 0000283c: SWAP2 0000283d: SWAP1 0000283e: EXP 0000283f: PUSH2 0x1c12 00002842: DUP6 00002843: PUSH2 0x03e8 00002846: PUSH2 0x4487 00002849: JUMP 0000284a: JUMPDEST 0000284b: SWAP3 0000284c: POP 0000284d: POP 0000284e: POP 0000284f: PUSH2 0x1430 00002852: JUMP 00002853: JUMPDEST 00002854: PUSH1 0x05 00002856: SLOAD 00002857: PUSH1 0xff 00002859: AND 0000285a: SWAP1 0000285b: JUMP 0000285c: JUMPDEST 0000285d: CALLER 0000285e: PUSH1 0x00 00002860: SWAP1 00002861: DUP2 00002862: MSTORE 00002863: PUSH1 0x14 00002865: PUSH1 0x20 00002867: SWAP1 00002868: DUP2 00002869: MSTORE 0000286a: PUSH1 0x40 0000286c: DUP1 0000286d: DUP4 0000286e: KECCAK256 0000286f: PUSH1 0x01 00002871: PUSH1 0x01 00002873: PUSH1 0xa0 00002875: SHL 00002876: SUB 00002877: DUP7 00002878: AND 00002879: DUP5 0000287a: MSTORE 0000287b: SWAP1 0000287c: SWAP2 0000287d: MSTORE 0000287e: DUP2 0000287f: KECCAK256 00002880: SLOAD 00002881: PUSH2 0x288a 00002884: SWAP1 00002885: DUP4 00002886: PUSH2 0x4393 00002889: JUMP 0000288a: JUMPDEST 0000288b: CALLER 0000288c: PUSH1 0x00 0000288e: DUP2 0000288f: DUP2 00002890: MSTORE 00002891: PUSH1 0x14 00002893: PUSH1 0x20 00002895: SWAP1 00002896: DUP2 00002897: MSTORE 00002898: PUSH1 0x40 0000289a: DUP1 0000289b: DUP4 0000289c: KECCAK256 0000289d: PUSH1 0x01 0000289f: PUSH1 0x01 000028a1: PUSH1 0xa0 000028a3: SHL 000028a4: SUB 000028a5: DUP10 000028a6: AND 000028a7: DUP1 000028a8: DUP6 000028a9: MSTORE 000028aa: SWAP1 000028ab: DUP4 000028ac: MSTORE 000028ad: SWAP3 000028ae: DUP2 000028af: SWAP1 000028b0: KECCAK256 000028b1: DUP6 000028b2: SWAP1 000028b3: SSTORE 000028b4: DUP1 000028b5: MLOAD 000028b6: SWAP5 000028b7: DUP6 000028b8: MSTORE 000028b9: MLOAD 000028ba: SWAP2 000028bb: SWAP4 000028bc: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 000028dd: SWAP3 000028de: SWAP1 000028df: DUP2 000028e0: SWAP1 000028e1: SUB 000028e2: SWAP1 000028e3: SWAP2 000028e4: ADD 000028e5: SWAP1 000028e6: LOG3 000028e7: POP 000028e8: PUSH1 0x01 000028ea: JUMPDEST 000028eb: SWAP3 000028ec: SWAP2 000028ed: POP 000028ee: POP 000028ef: JUMP 000028f0: JUMPDEST 000028f1: PUSH1 0x22 000028f3: SLOAD 000028f4: DUP2 000028f5: JUMP 000028f6: JUMPDEST 000028f7: PUSH1 0x24 000028f9: SLOAD 000028fa: PUSH1 0x01 000028fc: PUSH1 0x01 000028fe: PUSH1 0xa0 00002900: SHL 00002901: SUB 00002902: AND 00002903: DUP2 00002904: JUMP 00002905: JUMPDEST 00002906: PUSH1 0x15 00002908: SLOAD 00002909: PUSH1 0x01 0000290b: PUSH1 0x01 0000290d: PUSH1 0xa0 0000290f: SHL 00002910: SUB 00002911: AND 00002912: DUP2 00002913: JUMP 00002914: JUMPDEST 00002915: PUSH1 0x0d 00002917: SLOAD 00002918: PUSH1 0x01 0000291a: PUSH1 0x01 0000291c: PUSH1 0xa0 0000291e: SHL 0000291f: SUB 00002920: AND 00002921: DUP2 00002922: JUMP 00002923: JUMPDEST 00002924: PUSH1 0x01 00002926: PUSH1 0x01 00002928: PUSH1 0xa0 0000292a: SHL 0000292b: SUB 0000292c: AND 0000292d: PUSH1 0x00 0000292f: SWAP1 00002930: DUP2 00002931: MSTORE 00002932: PUSH1 0x25 00002934: PUSH1 0x20 00002936: MSTORE 00002937: PUSH1 0x40 00002939: SWAP1 0000293a: KECCAK256 0000293b: SLOAD 0000293c: SWAP1 0000293d: JUMP 0000293e: JUMPDEST 0000293f: PUSH1 0x01 00002941: PUSH1 0x01 00002943: PUSH1 0xa0 00002945: SHL 00002946: SUB 00002947: AND 00002948: PUSH1 0x00 0000294a: SWAP1 0000294b: DUP2 0000294c: MSTORE 0000294d: PUSH1 0x12 0000294f: PUSH1 0x20 00002951: MSTORE 00002952: PUSH1 0x40 00002954: SWAP1 00002955: KECCAK256 00002956: SLOAD 00002957: SWAP1 00002958: JUMP 00002959: JUMPDEST 0000295a: PUSH2 0x2961 0000295d: PUSH2 0x4574 00002960: JUMP 00002961: JUMPDEST 00002962: PUSH1 0x05 00002964: SLOAD 00002965: PUSH2 0x0100 00002968: SWAP1 00002969: DIV 0000296a: PUSH1 0x01 0000296c: PUSH1 0x01 0000296e: PUSH1 0xa0 00002970: SHL 00002971: SUB 00002972: SWAP1 00002973: DUP2 00002974: AND 00002975: SWAP2 00002976: AND 00002977: EQ 00002978: PUSH2 0x29c8 0000297b: JUMPI 0000297c: PUSH1 0x40 0000297e: DUP1 0000297f: MLOAD 00002980: PUSH3 0x461bcd 00002984: PUSH1 0xe5 00002986: SHL 00002987: DUP2 00002988: MSTORE 00002989: PUSH1 0x20 0000298b: PUSH1 0x04 0000298d: DUP3 0000298e: ADD 0000298f: DUP2 00002990: SWAP1 00002991: MSTORE 00002992: PUSH1 0x24 00002994: DUP3 00002995: ADD 00002996: MSTORE 00002997: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 000029b8: PUSH1 0x44 000029ba: DUP3 000029bb: ADD 000029bc: MSTORE 000029bd: SWAP1 000029be: MLOAD 000029bf: SWAP1 000029c0: DUP2 000029c1: SWAP1 000029c2: SUB 000029c3: PUSH1 0x64 000029c5: ADD 000029c6: SWAP1 000029c7: REVERT 000029c8: JUMPDEST 000029c9: PUSH1 0x05 000029cb: SLOAD 000029cc: PUSH1 0x40 000029ce: MLOAD 000029cf: PUSH1 0x00 000029d1: SWAP2 000029d2: PUSH2 0x0100 000029d5: SWAP1 000029d6: DIV 000029d7: PUSH1 0x01 000029d9: PUSH1 0x01 000029db: PUSH1 0xa0 000029dd: SHL 000029de: SUB 000029df: AND 000029e0: SWAP1 000029e1: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00002a02: SWAP1 00002a03: DUP4 00002a04: SWAP1 00002a05: LOG3 00002a06: PUSH1 0x05 00002a08: DUP1 00002a09: SLOAD 00002a0a: PUSH2 0x0100 00002a0d: PUSH1 0x01 00002a0f: PUSH1 0xa8 00002a11: SHL 00002a12: SUB 00002a13: NOT 00002a14: AND 00002a15: SWAP1 00002a16: SSTORE 00002a17: JUMP 00002a18: JUMPDEST 00002a19: PUSH1 0x23 00002a1b: SLOAD 00002a1c: PUSH1 0x01 00002a1e: PUSH1 0x01 00002a20: PUSH1 0xa0 00002a22: SHL 00002a23: SUB 00002a24: AND 00002a25: CALLER 00002a26: EQ 00002a27: PUSH2 0x2a65 00002a2a: JUMPI 00002a2b: PUSH1 0x40 00002a2d: DUP1 00002a2e: MLOAD 00002a2f: PUSH3 0x461bcd 00002a33: PUSH1 0xe5 00002a35: SHL 00002a36: DUP2 00002a37: MSTORE 00002a38: PUSH1 0x20 00002a3a: PUSH1 0x04 00002a3c: DUP3 00002a3d: ADD 00002a3e: MSTORE 00002a3f: PUSH1 0x1d 00002a41: PUSH1 0x24 00002a43: DUP3 00002a44: ADD 00002a45: MSTORE 00002a46: PUSH1 0x00 00002a48: DUP1 00002a49: MLOAD 00002a4a: PUSH1 0x20 00002a4c: PUSH2 0x4ade 00002a4f: DUP4 00002a50: CODECOPY 00002a51: DUP2 00002a52: MLOAD 00002a53: SWAP2 00002a54: MSTORE 00002a55: PUSH1 0x44 00002a57: DUP3 00002a58: ADD 00002a59: MSTORE 00002a5a: SWAP1 00002a5b: MLOAD 00002a5c: SWAP1 00002a5d: DUP2 00002a5e: SWAP1 00002a5f: SUB 00002a60: PUSH1 0x64 00002a62: ADD 00002a63: SWAP1 00002a64: REVERT 00002a65: JUMPDEST 00002a66: PUSH1 0x0f 00002a68: SSTORE 00002a69: JUMP 00002a6a: JUMPDEST 00002a6b: PUSH1 0x23 00002a6d: SLOAD 00002a6e: PUSH1 0x00 00002a70: SWAP1 00002a71: PUSH1 0x01 00002a73: PUSH1 0x01 00002a75: PUSH1 0xa0 00002a77: SHL 00002a78: SUB 00002a79: AND 00002a7a: CALLER 00002a7b: EQ 00002a7c: PUSH2 0x2aba 00002a7f: JUMPI 00002a80: PUSH1 0x40 00002a82: DUP1 00002a83: MLOAD 00002a84: PUSH3 0x461bcd 00002a88: PUSH1 0xe5 00002a8a: SHL 00002a8b: DUP2 00002a8c: MSTORE 00002a8d: PUSH1 0x20 00002a8f: PUSH1 0x04 00002a91: DUP3 00002a92: ADD 00002a93: MSTORE 00002a94: PUSH1 0x1d 00002a96: PUSH1 0x24 00002a98: DUP3 00002a99: ADD 00002a9a: MSTORE 00002a9b: PUSH1 0x00 00002a9d: DUP1 00002a9e: MLOAD 00002a9f: PUSH1 0x20 00002aa1: PUSH2 0x4ade 00002aa4: DUP4 00002aa5: CODECOPY 00002aa6: DUP2 00002aa7: MLOAD 00002aa8: SWAP2 00002aa9: MSTORE 00002aaa: PUSH1 0x44 00002aac: DUP3 00002aad: ADD 00002aae: MSTORE 00002aaf: SWAP1 00002ab0: MLOAD 00002ab1: SWAP1 00002ab2: DUP2 00002ab3: SWAP1 00002ab4: SUB 00002ab5: PUSH1 0x64 00002ab7: ADD 00002ab8: SWAP1 00002ab9: REVERT 00002aba: JUMPDEST 00002abb: POP 00002abc: PUSH1 0x0d 00002abe: DUP1 00002abf: SLOAD 00002ac0: PUSH1 0x01 00002ac2: PUSH1 0x01 00002ac4: PUSH1 0xa0 00002ac6: SHL 00002ac7: SUB 00002ac8: DUP4 00002ac9: AND 00002aca: PUSH1 0x01 00002acc: PUSH1 0x01 00002ace: PUSH1 0xa0 00002ad0: SHL 00002ad1: SUB 00002ad2: NOT 00002ad3: SWAP1 00002ad4: SWAP2 00002ad5: AND 00002ad6: OR 00002ad7: SWAP1 00002ad8: SSTORE 00002ad9: PUSH1 0x01 00002adb: SWAP2 00002adc: SWAP1 00002add: POP 00002ade: JUMP 00002adf: JUMPDEST 00002ae0: PUSH1 0x18 00002ae2: SLOAD 00002ae3: PUSH1 0x01 00002ae5: PUSH1 0x01 00002ae7: PUSH1 0xa0 00002ae9: SHL 00002aea: SUB 00002aeb: AND 00002aec: CALLER 00002aed: EQ 00002aee: PUSH2 0x2b29 00002af1: JUMPI 00002af2: PUSH1 0x40 00002af4: DUP1 00002af5: MLOAD 00002af6: PUSH3 0x461bcd 00002afa: PUSH1 0xe5 00002afc: SHL 00002afd: DUP2 00002afe: MSTORE 00002aff: PUSH1 0x20 00002b01: PUSH1 0x04 00002b03: DUP3 00002b04: ADD 00002b05: MSTORE 00002b06: PUSH1 0x08 00002b08: PUSH1 0x24 00002b0a: DUP3 00002b0b: ADD 00002b0c: MSTORE 00002b0d: PUSH8 0x2170656e64696e67 00002b16: PUSH1 0xc0 00002b18: SHL 00002b19: PUSH1 0x44 00002b1b: DUP3 00002b1c: ADD 00002b1d: MSTORE 00002b1e: SWAP1 00002b1f: MLOAD 00002b20: SWAP1 00002b21: DUP2 00002b22: SWAP1 00002b23: SUB 00002b24: PUSH1 0x64 00002b26: ADD 00002b27: SWAP1 00002b28: REVERT 00002b29: JUMPDEST 00002b2a: PUSH1 0x17 00002b2c: DUP1 00002b2d: SLOAD 00002b2e: PUSH1 0x18 00002b30: DUP1 00002b31: SLOAD 00002b32: PUSH1 0x01 00002b34: PUSH1 0x01 00002b36: PUSH1 0xa0 00002b38: SHL 00002b39: SUB 00002b3a: NOT 00002b3b: DUP1 00002b3c: DUP5 00002b3d: AND 00002b3e: PUSH1 0x01 00002b40: PUSH1 0x01 00002b42: PUSH1 0xa0 00002b44: SHL 00002b45: SUB 00002b46: DUP4 00002b47: DUP2 00002b48: AND 00002b49: SWAP2 00002b4a: SWAP1 00002b4b: SWAP2 00002b4c: OR 00002b4d: SWAP6 00002b4e: DUP7 00002b4f: SWAP1 00002b50: SSTORE 00002b51: SWAP2 00002b52: AND 00002b53: SWAP1 00002b54: SWAP2 00002b55: SSTORE 00002b56: PUSH1 0x40 00002b58: DUP1 00002b59: MLOAD 00002b5a: SWAP3 00002b5b: DUP3 00002b5c: AND 00002b5d: DUP1 00002b5e: DUP5 00002b5f: MSTORE 00002b60: SWAP4 00002b61: SWAP1 00002b62: SWAP2 00002b63: AND 00002b64: PUSH1 0x20 00002b66: DUP4 00002b67: ADD 00002b68: MSTORE 00002b69: DUP1 00002b6a: MLOAD 00002b6b: PUSH32 0x1f14cfc03e486d23acee577b07bc0b3b23f4888c91fcdba5e0fef5a2549d5523 00002b8c: SWAP3 00002b8d: DUP2 00002b8e: SWAP1 00002b8f: SUB 00002b90: SWAP1 00002b91: SWAP2 00002b92: ADD 00002b93: SWAP1 00002b94: LOG1 00002b95: POP 00002b96: JUMP 00002b97: JUMPDEST 00002b98: PUSH1 0x23 00002b9a: SLOAD 00002b9b: PUSH1 0x01 00002b9d: PUSH1 0x01 00002b9f: PUSH1 0xa0 00002ba1: SHL 00002ba2: SUB 00002ba3: AND 00002ba4: CALLER 00002ba5: EQ 00002ba6: PUSH2 0x2be4 00002ba9: JUMPI 00002baa: PUSH1 0x40 00002bac: DUP1 00002bad: MLOAD 00002bae: PUSH3 0x461bcd 00002bb2: PUSH1 0xe5 00002bb4: SHL 00002bb5: DUP2 00002bb6: MSTORE 00002bb7: PUSH1 0x20 00002bb9: PUSH1 0x04 00002bbb: DUP3 00002bbc: ADD 00002bbd: MSTORE 00002bbe: PUSH1 0x1d 00002bc0: PUSH1 0x24 00002bc2: DUP3 00002bc3: ADD 00002bc4: MSTORE 00002bc5: PUSH1 0x00 00002bc7: DUP1 00002bc8: MLOAD 00002bc9: PUSH1 0x20 00002bcb: PUSH2 0x4ade 00002bce: DUP4 00002bcf: CODECOPY 00002bd0: DUP2 00002bd1: MLOAD 00002bd2: SWAP2 00002bd3: MSTORE 00002bd4: PUSH1 0x44 00002bd6: DUP3 00002bd7: ADD 00002bd8: MSTORE 00002bd9: SWAP1 00002bda: MLOAD 00002bdb: SWAP1 00002bdc: DUP2 00002bdd: SWAP1 00002bde: SUB 00002bdf: PUSH1 0x64 00002be1: ADD 00002be2: SWAP1 00002be3: REVERT 00002be4: JUMPDEST 00002be5: PUSH1 0x22 00002be7: SLOAD 00002be8: NUMBER 00002be9: GT 00002bea: PUSH2 0x2c24 00002bed: JUMPI 00002bee: PUSH1 0x40 00002bf0: MLOAD 00002bf1: PUSH3 0x461bcd 00002bf5: PUSH1 0xe5 00002bf7: SHL 00002bf8: DUP2 00002bf9: MSTORE 00002bfa: PUSH1 0x04 00002bfc: ADD 00002bfd: DUP1 00002bfe: DUP1 00002bff: PUSH1 0x20 00002c01: ADD 00002c02: DUP3 00002c03: DUP2 00002c04: SUB 00002c05: DUP3 00002c06: MSTORE 00002c07: PUSH1 0x37 00002c09: DUP2 00002c0a: MSTORE 00002c0b: PUSH1 0x20 00002c0d: ADD 00002c0e: DUP1 00002c0f: PUSH2 0x49da 00002c12: PUSH1 0x37 00002c14: SWAP2 00002c15: CODECOPY 00002c16: PUSH1 0x40 00002c18: ADD 00002c19: SWAP2 00002c1a: POP 00002c1b: POP 00002c1c: PUSH1 0x40 00002c1e: MLOAD 00002c1f: DUP1 00002c20: SWAP2 00002c21: SUB 00002c22: SWAP1 00002c23: REVERT 00002c24: JUMPDEST 00002c25: PUSH1 0x09 00002c27: SLOAD 00002c28: PUSH2 0x2c3b 00002c2b: SWAP1 00002c2c: PUSH1 0x01 00002c2e: PUSH1 0x01 00002c30: PUSH1 0xa0 00002c32: SHL 00002c33: SUB 00002c34: AND 00002c35: DUP4 00002c36: DUP4 00002c37: PUSH2 0x4522 00002c3a: JUMP 00002c3b: JUMPDEST 00002c3c: POP 00002c3d: POP 00002c3e: JUMP 00002c3f: JUMPDEST 00002c40: PUSH1 0x23 00002c42: SLOAD 00002c43: PUSH1 0x01 00002c45: PUSH1 0x01 00002c47: PUSH1 0xa0 00002c49: SHL 00002c4a: SUB 00002c4b: AND 00002c4c: CALLER 00002c4d: EQ 00002c4e: PUSH2 0x2c8c 00002c51: JUMPI 00002c52: PUSH1 0x40 00002c54: DUP1 00002c55: MLOAD 00002c56: PUSH3 0x461bcd 00002c5a: PUSH1 0xe5 00002c5c: SHL 00002c5d: DUP2 00002c5e: MSTORE 00002c5f: PUSH1 0x20 00002c61: PUSH1 0x04 00002c63: DUP3 00002c64: ADD 00002c65: MSTORE 00002c66: PUSH1 0x1d 00002c68: PUSH1 0x24 00002c6a: DUP3 00002c6b: ADD 00002c6c: MSTORE 00002c6d: PUSH1 0x00 00002c6f: DUP1 00002c70: MLOAD 00002c71: PUSH1 0x20 00002c73: PUSH2 0x4ade 00002c76: DUP4 00002c77: CODECOPY 00002c78: DUP2 00002c79: MLOAD 00002c7a: SWAP2 00002c7b: MSTORE 00002c7c: PUSH1 0x44 00002c7e: DUP3 00002c7f: ADD 00002c80: MSTORE 00002c81: SWAP1 00002c82: MLOAD 00002c83: SWAP1 00002c84: DUP2 00002c85: SWAP1 00002c86: SUB 00002c87: PUSH1 0x64 00002c89: ADD 00002c8a: SWAP1 00002c8b: REVERT 00002c8c: JUMPDEST 00002c8d: PUSH1 0x40 00002c8f: DUP1 00002c90: MLOAD 00002c91: PUSH1 0x00 00002c93: DUP1 00002c94: DUP3 00002c95: MSTORE 00002c96: PUSH1 0x20 00002c98: DUP3 00002c99: ADD 00002c9a: SWAP1 00002c9b: SWAP3 00002c9c: MSTORE 00002c9d: PUSH1 0x01 00002c9f: PUSH1 0x01 00002ca1: PUSH1 0xa0 00002ca3: SHL 00002ca4: SUB 00002ca5: DUP5 00002ca6: AND 00002ca7: SWAP1 00002ca8: DUP4 00002ca9: SWAP1 00002caa: PUSH1 0x40 00002cac: MLOAD 00002cad: DUP1 00002cae: DUP3 00002caf: DUP1 00002cb0: MLOAD 00002cb1: SWAP1 00002cb2: PUSH1 0x20 00002cb4: ADD 00002cb5: SWAP1 00002cb6: DUP1 00002cb7: DUP4 00002cb8: DUP4 00002cb9: JUMPDEST 00002cba: PUSH1 0x20 00002cbc: DUP4 00002cbd: LT 00002cbe: PUSH2 0x2cd8 00002cc1: JUMPI 00002cc2: DUP1 00002cc3: MLOAD 00002cc4: DUP3 00002cc5: MSTORE 00002cc6: PUSH1 0x1f 00002cc8: NOT 00002cc9: SWAP1 00002cca: SWAP3 00002ccb: ADD 00002ccc: SWAP2 00002ccd: PUSH1 0x20 00002ccf: SWAP2 00002cd0: DUP3 00002cd1: ADD 00002cd2: SWAP2 00002cd3: ADD 00002cd4: PUSH2 0x2cb9 00002cd7: JUMP 00002cd8: JUMPDEST 00002cd9: PUSH1 0x01 00002cdb: DUP4 00002cdc: PUSH1 0x20 00002cde: SUB 00002cdf: PUSH2 0x0100 00002ce2: EXP 00002ce3: SUB 00002ce4: DUP1 00002ce5: NOT 00002ce6: DUP3 00002ce7: MLOAD 00002ce8: AND 00002ce9: DUP2 00002cea: DUP5 00002ceb: MLOAD 00002cec: AND 00002ced: DUP1 00002cee: DUP3 00002cef: OR 00002cf0: DUP6 00002cf1: MSTORE 00002cf2: POP 00002cf3: POP 00002cf4: POP 00002cf5: POP 00002cf6: POP 00002cf7: POP 00002cf8: SWAP1 00002cf9: POP 00002cfa: ADD 00002cfb: SWAP2 00002cfc: POP 00002cfd: POP 00002cfe: PUSH1 0x00 00002d00: PUSH1 0x40 00002d02: MLOAD 00002d03: DUP1 00002d04: DUP4 00002d05: SUB 00002d06: DUP2 00002d07: DUP6 00002d08: DUP8 00002d09: GAS 00002d0a: CALL 00002d0b: SWAP3 00002d0c: POP 00002d0d: POP 00002d0e: POP 00002d0f: RETURNDATASIZE 00002d10: DUP1 00002d11: PUSH1 0x00 00002d13: DUP2 00002d14: EQ 00002d15: PUSH2 0x2d3a 00002d18: JUMPI 00002d19: PUSH1 0x40 00002d1b: MLOAD 00002d1c: SWAP2 00002d1d: POP 00002d1e: PUSH1 0x1f 00002d20: NOT 00002d21: PUSH1 0x3f 00002d23: RETURNDATASIZE 00002d24: ADD 00002d25: AND 00002d26: DUP3 00002d27: ADD 00002d28: PUSH1 0x40 00002d2a: MSTORE 00002d2b: RETURNDATASIZE 00002d2c: DUP3 00002d2d: MSTORE 00002d2e: RETURNDATASIZE 00002d2f: PUSH1 0x00 00002d31: PUSH1 0x20 00002d33: DUP5 00002d34: ADD 00002d35: RETURNDATACOPY 00002d36: PUSH2 0x2d3f 00002d39: JUMP 00002d3a: JUMPDEST 00002d3b: PUSH1 0x60 00002d3d: SWAP2 00002d3e: POP 00002d3f: JUMPDEST 00002d40: POP 00002d41: POP 00002d42: SWAP1 00002d43: POP 00002d44: DUP1 00002d45: PUSH2 0x2d8b 00002d48: JUMPI 00002d49: PUSH1 0x40 00002d4b: DUP1 00002d4c: MLOAD 00002d4d: PUSH3 0x461bcd 00002d51: PUSH1 0xe5 00002d53: SHL 00002d54: DUP2 00002d55: MSTORE 00002d56: PUSH1 0x20 00002d58: PUSH1 0x04 00002d5a: DUP3 00002d5b: ADD 00002d5c: MSTORE 00002d5d: PUSH1 0x13 00002d5f: PUSH1 0x24 00002d61: DUP3 00002d62: ADD 00002d63: MSTORE 00002d64: PUSH19 0x11551217d514905394d1915497d19052531151 00002d78: PUSH1 0x6a 00002d7a: SHL 00002d7b: PUSH1 0x44 00002d7d: DUP3 00002d7e: ADD 00002d7f: MSTORE 00002d80: SWAP1 00002d81: MLOAD 00002d82: SWAP1 00002d83: DUP2 00002d84: SWAP1 00002d85: SUB 00002d86: PUSH1 0x64 00002d88: ADD 00002d89: SWAP1 00002d8a: REVERT 00002d8b: JUMPDEST 00002d8c: POP 00002d8d: POP 00002d8e: POP 00002d8f: JUMP 00002d90: JUMPDEST 00002d91: PUSH1 0x0e 00002d93: SLOAD 00002d94: PUSH1 0x01 00002d96: PUSH1 0xa0 00002d98: SHL 00002d99: SWAP1 00002d9a: DIV 00002d9b: PUSH1 0xff 00002d9d: AND 00002d9e: DUP2 00002d9f: JUMP 00002da0: JUMPDEST 00002da1: PUSH1 0x23 00002da3: SLOAD 00002da4: PUSH1 0x01 00002da6: PUSH1 0x01 00002da8: PUSH1 0xa0 00002daa: SHL 00002dab: SUB 00002dac: AND 00002dad: CALLER 00002dae: EQ 00002daf: PUSH2 0x2ded 00002db2: JUMPI 00002db3: PUSH1 0x40 00002db5: DUP1 00002db6: MLOAD 00002db7: PUSH3 0x461bcd 00002dbb: PUSH1 0xe5 00002dbd: SHL 00002dbe: DUP2 00002dbf: MSTORE 00002dc0: PUSH1 0x20 00002dc2: PUSH1 0x04 00002dc4: DUP3 00002dc5: ADD 00002dc6: MSTORE 00002dc7: PUSH1 0x1d 00002dc9: PUSH1 0x24 00002dcb: DUP3 00002dcc: ADD 00002dcd: MSTORE 00002dce: PUSH1 0x00 00002dd0: DUP1 00002dd1: MLOAD 00002dd2: PUSH1 0x20 00002dd4: PUSH2 0x4ade 00002dd7: DUP4 00002dd8: CODECOPY 00002dd9: DUP2 00002dda: MLOAD 00002ddb: SWAP2 00002ddc: MSTORE 00002ddd: PUSH1 0x44 00002ddf: DUP3 00002de0: ADD 00002de1: MSTORE 00002de2: SWAP1 00002de3: MLOAD 00002de4: SWAP1 00002de5: DUP2 00002de6: SWAP1 00002de7: SUB 00002de8: PUSH1 0x64 00002dea: ADD 00002deb: SWAP1 00002dec: REVERT 00002ded: JUMPDEST 00002dee: PUSH1 0x10 00002df0: SSTORE 00002df1: JUMP 00002df2: JUMPDEST 00002df3: PUSH1 0x23 00002df5: SLOAD 00002df6: PUSH1 0x00 00002df8: SWAP1 00002df9: PUSH1 0x01 00002dfb: PUSH1 0x01 00002dfd: PUSH1 0xa0 00002dff: SHL 00002e00: SUB 00002e01: AND 00002e02: CALLER 00002e03: EQ 00002e04: PUSH2 0x2e42 00002e07: JUMPI 00002e08: PUSH1 0x40 00002e0a: DUP1 00002e0b: MLOAD 00002e0c: PUSH3 0x461bcd 00002e10: PUSH1 0xe5 00002e12: SHL 00002e13: DUP2 00002e14: MSTORE 00002e15: PUSH1 0x20 00002e17: PUSH1 0x04 00002e19: DUP3 00002e1a: ADD 00002e1b: MSTORE 00002e1c: PUSH1 0x1d 00002e1e: PUSH1 0x24 00002e20: DUP3 00002e21: ADD 00002e22: MSTORE 00002e23: PUSH1 0x00 00002e25: DUP1 00002e26: MLOAD 00002e27: PUSH1 0x20 00002e29: PUSH2 0x4ade 00002e2c: DUP4 00002e2d: CODECOPY 00002e2e: DUP2 00002e2f: MLOAD 00002e30: SWAP2 00002e31: MSTORE 00002e32: PUSH1 0x44 00002e34: DUP3 00002e35: ADD 00002e36: MSTORE 00002e37: SWAP1 00002e38: MLOAD 00002e39: SWAP1 00002e3a: DUP2 00002e3b: SWAP1 00002e3c: SUB 00002e3d: PUSH1 0x64 00002e3f: ADD 00002e40: SWAP1 00002e41: REVERT 00002e42: JUMPDEST 00002e43: POP 00002e44: PUSH1 0x0e 00002e46: DUP1 00002e47: SLOAD 00002e48: PUSH1 0x01 00002e4a: PUSH1 0x01 00002e4c: PUSH1 0xa0 00002e4e: SHL 00002e4f: SUB 00002e50: NOT 00002e51: AND 00002e52: PUSH1 0x01 00002e54: PUSH1 0x01 00002e56: PUSH1 0xa0 00002e58: SHL 00002e59: SUB 00002e5a: SWAP3 00002e5b: SWAP1 00002e5c: SWAP3 00002e5d: AND 00002e5e: SWAP2 00002e5f: SWAP1 00002e60: SWAP2 00002e61: OR 00002e62: PUSH1 0xff 00002e64: PUSH1 0xa0 00002e66: SHL 00002e67: NOT 00002e68: AND 00002e69: SWAP1 00002e6a: SSTORE 00002e6b: PUSH1 0x01 00002e6d: SWAP1 00002e6e: JUMP 00002e6f: JUMPDEST 00002e70: PUSH1 0x19 00002e72: SLOAD 00002e73: DUP2 00002e74: JUMP 00002e75: JUMPDEST 00002e76: PUSH1 0x05 00002e78: SLOAD 00002e79: PUSH2 0x0100 00002e7c: SWAP1 00002e7d: DIV 00002e7e: PUSH1 0x01 00002e80: PUSH1 0x01 00002e82: PUSH1 0xa0 00002e84: SHL 00002e85: SUB 00002e86: AND 00002e87: SWAP1 00002e88: JUMP 00002e89: JUMPDEST 00002e8a: PUSH1 0x0d 00002e8c: SLOAD 00002e8d: PUSH1 0x09 00002e8f: SLOAD 00002e90: PUSH1 0x0a 00002e92: DUP1 00002e93: SLOAD 00002e94: PUSH1 0x40 00002e96: DUP1 00002e97: MLOAD 00002e98: PUSH4 0x3ddac953 00002e9d: PUSH1 0xe0 00002e9f: SHL 00002ea0: DUP2 00002ea1: MSTORE 00002ea2: PUSH1 0x01 00002ea4: PUSH1 0x01 00002ea6: PUSH1 0xa0 00002ea8: SHL 00002ea9: SUB 00002eaa: SWAP5 00002eab: DUP6 00002eac: AND 00002ead: PUSH1 0x04 00002eaf: DUP3 00002eb0: ADD 00002eb1: MSTORE 00002eb2: SWAP2 00002eb3: SWAP1 00002eb4: SWAP3 00002eb5: EXP 00002eb6: PUSH1 0x24 00002eb8: DUP3 00002eb9: ADD 00002eba: MSTORE 00002ebb: SWAP1 00002ebc: MLOAD 00002ebd: PUSH1 0x00 00002ebf: SWAP4 00002ec0: DUP5 00002ec1: SWAP4 00002ec2: AND 00002ec3: SWAP2 00002ec4: PUSH4 0x3ddac953 00002ec9: SWAP2 00002eca: PUSH1 0x44 00002ecc: DUP1 00002ecd: DUP4 00002ece: ADD 00002ecf: SWAP3 00002ed0: PUSH1 0x20 00002ed2: SWAP3 00002ed3: SWAP2 00002ed4: SWAP1 00002ed5: DUP3 00002ed6: SWAP1 00002ed7: SUB 00002ed8: ADD 00002ed9: DUP2 00002eda: DUP7 00002edb: DUP1 00002edc: EXTCODESIZE 00002edd: ISZERO 00002ede: DUP1 00002edf: ISZERO 00002ee0: PUSH2 0x2ee8 00002ee3: JUMPI 00002ee4: PUSH1 0x00 00002ee6: DUP1 00002ee7: REVERT 00002ee8: JUMPDEST 00002ee9: POP 00002eea: GAS 00002eeb: STATICCALL 00002eec: ISZERO 00002eed: DUP1 00002eee: ISZERO 00002eef: PUSH2 0x2efc 00002ef2: JUMPI 00002ef3: RETURNDATASIZE 00002ef4: PUSH1 0x00 00002ef6: DUP1 00002ef7: RETURNDATACOPY 00002ef8: RETURNDATASIZE 00002ef9: PUSH1 0x00 00002efb: REVERT 00002efc: JUMPDEST 00002efd: POP 00002efe: POP 00002eff: POP 00002f00: POP 00002f01: PUSH1 0x40 00002f03: MLOAD 00002f04: RETURNDATASIZE 00002f05: PUSH1 0x20 00002f07: DUP2 00002f08: LT 00002f09: ISZERO 00002f0a: PUSH2 0x2f12 00002f0d: JUMPI 00002f0e: PUSH1 0x00 00002f10: DUP1 00002f11: REVERT 00002f12: JUMPDEST 00002f13: POP 00002f14: MLOAD 00002f15: SWAP1 00002f16: POP 00002f17: PUSH1 0x00 00002f19: PUSH2 0x2f20 00002f1c: PUSH2 0x25f4 00002f1f: JUMP 00002f20: JUMPDEST 00002f21: SWAP1 00002f22: POP 00002f23: PUSH1 0x00 00002f25: PUSH2 0x2f36 00002f28: DUP4 00002f29: PUSH2 0x1c05 00002f2c: DUP5 00002f2d: PUSH4 0x3b9aca00 00002f32: PUSH2 0x4487 00002f35: JUMP 00002f36: JUMPDEST 00002f37: SWAP4 00002f38: POP 00002f39: POP 00002f3a: POP 00002f3b: POP 00002f3c: SWAP1 00002f3d: JUMP 00002f3e: JUMPDEST 00002f3f: PUSH1 0x07 00002f41: SLOAD 00002f42: DUP2 00002f43: JUMP 00002f44: JUMPDEST 00002f45: PUSH1 0x02 00002f47: PUSH1 0x06 00002f49: SLOAD 00002f4a: EQ 00002f4b: ISZERO 00002f4c: PUSH2 0x2f9c 00002f4f: JUMPI 00002f50: PUSH1 0x40 00002f52: DUP1 00002f53: MLOAD 00002f54: PUSH3 0x461bcd 00002f58: PUSH1 0xe5 00002f5a: SHL 00002f5b: DUP2 00002f5c: MSTORE 00002f5d: PUSH1 0x20 00002f5f: PUSH1 0x04 00002f61: DUP3 00002f62: ADD 00002f63: MSTORE 00002f64: PUSH1 0x1f 00002f66: PUSH1 0x24 00002f68: DUP3 00002f69: ADD 00002f6a: MSTORE 00002f6b: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00 00002f8c: PUSH1 0x44 00002f8e: DUP3 00002f8f: ADD 00002f90: MSTORE 00002f91: SWAP1 00002f92: MLOAD 00002f93: SWAP1 00002f94: DUP2 00002f95: SWAP1 00002f96: SUB 00002f97: PUSH1 0x64 00002f99: ADD 00002f9a: SWAP1 00002f9b: REVERT 00002f9c: JUMPDEST 00002f9d: PUSH1 0x02 00002f9f: PUSH1 0x06 00002fa1: SSTORE 00002fa2: PUSH1 0x01 00002fa4: PUSH1 0x01 00002fa6: PUSH1 0xa0 00002fa8: SHL 00002fa9: SUB 00002faa: DUP2 00002fab: AND 00002fac: PUSH1 0x00 00002fae: SWAP1 00002faf: DUP2 00002fb0: MSTORE 00002fb1: PUSH1 0x1b 00002fb3: PUSH1 0x20 00002fb5: MSTORE 00002fb6: PUSH1 0x40 00002fb8: SWAP1 00002fb9: KECCAK256 00002fba: SLOAD 00002fbb: PUSH1 0xff 00002fbd: AND 00002fbe: PUSH2 0x300e 00002fc1: JUMPI 00002fc2: PUSH1 0x40 00002fc4: DUP1 00002fc5: MLOAD 00002fc6: PUSH3 0x461bcd 00002fca: PUSH1 0xe5 00002fcc: SHL 00002fcd: DUP2 00002fce: MSTORE 00002fcf: PUSH1 0x20 00002fd1: PUSH1 0x04 00002fd3: DUP3 00002fd4: ADD 00002fd5: MSTORE 00002fd6: PUSH1 0x1e 00002fd8: PUSH1 0x24 00002fda: DUP3 00002fdb: ADD 00002fdc: MSTORE 00002fdd: PUSH32 0x6d75737420626520616e20616363657074656420636f6c6c61746572616c0000 00002ffe: PUSH1 0x44 00003000: DUP3 00003001: ADD 00003002: MSTORE 00003003: SWAP1 00003004: MLOAD 00003005: SWAP1 00003006: DUP2 00003007: SWAP1 00003008: SUB 00003009: PUSH1 0x64 0000300b: ADD 0000300c: SWAP1 0000300d: REVERT 0000300e: JUMPDEST 0000300f: DUP2 00003010: PUSH2 0x3060 00003013: JUMPI 00003014: PUSH1 0x40 00003016: DUP1 00003017: MLOAD 00003018: PUSH3 0x461bcd 0000301c: PUSH1 0xe5 0000301e: SHL 0000301f: DUP2 00003020: MSTORE 00003021: PUSH1 0x20 00003023: PUSH1 0x04 00003025: DUP3 00003026: ADD 00003027: MSTORE 00003028: PUSH1 0x19 0000302a: PUSH1 0x24 0000302c: DUP3 0000302d: ADD 0000302e: MSTORE 0000302f: PUSH32 0x6d757374206d696e74206e6f6e2d7a65726f20616d6f756e7400000000000000 00003050: PUSH1 0x44 00003052: DUP3 00003053: ADD 00003054: MSTORE 00003055: SWAP1 00003056: MLOAD 00003057: SWAP1 00003058: DUP2 00003059: SWAP1 0000305a: SUB 0000305b: PUSH1 0x64 0000305d: ADD 0000305e: SWAP1 0000305f: REVERT 00003060: JUMPDEST 00003061: PUSH1 0x10 00003063: SLOAD 00003064: CALLER 00003065: PUSH1 0x00 00003067: SWAP1 00003068: DUP2 00003069: MSTORE 0000306a: PUSH1 0x13 0000306c: PUSH1 0x20 0000306e: MSTORE 0000306f: PUSH1 0x40 00003071: SWAP1 00003072: KECCAK256 00003073: SLOAD 00003074: NUMBER 00003075: SWAP2 00003076: ADD 00003077: GT 00003078: ISZERO 00003079: PUSH2 0x30b3 0000307c: JUMPI 0000307d: PUSH1 0x40 0000307f: MLOAD 00003080: PUSH3 0x461bcd 00003084: PUSH1 0xe5 00003086: SHL 00003087: DUP2 00003088: MSTORE 00003089: PUSH1 0x04 0000308b: ADD 0000308c: DUP1 0000308d: DUP1 0000308e: PUSH1 0x20 00003090: ADD 00003091: DUP3 00003092: DUP2 00003093: SUB 00003094: DUP3 00003095: MSTORE 00003096: PUSH1 0x2f 00003098: DUP2 00003099: MSTORE 0000309a: PUSH1 0x20 0000309c: ADD 0000309d: DUP1 0000309e: PUSH2 0x4a31 000030a1: PUSH1 0x2f 000030a3: SWAP2 000030a4: CODECOPY 000030a5: PUSH1 0x40 000030a7: ADD 000030a8: SWAP2 000030a9: POP 000030aa: POP 000030ab: PUSH1 0x40 000030ad: MLOAD 000030ae: DUP1 000030af: SWAP2 000030b0: SUB 000030b1: SWAP1 000030b2: REVERT 000030b3: JUMPDEST 000030b4: PUSH1 0x00 000030b6: DUP1 000030b7: PUSH2 0x30c0 000030ba: DUP5 000030bb: DUP5 000030bc: PUSH2 0x397f 000030bf: JUMP 000030c0: JUMPDEST 000030c1: SWAP2 000030c2: POP 000030c3: SWAP2 000030c4: POP 000030c5: DUP3 000030c6: PUSH1 0x01 000030c8: PUSH1 0x01 000030ca: PUSH1 0xa0 000030cc: SHL 000030cd: SUB 000030ce: AND 000030cf: PUSH4 0x70a08231 000030d4: CALLER 000030d5: PUSH1 0x40 000030d7: MLOAD 000030d8: DUP3 000030d9: PUSH4 0xffffffff 000030de: AND 000030df: PUSH1 0xe0 000030e1: SHL 000030e2: DUP2 000030e3: MSTORE 000030e4: PUSH1 0x04 000030e6: ADD 000030e7: DUP1 000030e8: DUP3 000030e9: PUSH1 0x01 000030eb: PUSH1 0x01 000030ed: PUSH1 0xa0 000030ef: SHL 000030f0: SUB 000030f1: AND 000030f2: DUP2 000030f3: MSTORE 000030f4: PUSH1 0x20 000030f6: ADD 000030f7: SWAP2 000030f8: POP 000030f9: POP 000030fa: PUSH1 0x20 000030fc: PUSH1 0x40 000030fe: MLOAD 000030ff: DUP1 00003100: DUP4 00003101: SUB 00003102: DUP2 00003103: DUP7 00003104: DUP1 00003105: EXTCODESIZE 00003106: ISZERO 00003107: DUP1 00003108: ISZERO 00003109: PUSH2 0x3111 0000310c: JUMPI 0000310d: PUSH1 0x00 0000310f: DUP1 00003110: REVERT 00003111: JUMPDEST 00003112: POP 00003113: GAS 00003114: STATICCALL 00003115: ISZERO 00003116: DUP1 00003117: ISZERO 00003118: PUSH2 0x3125 0000311b: JUMPI 0000311c: RETURNDATASIZE 0000311d: PUSH1 0x00 0000311f: DUP1 00003120: RETURNDATACOPY 00003121: RETURNDATASIZE 00003122: PUSH1 0x00 00003124: REVERT 00003125: JUMPDEST 00003126: POP 00003127: POP 00003128: POP 00003129: POP 0000312a: PUSH1 0x40 0000312c: MLOAD 0000312d: RETURNDATASIZE 0000312e: PUSH1 0x20 00003130: DUP2 00003131: LT 00003132: ISZERO 00003133: PUSH2 0x313b 00003136: JUMPI 00003137: PUSH1 0x00 00003139: DUP1 0000313a: REVERT 0000313b: JUMPDEST 0000313c: POP 0000313d: MLOAD 0000313e: DUP3 0000313f: GT 00003140: ISZERO 00003141: PUSH2 0x317b 00003144: JUMPI 00003145: PUSH1 0x40 00003147: MLOAD 00003148: PUSH3 0x461bcd 0000314c: PUSH1 0xe5 0000314e: SHL 0000314f: DUP2 00003150: MSTORE 00003151: PUSH1 0x04 00003153: ADD 00003154: DUP1 00003155: DUP1 00003156: PUSH1 0x20 00003158: ADD 00003159: DUP3 0000315a: DUP2 0000315b: SUB 0000315c: DUP3 0000315d: MSTORE 0000315e: PUSH1 0x2a 00003160: DUP2 00003161: MSTORE 00003162: PUSH1 0x20 00003164: ADD 00003165: DUP1 00003166: PUSH2 0x4a60 00003169: PUSH1 0x2a 0000316b: SWAP2 0000316c: CODECOPY 0000316d: PUSH1 0x40 0000316f: ADD 00003170: SWAP2 00003171: POP 00003172: POP 00003173: PUSH1 0x40 00003175: MLOAD 00003176: DUP1 00003177: SWAP2 00003178: SUB 00003179: SWAP1 0000317a: REVERT 0000317b: JUMPDEST 0000317c: PUSH1 0x09 0000317e: SLOAD 0000317f: PUSH1 0x40 00003181: DUP1 00003182: MLOAD 00003183: PUSH4 0x70a08231 00003188: PUSH1 0xe0 0000318a: SHL 0000318b: DUP2 0000318c: MSTORE 0000318d: CALLER 0000318e: PUSH1 0x04 00003190: DUP3 00003191: ADD 00003192: MSTORE 00003193: SWAP1 00003194: MLOAD 00003195: PUSH1 0x01 00003197: PUSH1 0x01 00003199: PUSH1 0xa0 0000319b: SHL 0000319c: SUB 0000319d: SWAP1 0000319e: SWAP3 0000319f: AND 000031a0: SWAP2 000031a1: PUSH4 0x70a08231 000031a6: SWAP2 000031a7: PUSH1 0x24 000031a9: DUP1 000031aa: DUP3 000031ab: ADD 000031ac: SWAP3 000031ad: PUSH1 0x20 000031af: SWAP3 000031b0: SWAP1 000031b1: SWAP2 000031b2: SWAP1 000031b3: DUP3 000031b4: SWAP1 000031b5: SUB 000031b6: ADD 000031b7: DUP2 000031b8: DUP7 000031b9: DUP1 000031ba: EXTCODESIZE 000031bb: ISZERO 000031bc: DUP1 000031bd: ISZERO 000031be: PUSH2 0x31c6 000031c1: JUMPI 000031c2: PUSH1 0x00 000031c4: DUP1 000031c5: REVERT 000031c6: JUMPDEST 000031c7: POP 000031c8: GAS 000031c9: STATICCALL 000031ca: ISZERO 000031cb: DUP1 000031cc: ISZERO 000031cd: PUSH2 0x31da 000031d0: JUMPI 000031d1: RETURNDATASIZE 000031d2: PUSH1 0x00 000031d4: DUP1 000031d5: RETURNDATACOPY 000031d6: RETURNDATASIZE 000031d7: PUSH1 0x00 000031d9: REVERT 000031da: JUMPDEST 000031db: POP 000031dc: POP 000031dd: POP 000031de: POP 000031df: PUSH1 0x40 000031e1: MLOAD 000031e2: RETURNDATASIZE 000031e3: PUSH1 0x20 000031e5: DUP2 000031e6: LT 000031e7: ISZERO 000031e8: PUSH2 0x31f0 000031eb: JUMPI 000031ec: PUSH1 0x00 000031ee: DUP1 000031ef: REVERT 000031f0: JUMPDEST 000031f1: POP 000031f2: MLOAD 000031f3: DUP2 000031f4: GT 000031f5: ISZERO 000031f6: PUSH2 0x3230 000031f9: JUMPI 000031fa: PUSH1 0x40 000031fc: MLOAD 000031fd: PUSH3 0x461bcd 00003201: PUSH1 0xe5 00003203: SHL 00003204: DUP2 00003205: MSTORE 00003206: PUSH1 0x04 00003208: ADD 00003209: DUP1 0000320a: DUP1 0000320b: PUSH1 0x20 0000320d: ADD 0000320e: DUP3 0000320f: DUP2 00003210: SUB 00003211: DUP3 00003212: MSTORE 00003213: PUSH1 0x28 00003215: DUP2 00003216: MSTORE 00003217: PUSH1 0x20 00003219: ADD 0000321a: DUP1 0000321b: PUSH2 0x496f 0000321e: PUSH1 0x28 00003220: SWAP2 00003221: CODECOPY 00003222: PUSH1 0x40 00003224: ADD 00003225: SWAP2 00003226: POP 00003227: POP 00003228: PUSH1 0x40 0000322a: MLOAD 0000322b: DUP1 0000322c: SWAP2 0000322d: SUB 0000322e: SWAP1 0000322f: REVERT 00003230: JUMPDEST 00003231: PUSH2 0x323c 00003234: DUP4 00003235: CALLER 00003236: ADDRESS 00003237: DUP6 00003238: PUSH2 0x4578 0000323b: JUMP 0000323c: JUMPDEST 0000323d: PUSH1 0x09 0000323f: SLOAD 00003240: PUSH2 0x3254 00003243: SWAP1 00003244: PUSH1 0x01 00003246: PUSH1 0x01 00003248: PUSH1 0xa0 0000324a: SHL 0000324b: SUB 0000324c: AND 0000324d: CALLER 0000324e: ADDRESS 0000324f: DUP5 00003250: PUSH2 0x4578 00003253: JUMP 00003254: JUMPDEST 00003255: PUSH1 0x20 00003257: SLOAD 00003258: PUSH2 0x3278 0000325b: SWAP1 0000325c: PUSH2 0x3271 0000325f: SWAP1 00003260: PUSH5 0x174876e800 00003266: SWAP1 00003267: PUSH2 0x1c05 0000326a: SWAP1 0000326b: DUP9 0000326c: SWAP1 0000326d: PUSH2 0x4487 00003270: JUMP 00003271: JUMPDEST 00003272: DUP6 00003273: SWAP1 00003274: PUSH2 0x43ed 00003277: JUMP 00003278: JUMPDEST 00003279: PUSH1 0x11 0000327b: SLOAD 0000327c: SWAP1 0000327d: SWAP5 0000327e: POP 0000327f: PUSH2 0x3288 00003282: SWAP1 00003283: DUP6 00003284: PUSH2 0x4393 00003287: JUMP 00003288: JUMPDEST 00003289: PUSH1 0x11 0000328b: SSTORE 0000328c: CALLER 0000328d: PUSH1 0x00 0000328f: SWAP1 00003290: DUP2 00003291: MSTORE 00003292: PUSH1 0x12 00003294: PUSH1 0x20 00003296: MSTORE 00003297: PUSH1 0x40 00003299: SWAP1 0000329a: KECCAK256 0000329b: SLOAD 0000329c: PUSH2 0x32a5 0000329f: SWAP1 000032a0: DUP6 000032a1: PUSH2 0x4393 000032a4: JUMP 000032a5: JUMPDEST 000032a6: CALLER 000032a7: PUSH1 0x00 000032a9: DUP2 000032aa: DUP2 000032ab: MSTORE 000032ac: PUSH1 0x12 000032ae: PUSH1 0x20 000032b0: SWAP1 000032b1: DUP2 000032b2: MSTORE 000032b3: PUSH1 0x40 000032b5: DUP1 000032b6: DUP4 000032b7: KECCAK256 000032b8: SWAP5 000032b9: SWAP1 000032ba: SWAP5 000032bb: SSTORE 000032bc: DUP4 000032bd: MLOAD 000032be: DUP9 000032bf: DUP2 000032c0: MSTORE 000032c1: SWAP4 000032c2: MLOAD 000032c3: SWAP3 000032c4: SWAP4 000032c5: SWAP2 000032c6: SWAP3 000032c7: PUSH1 0x00 000032c9: DUP1 000032ca: MLOAD 000032cb: PUSH1 0x20 000032cd: PUSH2 0x4a11 000032d0: DUP4 000032d1: CODECOPY 000032d2: DUP2 000032d3: MLOAD 000032d4: SWAP2 000032d5: MSTORE 000032d6: SWAP3 000032d7: DUP2 000032d8: SWAP1 000032d9: SUB 000032da: SWAP1 000032db: SWAP2 000032dc: ADD 000032dd: SWAP1 000032de: LOG3 000032df: CALLER 000032e0: PUSH1 0x00 000032e2: DUP2 000032e3: DUP2 000032e4: MSTORE 000032e5: PUSH1 0x13 000032e7: PUSH1 0x20 000032e9: SWAP1 000032ea: DUP2 000032eb: MSTORE 000032ec: PUSH1 0x40 000032ee: SWAP2 000032ef: DUP3 000032f0: SWAP1 000032f1: KECCAK256 000032f2: NUMBER 000032f3: SWAP1 000032f4: SSTORE 000032f5: PUSH1 0x09 000032f7: SLOAD 000032f8: DUP3 000032f9: MLOAD 000032fa: PUSH1 0x01 000032fc: PUSH1 0x01 000032fe: PUSH1 0xa0 00003300: SHL 00003301: SUB 00003302: SWAP2 00003303: DUP3 00003304: AND 00003305: DUP2 00003306: MSTORE 00003307: SWAP2 00003308: DUP3 00003309: ADD 0000330a: SWAP4 0000330b: SWAP1 0000330c: SWAP4 0000330d: MSTORE 0000330e: SWAP2 0000330f: DUP6 00003310: AND 00003311: DUP3 00003312: DUP3 00003313: ADD 00003314: MSTORE 00003315: PUSH1 0x60 00003317: DUP3 00003318: ADD 00003319: DUP5 0000331a: SWAP1 0000331b: MSTORE 0000331c: PUSH1 0x80 0000331e: DUP3 0000331f: ADD 00003320: DUP4 00003321: SWAP1 00003322: MSTORE 00003323: PUSH1 0xa0 00003325: DUP3 00003326: ADD 00003327: DUP7 00003328: SWAP1 00003329: MSTORE 0000332a: MLOAD 0000332b: PUSH32 0xeca801b067fae3d181506c21fb55d44a644d16cdb863595643131a7e105b5f01 0000334c: SWAP2 0000334d: DUP2 0000334e: SWAP1 0000334f: SUB 00003350: PUSH1 0xc0 00003352: ADD 00003353: SWAP1 00003354: LOG1 00003355: POP 00003356: POP 00003357: PUSH1 0x01 00003359: PUSH1 0x06 0000335b: SSTORE 0000335c: POP 0000335d: POP 0000335e: JUMP 0000335f: JUMPDEST 00003360: PUSH1 0x04 00003362: DUP1 00003363: SLOAD 00003364: PUSH1 0x40 00003366: DUP1 00003367: MLOAD 00003368: PUSH1 0x20 0000336a: PUSH1 0x1f 0000336c: PUSH1 0x02 0000336e: PUSH1 0x00 00003370: NOT 00003371: PUSH2 0x0100 00003374: PUSH1 0x01 00003376: DUP9 00003377: AND 00003378: ISZERO 00003379: MUL 0000337a: ADD 0000337b: SWAP1 0000337c: SWAP6 0000337d: AND 0000337e: SWAP5 0000337f: SWAP1 00003380: SWAP5 00003381: DIV 00003382: SWAP4 00003383: DUP5 00003384: ADD 00003385: DUP2 00003386: SWAP1 00003387: DIV 00003388: DUP2 00003389: MUL 0000338a: DUP3 0000338b: ADD 0000338c: DUP2 0000338d: ADD 0000338e: SWAP1 0000338f: SWAP3 00003390: MSTORE 00003391: DUP3 00003392: DUP2 00003393: MSTORE 00003394: PUSH1 0x60 00003396: SWAP4 00003397: SWAP1 00003398: SWAP3 00003399: SWAP1 0000339a: SWAP2 0000339b: DUP4 0000339c: ADD 0000339d: DUP3 0000339e: DUP3 0000339f: DUP1 000033a0: ISZERO 000033a1: PUSH2 0x1428 000033a4: JUMPI 000033a5: DUP1 000033a6: PUSH1 0x1f 000033a8: LT 000033a9: PUSH2 0x13fd 000033ac: JUMPI 000033ad: PUSH2 0x0100 000033b0: DUP1 000033b1: DUP4 000033b2: SLOAD 000033b3: DIV 000033b4: MUL 000033b5: DUP4 000033b6: MSTORE 000033b7: SWAP2 000033b8: PUSH1 0x20 000033ba: ADD 000033bb: SWAP2 000033bc: PUSH2 0x1428 000033bf: JUMP 000033c0: JUMPDEST 000033c1: PUSH1 0x09 000033c3: SLOAD 000033c4: PUSH1 0x01 000033c6: PUSH1 0x01 000033c8: PUSH1 0xa0 000033ca: SHL 000033cb: SUB 000033cc: AND 000033cd: DUP2 000033ce: JUMP 000033cf: JUMPDEST 000033d0: PUSH1 0x24 000033d2: SLOAD 000033d3: PUSH1 0x01 000033d5: PUSH1 0x01 000033d7: PUSH1 0xa0 000033d9: SHL 000033da: SUB 000033db: AND 000033dc: CALLER 000033dd: EQ 000033de: PUSH2 0x3419 000033e1: JUMPI 000033e2: PUSH1 0x40 000033e4: DUP1 000033e5: MLOAD 000033e6: PUSH3 0x461bcd 000033ea: PUSH1 0xe5 000033ec: SHL 000033ed: DUP2 000033ee: MSTORE 000033ef: PUSH1 0x20 000033f1: PUSH1 0x04 000033f3: DUP3 000033f4: ADD 000033f5: MSTORE 000033f6: PUSH1 0x08 000033f8: PUSH1 0x24 000033fa: DUP3 000033fb: ADD 000033fc: MSTORE 000033fd: PUSH8 0x2170656e64696e67 00003406: PUSH1 0xc0 00003408: SHL 00003409: PUSH1 0x44 0000340b: DUP3 0000340c: ADD 0000340d: MSTORE 0000340e: SWAP1 0000340f: MLOAD 00003410: SWAP1 00003411: DUP2 00003412: SWAP1 00003413: SUB 00003414: PUSH1 0x64 00003416: ADD 00003417: SWAP1 00003418: REVERT 00003419: JUMPDEST 0000341a: PUSH1 0x23 0000341c: DUP1 0000341d: SLOAD 0000341e: PUSH1 0x24 00003420: DUP1 00003421: SLOAD 00003422: PUSH1 0x01 00003424: PUSH1 0x01 00003426: PUSH1 0xa0 00003428: SHL 00003429: SUB 0000342a: NOT 0000342b: DUP1 0000342c: DUP5 0000342d: AND 0000342e: PUSH1 0x01 00003430: PUSH1 0x01 00003432: PUSH1 0xa0 00003434: SHL 00003435: SUB 00003436: DUP4 00003437: DUP2 00003438: AND 00003439: SWAP2 0000343a: SWAP1 0000343b: SWAP2 0000343c: OR 0000343d: SWAP6 0000343e: DUP7 0000343f: SWAP1 00003440: SSTORE 00003441: SWAP2 00003442: AND 00003443: SWAP1 00003444: SWAP2 00003445: SSTORE 00003446: PUSH1 0x40 00003448: DUP1 00003449: MLOAD 0000344a: SWAP3 0000344b: DUP3 0000344c: AND 0000344d: DUP1 0000344e: DUP5 0000344f: MSTORE 00003450: SWAP4 00003451: SWAP1 00003452: SWAP2 00003453: AND 00003454: PUSH1 0x20 00003456: DUP4 00003457: ADD 00003458: MSTORE 00003459: DUP1 0000345a: MLOAD 0000345b: PUSH32 0x1f14cfc03e486d23acee577b07bc0b3b23f4888c91fcdba5e0fef5a2549d5523 0000347c: SWAP3 0000347d: DUP2 0000347e: SWAP1 0000347f: SUB 00003480: SWAP1 00003481: SWAP2 00003482: ADD 00003483: SWAP1 00003484: LOG1 00003485: POP 00003486: JUMP 00003487: JUMPDEST 00003488: PUSH1 0x10 0000348a: SLOAD 0000348b: DUP2 0000348c: JUMP 0000348d: JUMPDEST 0000348e: CALLER 0000348f: PUSH1 0x00 00003491: SWAP1 00003492: DUP2 00003493: MSTORE 00003494: PUSH1 0x14 00003496: PUSH1 0x20 00003498: SWAP1 00003499: DUP2 0000349a: MSTORE 0000349b: PUSH1 0x40 0000349d: DUP1 0000349e: DUP4 0000349f: KECCAK256 000034a0: PUSH1 0x01 000034a2: PUSH1 0x01 000034a4: PUSH1 0xa0 000034a6: SHL 000034a7: SUB 000034a8: DUP7 000034a9: AND 000034aa: DUP5 000034ab: MSTORE 000034ac: SWAP1 000034ad: SWAP2 000034ae: MSTORE 000034af: DUP2 000034b0: KECCAK256 000034b1: SLOAD 000034b2: DUP1 000034b3: DUP4 000034b4: LT 000034b5: PUSH2 0x34e1 000034b8: JUMPI 000034b9: CALLER 000034ba: PUSH1 0x00 000034bc: SWAP1 000034bd: DUP2 000034be: MSTORE 000034bf: PUSH1 0x14 000034c1: PUSH1 0x20 000034c3: SWAP1 000034c4: DUP2 000034c5: MSTORE 000034c6: PUSH1 0x40 000034c8: DUP1 000034c9: DUP4 000034ca: KECCAK256 000034cb: PUSH1 0x01 000034cd: PUSH1 0x01 000034cf: PUSH1 0xa0 000034d1: SHL 000034d2: SUB 000034d3: DUP9 000034d4: AND 000034d5: DUP5 000034d6: MSTORE 000034d7: SWAP1 000034d8: SWAP2 000034d9: MSTORE 000034da: DUP2 000034db: KECCAK256 000034dc: SSTORE 000034dd: PUSH2 0x3510 000034e0: JUMP 000034e1: JUMPDEST 000034e2: PUSH2 0x34eb 000034e5: DUP2 000034e6: DUP5 000034e7: PUSH2 0x43ed 000034ea: JUMP 000034eb: JUMPDEST 000034ec: CALLER 000034ed: PUSH1 0x00 000034ef: SWAP1 000034f0: DUP2 000034f1: MSTORE 000034f2: PUSH1 0x14 000034f4: PUSH1 0x20 000034f6: SWAP1 000034f7: DUP2 000034f8: MSTORE 000034f9: PUSH1 0x40 000034fb: DUP1 000034fc: DUP4 000034fd: KECCAK256 000034fe: PUSH1 0x01 00003500: PUSH1 0x01 00003502: PUSH1 0xa0 00003504: SHL 00003505: SUB 00003506: DUP10 00003507: AND 00003508: DUP5 00003509: MSTORE 0000350a: SWAP1 0000350b: SWAP2 0000350c: MSTORE 0000350d: SWAP1 0000350e: KECCAK256 0000350f: SSTORE 00003510: JUMPDEST 00003511: CALLER 00003512: PUSH1 0x00 00003514: DUP2 00003515: DUP2 00003516: MSTORE 00003517: PUSH1 0x14 00003519: PUSH1 0x20 0000351b: SWAP1 0000351c: DUP2 0000351d: MSTORE 0000351e: PUSH1 0x40 00003520: DUP1 00003521: DUP4 00003522: KECCAK256 00003523: PUSH1 0x01 00003525: PUSH1 0x01 00003527: PUSH1 0xa0 00003529: SHL 0000352a: SUB 0000352b: DUP10 0000352c: AND 0000352d: DUP1 0000352e: DUP6 0000352f: MSTORE 00003530: SWAP1 00003531: DUP4 00003532: MSTORE 00003533: SWAP3 00003534: DUP2 00003535: SWAP1 00003536: KECCAK256 00003537: SLOAD 00003538: DUP2 00003539: MLOAD 0000353a: SWAP1 0000353b: DUP2 0000353c: MSTORE 0000353d: SWAP1 0000353e: MLOAD 0000353f: SWAP3 00003540: SWAP4 00003541: SWAP3 00003542: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 00003563: SWAP3 00003564: SWAP2 00003565: DUP2 00003566: SWAP1 00003567: SUB 00003568: SWAP1 00003569: SWAP2 0000356a: ADD 0000356b: SWAP1 0000356c: LOG3 0000356d: POP 0000356e: PUSH1 0x01 00003570: SWAP4 00003571: SWAP3 00003572: POP 00003573: POP 00003574: POP 00003575: JUMP 00003576: JUMPDEST 00003577: PUSH1 0x00 00003579: DUP3 0000357a: PUSH1 0x01 0000357c: PUSH1 0x01 0000357e: PUSH1 0xa0 00003580: SHL 00003581: SUB 00003582: DUP2 00003583: AND 00003584: PUSH2 0x358c 00003587: JUMPI 00003588: PUSH1 0x00 0000358a: DUP1 0000358b: REVERT 0000358c: JUMPDEST 0000358d: PUSH1 0x01 0000358f: PUSH1 0x01 00003591: PUSH1 0xa0 00003593: SHL 00003594: SUB 00003595: DUP2 00003596: AND 00003597: ADDRESS 00003598: EQ 00003599: ISZERO 0000359a: PUSH2 0x35a2 0000359d: JUMPI 0000359e: PUSH1 0x00 000035a0: DUP1 000035a1: REVERT 000035a2: JUMPDEST 000035a3: PUSH1 0x0d 000035a5: SLOAD 000035a6: PUSH1 0x01 000035a8: PUSH1 0x01 000035aa: PUSH1 0xa0 000035ac: SHL 000035ad: SUB 000035ae: AND 000035af: ISZERO 000035b0: PUSH2 0x37cf 000035b3: JUMPI 000035b4: PUSH1 0x0e 000035b6: SLOAD 000035b7: PUSH1 0x01 000035b9: PUSH1 0xa0 000035bb: SHL 000035bc: SWAP1 000035bd: DIV 000035be: PUSH1 0xff 000035c0: AND 000035c1: PUSH2 0x362d 000035c4: JUMPI 000035c5: PUSH1 0x0e 000035c7: PUSH1 0x00 000035c9: SWAP1 000035ca: SLOAD 000035cb: SWAP1 000035cc: PUSH2 0x0100 000035cf: EXP 000035d0: SWAP1 000035d1: DIV 000035d2: PUSH1 0x01 000035d4: PUSH1 0x01 000035d6: PUSH1 0xa0 000035d8: SHL 000035d9: SUB 000035da: AND 000035db: PUSH1 0x01 000035dd: PUSH1 0x01 000035df: PUSH1 0xa0 000035e1: SHL 000035e2: SUB 000035e3: AND 000035e4: PUSH4 0xa2e62045 000035e9: PUSH1 0x40 000035eb: MLOAD 000035ec: DUP2 000035ed: PUSH4 0xffffffff 000035f2: AND 000035f3: PUSH1 0xe0 000035f5: SHL 000035f6: DUP2 000035f7: MSTORE 000035f8: PUSH1 0x04 000035fa: ADD 000035fb: PUSH1 0x00 000035fd: PUSH1 0x40 000035ff: MLOAD 00003600: DUP1 00003601: DUP4 00003602: SUB 00003603: DUP2 00003604: PUSH1 0x00 00003606: DUP8 00003607: DUP1 00003608: EXTCODESIZE 00003609: ISZERO 0000360a: DUP1 0000360b: ISZERO 0000360c: PUSH2 0x3614 0000360f: JUMPI 00003610: PUSH1 0x00 00003612: DUP1 00003613: REVERT 00003614: JUMPDEST 00003615: POP 00003616: GAS 00003617: CALL 00003618: ISZERO 00003619: DUP1 0000361a: ISZERO 0000361b: PUSH2 0x3628 0000361e: JUMPI 0000361f: RETURNDATASIZE 00003620: PUSH1 0x00 00003622: DUP1 00003623: RETURNDATACOPY 00003624: RETURNDATASIZE 00003625: PUSH1 0x00 00003627: REVERT 00003628: JUMPDEST 00003629: POP 0000362a: POP 0000362b: POP 0000362c: POP 0000362d: JUMPDEST 0000362e: PUSH1 0x0d 00003630: PUSH1 0x00 00003632: SWAP1 00003633: SLOAD 00003634: SWAP1 00003635: PUSH2 0x0100 00003638: EXP 00003639: SWAP1 0000363a: DIV 0000363b: PUSH1 0x01 0000363d: PUSH1 0x01 0000363f: PUSH1 0xa0 00003641: SHL 00003642: SUB 00003643: AND 00003644: PUSH1 0x01 00003646: PUSH1 0x01 00003648: PUSH1 0xa0 0000364a: SHL 0000364b: SUB 0000364c: AND 0000364d: PUSH4 0xa2e62045 00003652: PUSH1 0x40 00003654: MLOAD 00003655: DUP2 00003656: PUSH4 0xffffffff 0000365b: AND 0000365c: PUSH1 0xe0 0000365e: SHL 0000365f: DUP2 00003660: MSTORE 00003661: PUSH1 0x04 00003663: ADD 00003664: PUSH1 0x00 00003666: PUSH1 0x40 00003668: MLOAD 00003669: DUP1 0000366a: DUP4 0000366b: SUB 0000366c: DUP2 0000366d: PUSH1 0x00 0000366f: DUP8 00003670: DUP1 00003671: EXTCODESIZE 00003672: ISZERO 00003673: DUP1 00003674: ISZERO 00003675: PUSH2 0x367d 00003678: JUMPI 00003679: PUSH1 0x00 0000367b: DUP1 0000367c: REVERT 0000367d: JUMPDEST 0000367e: POP 0000367f: GAS 00003680: CALL 00003681: ISZERO 00003682: DUP1 00003683: ISZERO 00003684: PUSH2 0x3691 00003687: JUMPI 00003688: RETURNDATASIZE 00003689: PUSH1 0x00 0000368b: DUP1 0000368c: RETURNDATACOPY 0000368d: RETURNDATASIZE 0000368e: PUSH1 0x00 00003690: REVERT 00003691: JUMPDEST 00003692: POP 00003693: POP 00003694: POP 00003695: POP 00003696: PUSH1 0x00 00003698: JUMPDEST 00003699: PUSH1 0x1c 0000369b: SLOAD 0000369c: DUP2 0000369d: LT 0000369e: ISZERO 0000369f: PUSH2 0x3770 000036a2: JUMPI 000036a3: PUSH1 0x1b 000036a5: PUSH1 0x00 000036a7: PUSH1 0x1c 000036a9: DUP4 000036aa: DUP2 000036ab: SLOAD 000036ac: DUP2 000036ad: LT 000036ae: PUSH2 0x36b3 000036b1: JUMPI 000036b2: INVALID 000036b3: JUMPDEST 000036b4: PUSH1 0x00 000036b6: SWAP2 000036b7: DUP3 000036b8: MSTORE 000036b9: PUSH1 0x20 000036bb: DUP1 000036bc: DUP4 000036bd: KECCAK256 000036be: SWAP1 000036bf: SWAP2 000036c0: ADD 000036c1: SLOAD 000036c2: PUSH1 0x01 000036c4: PUSH1 0x01 000036c6: PUSH1 0xa0 000036c8: SHL 000036c9: SUB 000036ca: AND 000036cb: DUP4 000036cc: MSTORE 000036cd: DUP3 000036ce: ADD 000036cf: SWAP3 000036d0: SWAP1 000036d1: SWAP3 000036d2: MSTORE 000036d3: PUSH1 0x40 000036d5: ADD 000036d6: SWAP1 000036d7: KECCAK256 000036d8: SLOAD 000036d9: PUSH1 0xff 000036db: AND 000036dc: ISZERO 000036dd: PUSH2 0x3768 000036e0: JUMPI 000036e1: PUSH1 0x1f 000036e3: PUSH1 0x00 000036e5: PUSH1 0x1c 000036e7: DUP4 000036e8: DUP2 000036e9: SLOAD 000036ea: DUP2 000036eb: LT 000036ec: PUSH2 0x36f1 000036ef: JUMPI 000036f0: INVALID 000036f1: JUMPDEST 000036f2: PUSH1 0x00 000036f4: SWAP2 000036f5: DUP3 000036f6: MSTORE 000036f7: PUSH1 0x20 000036f9: DUP1 000036fa: DUP4 000036fb: KECCAK256 000036fc: SWAP1 000036fd: SWAP2 000036fe: ADD 000036ff: SLOAD 00003700: PUSH1 0x01 00003702: PUSH1 0x01 00003704: PUSH1 0xa0 00003706: SHL 00003707: SUB 00003708: SWAP1 00003709: DUP2 0000370a: AND 0000370b: DUP5 0000370c: MSTORE 0000370d: SWAP1 0000370e: DUP4 0000370f: ADD 00003710: SWAP4 00003711: SWAP1 00003712: SWAP4 00003713: MSTORE 00003714: PUSH1 0x40 00003716: SWAP2 00003717: DUP3 00003718: ADD 00003719: DUP2 0000371a: KECCAK256 0000371b: SLOAD 0000371c: DUP3 0000371d: MLOAD 0000371e: PUSH4 0xa2e62045 00003723: PUSH1 0xe0 00003725: SHL 00003726: DUP2 00003727: MSTORE 00003728: SWAP3 00003729: MLOAD 0000372a: SWAP4 0000372b: AND 0000372c: SWAP3 0000372d: PUSH4 0xa2e62045 00003732: SWAP3 00003733: PUSH1 0x04 00003735: DUP1 00003736: DUP3 00003737: ADD 00003738: SWAP4 00003739: SWAP3 0000373a: SWAP2 0000373b: DUP3 0000373c: SWAP1 0000373d: SUB 0000373e: ADD 0000373f: DUP2 00003740: DUP4 00003741: DUP8 00003742: DUP1 00003743: EXTCODESIZE 00003744: ISZERO 00003745: DUP1 00003746: ISZERO 00003747: PUSH2 0x374f 0000374a: JUMPI 0000374b: PUSH1 0x00 0000374d: DUP1 0000374e: REVERT 0000374f: JUMPDEST 00003750: POP 00003751: GAS 00003752: CALL 00003753: ISZERO 00003754: DUP1 00003755: ISZERO 00003756: PUSH2 0x3763 00003759: JUMPI 0000375a: RETURNDATASIZE 0000375b: PUSH1 0x00 0000375d: DUP1 0000375e: RETURNDATACOPY 0000375f: RETURNDATASIZE 00003760: PUSH1 0x00 00003762: REVERT 00003763: JUMPDEST 00003764: POP 00003765: POP 00003766: POP 00003767: POP 00003768: JUMPDEST 00003769: PUSH1 0x01 0000376b: ADD 0000376c: PUSH2 0x3698 0000376f: JUMP 00003770: JUMPDEST 00003771: POP 00003772: PUSH1 0x08 00003774: SLOAD 00003775: PUSH1 0x07 00003777: SLOAD 00003778: TIMESTAMP 00003779: SUB 0000377a: LT 0000377b: PUSH2 0x37cf 0000377e: JUMPI 0000377f: PUSH4 0x3b9aca00 00003784: PUSH2 0x378b 00003787: PUSH2 0x2e89 0000378a: JUMP 0000378b: JUMPDEST 0000378c: GT 0000378d: ISZERO 0000378e: PUSH2 0x37b0 00003791: JUMPI 00003792: PUSH2 0x37ab 00003795: PUSH2 0x116b 00003798: PUSH1 0x19 0000379a: SLOAD 0000379b: PUSH1 0x1a 0000379d: SLOAD 0000379e: PUSH2 0x43ed 000037a1: SWAP1 000037a2: SWAP2 000037a3: SWAP1 000037a4: PUSH4 0xffffffff 000037a9: AND 000037aa: JUMP 000037ab: JUMPDEST 000037ac: PUSH2 0x37ca 000037af: JUMP 000037b0: JUMPDEST 000037b1: PUSH2 0x37ca 000037b4: PUSH2 0x116b 000037b7: PUSH1 0x19 000037b9: SLOAD 000037ba: PUSH1 0x1a 000037bc: SLOAD 000037bd: PUSH2 0x4393 000037c0: SWAP1 000037c1: SWAP2 000037c2: SWAP1 000037c3: PUSH4 0xffffffff 000037c8: AND 000037c9: JUMP 000037ca: JUMPDEST 000037cb: TIMESTAMP 000037cc: PUSH1 0x07 000037ce: SSTORE 000037cf: JUMPDEST 000037d0: CALLER 000037d1: PUSH1 0x00 000037d3: SWAP1 000037d4: DUP2 000037d5: MSTORE 000037d6: PUSH1 0x12 000037d8: PUSH1 0x20 000037da: MSTORE 000037db: PUSH1 0x40 000037dd: SWAP1 000037de: KECCAK256 000037df: SLOAD 000037e0: PUSH2 0x37e9 000037e3: SWAP1 000037e4: DUP5 000037e5: PUSH2 0x43ed 000037e8: JUMP 000037e9: JUMPDEST 000037ea: CALLER 000037eb: PUSH1 0x00 000037ed: SWAP1 000037ee: DUP2 000037ef: MSTORE 000037f0: PUSH1 0x12 000037f2: PUSH1 0x20 000037f4: MSTORE 000037f5: PUSH1 0x40 000037f7: DUP1 000037f8: DUP3 000037f9: KECCAK256 000037fa: SWAP3 000037fb: SWAP1 000037fc: SWAP3 000037fd: SSTORE 000037fe: PUSH1 0x01 00003800: PUSH1 0x01 00003802: PUSH1 0xa0 00003804: SHL 00003805: SUB 00003806: DUP7 00003807: AND 00003808: DUP2 00003809: MSTORE 0000380a: KECCAK256 0000380b: SLOAD 0000380c: PUSH2 0x3815 0000380f: SWAP1 00003810: DUP5 00003811: PUSH2 0x4393 00003814: JUMP 00003815: JUMPDEST 00003816: PUSH1 0x01 00003818: PUSH1 0x01 0000381a: PUSH1 0xa0 0000381c: SHL 0000381d: SUB 0000381e: DUP6 0000381f: AND 00003820: PUSH1 0x00 00003822: DUP2 00003823: DUP2 00003824: MSTORE 00003825: PUSH1 0x12 00003827: PUSH1 0x20 00003829: SWAP1 0000382a: DUP2 0000382b: MSTORE 0000382c: PUSH1 0x40 0000382e: SWAP2 0000382f: DUP3 00003830: SWAP1 00003831: KECCAK256 00003832: SWAP4 00003833: SWAP1 00003834: SWAP4 00003835: SSTORE 00003836: DUP1 00003837: MLOAD 00003838: DUP7 00003839: DUP2 0000383a: MSTORE 0000383b: SWAP1 0000383c: MLOAD 0000383d: SWAP2 0000383e: SWAP3 0000383f: CALLER 00003840: SWAP3 00003841: PUSH1 0x00 00003843: DUP1 00003844: MLOAD 00003845: PUSH1 0x20 00003847: PUSH2 0x4a11 0000384a: DUP4 0000384b: CODECOPY 0000384c: DUP2 0000384d: MLOAD 0000384e: SWAP2 0000384f: MSTORE 00003850: SWAP3 00003851: DUP2 00003852: SWAP1 00003853: SUB 00003854: SWAP1 00003855: SWAP2 00003856: ADD 00003857: SWAP1 00003858: LOG3 00003859: POP 0000385a: PUSH1 0x01 0000385c: SWAP4 0000385d: SWAP3 0000385e: POP 0000385f: POP 00003860: POP 00003861: JUMP 00003862: JUMPDEST 00003863: PUSH1 0x23 00003865: SLOAD 00003866: PUSH1 0x01 00003868: PUSH1 0x01 0000386a: PUSH1 0xa0 0000386c: SHL 0000386d: SUB 0000386e: AND 0000386f: CALLER 00003870: EQ 00003871: PUSH2 0x38af 00003874: JUMPI 00003875: PUSH1 0x40 00003877: DUP1 00003878: MLOAD 00003879: PUSH3 0x461bcd 0000387d: PUSH1 0xe5 0000387f: SHL 00003880: DUP2 00003881: MSTORE 00003882: PUSH1 0x20 00003884: PUSH1 0x04 00003886: DUP3 00003887: ADD 00003888: MSTORE 00003889: PUSH1 0x1d 0000388b: PUSH1 0x24 0000388d: DUP3 0000388e: ADD 0000388f: MSTORE 00003890: PUSH1 0x00 00003892: DUP1 00003893: MLOAD 00003894: PUSH1 0x20 00003896: PUSH2 0x4ade 00003899: DUP4 0000389a: CODECOPY 0000389b: DUP2 0000389c: MLOAD 0000389d: SWAP2 0000389e: MSTORE 0000389f: PUSH1 0x44 000038a1: DUP3 000038a2: ADD 000038a3: MSTORE 000038a4: SWAP1 000038a5: MLOAD 000038a6: SWAP1 000038a7: DUP2 000038a8: SWAP1 000038a9: SUB 000038aa: PUSH1 0x64 000038ac: ADD 000038ad: SWAP1 000038ae: REVERT 000038af: JUMPDEST 000038b0: PUSH1 0x01 000038b2: PUSH1 0x01 000038b4: PUSH1 0xa0 000038b6: SHL 000038b7: SUB 000038b8: DUP4 000038b9: AND 000038ba: PUSH1 0x00 000038bc: SWAP1 000038bd: DUP2 000038be: MSTORE 000038bf: PUSH1 0x1e 000038c1: PUSH1 0x20 000038c3: MSTORE 000038c4: PUSH1 0x40 000038c6: SWAP1 000038c7: KECCAK256 000038c8: SLOAD 000038c9: PUSH1 0xff 000038cb: AND 000038cc: PUSH2 0x391b 000038cf: JUMPI 000038d0: PUSH1 0x1c 000038d2: DUP1 000038d3: SLOAD 000038d4: PUSH1 0x01 000038d6: DUP2 000038d7: ADD 000038d8: DUP3 000038d9: SSTORE 000038da: PUSH1 0x00 000038dc: SWAP2 000038dd: SWAP1 000038de: SWAP2 000038df: MSTORE 000038e0: PUSH32 0x0e4562a10381dec21b205ed72637e6b1b523bdd0e4d4d50af5cd23dd4500a211 00003901: ADD 00003902: DUP1 00003903: SLOAD 00003904: PUSH1 0x01 00003906: PUSH1 0x01 00003908: PUSH1 0xa0 0000390a: SHL 0000390b: SUB 0000390c: NOT 0000390d: AND 0000390e: PUSH1 0x01 00003910: PUSH1 0x01 00003912: PUSH1 0xa0 00003914: SHL 00003915: SUB 00003916: DUP6 00003917: AND 00003918: OR 00003919: SWAP1 0000391a: SSTORE 0000391b: JUMPDEST 0000391c: PUSH1 0x01 0000391e: PUSH1 0x01 00003920: PUSH1 0xa0 00003922: SHL 00003923: SUB 00003924: SWAP3 00003925: DUP4 00003926: AND 00003927: PUSH1 0x00 00003929: SWAP1 0000392a: DUP2 0000392b: MSTORE 0000392c: PUSH1 0x1e 0000392e: PUSH1 0x20 00003930: SWAP1 00003931: DUP2 00003932: MSTORE 00003933: PUSH1 0x40 00003935: DUP1 00003936: DUP4 00003937: KECCAK256 00003938: DUP1 00003939: SLOAD 0000393a: PUSH1 0x01 0000393c: PUSH1 0xff 0000393e: NOT 0000393f: SWAP2 00003940: DUP3 00003941: AND 00003942: DUP2 00003943: OR 00003944: SWAP1 00003945: SWAP3 00003946: SSTORE 00003947: PUSH1 0x1b 00003949: DUP5 0000394a: MSTORE 0000394b: DUP3 0000394c: DUP6 0000394d: KECCAK256 0000394e: DUP1 0000394f: SLOAD 00003950: SWAP1 00003951: SWAP2 00003952: AND 00003953: SWAP1 00003954: SWAP2 00003955: OR 00003956: SWAP1 00003957: SSTORE 00003958: PUSH1 0x1d 0000395a: DUP3 0000395b: MSTORE 0000395c: DUP1 0000395d: DUP4 0000395e: KECCAK256 0000395f: SWAP5 00003960: SWAP1 00003961: SWAP5 00003962: SSTORE 00003963: PUSH1 0x1f 00003965: SWAP1 00003966: MSTORE 00003967: SWAP2 00003968: SWAP1 00003969: SWAP2 0000396a: KECCAK256 0000396b: DUP1 0000396c: SLOAD 0000396d: PUSH1 0x01 0000396f: PUSH1 0x01 00003971: PUSH1 0xa0 00003973: SHL 00003974: SUB 00003975: NOT 00003976: AND 00003977: SWAP2 00003978: SWAP1 00003979: SWAP3 0000397a: AND 0000397b: OR 0000397c: SWAP1 0000397d: SSTORE 0000397e: JUMP 0000397f: JUMPDEST 00003980: PUSH1 0x00 00003982: DUP1 00003983: DUP4 00003984: PUSH2 0x39cf 00003987: JUMPI 00003988: PUSH1 0x40 0000398a: DUP1 0000398b: MLOAD 0000398c: PUSH3 0x461bcd 00003990: PUSH1 0xe5 00003992: SHL 00003993: DUP2 00003994: MSTORE 00003995: PUSH1 0x20 00003997: PUSH1 0x04 00003999: DUP3 0000399a: ADD 0000399b: MSTORE 0000399c: PUSH1 0x18 0000399e: PUSH1 0x24 000039a0: DUP3 000039a1: ADD 000039a2: MSTORE 000039a3: PUSH24 0x1b5d5cdd081d5cd9481d985b1a59081bdb99505b5bdd5b9d 000039bc: PUSH1 0x42 000039be: SHL 000039bf: PUSH1 0x44 000039c1: DUP3 000039c2: ADD 000039c3: MSTORE 000039c4: SWAP1 000039c5: MLOAD 000039c6: SWAP1 000039c7: DUP2 000039c8: SWAP1 000039c9: SUB 000039ca: PUSH1 0x64 000039cc: ADD 000039cd: SWAP1 000039ce: REVERT 000039cf: JUMPDEST 000039d0: PUSH1 0x01 000039d2: PUSH1 0x01 000039d4: PUSH1 0xa0 000039d6: SHL 000039d7: SUB 000039d8: DUP4 000039d9: AND 000039da: PUSH1 0x00 000039dc: SWAP1 000039dd: DUP2 000039de: MSTORE 000039df: PUSH1 0x1b 000039e1: PUSH1 0x20 000039e3: MSTORE 000039e4: PUSH1 0x40 000039e6: SWAP1 000039e7: KECCAK256 000039e8: SLOAD 000039e9: PUSH1 0xff 000039eb: AND 000039ec: PUSH2 0x3a3c 000039ef: JUMPI 000039f0: PUSH1 0x40 000039f2: DUP1 000039f3: MLOAD 000039f4: PUSH3 0x461bcd 000039f8: PUSH1 0xe5 000039fa: SHL 000039fb: DUP2 000039fc: MSTORE 000039fd: PUSH1 0x20 000039ff: PUSH1 0x04 00003a01: DUP3 00003a02: ADD 00003a03: MSTORE 00003a04: PUSH1 0x1e 00003a06: PUSH1 0x24 00003a08: DUP3 00003a09: ADD 00003a0a: MSTORE 00003a0b: PUSH32 0x6d75737420626520616e20616363657074656420636f6c6c61746572616c0000 00003a2c: PUSH1 0x44 00003a2e: DUP3 00003a2f: ADD 00003a30: MSTORE 00003a31: SWAP1 00003a32: MLOAD 00003a33: SWAP1 00003a34: DUP2 00003a35: SWAP1 00003a36: SUB 00003a37: PUSH1 0x64 00003a39: ADD 00003a3a: SWAP1 00003a3b: REVERT 00003a3c: JUMPDEST 00003a3d: PUSH1 0x01 00003a3f: PUSH1 0x01 00003a41: PUSH1 0xa0 00003a43: SHL 00003a44: SUB 00003a45: DUP4 00003a46: AND 00003a47: PUSH1 0x00 00003a49: SWAP1 00003a4a: DUP2 00003a4b: MSTORE 00003a4c: PUSH1 0x1d 00003a4e: PUSH1 0x20 00003a50: MSTORE 00003a51: PUSH1 0x40 00003a53: DUP2 00003a54: KECCAK256 00003a55: SLOAD 00003a56: PUSH1 0x1a 00003a58: SLOAD 00003a59: PUSH2 0x3a7e 00003a5c: SWAP2 00003a5d: PUSH4 0x3b9aca00 00003a62: SWAP2 00003a63: PUSH2 0x1c05 00003a66: SWAP2 00003a67: PUSH1 0x0a 00003a69: EXP 00003a6a: SWAP1 00003a6b: PUSH2 0x1c12 00003a6e: SWAP1 00003a6f: PUSH5 0x174876e800 00003a75: SWAP1 00003a76: DUP5 00003a77: SWAP1 00003a78: DUP13 00003a79: SWAP1 00003a7a: PUSH2 0x4487 00003a7d: JUMP 00003a7e: JUMPDEST 00003a7f: SWAP1 00003a80: POP 00003a81: PUSH2 0x3a8c 00003a84: PUSH2 0x1c26 00003a87: DUP6 00003a88: PUSH2 0x3dd7 00003a8b: JUMP 00003a8c: JUMPDEST 00003a8d: PUSH1 0x0d 00003a8f: SLOAD 00003a90: SWAP1 00003a91: SWAP2 00003a92: POP 00003a93: PUSH1 0x01 00003a95: PUSH1 0x01 00003a97: PUSH1 0xa0 00003a99: SHL 00003a9a: SUB 00003a9b: AND 00003a9c: PUSH2 0x3aaa 00003a9f: JUMPI 00003aa0: SWAP2 00003aa1: POP 00003aa2: PUSH1 0x00 00003aa4: SWAP1 00003aa5: POP 00003aa6: PUSH2 0x1c3c 00003aa9: JUMP 00003aaa: JUMPDEST 00003aab: PUSH1 0x00 00003aad: PUSH2 0x3ab4 00003ab0: PUSH2 0x25f4 00003ab3: JUMP 00003ab4: JUMPDEST 00003ab5: SWAP1 00003ab6: POP 00003ab7: PUSH1 0x00 00003ab9: PUSH2 0x3ae5 00003abc: PUSH5 0x174876e800 00003ac2: PUSH2 0x1c05 00003ac5: PUSH2 0x3ade 00003ac8: PUSH1 0x1a 00003aca: SLOAD 00003acb: PUSH5 0x174876e800 00003ad1: PUSH2 0x43ed 00003ad4: SWAP1 00003ad5: SWAP2 00003ad6: SWAP1 00003ad7: PUSH4 0xffffffff 00003adc: AND 00003add: JUMP 00003ade: JUMPDEST 00003adf: DUP11 00003ae0: SWAP1 00003ae1: PUSH2 0x4487 00003ae4: JUMP 00003ae5: JUMPDEST 00003ae6: SWAP1 00003ae7: POP 00003ae8: PUSH1 0x00 00003aea: PUSH2 0x3b15 00003aed: PUSH1 0x09 00003aef: PUSH1 0x0a 00003af1: EXP 00003af2: PUSH2 0x1c05 00003af5: PUSH1 0x0a 00003af7: SLOAD 00003af8: PUSH1 0x0a 00003afa: EXP 00003afb: PUSH2 0x1c12 00003afe: DUP8 00003aff: PUSH2 0x1c05 00003b02: PUSH4 0x3b9aca00 00003b07: DUP10 00003b08: PUSH2 0x4487 00003b0b: SWAP1 00003b0c: SWAP2 00003b0d: SWAP1 00003b0e: PUSH4 0xffffffff 00003b13: AND 00003b14: JUMP 00003b15: JUMPDEST 00003b16: SWAP4 00003b17: SWAP9 00003b18: SWAP4 00003b19: SWAP8 00003b1a: POP 00003b1b: SWAP3 00003b1c: SWAP6 00003b1d: POP 00003b1e: POP 00003b1f: POP 00003b20: POP 00003b21: POP 00003b22: POP 00003b23: JUMP 00003b24: JUMPDEST 00003b25: PUSH1 0x1c 00003b27: DUP2 00003b28: DUP2 00003b29: SLOAD 00003b2a: DUP2 00003b2b: LT 00003b2c: PUSH2 0x3b31 00003b2f: JUMPI 00003b30: INVALID 00003b31: JUMPDEST 00003b32: PUSH1 0x00 00003b34: SWAP2 00003b35: DUP3 00003b36: MSTORE 00003b37: PUSH1 0x20 00003b39: SWAP1 00003b3a: SWAP2 00003b3b: KECCAK256 00003b3c: ADD 00003b3d: SLOAD 00003b3e: PUSH1 0x01 00003b40: PUSH1 0x01 00003b42: PUSH1 0xa0 00003b44: SHL 00003b45: SUB 00003b46: AND 00003b47: SWAP1 00003b48: POP 00003b49: DUP2 00003b4a: JUMP 00003b4b: JUMPDEST 00003b4c: PUSH1 0x23 00003b4e: SLOAD 00003b4f: PUSH1 0x01 00003b51: PUSH1 0x01 00003b53: PUSH1 0xa0 00003b55: SHL 00003b56: SUB 00003b57: AND 00003b58: CALLER 00003b59: EQ 00003b5a: PUSH2 0x3b98 00003b5d: JUMPI 00003b5e: PUSH1 0x40 00003b60: DUP1 00003b61: MLOAD 00003b62: PUSH3 0x461bcd 00003b66: PUSH1 0xe5 00003b68: SHL 00003b69: DUP2 00003b6a: MSTORE 00003b6b: PUSH1 0x20 00003b6d: PUSH1 0x04 00003b6f: DUP3 00003b70: ADD 00003b71: MSTORE 00003b72: PUSH1 0x1d 00003b74: PUSH1 0x24 00003b76: DUP3 00003b77: ADD 00003b78: MSTORE 00003b79: PUSH1 0x00 00003b7b: DUP1 00003b7c: MLOAD 00003b7d: PUSH1 0x20 00003b7f: PUSH2 0x4ade 00003b82: DUP4 00003b83: CODECOPY 00003b84: DUP2 00003b85: MLOAD 00003b86: SWAP2 00003b87: MSTORE 00003b88: PUSH1 0x44 00003b8a: DUP3 00003b8b: ADD 00003b8c: MSTORE 00003b8d: SWAP1 00003b8e: MLOAD 00003b8f: SWAP1 00003b90: DUP2 00003b91: SWAP1 00003b92: SUB 00003b93: PUSH1 0x64 00003b95: ADD 00003b96: SWAP1 00003b97: REVERT 00003b98: JUMPDEST 00003b99: PUSH1 0x01 00003b9b: PUSH1 0x01 00003b9d: PUSH1 0xa0 00003b9f: SHL 00003ba0: SUB 00003ba1: AND 00003ba2: PUSH1 0x00 00003ba4: SWAP1 00003ba5: DUP2 00003ba6: MSTORE 00003ba7: PUSH1 0x1b 00003ba9: PUSH1 0x20 00003bab: MSTORE 00003bac: PUSH1 0x40 00003bae: SWAP1 00003baf: KECCAK256 00003bb0: DUP1 00003bb1: SLOAD 00003bb2: PUSH1 0xff 00003bb4: NOT 00003bb5: AND 00003bb6: SWAP1 00003bb7: SSTORE 00003bb8: JUMP 00003bb9: JUMPDEST 00003bba: PUSH1 0x17 00003bbc: SLOAD 00003bbd: PUSH1 0x01 00003bbf: PUSH1 0x01 00003bc1: PUSH1 0xa0 00003bc3: SHL 00003bc4: SUB 00003bc5: AND 00003bc6: CALLER 00003bc7: EQ 00003bc8: PUSH2 0x3c18 00003bcb: JUMPI 00003bcc: PUSH1 0x40 00003bce: DUP1 00003bcf: MLOAD 00003bd0: PUSH3 0x461bcd 00003bd4: PUSH1 0xe5 00003bd6: SHL 00003bd7: DUP2 00003bd8: MSTORE 00003bd9: PUSH1 0x20 00003bdb: PUSH1 0x04 00003bdd: DUP3 00003bde: ADD 00003bdf: MSTORE 00003be0: PUSH1 0x1c 00003be2: PUSH1 0x24 00003be4: DUP3 00003be5: ADD 00003be6: MSTORE 00003be7: PUSH32 0x4143434553533a206f6e6c79204963686920676f7665726e616e636500000000 00003c08: PUSH1 0x44 00003c0a: DUP3 00003c0b: ADD 00003c0c: MSTORE 00003c0d: SWAP1 00003c0e: MLOAD 00003c0f: SWAP1 00003c10: DUP2 00003c11: SWAP1 00003c12: SUB 00003c13: PUSH1 0x64 00003c15: ADD 00003c16: SWAP1 00003c17: REVERT 00003c18: JUMPDEST 00003c19: PUSH1 0x21 00003c1b: DUP2 00003c1c: SWAP1 00003c1d: SSTORE 00003c1e: PUSH1 0x40 00003c20: DUP1 00003c21: MLOAD 00003c22: DUP3 00003c23: DUP2 00003c24: MSTORE 00003c25: SWAP1 00003c26: MLOAD 00003c27: PUSH32 0xa01cb43de193eb3a80b373fb949c09d0eedb01f39f3b6063ace0cb6b067cc123 00003c48: SWAP2 00003c49: DUP2 00003c4a: SWAP1 00003c4b: SUB 00003c4c: PUSH1 0x20 00003c4e: ADD 00003c4f: SWAP1 00003c50: LOG1 00003c51: POP 00003c52: JUMP 00003c53: JUMPDEST 00003c54: PUSH1 0x16 00003c56: SLOAD 00003c57: PUSH1 0x01 00003c59: PUSH1 0x01 00003c5b: PUSH1 0xa0 00003c5d: SHL 00003c5e: SUB 00003c5f: AND 00003c60: DUP2 00003c61: JUMP 00003c62: JUMPDEST 00003c63: PUSH1 0x00 00003c65: DUP1 00003c66: DUP1 00003c67: JUMPDEST 00003c68: PUSH1 0x1c 00003c6a: SLOAD 00003c6b: DUP2 00003c6c: LT 00003c6d: ISZERO 00003c6e: PUSH2 0x3dd1 00003c71: JUMPI 00003c72: PUSH1 0x00 00003c74: PUSH1 0x01 00003c76: PUSH1 0x01 00003c78: PUSH1 0xa0 00003c7a: SHL 00003c7b: SUB 00003c7c: AND 00003c7d: PUSH1 0x1c 00003c7f: DUP3 00003c80: DUP2 00003c81: SLOAD 00003c82: DUP2 00003c83: LT 00003c84: PUSH2 0x3c89 00003c87: JUMPI 00003c88: INVALID 00003c89: JUMPDEST 00003c8a: PUSH1 0x00 00003c8c: SWAP2 00003c8d: DUP3 00003c8e: MSTORE 00003c8f: PUSH1 0x20 00003c91: SWAP1 00003c92: SWAP2 00003c93: KECCAK256 00003c94: ADD 00003c95: SLOAD 00003c96: PUSH1 0x01 00003c98: PUSH1 0x01 00003c9a: PUSH1 0xa0 00003c9c: SHL 00003c9d: SUB 00003c9e: AND 00003c9f: EQ 00003ca0: PUSH2 0x3dc9 00003ca3: JUMPI 00003ca4: PUSH2 0x3dc4 00003ca7: PUSH4 0x3b9aca00 00003cac: PUSH2 0x1c05 00003caf: PUSH2 0x3cd8 00003cb2: PUSH1 0x1c 00003cb4: DUP6 00003cb5: DUP2 00003cb6: SLOAD 00003cb7: DUP2 00003cb8: LT 00003cb9: PUSH2 0x3cbe 00003cbc: JUMPI 00003cbd: INVALID 00003cbe: JUMPDEST 00003cbf: PUSH1 0x00 00003cc1: SWAP2 00003cc2: DUP3 00003cc3: MSTORE 00003cc4: PUSH1 0x20 00003cc6: SWAP1 00003cc7: SWAP2 00003cc8: KECCAK256 00003cc9: ADD 00003cca: SLOAD 00003ccb: PUSH1 0x01 00003ccd: PUSH1 0x01 00003ccf: PUSH1 0xa0 00003cd1: SHL 00003cd2: SUB 00003cd3: AND 00003cd4: PUSH2 0x3dd7 00003cd7: JUMP 00003cd8: JUMPDEST 00003cd9: PUSH2 0x1c12 00003cdc: PUSH1 0x1d 00003cde: PUSH1 0x00 00003ce0: PUSH1 0x1c 00003ce2: DUP9 00003ce3: DUP2 00003ce4: SLOAD 00003ce5: DUP2 00003ce6: LT 00003ce7: PUSH2 0x3cec 00003cea: JUMPI 00003ceb: INVALID 00003cec: JUMPDEST 00003ced: SWAP1 00003cee: PUSH1 0x00 00003cf0: MSTORE 00003cf1: PUSH1 0x20 00003cf3: PUSH1 0x00 00003cf5: KECCAK256 00003cf6: ADD 00003cf7: PUSH1 0x00 00003cf9: SWAP1 00003cfa: SLOAD 00003cfb: SWAP1 00003cfc: PUSH2 0x0100 00003cff: EXP 00003d00: SWAP1 00003d01: DIV 00003d02: PUSH1 0x01 00003d04: PUSH1 0x01 00003d06: PUSH1 0xa0 00003d08: SHL 00003d09: SUB 00003d0a: AND 00003d0b: PUSH1 0x01 00003d0d: PUSH1 0x01 00003d0f: PUSH1 0xa0 00003d11: SHL 00003d12: SUB 00003d13: AND 00003d14: PUSH1 0x01 00003d16: PUSH1 0x01 00003d18: PUSH1 0xa0 00003d1a: SHL 00003d1b: SUB 00003d1c: AND 00003d1d: DUP2 00003d1e: MSTORE 00003d1f: PUSH1 0x20 00003d21: ADD 00003d22: SWAP1 00003d23: DUP2 00003d24: MSTORE 00003d25: PUSH1 0x20 00003d27: ADD 00003d28: PUSH1 0x00 00003d2a: KECCAK256 00003d2b: SLOAD 00003d2c: PUSH1 0x0a 00003d2e: EXP 00003d2f: PUSH2 0x1c05 00003d32: PUSH4 0x3b9aca00 00003d37: PUSH1 0x1c 00003d39: DUP10 00003d3a: DUP2 00003d3b: SLOAD 00003d3c: DUP2 00003d3d: LT 00003d3e: PUSH2 0x3d43 00003d41: JUMPI 00003d42: INVALID 00003d43: JUMPDEST 00003d44: PUSH1 0x00 00003d46: SWAP2 00003d47: DUP3 00003d48: MSTORE 00003d49: PUSH1 0x20 00003d4b: SWAP2 00003d4c: DUP3 00003d4d: SWAP1 00003d4e: KECCAK256 00003d4f: ADD 00003d50: SLOAD 00003d51: PUSH1 0x40 00003d53: DUP1 00003d54: MLOAD 00003d55: PUSH4 0x70a08231 00003d5a: PUSH1 0xe0 00003d5c: SHL 00003d5d: DUP2 00003d5e: MSTORE 00003d5f: ADDRESS 00003d60: PUSH1 0x04 00003d62: DUP3 00003d63: ADD 00003d64: MSTORE 00003d65: SWAP1 00003d66: MLOAD 00003d67: PUSH1 0x01 00003d69: PUSH1 0x01 00003d6b: PUSH1 0xa0 00003d6d: SHL 00003d6e: SUB 00003d6f: SWAP1 00003d70: SWAP3 00003d71: AND 00003d72: SWAP3 00003d73: PUSH4 0x70a08231 00003d78: SWAP3 00003d79: PUSH1 0x24 00003d7b: DUP1 00003d7c: DUP5 00003d7d: ADD 00003d7e: SWAP4 00003d7f: DUP3 00003d80: SWAP1 00003d81: SUB 00003d82: ADD 00003d83: DUP2 00003d84: DUP7 00003d85: DUP1 00003d86: EXTCODESIZE 00003d87: ISZERO 00003d88: DUP1 00003d89: ISZERO 00003d8a: PUSH2 0x3d92 00003d8d: JUMPI 00003d8e: PUSH1 0x00 00003d90: DUP1 00003d91: REVERT 00003d92: JUMPDEST 00003d93: POP 00003d94: GAS 00003d95: STATICCALL 00003d96: ISZERO 00003d97: DUP1 00003d98: ISZERO 00003d99: PUSH2 0x3da6 00003d9c: JUMPI 00003d9d: RETURNDATASIZE 00003d9e: PUSH1 0x00 00003da0: DUP1 00003da1: RETURNDATACOPY 00003da2: RETURNDATASIZE 00003da3: PUSH1 0x00 00003da5: REVERT 00003da6: JUMPDEST 00003da7: POP 00003da8: POP 00003da9: POP 00003daa: POP 00003dab: PUSH1 0x40 00003dad: MLOAD 00003dae: RETURNDATASIZE 00003daf: PUSH1 0x20 00003db1: DUP2 00003db2: LT 00003db3: ISZERO 00003db4: PUSH2 0x3dbc 00003db7: JUMPI 00003db8: PUSH1 0x00 00003dba: DUP1 00003dbb: REVERT 00003dbc: JUMPDEST 00003dbd: POP 00003dbe: MLOAD 00003dbf: SWAP1 00003dc0: PUSH2 0x4487 00003dc3: JUMP 00003dc4: JUMPDEST 00003dc5: DUP3 00003dc6: ADD 00003dc7: SWAP2 00003dc8: POP 00003dc9: JUMPDEST 00003dca: PUSH1 0x01 00003dcc: ADD 00003dcd: PUSH2 0x3c67 00003dd0: JUMP 00003dd1: JUMPDEST 00003dd2: POP 00003dd3: SWAP1 00003dd4: POP 00003dd5: SWAP1 00003dd6: JUMP 00003dd7: JUMPDEST 00003dd8: PUSH1 0x01 00003dda: PUSH1 0x01 00003ddc: PUSH1 0xa0 00003dde: SHL 00003ddf: SUB 00003de0: DUP2 00003de1: AND 00003de2: PUSH1 0x00 00003de4: SWAP1 00003de5: DUP2 00003de6: MSTORE 00003de7: PUSH1 0x1e 00003de9: PUSH1 0x20 00003deb: MSTORE 00003dec: PUSH1 0x40 00003dee: DUP2 00003def: KECCAK256 00003df0: SLOAD 00003df1: PUSH1 0xff 00003df3: AND 00003df4: PUSH2 0x3e44 00003df7: JUMPI 00003df8: PUSH1 0x40 00003dfa: DUP1 00003dfb: MLOAD 00003dfc: PUSH3 0x461bcd 00003e00: PUSH1 0xe5 00003e02: SHL 00003e03: DUP2 00003e04: MSTORE 00003e05: PUSH1 0x20 00003e07: PUSH1 0x04 00003e09: DUP3 00003e0a: ADD 00003e0b: MSTORE 00003e0c: PUSH1 0x1e 00003e0e: PUSH1 0x24 00003e10: DUP3 00003e11: ADD 00003e12: MSTORE 00003e13: PUSH32 0x6d75737420626520616e206578697374696e6720636f6c6c61746572616c0000 00003e34: PUSH1 0x44 00003e36: DUP3 00003e37: ADD 00003e38: MSTORE 00003e39: SWAP1 00003e3a: MLOAD 00003e3b: SWAP1 00003e3c: DUP2 00003e3d: SWAP1 00003e3e: SUB 00003e3f: PUSH1 0x64 00003e41: ADD 00003e42: SWAP1 00003e43: REVERT 00003e44: JUMPDEST 00003e45: PUSH1 0x16 00003e47: SLOAD 00003e48: PUSH1 0x15 00003e4a: SLOAD 00003e4b: PUSH1 0x40 00003e4d: DUP1 00003e4e: MLOAD 00003e4f: PUSH4 0x3ddac953 00003e54: PUSH1 0xe0 00003e56: SHL 00003e57: DUP2 00003e58: MSTORE 00003e59: PUSH1 0x01 00003e5b: PUSH1 0x01 00003e5d: PUSH1 0xa0 00003e5f: SHL 00003e60: SUB 00003e61: SWAP3 00003e62: DUP4 00003e63: AND 00003e64: PUSH1 0x04 00003e66: DUP3 00003e67: ADD 00003e68: MSTORE 00003e69: PUSH8 0x0de0b6b3a7640000 00003e72: PUSH1 0x24 00003e74: DUP3 00003e75: ADD 00003e76: MSTORE 00003e77: SWAP1 00003e78: MLOAD 00003e79: PUSH1 0x00 00003e7b: SWAP4 00003e7c: SWAP3 00003e7d: SWAP1 00003e7e: SWAP3 00003e7f: AND 00003e80: SWAP2 00003e81: PUSH4 0x3ddac953 00003e86: SWAP2 00003e87: PUSH1 0x44 00003e89: DUP1 00003e8a: DUP3 00003e8b: ADD 00003e8c: SWAP3 00003e8d: PUSH1 0x20 00003e8f: SWAP3 00003e90: SWAP1 00003e91: SWAP2 00003e92: SWAP1 00003e93: DUP3 00003e94: SWAP1 00003e95: SUB 00003e96: ADD 00003e97: DUP2 00003e98: DUP7 00003e99: DUP1 00003e9a: EXTCODESIZE 00003e9b: ISZERO 00003e9c: DUP1 00003e9d: ISZERO 00003e9e: PUSH2 0x3ea6 00003ea1: JUMPI 00003ea2: PUSH1 0x00 00003ea4: DUP1 00003ea5: REVERT 00003ea6: JUMPDEST 00003ea7: POP 00003ea8: GAS 00003ea9: STATICCALL 00003eaa: ISZERO 00003eab: DUP1 00003eac: ISZERO 00003ead: PUSH2 0x3eba 00003eb0: JUMPI 00003eb1: RETURNDATASIZE 00003eb2: PUSH1 0x00 00003eb4: DUP1 00003eb5: RETURNDATACOPY 00003eb6: RETURNDATASIZE 00003eb7: PUSH1 0x00 00003eb9: REVERT 00003eba: JUMPDEST 00003ebb: POP 00003ebc: POP 00003ebd: POP 00003ebe: POP 00003ebf: PUSH1 0x40 00003ec1: MLOAD 00003ec2: RETURNDATASIZE 00003ec3: PUSH1 0x20 00003ec5: DUP2 00003ec6: LT 00003ec7: ISZERO 00003ec8: PUSH2 0x3ed0 00003ecb: JUMPI 00003ecc: PUSH1 0x00 00003ece: DUP1 00003ecf: REVERT 00003ed0: JUMPDEST 00003ed1: POP 00003ed2: MLOAD 00003ed3: PUSH1 0x01 00003ed5: PUSH1 0x01 00003ed7: PUSH1 0xa0 00003ed9: SHL 00003eda: SUB 00003edb: DUP1 00003edc: DUP6 00003edd: AND 00003ede: PUSH1 0x00 00003ee0: SWAP1 00003ee1: DUP2 00003ee2: MSTORE 00003ee3: PUSH1 0x1d 00003ee5: PUSH1 0x20 00003ee7: SWAP1 00003ee8: DUP2 00003ee9: MSTORE 00003eea: PUSH1 0x40 00003eec: DUP1 00003eed: DUP4 00003eee: KECCAK256 00003eef: SLOAD 00003ef0: PUSH1 0x1f 00003ef2: DUP4 00003ef3: MSTORE 00003ef4: SWAP3 00003ef5: DUP2 00003ef6: SWAP1 00003ef7: KECCAK256 00003ef8: SLOAD 00003ef9: PUSH1 0x15 00003efb: SLOAD 00003efc: DUP3 00003efd: MLOAD 00003efe: PUSH4 0x3ddac953 00003f03: PUSH1 0xe0 00003f05: SHL 00003f06: DUP2 00003f07: MSTORE 00003f08: SWAP1 00003f09: DUP7 00003f0a: AND 00003f0b: PUSH1 0x04 00003f0d: DUP3 00003f0e: ADD 00003f0f: MSTORE 00003f10: PUSH8 0x0de0b6b3a7640000 00003f19: PUSH1 0x24 00003f1b: DUP3 00003f1c: ADD 00003f1d: MSTORE 00003f1e: SWAP2 00003f1f: MLOAD 00003f20: SWAP6 00003f21: SWAP7 00003f22: POP 00003f23: PUSH2 0x3f75 00003f26: SWAP6 00003f27: PUSH2 0x3f61 00003f2a: SWAP6 00003f2b: PUSH1 0x0a 00003f2d: SWAP6 00003f2e: SWAP1 00003f2f: SWAP6 00003f30: EXP 00003f31: SWAP5 00003f32: PUSH2 0x1c05 00003f35: SWAP5 00003f36: PUSH4 0x3b9aca00 00003f3b: SWAP5 00003f3c: SWAP4 00003f3d: SWAP1 00003f3e: SWAP2 00003f3f: AND 00003f40: SWAP3 00003f41: PUSH4 0x3ddac953 00003f46: SWAP3 00003f47: PUSH1 0x44 00003f49: DUP1 00003f4a: DUP4 00003f4b: ADD 00003f4c: SWAP4 00003f4d: SWAP3 00003f4e: DUP3 00003f4f: SWAP1 00003f50: SUB 00003f51: ADD 00003f52: DUP2 00003f53: DUP7 00003f54: DUP1 00003f55: EXTCODESIZE 00003f56: ISZERO 00003f57: DUP1 00003f58: ISZERO 00003f59: PUSH2 0x3d92 00003f5c: JUMPI 00003f5d: PUSH1 0x00 00003f5f: DUP1 00003f60: REVERT 00003f61: JUMPDEST 00003f62: PUSH2 0x1c05 00003f65: PUSH4 0x3b9aca00 00003f6a: PUSH2 0x1c12 00003f6d: DUP6 00003f6e: PUSH2 0x03e8 00003f71: PUSH2 0x4487 00003f74: JUMP 00003f75: JUMPDEST 00003f76: SWAP4 00003f77: SWAP3 00003f78: POP 00003f79: POP 00003f7a: POP 00003f7b: JUMP 00003f7c: JUMPDEST 00003f7d: PUSH1 0x23 00003f7f: SLOAD 00003f80: PUSH1 0x01 00003f82: PUSH1 0x01 00003f84: PUSH1 0xa0 00003f86: SHL 00003f87: SUB 00003f88: AND 00003f89: DUP2 00003f8a: JUMP 00003f8b: JUMPDEST 00003f8c: PUSH1 0x01 00003f8e: PUSH1 0x01 00003f90: PUSH1 0xa0 00003f92: SHL 00003f93: SUB 00003f94: SWAP2 00003f95: DUP3 00003f96: AND 00003f97: PUSH1 0x00 00003f99: SWAP1 00003f9a: DUP2 00003f9b: MSTORE 00003f9c: PUSH1 0x14 00003f9e: PUSH1 0x20 00003fa0: SWAP1 00003fa1: DUP2 00003fa2: MSTORE 00003fa3: PUSH1 0x40 00003fa5: DUP1 00003fa6: DUP4 00003fa7: KECCAK256 00003fa8: SWAP4 00003fa9: SWAP1 00003faa: SWAP5 00003fab: AND 00003fac: DUP3 00003fad: MSTORE 00003fae: SWAP2 00003faf: SWAP1 00003fb0: SWAP2 00003fb1: MSTORE 00003fb2: KECCAK256 00003fb3: SLOAD 00003fb4: SWAP1 00003fb5: JUMP 00003fb6: JUMPDEST 00003fb7: PUSH1 0x1e 00003fb9: PUSH1 0x20 00003fbb: MSTORE 00003fbc: PUSH1 0x00 00003fbe: SWAP1 00003fbf: DUP2 00003fc0: MSTORE 00003fc1: PUSH1 0x40 00003fc3: SWAP1 00003fc4: KECCAK256 00003fc5: SLOAD 00003fc6: PUSH1 0xff 00003fc8: AND 00003fc9: DUP2 00003fca: JUMP 00003fcb: JUMPDEST 00003fcc: PUSH1 0x17 00003fce: SLOAD 00003fcf: PUSH1 0x01 00003fd1: PUSH1 0x01 00003fd3: PUSH1 0xa0 00003fd5: SHL 00003fd6: SUB 00003fd7: AND 00003fd8: CALLER 00003fd9: EQ 00003fda: PUSH2 0x402a 00003fdd: JUMPI 00003fde: PUSH1 0x40 00003fe0: DUP1 00003fe1: MLOAD 00003fe2: PUSH3 0x461bcd 00003fe6: PUSH1 0xe5 00003fe8: SHL 00003fe9: DUP2 00003fea: MSTORE 00003feb: PUSH1 0x20 00003fed: PUSH1 0x04 00003fef: DUP3 00003ff0: ADD 00003ff1: MSTORE 00003ff2: PUSH1 0x1c 00003ff4: PUSH1 0x24 00003ff6: DUP3 00003ff7: ADD 00003ff8: MSTORE 00003ff9: PUSH32 0x4143434553533a206f6e6c79204963686920676f7665726e616e636500000000 0000401a: PUSH1 0x44 0000401c: DUP3 0000401d: ADD 0000401e: MSTORE 0000401f: SWAP1 00004020: MLOAD 00004021: SWAP1 00004022: DUP2 00004023: SWAP1 00004024: SUB 00004025: PUSH1 0x64 00004027: ADD 00004028: SWAP1 00004029: REVERT 0000402a: JUMPDEST 0000402b: PUSH1 0x20 0000402d: DUP2 0000402e: DUP2 0000402f: SSTORE 00004030: PUSH1 0x40 00004032: DUP1 00004033: MLOAD 00004034: DUP4 00004035: DUP2 00004036: MSTORE 00004037: SWAP1 00004038: MLOAD 00004039: PUSH32 0x6f87524b705f31734b7940b88671f37a3291d7b961b69da31bcabf882b2531da 0000405a: SWAP3 0000405b: SWAP2 0000405c: DUP2 0000405d: SWAP1 0000405e: SUB 0000405f: SWAP1 00004060: SWAP2 00004061: ADD 00004062: SWAP1 00004063: LOG1 00004064: POP 00004065: JUMP 00004066: JUMPDEST 00004067: PUSH1 0x1f 00004069: PUSH1 0x20 0000406b: MSTORE 0000406c: PUSH1 0x00 0000406e: SWAP1 0000406f: DUP2 00004070: MSTORE 00004071: PUSH1 0x40 00004073: SWAP1 00004074: KECCAK256 00004075: SLOAD 00004076: PUSH1 0x01 00004078: PUSH1 0x01 0000407a: PUSH1 0xa0 0000407c: SHL 0000407d: SUB 0000407e: AND 0000407f: DUP2 00004080: JUMP 00004081: JUMPDEST 00004082: PUSH1 0x21 00004084: SLOAD 00004085: DUP2 00004086: JUMP 00004087: JUMPDEST 00004088: PUSH1 0x23 0000408a: SLOAD 0000408b: PUSH1 0x01 0000408d: PUSH1 0x01 0000408f: PUSH1 0xa0 00004091: SHL 00004092: SUB 00004093: AND 00004094: CALLER 00004095: EQ 00004096: PUSH2 0x40d4 00004099: JUMPI 0000409a: PUSH1 0x40 0000409c: DUP1 0000409d: MLOAD 0000409e: PUSH3 0x461bcd 000040a2: PUSH1 0xe5 000040a4: SHL 000040a5: DUP2 000040a6: MSTORE 000040a7: PUSH1 0x20 000040a9: PUSH1 0x04 000040ab: DUP3 000040ac: ADD 000040ad: MSTORE 000040ae: PUSH1 0x1d 000040b0: PUSH1 0x24 000040b2: DUP3 000040b3: ADD 000040b4: MSTORE 000040b5: PUSH1 0x00 000040b7: DUP1 000040b8: MLOAD 000040b9: PUSH1 0x20 000040bb: PUSH2 0x4ade 000040be: DUP4 000040bf: CODECOPY 000040c0: DUP2 000040c1: MLOAD 000040c2: SWAP2 000040c3: MSTORE 000040c4: PUSH1 0x44 000040c6: DUP3 000040c7: ADD 000040c8: MSTORE 000040c9: SWAP1 000040ca: MLOAD 000040cb: SWAP1 000040cc: DUP2 000040cd: SWAP1 000040ce: SUB 000040cf: PUSH1 0x64 000040d1: ADD 000040d2: SWAP1 000040d3: REVERT 000040d4: JUMPDEST 000040d5: PUSH1 0x19 000040d7: SSTORE 000040d8: JUMP 000040d9: JUMPDEST 000040da: PUSH1 0x17 000040dc: SLOAD 000040dd: PUSH1 0x01 000040df: PUSH1 0x01 000040e1: PUSH1 0xa0 000040e3: SHL 000040e4: SUB 000040e5: AND 000040e6: CALLER 000040e7: EQ 000040e8: PUSH2 0x4138 000040eb: JUMPI 000040ec: PUSH1 0x40 000040ee: DUP1 000040ef: MLOAD 000040f0: PUSH3 0x461bcd 000040f4: PUSH1 0xe5 000040f6: SHL 000040f7: DUP2 000040f8: MSTORE 000040f9: PUSH1 0x20 000040fb: PUSH1 0x04 000040fd: DUP3 000040fe: ADD 000040ff: MSTORE 00004100: PUSH1 0x1c 00004102: PUSH1 0x24 00004104: DUP3 00004105: ADD 00004106: MSTORE 00004107: PUSH32 0x4143434553533a206f6e6c79204963686920676f7665726e616e636500000000 00004128: PUSH1 0x44 0000412a: DUP3 0000412b: ADD 0000412c: MSTORE 0000412d: SWAP1 0000412e: MLOAD 0000412f: SWAP1 00004130: DUP2 00004131: SWAP1 00004132: SUB 00004133: PUSH1 0x64 00004135: ADD 00004136: SWAP1 00004137: REVERT 00004138: JUMPDEST 00004139: PUSH1 0x18 0000413b: DUP1 0000413c: SLOAD 0000413d: PUSH1 0x01 0000413f: PUSH1 0x01 00004141: PUSH1 0xa0 00004143: SHL 00004144: SUB 00004145: DUP4 00004146: DUP2 00004147: AND 00004148: PUSH1 0x01 0000414a: PUSH1 0x01 0000414c: PUSH1 0xa0 0000414e: SHL 0000414f: SUB 00004150: NOT 00004151: DUP4 00004152: AND 00004153: DUP2 00004154: OR 00004155: SWAP1 00004156: SWAP4 00004157: SSTORE 00004158: PUSH1 0x40 0000415a: DUP1 0000415b: MLOAD 0000415c: SWAP2 0000415d: SWAP1 0000415e: SWAP3 0000415f: AND 00004160: DUP1 00004161: DUP3 00004162: MSTORE 00004163: PUSH1 0x20 00004165: DUP3 00004166: ADD 00004167: SWAP4 00004168: SWAP1 00004169: SWAP4 0000416a: MSTORE 0000416b: DUP2 0000416c: MLOAD 0000416d: PUSH32 0x6163d5b9efd962645dd649e6e48a61bcb0f9df00997a2398b80d135a9ab0c61e 0000418e: SWAP3 0000418f: SWAP2 00004190: DUP2 00004191: SWAP1 00004192: SUB 00004193: SWAP1 00004194: SWAP2 00004195: ADD 00004196: SWAP1 00004197: LOG1 00004198: POP 00004199: POP 0000419a: JUMP 0000419b: JUMPDEST 0000419c: PUSH1 0x23 0000419e: SLOAD 0000419f: PUSH1 0x01 000041a1: PUSH1 0x01 000041a3: PUSH1 0xa0 000041a5: SHL 000041a6: SUB 000041a7: AND 000041a8: CALLER 000041a9: EQ 000041aa: PUSH2 0x41e8 000041ad: JUMPI 000041ae: PUSH1 0x40 000041b0: DUP1 000041b1: MLOAD 000041b2: PUSH3 0x461bcd 000041b6: PUSH1 0xe5 000041b8: SHL 000041b9: DUP2 000041ba: MSTORE 000041bb: PUSH1 0x20 000041bd: PUSH1 0x04 000041bf: DUP3 000041c0: ADD 000041c1: MSTORE 000041c2: PUSH1 0x1d 000041c4: PUSH1 0x24 000041c6: DUP3 000041c7: ADD 000041c8: MSTORE 000041c9: PUSH1 0x00 000041cb: DUP1 000041cc: MLOAD 000041cd: PUSH1 0x20 000041cf: PUSH2 0x4ade 000041d2: DUP4 000041d3: CODECOPY 000041d4: DUP2 000041d5: MLOAD 000041d6: SWAP2 000041d7: MSTORE 000041d8: PUSH1 0x44 000041da: DUP3 000041db: ADD 000041dc: MSTORE 000041dd: SWAP1 000041de: MLOAD 000041df: SWAP1 000041e0: DUP2 000041e1: SWAP1 000041e2: SUB 000041e3: PUSH1 0x64 000041e5: ADD 000041e6: SWAP1 000041e7: REVERT 000041e8: JUMPDEST 000041e9: PUSH1 0x24 000041eb: DUP1 000041ec: SLOAD 000041ed: PUSH1 0x01 000041ef: PUSH1 0x01 000041f1: PUSH1 0xa0 000041f3: SHL 000041f4: SUB 000041f5: DUP4 000041f6: DUP2 000041f7: AND 000041f8: PUSH1 0x01 000041fa: PUSH1 0x01 000041fc: PUSH1 0xa0 000041fe: SHL 000041ff: SUB 00004200: NOT 00004201: DUP4 00004202: AND 00004203: DUP2 00004204: OR 00004205: SWAP1 00004206: SWAP4 00004207: SSTORE 00004208: PUSH1 0x40 0000420a: DUP1 0000420b: MLOAD 0000420c: SWAP2 0000420d: SWAP1 0000420e: SWAP3 0000420f: AND 00004210: DUP1 00004211: DUP3 00004212: MSTORE 00004213: PUSH1 0x20 00004215: DUP3 00004216: ADD 00004217: SWAP4 00004218: SWAP1 00004219: SWAP4 0000421a: MSTORE 0000421b: DUP2 0000421c: MLOAD 0000421d: PUSH32 0x6ea9654b538fab06e45f7940f0aa88b14cb8aca48a29d4e0b7626009fb7dc514 0000423e: SWAP3 0000423f: SWAP2 00004240: DUP2 00004241: SWAP1 00004242: SUB 00004243: SWAP1 00004244: SWAP2 00004245: ADD 00004246: SWAP1 00004247: LOG1 00004248: POP 00004249: POP 0000424a: JUMP 0000424b: JUMPDEST 0000424c: PUSH1 0x1d 0000424e: PUSH1 0x20 00004250: MSTORE 00004251: PUSH1 0x00 00004253: SWAP1 00004254: DUP2 00004255: MSTORE 00004256: PUSH1 0x40 00004258: SWAP1 00004259: KECCAK256 0000425a: SLOAD 0000425b: DUP2 0000425c: JUMP 0000425d: JUMPDEST 0000425e: PUSH2 0x4265 00004261: PUSH2 0x4574 00004264: JUMP 00004265: JUMPDEST 00004266: PUSH1 0x05 00004268: SLOAD 00004269: PUSH2 0x0100 0000426c: SWAP1 0000426d: DIV 0000426e: PUSH1 0x01 00004270: PUSH1 0x01 00004272: PUSH1 0xa0 00004274: SHL 00004275: SUB 00004276: SWAP1 00004277: DUP2 00004278: AND 00004279: SWAP2 0000427a: AND 0000427b: EQ 0000427c: PUSH2 0x42cc 0000427f: JUMPI 00004280: PUSH1 0x40 00004282: DUP1 00004283: MLOAD 00004284: PUSH3 0x461bcd 00004288: PUSH1 0xe5 0000428a: SHL 0000428b: DUP2 0000428c: MSTORE 0000428d: PUSH1 0x20 0000428f: PUSH1 0x04 00004291: DUP3 00004292: ADD 00004293: DUP2 00004294: SWAP1 00004295: MSTORE 00004296: PUSH1 0x24 00004298: DUP3 00004299: ADD 0000429a: MSTORE 0000429b: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 000042bc: PUSH1 0x44 000042be: DUP3 000042bf: ADD 000042c0: MSTORE 000042c1: SWAP1 000042c2: MLOAD 000042c3: SWAP1 000042c4: DUP2 000042c5: SWAP1 000042c6: SUB 000042c7: PUSH1 0x64 000042c9: ADD 000042ca: SWAP1 000042cb: REVERT 000042cc: JUMPDEST 000042cd: PUSH1 0x01 000042cf: PUSH1 0x01 000042d1: PUSH1 0xa0 000042d3: SHL 000042d4: SUB 000042d5: DUP2 000042d6: AND 000042d7: PUSH2 0x4311 000042da: JUMPI 000042db: PUSH1 0x40 000042dd: MLOAD 000042de: PUSH3 0x461bcd 000042e2: PUSH1 0xe5 000042e4: SHL 000042e5: DUP2 000042e6: MSTORE 000042e7: PUSH1 0x04 000042e9: ADD 000042ea: DUP1 000042eb: DUP1 000042ec: PUSH1 0x20 000042ee: ADD 000042ef: DUP3 000042f0: DUP2 000042f1: SUB 000042f2: DUP3 000042f3: MSTORE 000042f4: PUSH1 0x26 000042f6: DUP2 000042f7: MSTORE 000042f8: PUSH1 0x20 000042fa: ADD 000042fb: DUP1 000042fc: PUSH2 0x4910 000042ff: PUSH1 0x26 00004301: SWAP2 00004302: CODECOPY 00004303: PUSH1 0x40 00004305: ADD 00004306: SWAP2 00004307: POP 00004308: POP 00004309: PUSH1 0x40 0000430b: MLOAD 0000430c: DUP1 0000430d: SWAP2 0000430e: SUB 0000430f: SWAP1 00004310: REVERT 00004311: JUMPDEST 00004312: PUSH1 0x05 00004314: SLOAD 00004315: PUSH1 0x40 00004317: MLOAD 00004318: PUSH1 0x01 0000431a: PUSH1 0x01 0000431c: PUSH1 0xa0 0000431e: SHL 0000431f: SUB 00004320: DUP1 00004321: DUP5 00004322: AND 00004323: SWAP3 00004324: PUSH2 0x0100 00004327: SWAP1 00004328: DIV 00004329: AND 0000432a: SWAP1 0000432b: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000434c: SWAP1 0000434d: PUSH1 0x00 0000434f: SWAP1 00004350: LOG3 00004351: PUSH1 0x05 00004353: DUP1 00004354: SLOAD 00004355: PUSH1 0x01 00004357: PUSH1 0x01 00004359: PUSH1 0xa0 0000435b: SHL 0000435c: SUB 0000435d: SWAP1 0000435e: SWAP3 0000435f: AND 00004360: PUSH2 0x0100 00004363: MUL 00004364: PUSH2 0x0100 00004367: PUSH1 0x01 00004369: PUSH1 0xa8 0000436b: SHL 0000436c: SUB 0000436d: NOT 0000436e: SWAP1 0000436f: SWAP3 00004370: AND 00004371: SWAP2 00004372: SWAP1 00004373: SWAP2 00004374: OR 00004375: SWAP1 00004376: SSTORE 00004377: JUMP 00004378: JUMPDEST 00004379: PUSH1 0x1b 0000437b: PUSH1 0x20 0000437d: MSTORE 0000437e: PUSH1 0x00 00004380: SWAP1 00004381: DUP2 00004382: MSTORE 00004383: PUSH1 0x40 00004385: SWAP1 00004386: KECCAK256 00004387: SLOAD 00004388: PUSH1 0xff 0000438a: AND 0000438b: DUP2 0000438c: JUMP 0000438d: JUMPDEST 0000438e: PUSH1 0x08 00004390: SLOAD 00004391: DUP2 00004392: JUMP 00004393: JUMPDEST 00004394: PUSH1 0x00 00004396: DUP3 00004397: DUP3 00004398: ADD 00004399: DUP4 0000439a: DUP2 0000439b: LT 0000439c: ISZERO 0000439d: PUSH2 0x3f75 000043a0: JUMPI 000043a1: PUSH1 0x40 000043a3: DUP1 000043a4: MLOAD 000043a5: PUSH3 0x461bcd 000043a9: PUSH1 0xe5 000043ab: SHL 000043ac: DUP2 000043ad: MSTORE 000043ae: PUSH1 0x20 000043b0: PUSH1 0x04 000043b2: DUP3 000043b3: ADD 000043b4: MSTORE 000043b5: PUSH1 0x1b 000043b7: PUSH1 0x24 000043b9: DUP3 000043ba: ADD 000043bb: MSTORE 000043bc: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000 000043dd: PUSH1 0x44 000043df: DUP3 000043e0: ADD 000043e1: MSTORE 000043e2: SWAP1 000043e3: MLOAD 000043e4: SWAP1 000043e5: DUP2 000043e6: SWAP1 000043e7: SUB 000043e8: PUSH1 0x64 000043ea: ADD 000043eb: SWAP1 000043ec: REVERT 000043ed: JUMPDEST 000043ee: PUSH1 0x00 000043f0: PUSH2 0x3f75 000043f3: DUP4 000043f4: DUP4 000043f5: PUSH1 0x40 000043f7: MLOAD 000043f8: DUP1 000043f9: PUSH1 0x40 000043fb: ADD 000043fc: PUSH1 0x40 000043fe: MSTORE 000043ff: DUP1 00004400: PUSH1 0x1e 00004402: DUP2 00004403: MSTORE 00004404: PUSH1 0x20 00004406: ADD 00004407: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 00004428: DUP2 00004429: MSTORE 0000442a: POP 0000442b: PUSH2 0x45d8 0000442e: JUMP 0000442f: JUMPDEST 00004430: PUSH5 0x174876e800 00004436: DUP2 00004437: GT 00004438: ISZERO 00004439: DUP1 0000443a: ISZERO 0000443b: PUSH2 0x4446 0000443e: JUMPI 0000443f: POP 00004440: PUSH1 0x0f 00004442: SLOAD 00004443: DUP2 00004444: LT 00004445: ISZERO 00004446: JUMPDEST 00004447: ISZERO 00004448: PUSH2 0x4484 0000444b: JUMPI 0000444c: PUSH1 0x1a 0000444e: DUP2 0000444f: SWAP1 00004450: SSTORE 00004451: PUSH1 0x40 00004453: DUP1 00004454: MLOAD 00004455: DUP3 00004456: DUP2 00004457: MSTORE 00004458: SWAP1 00004459: MLOAD 0000445a: PUSH32 0x2fbb30255fd6bab4bd8c21173ab8290d05fcef04343b7d0190495d90e6866c56 0000447b: SWAP2 0000447c: DUP2 0000447d: SWAP1 0000447e: SUB 0000447f: PUSH1 0x20 00004481: ADD 00004482: SWAP1 00004483: LOG1 00004484: JUMPDEST 00004485: POP 00004486: JUMP 00004487: JUMPDEST 00004488: PUSH1 0x00 0000448a: DUP3 0000448b: PUSH2 0x4496 0000448e: JUMPI 0000448f: POP 00004490: PUSH1 0x00 00004492: PUSH2 0x28ea 00004495: JUMP 00004496: JUMPDEST 00004497: DUP3 00004498: DUP3 00004499: MUL 0000449a: DUP3 0000449b: DUP5 0000449c: DUP3 0000449d: DUP2 0000449e: PUSH2 0x44a3 000044a1: JUMPI 000044a2: INVALID 000044a3: JUMPDEST 000044a4: DIV 000044a5: EQ 000044a6: PUSH2 0x3f75 000044a9: JUMPI 000044aa: PUSH1 0x40 000044ac: MLOAD 000044ad: PUSH3 0x461bcd 000044b1: PUSH1 0xe5 000044b3: SHL 000044b4: DUP2 000044b5: MSTORE 000044b6: PUSH1 0x04 000044b8: ADD 000044b9: DUP1 000044ba: DUP1 000044bb: PUSH1 0x20 000044bd: ADD 000044be: DUP3 000044bf: DUP2 000044c0: SUB 000044c1: DUP3 000044c2: MSTORE 000044c3: PUSH1 0x21 000044c5: DUP2 000044c6: MSTORE 000044c7: PUSH1 0x20 000044c9: ADD 000044ca: DUP1 000044cb: PUSH2 0x49b9 000044ce: PUSH1 0x21 000044d0: SWAP2 000044d1: CODECOPY 000044d2: PUSH1 0x40 000044d4: ADD 000044d5: SWAP2 000044d6: POP 000044d7: POP 000044d8: PUSH1 0x40 000044da: MLOAD 000044db: DUP1 000044dc: SWAP2 000044dd: SUB 000044de: SWAP1 000044df: REVERT 000044e0: JUMPDEST 000044e1: PUSH1 0x00 000044e3: PUSH2 0x3f75 000044e6: DUP4 000044e7: DUP4 000044e8: PUSH1 0x40 000044ea: MLOAD 000044eb: DUP1 000044ec: PUSH1 0x40 000044ee: ADD 000044ef: PUSH1 0x40 000044f1: MSTORE 000044f2: DUP1 000044f3: PUSH1 0x1a 000044f5: DUP2 000044f6: MSTORE 000044f7: PUSH1 0x20 000044f9: ADD 000044fa: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000 0000451b: DUP2 0000451c: MSTORE 0000451d: POP 0000451e: PUSH2 0x466f 00004521: JUMP 00004522: JUMPDEST 00004523: PUSH1 0x40 00004525: DUP1 00004526: MLOAD 00004527: PUSH1 0x01 00004529: PUSH1 0x01 0000452b: PUSH1 0xa0 0000452d: SHL 0000452e: SUB 0000452f: DUP5 00004530: AND 00004531: PUSH1 0x24 00004533: DUP3 00004534: ADD 00004535: MSTORE 00004536: PUSH1 0x44 00004538: DUP1 00004539: DUP3 0000453a: ADD 0000453b: DUP5 0000453c: SWAP1 0000453d: MSTORE 0000453e: DUP3 0000453f: MLOAD 00004540: DUP1 00004541: DUP4 00004542: SUB 00004543: SWAP1 00004544: SWAP2 00004545: ADD 00004546: DUP2 00004547: MSTORE 00004548: PUSH1 0x64 0000454a: SWAP1 0000454b: SWAP2 0000454c: ADD 0000454d: SWAP1 0000454e: SWAP2 0000454f: MSTORE 00004550: PUSH1 0x20 00004552: DUP2 00004553: ADD 00004554: DUP1 00004555: MLOAD 00004556: PUSH1 0x01 00004558: PUSH1 0x01 0000455a: PUSH1 0xe0 0000455c: SHL 0000455d: SUB 0000455e: AND 0000455f: PUSH4 0xa9059cbb 00004564: PUSH1 0xe0 00004566: SHL 00004567: OR 00004568: SWAP1 00004569: MSTORE 0000456a: PUSH2 0x2d8b 0000456d: SWAP1 0000456e: DUP5 0000456f: SWAP1 00004570: PUSH2 0x46d4 00004573: JUMP 00004574: JUMPDEST 00004575: CALLER 00004576: SWAP1 00004577: JUMP 00004578: JUMPDEST 00004579: PUSH1 0x40 0000457b: DUP1 0000457c: MLOAD 0000457d: PUSH1 0x01 0000457f: PUSH1 0x01 00004581: PUSH1 0xa0 00004583: SHL 00004584: SUB 00004585: DUP1 00004586: DUP7 00004587: AND 00004588: PUSH1 0x24 0000458a: DUP4 0000458b: ADD 0000458c: MSTORE 0000458d: DUP5 0000458e: AND 0000458f: PUSH1 0x44 00004591: DUP3 00004592: ADD 00004593: MSTORE 00004594: PUSH1 0x64 00004596: DUP1 00004597: DUP3 00004598: ADD 00004599: DUP5 0000459a: SWAP1 0000459b: MSTORE 0000459c: DUP3 0000459d: MLOAD 0000459e: DUP1 0000459f: DUP4 000045a0: SUB 000045a1: SWAP1 000045a2: SWAP2 000045a3: ADD 000045a4: DUP2 000045a5: MSTORE 000045a6: PUSH1 0x84 000045a8: SWAP1 000045a9: SWAP2 000045aa: ADD 000045ab: SWAP1 000045ac: SWAP2 000045ad: MSTORE 000045ae: PUSH1 0x20 000045b0: DUP2 000045b1: ADD 000045b2: DUP1 000045b3: MLOAD 000045b4: PUSH1 0x01 000045b6: PUSH1 0x01 000045b8: PUSH1 0xe0 000045ba: SHL 000045bb: SUB 000045bc: AND 000045bd: PUSH4 0x23b872dd 000045c2: PUSH1 0xe0 000045c4: SHL 000045c5: OR 000045c6: SWAP1 000045c7: MSTORE 000045c8: PUSH2 0x45d2 000045cb: SWAP1 000045cc: DUP6 000045cd: SWAP1 000045ce: PUSH2 0x46d4 000045d1: JUMP 000045d2: JUMPDEST 000045d3: POP 000045d4: POP 000045d5: POP 000045d6: POP 000045d7: JUMP 000045d8: JUMPDEST 000045d9: PUSH1 0x00 000045db: DUP2 000045dc: DUP5 000045dd: DUP5 000045de: GT 000045df: ISZERO 000045e0: PUSH2 0x4667 000045e3: JUMPI 000045e4: PUSH1 0x40 000045e6: MLOAD 000045e7: PUSH3 0x461bcd 000045eb: PUSH1 0xe5 000045ed: SHL 000045ee: DUP2 000045ef: MSTORE 000045f0: PUSH1 0x04 000045f2: ADD 000045f3: DUP1 000045f4: DUP1 000045f5: PUSH1 0x20 000045f7: ADD 000045f8: DUP3 000045f9: DUP2 000045fa: SUB 000045fb: DUP3 000045fc: MSTORE 000045fd: DUP4 000045fe: DUP2 000045ff: DUP2 00004600: MLOAD 00004601: DUP2 00004602: MSTORE 00004603: PUSH1 0x20 00004605: ADD 00004606: SWAP2 00004607: POP 00004608: DUP1 00004609: MLOAD 0000460a: SWAP1 0000460b: PUSH1 0x20 0000460d: ADD 0000460e: SWAP1 0000460f: DUP1 00004610: DUP4 00004611: DUP4 00004612: PUSH1 0x00 00004614: JUMPDEST 00004615: DUP4 00004616: DUP2 00004617: LT 00004618: ISZERO 00004619: PUSH2 0x462c 0000461c: JUMPI 0000461d: DUP2 0000461e: DUP2 0000461f: ADD 00004620: MLOAD 00004621: DUP4 00004622: DUP3 00004623: ADD 00004624: MSTORE 00004625: PUSH1 0x20 00004627: ADD 00004628: PUSH2 0x4614 0000462b: JUMP 0000462c: JUMPDEST 0000462d: POP 0000462e: POP 0000462f: POP 00004630: POP 00004631: SWAP1 00004632: POP 00004633: SWAP1 00004634: DUP2 00004635: ADD 00004636: SWAP1 00004637: PUSH1 0x1f 00004639: AND 0000463a: DUP1 0000463b: ISZERO 0000463c: PUSH2 0x4659 0000463f: JUMPI 00004640: DUP1 00004641: DUP3 00004642: SUB 00004643: DUP1 00004644: MLOAD 00004645: PUSH1 0x01 00004647: DUP4 00004648: PUSH1 0x20 0000464a: SUB 0000464b: PUSH2 0x0100 0000464e: EXP 0000464f: SUB 00004650: NOT 00004651: AND 00004652: DUP2 00004653: MSTORE 00004654: PUSH1 0x20 00004656: ADD 00004657: SWAP2 00004658: POP 00004659: JUMPDEST 0000465a: POP 0000465b: SWAP3 0000465c: POP 0000465d: POP 0000465e: POP 0000465f: PUSH1 0x40 00004661: MLOAD 00004662: DUP1 00004663: SWAP2 00004664: SUB 00004665: SWAP1 00004666: REVERT 00004667: JUMPDEST 00004668: POP 00004669: POP 0000466a: POP 0000466b: SWAP1 0000466c: SUB 0000466d: SWAP1 0000466e: JUMP 0000466f: JUMPDEST 00004670: PUSH1 0x00 00004672: DUP2 00004673: DUP4 00004674: PUSH2 0x46be 00004677: JUMPI 00004678: PUSH1 0x40 0000467a: MLOAD 0000467b: PUSH3 0x461bcd 0000467f: PUSH1 0xe5 00004681: SHL 00004682: DUP2 00004683: MSTORE 00004684: PUSH1 0x20 00004686: PUSH1 0x04 00004688: DUP3 00004689: ADD 0000468a: DUP2 0000468b: DUP2 0000468c: MSTORE 0000468d: DUP4 0000468e: MLOAD 0000468f: PUSH1 0x24 00004691: DUP5 00004692: ADD 00004693: MSTORE 00004694: DUP4 00004695: MLOAD 00004696: SWAP1 00004697: SWAP3 00004698: DUP4 00004699: SWAP3 0000469a: PUSH1 0x44 0000469c: SWAP1 0000469d: SWAP2 0000469e: ADD 0000469f: SWAP2 000046a0: SWAP1 000046a1: DUP6 000046a2: ADD 000046a3: SWAP1 000046a4: DUP1 000046a5: DUP4 000046a6: DUP4 000046a7: PUSH1 0x00 000046a9: DUP4 000046aa: ISZERO 000046ab: PUSH2 0x462c 000046ae: JUMPI 000046af: DUP2 000046b0: DUP2 000046b1: ADD 000046b2: MLOAD 000046b3: DUP4 000046b4: DUP3 000046b5: ADD 000046b6: MSTORE 000046b7: PUSH1 0x20 000046b9: ADD 000046ba: PUSH2 0x4614 000046bd: JUMP 000046be: JUMPDEST 000046bf: POP 000046c0: PUSH1 0x00 000046c2: DUP4 000046c3: DUP6 000046c4: DUP2 000046c5: PUSH2 0x46ca 000046c8: JUMPI 000046c9: INVALID 000046ca: JUMPDEST 000046cb: DIV 000046cc: SWAP6 000046cd: SWAP5 000046ce: POP 000046cf: POP 000046d0: POP 000046d1: POP 000046d2: POP 000046d3: JUMP 000046d4: JUMPDEST 000046d5: PUSH1 0x60 000046d7: PUSH2 0x4729 000046da: DUP3 000046db: PUSH1 0x40 000046dd: MLOAD 000046de: DUP1 000046df: PUSH1 0x40 000046e1: ADD 000046e2: PUSH1 0x40 000046e4: MSTORE 000046e5: DUP1 000046e6: PUSH1 0x20 000046e8: DUP2 000046e9: MSTORE 000046ea: PUSH1 0x20 000046ec: ADD 000046ed: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 0000470e: DUP2 0000470f: MSTORE 00004710: POP 00004711: DUP6 00004712: PUSH1 0x01 00004714: PUSH1 0x01 00004716: PUSH1 0xa0 00004718: SHL 00004719: SUB 0000471a: AND 0000471b: PUSH2 0x4785 0000471e: SWAP1 0000471f: SWAP3 00004720: SWAP2 00004721: SWAP1 00004722: PUSH4 0xffffffff 00004727: AND 00004728: JUMP 00004729: JUMPDEST 0000472a: DUP1 0000472b: MLOAD 0000472c: SWAP1 0000472d: SWAP2 0000472e: POP 0000472f: ISZERO 00004730: PUSH2 0x2d8b 00004733: JUMPI 00004734: DUP1 00004735: DUP1 00004736: PUSH1 0x20 00004738: ADD 00004739: SWAP1 0000473a: MLOAD 0000473b: PUSH1 0x20 0000473d: DUP2 0000473e: LT 0000473f: ISZERO 00004740: PUSH2 0x4748 00004743: JUMPI 00004744: PUSH1 0x00 00004746: DUP1 00004747: REVERT 00004748: JUMPDEST 00004749: POP 0000474a: MLOAD 0000474b: PUSH2 0x2d8b 0000474e: JUMPI 0000474f: PUSH1 0x40 00004751: MLOAD 00004752: PUSH3 0x461bcd 00004756: PUSH1 0xe5 00004758: SHL 00004759: DUP2 0000475a: MSTORE 0000475b: PUSH1 0x04 0000475d: ADD 0000475e: DUP1 0000475f: DUP1 00004760: PUSH1 0x20 00004762: ADD 00004763: DUP3 00004764: DUP2 00004765: SUB 00004766: DUP3 00004767: MSTORE 00004768: PUSH1 0x2a 0000476a: DUP2 0000476b: MSTORE 0000476c: PUSH1 0x20 0000476e: ADD 0000476f: DUP1 00004770: PUSH2 0x4a8a 00004773: PUSH1 0x2a 00004775: SWAP2 00004776: CODECOPY 00004777: PUSH1 0x40 00004779: ADD 0000477a: SWAP2 0000477b: POP 0000477c: POP 0000477d: PUSH1 0x40 0000477f: MLOAD 00004780: DUP1 00004781: SWAP2 00004782: SUB 00004783: SWAP1 00004784: REVERT 00004785: JUMPDEST 00004786: PUSH1 0x60 00004788: PUSH2 0x4794 0000478b: DUP5 0000478c: DUP5 0000478d: PUSH1 0x00 0000478f: DUP6 00004790: PUSH2 0x479c 00004793: JUMP 00004794: JUMPDEST 00004795: SWAP5 00004796: SWAP4 00004797: POP 00004798: POP 00004799: POP 0000479a: POP 0000479b: JUMP 0000479c: JUMPDEST 0000479d: PUSH1 0x60 0000479f: PUSH2 0x47a7 000047a2: DUP6 000047a3: PUSH2 0x4909 000047a6: JUMP 000047a7: JUMPDEST 000047a8: PUSH2 0x47f8 000047ab: JUMPI 000047ac: PUSH1 0x40 000047ae: DUP1 000047af: MLOAD 000047b0: PUSH3 0x461bcd 000047b4: PUSH1 0xe5 000047b6: SHL 000047b7: DUP2 000047b8: MSTORE 000047b9: PUSH1 0x20 000047bb: PUSH1 0x04 000047bd: DUP3 000047be: ADD 000047bf: MSTORE 000047c0: PUSH1 0x1d 000047c2: PUSH1 0x24 000047c4: DUP3 000047c5: ADD 000047c6: MSTORE 000047c7: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 000047e8: PUSH1 0x44 000047ea: DUP3 000047eb: ADD 000047ec: MSTORE 000047ed: SWAP1 000047ee: MLOAD 000047ef: SWAP1 000047f0: DUP2 000047f1: SWAP1 000047f2: SUB 000047f3: PUSH1 0x64 000047f5: ADD 000047f6: SWAP1 000047f7: REVERT 000047f8: JUMPDEST 000047f9: PUSH1 0x00 000047fb: PUSH1 0x60 000047fd: DUP7 000047fe: PUSH1 0x01 00004800: PUSH1 0x01 00004802: PUSH1 0xa0 00004804: SHL 00004805: SUB 00004806: AND 00004807: DUP6 00004808: DUP8 00004809: PUSH1 0x40 0000480b: MLOAD 0000480c: DUP1 0000480d: DUP3 0000480e: DUP1 0000480f: MLOAD 00004810: SWAP1 00004811: PUSH1 0x20 00004813: ADD 00004814: SWAP1 00004815: DUP1 00004816: DUP4 00004817: DUP4 00004818: JUMPDEST 00004819: PUSH1 0x20 0000481b: DUP4 0000481c: LT 0000481d: PUSH2 0x4837 00004820: JUMPI 00004821: DUP1 00004822: MLOAD 00004823: DUP3 00004824: MSTORE 00004825: PUSH1 0x1f 00004827: NOT 00004828: SWAP1 00004829: SWAP3 0000482a: ADD 0000482b: SWAP2 0000482c: PUSH1 0x20 0000482e: SWAP2 0000482f: DUP3 00004830: ADD 00004831: SWAP2 00004832: ADD 00004833: PUSH2 0x4818 00004836: JUMP 00004837: JUMPDEST 00004838: PUSH1 0x01 0000483a: DUP4 0000483b: PUSH1 0x20 0000483d: SUB 0000483e: PUSH2 0x0100 00004841: EXP 00004842: SUB 00004843: DUP1 00004844: NOT 00004845: DUP3 00004846: MLOAD 00004847: AND 00004848: DUP2 00004849: DUP5 0000484a: MLOAD 0000484b: AND 0000484c: DUP1 0000484d: DUP3 0000484e: OR 0000484f: DUP6 00004850: MSTORE 00004851: POP 00004852: POP 00004853: POP 00004854: POP 00004855: POP 00004856: POP 00004857: SWAP1 00004858: POP 00004859: ADD 0000485a: SWAP2 0000485b: POP 0000485c: POP 0000485d: PUSH1 0x00 0000485f: PUSH1 0x40 00004861: MLOAD 00004862: DUP1 00004863: DUP4 00004864: SUB 00004865: DUP2 00004866: DUP6 00004867: DUP8 00004868: GAS 00004869: CALL 0000486a: SWAP3 0000486b: POP 0000486c: POP 0000486d: POP 0000486e: RETURNDATASIZE 0000486f: DUP1 00004870: PUSH1 0x00 00004872: DUP2 00004873: EQ 00004874: PUSH2 0x4899 00004877: JUMPI 00004878: PUSH1 0x40 0000487a: MLOAD 0000487b: SWAP2 0000487c: POP 0000487d: PUSH1 0x1f 0000487f: NOT 00004880: PUSH1 0x3f 00004882: RETURNDATASIZE 00004883: ADD 00004884: AND 00004885: DUP3 00004886: ADD 00004887: PUSH1 0x40 00004889: MSTORE 0000488a: RETURNDATASIZE 0000488b: DUP3 0000488c: MSTORE 0000488d: RETURNDATASIZE 0000488e: PUSH1 0x00 00004890: PUSH1 0x20 00004892: DUP5 00004893: ADD 00004894: RETURNDATACOPY 00004895: PUSH2 0x489e 00004898: JUMP 00004899: JUMPDEST 0000489a: PUSH1 0x60 0000489c: SWAP2 0000489d: POP 0000489e: JUMPDEST 0000489f: POP 000048a0: SWAP2 000048a1: POP 000048a2: SWAP2 000048a3: POP 000048a4: DUP2 000048a5: ISZERO 000048a6: PUSH2 0x48b2 000048a9: JUMPI 000048aa: SWAP2 000048ab: POP 000048ac: PUSH2 0x4794 000048af: SWAP1 000048b0: POP 000048b1: JUMP 000048b2: JUMPDEST 000048b3: DUP1 000048b4: MLOAD 000048b5: ISZERO 000048b6: PUSH2 0x48c2 000048b9: JUMPI 000048ba: DUP1 000048bb: MLOAD 000048bc: DUP1 000048bd: DUP3 000048be: PUSH1 0x20 000048c0: ADD 000048c1: REVERT 000048c2: JUMPDEST 000048c3: PUSH1 0x40 000048c5: MLOAD 000048c6: PUSH3 0x461bcd 000048ca: PUSH1 0xe5 000048cc: SHL 000048cd: DUP2 000048ce: MSTORE 000048cf: PUSH1 0x20 000048d1: PUSH1 0x04 000048d3: DUP3 000048d4: ADD 000048d5: DUP2 000048d6: DUP2 000048d7: MSTORE 000048d8: DUP7 000048d9: MLOAD 000048da: PUSH1 0x24 000048dc: DUP5 000048dd: ADD 000048de: MSTORE 000048df: DUP7 000048e0: MLOAD 000048e1: DUP8 000048e2: SWAP4 000048e3: SWAP2 000048e4: SWAP3 000048e5: DUP4 000048e6: SWAP3 000048e7: PUSH1 0x44 000048e9: ADD 000048ea: SWAP2 000048eb: SWAP1 000048ec: DUP6 000048ed: ADD 000048ee: SWAP1 000048ef: DUP1 000048f0: DUP4 000048f1: DUP4 000048f2: PUSH1 0x00 000048f4: DUP4 000048f5: ISZERO 000048f6: PUSH2 0x462c 000048f9: JUMPI 000048fa: DUP2 000048fb: DUP2 000048fc: ADD 000048fd: MLOAD 000048fe: DUP4 000048ff: DUP3 00004900: ADD 00004901: MSTORE 00004902: PUSH1 0x20 00004904: ADD 00004905: PUSH2 0x4614 00004908: JUMP 00004909: JUMPDEST 0000490a: EXTCODESIZE 0000490b: ISZERO 0000490c: ISZERO 0000490d: SWAP1 0000490e: JUMP 0000490f: INVALID 00004910: UNKNOWN(0x4F) 00004911: PUSH24 0x6e61626c653a206e6577206f776e65722069732074686520 0000492a: PUSH27 0x65726f2061646472657373696e73756666696369656e7420636f6c 00004946: PUSH13 0x61746572616c20726573657276 00004954: PUSH6 0x73202d207472 0000495b: PUSH26 0x20616e6f7468657220636f6c6c61746572616c73656e64657220 00004976: PUSH9 0x617320696e73756666 00004980: PUSH10 0x6369656e74207374696d 0000498b: PUSH22 0x6c75732062616c616e63656d696e696d756d20726566 000049a2: PUSH19 0x6573682074696d65206d757374206265207661 000049b6: PUSH13 0x6964536166654d6174683a206d 000049c4: PUSH22 0x6c7469706c69636174696f6e206f766572666c6f776d 000049db: PUSH10 0x6e426c6f636b46726565 000049e6: PUSH27 0x652074696d65206c696d6974206e6f74206d657420796574202d20 00004a02: PUSH21 0x727920616761696e206c61746572ddf252ad1be2c8 00004a18: SWAP12 00004a19: PUSH10 0xc2b068fc378daa952ba7 00004a24: CALL 00004a25: PUSH4 0xc4a11628 00004a2a: CREATE2 00004a2b: GAS 00004a2c: UNKNOWN(0x4D) 00004a2d: CREATE2 00004a2e: UNKNOWN(0x23) 00004a2f: UNKNOWN(0xB3) 00004a30: UNKNOWN(0xEF) 00004a31: PUSH2 0x6374 00004a34: PUSH10 0x6f6e20746f6f20736f6f 00004a3f: PUSH15 0x202d20706c65617365207761697420 00004a4f: PUSH2 0x2066 00004a52: PUSH6 0x77206d6f7265 00004a59: KECCAK256 00004a5a: PUSH3 0x6c6f63 00004a5e: PUSH12 0x7373656e6465722068617320 00004a6b: PUSH10 0x6e73756666696369656e 00004a76: PUSH21 0x20636f6c6c61746572616c2062616c616e63655361 00004a8c: PUSH7 0x6545524332303a 00004a94: KECCAK256 00004a95: GASLIMIT 00004a96: MSTORE 00004a97: NUMBER 00004a98: ORIGIN 00004a99: ADDRESS 00004a9a: KECCAK256 00004a9b: PUSH16 0x7065726174696f6e20646964206e6f74 00004aac: KECCAK256 00004aad: PUSH20 0x756363656564616374696f6e20746f6f20736f6f 00004ac2: PUSH15 0x202d20706c65617365207761697420 00004ad2: PUSH2 0x2066 00004ad5: PUSH6 0x7720626c6f63 00004adc: PUSH12 0x734143434553533a206f6e6c 00004ae9: PUSH26 0x206274634c5020676f7665726e616e6365000000a26469706673 00004b04: PC 00004b05: UNKNOWN(0x22) 00004b06: SLT 00004b07: KECCAK256 00004b08: CALLDATALOAD 00004b09: PUSH18 0x14cf4527c6c406366a4a8feff73221d581d1 00004b1c: SWAP9 00004b1d: PUSH26
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xf196d018",
"selector": "0xf196d018",
"calldata_variants": [
"0xf196d018",
"0xf196d0180000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf1ae3c7f",
"selector": "0xf1ae3c7f",
"calldata_variants": [
"0xf1ae3c7f",
"0xf1ae3c7f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6cad255",
"selector": "0xf6cad255",
"calldata_variants": [
"0xf6cad255",
"0xf6cad2550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfdec254f",
"selector": "0xfdec254f",
"calldata_variants": [
"0xfdec254f",
"0xfdec254f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9144e73",
"selector": "0xe9144e73",
"calldata_variants": [
"0xe9144e73",
"0xe9144e730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe941fa78",
"selector": "0xe941fa78",
"calldata_variants": [
"0xe941fa78",
"0xe941fa780000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeb7afed0",
"selector": "0xeb7afed0",
"calldata_variants": [
"0xeb7afed0",
"0xeb7afed00000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 19096,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x0827c956c91585f0d82513530b5277748f1d878a165480051a21b515a1165ea2
call_targets:
0xc88f47067db2e25851317a2fdae73a22c0777c37
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x0827c956c91585f0d82513530b5277748f1d878a165480051a21b515a1165ea2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xc88f47067db2e25851317a2fdae73a22c0777c37"
],
"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": "0xf196d018",
"selector": "0xf196d018",
"calldata_variants": [
"0xf196d018",
"0xf196d0180000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf1ae3c7f",
"selector": "0xf1ae3c7f",
"calldata_variants": [
"0xf1ae3c7f",
"0xf1ae3c7f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6cad255",
"selector": "0xf6cad255",
"calldata_variants": [
"0xf6cad255",
"0xf6cad2550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfdec254f",
"selector": "0xfdec254f",
"calldata_variants": [
"0xfdec254f",
"0xfdec254f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9144e73",
"selector": "0xe9144e73",
"calldata_variants": [
"0xe9144e73",
"0xe9144e730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe941fa78",
"selector": "0xe941fa78",
"calldata_variants": [
"0xe941fa78",
"0xe941fa780000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeb7afed0",
"selector": "0xeb7afed0",
"calldata_variants": [
"0xeb7afed0",
"0xeb7afed00000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4055,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4160,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4370,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 22,
"guards_detected": [
{
"pc": 19096,
"type": "tx_origin_used"
}
]
}
|
| medium | oracle | codex | Uniswap TWAP pricing used without freshness/manipulation checks | 75 | no | — |
viewevidence_json{
"evidence": "Pricing paths use `consult()` directly for collateral and oneBTC valuation, and `updateProtocol()` triggers oracle updates without validating resulting price freshness or deviation.",
"locations": [
"contracts/Contract.sol:1046",
"contracts/Contract.sol:1161",
"contracts/Contract.sol:1186"
],
"recommendation": "Enforce minimum TWAP windows and reject oracle data if the last update is too recent or too old. Add sanity bounds (e.g., compare to Chainlink/reference feeds) and circuit breakers to prevent extreme deviations from being used for mint/withdraw calculations.",
"exploit_scenario": "Minting, withdrawals, and reserve-ratio updates rely directly on Uniswap oracle `consult()` results. An attacker who can skew the Uniswap price around an oracle update (especially if the TWAP interval is short) can temporarily distort `getCollateralUsd()`/`getOneTokenUsd()` and then mint under-collateralized oneBTC or redeem for excess collateral, draining reserves."
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0x7222787cf4637de95d51fd05dc8b5b5ae0a82de73b1b8e5a2dfe84d406785b51
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0x7222787cf4637de95d51fd05dc8b5b5ae0a82de73b1b8e5a2dfe84d406785b51",
"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": "0xf196d018",
"selector": "0xf196d018",
"calldata_variants": [
"0xf196d018",
"0xf196d0180000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf1ae3c7f",
"selector": "0xf1ae3c7f",
"calldata_variants": [
"0xf1ae3c7f",
"0xf1ae3c7f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6cad255",
"selector": "0xf6cad255",
"calldata_variants": [
"0xf6cad255",
"0xf6cad2550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfdec254f",
"selector": "0xfdec254f",
"calldata_variants": [
"0xfdec254f",
"0xfdec254f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9144e73",
"selector": "0xe9144e73",
"calldata_variants": [
"0xe9144e73",
"0xe9144e730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe941fa78",
"selector": "0xe941fa78",
"calldata_variants": [
"0xe941fa78",
"0xe941fa780000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeb7afed0",
"selector": "0xeb7afed0",
"calldata_variants": [
"0xeb7afed0",
"0xeb7afed00000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 0,
"create2_count": 2
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x0827c956c91585f0d82513530b5277748f1d878a165480051a21b515a1165ea2
call_targets:
0xc88f47067db2e25851317a2fdae73a22c0777c37
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x0827c956c91585f0d82513530b5277748f1d878a165480051a21b515a1165ea2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xc88f47067db2e25851317a2fdae73a22c0777c37"
],
"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": "0xf196d018",
"selector": "0xf196d018",
"calldata_variants": [
"0xf196d018",
"0xf196d0180000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf1ae3c7f",
"selector": "0xf1ae3c7f",
"calldata_variants": [
"0xf1ae3c7f",
"0xf1ae3c7f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf6cad255",
"selector": "0xf6cad255",
"calldata_variants": [
"0xf6cad255",
"0xf6cad2550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfdec254f",
"selector": "0xfdec254f",
"calldata_variants": [
"0xfdec254f",
"0xfdec254f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9144e73",
"selector": "0xe9144e73",
"calldata_variants": [
"0xe9144e73",
"0xe9144e730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe941fa78",
"selector": "0xe941fa78",
"calldata_variants": [
"0xe941fa78",
"0xe941fa780000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeb7afed0",
"selector": "0xeb7afed0",
"calldata_variants": [
"0xeb7afed0",
"0xeb7afed00000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4055,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4160,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4370,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 22,
"guards_detected": [
{
"pc": 19096,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 21
}
|
| medium | oracle | codex | Chainlink oracle response not validated for freshness/positivity | 75 | no | — |
viewevidence_json{
"evidence": "`getStimulusOracle()` only checks `timeStamp > 0` and casts `price` to `uint256` without verifying positivity or answeredInRound freshness.",
"locations": [
"contracts/Contract.sol:1386"
],
"recommendation": "Validate oracle data: require `price > 0`, `answeredInRound >= roundID`, and `timeStamp` within a max staleness window. Use `decimals()` to scale rather than hard-coded multiplication.",
"exploit_scenario": "If the Chainlink feed returns stale data or a negative/zero price, `getStimulusOracle()` casts the value to `uint256` and accepts it. This can make the stimulus price effectively enormous (on negative cast) or stale, allowing attackers to mint oneBTC with materially less stimulus than intended and later redeem at normal rates, draining collateral when the feed recovers."
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 0,
"create2_count": 2
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 31
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 30
}
|