019bab3b-abda-71cb-bc69-892fbe7a1945
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 |
|---|---|---|---|---|
| 38653 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 38654 | proxy.resolve | complete | 1 / 3 | 3 months ago |
| 38655 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 38656 | analysis.bundle | complete | 1 / 3 | 3 months ago |
| 38657 | capability.graph | complete | 1 / 3 | 3 months ago |
| 38658 | detector.run | complete | 1 / 3 | 3 months ago |
| 38659 | validation.fork | complete | 1 / 3 | 3 months ago |
| 39113 | report.consolidate | complete | 1 / 6 | 3 months ago |
| 39114 | tool.slither | failed | 2 / 2 | 3 months ago |
{
"status": "not_proxy"
}
Traceback (most recent call last):
File "/var/www/tripwire/worker/worker.py", line 199, in main
laravel_client.complete_job(job_id, payload if payload else None)
~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/worker/laravel_client.py", line 27, in complete_job
return self._post(f"/internal/jobs/{job_id}/complete", payload=payload)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/worker/laravel_client.py", line 17, in _post
response.raise_for_status()
~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/requests/models.py", line 1026, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: https://tripwire.topgun.bot/internal/jobs/39114/complete
{"no_findings":false,"summary":"Found 3 issues: ETH buy path can spend contract ETH without enforcing msg.value, ERC20 transfer return values are unchecked in collateral/underlying payouts, and collateralization relies on a manipulable spot oracle without safeguards.","findings":[{"severity":"medium","category":"other","title":"ETH oToken purchases can spend the contract’s ETH balance without enforcing msg.value","exploit_scenario":"If the OptionsExchange contract has any ETH balance (e.g., from prior overpayments or forced ETH transfers), an attacker can call buyOTokens with paymentTokenAddress = address(0) and msg.value = 0. The function uses the contract’s balance to pay Uniswap, sending oTokens to the attacker and draining the contract’s ETH.","recommendation":"Require msg.value to be at least the computed ethToTransfer, use msg.value as the sole source of ETH for the swap, and refund any excess. Revert if msg.value is insufficient.","evidence":"buyOTokens forwards to uniswapBuyOToken without checking msg.value; in the ETH branch, ethToTokenTransferOutput is called with ethToTransfer from contract balance and no msg.value validation.","locations":["contracts/OptionsExchange.sol:731","contracts/OptionsExchange.sol:879"]},{"severity":"medium","category":"other","title":"Unchecked ERC20 transfers in collateral/underlying payouts can break accounting and lock funds","exploit_scenario":"If the collateral/underlying token is non-standard (returns false), fee-on-transfer, or otherwise misbehaves, the contract updates vault balances and then performs transfers without checking success or actual amounts received/sent. This can zero out user balances or under-collateralize the system while transfers silently fail or transfer less than expected.","recommendation":"Use SafeERC20 (or explicit return-value checks) for all ERC20 transfers/transferFrom, and for fee-on-transfer tokens, compute actual received amounts by balance diffs before updating vault accounting.","evidence":"transferCollateral and transferUnderlying call ERC20 transfer without checking return values; these are used after state updates in removeCollateral, redeemVaultBalance, and _exercise.","locations":["contracts/OptionsContract.sol:1631","contracts/OptionsContract.sol:1658","contracts/OptionsContract.sol:1887","contracts/OptionsContract.sol:2058","contracts/OptionsContract.sol:2071"]},{"severity":"medium","category":"oracle","title":"Collateralization relies on a manipulable spot oracle without freshness or sanity checks","exploit_scenario":"An attacker can manipulate the oracle price (e.g., if COMPOUND_ORACLE is Uniswap-based or otherwise influenceable) to inflate collateral value or deflate strike value, enabling under-collateralized minting or avoiding liquidation during a manipulated window.","recommendation":"Use a robust oracle (e.g., Chainlink or TWAP), enforce price freshness, and add sanity bounds or circuit breakers to prevent minting/liquidation on anomalous prices.","evidence":"isSafe and pricing calculations directly consume COMPOUND_ORACLE.getPrice without any checks for staleness or manipulation resistance.","locations":["contracts/OptionsContract.sol:1927","contracts/OptionsContract.sol:2083"]}]}
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-y0wa8yux
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019babc4-3fa3-7e00-a290-1b5918a4e3c3
--------
user
You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
Scope rules:
- You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party Solidity sources in this workspace.
- Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
- If there are only dependency files and no first-party sources, set no_findings=true and explain in summary.
Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
Output constraints (IMPORTANT):
- severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
- category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
Keep summary short and concrete.
mcp startup: no servers
thinking
**Reading AUDIT_BUNDLE file**
exec
/bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-y0wa8yux succeeded in 9ms:
This file concatenates the full contents of first-party Solidity sources for auditing.
Do not treat dependency code under lib/ or @openzeppelin/ as first-party.
================================================================================
FILE: contracts/Contract.sol
================================================================================
// File: @openzeppelin/contracts/GSN/Context.sol
pragma solidity ^0.5.0;
/*
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with GSN meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
thinking
**Planning to locate full contract definitions**
exec
/bin/bash -lc 'rg -n "contract Options|contract OptionsExchange|contract Controller|contract|library" AUDIT_BUNDLE.txt' in /tmp/codex-y0wa8yux succeeded in 9ms:
5:FILE: contracts/Contract.sol
7:// File: @openzeppelin/contracts/GSN/Context.sol
19: * This contract is only required for intermediate, library-like contracts.
21:contract Context {
23: // an instance of this contract, which should be used via inheritance.
37:// File: @openzeppelin/contracts/token/ERC20/IERC20.sol
116:// File: @openzeppelin/contracts/math/SafeMath.sol
130: * Using this library instead of the unchecked operations eliminates an entire
133:library SafeMath {
193: // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
275:// File: @openzeppelin/contracts/token/ERC20/ERC20.sol
286: * that a supply mechanism has to be added in a derived contract using {_mint}.
306:contract ERC20 is Context, IERC20 {
507:// File: contracts/lib/CompoundOracleInterface.sol
512:contract CompoundOracleInterface {
523: * @return uint mantissa of asset price (scaled by 1e18) or zero if unset or contract paused
533:// File: contracts/lib/UniswapExchangeInterface.sol
539:contract UniswapExchangeInterface {
586:// File: contracts/lib/UniswapFactoryInterface.sol
592:contract UniswapFactoryInterface {
thinking
**Exploring Options-related modules**
exec
/bin/bash -lc "sed -n '619,980p' AUDIT_BUNDLE.txt" in /tmp/codex-y0wa8yux succeeded in 18ms:
// File: contracts/OptionsUtils.sol
pragma solidity 0.5.10;
contract OptionsUtils {
// defauls are for mainnet
UniswapFactoryInterface public UNISWAP_FACTORY;
CompoundOracleInterface public COMPOUND_ORACLE;
constructor(address _uniswapFactory, address _compoundOracle) public {
UNISWAP_FACTORY = UniswapFactoryInterface(_uniswapFactory);
COMPOUND_ORACLE = CompoundOracleInterface(_compoundOracle);
}
// TODO: for now gets Uniswap, later update to get other exchanges
thinking
**Reviewing OptionsContract section**
exec
/bin/bash -lc "sed -n '1065,1815p' AUDIT_BUNDLE.txt" in /tmp/codex-y0wa8yux succeeded in 7ms:
// File: contracts/OptionsContract.sol
pragma solidity 0.5.10;
/**
* @title Opyn's Options Contract
* @author Opyn
*/
contract OptionsContract is Ownable, ERC20 {
using SafeMath for uint256;
thinking
**Continuing to review exercise code**
exec
/bin/bash -lc "sed -n '1810,2105p' AUDIT_BUNDLE.txt" in /tmp/codex-y0wa8yux succeeded in 26ms:
* The user has to allow the contract to handle their oTokens and underlying on his behalf before these functions are called.
* @param oTokensToExercise the number of oTokens being exercised.
* @param vaultToExerciseFrom the address of the vaultOwner to take collateral from.
* @dev oTokenExchangeRate is the number of underlying tokens that 1 oToken protects.
*/
function _exercise(
uint256 oTokensToExercise,
address payable vaultToExerciseFrom
) internal {
// 1. before exercise window: revert
require(
isExerciseWindow(),
"Can't exercise outside of the exercise window"
);
require(hasVault(vaultToExerciseFrom), "Vault does not exist");
Vault storage vault = vaults[vaultToExerciseFrom];
require(oTokensToExercise > 0, "Can't exercise 0 oTokens");
// Check correct amount of oTokens passed in)
thinking
**Summarizing potential vulnerabilities and risks**
I’m analyzing various smart contract functions for vulnerabilities like unchecked ERC20 transfer return values that can cause fund loss, possible reentrancy through malicious tokens, and oracle manipulation risks from using an open Compound price oracle. The biggest issues include the OptionsExchange ETH buy path allowing contract ETH to be drained without proper msg.value checks, and accounting mismatches from non-standard token behaviors. There are also bugs like uninitialized memory in getVaultOwners that cause reverts but aren’t security threats. Overall, the unchecked token transfers and oracle reliance stand out as medium-severity risks worth highlighting.
thinking
**Clarifying oracle and token transfer checks with file references**
I’m verifying that the external oracle price usage is noted as a manipulation risk but expected for collateral checks. I also reviewed addERC20Collateral’s order of transferFrom before checking vault ownership, concluding no issue due to atomic reverts on failure. I’m planning to provide file paths and approximate line numbers for key findings, using tools to locate function definitions and correlate them to lines in the audit bundle and source files for clearer referencing.
exec
/bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '700,860p'" in /tmp/codex-y0wa8yux succeeded in 7ms:
700 * @param payoutTokenAddress The address of the token to receive the premiums in
701 * @param oTokensToSell The number of oTokens to sell
702 */
703 function sellOTokens(
704 address payable receiver,
705 address oTokenAddress,
706 address payoutTokenAddress,
707 uint256 oTokensToSell
708 ) public {
709 // @note: first need to bootstrap the uniswap exchange to get the address.
710 IERC20 oToken = IERC20(oTokenAddress);
711 IERC20 payoutToken = IERC20(payoutTokenAddress);
712 oToken.transferFrom(msg.sender, address(this), oTokensToSell);
713 uniswapSellOToken(oToken, payoutToken, oTokensToSell, receiver);
714
715 emit SellOTokens(
716 msg.sender,
717 receiver,
718 oTokenAddress,
719 payoutTokenAddress,
exec
/bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '860,980p'" in /tmp/codex-y0wa8yux succeeded in 29ms:
860
861 emit BuyOTokens(
862 msg.sender,
863 _transferTo,
864 address(oToken),
865 address(paymentToken),
866 _amt,
867 paymentTokensToTransfer
868 );
869
870 return
871 exchange.tokenToTokenTransferInput(
872 paymentTokensToTransfer,
873 1,
874 1,
875 LARGE_BLOCK_SIZE,
876 _transferTo,
877 address(oToken)
878 );
879 } else {
thinking
**Adding line numbers around OptionsContract methods**
exec
/bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '1280,1600p'" in /tmp/codex-y0wa8yux succeeded in 18ms:
1280 * @dev Throws if called Options contract is expired.
1281 */
1282 modifier notExpired() {
1283 require(!hasExpired(), "Options contract expired");
1284 _;
1285 }
1286
1287 /**
1288 * @notice This function gets the array of vaultOwners
1289 */
1290 function getVaultOwners() public view returns (address payable[] memory) {
1291 address payable[] memory owners;
1292 uint256 index = 0;
1293 for (uint256 i = 0; i < vaultOwners.length; i++) {
1294 if (hasVault(vaultOwners[i])) {
1295 owners[index] = vaultOwners[i];
1296 index++;
1297 }
1298 }
1299
thinking
**Noting partial review of transferCollateral**
exec
/bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '1600,2000p'" in /tmp/codex-y0wa8yux succeeded in 7ms:
1600 Vault storage vault = vaults[msg.sender];
1601
1602 vault.oTokensIssued = vault.oTokensIssued.sub(amtToBurn);
1603 _burn(msg.sender, amtToBurn);
1604
1605 emit BurnOTokens(msg.sender, amtToBurn);
1606 }
1607
1608 /**
1609 * @notice allows the owner to remove excess collateral from the vault before expiry. Removing collateral lowers
1610 * the collateralization ratio of the vault.
1611 * @param amtToRemove Amount of collateral to remove in 10^-18.
1612 */
1613 function removeCollateral(uint256 amtToRemove) public notExpired {
1614 require(amtToRemove > 0, "Cannot remove 0 collateral");
1615 require(hasVault(msg.sender), "Vault does not exist");
1616
1617 Vault storage vault = vaults[msg.sender];
1618 require(
1619 amtToRemove <= getCollateral(msg.sender),
thinking
**Searching for transferCollateral code**
exec
/bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '2000,2085p'" in /tmp/codex-y0wa8yux succeeded in 7ms:
2000 if (numeratorExp < denomExp) {
2001 exp = uint256(denomExp - numeratorExp);
2002 numOptions = numeratorVal.div(denomVal.mul(10**exp));
2003 } else {
2004 exp = uint256(numeratorExp - denomExp);
2005 numOptions = numeratorVal.mul(10**exp).div(denomVal);
2006 }
2007
2008 return numOptions;
2009 }
2010
2011 /**
2012 * @notice This function calculates the amount of collateral to be paid out.
2013 * @dev The amount of collateral to paid out is determined by:
2014 * (proportion * strikePrice * strikeToCollateralPrice * oTokens) amount of collateral.
2015 * @param _oTokens The number of oTokens.
2016 * @param proportion The proportion of the collateral to pay out. If 100% of collateral
2017 * should be paid out, pass in Number(1, 0). The proportion might be less than 100% if
2018 * you are calculating fees.
2019 */
thinking
**Summarizing security audit findings**
I’m putting together a clear JSON summary describing three medium-severity issues: ETH buy paths risking contract ETH loss due to unchecked msg.value, unchecked ERC20 transfer return values causing possible under-collateralization, and oracle price manipulation risks from reliance on spot prices without sanity checks. Each finding includes concise exploit scenarios, recommendations, and approximate file locations for evidence.
codex
{"no_findings":false,"summary":"Found 3 issues: ETH buy path can spend contract ETH without enforcing msg.value, ERC20 transfer return values are unchecked in collateral/underlying payouts, and collateralization relies on a manipulable spot oracle without safeguards.","findings":[{"severity":"medium","category":"other","title":"ETH oToken purchases can spend the contract’s ETH balance without enforcing msg.value","exploit_scenario":"If the OptionsExchange contract has any ETH balance (e.g., from prior overpayments or forced ETH transfers), an attacker can call buyOTokens with paymentTokenAddress = address(0) and msg.value = 0. The function uses the contract’s balance to pay Uniswap, sending oTokens to the attacker and draining the contract’s ETH.","recommendation":"Require msg.value to be at least the computed ethToTransfer, use msg.value as the sole source of ETH for the swap, and refund any excess. Revert if msg.value is insufficient.","evidence":"buyOTokens forwards to uniswapBuyOToken without checking msg.value; in the ETH branch, ethToTokenTransferOutput is called with ethToTransfer from contract balance and no msg.value validation.","locations":["contracts/OptionsExchange.sol:731","contracts/OptionsExchange.sol:879"]},{"severity":"medium","category":"other","title":"Unchecked ERC20 transfers in collateral/underlying payouts can break accounting and lock funds","exploit_scenario":"If the collateral/underlying token is non-standard (returns false), fee-on-transfer, or otherwise misbehaves, the contract updates vault balances and then performs transfers without checking success or actual amounts received/sent. This can zero out user balances or under-collateralize the system while transfers silently fail or transfer less than expected.","recommendation":"Use SafeERC20 (or explicit return-value checks) for all ERC20 transfers/transferFrom, and for fee-on-transfer tokens, compute actual received amounts by balance diffs before updating vault accounting.","evidence":"transferCollateral and transferUnderlying call ERC20 transfer without checking return values; these are used after state updates in removeCollateral, redeemVaultBalance, and _exercise.","locations":["contracts/OptionsContract.sol:1631","contracts/OptionsContract.sol:1658","contracts/OptionsContract.sol:1887","contracts/OptionsContract.sol:2058","contracts/OptionsContract.sol:2071"]},{"severity":"medium","category":"oracle","title":"Collateralization relies on a manipulable spot oracle without freshness or sanity checks","exploit_scenario":"An attacker can manipulate the oracle price (e.g., if COMPOUND_ORACLE is Uniswap-based or otherwise influenceable) to inflate collateral value or deflate strike value, enabling under-collateralized minting or avoiding liquidation during a manipulated window.","recommendation":"Use a robust oracle (e.g., Chainlink or TWAP), enforce price freshness, and add sanity bounds or circuit breakers to prevent minting/liquidation on anomalous prices.","evidence":"isSafe and pricing calculations directly consume COMPOUND_ORACLE.getPrice without any checks for staleness or manipulation resistance.","locations":["contracts/OptionsContract.sol:1927","contracts/OptionsContract.sol:2083"]}]}
tokens used
47,065
{
"codex": {
"ran_at": "2026-01-11T06:37:59.894687+00:00",
"returncode": 0
},
"project": {
"mode": "source",
"file_count": 1,
"import_count": 0,
"first_party_contracts_count": 1
},
"summary": "Found 3 issues: ETH buy path can spend contract ETH without enforcing msg.value, ERC20 transfer return values are unchecked in collateral/underlying payouts, and collateralization relies on a manipulable spot oracle without safeguards.",
"raw_final": {
"summary": "Found 3 issues: ETH buy path can spend contract ETH without enforcing msg.value, ERC20 transfer return values are unchecked in collateral/underlying payouts, and collateralization relies on a manipulable spot oracle without safeguards.",
"findings": [
{
"title": "ETH oToken purchases can spend the contract\u2019s ETH balance without enforcing msg.value",
"category": "other",
"evidence": "buyOTokens forwards to uniswapBuyOToken without checking msg.value; in the ETH branch, ethToTokenTransferOutput is called with ethToTransfer from contract balance and no msg.value validation.",
"severity": "medium",
"locations": [
"contracts/OptionsExchange.sol:731",
"contracts/OptionsExchange.sol:879"
],
"recommendation": "Require msg.value to be at least the computed ethToTransfer, use msg.value as the sole source of ETH for the swap, and refund any excess. Revert if msg.value is insufficient.",
"exploit_scenario": "If the OptionsExchange contract has any ETH balance (e.g., from prior overpayments or forced ETH transfers), an attacker can call buyOTokens with paymentTokenAddress = address(0) and msg.value = 0. The function uses the contract\u2019s balance to pay Uniswap, sending oTokens to the attacker and draining the contract\u2019s ETH."
},
{
"title": "Unchecked ERC20 transfers in collateral/underlying payouts can break accounting and lock funds",
"category": "other",
"evidence": "transferCollateral and transferUnderlying call ERC20 transfer without checking return values; these are used after state updates in removeCollateral, redeemVaultBalance, and _exercise.",
"severity": "medium",
"locations": [
"contracts/OptionsContract.sol:1631",
"contracts/OptionsContract.sol:1658",
"contracts/OptionsContract.sol:1887",
"contracts/OptionsContract.sol:2058",
"contracts/OptionsContract.sol:2071"
],
"recommendation": "Use SafeERC20 (or explicit return-value checks) for all ERC20 transfers/transferFrom, and for fee-on-transfer tokens, compute actual received amounts by balance diffs before updating vault accounting.",
"exploit_scenario": "If the collateral/underlying token is non-standard (returns false), fee-on-transfer, or otherwise misbehaves, the contract updates vault balances and then performs transfers without checking success or actual amounts received/sent. This can zero out user balances or under-collateralize the system while transfers silently fail or transfer less than expected."
},
{
"title": "Collateralization relies on a manipulable spot oracle without freshness or sanity checks",
"category": "oracle",
"evidence": "isSafe and pricing calculations directly consume COMPOUND_ORACLE.getPrice without any checks for staleness or manipulation resistance.",
"severity": "medium",
"locations": [
"contracts/OptionsContract.sol:1927",
"contracts/OptionsContract.sol:2083"
],
"recommendation": "Use a robust oracle (e.g., Chainlink or TWAP), enforce price freshness, and add sanity bounds or circuit breakers to prevent minting/liquidation on anomalous prices.",
"exploit_scenario": "An attacker can manipulate the oracle price (e.g., if COMPOUND_ORACLE is Uniswap-based or otherwise influenceable) to inflate collateral value or deflate strike value, enabling under-collateralized minting or avoiding liquidation during a manipulated window."
}
],
"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 0x0397 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x90e64d13 00000019: GT 0000001a: PUSH2 0x01dc 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xc52987cf 00000024: GT 00000025: PUSH2 0x0102 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xe184c9be 0000002f: GT 00000030: PUSH2 0x00a0 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xee1eab4f 0000003a: GT 0000003b: PUSH2 0x006f 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xee1eab4f 00000045: EQ 00000046: PUSH2 0x0ed3 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xf2fde38b 00000050: EQ 00000051: PUSH2 0x0f0f 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf70a2508 0000005b: EQ 0000005c: PUSH2 0x0f42 0000005f: JUMPI 00000060: DUP1 00000061: PUSH4 0xfaa2041f 00000066: EQ 00000067: PUSH2 0x0f75 0000006a: JUMPI 0000006b: PUSH2 0x0397 0000006e: JUMP 0000006f: JUMPDEST 00000070: DUP1 00000071: PUSH4 0xe184c9be 00000076: EQ 00000077: PUSH2 0x0e35 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xea8c4bcf 00000081: EQ 00000082: PUSH2 0x0e4a 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xeaa376b5 0000008c: EQ 0000008d: PUSH2 0x0e7d 00000090: JUMPI 00000091: DUP1 00000092: PUSH4 0xed1f41c3 00000097: EQ 00000098: PUSH2 0x0ea7 0000009b: JUMPI 0000009c: PUSH2 0x0397 0000009f: JUMP 000000a0: JUMPDEST 000000a1: DUP1 000000a2: PUSH4 0xcfbea789 000000a7: GT 000000a8: PUSH2 0x00dc 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xcfbea789 000000b2: EQ 000000b3: PUSH2 0x0d86 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xd8dfeb45 000000bd: EQ 000000be: PUSH2 0x0db2 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xdd62ed3e 000000c8: EQ 000000c9: PUSH2 0x0dc7 000000cc: JUMPI 000000cd: DUP1 000000ce: PUSH4 0xdec44c0b 000000d3: EQ 000000d4: PUSH2 0x0e02 000000d7: JUMPI 000000d8: PUSH2 0x0397 000000db: JUMP 000000dc: JUMPDEST 000000dd: DUP1 000000de: PUSH4 0xc52987cf 000000e3: EQ 000000e4: PUSH2 0x0cff 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0xc56749ce 000000ee: EQ 000000ef: PUSH2 0x0d14 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0xcdb4b5c2 000000f9: EQ 000000fa: PUSH2 0x0d53 000000fd: JUMPI 000000fe: PUSH2 0x0397 00000101: JUMP 00000102: JUMPDEST 00000103: DUP1 00000104: PUSH4 0xb2c2b13f 00000109: GT 0000010a: PUSH2 0x017a 0000010d: JUMPI 0000010e: DUP1 0000010f: PUSH4 0xb7b090ee 00000114: GT 00000115: PUSH2 0x0149 00000118: JUMPI 00000119: DUP1 0000011a: PUSH4 0xb7b090ee 0000011f: EQ 00000120: PUSH2 0x0b4f 00000123: JUMPI 00000124: DUP1 00000125: PUSH4 0xb96661ba 0000012a: EQ 0000012b: PUSH2 0x0c85 0000012e: JUMPI 0000012f: DUP1 00000130: PUSH4 0xba1be554 00000135: EQ 00000136: PUSH2 0x0cb1 00000139: JUMPI 0000013a: DUP1 0000013b: PUSH4 0xbcbaf487 00000140: EQ 00000141: PUSH2 0x0cc6 00000144: JUMPI 00000145: PUSH2 0x0397 00000148: JUMP 00000149: JUMPDEST 0000014a: DUP1 0000014b: PUSH4 0xb2c2b13f 00000150: EQ 00000151: PUSH2 0x0ae2 00000154: JUMPI 00000155: DUP1 00000156: PUSH4 0xb6e61c08 0000015b: EQ 0000015c: PUSH2 0x0b10 0000015f: JUMPI 00000160: DUP1 00000161: PUSH4 0xb7365540 00000166: EQ 00000167: PUSH2 0x0b25 0000016a: JUMPI 0000016b: DUP1 0000016c: PUSH4 0xb76fdb6c 00000171: EQ 00000172: PUSH2 0x0b3a 00000175: JUMPI 00000176: PUSH2 0x0397 00000179: JUMP 0000017a: JUMPDEST 0000017b: DUP1 0000017c: PUSH4 0x9ed3edf0 00000181: GT 00000182: PUSH2 0x01b6 00000185: JUMPI 00000186: DUP1 00000187: PUSH4 0x9ed3edf0 0000018c: EQ 0000018d: PUSH2 0x0a46 00000190: JUMPI 00000191: DUP1 00000192: PUSH4 0xa457c2d7 00000197: EQ 00000198: PUSH2 0x0a5b 0000019b: JUMPI 0000019c: DUP1 0000019d: PUSH4 0xa9059cbb 000001a2: EQ 000001a3: PUSH2 0x0a94 000001a6: JUMPI 000001a7: DUP1 000001a8: PUSH4 0xad8f5008 000001ad: EQ 000001ae: PUSH2 0x0acd 000001b1: JUMPI 000001b2: PUSH2 0x0397 000001b5: JUMP 000001b6: JUMPDEST 000001b7: DUP1 000001b8: PUSH4 0x90e64d13 000001bd: EQ 000001be: PUSH2 0x09f6 000001c1: JUMPI 000001c2: DUP1 000001c3: PUSH4 0x95d89b41 000001c8: EQ 000001c9: PUSH2 0x0a0b 000001cc: JUMPI 000001cd: DUP1 000001ce: PUSH4 0x9ce07251 000001d3: EQ 000001d4: PUSH2 0x0a20 000001d7: JUMPI 000001d8: PUSH2 0x0397 000001db: JUMP 000001dc: JUMPDEST 000001dd: DUP1 000001de: PUSH4 0x39509351 000001e3: GT 000001e4: PUSH2 0x02c1 000001e7: JUMPI 000001e8: DUP1 000001e9: PUSH4 0x6fd865f9 000001ee: GT 000001ef: PUSH2 0x025f 000001f2: JUMPI 000001f3: DUP1 000001f4: PUSH4 0x8a5e8cc7 000001f9: GT 000001fa: PUSH2 0x022e 000001fd: JUMPI 000001fe: DUP1 000001ff: PUSH4 0x8a5e8cc7 00000204: EQ 00000205: PUSH2 0x09a2 00000208: JUMPI 00000209: DUP1 0000020a: PUSH4 0x8c765e94 0000020f: EQ 00000210: PUSH2 0x09b7 00000213: JUMPI 00000214: DUP1 00000215: PUSH4 0x8da5cb5b 0000021a: EQ 0000021b: PUSH2 0x09cc 0000021e: JUMPI 0000021f: DUP1 00000220: PUSH4 0x8f32d59b 00000225: EQ 00000226: PUSH2 0x09e1 00000229: JUMPI 0000022a: PUSH2 0x0397 0000022d: JUMP 0000022e: JUMPDEST 0000022f: DUP1 00000230: PUSH4 0x6fd865f9 00000235: EQ 00000236: PUSH2 0x091b 00000239: JUMPI 0000023a: DUP1 0000023b: PUSH4 0x70a08231 00000240: EQ 00000241: PUSH2 0x0945 00000244: JUMPI 00000245: DUP1 00000246: PUSH4 0x715018a6 0000024b: EQ 0000024c: PUSH2 0x0978 0000024f: JUMPI 00000250: DUP1 00000251: PUSH4 0x86f54712 00000256: EQ 00000257: PUSH2 0x098d 0000025a: JUMPI 0000025b: PUSH2 0x0397 0000025e: JUMP 0000025f: JUMPDEST 00000260: DUP1 00000261: PUSH4 0x58b36dac 00000266: GT 00000267: PUSH2 0x029b 0000026a: JUMPI 0000026b: DUP1 0000026c: PUSH4 0x58b36dac 00000271: EQ 00000272: PUSH2 0x07f5 00000275: JUMPI 00000276: DUP1 00000277: PUSH4 0x5ca7c8a6 0000027c: EQ 0000027d: PUSH2 0x089d 00000280: JUMPI 00000281: DUP1 00000282: PUSH4 0x686c1e21 00000287: EQ 00000288: PUSH2 0x08dc 0000028b: JUMPI 0000028c: DUP1 0000028d: PUSH4 0x6f307dc3 00000292: EQ 00000293: PUSH2 0x0906 00000296: JUMPI 00000297: PUSH2 0x0397 0000029a: JUMP 0000029b: JUMPDEST 0000029c: DUP1 0000029d: PUSH4 0x39509351 000002a2: EQ 000002a3: PUSH2 0x074c 000002a6: JUMPI 000002a7: DUP1 000002a8: PUSH4 0x3bd33f62 000002ad: EQ 000002ae: PUSH2 0x0785 000002b1: JUMPI 000002b2: DUP1 000002b3: PUSH4 0x52f89fe3 000002b8: EQ 000002b9: PUSH2 0x07b6 000002bc: JUMPI 000002bd: PUSH2 0x0397 000002c0: JUMP 000002c1: JUMPDEST 000002c2: DUP1 000002c3: PUSH4 0x18160ddd 000002c8: GT 000002c9: PUSH2 0x0339 000002cc: JUMPI 000002cd: DUP1 000002ce: PUSH4 0x3226052d 000002d3: GT 000002d4: PUSH2 0x0308 000002d7: JUMPI 000002d8: DUP1 000002d9: PUSH4 0x3226052d 000002de: EQ 000002df: PUSH2 0x0684 000002e2: JUMPI 000002e3: DUP1 000002e4: PUSH4 0x3237c158 000002e9: EQ 000002ea: PUSH2 0x06c3 000002ed: JUMPI 000002ee: DUP1 000002ef: PUSH4 0x352ade55 000002f4: EQ 000002f5: PUSH2 0x06ed 000002f8: JUMPI 000002f9: DUP1 000002fa: PUSH4 0x3667429f 000002ff: EQ 00000300: PUSH2 0x0720 00000303: JUMPI 00000304: PUSH2 0x0397 00000307: JUMP 00000308: JUMPDEST 00000309: DUP1 0000030a: PUSH4 0x18160ddd 0000030f: EQ 00000310: PUSH2 0x05c6 00000313: JUMPI 00000314: DUP1 00000315: PUSH4 0x1a0e21bd 0000031a: EQ 0000031b: PUSH2 0x05db 0000031e: JUMPI 0000031f: DUP1 00000320: PUSH4 0x23b872dd 00000325: EQ 00000326: PUSH2 0x0616 00000329: JUMPI 0000032a: DUP1 0000032b: PUSH4 0x313ce567 00000330: EQ 00000331: PUSH2 0x0659 00000334: JUMPI 00000335: PUSH2 0x0397 00000338: JUMP 00000339: JUMPDEST 0000033a: DUP1 0000033b: PUSH4 0x095ea7b3 00000340: GT 00000341: PUSH2 0x0375 00000344: JUMPI 00000345: DUP1 00000346: PUSH4 0x095ea7b3 0000034b: EQ 0000034c: PUSH2 0x04d6 0000034f: JUMPI 00000350: DUP1 00000351: PUSH4 0x0d453efb 00000356: EQ 00000357: PUSH2 0x0523 0000035a: JUMPI 0000035b: DUP1 0000035c: PUSH4 0x0d6cd8aa 00000361: EQ 00000362: PUSH2 0x0556 00000365: JUMPI 00000366: DUP1 00000367: PUSH4 0x0eb9af38 0000036c: EQ 0000036d: PUSH2 0x056b 00000370: JUMPI 00000371: PUSH2 0x0397 00000374: JUMP 00000375: JUMPDEST 00000376: DUP1 00000377: PUSH4 0x01b4a3c1 0000037c: EQ 0000037d: PUSH2 0x039c 00000380: JUMPI 00000381: DUP1 00000382: PUSH4 0x060ab2ea 00000387: EQ 00000388: PUSH2 0x03e7 0000038b: JUMPI 0000038c: DUP1 0000038d: PUSH4 0x06fdde03 00000392: EQ 00000393: PUSH2 0x044c 00000396: JUMPI 00000397: JUMPDEST 00000398: PUSH1 0x00 0000039a: DUP1 0000039b: REVERT 0000039c: JUMPDEST 0000039d: CALLVALUE 0000039e: DUP1 0000039f: ISZERO 000003a0: PUSH2 0x03a8 000003a3: JUMPI 000003a4: PUSH1 0x00 000003a6: DUP1 000003a7: REVERT 000003a8: JUMPDEST 000003a9: POP 000003aa: PUSH2 0x03d5 000003ad: PUSH1 0x04 000003af: DUP1 000003b0: CALLDATASIZE 000003b1: SUB 000003b2: PUSH1 0x40 000003b4: DUP2 000003b5: LT 000003b6: ISZERO 000003b7: PUSH2 0x03bf 000003ba: JUMPI 000003bb: PUSH1 0x00 000003bd: DUP1 000003be: REVERT 000003bf: JUMPDEST 000003c0: POP 000003c1: PUSH1 0x01 000003c3: PUSH1 0x01 000003c5: PUSH1 0xa0 000003c7: SHL 000003c8: SUB 000003c9: DUP2 000003ca: CALLDATALOAD 000003cb: AND 000003cc: SWAP1 000003cd: PUSH1 0x20 000003cf: ADD 000003d0: CALLDATALOAD 000003d1: PUSH2 0x0f8a 000003d4: JUMP 000003d5: JUMPDEST 000003d6: PUSH1 0x40 000003d8: DUP1 000003d9: MLOAD 000003da: SWAP2 000003db: DUP3 000003dc: MSTORE 000003dd: MLOAD 000003de: SWAP1 000003df: DUP2 000003e0: SWAP1 000003e1: SUB 000003e2: PUSH1 0x20 000003e4: ADD 000003e5: SWAP1 000003e6: RETURN 000003e7: JUMPDEST 000003e8: CALLVALUE 000003e9: DUP1 000003ea: ISZERO 000003eb: PUSH2 0x03f3 000003ee: JUMPI 000003ef: PUSH1 0x00 000003f1: DUP1 000003f2: REVERT 000003f3: JUMPDEST 000003f4: POP 000003f5: PUSH2 0x03fc 000003f8: PUSH2 0x113e 000003fb: JUMP 000003fc: JUMPDEST 000003fd: PUSH1 0x40 000003ff: DUP1 00000400: MLOAD 00000401: PUSH1 0x20 00000403: DUP1 00000404: DUP3 00000405: MSTORE 00000406: DUP4 00000407: MLOAD 00000408: DUP2 00000409: DUP4 0000040a: ADD 0000040b: MSTORE 0000040c: DUP4 0000040d: MLOAD 0000040e: SWAP2 0000040f: SWAP3 00000410: DUP4 00000411: SWAP3 00000412: SWAP1 00000413: DUP4 00000414: ADD 00000415: SWAP2 00000416: DUP6 00000417: DUP2 00000418: ADD 00000419: SWAP2 0000041a: MUL 0000041b: DUP1 0000041c: DUP4 0000041d: DUP4 0000041e: PUSH1 0x00 00000420: JUMPDEST 00000421: DUP4 00000422: DUP2 00000423: LT 00000424: ISZERO 00000425: PUSH2 0x0438 00000428: JUMPI 00000429: DUP2 0000042a: DUP2 0000042b: ADD 0000042c: MLOAD 0000042d: DUP4 0000042e: DUP3 0000042f: ADD 00000430: MSTORE 00000431: PUSH1 0x20 00000433: ADD 00000434: PUSH2 0x0420 00000437: JUMP 00000438: JUMPDEST 00000439: POP 0000043a: POP 0000043b: POP 0000043c: POP 0000043d: SWAP1 0000043e: POP 0000043f: ADD 00000440: SWAP3 00000441: POP 00000442: POP 00000443: POP 00000444: PUSH1 0x40 00000446: MLOAD 00000447: DUP1 00000448: SWAP2 00000449: SUB 0000044a: SWAP1 0000044b: RETURN 0000044c: JUMPDEST 0000044d: CALLVALUE 0000044e: DUP1 0000044f: ISZERO 00000450: PUSH2 0x0458 00000453: JUMPI 00000454: PUSH1 0x00 00000456: DUP1 00000457: REVERT 00000458: JUMPDEST 00000459: POP 0000045a: PUSH2 0x0461 0000045d: PUSH2 0x11e5 00000460: JUMP 00000461: JUMPDEST 00000462: PUSH1 0x40 00000464: DUP1 00000465: MLOAD 00000466: PUSH1 0x20 00000468: DUP1 00000469: DUP3 0000046a: MSTORE 0000046b: DUP4 0000046c: MLOAD 0000046d: DUP2 0000046e: DUP4 0000046f: ADD 00000470: MSTORE 00000471: DUP4 00000472: MLOAD 00000473: SWAP2 00000474: SWAP3 00000475: DUP4 00000476: SWAP3 00000477: SWAP1 00000478: DUP4 00000479: ADD 0000047a: SWAP2 0000047b: DUP6 0000047c: ADD 0000047d: SWAP1 0000047e: DUP1 0000047f: DUP4 00000480: DUP4 00000481: PUSH1 0x00 00000483: JUMPDEST 00000484: DUP4 00000485: DUP2 00000486: LT 00000487: ISZERO 00000488: PUSH2 0x049b 0000048b: JUMPI 0000048c: DUP2 0000048d: DUP2 0000048e: ADD 0000048f: MLOAD 00000490: DUP4 00000491: DUP3 00000492: ADD 00000493: MSTORE 00000494: PUSH1 0x20 00000496: ADD 00000497: PUSH2 0x0483 0000049a: JUMP 0000049b: JUMPDEST 0000049c: POP 0000049d: POP 0000049e: POP 0000049f: POP 000004a0: SWAP1 000004a1: POP 000004a2: SWAP1 000004a3: DUP2 000004a4: ADD 000004a5: SWAP1 000004a6: PUSH1 0x1f 000004a8: AND 000004a9: DUP1 000004aa: ISZERO 000004ab: PUSH2 0x04c8 000004ae: JUMPI 000004af: DUP1 000004b0: DUP3 000004b1: SUB 000004b2: DUP1 000004b3: MLOAD 000004b4: PUSH1 0x01 000004b6: DUP4 000004b7: PUSH1 0x20 000004b9: SUB 000004ba: PUSH2 0x0100 000004bd: EXP 000004be: SUB 000004bf: NOT 000004c0: AND 000004c1: DUP2 000004c2: MSTORE 000004c3: PUSH1 0x20 000004c5: ADD 000004c6: SWAP2 000004c7: POP 000004c8: JUMPDEST 000004c9: POP 000004ca: SWAP3 000004cb: POP 000004cc: POP 000004cd: POP 000004ce: PUSH1 0x40 000004d0: MLOAD 000004d1: DUP1 000004d2: SWAP2 000004d3: SUB 000004d4: SWAP1 000004d5: RETURN 000004d6: JUMPDEST 000004d7: CALLVALUE 000004d8: DUP1 000004d9: ISZERO 000004da: PUSH2 0x04e2 000004dd: JUMPI 000004de: PUSH1 0x00 000004e0: DUP1 000004e1: REVERT 000004e2: JUMPDEST 000004e3: POP 000004e4: PUSH2 0x050f 000004e7: PUSH1 0x04 000004e9: DUP1 000004ea: CALLDATASIZE 000004eb: SUB 000004ec: PUSH1 0x40 000004ee: DUP2 000004ef: LT 000004f0: ISZERO 000004f1: PUSH2 0x04f9 000004f4: JUMPI 000004f5: PUSH1 0x00 000004f7: DUP1 000004f8: REVERT 000004f9: JUMPDEST 000004fa: POP 000004fb: PUSH1 0x01 000004fd: PUSH1 0x01 000004ff: PUSH1 0xa0 00000501: SHL 00000502: SUB 00000503: DUP2 00000504: CALLDATALOAD 00000505: AND 00000506: SWAP1 00000507: PUSH1 0x20 00000509: ADD 0000050a: CALLDATALOAD 0000050b: PUSH2 0x1273 0000050e: JUMP 0000050f: JUMPDEST 00000510: PUSH1 0x40 00000512: DUP1 00000513: MLOAD 00000514: SWAP2 00000515: ISZERO 00000516: ISZERO 00000517: DUP3 00000518: MSTORE 00000519: MLOAD 0000051a: SWAP1 0000051b: DUP2 0000051c: SWAP1 0000051d: SUB 0000051e: PUSH1 0x20 00000520: ADD 00000521: SWAP1 00000522: RETURN 00000523: JUMPDEST 00000524: CALLVALUE 00000525: DUP1 00000526: ISZERO 00000527: PUSH2 0x052f 0000052a: JUMPI 0000052b: PUSH1 0x00 0000052d: DUP1 0000052e: REVERT 0000052f: JUMPDEST 00000530: POP 00000531: PUSH2 0x050f 00000534: PUSH1 0x04 00000536: DUP1 00000537: CALLDATASIZE 00000538: SUB 00000539: PUSH1 0x20 0000053b: DUP2 0000053c: LT 0000053d: ISZERO 0000053e: PUSH2 0x0546 00000541: JUMPI 00000542: PUSH1 0x00 00000544: DUP1 00000545: REVERT 00000546: JUMPDEST 00000547: POP 00000548: CALLDATALOAD 00000549: PUSH1 0x01 0000054b: PUSH1 0x01 0000054d: PUSH1 0xa0 0000054f: SHL 00000550: SUB 00000551: AND 00000552: PUSH2 0x1290 00000555: JUMP 00000556: JUMPDEST 00000557: CALLVALUE 00000558: DUP1 00000559: ISZERO 0000055a: PUSH2 0x0562 0000055d: JUMPI 0000055e: PUSH1 0x00 00000560: DUP1 00000561: REVERT 00000562: JUMPDEST 00000563: POP 00000564: PUSH2 0x050f 00000567: PUSH2 0x12b5 0000056a: JUMP 0000056b: JUMPDEST 0000056c: CALLVALUE 0000056d: DUP1 0000056e: ISZERO 0000056f: PUSH2 0x0577 00000572: JUMPI 00000573: PUSH1 0x00 00000575: DUP1 00000576: REVERT 00000577: JUMPDEST 00000578: POP 00000579: PUSH2 0x059e 0000057c: PUSH1 0x04 0000057e: DUP1 0000057f: CALLDATASIZE 00000580: SUB 00000581: PUSH1 0x20 00000583: DUP2 00000584: LT 00000585: ISZERO 00000586: PUSH2 0x058e 00000589: JUMPI 0000058a: PUSH1 0x00 0000058c: DUP1 0000058d: REVERT 0000058e: JUMPDEST 0000058f: POP 00000590: CALLDATALOAD 00000591: PUSH1 0x01 00000593: PUSH1 0x01 00000595: PUSH1 0xa0 00000597: SHL 00000598: SUB 00000599: AND 0000059a: PUSH2 0x12e3 0000059d: JUMP 0000059e: JUMPDEST 0000059f: PUSH1 0x40 000005a1: DUP1 000005a2: MLOAD 000005a3: SWAP5 000005a4: DUP6 000005a5: MSTORE 000005a6: PUSH1 0x20 000005a8: DUP6 000005a9: ADD 000005aa: SWAP4 000005ab: SWAP1 000005ac: SWAP4 000005ad: MSTORE 000005ae: DUP4 000005af: DUP4 000005b0: ADD 000005b1: SWAP2 000005b2: SWAP1 000005b3: SWAP2 000005b4: MSTORE 000005b5: ISZERO 000005b6: ISZERO 000005b7: PUSH1 0x60 000005b9: DUP4 000005ba: ADD 000005bb: MSTORE 000005bc: MLOAD 000005bd: SWAP1 000005be: DUP2 000005bf: SWAP1 000005c0: SUB 000005c1: PUSH1 0x80 000005c3: ADD 000005c4: SWAP1 000005c5: RETURN 000005c6: JUMPDEST 000005c7: CALLVALUE 000005c8: DUP1 000005c9: ISZERO 000005ca: PUSH2 0x05d2 000005cd: JUMPI 000005ce: PUSH1 0x00 000005d0: DUP1 000005d1: REVERT 000005d2: JUMPDEST 000005d3: POP 000005d4: PUSH2 0x03d5 000005d7: PUSH2 0x1317 000005da: JUMP 000005db: JUMPDEST 000005dc: CALLVALUE 000005dd: DUP1 000005de: ISZERO 000005df: PUSH2 0x05e7 000005e2: JUMPI 000005e3: PUSH1 0x00 000005e5: DUP1 000005e6: REVERT 000005e7: JUMPDEST 000005e8: POP 000005e9: PUSH2 0x0614 000005ec: PUSH1 0x04 000005ee: DUP1 000005ef: CALLDATASIZE 000005f0: SUB 000005f1: PUSH1 0x40 000005f3: DUP2 000005f4: LT 000005f5: ISZERO 000005f6: PUSH2 0x05fe 000005f9: JUMPI 000005fa: PUSH1 0x00 000005fc: DUP1 000005fd: REVERT 000005fe: JUMPDEST 000005ff: POP 00000600: DUP1 00000601: CALLDATALOAD 00000602: SWAP1 00000603: PUSH1 0x20 00000605: ADD 00000606: CALLDATALOAD 00000607: PUSH1 0x01 00000609: PUSH1 0x01 0000060b: PUSH1 0xa0 0000060d: SHL 0000060e: SUB 0000060f: AND 00000610: PUSH2 0x131d 00000613: JUMP 00000614: JUMPDEST 00000615: STOP 00000616: JUMPDEST 00000617: CALLVALUE 00000618: DUP1 00000619: ISZERO 0000061a: PUSH2 0x0622 0000061d: JUMPI 0000061e: PUSH1 0x00 00000620: DUP1 00000621: REVERT 00000622: JUMPDEST 00000623: POP 00000624: PUSH2 0x050f 00000627: PUSH1 0x04 00000629: DUP1 0000062a: CALLDATASIZE 0000062b: SUB 0000062c: PUSH1 0x60 0000062e: DUP2 0000062f: LT 00000630: ISZERO 00000631: PUSH2 0x0639 00000634: JUMPI 00000635: PUSH1 0x00 00000637: DUP1 00000638: REVERT 00000639: JUMPDEST 0000063a: POP 0000063b: PUSH1 0x01 0000063d: PUSH1 0x01 0000063f: PUSH1 0xa0 00000641: SHL 00000642: SUB 00000643: DUP2 00000644: CALLDATALOAD 00000645: DUP2 00000646: AND 00000647: SWAP2 00000648: PUSH1 0x20 0000064a: DUP2 0000064b: ADD 0000064c: CALLDATALOAD 0000064d: SWAP1 0000064e: SWAP2 0000064f: AND 00000650: SWAP1 00000651: PUSH1 0x40 00000653: ADD 00000654: CALLDATALOAD 00000655: PUSH2 0x1486 00000658: JUMP 00000659: JUMPDEST 0000065a: CALLVALUE 0000065b: DUP1 0000065c: ISZERO 0000065d: PUSH2 0x0665 00000660: JUMPI 00000661: PUSH1 0x00 00000663: DUP1 00000664: REVERT 00000665: JUMPDEST 00000666: POP 00000667: PUSH2 0x066e 0000066a: PUSH2 0x1513 0000066d: JUMP 0000066e: JUMPDEST 0000066f: PUSH1 0x40 00000671: DUP1 00000672: MLOAD 00000673: PUSH1 0xff 00000675: SWAP1 00000676: SWAP3 00000677: AND 00000678: DUP3 00000679: MSTORE 0000067a: MLOAD 0000067b: SWAP1 0000067c: DUP2 0000067d: SWAP1 0000067e: SUB 0000067f: PUSH1 0x20 00000681: ADD 00000682: SWAP1 00000683: RETURN 00000684: JUMPDEST 00000685: CALLVALUE 00000686: DUP1 00000687: ISZERO 00000688: PUSH2 0x0690 0000068b: JUMPI 0000068c: PUSH1 0x00 0000068e: DUP1 0000068f: REVERT 00000690: JUMPDEST 00000691: POP 00000692: PUSH2 0x0614 00000695: PUSH1 0x04 00000697: DUP1 00000698: CALLDATASIZE 00000699: SUB 0000069a: PUSH1 0x60 0000069c: DUP2 0000069d: LT 0000069e: ISZERO 0000069f: PUSH2 0x06a7 000006a2: JUMPI 000006a3: PUSH1 0x00 000006a5: DUP1 000006a6: REVERT 000006a7: JUMPDEST 000006a8: POP 000006a9: DUP1 000006aa: CALLDATALOAD 000006ab: SWAP1 000006ac: PUSH1 0x20 000006ae: DUP2 000006af: ADD 000006b0: CALLDATALOAD 000006b1: SWAP1 000006b2: PUSH1 0x40 000006b4: ADD 000006b5: CALLDATALOAD 000006b6: PUSH1 0x01 000006b8: PUSH1 0x01 000006ba: PUSH1 0xa0 000006bc: SHL 000006bd: SUB 000006be: AND 000006bf: PUSH2 0x151c 000006c2: JUMP 000006c3: JUMPDEST 000006c4: CALLVALUE 000006c5: DUP1 000006c6: ISZERO 000006c7: PUSH2 0x06cf 000006ca: JUMPI 000006cb: PUSH1 0x00 000006cd: DUP1 000006ce: REVERT 000006cf: JUMPDEST 000006d0: POP 000006d1: PUSH2 0x0614 000006d4: PUSH1 0x04 000006d6: DUP1 000006d7: CALLDATASIZE 000006d8: SUB 000006d9: PUSH1 0x20 000006db: DUP2 000006dc: LT 000006dd: ISZERO 000006de: PUSH2 0x06e6 000006e1: JUMPI 000006e2: PUSH1 0x00 000006e4: DUP1 000006e5: REVERT 000006e6: JUMPDEST 000006e7: POP 000006e8: CALLDATALOAD 000006e9: PUSH2 0x1634 000006ec: JUMP 000006ed: JUMPDEST 000006ee: CALLVALUE 000006ef: DUP1 000006f0: ISZERO 000006f1: PUSH2 0x06f9 000006f4: JUMPI 000006f5: PUSH1 0x00 000006f7: DUP1 000006f8: REVERT 000006f9: JUMPDEST 000006fa: POP 000006fb: PUSH2 0x0702 000006fe: PUSH2 0x1824 00000701: JUMP 00000702: JUMPDEST 00000703: PUSH1 0x40 00000705: DUP1 00000706: MLOAD 00000707: SWAP3 00000708: DUP4 00000709: MSTORE 0000070a: PUSH1 0x03 0000070c: SWAP2 0000070d: DUP3 0000070e: SIGNEXTEND 0000070f: SWAP1 00000710: SWAP2 00000711: SIGNEXTEND 00000712: PUSH1 0x20 00000714: DUP4 00000715: ADD 00000716: MSTORE 00000717: DUP1 00000718: MLOAD 00000719: SWAP2 0000071a: DUP3 0000071b: SWAP1 0000071c: SUB 0000071d: ADD 0000071e: SWAP1 0000071f: RETURN 00000720: JUMPDEST 00000721: PUSH2 0x0614 00000724: PUSH1 0x04 00000726: DUP1 00000727: CALLDATASIZE 00000728: SUB 00000729: PUSH1 0x40 0000072b: DUP2 0000072c: LT 0000072d: ISZERO 0000072e: PUSH2 0x0736 00000731: JUMPI 00000732: PUSH1 0x00 00000734: DUP1 00000735: REVERT 00000736: JUMPDEST 00000737: POP 00000738: DUP1 00000739: CALLDATALOAD 0000073a: SWAP1 0000073b: PUSH1 0x20 0000073d: ADD 0000073e: CALLDATALOAD 0000073f: PUSH1 0x01 00000741: PUSH1 0x01 00000743: PUSH1 0xa0 00000745: SHL 00000746: SUB 00000747: AND 00000748: PUSH2 0x1830 0000074b: JUMP 0000074c: JUMPDEST 0000074d: CALLVALUE 0000074e: DUP1 0000074f: ISZERO 00000750: PUSH2 0x0758 00000753: JUMPI 00000754: PUSH1 0x00 00000756: DUP1 00000757: REVERT 00000758: JUMPDEST 00000759: POP 0000075a: PUSH2 0x050f 0000075d: PUSH1 0x04 0000075f: DUP1 00000760: CALLDATASIZE 00000761: SUB 00000762: PUSH1 0x40 00000764: DUP2 00000765: LT 00000766: ISZERO 00000767: PUSH2 0x076f 0000076a: JUMPI 0000076b: PUSH1 0x00 0000076d: DUP1 0000076e: REVERT 0000076f: JUMPDEST 00000770: POP 00000771: PUSH1 0x01 00000773: PUSH1 0x01 00000775: PUSH1 0xa0 00000777: SHL 00000778: SUB 00000779: DUP2 0000077a: CALLDATALOAD 0000077b: AND 0000077c: SWAP1 0000077d: PUSH1 0x20 0000077f: ADD 00000780: CALLDATALOAD 00000781: PUSH2 0x1945 00000784: JUMP 00000785: JUMPDEST 00000786: CALLVALUE 00000787: DUP1 00000788: ISZERO 00000789: PUSH2 0x0791 0000078c: JUMPI 0000078d: PUSH1 0x00 0000078f: DUP1 00000790: REVERT 00000791: JUMPDEST 00000792: POP 00000793: PUSH2 0x079a 00000796: PUSH2 0x1999 00000799: JUMP 0000079a: JUMPDEST 0000079b: PUSH1 0x40 0000079d: DUP1 0000079e: MLOAD 0000079f: PUSH1 0x01 000007a1: PUSH1 0x01 000007a3: PUSH1 0xa0 000007a5: SHL 000007a6: SUB 000007a7: SWAP1 000007a8: SWAP3 000007a9: AND 000007aa: DUP3 000007ab: MSTORE 000007ac: MLOAD 000007ad: SWAP1 000007ae: DUP2 000007af: SWAP1 000007b0: SUB 000007b1: PUSH1 0x20 000007b3: ADD 000007b4: SWAP1 000007b5: RETURN 000007b6: JUMPDEST 000007b7: CALLVALUE 000007b8: DUP1 000007b9: ISZERO 000007ba: PUSH2 0x07c2 000007bd: JUMPI 000007be: PUSH1 0x00 000007c0: DUP1 000007c1: REVERT 000007c2: JUMPDEST 000007c3: POP 000007c4: PUSH2 0x0614 000007c7: PUSH1 0x04 000007c9: DUP1 000007ca: CALLDATASIZE 000007cb: SUB 000007cc: PUSH1 0x60 000007ce: DUP2 000007cf: LT 000007d0: ISZERO 000007d1: PUSH2 0x07d9 000007d4: JUMPI 000007d5: PUSH1 0x00 000007d7: DUP1 000007d8: REVERT 000007d9: JUMPDEST 000007da: POP 000007db: DUP1 000007dc: CALLDATALOAD 000007dd: SWAP1 000007de: PUSH1 0x20 000007e0: DUP2 000007e1: ADD 000007e2: CALLDATALOAD 000007e3: SWAP1 000007e4: PUSH1 0x40 000007e6: ADD 000007e7: CALLDATALOAD 000007e8: PUSH1 0x01 000007ea: PUSH1 0x01 000007ec: PUSH1 0xa0 000007ee: SHL 000007ef: SUB 000007f0: AND 000007f1: PUSH2 0x19a8 000007f4: JUMP 000007f5: JUMPDEST 000007f6: PUSH2 0x0614 000007f9: PUSH1 0x04 000007fb: DUP1 000007fc: CALLDATASIZE 000007fd: SUB 000007fe: PUSH1 0x40 00000800: DUP2 00000801: LT 00000802: ISZERO 00000803: PUSH2 0x080b 00000806: JUMPI 00000807: PUSH1 0x00 00000809: DUP1 0000080a: REVERT 0000080b: JUMPDEST 0000080c: DUP2 0000080d: CALLDATALOAD 0000080e: SWAP2 0000080f: SWAP1 00000810: DUP2 00000811: ADD 00000812: SWAP1 00000813: PUSH1 0x40 00000815: DUP2 00000816: ADD 00000817: PUSH1 0x20 00000819: DUP3 0000081a: ADD 0000081b: CALLDATALOAD 0000081c: PUSH1 0x01 0000081e: PUSH1 0x20 00000820: SHL 00000821: DUP2 00000822: GT 00000823: ISZERO 00000824: PUSH2 0x082c 00000827: JUMPI 00000828: PUSH1 0x00 0000082a: DUP1 0000082b: REVERT 0000082c: JUMPDEST 0000082d: DUP3 0000082e: ADD 0000082f: DUP4 00000830: PUSH1 0x20 00000832: DUP3 00000833: ADD 00000834: GT 00000835: ISZERO 00000836: PUSH2 0x083e 00000839: JUMPI 0000083a: PUSH1 0x00 0000083c: DUP1 0000083d: REVERT 0000083e: JUMPDEST 0000083f: DUP1 00000840: CALLDATALOAD 00000841: SWAP1 00000842: PUSH1 0x20 00000844: ADD 00000845: SWAP2 00000846: DUP5 00000847: PUSH1 0x20 00000849: DUP4 0000084a: MUL 0000084b: DUP5 0000084c: ADD 0000084d: GT 0000084e: PUSH1 0x01 00000850: PUSH1 0x20 00000852: SHL 00000853: DUP4 00000854: GT 00000855: OR 00000856: ISZERO 00000857: PUSH2 0x085f 0000085a: JUMPI 0000085b: PUSH1 0x00 0000085d: DUP1 0000085e: REVERT 0000085f: JUMPDEST 00000860: SWAP2 00000861: SWAP1 00000862: DUP1 00000863: DUP1 00000864: PUSH1 0x20 00000866: MUL 00000867: PUSH1 0x20 00000869: ADD 0000086a: PUSH1 0x40 0000086c: MLOAD 0000086d: SWAP1 0000086e: DUP2 0000086f: ADD 00000870: PUSH1 0x40 00000872: MSTORE 00000873: DUP1 00000874: SWAP4 00000875: SWAP3 00000876: SWAP2 00000877: SWAP1 00000878: DUP2 00000879: DUP2 0000087a: MSTORE 0000087b: PUSH1 0x20 0000087d: ADD 0000087e: DUP4 0000087f: DUP4 00000880: PUSH1 0x20 00000882: MUL 00000883: DUP1 00000884: DUP3 00000885: DUP5 00000886: CALLDATACOPY 00000887: PUSH1 0x00 00000889: SWAP3 0000088a: ADD 0000088b: SWAP2 0000088c: SWAP1 0000088d: SWAP2 0000088e: MSTORE 0000088f: POP 00000890: SWAP3 00000891: SWAP6 00000892: POP 00000893: PUSH2 0x19c1 00000896: SWAP5 00000897: POP 00000898: POP 00000899: POP 0000089a: POP 0000089b: POP 0000089c: JUMP 0000089d: JUMPDEST 0000089e: CALLVALUE 0000089f: DUP1 000008a0: ISZERO 000008a1: PUSH2 0x08a9 000008a4: JUMPI 000008a5: PUSH1 0x00 000008a7: DUP1 000008a8: REVERT 000008a9: JUMPDEST 000008aa: POP 000008ab: PUSH2 0x0614 000008ae: PUSH1 0x04 000008b0: DUP1 000008b1: CALLDATASIZE 000008b2: SUB 000008b3: PUSH1 0x60 000008b5: DUP2 000008b6: LT 000008b7: ISZERO 000008b8: PUSH2 0x08c0 000008bb: JUMPI 000008bc: PUSH1 0x00 000008be: DUP1 000008bf: REVERT 000008c0: JUMPDEST 000008c1: POP 000008c2: DUP1 000008c3: CALLDATALOAD 000008c4: SWAP1 000008c5: PUSH1 0x20 000008c7: DUP2 000008c8: ADD 000008c9: CALLDATALOAD 000008ca: SWAP1 000008cb: PUSH1 0x40 000008cd: ADD 000008ce: CALLDATALOAD 000008cf: PUSH1 0x01 000008d1: PUSH1 0x01 000008d3: PUSH1 0xa0 000008d5: SHL 000008d6: SUB 000008d7: AND 000008d8: PUSH2 0x1ad9 000008db: JUMP 000008dc: JUMPDEST 000008dd: CALLVALUE 000008de: DUP1 000008df: ISZERO 000008e0: PUSH2 0x08e8 000008e3: JUMPI 000008e4: PUSH1 0x00 000008e6: DUP1 000008e7: REVERT 000008e8: JUMPDEST 000008e9: POP 000008ea: PUSH2 0x03d5 000008ed: PUSH1 0x04 000008ef: DUP1 000008f0: CALLDATASIZE 000008f1: SUB 000008f2: PUSH1 0x20 000008f4: DUP2 000008f5: LT 000008f6: ISZERO 000008f7: PUSH2 0x08ff 000008fa: JUMPI 000008fb: PUSH1 0x00 000008fd: DUP1 000008fe: REVERT 000008ff: JUMPDEST 00000900: POP 00000901: CALLDATALOAD 00000902: PUSH2 0x1aee 00000905: JUMP 00000906: JUMPDEST 00000907: CALLVALUE 00000908: DUP1 00000909: ISZERO 0000090a: PUSH2 0x0912 0000090d: JUMPI 0000090e: PUSH1 0x00 00000910: DUP1 00000911: REVERT 00000912: JUMPDEST 00000913: POP 00000914: PUSH2 0x079a 00000917: PUSH2 0x1b1c 0000091a: JUMP 0000091b: JUMPDEST 0000091c: CALLVALUE 0000091d: DUP1 0000091e: ISZERO 0000091f: PUSH2 0x0927 00000922: JUMPI 00000923: PUSH1 0x00 00000925: DUP1 00000926: REVERT 00000927: JUMPDEST 00000928: POP 00000929: PUSH2 0x03d5 0000092c: PUSH1 0x04 0000092e: DUP1 0000092f: CALLDATASIZE 00000930: SUB 00000931: PUSH1 0x20 00000933: DUP2 00000934: LT 00000935: ISZERO 00000936: PUSH2 0x093e 00000939: JUMPI 0000093a: PUSH1 0x00 0000093c: DUP1 0000093d: REVERT 0000093e: JUMPDEST 0000093f: POP 00000940: CALLDATALOAD 00000941: PUSH2 0x1b2b 00000944: JUMP 00000945: JUMPDEST 00000946: CALLVALUE 00000947: DUP1 00000948: ISZERO 00000949: PUSH2 0x0951 0000094c: JUMPI 0000094d: PUSH1 0x00 0000094f: DUP1 00000950: REVERT 00000951: JUMPDEST 00000952: POP 00000953: PUSH2 0x03d5 00000956: PUSH1 0x04 00000958: DUP1 00000959: CALLDATASIZE 0000095a: SUB 0000095b: PUSH1 0x20 0000095d: DUP2 0000095e: LT 0000095f: ISZERO 00000960: PUSH2 0x0968 00000963: JUMPI 00000964: PUSH1 0x00 00000966: DUP1 00000967: REVERT 00000968: JUMPDEST 00000969: POP 0000096a: CALLDATALOAD 0000096b: PUSH1 0x01 0000096d: PUSH1 0x01 0000096f: PUSH1 0xa0 00000971: SHL 00000972: SUB 00000973: AND 00000974: PUSH2 0x1b6f 00000977: JUMP 00000978: JUMPDEST 00000979: CALLVALUE 0000097a: DUP1 0000097b: ISZERO 0000097c: PUSH2 0x0984 0000097f: JUMPI 00000980: PUSH1 0x00 00000982: DUP1 00000983: REVERT 00000984: JUMPDEST 00000985: POP 00000986: PUSH2 0x0614 00000989: PUSH2 0x1b8a 0000098c: JUMP 0000098d: JUMPDEST 0000098e: CALLVALUE 0000098f: DUP1 00000990: ISZERO 00000991: PUSH2 0x0999 00000994: JUMPI 00000995: PUSH1 0x00 00000997: DUP1 00000998: REVERT 00000999: JUMPDEST 0000099a: POP 0000099b: PUSH2 0x050f 0000099e: PUSH2 0x1c1b 000009a1: JUMP 000009a2: JUMPDEST 000009a3: CALLVALUE 000009a4: DUP1 000009a5: ISZERO 000009a6: PUSH2 0x09ae 000009a9: JUMPI 000009aa: PUSH1 0x00 000009ac: DUP1 000009ad: REVERT 000009ae: JUMPDEST 000009af: POP 000009b0: PUSH2 0x079a 000009b3: PUSH2 0x1d88 000009b6: JUMP 000009b7: JUMPDEST 000009b8: CALLVALUE 000009b9: DUP1 000009ba: ISZERO 000009bb: PUSH2 0x09c3 000009be: JUMPI 000009bf: PUSH1 0x00 000009c1: DUP1 000009c2: REVERT 000009c3: JUMPDEST 000009c4: POP 000009c5: PUSH2 0x0702 000009c8: PUSH2 0x1d97 000009cb: JUMP 000009cc: JUMPDEST 000009cd: CALLVALUE 000009ce: DUP1 000009cf: ISZERO 000009d0: PUSH2 0x09d8 000009d3: JUMPI 000009d4: PUSH1 0x00 000009d6: DUP1 000009d7: REVERT 000009d8: JUMPDEST 000009d9: POP 000009da: PUSH2 0x079a 000009dd: PUSH2 0x1da3 000009e0: JUMP 000009e1: JUMPDEST 000009e2: CALLVALUE 000009e3: DUP1 000009e4: ISZERO 000009e5: PUSH2 0x09ed 000009e8: JUMPI 000009e9: PUSH1 0x00 000009eb: DUP1 000009ec: REVERT 000009ed: JUMPDEST 000009ee: POP 000009ef: PUSH2 0x050f 000009f2: PUSH2 0x1db2 000009f5: JUMP 000009f6: JUMPDEST 000009f7: CALLVALUE 000009f8: DUP1 000009f9: ISZERO 000009fa: PUSH2 0x0a02 000009fd: JUMPI 000009fe: PUSH1 0x00 00000a00: DUP1 00000a01: REVERT 00000a02: JUMPDEST 00000a03: POP 00000a04: PUSH2 0x050f 00000a07: PUSH2 0x1dd6 00000a0a: JUMP 00000a0b: JUMPDEST 00000a0c: CALLVALUE 00000a0d: DUP1 00000a0e: ISZERO 00000a0f: PUSH2 0x0a17 00000a12: JUMPI 00000a13: PUSH1 0x00 00000a15: DUP1 00000a16: REVERT 00000a17: JUMPDEST 00000a18: POP 00000a19: PUSH2 0x0461 00000a1c: PUSH2 0x1ddf 00000a1f: JUMP 00000a20: JUMPDEST 00000a21: PUSH2 0x03d5 00000a24: PUSH1 0x04 00000a26: DUP1 00000a27: CALLDATASIZE 00000a28: SUB 00000a29: PUSH1 0x20 00000a2b: DUP2 00000a2c: LT 00000a2d: ISZERO 00000a2e: PUSH2 0x0a36 00000a31: JUMPI 00000a32: PUSH1 0x00 00000a34: DUP1 00000a35: REVERT 00000a36: JUMPDEST 00000a37: POP 00000a38: CALLDATALOAD 00000a39: PUSH1 0x01 00000a3b: PUSH1 0x01 00000a3d: PUSH1 0xa0 00000a3f: SHL 00000a40: SUB 00000a41: AND 00000a42: PUSH2 0x1e3a 00000a45: JUMP 00000a46: JUMPDEST 00000a47: CALLVALUE 00000a48: DUP1 00000a49: ISZERO 00000a4a: PUSH2 0x0a52 00000a4d: JUMPI 00000a4e: PUSH1 0x00 00000a50: DUP1 00000a51: REVERT 00000a52: JUMPDEST 00000a53: POP 00000a54: PUSH2 0x0702 00000a57: PUSH2 0x1f74 00000a5a: JUMP 00000a5b: JUMPDEST 00000a5c: CALLVALUE 00000a5d: DUP1 00000a5e: ISZERO 00000a5f: PUSH2 0x0a67 00000a62: JUMPI 00000a63: PUSH1 0x00 00000a65: DUP1 00000a66: REVERT 00000a67: JUMPDEST 00000a68: POP 00000a69: PUSH2 0x050f 00000a6c: PUSH1 0x04 00000a6e: DUP1 00000a6f: CALLDATASIZE 00000a70: SUB 00000a71: PUSH1 0x40 00000a73: DUP2 00000a74: LT 00000a75: ISZERO 00000a76: PUSH2 0x0a7e 00000a79: JUMPI 00000a7a: PUSH1 0x00 00000a7c: DUP1 00000a7d: REVERT 00000a7e: JUMPDEST 00000a7f: POP 00000a80: PUSH1 0x01 00000a82: PUSH1 0x01 00000a84: PUSH1 0xa0 00000a86: SHL 00000a87: SUB 00000a88: DUP2 00000a89: CALLDATALOAD 00000a8a: AND 00000a8b: SWAP1 00000a8c: PUSH1 0x20 00000a8e: ADD 00000a8f: CALLDATALOAD 00000a90: PUSH2 0x1f80 00000a93: JUMP 00000a94: JUMPDEST 00000a95: CALLVALUE 00000a96: DUP1 00000a97: ISZERO 00000a98: PUSH2 0x0aa0 00000a9b: JUMPI 00000a9c: PUSH1 0x00 00000a9e: DUP1 00000a9f: REVERT 00000aa0: JUMPDEST 00000aa1: POP 00000aa2: PUSH2 0x050f 00000aa5: PUSH1 0x04 00000aa7: DUP1 00000aa8: CALLDATASIZE 00000aa9: SUB 00000aaa: PUSH1 0x40 00000aac: DUP2 00000aad: LT 00000aae: ISZERO 00000aaf: PUSH2 0x0ab7 00000ab2: JUMPI 00000ab3: PUSH1 0x00 00000ab5: DUP1 00000ab6: REVERT 00000ab7: JUMPDEST 00000ab8: POP 00000ab9: PUSH1 0x01 00000abb: PUSH1 0x01 00000abd: PUSH1 0xa0 00000abf: SHL 00000ac0: SUB 00000ac1: DUP2 00000ac2: CALLDATALOAD 00000ac3: AND 00000ac4: SWAP1 00000ac5: PUSH1 0x20 00000ac7: ADD 00000ac8: CALLDATALOAD 00000ac9: PUSH2 0x1fee 00000acc: JUMP 00000acd: JUMPDEST 00000ace: CALLVALUE 00000acf: DUP1 00000ad0: ISZERO 00000ad1: PUSH2 0x0ad9 00000ad4: JUMPI 00000ad5: PUSH1 0x00 00000ad7: DUP1 00000ad8: REVERT 00000ad9: JUMPDEST 00000ada: POP 00000adb: PUSH2 0x079a 00000ade: PUSH2 0x2002 00000ae1: JUMP 00000ae2: JUMPDEST 00000ae3: CALLVALUE 00000ae4: DUP1 00000ae5: ISZERO 00000ae6: PUSH2 0x0aee 00000ae9: JUMPI 00000aea: PUSH1 0x00 00000aec: DUP1 00000aed: REVERT 00000aee: JUMPDEST 00000aef: POP 00000af0: PUSH2 0x0af7 00000af3: PUSH2 0x2011 00000af6: JUMP 00000af7: JUMPDEST 00000af8: PUSH1 0x40 00000afa: DUP1 00000afb: MLOAD 00000afc: PUSH1 0x03 00000afe: SWAP3 00000aff: DUP4 00000b00: SIGNEXTEND 00000b01: SWAP1 00000b02: SWAP3 00000b03: SIGNEXTEND 00000b04: DUP3 00000b05: MSTORE 00000b06: MLOAD 00000b07: SWAP1 00000b08: DUP2 00000b09: SWAP1 00000b0a: SUB 00000b0b: PUSH1 0x20 00000b0d: ADD 00000b0e: SWAP1 00000b0f: RETURN 00000b10: JUMPDEST 00000b11: CALLVALUE 00000b12: DUP1 00000b13: ISZERO 00000b14: PUSH2 0x0b1c 00000b17: JUMPI 00000b18: PUSH1 0x00 00000b1a: DUP1 00000b1b: REVERT 00000b1c: JUMPDEST 00000b1d: POP 00000b1e: PUSH2 0x0af7 00000b21: PUSH2 0x2021 00000b24: JUMP 00000b25: JUMPDEST 00000b26: CALLVALUE 00000b27: DUP1 00000b28: ISZERO 00000b29: PUSH2 0x0b31 00000b2c: JUMPI 00000b2d: PUSH1 0x00 00000b2f: DUP1 00000b30: REVERT 00000b31: JUMPDEST 00000b32: POP 00000b33: PUSH2 0x0702 00000b36: PUSH2 0x202a 00000b39: JUMP 00000b3a: JUMPDEST 00000b3b: CALLVALUE 00000b3c: DUP1 00000b3d: ISZERO 00000b3e: PUSH2 0x0b46 00000b41: JUMPI 00000b42: PUSH1 0x00 00000b44: DUP1 00000b45: REVERT 00000b46: JUMPDEST 00000b47: POP 00000b48: PUSH2 0x0614 00000b4b: PUSH2 0x2036 00000b4e: JUMP 00000b4f: JUMPDEST 00000b50: CALLVALUE 00000b51: DUP1 00000b52: ISZERO 00000b53: PUSH2 0x0b5b 00000b56: JUMPI 00000b57: PUSH1 0x00 00000b59: DUP1 00000b5a: REVERT 00000b5b: JUMPDEST 00000b5c: POP 00000b5d: PUSH2 0x0614 00000b60: PUSH1 0x04 00000b62: DUP1 00000b63: CALLDATASIZE 00000b64: SUB 00000b65: PUSH1 0x40 00000b67: DUP2 00000b68: LT 00000b69: ISZERO 00000b6a: PUSH2 0x0b72 00000b6d: JUMPI 00000b6e: PUSH1 0x00 00000b70: DUP1 00000b71: REVERT 00000b72: JUMPDEST 00000b73: DUP2 00000b74: ADD 00000b75: SWAP1 00000b76: PUSH1 0x20 00000b78: DUP2 00000b79: ADD 00000b7a: DUP2 00000b7b: CALLDATALOAD 00000b7c: PUSH1 0x01 00000b7e: PUSH1 0x20 00000b80: SHL 00000b81: DUP2 00000b82: GT 00000b83: ISZERO 00000b84: PUSH2 0x0b8c 00000b87: JUMPI 00000b88: PUSH1 0x00 00000b8a: DUP1 00000b8b: REVERT 00000b8c: JUMPDEST 00000b8d: DUP3 00000b8e: ADD 00000b8f: DUP4 00000b90: PUSH1 0x20 00000b92: DUP3 00000b93: ADD 00000b94: GT 00000b95: ISZERO 00000b96: PUSH2 0x0b9e 00000b99: JUMPI 00000b9a: PUSH1 0x00 00000b9c: DUP1 00000b9d: REVERT 00000b9e: JUMPDEST 00000b9f: DUP1 00000ba0: CALLDATALOAD 00000ba1: SWAP1 00000ba2: PUSH1 0x20 00000ba4: ADD 00000ba5: SWAP2 00000ba6: DUP5 00000ba7: PUSH1 0x01 00000ba9: DUP4 00000baa: MUL 00000bab: DUP5 00000bac: ADD 00000bad: GT 00000bae: PUSH1 0x01 00000bb0: PUSH1 0x20 00000bb2: SHL 00000bb3: DUP4 00000bb4: GT 00000bb5: OR 00000bb6: ISZERO 00000bb7: PUSH2 0x0bbf 00000bba: JUMPI 00000bbb: PUSH1 0x00 00000bbd: DUP1 00000bbe: REVERT 00000bbf: JUMPDEST 00000bc0: SWAP2 00000bc1: SWAP1 00000bc2: DUP1 00000bc3: DUP1 00000bc4: PUSH1 0x1f 00000bc6: ADD 00000bc7: PUSH1 0x20 00000bc9: DUP1 00000bca: SWAP2 00000bcb: DIV 00000bcc: MUL 00000bcd: PUSH1 0x20 00000bcf: ADD 00000bd0: PUSH1 0x40 00000bd2: MLOAD 00000bd3: SWAP1 00000bd4: DUP2 00000bd5: ADD 00000bd6: PUSH1 0x40 00000bd8: MSTORE 00000bd9: DUP1 00000bda: SWAP4 00000bdb: SWAP3 00000bdc: SWAP2 00000bdd: SWAP1 00000bde: DUP2 00000bdf: DUP2 00000be0: MSTORE 00000be1: PUSH1 0x20 00000be3: ADD 00000be4: DUP4 00000be5: DUP4 00000be6: DUP1 00000be7: DUP3 00000be8: DUP5 00000be9: CALLDATACOPY 00000bea: PUSH1 0x00 00000bec: SWAP3 00000bed: ADD 00000bee: SWAP2 00000bef: SWAP1 00000bf0: SWAP2 00000bf1: MSTORE 00000bf2: POP 00000bf3: SWAP3 00000bf4: SWAP6 00000bf5: SWAP5 00000bf6: SWAP4 00000bf7: PUSH1 0x20 00000bf9: DUP2 00000bfa: ADD 00000bfb: SWAP4 00000bfc: POP 00000bfd: CALLDATALOAD 00000bfe: SWAP2 00000bff: POP 00000c00: POP 00000c01: PUSH1 0x01 00000c03: PUSH1 0x20 00000c05: SHL 00000c06: DUP2 00000c07: GT 00000c08: ISZERO 00000c09: PUSH2 0x0c11 00000c0c: JUMPI 00000c0d: PUSH1 0x00 00000c0f: DUP1 00000c10: REVERT 00000c11: JUMPDEST 00000c12: DUP3 00000c13: ADD 00000c14: DUP4 00000c15: PUSH1 0x20 00000c17: DUP3 00000c18: ADD 00000c19: GT 00000c1a: ISZERO 00000c1b: PUSH2 0x0c23 00000c1e: JUMPI 00000c1f: PUSH1 0x00 00000c21: DUP1 00000c22: REVERT 00000c23: JUMPDEST 00000c24: DUP1 00000c25: CALLDATALOAD 00000c26: SWAP1 00000c27: PUSH1 0x20 00000c29: ADD 00000c2a: SWAP2 00000c2b: DUP5 00000c2c: PUSH1 0x01 00000c2e: DUP4 00000c2f: MUL 00000c30: DUP5 00000c31: ADD 00000c32: GT 00000c33: PUSH1 0x01 00000c35: PUSH1 0x20 00000c37: SHL 00000c38: DUP4 00000c39: GT 00000c3a: OR 00000c3b: ISZERO 00000c3c: PUSH2 0x0c44 00000c3f: JUMPI 00000c40: PUSH1 0x00 00000c42: DUP1 00000c43: REVERT 00000c44: JUMPDEST 00000c45: SWAP2 00000c46: SWAP1 00000c47: DUP1 00000c48: DUP1 00000c49: PUSH1 0x1f 00000c4b: ADD 00000c4c: PUSH1 0x20 00000c4e: DUP1 00000c4f: SWAP2 00000c50: DIV 00000c51: MUL 00000c52: PUSH1 0x20 00000c54: ADD 00000c55: PUSH1 0x40 00000c57: MLOAD 00000c58: SWAP1 00000c59: DUP2 00000c5a: ADD 00000c5b: PUSH1 0x40 00000c5d: MSTORE 00000c5e: DUP1 00000c5f: SWAP4 00000c60: SWAP3 00000c61: SWAP2 00000c62: SWAP1 00000c63: DUP2 00000c64: DUP2 00000c65: MSTORE 00000c66: PUSH1 0x20 00000c68: ADD 00000c69: DUP4 00000c6a: DUP4 00000c6b: DUP1 00000c6c: DUP3 00000c6d: DUP5 00000c6e: CALLDATACOPY 00000c6f: PUSH1 0x00 00000c71: SWAP3 00000c72: ADD 00000c73: SWAP2 00000c74: SWAP1 00000c75: SWAP2 00000c76: MSTORE 00000c77: POP 00000c78: SWAP3 00000c79: SWAP6 00000c7a: POP 00000c7b: PUSH2 0x2142 00000c7e: SWAP5 00000c7f: POP 00000c80: POP 00000c81: POP 00000c82: POP 00000c83: POP 00000c84: JUMP 00000c85: JUMPDEST 00000c86: PUSH2 0x0614 00000c89: PUSH1 0x04 00000c8b: DUP1 00000c8c: CALLDATASIZE 00000c8d: SUB 00000c8e: PUSH1 0x40 00000c90: DUP2 00000c91: LT 00000c92: ISZERO 00000c93: PUSH2 0x0c9b 00000c96: JUMPI 00000c97: PUSH1 0x00 00000c99: DUP1 00000c9a: REVERT 00000c9b: JUMPDEST 00000c9c: POP 00000c9d: DUP1 00000c9e: CALLDATALOAD 00000c9f: SWAP1 00000ca0: PUSH1 0x20 00000ca2: ADD 00000ca3: CALLDATALOAD 00000ca4: PUSH1 0x01 00000ca6: PUSH1 0x01 00000ca8: PUSH1 0xa0 00000caa: SHL 00000cab: SUB 00000cac: AND 00000cad: PUSH2 0x21d3 00000cb0: JUMP 00000cb1: JUMPDEST 00000cb2: CALLVALUE 00000cb3: DUP1 00000cb4: ISZERO 00000cb5: PUSH2 0x0cbd 00000cb8: JUMPI 00000cb9: PUSH1 0x00 00000cbb: DUP1 00000cbc: REVERT 00000cbd: JUMPDEST 00000cbe: POP 00000cbf: PUSH2 0x0702 00000cc2: PUSH2 0x21e7 00000cc5: JUMP 00000cc6: JUMPDEST 00000cc7: CALLVALUE 00000cc8: DUP1 00000cc9: ISZERO 00000cca: PUSH2 0x0cd2 00000ccd: JUMPI 00000cce: PUSH1 0x00 00000cd0: DUP1 00000cd1: REVERT 00000cd2: JUMPDEST 00000cd3: POP 00000cd4: PUSH2 0x0614 00000cd7: PUSH1 0x04 00000cd9: DUP1 00000cda: CALLDATASIZE 00000cdb: SUB 00000cdc: PUSH1 0x40 00000cde: DUP2 00000cdf: LT 00000ce0: ISZERO 00000ce1: PUSH2 0x0ce9 00000ce4: JUMPI 00000ce5: PUSH1 0x00 00000ce7: DUP1 00000ce8: REVERT 00000ce9: JUMPDEST 00000cea: POP 00000ceb: PUSH1 0x01 00000ced: PUSH1 0x01 00000cef: PUSH1 0xa0 00000cf1: SHL 00000cf2: SUB 00000cf3: DUP2 00000cf4: CALLDATALOAD 00000cf5: AND 00000cf6: SWAP1 00000cf7: PUSH1 0x20 00000cf9: ADD 00000cfa: CALLDATALOAD 00000cfb: PUSH2 0x21f3 00000cfe: JUMP 00000cff: JUMPDEST 00000d00: CALLVALUE 00000d01: DUP1 00000d02: ISZERO 00000d03: PUSH2 0x0d0b 00000d06: JUMPI 00000d07: PUSH1 0x00 00000d09: DUP1 00000d0a: REVERT 00000d0b: JUMPDEST 00000d0c: POP 00000d0d: PUSH2 0x0702 00000d10: PUSH2 0x24f7 00000d13: JUMP 00000d14: JUMPDEST 00000d15: CALLVALUE 00000d16: DUP1 00000d17: ISZERO 00000d18: PUSH2 0x0d20 00000d1b: JUMPI 00000d1c: PUSH1 0x00 00000d1e: DUP1 00000d1f: REVERT 00000d20: JUMPDEST 00000d21: POP 00000d22: PUSH2 0x0614 00000d25: PUSH1 0x04 00000d27: DUP1 00000d28: CALLDATASIZE 00000d29: SUB 00000d2a: PUSH1 0x60 00000d2c: DUP2 00000d2d: LT 00000d2e: ISZERO 00000d2f: PUSH2 0x0d37 00000d32: JUMPI 00000d33: PUSH1 0x00 00000d35: DUP1 00000d36: REVERT 00000d37: JUMPDEST 00000d38: POP 00000d39: DUP1 00000d3a: CALLDATALOAD 00000d3b: SWAP1 00000d3c: PUSH1 0x20 00000d3e: DUP2 00000d3f: ADD 00000d40: CALLDATALOAD 00000d41: SWAP1 00000d42: PUSH1 0x40 00000d44: ADD 00000d45: CALLDATALOAD 00000d46: PUSH1 0x01 00000d48: PUSH1 0x01 00000d4a: PUSH1 0xa0 00000d4c: SHL 00000d4d: SUB 00000d4e: AND 00000d4f: PUSH2 0x2503 00000d52: JUMP 00000d53: JUMPDEST 00000d54: CALLVALUE 00000d55: DUP1 00000d56: ISZERO 00000d57: PUSH2 0x0d5f 00000d5a: JUMPI 00000d5b: PUSH1 0x00 00000d5d: DUP1 00000d5e: REVERT 00000d5f: JUMPDEST 00000d60: POP 00000d61: PUSH2 0x050f 00000d64: PUSH1 0x04 00000d66: DUP1 00000d67: CALLDATASIZE 00000d68: SUB 00000d69: PUSH1 0x20 00000d6b: DUP2 00000d6c: LT 00000d6d: ISZERO 00000d6e: PUSH2 0x0d76 00000d71: JUMPI 00000d72: PUSH1 0x00 00000d74: DUP1 00000d75: REVERT 00000d76: JUMPDEST 00000d77: POP 00000d78: CALLDATALOAD 00000d79: PUSH1 0x01 00000d7b: PUSH1 0x01 00000d7d: PUSH1 0xa0 00000d7f: SHL 00000d80: SUB 00000d81: AND 00000d82: PUSH2 0x2517 00000d85: JUMP 00000d86: JUMPDEST 00000d87: PUSH2 0x0614 00000d8a: PUSH1 0x04 00000d8c: DUP1 00000d8d: CALLDATASIZE 00000d8e: SUB 00000d8f: PUSH1 0x40 00000d91: DUP2 00000d92: LT 00000d93: ISZERO 00000d94: PUSH2 0x0d9c 00000d97: JUMPI 00000d98: PUSH1 0x00 00000d9a: DUP1 00000d9b: REVERT 00000d9c: JUMPDEST 00000d9d: POP 00000d9e: DUP1 00000d9f: CALLDATALOAD 00000da0: SWAP1 00000da1: PUSH1 0x20 00000da3: ADD 00000da4: CALLDATALOAD 00000da5: PUSH1 0x01 00000da7: PUSH1 0x01 00000da9: PUSH1 0xa0 00000dab: SHL 00000dac: SUB 00000dad: AND 00000dae: PUSH2 0x253c 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 0x079a 00000dc3: PUSH2 0x2550 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 0x03d5 00000dd8: PUSH1 0x04 00000dda: DUP1 00000ddb: CALLDATASIZE 00000ddc: SUB 00000ddd: PUSH1 0x40 00000ddf: DUP2 00000de0: LT 00000de1: ISZERO 00000de2: PUSH2 0x0dea 00000de5: JUMPI 00000de6: PUSH1 0x00 00000de8: DUP1 00000de9: REVERT 00000dea: JUMPDEST 00000deb: POP 00000dec: PUSH1 0x01 00000dee: PUSH1 0x01 00000df0: PUSH1 0xa0 00000df2: SHL 00000df3: SUB 00000df4: DUP2 00000df5: CALLDATALOAD 00000df6: DUP2 00000df7: AND 00000df8: SWAP2 00000df9: PUSH1 0x20 00000dfb: ADD 00000dfc: CALLDATALOAD 00000dfd: AND 00000dfe: PUSH2 0x2566 00000e01: JUMP 00000e02: JUMPDEST 00000e03: CALLVALUE 00000e04: DUP1 00000e05: ISZERO 00000e06: PUSH2 0x0e0e 00000e09: JUMPI 00000e0a: PUSH1 0x00 00000e0c: DUP1 00000e0d: REVERT 00000e0e: JUMPDEST 00000e0f: POP 00000e10: PUSH2 0x03d5 00000e13: PUSH1 0x04 00000e15: DUP1 00000e16: CALLDATASIZE 00000e17: SUB 00000e18: PUSH1 0x20 00000e1a: DUP2 00000e1b: LT 00000e1c: ISZERO 00000e1d: PUSH2 0x0e25 00000e20: JUMPI 00000e21: PUSH1 0x00 00000e23: DUP1 00000e24: REVERT 00000e25: JUMPDEST 00000e26: POP 00000e27: CALLDATALOAD 00000e28: PUSH1 0x01 00000e2a: PUSH1 0x01 00000e2c: PUSH1 0xa0 00000e2e: SHL 00000e2f: SUB 00000e30: AND 00000e31: PUSH2 0x2591 00000e34: JUMP 00000e35: JUMPDEST 00000e36: CALLVALUE 00000e37: DUP1 00000e38: ISZERO 00000e39: PUSH2 0x0e41 00000e3c: JUMPI 00000e3d: PUSH1 0x00 00000e3f: DUP1 00000e40: REVERT 00000e41: JUMPDEST 00000e42: POP 00000e43: PUSH2 0x03d5 00000e46: PUSH2 0x265c 00000e49: JUMP 00000e4a: JUMPDEST 00000e4b: CALLVALUE 00000e4c: DUP1 00000e4d: ISZERO 00000e4e: PUSH2 0x0e56 00000e51: JUMPI 00000e52: PUSH1 0x00 00000e54: DUP1 00000e55: REVERT 00000e56: JUMPDEST 00000e57: POP 00000e58: PUSH2 0x0614 00000e5b: PUSH1 0x04 00000e5d: DUP1 00000e5e: CALLDATASIZE 00000e5f: SUB 00000e60: PUSH1 0x20 00000e62: DUP2 00000e63: LT 00000e64: ISZERO 00000e65: PUSH2 0x0e6d 00000e68: JUMPI 00000e69: PUSH1 0x00 00000e6b: DUP1 00000e6c: REVERT 00000e6d: JUMPDEST 00000e6e: POP 00000e6f: CALLDATALOAD 00000e70: PUSH1 0x01 00000e72: PUSH1 0x01 00000e74: PUSH1 0xa0 00000e76: SHL 00000e77: SUB 00000e78: AND 00000e79: PUSH2 0x2662 00000e7c: JUMP 00000e7d: JUMPDEST 00000e7e: CALLVALUE 00000e7f: DUP1 00000e80: ISZERO 00000e81: PUSH2 0x0e89 00000e84: JUMPI 00000e85: PUSH1 0x00 00000e87: DUP1 00000e88: REVERT 00000e89: JUMPDEST 00000e8a: POP 00000e8b: PUSH2 0x0614 00000e8e: PUSH1 0x04 00000e90: DUP1 00000e91: CALLDATASIZE 00000e92: SUB 00000e93: PUSH1 0x20 00000e95: DUP2 00000e96: LT 00000e97: ISZERO 00000e98: PUSH2 0x0ea0 00000e9b: JUMPI 00000e9c: PUSH1 0x00 00000e9e: DUP1 00000e9f: REVERT 00000ea0: JUMPDEST 00000ea1: POP 00000ea2: CALLDATALOAD 00000ea3: PUSH2 0x2704 00000ea6: JUMP 00000ea7: JUMPDEST 00000ea8: PUSH2 0x0614 00000eab: PUSH1 0x04 00000ead: DUP1 00000eae: CALLDATASIZE 00000eaf: SUB 00000eb0: PUSH1 0x40 00000eb2: DUP2 00000eb3: LT 00000eb4: ISZERO 00000eb5: PUSH2 0x0ebd 00000eb8: JUMPI 00000eb9: PUSH1 0x00 00000ebb: DUP1 00000ebc: REVERT 00000ebd: JUMPDEST 00000ebe: POP 00000ebf: DUP1 00000ec0: CALLDATALOAD 00000ec1: SWAP1 00000ec2: PUSH1 0x20 00000ec4: ADD 00000ec5: CALLDATALOAD 00000ec6: PUSH1 0x01 00000ec8: PUSH1 0x01 00000eca: PUSH1 0xa0 00000ecc: SHL 00000ecd: SUB 00000ece: AND 00000ecf: PUSH2 0x2806 00000ed2: JUMP 00000ed3: JUMPDEST 00000ed4: CALLVALUE 00000ed5: DUP1 00000ed6: ISZERO 00000ed7: PUSH2 0x0edf 00000eda: JUMPI 00000edb: PUSH1 0x00 00000edd: DUP1 00000ede: REVERT 00000edf: JUMPDEST 00000ee0: POP 00000ee1: PUSH2 0x0614 00000ee4: PUSH1 0x04 00000ee6: DUP1 00000ee7: CALLDATASIZE 00000ee8: SUB 00000ee9: PUSH1 0x80 00000eeb: DUP2 00000eec: LT 00000eed: ISZERO 00000eee: PUSH2 0x0ef6 00000ef1: JUMPI 00000ef2: PUSH1 0x00 00000ef4: DUP1 00000ef5: REVERT 00000ef6: JUMPDEST 00000ef7: POP 00000ef8: DUP1 00000ef9: CALLDATALOAD 00000efa: SWAP1 00000efb: PUSH1 0x20 00000efd: DUP2 00000efe: ADD 00000eff: CALLDATALOAD 00000f00: SWAP1 00000f01: PUSH1 0x40 00000f03: DUP2 00000f04: ADD 00000f05: CALLDATALOAD 00000f06: SWAP1 00000f07: PUSH1 0x60 00000f09: ADD 00000f0a: CALLDATALOAD 00000f0b: PUSH2 0x2819 00000f0e: JUMP 00000f0f: JUMPDEST 00000f10: CALLVALUE 00000f11: DUP1 00000f12: ISZERO 00000f13: PUSH2 0x0f1b 00000f16: JUMPI 00000f17: PUSH1 0x00 00000f19: DUP1 00000f1a: REVERT 00000f1b: JUMPDEST 00000f1c: POP 00000f1d: PUSH2 0x0614 00000f20: PUSH1 0x04 00000f22: DUP1 00000f23: CALLDATASIZE 00000f24: SUB 00000f25: PUSH1 0x20 00000f27: DUP2 00000f28: LT 00000f29: ISZERO 00000f2a: PUSH2 0x0f32 00000f2d: JUMPI 00000f2e: PUSH1 0x00 00000f30: DUP1 00000f31: REVERT 00000f32: JUMPDEST 00000f33: POP 00000f34: CALLDATALOAD 00000f35: PUSH1 0x01 00000f37: PUSH1 0x01 00000f39: PUSH1 0xa0 00000f3b: SHL 00000f3c: SUB 00000f3d: AND 00000f3e: PUSH2 0x29f1 00000f41: JUMP 00000f42: JUMPDEST 00000f43: CALLVALUE 00000f44: DUP1 00000f45: ISZERO 00000f46: PUSH2 0x0f4e 00000f49: JUMPI 00000f4a: PUSH1 0x00 00000f4c: DUP1 00000f4d: REVERT 00000f4e: JUMPDEST 00000f4f: POP 00000f50: PUSH2 0x050f 00000f53: PUSH1 0x04 00000f55: DUP1 00000f56: CALLDATASIZE 00000f57: SUB 00000f58: PUSH1 0x20 00000f5a: DUP2 00000f5b: LT 00000f5c: ISZERO 00000f5d: PUSH2 0x0f65 00000f60: JUMPI 00000f61: PUSH1 0x00 00000f63: DUP1 00000f64: REVERT 00000f65: JUMPDEST 00000f66: POP 00000f67: CALLDATALOAD 00000f68: PUSH1 0x01 00000f6a: PUSH1 0x01 00000f6c: PUSH1 0xa0 00000f6e: SHL 00000f6f: SUB 00000f70: AND 00000f71: PUSH2 0x2a44 00000f74: JUMP 00000f75: JUMPDEST 00000f76: CALLVALUE 00000f77: DUP1 00000f78: ISZERO 00000f79: PUSH2 0x0f81 00000f7c: JUMPI 00000f7d: PUSH1 0x00 00000f7f: DUP1 00000f80: REVERT 00000f81: JUMPDEST 00000f82: POP 00000f83: PUSH2 0x0614 00000f86: PUSH2 0x2a51 00000f89: JUMP 00000f8a: JUMPDEST 00000f8b: PUSH1 0x00 00000f8d: PUSH2 0x0f94 00000f90: PUSH2 0x1dd6 00000f93: JUMP 00000f94: JUMPDEST 00000f95: ISZERO 00000f96: PUSH2 0x0fd4 00000f99: JUMPI 00000f9a: PUSH1 0x40 00000f9c: DUP1 00000f9d: MLOAD 00000f9e: PUSH3 0x461bcd 00000fa2: PUSH1 0xe5 00000fa4: SHL 00000fa5: DUP2 00000fa6: MSTORE 00000fa7: PUSH1 0x20 00000fa9: PUSH1 0x04 00000fab: DUP3 00000fac: ADD 00000fad: MSTORE 00000fae: PUSH1 0x18 00000fb0: PUSH1 0x24 00000fb2: DUP3 00000fb3: ADD 00000fb4: MSTORE 00000fb5: PUSH1 0x00 00000fb7: DUP1 00000fb8: MLOAD 00000fb9: PUSH1 0x20 00000fbb: PUSH2 0x40dc 00000fbe: DUP4 00000fbf: CODECOPY 00000fc0: DUP2 00000fc1: MLOAD 00000fc2: SWAP2 00000fc3: MSTORE 00000fc4: PUSH1 0x44 00000fc6: DUP3 00000fc7: ADD 00000fc8: MSTORE 00000fc9: SWAP1 00000fca: MLOAD 00000fcb: SWAP1 00000fcc: DUP2 00000fcd: SWAP1 00000fce: SUB 00000fcf: PUSH1 0x64 00000fd1: ADD 00000fd2: SWAP1 00000fd3: REVERT 00000fd4: JUMPDEST 00000fd5: PUSH1 0x16 00000fd7: SLOAD 00000fd8: PUSH1 0x40 00000fda: DUP1 00000fdb: MLOAD 00000fdc: PUSH4 0x23b872dd 00000fe1: PUSH1 0xe0 00000fe3: SHL 00000fe4: DUP2 00000fe5: MSTORE 00000fe6: CALLER 00000fe7: PUSH1 0x04 00000fe9: DUP3 00000fea: ADD 00000feb: MSTORE 00000fec: ADDRESS 00000fed: PUSH1 0x24 00000fef: DUP3 00000ff0: ADD 00000ff1: MSTORE 00000ff2: PUSH1 0x44 00000ff4: DUP2 00000ff5: ADD 00000ff6: DUP6 00000ff7: SWAP1 00000ff8: MSTORE 00000ff9: SWAP1 00000ffa: MLOAD 00000ffb: PUSH1 0x01 00000ffd: PUSH1 0x40 00000fff: SHL 00001000: SWAP1 00001001: SWAP3 00001002: DIV 00001003: PUSH1 0x01 00001005: PUSH1 0x01 00001007: PUSH1 0xa0 00001009: SHL 0000100a: SUB 0000100b: AND 0000100c: SWAP2 0000100d: PUSH4 0x23b872dd 00001012: SWAP2 00001013: PUSH1 0x64 00001015: DUP1 00001016: DUP3 00001017: ADD 00001018: SWAP3 00001019: PUSH1 0x20 0000101b: SWAP3 0000101c: SWAP1 0000101d: SWAP2 0000101e: SWAP1 0000101f: DUP3 00001020: SWAP1 00001021: SUB 00001022: ADD 00001023: DUP2 00001024: PUSH1 0x00 00001026: DUP8 00001027: DUP1 00001028: EXTCODESIZE 00001029: ISZERO 0000102a: DUP1 0000102b: ISZERO 0000102c: PUSH2 0x1034 0000102f: JUMPI 00001030: PUSH1 0x00 00001032: DUP1 00001033: REVERT 00001034: JUMPDEST 00001035: POP 00001036: GAS 00001037: CALL 00001038: ISZERO 00001039: DUP1 0000103a: ISZERO 0000103b: PUSH2 0x1048 0000103e: JUMPI 0000103f: RETURNDATASIZE 00001040: PUSH1 0x00 00001042: DUP1 00001043: RETURNDATACOPY 00001044: RETURNDATASIZE 00001045: PUSH1 0x00 00001047: REVERT 00001048: JUMPDEST 00001049: POP 0000104a: POP 0000104b: POP 0000104c: POP 0000104d: PUSH1 0x40 0000104f: MLOAD 00001050: RETURNDATASIZE 00001051: PUSH1 0x20 00001053: DUP2 00001054: LT 00001055: ISZERO 00001056: PUSH2 0x105e 00001059: JUMPI 0000105a: PUSH1 0x00 0000105c: DUP1 0000105d: REVERT 0000105e: JUMPDEST 0000105f: POP 00001060: MLOAD 00001061: PUSH2 0x109b 00001064: JUMPI 00001065: PUSH1 0x40 00001067: MLOAD 00001068: PUSH3 0x461bcd 0000106c: PUSH1 0xe5 0000106e: SHL 0000106f: DUP2 00001070: MSTORE 00001071: PUSH1 0x04 00001073: ADD 00001074: DUP1 00001075: DUP1 00001076: PUSH1 0x20 00001078: ADD 00001079: DUP3 0000107a: DUP2 0000107b: SUB 0000107c: DUP3 0000107d: MSTORE 0000107e: PUSH1 0x27 00001080: DUP2 00001081: MSTORE 00001082: PUSH1 0x20 00001084: ADD 00001085: DUP1 00001086: PUSH2 0x3e62 00001089: PUSH1 0x27 0000108b: SWAP2 0000108c: CODECOPY 0000108d: PUSH1 0x40 0000108f: ADD 00001090: SWAP2 00001091: POP 00001092: POP 00001093: PUSH1 0x40 00001095: MLOAD 00001096: DUP1 00001097: SWAP2 00001098: SUB 00001099: SWAP1 0000109a: REVERT 0000109b: JUMPDEST 0000109c: PUSH2 0x10a4 0000109f: DUP4 000010a0: PUSH2 0x1290 000010a3: JUMP 000010a4: JUMPDEST 000010a5: PUSH2 0x10e3 000010a8: JUMPI 000010a9: PUSH1 0x40 000010ab: DUP1 000010ac: MLOAD 000010ad: PUSH3 0x461bcd 000010b1: PUSH1 0xe5 000010b3: SHL 000010b4: DUP2 000010b5: MSTORE 000010b6: PUSH1 0x20 000010b8: PUSH1 0x04 000010ba: DUP3 000010bb: ADD 000010bc: MSTORE 000010bd: PUSH1 0x14 000010bf: PUSH1 0x24 000010c1: DUP3 000010c2: ADD 000010c3: MSTORE 000010c4: PUSH1 0x00 000010c6: DUP1 000010c7: MLOAD 000010c8: PUSH1 0x20 000010ca: PUSH2 0x3e89 000010cd: DUP4 000010ce: CODECOPY 000010cf: DUP2 000010d0: MLOAD 000010d1: SWAP2 000010d2: MSTORE 000010d3: PUSH1 0x44 000010d5: DUP3 000010d6: ADD 000010d7: MSTORE 000010d8: SWAP1 000010d9: MLOAD 000010da: SWAP1 000010db: DUP2 000010dc: SWAP1 000010dd: SUB 000010de: PUSH1 0x64 000010e0: ADD 000010e1: SWAP1 000010e2: REVERT 000010e3: JUMPDEST 000010e4: PUSH1 0x40 000010e6: DUP1 000010e7: MLOAD 000010e8: PUSH1 0x01 000010ea: PUSH1 0x01 000010ec: PUSH1 0xa0 000010ee: SHL 000010ef: SUB 000010f0: DUP6 000010f1: AND 000010f2: DUP2 000010f3: MSTORE 000010f4: PUSH1 0x20 000010f6: DUP2 000010f7: ADD 000010f8: DUP5 000010f9: SWAP1 000010fa: MSTORE 000010fb: CALLER 000010fc: DUP2 000010fd: DUP4 000010fe: ADD 000010ff: MSTORE 00001100: SWAP1 00001101: MLOAD 00001102: PUSH32 0x2199418ea9428ed3ff7d460860e1edaf5831452fa4ea0f8d1a60d63c60348782 00001123: SWAP2 00001124: DUP2 00001125: SWAP1 00001126: SUB 00001127: PUSH1 0x60 00001129: ADD 0000112a: SWAP1 0000112b: LOG1 0000112c: PUSH2 0x1135 0000112f: DUP4 00001130: DUP4 00001131: PUSH2 0x2b49 00001134: JUMP 00001135: JUMPDEST 00001136: SWAP1 00001137: POP 00001138: JUMPDEST 00001139: SWAP3 0000113a: SWAP2 0000113b: POP 0000113c: POP 0000113d: JUMP 0000113e: JUMPDEST 0000113f: PUSH1 0x60 00001141: DUP1 00001142: PUSH1 0x00 00001144: DUP1 00001145: JUMPDEST 00001146: PUSH1 0x06 00001148: SLOAD 00001149: DUP2 0000114a: LT 0000114b: ISZERO 0000114c: PUSH2 0x11dc 0000114f: JUMPI 00001150: PUSH2 0x1179 00001153: PUSH1 0x06 00001155: DUP3 00001156: DUP2 00001157: SLOAD 00001158: DUP2 00001159: LT 0000115a: PUSH2 0x115f 0000115d: JUMPI 0000115e: INVALID 0000115f: JUMPDEST 00001160: PUSH1 0x00 00001162: SWAP2 00001163: DUP3 00001164: MSTORE 00001165: PUSH1 0x20 00001167: SWAP1 00001168: SWAP2 00001169: KECCAK256 0000116a: ADD 0000116b: SLOAD 0000116c: PUSH1 0x01 0000116e: PUSH1 0x01 00001170: PUSH1 0xa0 00001172: SHL 00001173: SUB 00001174: AND 00001175: PUSH2 0x1290 00001178: JUMP 00001179: JUMPDEST 0000117a: ISZERO 0000117b: PUSH2 0x11d4 0000117e: JUMPI 0000117f: PUSH1 0x06 00001181: DUP2 00001182: DUP2 00001183: SLOAD 00001184: DUP2 00001185: LT 00001186: PUSH2 0x118b 00001189: JUMPI 0000118a: INVALID 0000118b: JUMPDEST 0000118c: SWAP1 0000118d: PUSH1 0x00 0000118f: MSTORE 00001190: PUSH1 0x20 00001192: PUSH1 0x00 00001194: KECCAK256 00001195: ADD 00001196: PUSH1 0x00 00001198: SWAP1 00001199: SLOAD 0000119a: SWAP1 0000119b: PUSH2 0x0100 0000119e: EXP 0000119f: SWAP1 000011a0: DIV 000011a1: PUSH1 0x01 000011a3: PUSH1 0x01 000011a5: PUSH1 0xa0 000011a7: SHL 000011a8: SUB 000011a9: AND 000011aa: DUP4 000011ab: DUP4 000011ac: DUP2 000011ad: MLOAD 000011ae: DUP2 000011af: LT 000011b0: PUSH2 0x11b5 000011b3: JUMPI 000011b4: INVALID 000011b5: JUMPDEST 000011b6: PUSH1 0x01 000011b8: PUSH1 0x01 000011ba: PUSH1 0xa0 000011bc: SHL 000011bd: SUB 000011be: SWAP1 000011bf: SWAP3 000011c0: AND 000011c1: PUSH1 0x20 000011c3: SWAP3 000011c4: DUP4 000011c5: MUL 000011c6: SWAP2 000011c7: SWAP1 000011c8: SWAP2 000011c9: ADD 000011ca: SWAP1 000011cb: SWAP2 000011cc: ADD 000011cd: MSTORE 000011ce: PUSH1 0x01 000011d0: SWAP1 000011d1: SWAP2 000011d2: ADD 000011d3: SWAP1 000011d4: JUMPDEST 000011d5: PUSH1 0x01 000011d7: ADD 000011d8: PUSH2 0x1145 000011db: JUMP 000011dc: JUMPDEST 000011dd: POP 000011de: SWAP1 000011df: SWAP2 000011e0: POP 000011e1: POP 000011e2: JUMPDEST 000011e3: SWAP1 000011e4: JUMP 000011e5: JUMPDEST 000011e6: PUSH1 0x1a 000011e8: DUP1 000011e9: SLOAD 000011ea: PUSH1 0x40 000011ec: DUP1 000011ed: MLOAD 000011ee: PUSH1 0x20 000011f0: PUSH1 0x02 000011f2: PUSH1 0x01 000011f4: DUP6 000011f5: AND 000011f6: ISZERO 000011f7: PUSH2 0x0100 000011fa: MUL 000011fb: PUSH1 0x00 000011fd: NOT 000011fe: ADD 000011ff: SWAP1 00001200: SWAP5 00001201: AND 00001202: SWAP4 00001203: SWAP1 00001204: SWAP4 00001205: DIV 00001206: PUSH1 0x1f 00001208: DUP2 00001209: ADD 0000120a: DUP5 0000120b: SWAP1 0000120c: DIV 0000120d: DUP5 0000120e: MUL 0000120f: DUP3 00001210: ADD 00001211: DUP5 00001212: ADD 00001213: SWAP1 00001214: SWAP3 00001215: MSTORE 00001216: DUP2 00001217: DUP2 00001218: MSTORE 00001219: SWAP3 0000121a: SWAP2 0000121b: DUP4 0000121c: ADD 0000121d: DUP3 0000121e: DUP3 0000121f: DUP1 00001220: ISZERO 00001221: PUSH2 0x126b 00001224: JUMPI 00001225: DUP1 00001226: PUSH1 0x1f 00001228: LT 00001229: PUSH2 0x1240 0000122c: JUMPI 0000122d: PUSH2 0x0100 00001230: DUP1 00001231: DUP4 00001232: SLOAD 00001233: DIV 00001234: MUL 00001235: DUP4 00001236: MSTORE 00001237: SWAP2 00001238: PUSH1 0x20 0000123a: ADD 0000123b: SWAP2 0000123c: PUSH2 0x126b 0000123f: JUMP 00001240: JUMPDEST 00001241: DUP3 00001242: ADD 00001243: SWAP2 00001244: SWAP1 00001245: PUSH1 0x00 00001247: MSTORE 00001248: PUSH1 0x20 0000124a: PUSH1 0x00 0000124c: KECCAK256 0000124d: SWAP1 0000124e: JUMPDEST 0000124f: DUP2 00001250: SLOAD 00001251: DUP2 00001252: MSTORE 00001253: SWAP1 00001254: PUSH1 0x01 00001256: ADD 00001257: SWAP1 00001258: PUSH1 0x20 0000125a: ADD 0000125b: DUP1 0000125c: DUP4 0000125d: GT 0000125e: PUSH2 0x124e 00001261: JUMPI 00001262: DUP3 00001263: SWAP1 00001264: SUB 00001265: PUSH1 0x1f 00001267: AND 00001268: DUP3 00001269: ADD 0000126a: SWAP2 0000126b: JUMPDEST 0000126c: POP 0000126d: POP 0000126e: POP 0000126f: POP 00001270: POP 00001271: DUP2 00001272: JUMP 00001273: JUMPDEST 00001274: PUSH1 0x00 00001276: PUSH2 0x1287 00001279: PUSH2 0x1280 0000127c: PUSH2 0x2bc8 0000127f: JUMP 00001280: JUMPDEST 00001281: DUP5 00001282: DUP5 00001283: PUSH2 0x2bcc 00001286: JUMP 00001287: JUMPDEST 00001288: POP 00001289: PUSH1 0x01 0000128b: SWAP3 0000128c: SWAP2 0000128d: POP 0000128e: POP 0000128f: JUMP 00001290: JUMPDEST 00001291: PUSH1 0x01 00001293: PUSH1 0x01 00001295: PUSH1 0xa0 00001297: SHL 00001298: SUB 00001299: DUP2 0000129a: AND 0000129b: PUSH1 0x00 0000129d: SWAP1 0000129e: DUP2 0000129f: MSTORE 000012a0: PUSH1 0x05 000012a2: PUSH1 0x20 000012a4: MSTORE 000012a5: PUSH1 0x40 000012a7: SWAP1 000012a8: KECCAK256 000012a9: PUSH1 0x03 000012ab: ADD 000012ac: SLOAD 000012ad: PUSH1 0xff 000012af: AND 000012b0: JUMPDEST 000012b1: SWAP2 000012b2: SWAP1 000012b3: POP 000012b4: JUMP 000012b5: JUMPDEST 000012b6: PUSH1 0x00 000012b8: PUSH2 0x12ce 000012bb: PUSH1 0x13 000012bd: SLOAD 000012be: PUSH1 0x15 000012c0: SLOAD 000012c1: PUSH2 0x2cb8 000012c4: SWAP1 000012c5: SWAP2 000012c6: SWAP1 000012c7: PUSH4 0xffffffff 000012cc: AND 000012cd: JUMP 000012ce: JUMPDEST 000012cf: TIMESTAMP 000012d0: LT 000012d1: ISZERO 000012d2: DUP1 000012d3: ISZERO 000012d4: PUSH2 0x12de 000012d7: JUMPI 000012d8: POP 000012d9: PUSH1 0x15 000012db: SLOAD 000012dc: TIMESTAMP 000012dd: LT 000012de: JUMPDEST 000012df: SWAP1 000012e0: POP 000012e1: SWAP1 000012e2: JUMP 000012e3: JUMPDEST 000012e4: PUSH1 0x01 000012e6: PUSH1 0x01 000012e8: PUSH1 0xa0 000012ea: SHL 000012eb: SUB 000012ec: AND 000012ed: PUSH1 0x00 000012ef: SWAP1 000012f0: DUP2 000012f1: MSTORE 000012f2: PUSH1 0x05 000012f4: PUSH1 0x20 000012f6: MSTORE 000012f7: PUSH1 0x40 000012f9: SWAP1 000012fa: KECCAK256 000012fb: DUP1 000012fc: SLOAD 000012fd: PUSH1 0x01 000012ff: DUP3 00001300: ADD 00001301: SLOAD 00001302: PUSH1 0x02 00001304: DUP4 00001305: ADD 00001306: SLOAD 00001307: PUSH1 0x03 00001309: SWAP1 0000130a: SWAP4 0000130b: ADD 0000130c: SLOAD 0000130d: SWAP2 0000130e: SWAP4 0000130f: SWAP1 00001310: SWAP3 00001311: SWAP2 00001312: PUSH1 0xff 00001314: AND 00001315: SWAP1 00001316: JUMP 00001317: JUMPDEST 00001318: PUSH1 0x03 0000131a: SLOAD 0000131b: SWAP1 0000131c: JUMP 0000131d: JUMPDEST 0000131e: PUSH2 0x1325 00001321: PUSH2 0x1dd6 00001324: JUMP 00001325: JUMPDEST 00001326: ISZERO 00001327: PUSH2 0x1365 0000132a: JUMPI 0000132b: PUSH1 0x40 0000132d: DUP1 0000132e: MLOAD 0000132f: PUSH3 0x461bcd 00001333: PUSH1 0xe5 00001335: SHL 00001336: DUP2 00001337: MSTORE 00001338: PUSH1 0x20 0000133a: PUSH1 0x04 0000133c: DUP3 0000133d: ADD 0000133e: MSTORE 0000133f: PUSH1 0x18 00001341: PUSH1 0x24 00001343: DUP3 00001344: ADD 00001345: MSTORE 00001346: PUSH1 0x00 00001348: DUP1 00001349: MLOAD 0000134a: PUSH1 0x20 0000134c: PUSH2 0x40dc 0000134f: DUP4 00001350: CODECOPY 00001351: DUP2 00001352: MLOAD 00001353: SWAP2 00001354: MSTORE 00001355: PUSH1 0x44 00001357: DUP3 00001358: ADD 00001359: MSTORE 0000135a: SWAP1 0000135b: MLOAD 0000135c: SWAP1 0000135d: DUP2 0000135e: SWAP1 0000135f: SUB 00001360: PUSH1 0x64 00001362: ADD 00001363: SWAP1 00001364: REVERT 00001365: JUMPDEST 00001366: PUSH2 0x136e 00001369: CALLER 0000136a: PUSH2 0x1290 0000136d: JUMP 0000136e: JUMPDEST 0000136f: PUSH2 0x13ad 00001372: JUMPI 00001373: PUSH1 0x40 00001375: DUP1 00001376: MLOAD 00001377: PUSH3 0x461bcd 0000137b: PUSH1 0xe5 0000137d: SHL 0000137e: DUP2 0000137f: MSTORE 00001380: PUSH1 0x20 00001382: PUSH1 0x04 00001384: DUP3 00001385: ADD 00001386: MSTORE 00001387: PUSH1 0x14 00001389: PUSH1 0x24 0000138b: DUP3 0000138c: ADD 0000138d: MSTORE 0000138e: PUSH1 0x00 00001390: DUP1 00001391: MLOAD 00001392: PUSH1 0x20 00001394: PUSH2 0x3e89 00001397: DUP4 00001398: CODECOPY 00001399: DUP2 0000139a: MLOAD 0000139b: SWAP2 0000139c: MSTORE 0000139d: PUSH1 0x44 0000139f: DUP3 000013a0: ADD 000013a1: MSTORE 000013a2: SWAP1 000013a3: MLOAD 000013a4: SWAP1 000013a5: DUP2 000013a6: SWAP1 000013a7: SUB 000013a8: PUSH1 0x64 000013aa: ADD 000013ab: SWAP1 000013ac: REVERT 000013ad: JUMPDEST 000013ae: CALLER 000013af: PUSH1 0x00 000013b1: SWAP1 000013b2: DUP2 000013b3: MSTORE 000013b4: PUSH1 0x05 000013b6: PUSH1 0x20 000013b8: MSTORE 000013b9: PUSH1 0x40 000013bb: DUP2 000013bc: KECCAK256 000013bd: PUSH1 0x01 000013bf: DUP2 000013c0: ADD 000013c1: SLOAD 000013c2: SWAP1 000013c3: SWAP2 000013c4: SWAP1 000013c5: PUSH2 0x13d4 000013c8: SWAP1 000013c9: DUP6 000013ca: PUSH4 0xffffffff 000013cf: PUSH2 0x2cfa 000013d2: AND 000013d3: JUMP 000013d4: JUMPDEST 000013d5: SWAP1 000013d6: POP 000013d7: PUSH2 0x13e4 000013da: DUP3 000013db: PUSH1 0x00 000013dd: ADD 000013de: SLOAD 000013df: DUP3 000013e0: PUSH2 0x2d54 000013e3: JUMP 000013e4: JUMPDEST 000013e5: PUSH2 0x1426 000013e8: JUMPI 000013e9: PUSH1 0x40 000013eb: DUP1 000013ec: MLOAD 000013ed: PUSH3 0x461bcd 000013f1: PUSH1 0xe5 000013f3: SHL 000013f4: DUP2 000013f5: MSTORE 000013f6: PUSH1 0x20 000013f8: PUSH1 0x04 000013fa: DUP3 000013fb: ADD 000013fc: MSTORE 000013fd: PUSH1 0x0e 000013ff: PUSH1 0x24 00001401: DUP3 00001402: ADD 00001403: MSTORE 00001404: PUSH14 0x1d5b9cd85999481d1bc81b5a5b9d 00001413: PUSH1 0x92 00001415: SHL 00001416: PUSH1 0x44 00001418: DUP3 00001419: ADD 0000141a: MSTORE 0000141b: SWAP1 0000141c: MLOAD 0000141d: SWAP1 0000141e: DUP2 0000141f: SWAP1 00001420: SUB 00001421: PUSH1 0x64 00001423: ADD 00001424: SWAP1 00001425: REVERT 00001426: JUMPDEST 00001427: PUSH1 0x01 00001429: DUP3 0000142a: ADD 0000142b: DUP2 0000142c: SWAP1 0000142d: SSTORE 0000142e: PUSH2 0x1437 00001431: DUP4 00001432: DUP6 00001433: PUSH2 0x2e59 00001436: JUMP 00001437: JUMPDEST 00001438: PUSH1 0x40 0000143a: DUP1 0000143b: MLOAD 0000143c: PUSH1 0x01 0000143e: PUSH1 0x01 00001440: PUSH1 0xa0 00001442: SHL 00001443: SUB 00001444: DUP6 00001445: AND 00001446: DUP2 00001447: MSTORE 00001448: PUSH1 0x20 0000144a: DUP2 0000144b: ADD 0000144c: DUP7 0000144d: SWAP1 0000144e: MSTORE 0000144f: CALLER 00001450: DUP2 00001451: DUP4 00001452: ADD 00001453: MSTORE 00001454: SWAP1 00001455: MLOAD 00001456: PUSH32 0x5e5aaabf04e3760968ffb551bdf9708f4dbf95d53ad98539e91a56b125e88f08 00001477: SWAP2 00001478: DUP2 00001479: SWAP1 0000147a: SUB 0000147b: PUSH1 0x60 0000147d: ADD 0000147e: SWAP1 0000147f: LOG1 00001480: POP 00001481: POP 00001482: JUMPDEST 00001483: POP 00001484: POP 00001485: JUMP 00001486: JUMPDEST 00001487: PUSH1 0x00 00001489: PUSH2 0x1493 0000148c: DUP5 0000148d: DUP5 0000148e: DUP5 0000148f: PUSH2 0x2f4b 00001492: JUMP 00001493: JUMPDEST 00001494: PUSH2 0x1509 00001497: DUP5 00001498: PUSH2 0x149f 0000149b: PUSH2 0x2bc8 0000149e: JUMP 0000149f: JUMPDEST 000014a0: PUSH2 0x1504 000014a3: DUP6 000014a4: PUSH1 0x40 000014a6: MLOAD 000014a7: DUP1 000014a8: PUSH1 0x60 000014aa: ADD 000014ab: PUSH1 0x40 000014ad: MSTORE 000014ae: DUP1 000014af: PUSH1 0x28 000014b1: DUP2 000014b2: MSTORE 000014b3: PUSH1 0x20 000014b5: ADD 000014b6: PUSH2 0x3fcd 000014b9: PUSH1 0x28 000014bb: SWAP2 000014bc: CODECOPY 000014bd: PUSH1 0x01 000014bf: PUSH1 0x01 000014c1: PUSH1 0xa0 000014c3: SHL 000014c4: SUB 000014c5: DUP11 000014c6: AND 000014c7: PUSH1 0x00 000014c9: SWAP1 000014ca: DUP2 000014cb: MSTORE 000014cc: PUSH1 0x02 000014ce: PUSH1 0x20 000014d0: MSTORE 000014d1: PUSH1 0x40 000014d3: DUP2 000014d4: KECCAK256 000014d5: SWAP1 000014d6: PUSH2 0x14dd 000014d9: PUSH2 0x2bc8 000014dc: JUMP 000014dd: JUMPDEST 000014de: PUSH1 0x01 000014e0: PUSH1 0x01 000014e2: PUSH1 0xa0 000014e4: SHL 000014e5: SUB 000014e6: AND 000014e7: DUP2 000014e8: MSTORE 000014e9: PUSH1 0x20 000014eb: DUP2 000014ec: ADD 000014ed: SWAP2 000014ee: SWAP1 000014ef: SWAP2 000014f0: MSTORE 000014f1: PUSH1 0x40 000014f3: ADD 000014f4: PUSH1 0x00 000014f6: KECCAK256 000014f7: SLOAD 000014f8: SWAP2 000014f9: SWAP1 000014fa: PUSH4 0xffffffff 000014ff: PUSH2 0x30a9 00001502: AND 00001503: JUMP 00001504: JUMPDEST 00001505: PUSH2 0x2bcc 00001508: JUMP 00001509: JUMPDEST 0000150a: POP 0000150b: PUSH1 0x01 0000150d: SWAP4 0000150e: SWAP3 0000150f: POP 00001510: POP 00001511: POP 00001512: JUMP 00001513: JUMPDEST 00001514: PUSH1 0x1c 00001516: SLOAD 00001517: PUSH1 0xff 00001519: AND 0000151a: DUP2 0000151b: JUMP 0000151c: JUMPDEST 0000151d: PUSH2 0x1526 00001520: CALLER 00001521: DUP4 00001522: PUSH2 0x0f8a 00001525: JUMP 00001526: JUMPDEST 00001527: POP 00001528: PUSH2 0x1531 0000152b: DUP4 0000152c: ADDRESS 0000152d: PUSH2 0x131d 00001530: JUMP 00001531: JUMPDEST 00001532: PUSH1 0x04 00001534: DUP1 00001535: SLOAD 00001536: PUSH1 0x40 00001538: DUP1 00001539: MLOAD 0000153a: PUSH4 0x095ea7b3 0000153f: PUSH1 0xe0 00001541: SHL 00001542: DUP2 00001543: MSTORE 00001544: PUSH1 0x01 00001546: PUSH1 0x01 00001548: PUSH1 0xa0 0000154a: SHL 0000154b: SUB 0000154c: SWAP1 0000154d: SWAP3 0000154e: AND 0000154f: SWAP3 00001550: DUP3 00001551: ADD 00001552: SWAP3 00001553: SWAP1 00001554: SWAP3 00001555: MSTORE 00001556: PUSH1 0x24 00001558: DUP2 00001559: ADD 0000155a: DUP6 0000155b: SWAP1 0000155c: MSTORE 0000155d: SWAP1 0000155e: MLOAD 0000155f: ADDRESS 00001560: SWAP2 00001561: PUSH4 0x095ea7b3 00001566: SWAP2 00001567: PUSH1 0x44 00001569: DUP1 0000156a: DUP4 0000156b: ADD 0000156c: SWAP3 0000156d: PUSH1 0x20 0000156f: SWAP3 00001570: SWAP2 00001571: SWAP1 00001572: DUP3 00001573: SWAP1 00001574: SUB 00001575: ADD 00001576: DUP2 00001577: PUSH1 0x00 00001579: DUP8 0000157a: DUP1 0000157b: EXTCODESIZE 0000157c: ISZERO 0000157d: DUP1 0000157e: ISZERO 0000157f: PUSH2 0x1587 00001582: JUMPI 00001583: PUSH1 0x00 00001585: DUP1 00001586: REVERT 00001587: JUMPDEST 00001588: POP 00001589: GAS 0000158a: CALL 0000158b: ISZERO 0000158c: DUP1 0000158d: ISZERO 0000158e: PUSH2 0x159b 00001591: JUMPI 00001592: RETURNDATASIZE 00001593: PUSH1 0x00 00001595: DUP1 00001596: RETURNDATACOPY 00001597: RETURNDATASIZE 00001598: PUSH1 0x00 0000159a: REVERT 0000159b: JUMPDEST 0000159c: POP 0000159d: POP 0000159e: POP 0000159f: POP 000015a0: PUSH1 0x40 000015a2: MLOAD 000015a3: RETURNDATASIZE 000015a4: PUSH1 0x20 000015a6: DUP2 000015a7: LT 000015a8: ISZERO 000015a9: PUSH2 0x15b1 000015ac: JUMPI 000015ad: PUSH1 0x00 000015af: DUP1 000015b0: REVERT 000015b1: JUMPDEST 000015b2: POP 000015b3: POP 000015b4: PUSH1 0x04 000015b6: DUP1 000015b7: SLOAD 000015b8: PUSH1 0x40 000015ba: DUP1 000015bb: MLOAD 000015bc: PUSH4 0x7dafae59 000015c1: PUSH1 0xe0 000015c3: SHL 000015c4: DUP2 000015c5: MSTORE 000015c6: PUSH1 0x01 000015c8: PUSH1 0x01 000015ca: PUSH1 0xa0 000015cc: SHL 000015cd: SUB 000015ce: DUP6 000015cf: DUP2 000015d0: AND 000015d1: SWAP5 000015d2: DUP3 000015d3: ADD 000015d4: SWAP5 000015d5: SWAP1 000015d6: SWAP5 000015d7: MSTORE 000015d8: ADDRESS 000015d9: PUSH1 0x24 000015db: DUP3 000015dc: ADD 000015dd: MSTORE 000015de: PUSH1 0x00 000015e0: PUSH1 0x44 000015e2: DUP3 000015e3: ADD 000015e4: DUP2 000015e5: SWAP1 000015e6: MSTORE 000015e7: PUSH1 0x64 000015e9: DUP3 000015ea: ADD 000015eb: DUP9 000015ec: SWAP1 000015ed: MSTORE 000015ee: SWAP2 000015ef: MLOAD 000015f0: SWAP4 000015f1: SWAP1 000015f2: SWAP3 000015f3: AND 000015f4: SWAP3 000015f5: PUSH4 0x7dafae59 000015fa: SWAP3 000015fb: PUSH1 0x84 000015fd: DUP1 000015fe: DUP3 000015ff: ADD 00001600: SWAP4 00001601: SWAP3 00001602: SWAP2 00001603: DUP3 00001604: SWAP1 00001605: SUB 00001606: ADD 00001607: DUP2 00001608: DUP4 00001609: DUP8 0000160a: DUP1 0000160b: EXTCODESIZE 0000160c: ISZERO 0000160d: DUP1 0000160e: ISZERO 0000160f: PUSH2 0x1617 00001612: JUMPI 00001613: PUSH1 0x00 00001615: DUP1 00001616: REVERT 00001617: JUMPDEST 00001618: POP 00001619: GAS 0000161a: CALL 0000161b: ISZERO 0000161c: DUP1 0000161d: ISZERO 0000161e: PUSH2 0x162b 00001621: JUMPI 00001622: RETURNDATASIZE 00001623: PUSH1 0x00 00001625: DUP1 00001626: RETURNDATACOPY 00001627: RETURNDATASIZE 00001628: PUSH1 0x00 0000162a: REVERT 0000162b: JUMPDEST 0000162c: POP 0000162d: POP 0000162e: POP 0000162f: POP 00001630: POP 00001631: POP 00001632: POP 00001633: JUMP 00001634: JUMPDEST 00001635: PUSH2 0x163c 00001638: PUSH2 0x1dd6 0000163b: JUMP 0000163c: JUMPDEST 0000163d: ISZERO 0000163e: PUSH2 0x167c 00001641: JUMPI 00001642: PUSH1 0x40 00001644: DUP1 00001645: MLOAD 00001646: PUSH3 0x461bcd 0000164a: PUSH1 0xe5 0000164c: SHL 0000164d: DUP2 0000164e: MSTORE 0000164f: PUSH1 0x20 00001651: PUSH1 0x04 00001653: DUP3 00001654: ADD 00001655: MSTORE 00001656: PUSH1 0x18 00001658: PUSH1 0x24 0000165a: DUP3 0000165b: ADD 0000165c: MSTORE 0000165d: PUSH1 0x00 0000165f: DUP1 00001660: MLOAD 00001661: PUSH1 0x20 00001663: PUSH2 0x40dc 00001666: DUP4 00001667: CODECOPY 00001668: DUP2 00001669: MLOAD 0000166a: SWAP2 0000166b: MSTORE 0000166c: PUSH1 0x44 0000166e: DUP3 0000166f: ADD 00001670: MSTORE 00001671: SWAP1 00001672: MLOAD 00001673: SWAP1 00001674: DUP2 00001675: SWAP1 00001676: SUB 00001677: PUSH1 0x64 00001679: ADD 0000167a: SWAP1 0000167b: REVERT 0000167c: JUMPDEST 0000167d: PUSH1 0x00 0000167f: DUP2 00001680: GT 00001681: PUSH2 0x16d1 00001684: JUMPI 00001685: PUSH1 0x40 00001687: DUP1 00001688: MLOAD 00001689: PUSH3 0x461bcd 0000168d: PUSH1 0xe5 0000168f: SHL 00001690: DUP2 00001691: MSTORE 00001692: PUSH1 0x20 00001694: PUSH1 0x04 00001696: DUP3 00001697: ADD 00001698: MSTORE 00001699: PUSH1 0x1a 0000169b: PUSH1 0x24 0000169d: DUP3 0000169e: ADD 0000169f: MSTORE 000016a0: PUSH32 0x43616e6e6f742072656d6f7665203020636f6c6c61746572616c000000000000 000016c1: PUSH1 0x44 000016c3: DUP3 000016c4: ADD 000016c5: MSTORE 000016c6: SWAP1 000016c7: MLOAD 000016c8: SWAP1 000016c9: DUP2 000016ca: SWAP1 000016cb: SUB 000016cc: PUSH1 0x64 000016ce: ADD 000016cf: SWAP1 000016d0: REVERT 000016d1: JUMPDEST 000016d2: PUSH2 0x16da 000016d5: CALLER 000016d6: PUSH2 0x1290 000016d9: JUMP 000016da: JUMPDEST 000016db: PUSH2 0x1719 000016de: JUMPI 000016df: PUSH1 0x40 000016e1: DUP1 000016e2: MLOAD 000016e3: PUSH3 0x461bcd 000016e7: PUSH1 0xe5 000016e9: SHL 000016ea: DUP2 000016eb: MSTORE 000016ec: PUSH1 0x20 000016ee: PUSH1 0x04 000016f0: DUP3 000016f1: ADD 000016f2: MSTORE 000016f3: PUSH1 0x14 000016f5: PUSH1 0x24 000016f7: DUP3 000016f8: ADD 000016f9: MSTORE 000016fa: PUSH1 0x00 000016fc: DUP1 000016fd: MLOAD 000016fe: PUSH1 0x20 00001700: PUSH2 0x3e89 00001703: DUP4 00001704: CODECOPY 00001705: DUP2 00001706: MLOAD 00001707: SWAP2 00001708: MSTORE 00001709: PUSH1 0x44 0000170b: DUP3 0000170c: ADD 0000170d: MSTORE 0000170e: SWAP1 0000170f: MLOAD 00001710: SWAP1 00001711: DUP2 00001712: SWAP1 00001713: SUB 00001714: PUSH1 0x64 00001716: ADD 00001717: SWAP1 00001718: REVERT 00001719: JUMPDEST 0000171a: CALLER 0000171b: PUSH1 0x00 0000171d: DUP2 0000171e: DUP2 0000171f: MSTORE 00001720: PUSH1 0x05 00001722: PUSH1 0x20 00001724: MSTORE 00001725: PUSH1 0x40 00001727: SWAP1 00001728: KECCAK256 00001729: SWAP1 0000172a: PUSH2 0x1732 0000172d: SWAP1 0000172e: PUSH2 0x3140 00001731: JUMP 00001732: JUMPDEST 00001733: DUP3 00001734: GT 00001735: ISZERO 00001736: PUSH2 0x1770 00001739: JUMPI 0000173a: PUSH1 0x40 0000173c: MLOAD 0000173d: PUSH3 0x461bcd 00001741: PUSH1 0xe5 00001743: SHL 00001744: DUP2 00001745: MSTORE 00001746: PUSH1 0x04 00001748: ADD 00001749: DUP1 0000174a: DUP1 0000174b: PUSH1 0x20 0000174d: ADD 0000174e: DUP3 0000174f: DUP2 00001750: SUB 00001751: DUP3 00001752: MSTORE 00001753: PUSH1 0x27 00001755: DUP2 00001756: MSTORE 00001757: PUSH1 0x20 00001759: ADD 0000175a: DUP1 0000175b: PUSH2 0x3f79 0000175e: PUSH1 0x27 00001760: SWAP2 00001761: CODECOPY 00001762: PUSH1 0x40 00001764: ADD 00001765: SWAP2 00001766: POP 00001767: POP 00001768: PUSH1 0x40 0000176a: MLOAD 0000176b: DUP1 0000176c: SWAP2 0000176d: SUB 0000176e: SWAP1 0000176f: REVERT 00001770: JUMPDEST 00001771: DUP1 00001772: SLOAD 00001773: PUSH1 0x00 00001775: SWAP1 00001776: PUSH2 0x1785 00001779: SWAP1 0000177a: DUP5 0000177b: PUSH4 0xffffffff 00001780: PUSH2 0x2cb8 00001783: AND 00001784: JUMP 00001785: JUMPDEST 00001786: SWAP1 00001787: POP 00001788: PUSH2 0x1795 0000178b: DUP2 0000178c: DUP4 0000178d: PUSH1 0x01 0000178f: ADD 00001790: SLOAD 00001791: PUSH2 0x2d54 00001794: JUMP 00001795: JUMPDEST 00001796: PUSH2 0x17d8 00001799: JUMPI 0000179a: PUSH1 0x40 0000179c: DUP1 0000179d: MLOAD 0000179e: PUSH3 0x461bcd 000017a2: PUSH1 0xe5 000017a4: SHL 000017a5: DUP2 000017a6: MSTORE 000017a7: PUSH1 0x20 000017a9: PUSH1 0x04 000017ab: DUP3 000017ac: ADD 000017ad: MSTORE 000017ae: PUSH1 0x0f 000017b0: PUSH1 0x24 000017b2: DUP3 000017b3: ADD 000017b4: MSTORE 000017b5: PUSH15 0x5661756c7420697320756e73616665 000017c5: PUSH1 0x88 000017c7: SHL 000017c8: PUSH1 0x44 000017ca: DUP3 000017cb: ADD 000017cc: MSTORE 000017cd: SWAP1 000017ce: MLOAD 000017cf: SWAP1 000017d0: DUP2 000017d1: SWAP1 000017d2: SUB 000017d3: PUSH1 0x64 000017d5: ADD 000017d6: SWAP1 000017d7: REVERT 000017d8: JUMPDEST 000017d9: DUP1 000017da: DUP3 000017db: SSTORE 000017dc: PUSH2 0x17e5 000017df: CALLER 000017e0: DUP5 000017e1: PUSH2 0x315b 000017e4: JUMP 000017e5: JUMPDEST 000017e6: PUSH1 0x40 000017e8: DUP1 000017e9: MLOAD 000017ea: DUP5 000017eb: DUP2 000017ec: MSTORE 000017ed: CALLER 000017ee: PUSH1 0x20 000017f0: DUP3 000017f1: ADD 000017f2: MSTORE 000017f3: DUP2 000017f4: MLOAD 000017f5: PUSH32 0x5a945309b3c58e9bb259128c2a530a6579dc75ac1d7d61b3db4c0b8305a16821 00001816: SWAP3 00001817: SWAP2 00001818: DUP2 00001819: SWAP1 0000181a: SUB 0000181b: SWAP1 0000181c: SWAP2 0000181d: ADD 0000181e: SWAP1 0000181f: LOG1 00001820: POP 00001821: POP 00001822: POP 00001823: JUMP 00001824: JUMPDEST 00001825: PUSH1 0x0b 00001827: SLOAD 00001828: PUSH1 0x0c 0000182a: SLOAD 0000182b: PUSH1 0x03 0000182d: SIGNEXTEND 0000182e: DUP3 0000182f: JUMP 00001830: JUMPDEST 00001831: PUSH2 0x1838 00001834: PUSH2 0x1c1b 00001837: JUMP 00001838: JUMPDEST 00001839: POP 0000183a: PUSH2 0x1843 0000183d: DUP3 0000183e: ADDRESS 0000183f: PUSH2 0x21d3 00001842: JUMP 00001843: JUMPDEST 00001844: PUSH1 0x04 00001846: DUP1 00001847: SLOAD 00001848: PUSH1 0x40 0000184a: DUP1 0000184b: MLOAD 0000184c: PUSH4 0x095ea7b3 00001851: PUSH1 0xe0 00001853: SHL 00001854: DUP2 00001855: MSTORE 00001856: PUSH1 0x01 00001858: PUSH1 0x01 0000185a: PUSH1 0xa0 0000185c: SHL 0000185d: SUB 0000185e: SWAP1 0000185f: SWAP3 00001860: AND 00001861: SWAP3 00001862: DUP3 00001863: ADD 00001864: SWAP3 00001865: SWAP1 00001866: SWAP3 00001867: MSTORE 00001868: PUSH1 0x24 0000186a: DUP2 0000186b: ADD 0000186c: DUP5 0000186d: SWAP1 0000186e: MSTORE 0000186f: SWAP1 00001870: MLOAD 00001871: ADDRESS 00001872: SWAP2 00001873: PUSH4 0x095ea7b3 00001878: SWAP2 00001879: PUSH1 0x44 0000187b: DUP1 0000187c: DUP4 0000187d: ADD 0000187e: SWAP3 0000187f: PUSH1 0x20 00001881: SWAP3 00001882: SWAP2 00001883: SWAP1 00001884: DUP3 00001885: SWAP1 00001886: SUB 00001887: ADD 00001888: DUP2 00001889: PUSH1 0x00 0000188b: DUP8 0000188c: DUP1 0000188d: EXTCODESIZE 0000188e: ISZERO 0000188f: DUP1 00001890: ISZERO 00001891: PUSH2 0x1899 00001894: JUMPI 00001895: PUSH1 0x00 00001897: DUP1 00001898: REVERT 00001899: JUMPDEST 0000189a: POP 0000189b: GAS 0000189c: CALL 0000189d: ISZERO 0000189e: DUP1 0000189f: ISZERO 000018a0: PUSH2 0x18ad 000018a3: JUMPI 000018a4: RETURNDATASIZE 000018a5: PUSH1 0x00 000018a7: DUP1 000018a8: RETURNDATACOPY 000018a9: RETURNDATASIZE 000018aa: PUSH1 0x00 000018ac: REVERT 000018ad: JUMPDEST 000018ae: POP 000018af: POP 000018b0: POP 000018b1: POP 000018b2: PUSH1 0x40 000018b4: MLOAD 000018b5: RETURNDATASIZE 000018b6: PUSH1 0x20 000018b8: DUP2 000018b9: LT 000018ba: ISZERO 000018bb: PUSH2 0x18c3 000018be: JUMPI 000018bf: PUSH1 0x00 000018c1: DUP1 000018c2: REVERT 000018c3: JUMPDEST 000018c4: POP 000018c5: POP 000018c6: PUSH1 0x04 000018c8: DUP1 000018c9: SLOAD 000018ca: PUSH1 0x40 000018cc: DUP1 000018cd: MLOAD 000018ce: PUSH4 0x7dafae59 000018d3: PUSH1 0xe0 000018d5: SHL 000018d6: DUP2 000018d7: MSTORE 000018d8: PUSH1 0x01 000018da: PUSH1 0x01 000018dc: PUSH1 0xa0 000018de: SHL 000018df: SUB 000018e0: DUP6 000018e1: DUP2 000018e2: AND 000018e3: SWAP5 000018e4: DUP3 000018e5: ADD 000018e6: SWAP5 000018e7: SWAP1 000018e8: SWAP5 000018e9: MSTORE 000018ea: ADDRESS 000018eb: PUSH1 0x24 000018ed: DUP3 000018ee: ADD 000018ef: MSTORE 000018f0: PUSH1 0x00 000018f2: PUSH1 0x44 000018f4: DUP3 000018f5: ADD 000018f6: DUP2 000018f7: SWAP1 000018f8: MSTORE 000018f9: PUSH1 0x64 000018fb: DUP3 000018fc: ADD 000018fd: DUP8 000018fe: SWAP1 000018ff: MSTORE 00001900: SWAP2 00001901: MLOAD 00001902: SWAP4 00001903: SWAP1 00001904: SWAP3 00001905: AND 00001906: SWAP3 00001907: PUSH4 0x7dafae59 0000190c: SWAP3 0000190d: PUSH1 0x84 0000190f: DUP1 00001910: DUP3 00001911: ADD 00001912: SWAP4 00001913: SWAP3 00001914: SWAP2 00001915: DUP3 00001916: SWAP1 00001917: SUB 00001918: ADD 00001919: DUP2 0000191a: DUP4 0000191b: DUP8 0000191c: DUP1 0000191d: EXTCODESIZE 0000191e: ISZERO 0000191f: DUP1 00001920: ISZERO 00001921: PUSH2 0x1929 00001924: JUMPI 00001925: PUSH1 0x00 00001927: DUP1 00001928: REVERT 00001929: JUMPDEST 0000192a: POP 0000192b: GAS 0000192c: CALL 0000192d: ISZERO 0000192e: DUP1 0000192f: ISZERO 00001930: PUSH2 0x193d 00001933: JUMPI 00001934: RETURNDATASIZE 00001935: PUSH1 0x00 00001937: DUP1 00001938: RETURNDATACOPY 00001939: RETURNDATASIZE 0000193a: PUSH1 0x00 0000193c: REVERT 0000193d: JUMPDEST 0000193e: POP 0000193f: POP 00001940: POP 00001941: POP 00001942: POP 00001943: POP 00001944: JUMP 00001945: JUMPDEST 00001946: PUSH1 0x00 00001948: PUSH2 0x1287 0000194b: PUSH2 0x1952 0000194e: PUSH2 0x2bc8 00001951: JUMP 00001952: JUMPDEST 00001953: DUP5 00001954: PUSH2 0x1504 00001957: DUP6 00001958: PUSH1 0x02 0000195a: PUSH1 0x00 0000195c: PUSH2 0x1963 0000195f: PUSH2 0x2bc8 00001962: JUMP 00001963: JUMPDEST 00001964: PUSH1 0x01 00001966: PUSH1 0x01 00001968: PUSH1 0xa0 0000196a: SHL 0000196b: SUB 0000196c: SWAP1 0000196d: DUP2 0000196e: AND 0000196f: DUP3 00001970: MSTORE 00001971: PUSH1 0x20 00001973: DUP1 00001974: DUP4 00001975: ADD 00001976: SWAP4 00001977: SWAP1 00001978: SWAP4 00001979: MSTORE 0000197a: PUSH1 0x40 0000197c: SWAP2 0000197d: DUP3 0000197e: ADD 0000197f: PUSH1 0x00 00001981: SWAP1 00001982: DUP2 00001983: KECCAK256 00001984: SWAP2 00001985: DUP13 00001986: AND 00001987: DUP2 00001988: MSTORE 00001989: SWAP3 0000198a: MSTORE 0000198b: SWAP1 0000198c: KECCAK256 0000198d: SLOAD 0000198e: SWAP1 0000198f: PUSH4 0xffffffff 00001994: PUSH2 0x2cfa 00001997: AND 00001998: JUMP 00001999: JUMPDEST 0000199a: PUSH1 0x04 0000199c: SLOAD 0000199d: PUSH1 0x01 0000199f: PUSH1 0x01 000019a1: PUSH1 0xa0 000019a3: SHL 000019a4: SUB 000019a5: AND 000019a6: DUP2 000019a7: JUMP 000019a8: JUMPDEST 000019a9: PUSH2 0x19b0 000019ac: PUSH2 0x1c1b 000019af: JUMP 000019b0: JUMPDEST 000019b1: POP 000019b2: PUSH2 0x19bc 000019b5: DUP4 000019b6: DUP4 000019b7: DUP4 000019b8: PUSH2 0x1ad9 000019bb: JUMP 000019bc: JUMPDEST 000019bd: POP 000019be: POP 000019bf: POP 000019c0: JUMP 000019c1: JUMPDEST 000019c2: PUSH1 0x00 000019c4: JUMPDEST 000019c5: DUP2 000019c6: MLOAD 000019c7: DUP2 000019c8: LT 000019c9: ISZERO 000019ca: PUSH2 0x1a9b 000019cd: JUMPI 000019ce: PUSH1 0x00 000019d0: DUP3 000019d1: DUP3 000019d2: DUP2 000019d3: MLOAD 000019d4: DUP2 000019d5: LT 000019d6: PUSH2 0x19db 000019d9: JUMPI 000019da: INVALID 000019db: JUMPDEST 000019dc: PUSH1 0x20 000019de: MUL 000019df: PUSH1 0x20 000019e1: ADD 000019e2: ADD 000019e3: MLOAD 000019e4: SWAP1 000019e5: POP 000019e6: PUSH2 0x19ee 000019e9: DUP2 000019ea: PUSH2 0x1290 000019ed: JUMP 000019ee: JUMPDEST 000019ef: PUSH2 0x1a29 000019f2: JUMPI 000019f3: PUSH1 0x40 000019f5: MLOAD 000019f6: PUSH3 0x461bcd 000019fa: PUSH1 0xe5 000019fc: SHL 000019fd: DUP2 000019fe: MSTORE 000019ff: PUSH1 0x04 00001a01: ADD 00001a02: DUP1 00001a03: DUP1 00001a04: PUSH1 0x20 00001a06: ADD 00001a07: DUP3 00001a08: DUP2 00001a09: SUB 00001a0a: DUP3 00001a0b: MSTORE 00001a0c: PUSH1 0x2f 00001a0e: DUP2 00001a0f: MSTORE 00001a10: PUSH1 0x20 00001a12: ADD 00001a13: DUP1 00001a14: PUSH2 0x4036 00001a17: PUSH1 0x2f 00001a19: SWAP2 00001a1a: CODECOPY 00001a1b: PUSH1 0x40 00001a1d: ADD 00001a1e: SWAP2 00001a1f: POP 00001a20: POP 00001a21: PUSH1 0x40 00001a23: MLOAD 00001a24: DUP1 00001a25: SWAP2 00001a26: SUB 00001a27: SWAP1 00001a28: REVERT 00001a29: JUMPDEST 00001a2a: PUSH1 0x01 00001a2c: PUSH1 0x01 00001a2e: PUSH1 0xa0 00001a30: SHL 00001a31: SUB 00001a32: DUP2 00001a33: AND 00001a34: PUSH1 0x00 00001a36: SWAP1 00001a37: DUP2 00001a38: MSTORE 00001a39: PUSH1 0x05 00001a3b: PUSH1 0x20 00001a3d: MSTORE 00001a3e: PUSH1 0x40 00001a40: SWAP1 00001a41: KECCAK256 00001a42: DUP5 00001a43: PUSH2 0x1a4e 00001a46: JUMPI 00001a47: POP 00001a48: POP 00001a49: POP 00001a4a: PUSH2 0x1482 00001a4d: JUMP 00001a4e: JUMPDEST 00001a4f: DUP5 00001a50: DUP2 00001a51: PUSH1 0x01 00001a53: ADD 00001a54: SLOAD 00001a55: LT 00001a56: PUSH2 0x1a6b 00001a59: JUMPI 00001a5a: PUSH2 0x1a63 00001a5d: DUP6 00001a5e: DUP4 00001a5f: PUSH2 0x3246 00001a62: JUMP 00001a63: JUMPDEST 00001a64: POP 00001a65: POP 00001a66: POP 00001a67: PUSH2 0x1482 00001a6a: JUMP 00001a6b: JUMPDEST 00001a6c: PUSH1 0x01 00001a6e: DUP2 00001a6f: ADD 00001a70: SLOAD 00001a71: PUSH2 0x1a81 00001a74: SWAP1 00001a75: DUP7 00001a76: SWAP1 00001a77: PUSH4 0xffffffff 00001a7c: PUSH2 0x2cb8 00001a7f: AND 00001a80: JUMP 00001a81: JUMPDEST 00001a82: SWAP5 00001a83: POP 00001a84: PUSH2 0x1a91 00001a87: DUP2 00001a88: PUSH1 0x01 00001a8a: ADD 00001a8b: SLOAD 00001a8c: DUP4 00001a8d: PUSH2 0x3246 00001a90: JUMP 00001a91: JUMPDEST 00001a92: POP 00001a93: POP 00001a94: PUSH1 0x01 00001a96: ADD 00001a97: PUSH2 0x19c4 00001a9a: JUMP 00001a9b: JUMPDEST 00001a9c: POP 00001a9d: DUP2 00001a9e: ISZERO 00001a9f: PUSH2 0x1482 00001aa2: JUMPI 00001aa3: PUSH1 0x40 00001aa5: MLOAD 00001aa6: PUSH3 0x461bcd 00001aaa: PUSH1 0xe5 00001aac: SHL 00001aad: DUP2 00001aae: MSTORE 00001aaf: PUSH1 0x04 00001ab1: ADD 00001ab2: DUP1 00001ab3: DUP1 00001ab4: PUSH1 0x20 00001ab6: ADD 00001ab7: DUP3 00001ab8: DUP2 00001ab9: SUB 00001aba: DUP3 00001abb: MSTORE 00001abc: PUSH1 0x2d 00001abe: DUP2 00001abf: MSTORE 00001ac0: PUSH1 0x20 00001ac2: ADD 00001ac3: DUP1 00001ac4: PUSH2 0x3ef4 00001ac7: PUSH1 0x2d 00001ac9: SWAP2 00001aca: CODECOPY 00001acb: PUSH1 0x40 00001acd: ADD 00001ace: SWAP2 00001acf: POP 00001ad0: POP 00001ad1: PUSH1 0x40 00001ad3: MLOAD 00001ad4: DUP1 00001ad5: SWAP2 00001ad6: SUB 00001ad7: SWAP1 00001ad8: REVERT 00001ad9: JUMPDEST 00001ada: PUSH2 0x1ae3 00001add: CALLER 00001ade: DUP4 00001adf: PUSH2 0x0f8a 00001ae2: JUMP 00001ae3: JUMPDEST 00001ae4: POP 00001ae5: PUSH2 0x19bc 00001ae8: DUP4 00001ae9: DUP3 00001aea: PUSH2 0x131d 00001aed: JUMP 00001aee: JUMPDEST 00001aef: PUSH1 0x40 00001af1: DUP1 00001af2: MLOAD 00001af3: DUP1 00001af4: DUP3 00001af5: ADD 00001af6: SWAP1 00001af7: SWAP2 00001af8: MSTORE 00001af9: PUSH1 0x0d 00001afb: SLOAD 00001afc: DUP2 00001afd: MSTORE 00001afe: PUSH1 0x0e 00001b00: SLOAD 00001b01: PUSH1 0x03 00001b03: SWAP1 00001b04: DUP2 00001b05: SIGNEXTEND 00001b06: DUP2 00001b07: SIGNEXTEND 00001b08: SWAP1 00001b09: SIGNEXTEND 00001b0a: PUSH1 0x20 00001b0c: DUP3 00001b0d: ADD 00001b0e: MSTORE 00001b0f: PUSH1 0x00 00001b11: SWAP1 00001b12: PUSH2 0x1138 00001b15: SWAP1 00001b16: DUP4 00001b17: SWAP1 00001b18: PUSH2 0x36a9 00001b1b: JUMP 00001b1c: JUMPDEST 00001b1d: PUSH1 0x17 00001b1f: SLOAD 00001b20: PUSH1 0x01 00001b22: PUSH1 0x01 00001b24: PUSH1 0xa0 00001b26: SHL 00001b27: SUB 00001b28: AND 00001b29: DUP2 00001b2a: JUMP 00001b2b: JUMPDEST 00001b2c: PUSH1 0x16 00001b2e: SLOAD 00001b2f: PUSH1 0x12 00001b31: SLOAD 00001b32: PUSH1 0x00 00001b34: SWAP2 00001b35: PUSH1 0x01 00001b37: PUSH1 0x20 00001b39: SHL 00001b3a: SWAP1 00001b3b: DIV 00001b3c: PUSH1 0x03 00001b3e: SWAP1 00001b3f: DUP2 00001b40: SIGNEXTEND 00001b41: SWAP2 00001b42: DUP2 00001b43: SIGNEXTEND 00001b44: SWAP2 00001b45: SWAP1 00001b46: SWAP2 00001b47: SUB 00001b48: SWAP1 00001b49: SIGNEXTEND 00001b4a: PUSH2 0x1b68 00001b4d: DUP4 00001b4e: PUSH8 0xffffffffffffffff 00001b57: DUP1 00001b58: DUP5 00001b59: AND 00001b5a: PUSH1 0x0a 00001b5c: EXP 00001b5d: AND 00001b5e: PUSH4 0xffffffff 00001b63: PUSH2 0x37a4 00001b66: AND 00001b67: JUMP 00001b68: JUMPDEST 00001b69: SWAP4 00001b6a: SWAP3 00001b6b: POP 00001b6c: POP 00001b6d: POP 00001b6e: JUMP 00001b6f: JUMPDEST 00001b70: PUSH1 0x01 00001b72: PUSH1 0x01 00001b74: PUSH1 0xa0 00001b76: SHL 00001b77: SUB 00001b78: AND 00001b79: PUSH1 0x00 00001b7b: SWAP1 00001b7c: DUP2 00001b7d: MSTORE 00001b7e: PUSH1 0x01 00001b80: PUSH1 0x20 00001b82: MSTORE 00001b83: PUSH1 0x40 00001b85: SWAP1 00001b86: KECCAK256 00001b87: SLOAD 00001b88: SWAP1 00001b89: JUMP 00001b8a: JUMPDEST 00001b8b: PUSH2 0x1b92 00001b8e: PUSH2 0x1db2 00001b91: JUMP 00001b92: JUMPDEST 00001b93: PUSH2 0x1bd1 00001b96: JUMPI 00001b97: PUSH1 0x40 00001b99: DUP1 00001b9a: MLOAD 00001b9b: PUSH3 0x461bcd 00001b9f: PUSH1 0xe5 00001ba1: SHL 00001ba2: DUP2 00001ba3: MSTORE 00001ba4: PUSH1 0x20 00001ba6: PUSH1 0x04 00001ba8: DUP3 00001ba9: ADD 00001baa: DUP2 00001bab: SWAP1 00001bac: MSTORE 00001bad: PUSH1 0x24 00001baf: DUP3 00001bb0: ADD 00001bb1: MSTORE 00001bb2: PUSH1 0x00 00001bb4: DUP1 00001bb5: MLOAD 00001bb6: PUSH1 0x20 00001bb8: PUSH2 0x3ff5 00001bbb: DUP4 00001bbc: CODECOPY 00001bbd: DUP2 00001bbe: MLOAD 00001bbf: SWAP2 00001bc0: MSTORE 00001bc1: PUSH1 0x44 00001bc3: DUP3 00001bc4: ADD 00001bc5: MSTORE 00001bc6: SWAP1 00001bc7: MLOAD 00001bc8: SWAP1 00001bc9: DUP2 00001bca: SWAP1 00001bcb: SUB 00001bcc: PUSH1 0x64 00001bce: ADD 00001bcf: SWAP1 00001bd0: REVERT 00001bd1: JUMPDEST 00001bd2: PUSH1 0x00 00001bd4: DUP1 00001bd5: SLOAD 00001bd6: PUSH1 0x40 00001bd8: MLOAD 00001bd9: PUSH1 0x01 00001bdb: PUSH1 0x01 00001bdd: PUSH1 0xa0 00001bdf: SHL 00001be0: SUB 00001be1: SWAP1 00001be2: SWAP2 00001be3: AND 00001be4: SWAP1 00001be5: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00001c06: SWAP1 00001c07: DUP4 00001c08: SWAP1 00001c09: LOG3 00001c0a: PUSH1 0x00 00001c0c: DUP1 00001c0d: SLOAD 00001c0e: PUSH1 0x01 00001c10: PUSH1 0x01 00001c12: PUSH1 0xa0 00001c14: SHL 00001c15: SUB 00001c16: NOT 00001c17: AND 00001c18: SWAP1 00001c19: SSTORE 00001c1a: JUMP 00001c1b: JUMPDEST 00001c1c: PUSH1 0x00 00001c1e: PUSH2 0x1c25 00001c21: PUSH2 0x1dd6 00001c24: JUMP 00001c25: JUMPDEST 00001c26: ISZERO 00001c27: PUSH2 0x1c65 00001c2a: JUMPI 00001c2b: PUSH1 0x40 00001c2d: DUP1 00001c2e: MLOAD 00001c2f: PUSH3 0x461bcd 00001c33: PUSH1 0xe5 00001c35: SHL 00001c36: DUP2 00001c37: MSTORE 00001c38: PUSH1 0x20 00001c3a: PUSH1 0x04 00001c3c: DUP3 00001c3d: ADD 00001c3e: MSTORE 00001c3f: PUSH1 0x18 00001c41: PUSH1 0x24 00001c43: DUP3 00001c44: ADD 00001c45: MSTORE 00001c46: PUSH1 0x00 00001c48: DUP1 00001c49: MLOAD 00001c4a: PUSH1 0x20 00001c4c: PUSH2 0x40dc 00001c4f: DUP4 00001c50: CODECOPY 00001c51: DUP2 00001c52: MLOAD 00001c53: SWAP2 00001c54: MSTORE 00001c55: PUSH1 0x44 00001c57: DUP3 00001c58: ADD 00001c59: MSTORE 00001c5a: SWAP1 00001c5b: MLOAD 00001c5c: SWAP1 00001c5d: DUP2 00001c5e: SWAP1 00001c5f: SUB 00001c60: PUSH1 0x64 00001c62: ADD 00001c63: SWAP1 00001c64: REVERT 00001c65: JUMPDEST 00001c66: PUSH2 0x1c6e 00001c69: CALLER 00001c6a: PUSH2 0x1290 00001c6d: JUMP 00001c6e: JUMPDEST 00001c6f: ISZERO 00001c70: PUSH2 0x1cb8 00001c73: JUMPI 00001c74: PUSH1 0x40 00001c76: DUP1 00001c77: MLOAD 00001c78: PUSH3 0x461bcd 00001c7c: PUSH1 0xe5 00001c7e: SHL 00001c7f: DUP2 00001c80: MSTORE 00001c81: PUSH1 0x20 00001c83: PUSH1 0x04 00001c85: DUP3 00001c86: ADD 00001c87: MSTORE 00001c88: PUSH1 0x15 00001c8a: PUSH1 0x24 00001c8c: DUP3 00001c8d: ADD 00001c8e: MSTORE 00001c8f: PUSH21 0x15985d5b1d08185b1c9958591e4818dc99585d1959 00001ca5: PUSH1 0x5a 00001ca7: SHL 00001ca8: PUSH1 0x44 00001caa: DUP3 00001cab: ADD 00001cac: MSTORE 00001cad: SWAP1 00001cae: MLOAD 00001caf: SWAP1 00001cb0: DUP2 00001cb1: SWAP1 00001cb2: SUB 00001cb3: PUSH1 0x64 00001cb5: ADD 00001cb6: SWAP1 00001cb7: REVERT 00001cb8: JUMPDEST 00001cb9: PUSH1 0x40 00001cbb: DUP1 00001cbc: MLOAD 00001cbd: PUSH1 0x80 00001cbf: DUP2 00001cc0: ADD 00001cc1: DUP3 00001cc2: MSTORE 00001cc3: PUSH1 0x00 00001cc5: DUP1 00001cc6: DUP3 00001cc7: MSTORE 00001cc8: PUSH1 0x20 00001cca: DUP1 00001ccb: DUP4 00001ccc: ADD 00001ccd: DUP3 00001cce: DUP2 00001ccf: MSTORE 00001cd0: DUP4 00001cd1: DUP6 00001cd2: ADD 00001cd3: DUP4 00001cd4: DUP2 00001cd5: MSTORE 00001cd6: PUSH1 0x01 00001cd8: PUSH1 0x60 00001cda: DUP7 00001cdb: ADD 00001cdc: DUP2 00001cdd: DUP2 00001cde: MSTORE 00001cdf: CALLER 00001ce0: DUP1 00001ce1: DUP8 00001ce2: MSTORE 00001ce3: PUSH1 0x05 00001ce5: DUP7 00001ce6: MSTORE 00001ce7: DUP9 00001ce8: DUP8 00001ce9: KECCAK256 00001cea: SWAP8 00001ceb: MLOAD 00001cec: DUP9 00001ced: SSTORE 00001cee: SWAP4 00001cef: MLOAD 00001cf0: DUP8 00001cf1: DUP4 00001cf2: ADD 00001cf3: SSTORE 00001cf4: SWAP2 00001cf5: MLOAD 00001cf6: PUSH1 0x02 00001cf8: DUP8 00001cf9: ADD 00001cfa: SSTORE 00001cfb: SWAP1 00001cfc: MLOAD 00001cfd: PUSH1 0x03 00001cff: SWAP1 00001d00: SWAP6 00001d01: ADD 00001d02: DUP1 00001d03: SLOAD 00001d04: PUSH1 0xff 00001d06: NOT 00001d07: AND 00001d08: SWAP6 00001d09: ISZERO 00001d0a: ISZERO 00001d0b: SWAP6 00001d0c: SWAP1 00001d0d: SWAP6 00001d0e: OR 00001d0f: SWAP1 00001d10: SWAP5 00001d11: SSTORE 00001d12: PUSH1 0x06 00001d14: DUP1 00001d15: SLOAD 00001d16: SWAP5 00001d17: DUP6 00001d18: ADD 00001d19: DUP2 00001d1a: SSTORE 00001d1b: SWAP1 00001d1c: SWAP3 00001d1d: MSTORE 00001d1e: PUSH32 0xf652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f 00001d3f: SWAP1 00001d40: SWAP3 00001d41: ADD 00001d42: DUP1 00001d43: SLOAD 00001d44: PUSH1 0x01 00001d46: PUSH1 0x01 00001d48: PUSH1 0xa0 00001d4a: SHL 00001d4b: SUB 00001d4c: NOT 00001d4d: AND 00001d4e: DUP3 00001d4f: OR 00001d50: SWAP1 00001d51: SSTORE 00001d52: DUP3 00001d53: MLOAD 00001d54: SWAP1 00001d55: DUP2 00001d56: MSTORE 00001d57: SWAP2 00001d58: MLOAD 00001d59: PUSH32 0x66a872561db77eb92ef3079a44a5af00c68c3a09e0976814a95bd91721f57c2f 00001d7a: SWAP3 00001d7b: DUP2 00001d7c: SWAP1 00001d7d: SUB 00001d7e: SWAP1 00001d7f: SWAP2 00001d80: ADD 00001d81: SWAP1 00001d82: LOG1 00001d83: POP 00001d84: PUSH1 0x01 00001d86: SWAP1 00001d87: JUMP 00001d88: JUMPDEST 00001d89: PUSH1 0x19 00001d8b: SLOAD 00001d8c: PUSH1 0x01 00001d8e: PUSH1 0x01 00001d90: PUSH1 0xa0 00001d92: SHL 00001d93: SUB 00001d94: AND 00001d95: DUP2 00001d96: JUMP 00001d97: JUMPDEST 00001d98: PUSH1 0x07 00001d9a: SLOAD 00001d9b: PUSH1 0x08 00001d9d: SLOAD 00001d9e: PUSH1 0x03 00001da0: SIGNEXTEND 00001da1: DUP3 00001da2: JUMP 00001da3: JUMPDEST 00001da4: PUSH1 0x00 00001da6: SLOAD 00001da7: PUSH1 0x01 00001da9: PUSH1 0x01 00001dab: PUSH1 0xa0 00001dad: SHL 00001dae: SUB 00001daf: AND 00001db0: SWAP1 00001db1: JUMP 00001db2: JUMPDEST 00001db3: PUSH1 0x00 00001db5: DUP1 00001db6: SLOAD 00001db7: PUSH1 0x01 00001db9: PUSH1 0x01 00001dbb: PUSH1 0xa0 00001dbd: SHL 00001dbe: SUB 00001dbf: AND 00001dc0: PUSH2 0x1dc7 00001dc3: PUSH2 0x2bc8 00001dc6: JUMP 00001dc7: JUMPDEST 00001dc8: PUSH1 0x01 00001dca: PUSH1 0x01 00001dcc: PUSH1 0xa0 00001dce: SHL 00001dcf: SUB 00001dd0: AND 00001dd1: EQ 00001dd2: SWAP1 00001dd3: POP 00001dd4: SWAP1 00001dd5: JUMP 00001dd6: JUMPDEST 00001dd7: PUSH1 0x15 00001dd9: SLOAD 00001dda: TIMESTAMP 00001ddb: LT 00001ddc: ISZERO 00001ddd: SWAP1 00001dde: JUMP 00001ddf: JUMPDEST 00001de0: PUSH1 0x1b 00001de2: DUP1 00001de3: SLOAD 00001de4: PUSH1 0x40 00001de6: DUP1 00001de7: MLOAD 00001de8: PUSH1 0x20 00001dea: PUSH1 0x02 00001dec: PUSH1 0x01 00001dee: DUP6 00001def: AND 00001df0: ISZERO 00001df1: PUSH2 0x0100 00001df4: MUL 00001df5: PUSH1 0x00 00001df7: NOT 00001df8: ADD 00001df9: SWAP1 00001dfa: SWAP5 00001dfb: AND 00001dfc: SWAP4 00001dfd: SWAP1 00001dfe: SWAP4 00001dff: DIV 00001e00: PUSH1 0x1f 00001e02: DUP2 00001e03: ADD 00001e04: DUP5 00001e05: SWAP1 00001e06: DIV 00001e07: DUP5 00001e08: MUL 00001e09: DUP3 00001e0a: ADD 00001e0b: DUP5 00001e0c: ADD 00001e0d: SWAP1 00001e0e: SWAP3 00001e0f: MSTORE 00001e10: DUP2 00001e11: DUP2 00001e12: MSTORE 00001e13: SWAP3 00001e14: SWAP2 00001e15: DUP4 00001e16: ADD 00001e17: DUP3 00001e18: DUP3 00001e19: DUP1 00001e1a: ISZERO 00001e1b: PUSH2 0x126b 00001e1e: JUMPI 00001e1f: DUP1 00001e20: PUSH1 0x1f 00001e22: LT 00001e23: PUSH2 0x1240 00001e26: JUMPI 00001e27: PUSH2 0x0100 00001e2a: DUP1 00001e2b: DUP4 00001e2c: SLOAD 00001e2d: DIV 00001e2e: MUL 00001e2f: DUP4 00001e30: MSTORE 00001e31: SWAP2 00001e32: PUSH1 0x20 00001e34: ADD 00001e35: SWAP2 00001e36: PUSH2 0x126b 00001e39: JUMP 00001e3a: JUMPDEST 00001e3b: PUSH1 0x00 00001e3d: PUSH2 0x1e44 00001e40: PUSH2 0x1dd6 00001e43: JUMP 00001e44: JUMPDEST 00001e45: ISZERO 00001e46: PUSH2 0x1e84 00001e49: JUMPI 00001e4a: PUSH1 0x40 00001e4c: DUP1 00001e4d: MLOAD 00001e4e: PUSH3 0x461bcd 00001e52: PUSH1 0xe5 00001e54: SHL 00001e55: DUP2 00001e56: MSTORE 00001e57: PUSH1 0x20 00001e59: PUSH1 0x04 00001e5b: DUP3 00001e5c: ADD 00001e5d: MSTORE 00001e5e: PUSH1 0x18 00001e60: PUSH1 0x24 00001e62: DUP3 00001e63: ADD 00001e64: MSTORE 00001e65: PUSH1 0x00 00001e67: DUP1 00001e68: MLOAD 00001e69: PUSH1 0x20 00001e6b: PUSH2 0x40dc 00001e6e: DUP4 00001e6f: CODECOPY 00001e70: DUP2 00001e71: MLOAD 00001e72: SWAP2 00001e73: MSTORE 00001e74: PUSH1 0x44 00001e76: DUP3 00001e77: ADD 00001e78: MSTORE 00001e79: SWAP1 00001e7a: MLOAD 00001e7b: SWAP1 00001e7c: DUP2 00001e7d: SWAP1 00001e7e: SUB 00001e7f: PUSH1 0x64 00001e81: ADD 00001e82: SWAP1 00001e83: REVERT 00001e84: JUMPDEST 00001e85: PUSH1 0x16 00001e87: SLOAD 00001e88: PUSH2 0x1ea0 00001e8b: SWAP1 00001e8c: PUSH1 0x01 00001e8e: PUSH1 0x40 00001e90: SHL 00001e91: SWAP1 00001e92: DIV 00001e93: PUSH1 0x01 00001e95: PUSH1 0x01 00001e97: PUSH1 0xa0 00001e99: SHL 00001e9a: SUB 00001e9b: AND 00001e9c: PUSH2 0x2a44 00001e9f: JUMP 00001ea0: JUMPDEST 00001ea1: PUSH2 0x1edb 00001ea4: JUMPI 00001ea5: PUSH1 0x40 00001ea7: MLOAD 00001ea8: PUSH3 0x461bcd 00001eac: PUSH1 0xe5 00001eae: SHL 00001eaf: DUP2 00001eb0: MSTORE 00001eb1: PUSH1 0x04 00001eb3: ADD 00001eb4: DUP1 00001eb5: DUP1 00001eb6: PUSH1 0x20 00001eb8: ADD 00001eb9: DUP3 00001eba: DUP2 00001ebb: SUB 00001ebc: DUP3 00001ebd: MSTORE 00001ebe: PUSH1 0x28 00001ec0: DUP2 00001ec1: MSTORE 00001ec2: PUSH1 0x20 00001ec4: ADD 00001ec5: DUP1 00001ec6: PUSH2 0x3dcd 00001ec9: PUSH1 0x28 00001ecb: SWAP2 00001ecc: CODECOPY 00001ecd: PUSH1 0x40 00001ecf: ADD 00001ed0: SWAP2 00001ed1: POP 00001ed2: POP 00001ed3: PUSH1 0x40 00001ed5: MLOAD 00001ed6: DUP1 00001ed7: SWAP2 00001ed8: SUB 00001ed9: SWAP1 00001eda: REVERT 00001edb: JUMPDEST 00001edc: PUSH2 0x1ee4 00001edf: DUP3 00001ee0: PUSH2 0x1290 00001ee3: JUMP 00001ee4: JUMPDEST 00001ee5: PUSH2 0x1f23 00001ee8: JUMPI 00001ee9: PUSH1 0x40 00001eeb: DUP1 00001eec: MLOAD 00001eed: PUSH3 0x461bcd 00001ef1: PUSH1 0xe5 00001ef3: SHL 00001ef4: DUP2 00001ef5: MSTORE 00001ef6: PUSH1 0x20 00001ef8: PUSH1 0x04 00001efa: DUP3 00001efb: ADD 00001efc: MSTORE 00001efd: PUSH1 0x14 00001eff: PUSH1 0x24 00001f01: DUP3 00001f02: ADD 00001f03: MSTORE 00001f04: PUSH1 0x00 00001f06: DUP1 00001f07: MLOAD 00001f08: PUSH1 0x20 00001f0a: PUSH2 0x3e89 00001f0d: DUP4 00001f0e: CODECOPY 00001f0f: DUP2 00001f10: MLOAD 00001f11: SWAP2 00001f12: MSTORE 00001f13: PUSH1 0x44 00001f15: DUP3 00001f16: ADD 00001f17: MSTORE 00001f18: SWAP1 00001f19: MLOAD 00001f1a: SWAP1 00001f1b: DUP2 00001f1c: SWAP1 00001f1d: SUB 00001f1e: PUSH1 0x64 00001f20: ADD 00001f21: SWAP1 00001f22: REVERT 00001f23: JUMPDEST 00001f24: PUSH1 0x40 00001f26: DUP1 00001f27: MLOAD 00001f28: PUSH1 0x01 00001f2a: PUSH1 0x01 00001f2c: PUSH1 0xa0 00001f2e: SHL 00001f2f: SUB 00001f30: DUP5 00001f31: AND 00001f32: DUP2 00001f33: MSTORE 00001f34: CALLVALUE 00001f35: PUSH1 0x20 00001f37: DUP3 00001f38: ADD 00001f39: MSTORE 00001f3a: CALLER 00001f3b: DUP2 00001f3c: DUP4 00001f3d: ADD 00001f3e: MSTORE 00001f3f: SWAP1 00001f40: MLOAD 00001f41: PUSH32 0xf24ce6016de57e90501829715846e26ac283a0aabfc160647e0ae8b05e0f433d 00001f62: SWAP2 00001f63: DUP2 00001f64: SWAP1 00001f65: SUB 00001f66: PUSH1 0x60 00001f68: ADD 00001f69: SWAP1 00001f6a: LOG1 00001f6b: PUSH2 0x1138 00001f6e: DUP3 00001f6f: CALLVALUE 00001f70: PUSH2 0x2b49 00001f73: JUMP 00001f74: JUMPDEST 00001f75: PUSH1 0x09 00001f77: SLOAD 00001f78: PUSH1 0x0a 00001f7a: SLOAD 00001f7b: PUSH1 0x03 00001f7d: SIGNEXTEND 00001f7e: DUP3 00001f7f: JUMP 00001f80: JUMPDEST 00001f81: PUSH1 0x00 00001f83: PUSH2 0x1287 00001f86: PUSH2 0x1f8d 00001f89: PUSH2 0x2bc8 00001f8c: JUMP 00001f8d: JUMPDEST 00001f8e: DUP5 00001f8f: PUSH2 0x1504 00001f92: DUP6 00001f93: PUSH1 0x40 00001f95: MLOAD 00001f96: DUP1 00001f97: PUSH1 0x60 00001f99: ADD 00001f9a: PUSH1 0x40 00001f9c: MSTORE 00001f9d: DUP1 00001f9e: PUSH1 0x25 00001fa0: DUP2 00001fa1: MSTORE 00001fa2: PUSH1 0x20 00001fa4: ADD 00001fa5: PUSH2 0x40fc 00001fa8: PUSH1 0x25 00001faa: SWAP2 00001fab: CODECOPY 00001fac: PUSH1 0x02 00001fae: PUSH1 0x00 00001fb0: PUSH2 0x1fb7 00001fb3: PUSH2 0x2bc8 00001fb6: JUMP 00001fb7: JUMPDEST 00001fb8: PUSH1 0x01 00001fba: PUSH1 0x01 00001fbc: PUSH1 0xa0 00001fbe: SHL 00001fbf: SUB 00001fc0: SWAP1 00001fc1: DUP2 00001fc2: AND 00001fc3: DUP3 00001fc4: MSTORE 00001fc5: PUSH1 0x20 00001fc7: DUP1 00001fc8: DUP4 00001fc9: ADD 00001fca: SWAP4 00001fcb: SWAP1 00001fcc: SWAP4 00001fcd: MSTORE 00001fce: PUSH1 0x40 00001fd0: SWAP2 00001fd1: DUP3 00001fd2: ADD 00001fd3: PUSH1 0x00 00001fd5: SWAP1 00001fd6: DUP2 00001fd7: KECCAK256 00001fd8: SWAP2 00001fd9: DUP14 00001fda: AND 00001fdb: DUP2 00001fdc: MSTORE 00001fdd: SWAP3 00001fde: MSTORE 00001fdf: SWAP1 00001fe0: KECCAK256 00001fe1: SLOAD 00001fe2: SWAP2 00001fe3: SWAP1 00001fe4: PUSH4 0xffffffff 00001fe9: PUSH2 0x30a9 00001fec: AND 00001fed: JUMP 00001fee: JUMPDEST 00001fef: PUSH1 0x00 00001ff1: PUSH2 0x1287 00001ff4: PUSH2 0x1ffb 00001ff7: PUSH2 0x2bc8 00001ffa: JUMP 00001ffb: JUMPDEST 00001ffc: DUP5 00001ffd: DUP5 00001ffe: PUSH2 0x2f4b 00002001: JUMP 00002002: JUMPDEST 00002003: PUSH1 0x18 00002005: SLOAD 00002006: PUSH1 0x01 00002008: PUSH1 0x01 0000200a: PUSH1 0xa0 0000200c: SHL 0000200d: SUB 0000200e: AND 0000200f: DUP2 00002010: JUMP 00002011: JUMPDEST 00002012: PUSH1 0x16 00002014: SLOAD 00002015: PUSH1 0x01 00002017: PUSH1 0x20 00002019: SHL 0000201a: SWAP1 0000201b: DIV 0000201c: PUSH1 0x03 0000201e: SIGNEXTEND 0000201f: DUP2 00002020: JUMP 00002021: JUMPDEST 00002022: PUSH1 0x16 00002024: SLOAD 00002025: PUSH1 0x03 00002027: SIGNEXTEND 00002028: DUP2 00002029: JUMP 0000202a: JUMPDEST 0000202b: PUSH1 0x11 0000202d: SLOAD 0000202e: PUSH1 0x12 00002030: SLOAD 00002031: PUSH1 0x03 00002033: SIGNEXTEND 00002034: DUP3 00002035: JUMP 00002036: JUMPDEST 00002037: PUSH2 0x203e 0000203a: PUSH2 0x1dd6 0000203d: JUMP 0000203e: JUMPDEST 0000203f: PUSH2 0x2079 00002042: JUMPI 00002043: PUSH1 0x40 00002045: MLOAD 00002046: PUSH3 0x461bcd 0000204a: PUSH1 0xe5 0000204c: SHL 0000204d: DUP2 0000204e: MSTORE 0000204f: PUSH1 0x04 00002051: ADD 00002052: DUP1 00002053: DUP1 00002054: PUSH1 0x20 00002056: ADD 00002057: DUP3 00002058: DUP2 00002059: SUB 0000205a: DUP3 0000205b: MSTORE 0000205c: PUSH1 0x25 0000205e: DUP2 0000205f: MSTORE 00002060: PUSH1 0x20 00002062: ADD 00002063: DUP1 00002064: PUSH2 0x3e3d 00002067: PUSH1 0x25 00002069: SWAP2 0000206a: CODECOPY 0000206b: PUSH1 0x40 0000206d: ADD 0000206e: SWAP2 0000206f: POP 00002070: POP 00002071: PUSH1 0x40 00002073: MLOAD 00002074: DUP1 00002075: SWAP2 00002076: SUB 00002077: SWAP1 00002078: REVERT 00002079: JUMPDEST 0000207a: PUSH2 0x2082 0000207d: CALLER 0000207e: PUSH2 0x1290 00002081: JUMP 00002082: JUMPDEST 00002083: PUSH2 0x20c1 00002086: JUMPI 00002087: PUSH1 0x40 00002089: DUP1 0000208a: MLOAD 0000208b: PUSH3 0x461bcd 0000208f: PUSH1 0xe5 00002091: SHL 00002092: DUP2 00002093: MSTORE 00002094: PUSH1 0x20 00002096: PUSH1 0x04 00002098: DUP3 00002099: ADD 0000209a: MSTORE 0000209b: PUSH1 0x14 0000209d: PUSH1 0x24 0000209f: DUP3 000020a0: ADD 000020a1: MSTORE 000020a2: PUSH1 0x00 000020a4: DUP1 000020a5: MLOAD 000020a6: PUSH1 0x20 000020a8: PUSH2 0x3e89 000020ab: DUP4 000020ac: CODECOPY 000020ad: DUP2 000020ae: MLOAD 000020af: SWAP2 000020b0: MSTORE 000020b1: PUSH1 0x44 000020b3: DUP3 000020b4: ADD 000020b5: MSTORE 000020b6: SWAP1 000020b7: MLOAD 000020b8: SWAP1 000020b9: DUP2 000020ba: SWAP1 000020bb: SUB 000020bc: PUSH1 0x64 000020be: ADD 000020bf: SWAP1 000020c0: REVERT 000020c1: JUMPDEST 000020c2: CALLER 000020c3: PUSH1 0x00 000020c5: DUP2 000020c6: DUP2 000020c7: MSTORE 000020c8: PUSH1 0x05 000020ca: PUSH1 0x20 000020cc: MSTORE 000020cd: PUSH1 0x40 000020cf: DUP2 000020d0: KECCAK256 000020d1: DUP1 000020d2: SLOAD 000020d3: PUSH1 0x02 000020d5: DUP3 000020d6: ADD 000020d7: DUP1 000020d8: SLOAD 000020d9: DUP5 000020da: DUP5 000020db: SSTORE 000020dc: PUSH1 0x01 000020de: DUP5 000020df: ADD 000020e0: DUP6 000020e1: SWAP1 000020e2: SSTORE 000020e3: SWAP4 000020e4: SWAP1 000020e5: SSTORE 000020e6: SWAP1 000020e7: SWAP3 000020e8: SWAP1 000020e9: SWAP2 000020ea: SWAP1 000020eb: PUSH2 0x20f4 000020ee: SWAP1 000020ef: DUP4 000020f0: PUSH2 0x315b 000020f3: JUMP 000020f4: JUMPDEST 000020f5: PUSH2 0x20fe 000020f8: CALLER 000020f9: DUP3 000020fa: PUSH2 0x37fd 000020fd: JUMP 000020fe: JUMPDEST 000020ff: PUSH1 0x40 00002101: DUP1 00002102: MLOAD 00002103: DUP4 00002104: DUP2 00002105: MSTORE 00002106: PUSH1 0x20 00002108: DUP2 00002109: ADD 0000210a: DUP4 0000210b: SWAP1 0000210c: MSTORE 0000210d: CALLER 0000210e: DUP2 0000210f: DUP4 00002110: ADD 00002111: MSTORE 00002112: SWAP1 00002113: MLOAD 00002114: PUSH32 0xe481532a3f7d078365ca0145442ed0a0a3e0443f3c0bae0c29cff13111267838 00002135: SWAP2 00002136: DUP2 00002137: SWAP1 00002138: SUB 00002139: PUSH1 0x60 0000213b: ADD 0000213c: SWAP1 0000213d: LOG1 0000213e: POP 0000213f: POP 00002140: POP 00002141: JUMP 00002142: JUMPDEST 00002143: PUSH2 0x214a 00002146: PUSH2 0x1db2 00002149: JUMP 0000214a: JUMPDEST 0000214b: PUSH2 0x2189 0000214e: JUMPI 0000214f: PUSH1 0x40 00002151: DUP1 00002152: MLOAD 00002153: PUSH3 0x461bcd 00002157: PUSH1 0xe5 00002159: SHL 0000215a: DUP2 0000215b: MSTORE 0000215c: PUSH1 0x20 0000215e: PUSH1 0x04 00002160: DUP3 00002161: ADD 00002162: DUP2 00002163: SWAP1 00002164: MSTORE 00002165: PUSH1 0x24 00002167: DUP3 00002168: ADD 00002169: MSTORE 0000216a: PUSH1 0x00 0000216c: DUP1 0000216d: MLOAD 0000216e: PUSH1 0x20 00002170: PUSH2 0x3ff5 00002173: DUP4 00002174: CODECOPY 00002175: DUP2 00002176: MLOAD 00002177: SWAP2 00002178: MSTORE 00002179: PUSH1 0x44 0000217b: DUP3 0000217c: ADD 0000217d: MSTORE 0000217e: SWAP1 0000217f: MLOAD 00002180: SWAP1 00002181: DUP2 00002182: SWAP1 00002183: SUB 00002184: PUSH1 0x64 00002186: ADD 00002187: SWAP1 00002188: REVERT 00002189: JUMPDEST 0000218a: DUP2 0000218b: MLOAD 0000218c: PUSH2 0x219c 0000218f: SWAP1 00002190: PUSH1 0x1a 00002192: SWAP1 00002193: PUSH1 0x20 00002195: DUP6 00002196: ADD 00002197: SWAP1 00002198: PUSH2 0x3c85 0000219b: JUMP 0000219c: JUMPDEST 0000219d: POP 0000219e: DUP1 0000219f: MLOAD 000021a0: PUSH2 0x21b0 000021a3: SWAP1 000021a4: PUSH1 0x1b 000021a6: SWAP1 000021a7: PUSH1 0x20 000021a9: DUP5 000021aa: ADD 000021ab: SWAP1 000021ac: PUSH2 0x3c85 000021af: JUMP 000021b0: JUMPDEST 000021b1: POP 000021b2: PUSH1 0x12 000021b4: SLOAD 000021b5: PUSH1 0x1c 000021b7: DUP1 000021b8: SLOAD 000021b9: PUSH1 0xff 000021bb: NOT 000021bc: AND 000021bd: PUSH1 0x03 000021bf: SWAP3 000021c0: SWAP1 000021c1: SWAP3 000021c2: SIGNEXTEND 000021c3: PUSH1 0x00 000021c5: SUB 000021c6: PUSH1 0xff 000021c8: AND 000021c9: SWAP2 000021ca: SWAP1 000021cb: SWAP2 000021cc: OR 000021cd: SWAP1 000021ce: SSTORE 000021cf: PUSH2 0x1482 000021d2: JUMP 000021d3: JUMPDEST 000021d4: PUSH2 0x21dc 000021d7: CALLER 000021d8: PUSH2 0x1e3a 000021db: JUMP 000021dc: JUMPDEST 000021dd: POP 000021de: PUSH2 0x1482 000021e1: DUP3 000021e2: DUP3 000021e3: PUSH2 0x131d 000021e6: JUMP 000021e7: JUMPDEST 000021e8: PUSH1 0x0d 000021ea: SLOAD 000021eb: PUSH1 0x0e 000021ed: SLOAD 000021ee: PUSH1 0x03 000021f0: SIGNEXTEND 000021f1: DUP3 000021f2: JUMP 000021f3: JUMPDEST 000021f4: PUSH2 0x21fb 000021f7: PUSH2 0x1dd6 000021fa: JUMP 000021fb: JUMPDEST 000021fc: ISZERO 000021fd: PUSH2 0x223b 00002200: JUMPI 00002201: PUSH1 0x40 00002203: DUP1 00002204: MLOAD 00002205: PUSH3 0x461bcd 00002209: PUSH1 0xe5 0000220b: SHL 0000220c: DUP2 0000220d: MSTORE 0000220e: PUSH1 0x20 00002210: PUSH1 0x04 00002212: DUP3 00002213: ADD 00002214: MSTORE 00002215: PUSH1 0x18 00002217: PUSH1 0x24 00002219: DUP3 0000221a: ADD 0000221b: MSTORE 0000221c: PUSH1 0x00 0000221e: DUP1 0000221f: MLOAD 00002220: PUSH1 0x20 00002222: PUSH2 0x40dc 00002225: DUP4 00002226: CODECOPY 00002227: DUP2 00002228: MLOAD 00002229: SWAP2 0000222a: MSTORE 0000222b: PUSH1 0x44 0000222d: DUP3 0000222e: ADD 0000222f: MSTORE 00002230: SWAP1 00002231: MLOAD 00002232: SWAP1 00002233: DUP2 00002234: SWAP1 00002235: SUB 00002236: PUSH1 0x64 00002238: ADD 00002239: SWAP1 0000223a: REVERT 0000223b: JUMPDEST 0000223c: PUSH2 0x2244 0000223f: DUP3 00002240: PUSH2 0x1290 00002243: JUMP 00002244: JUMPDEST 00002245: PUSH2 0x2283 00002248: JUMPI 00002249: PUSH1 0x40 0000224b: DUP1 0000224c: MLOAD 0000224d: PUSH3 0x461bcd 00002251: PUSH1 0xe5 00002253: SHL 00002254: DUP2 00002255: MSTORE 00002256: PUSH1 0x20 00002258: PUSH1 0x04 0000225a: DUP3 0000225b: ADD 0000225c: MSTORE 0000225d: PUSH1 0x14 0000225f: PUSH1 0x24 00002261: DUP3 00002262: ADD 00002263: MSTORE 00002264: PUSH1 0x00 00002266: DUP1 00002267: MLOAD 00002268: PUSH1 0x20 0000226a: PUSH2 0x3e89 0000226d: DUP4 0000226e: CODECOPY 0000226f: DUP2 00002270: MLOAD 00002271: SWAP2 00002272: MSTORE 00002273: PUSH1 0x44 00002275: DUP3 00002276: ADD 00002277: MSTORE 00002278: SWAP1 00002279: MLOAD 0000227a: SWAP1 0000227b: DUP2 0000227c: SWAP1 0000227d: SUB 0000227e: PUSH1 0x64 00002280: ADD 00002281: SWAP1 00002282: REVERT 00002283: JUMPDEST 00002284: PUSH1 0x01 00002286: PUSH1 0x01 00002288: PUSH1 0xa0 0000228a: SHL 0000228b: SUB 0000228c: DUP3 0000228d: AND 0000228e: PUSH1 0x00 00002290: SWAP1 00002291: DUP2 00002292: MSTORE 00002293: PUSH1 0x05 00002295: PUSH1 0x20 00002297: MSTORE 00002298: PUSH1 0x40 0000229a: SWAP1 0000229b: KECCAK256 0000229c: PUSH2 0x22a4 0000229f: DUP4 000022a0: PUSH2 0x2517 000022a3: JUMP 000022a4: JUMPDEST 000022a5: PUSH2 0x22e5 000022a8: JUMPI 000022a9: PUSH1 0x40 000022ab: DUP1 000022ac: MLOAD 000022ad: PUSH3 0x461bcd 000022b1: PUSH1 0xe5 000022b3: SHL 000022b4: DUP2 000022b5: MSTORE 000022b6: PUSH1 0x20 000022b8: PUSH1 0x04 000022ba: DUP3 000022bb: ADD 000022bc: MSTORE 000022bd: PUSH1 0x0d 000022bf: PUSH1 0x24 000022c1: DUP3 000022c2: ADD 000022c3: MSTORE 000022c4: PUSH13 0x5661756c742069732073616665 000022d2: PUSH1 0x98 000022d4: SHL 000022d5: PUSH1 0x44 000022d7: DUP3 000022d8: ADD 000022d9: MSTORE 000022da: SWAP1 000022db: MLOAD 000022dc: SWAP1 000022dd: DUP2 000022de: SWAP1 000022df: SUB 000022e0: PUSH1 0x64 000022e2: ADD 000022e3: SWAP1 000022e4: REVERT 000022e5: JUMPDEST 000022e6: CALLER 000022e7: PUSH1 0x01 000022e9: PUSH1 0x01 000022eb: PUSH1 0xa0 000022ed: SHL 000022ee: SUB 000022ef: DUP5 000022f0: AND 000022f1: EQ 000022f2: ISZERO 000022f3: PUSH2 0x2343 000022f6: JUMPI 000022f7: PUSH1 0x40 000022f9: DUP1 000022fa: MLOAD 000022fb: PUSH3 0x461bcd 000022ff: PUSH1 0xe5 00002301: SHL 00002302: DUP2 00002303: MSTORE 00002304: PUSH1 0x20 00002306: PUSH1 0x04 00002308: DUP3 00002309: ADD 0000230a: DUP2 0000230b: SWAP1 0000230c: MSTORE 0000230d: PUSH1 0x24 0000230f: DUP3 00002310: ADD 00002311: MSTORE 00002312: PUSH32 0x4f776e65722063616e2774206c6971756964617465207468656d73656c766573 00002333: PUSH1 0x44 00002335: DUP3 00002336: ADD 00002337: MSTORE 00002338: SWAP1 00002339: MLOAD 0000233a: SWAP1 0000233b: DUP2 0000233c: SWAP1 0000233d: SUB 0000233e: PUSH1 0x64 00002340: ADD 00002341: SWAP1 00002342: REVERT 00002343: JUMPDEST 00002344: PUSH1 0x00 00002346: PUSH2 0x2368 00002349: DUP4 0000234a: PUSH1 0x40 0000234c: MLOAD 0000234d: DUP1 0000234e: PUSH1 0x40 00002350: ADD 00002351: PUSH1 0x40 00002353: MSTORE 00002354: DUP1 00002355: PUSH1 0x01 00002357: DUP2 00002358: MSTORE 00002359: PUSH1 0x20 0000235b: ADD 0000235c: PUSH1 0x00 0000235e: PUSH1 0x03 00002360: SIGNEXTEND 00002361: DUP2 00002362: MSTORE 00002363: POP 00002364: PUSH2 0x38a3 00002367: JUMP 00002368: JUMPDEST 00002369: PUSH1 0x40 0000236b: DUP1 0000236c: MLOAD 0000236d: DUP1 0000236e: DUP3 0000236f: ADD 00002370: SWAP1 00002371: SWAP2 00002372: MSTORE 00002373: PUSH1 0x07 00002375: SLOAD 00002376: DUP2 00002377: MSTORE 00002378: PUSH1 0x08 0000237a: SLOAD 0000237b: PUSH1 0x03 0000237d: SWAP1 0000237e: DUP2 0000237f: SIGNEXTEND 00002380: DUP2 00002381: SIGNEXTEND 00002382: SWAP1 00002383: SIGNEXTEND 00002384: PUSH1 0x20 00002386: DUP3 00002387: ADD 00002388: MSTORE 00002389: SWAP1 0000238a: SWAP2 0000238b: POP 0000238c: PUSH1 0x00 0000238e: SWAP1 0000238f: PUSH2 0x2399 00002392: SWAP1 00002393: DUP6 00002394: SWAP1 00002395: PUSH2 0x38a3 00002398: JUMP 00002399: JUMPDEST 0000239a: SWAP1 0000239b: POP 0000239c: PUSH1 0x00 0000239e: PUSH2 0x23ad 000023a1: DUP4 000023a2: DUP4 000023a3: PUSH4 0xffffffff 000023a8: PUSH2 0x2cfa 000023ab: AND 000023ac: JUMP 000023ad: JUMPDEST 000023ae: PUSH1 0x0b 000023b0: SLOAD 000023b1: DUP6 000023b2: SLOAD 000023b3: SWAP2 000023b4: SWAP3 000023b5: POP 000023b6: PUSH1 0x00 000023b8: SWAP2 000023b9: PUSH2 0x23c7 000023bc: SWAP2 000023bd: PUSH4 0xffffffff 000023c2: PUSH2 0x37a4 000023c5: AND 000023c6: JUMP 000023c7: JUMPDEST 000023c8: PUSH1 0x0c 000023ca: SLOAD 000023cb: SWAP1 000023cc: SWAP2 000023cd: POP 000023ce: PUSH1 0x00 000023d0: PUSH1 0x03 000023d2: SWAP2 000023d3: DUP3 000023d4: SIGNEXTEND 000023d5: SWAP1 000023d6: SWAP2 000023d7: SIGNEXTEND 000023d8: SGT 000023d9: ISZERO 000023da: PUSH2 0x2402 000023dd: JUMPI 000023de: PUSH1 0x0c 000023e0: SLOAD 000023e1: PUSH2 0x23fb 000023e4: SWAP1 000023e5: DUP3 000023e6: SWAP1 000023e7: PUSH1 0x03 000023e9: SWAP1 000023ea: DUP2 000023eb: SIGNEXTEND 000023ec: SWAP1 000023ed: SIGNEXTEND 000023ee: PUSH1 0x0a 000023f0: EXP 000023f1: PUSH4 0xffffffff 000023f6: PUSH2 0x37a4 000023f9: AND 000023fa: JUMP 000023fb: JUMPDEST 000023fc: SWAP1 000023fd: POP 000023fe: PUSH2 0x2426 00002401: JUMP 00002402: JUMPDEST 00002403: PUSH1 0x0c 00002405: SLOAD 00002406: PUSH2 0x2423 00002409: SWAP1 0000240a: DUP3 0000240b: SWAP1 0000240c: PUSH1 0x03 0000240e: SWAP1 0000240f: DUP2 00002410: SIGNEXTEND 00002411: PUSH1 0x00 00002413: SUB 00002414: SWAP1 00002415: SIGNEXTEND 00002416: PUSH1 0x0a 00002418: EXP 00002419: PUSH4 0xffffffff 0000241e: PUSH2 0x3985 00002421: AND 00002422: JUMP 00002423: JUMPDEST 00002424: SWAP1 00002425: POP 00002426: JUMPDEST 00002427: DUP1 00002428: DUP3 00002429: GT 0000242a: ISZERO 0000242b: PUSH2 0x2465 0000242e: JUMPI 0000242f: PUSH1 0x40 00002431: MLOAD 00002432: PUSH3 0x461bcd 00002436: PUSH1 0xe5 00002438: SHL 00002439: DUP2 0000243a: MSTORE 0000243b: PUSH1 0x04 0000243d: ADD 0000243e: DUP1 0000243f: DUP1 00002440: PUSH1 0x20 00002442: ADD 00002443: DUP3 00002444: DUP2 00002445: SUB 00002446: DUP3 00002447: MSTORE 00002448: PUSH1 0x37 0000244a: DUP2 0000244b: MSTORE 0000244c: PUSH1 0x20 0000244e: ADD 0000244f: DUP1 00002450: PUSH2 0x3f21 00002453: PUSH1 0x37 00002455: SWAP2 00002456: CODECOPY 00002457: PUSH1 0x40 00002459: ADD 0000245a: SWAP2 0000245b: POP 0000245c: POP 0000245d: PUSH1 0x40 0000245f: MLOAD 00002460: DUP1 00002461: SWAP2 00002462: SUB 00002463: SWAP1 00002464: REVERT 00002465: JUMPDEST 00002466: DUP5 00002467: SLOAD 00002468: PUSH2 0x2477 0000246b: SWAP1 0000246c: DUP4 0000246d: PUSH4 0xffffffff 00002472: PUSH2 0x2cb8 00002475: AND 00002476: JUMP 00002477: JUMPDEST 00002478: DUP6 00002479: SSTORE 0000247a: PUSH1 0x01 0000247c: DUP6 0000247d: ADD 0000247e: SLOAD 0000247f: PUSH2 0x248e 00002482: SWAP1 00002483: DUP8 00002484: PUSH4 0xffffffff 00002489: PUSH2 0x2cb8 0000248c: AND 0000248d: JUMP 0000248e: JUMPDEST 0000248f: PUSH1 0x01 00002491: DUP7 00002492: ADD 00002493: SSTORE 00002494: PUSH2 0x249d 00002497: CALLER 00002498: DUP8 00002499: PUSH2 0x39c7 0000249c: JUMP 0000249d: JUMPDEST 0000249e: PUSH2 0x24a7 000024a1: CALLER 000024a2: DUP4 000024a3: PUSH2 0x315b 000024a6: JUMP 000024a7: JUMPDEST 000024a8: PUSH1 0x40 000024aa: DUP1 000024ab: MLOAD 000024ac: DUP4 000024ad: DUP2 000024ae: MSTORE 000024af: PUSH1 0x01 000024b1: PUSH1 0x01 000024b3: PUSH1 0xa0 000024b5: SHL 000024b6: SUB 000024b7: DUP10 000024b8: AND 000024b9: PUSH1 0x20 000024bb: DUP3 000024bc: ADD 000024bd: MSTORE 000024be: CALLER 000024bf: DUP2 000024c0: DUP4 000024c1: ADD 000024c2: MSTORE 000024c3: SWAP1 000024c4: MLOAD 000024c5: PUSH32 0xcab8e1abb9f8235c6db895cf185336dc9461aecf477b98c1be83687ee549e66a 000024e6: SWAP2 000024e7: DUP2 000024e8: SWAP1 000024e9: SUB 000024ea: PUSH1 0x60 000024ec: ADD 000024ed: SWAP1 000024ee: LOG1 000024ef: POP 000024f0: POP 000024f1: POP 000024f2: POP 000024f3: POP 000024f4: POP 000024f5: POP 000024f6: JUMP 000024f7: JUMPDEST 000024f8: PUSH1 0x0f 000024fa: SLOAD 000024fb: PUSH1 0x10 000024fd: SLOAD 000024fe: PUSH1 0x03 00002500: SIGNEXTEND 00002501: DUP3 00002502: JUMP 00002503: JUMPDEST 00002504: PUSH2 0x250b 00002507: PUSH2 0x1c1b 0000250a: JUMP 0000250b: JUMPDEST 0000250c: POP 0000250d: PUSH2 0x1531 00002510: DUP4 00002511: DUP4 00002512: ADDRESS 00002513: PUSH2 0x1ad9 00002516: JUMP 00002517: JUMPDEST 00002518: PUSH1 0x00 0000251a: DUP1 0000251b: PUSH2 0x2534 0000251e: PUSH2 0x2526 00002521: DUP5 00002522: PUSH2 0x3140 00002525: JUMP 00002526: JUMPDEST 00002527: PUSH2 0x252f 0000252a: DUP6 0000252b: PUSH2 0x3ac3 0000252e: JUMP 0000252f: JUMPDEST 00002530: PUSH2 0x2d54 00002533: JUMP 00002534: JUMPDEST 00002535: ISZERO 00002536: SWAP4 00002537: SWAP3 00002538: POP 00002539: POP 0000253a: POP 0000253b: JUMP 0000253c: JUMPDEST 0000253d: PUSH2 0x2545 00002540: CALLER 00002541: PUSH2 0x1e3a 00002544: JUMP 00002545: JUMPDEST 00002546: POP 00002547: PUSH2 0x1843 0000254a: DUP3 0000254b: ADDRESS 0000254c: PUSH2 0x131d 0000254f: JUMP 00002550: JUMPDEST 00002551: PUSH1 0x16 00002553: SLOAD 00002554: PUSH1 0x01 00002556: PUSH1 0x40 00002558: SHL 00002559: SWAP1 0000255a: DIV 0000255b: PUSH1 0x01 0000255d: PUSH1 0x01 0000255f: PUSH1 0xa0 00002561: SHL 00002562: SUB 00002563: AND 00002564: DUP2 00002565: JUMP 00002566: JUMPDEST 00002567: PUSH1 0x01 00002569: PUSH1 0x01 0000256b: PUSH1 0xa0 0000256d: SHL 0000256e: SUB 0000256f: SWAP2 00002570: DUP3 00002571: AND 00002572: PUSH1 0x00 00002574: SWAP1 00002575: DUP2 00002576: MSTORE 00002577: PUSH1 0x02 00002579: PUSH1 0x20 0000257b: SWAP1 0000257c: DUP2 0000257d: MSTORE 0000257e: PUSH1 0x40 00002580: DUP1 00002581: DUP4 00002582: KECCAK256 00002583: SWAP4 00002584: SWAP1 00002585: SWAP5 00002586: AND 00002587: DUP3 00002588: MSTORE 00002589: SWAP2 0000258a: SWAP1 0000258b: SWAP2 0000258c: MSTORE 0000258d: KECCAK256 0000258e: SLOAD 0000258f: SWAP1 00002590: JUMP 00002591: JUMPDEST 00002592: PUSH1 0x00 00002594: PUSH2 0x259c 00002597: DUP3 00002598: PUSH2 0x2517 0000259b: JUMP 0000259c: JUMPDEST 0000259d: ISZERO 0000259e: PUSH2 0x2654 000025a1: JUMPI 000025a2: PUSH1 0x01 000025a4: PUSH1 0x01 000025a6: PUSH1 0xa0 000025a8: SHL 000025a9: SUB 000025aa: DUP3 000025ab: AND 000025ac: PUSH1 0x00 000025ae: SWAP1 000025af: DUP2 000025b0: MSTORE 000025b1: PUSH1 0x05 000025b3: PUSH1 0x20 000025b5: MSTORE 000025b6: PUSH1 0x40 000025b8: DUP2 000025b9: KECCAK256 000025ba: PUSH1 0x0c 000025bc: SLOAD 000025bd: PUSH1 0x0b 000025bf: SLOAD 000025c0: DUP3 000025c1: SLOAD 000025c2: SWAP3 000025c3: SWAP4 000025c4: SWAP3 000025c5: PUSH2 0x25f1 000025c8: SWAP3 000025c9: PUSH1 0x03 000025cb: SWAP1 000025cc: DUP2 000025cd: SIGNEXTEND 000025ce: DUP6 000025cf: SUB 000025d0: SWAP1 000025d1: SIGNEXTEND 000025d2: PUSH1 0x0a 000025d4: EXP 000025d5: SWAP2 000025d6: PUSH2 0x25e5 000025d9: SWAP2 000025da: SWAP1 000025db: PUSH4 0xffffffff 000025e0: PUSH2 0x37a4 000025e3: AND 000025e4: JUMP 000025e5: JUMPDEST 000025e6: SWAP1 000025e7: PUSH4 0xffffffff 000025ec: PUSH2 0x3985 000025ef: AND 000025f0: JUMP 000025f1: JUMPDEST 000025f2: PUSH1 0x08 000025f4: SLOAD 000025f5: SWAP1 000025f6: SWAP2 000025f7: POP 000025f8: PUSH1 0x03 000025fa: SWAP1 000025fb: DUP2 000025fc: SIGNEXTEND 000025fd: PUSH1 0x00 000025ff: SUB 00002600: SWAP1 00002601: SIGNEXTEND 00002602: PUSH1 0x0a 00002604: EXP 00002605: PUSH2 0x260c 00002608: PUSH2 0x3d03 0000260b: JUMP 0000260c: JUMPDEST 0000260d: PUSH1 0x40 0000260f: DUP1 00002610: MLOAD 00002611: DUP1 00002612: DUP3 00002613: ADD 00002614: SWAP1 00002615: SWAP2 00002616: MSTORE 00002617: PUSH1 0x07 00002619: SLOAD 0000261a: DUP2 0000261b: SWAP1 0000261c: PUSH2 0x262b 0000261f: SWAP1 00002620: DUP6 00002621: PUSH4 0xffffffff 00002626: PUSH2 0x2cfa 00002629: AND 0000262a: JUMP 0000262b: JUMPDEST 0000262c: DUP2 0000262d: MSTORE 0000262e: PUSH1 0x08 00002630: SLOAD 00002631: PUSH1 0x03 00002633: SWAP1 00002634: DUP2 00002635: SIGNEXTEND 00002636: SWAP1 00002637: SIGNEXTEND 00002638: PUSH1 0x20 0000263a: SWAP1 0000263b: SWAP2 0000263c: ADD 0000263d: MSTORE 0000263e: SWAP1 0000263f: POP 00002640: PUSH2 0x2649 00002643: DUP4 00002644: DUP3 00002645: PUSH2 0x36a9 00002648: JUMP 00002649: JUMPDEST 0000264a: SWAP5 0000264b: POP 0000264c: POP 0000264d: POP 0000264e: POP 0000264f: POP 00002650: PUSH2 0x12b0 00002653: JUMP 00002654: JUMPDEST 00002655: POP 00002656: PUSH1 0x00 00002658: PUSH2 0x12b0 0000265b: JUMP 0000265c: JUMPDEST 0000265d: PUSH1 0x15 0000265f: SLOAD 00002660: DUP2 00002661: JUMP 00002662: JUMPDEST 00002663: PUSH2 0x266a 00002666: PUSH2 0x1db2 00002669: JUMP 0000266a: JUMPDEST 0000266b: PUSH2 0x26a9 0000266e: JUMPI 0000266f: PUSH1 0x40 00002671: DUP1 00002672: MLOAD 00002673: PUSH3 0x461bcd 00002677: PUSH1 0xe5 00002679: SHL 0000267a: DUP2 0000267b: MSTORE 0000267c: PUSH1 0x20 0000267e: PUSH1 0x04 00002680: DUP3 00002681: ADD 00002682: DUP2 00002683: SWAP1 00002684: MSTORE 00002685: PUSH1 0x24 00002687: DUP3 00002688: ADD 00002689: MSTORE 0000268a: PUSH1 0x00 0000268c: DUP1 0000268d: MLOAD 0000268e: PUSH1 0x20 00002690: PUSH2 0x3ff5 00002693: DUP4 00002694: CODECOPY 00002695: DUP2 00002696: MLOAD 00002697: SWAP2 00002698: MSTORE 00002699: PUSH1 0x44 0000269b: DUP3 0000269c: ADD 0000269d: MSTORE 0000269e: SWAP1 0000269f: MLOAD 000026a0: SWAP1 000026a1: DUP2 000026a2: SWAP1 000026a3: SUB 000026a4: PUSH1 0x64 000026a6: ADD 000026a7: SWAP1 000026a8: REVERT 000026a9: JUMPDEST 000026aa: PUSH1 0x14 000026ac: DUP1 000026ad: SLOAD 000026ae: PUSH1 0x00 000026b0: SWAP1 000026b1: SWAP2 000026b2: SSTORE 000026b3: PUSH2 0x26bc 000026b6: DUP3 000026b7: DUP3 000026b8: PUSH2 0x315b 000026bb: JUMP 000026bc: JUMPDEST 000026bd: PUSH1 0x40 000026bf: DUP1 000026c0: MLOAD 000026c1: PUSH1 0x01 000026c3: PUSH1 0x01 000026c5: PUSH1 0xa0 000026c7: SHL 000026c8: SUB 000026c9: DUP5 000026ca: AND 000026cb: DUP2 000026cc: MSTORE 000026cd: PUSH1 0x20 000026cf: DUP2 000026d0: ADD 000026d1: DUP4 000026d2: SWAP1 000026d3: MSTORE 000026d4: DUP2 000026d5: MLOAD 000026d6: PUSH32 0x88b171bb78d3ac5e1caa8e729dddce4e1322e84c80c093ebbe52507b62c77d98 000026f7: SWAP3 000026f8: SWAP2 000026f9: DUP2 000026fa: SWAP1 000026fb: SUB 000026fc: SWAP1 000026fd: SWAP2 000026fe: ADD 000026ff: SWAP1 00002700: LOG1 00002701: POP 00002702: POP 00002703: JUMP 00002704: JUMPDEST 00002705: PUSH2 0x270c 00002708: PUSH2 0x1dd6 0000270b: JUMP 0000270c: JUMPDEST 0000270d: ISZERO 0000270e: PUSH2 0x274c 00002711: JUMPI 00002712: PUSH1 0x40 00002714: DUP1 00002715: MLOAD 00002716: PUSH3 0x461bcd 0000271a: PUSH1 0xe5 0000271c: SHL 0000271d: DUP2 0000271e: MSTORE 0000271f: PUSH1 0x20 00002721: PUSH1 0x04 00002723: DUP3 00002724: ADD 00002725: MSTORE 00002726: PUSH1 0x18 00002728: PUSH1 0x24 0000272a: DUP3 0000272b: ADD 0000272c: MSTORE 0000272d: PUSH1 0x00 0000272f: DUP1 00002730: MLOAD 00002731: PUSH1 0x20 00002733: PUSH2 0x40dc 00002736: DUP4 00002737: CODECOPY 00002738: DUP2 00002739: MLOAD 0000273a: SWAP2 0000273b: MSTORE 0000273c: PUSH1 0x44 0000273e: DUP3 0000273f: ADD 00002740: MSTORE 00002741: SWAP1 00002742: MLOAD 00002743: SWAP1 00002744: DUP2 00002745: SWAP1 00002746: SUB 00002747: PUSH1 0x64 00002749: ADD 0000274a: SWAP1 0000274b: REVERT 0000274c: JUMPDEST 0000274d: PUSH2 0x2755 00002750: CALLER 00002751: PUSH2 0x1290 00002754: JUMP 00002755: JUMPDEST 00002756: PUSH2 0x2794 00002759: JUMPI 0000275a: PUSH1 0x40 0000275c: DUP1 0000275d: MLOAD 0000275e: PUSH3 0x461bcd 00002762: PUSH1 0xe5 00002764: SHL 00002765: DUP2 00002766: MSTORE 00002767: PUSH1 0x20 00002769: PUSH1 0x04 0000276b: DUP3 0000276c: ADD 0000276d: MSTORE 0000276e: PUSH1 0x14 00002770: PUSH1 0x24 00002772: DUP3 00002773: ADD 00002774: MSTORE 00002775: PUSH1 0x00 00002777: DUP1 00002778: MLOAD 00002779: PUSH1 0x20 0000277b: PUSH2 0x3e89 0000277e: DUP4 0000277f: CODECOPY 00002780: DUP2 00002781: MLOAD 00002782: SWAP2 00002783: MSTORE 00002784: PUSH1 0x44 00002786: DUP3 00002787: ADD 00002788: MSTORE 00002789: SWAP1 0000278a: MLOAD 0000278b: SWAP1 0000278c: DUP2 0000278d: SWAP1 0000278e: SUB 0000278f: PUSH1 0x64 00002791: ADD 00002792: SWAP1 00002793: REVERT 00002794: JUMPDEST 00002795: CALLER 00002796: PUSH1 0x00 00002798: SWAP1 00002799: DUP2 0000279a: MSTORE 0000279b: PUSH1 0x05 0000279d: PUSH1 0x20 0000279f: MSTORE 000027a0: PUSH1 0x40 000027a2: SWAP1 000027a3: KECCAK256 000027a4: PUSH1 0x01 000027a6: DUP2 000027a7: ADD 000027a8: SLOAD 000027a9: PUSH2 0x27b8 000027ac: SWAP1 000027ad: DUP4 000027ae: PUSH4 0xffffffff 000027b3: PUSH2 0x2cb8 000027b6: AND 000027b7: JUMP 000027b8: JUMPDEST 000027b9: PUSH1 0x01 000027bb: DUP3 000027bc: ADD 000027bd: SSTORE 000027be: PUSH2 0x27c7 000027c1: CALLER 000027c2: DUP4 000027c3: PUSH2 0x39c7 000027c6: JUMP 000027c7: JUMPDEST 000027c8: PUSH1 0x40 000027ca: DUP1 000027cb: MLOAD 000027cc: CALLER 000027cd: DUP2 000027ce: MSTORE 000027cf: PUSH1 0x20 000027d1: DUP2 000027d2: ADD 000027d3: DUP5 000027d4: SWAP1 000027d5: MSTORE 000027d6: DUP2 000027d7: MLOAD 000027d8: PUSH32 0xdf8cebdea6ef1fd20576b80bc951377c0e61e2a8169153a1f836673ccce80e62 000027f9: SWAP3 000027fa: SWAP2 000027fb: DUP2 000027fc: SWAP1 000027fd: SUB 000027fe: SWAP1 000027ff: SWAP2 00002800: ADD 00002801: SWAP1 00002802: LOG1 00002803: POP 00002804: POP 00002805: JUMP 00002806: JUMPDEST 00002807: PUSH2 0x280e 0000280a: PUSH2 0x1c1b 0000280d: JUMP 0000280e: JUMPDEST 0000280f: POP 00002810: PUSH2 0x1482 00002813: DUP3 00002814: DUP3 00002815: PUSH2 0x21d3 00002818: JUMP 00002819: JUMPDEST 0000281a: PUSH2 0x2821 0000281d: PUSH2 0x1db2 00002820: JUMP 00002821: JUMPDEST 00002822: PUSH2 0x2860 00002825: JUMPI 00002826: PUSH1 0x40 00002828: DUP1 00002829: MLOAD 0000282a: PUSH3 0x461bcd 0000282e: PUSH1 0xe5 00002830: SHL 00002831: DUP2 00002832: MSTORE 00002833: PUSH1 0x20 00002835: PUSH1 0x04 00002837: DUP3 00002838: ADD 00002839: DUP2 0000283a: SWAP1 0000283b: MSTORE 0000283c: PUSH1 0x24 0000283e: DUP3 0000283f: ADD 00002840: MSTORE 00002841: PUSH1 0x00 00002843: DUP1 00002844: MLOAD 00002845: PUSH1 0x20 00002847: PUSH2 0x3ff5 0000284a: DUP4 0000284b: CODECOPY 0000284c: DUP2 0000284d: MLOAD 0000284e: SWAP2 0000284f: MSTORE 00002850: PUSH1 0x44 00002852: DUP3 00002853: ADD 00002854: MSTORE 00002855: SWAP1 00002856: MLOAD 00002857: SWAP1 00002858: DUP2 00002859: SWAP1 0000285a: SUB 0000285b: PUSH1 0x64 0000285d: ADD 0000285e: SWAP1 0000285f: REVERT 00002860: JUMPDEST 00002861: PUSH1 0xc8 00002863: DUP5 00002864: GT 00002865: ISZERO 00002866: PUSH2 0x28a0 00002869: JUMPI 0000286a: PUSH1 0x40 0000286c: MLOAD 0000286d: PUSH3 0x461bcd 00002871: PUSH1 0xe5 00002873: SHL 00002874: DUP2 00002875: MSTORE 00002876: PUSH1 0x04 00002878: ADD 00002879: DUP1 0000287a: DUP1 0000287b: PUSH1 0x20 0000287d: ADD 0000287e: DUP3 0000287f: DUP2 00002880: SUB 00002881: DUP3 00002882: MSTORE 00002883: PUSH1 0x25 00002885: DUP2 00002886: MSTORE 00002887: PUSH1 0x20 00002889: ADD 0000288a: DUP1 0000288b: PUSH2 0x3ecf 0000288e: PUSH1 0x25 00002890: SWAP2 00002891: CODECOPY 00002892: PUSH1 0x40 00002894: ADD 00002895: SWAP2 00002896: POP 00002897: POP 00002898: PUSH1 0x40 0000289a: MLOAD 0000289b: DUP1 0000289c: SWAP2 0000289d: SUB 0000289e: SWAP1 0000289f: REVERT 000028a0: JUMPDEST 000028a1: PUSH2 0x03e8 000028a4: DUP4 000028a5: GT 000028a6: ISZERO 000028a7: PUSH2 0x28e1 000028aa: JUMPI 000028ab: PUSH1 0x40 000028ad: MLOAD 000028ae: PUSH3 0x461bcd 000028b2: PUSH1 0xe5 000028b4: SHL 000028b5: DUP2 000028b6: MSTORE 000028b7: PUSH1 0x04 000028b9: ADD 000028ba: DUP1 000028bb: DUP1 000028bc: PUSH1 0x20 000028be: ADD 000028bf: DUP3 000028c0: DUP2 000028c1: SUB 000028c2: DUP3 000028c3: MSTORE 000028c4: PUSH1 0x2b 000028c6: DUP2 000028c7: MSTORE 000028c8: PUSH1 0x20 000028ca: ADD 000028cb: DUP1 000028cc: PUSH2 0x3d80 000028cf: PUSH1 0x2b 000028d1: SWAP2 000028d2: CODECOPY 000028d3: PUSH1 0x40 000028d5: ADD 000028d6: SWAP2 000028d7: POP 000028d8: POP 000028d9: PUSH1 0x40 000028db: MLOAD 000028dc: DUP1 000028dd: SWAP2 000028de: SUB 000028df: SWAP1 000028e0: REVERT 000028e1: JUMPDEST 000028e2: PUSH1 0x64 000028e4: DUP3 000028e5: GT 000028e6: ISZERO 000028e7: PUSH2 0x2937 000028ea: JUMPI 000028eb: PUSH1 0x40 000028ed: DUP1 000028ee: MLOAD 000028ef: PUSH3 0x461bcd 000028f3: PUSH1 0xe5 000028f5: SHL 000028f6: DUP2 000028f7: MSTORE 000028f8: PUSH1 0x20 000028fa: PUSH1 0x04 000028fc: DUP3 000028fd: ADD 000028fe: DUP2 000028ff: SWAP1 00002900: MSTORE 00002901: PUSH1 0x24 00002903: DUP3 00002904: ADD 00002905: MSTORE 00002906: PUSH32 0x43616e27742068617665207472616e73616374696f6e20666565203e20313025 00002927: PUSH1 0x44 00002929: DUP3 0000292a: ADD 0000292b: MSTORE 0000292c: SWAP1 0000292d: MLOAD 0000292e: SWAP1 0000292f: DUP2 00002930: SWAP1 00002931: SUB 00002932: PUSH1 0x64 00002934: ADD 00002935: SWAP1 00002936: REVERT 00002937: JUMPDEST 00002938: PUSH1 0x0a 0000293a: DUP2 0000293b: LT 0000293c: ISZERO 0000293d: PUSH2 0x2977 00002940: JUMPI 00002941: PUSH1 0x40 00002943: MLOAD 00002944: PUSH3 0x461bcd 00002948: PUSH1 0xe5 0000294a: SHL 0000294b: DUP2 0000294c: MSTORE 0000294d: PUSH1 0x04 0000294f: ADD 00002950: DUP1 00002951: DUP1 00002952: PUSH1 0x20 00002954: ADD 00002955: DUP3 00002956: DUP2 00002957: SUB 00002958: DUP3 00002959: MSTORE 0000295a: PUSH1 0x28 0000295c: DUP2 0000295d: MSTORE 0000295e: PUSH1 0x20 00002960: ADD 00002961: DUP1 00002962: PUSH2 0x3d58 00002965: PUSH1 0x28 00002967: SWAP2 00002968: CODECOPY 00002969: PUSH1 0x40 0000296b: ADD 0000296c: SWAP2 0000296d: POP 0000296e: POP 0000296f: PUSH1 0x40 00002971: MLOAD 00002972: DUP1 00002973: SWAP2 00002974: SUB 00002975: SWAP1 00002976: REVERT 00002977: JUMPDEST 00002978: PUSH1 0x07 0000297a: DUP5 0000297b: SWAP1 0000297c: SSTORE 0000297d: PUSH1 0x0b 0000297f: DUP4 00002980: SWAP1 00002981: SSTORE 00002982: PUSH1 0x09 00002984: DUP3 00002985: SWAP1 00002986: SSTORE 00002987: PUSH1 0x0d 00002989: DUP2 0000298a: SWAP1 0000298b: SSTORE 0000298c: PUSH32 0x3450d20c21ea671871fed271900cc8ff03badafa9b6fe2ff7f86991950e86b6b 000029ad: DUP5 000029ae: DUP5 000029af: DUP5 000029b0: DUP5 000029b1: PUSH2 0x29b8 000029b4: PUSH2 0x1da3 000029b7: JUMP 000029b8: JUMPDEST 000029b9: PUSH1 0x40 000029bb: DUP1 000029bc: MLOAD 000029bd: SWAP6 000029be: DUP7 000029bf: MSTORE 000029c0: PUSH1 0x20 000029c2: DUP7 000029c3: ADD 000029c4: SWAP5 000029c5: SWAP1 000029c6: SWAP5 000029c7: MSTORE 000029c8: DUP5 000029c9: DUP5 000029ca: ADD 000029cb: SWAP3 000029cc: SWAP1 000029cd: SWAP3 000029ce: MSTORE 000029cf: PUSH1 0x60 000029d1: DUP5 000029d2: ADD 000029d3: MSTORE 000029d4: PUSH1 0x01 000029d6: PUSH1 0x01 000029d8: PUSH1 0xa0 000029da: SHL 000029db: SUB 000029dc: AND 000029dd: PUSH1 0x80 000029df: DUP4 000029e0: ADD 000029e1: MSTORE 000029e2: MLOAD 000029e3: SWAP1 000029e4: DUP2 000029e5: SWAP1 000029e6: SUB 000029e7: PUSH1 0xa0 000029e9: ADD 000029ea: SWAP1 000029eb: LOG1 000029ec: POP 000029ed: POP 000029ee: POP 000029ef: POP 000029f0: JUMP 000029f1: JUMPDEST 000029f2: PUSH2 0x29f9 000029f5: PUSH2 0x1db2 000029f8: JUMP 000029f9: JUMPDEST 000029fa: PUSH2 0x2a38 000029fd: JUMPI 000029fe: PUSH1 0x40 00002a00: DUP1 00002a01: MLOAD 00002a02: PUSH3 0x461bcd 00002a06: PUSH1 0xe5 00002a08: SHL 00002a09: DUP2 00002a0a: MSTORE 00002a0b: PUSH1 0x20 00002a0d: PUSH1 0x04 00002a0f: DUP3 00002a10: ADD 00002a11: DUP2 00002a12: SWAP1 00002a13: MSTORE 00002a14: PUSH1 0x24 00002a16: DUP3 00002a17: ADD 00002a18: MSTORE 00002a19: PUSH1 0x00 00002a1b: DUP1 00002a1c: MLOAD 00002a1d: PUSH1 0x20 00002a1f: PUSH2 0x3ff5 00002a22: DUP4 00002a23: CODECOPY 00002a24: DUP2 00002a25: MLOAD 00002a26: SWAP2 00002a27: MSTORE 00002a28: PUSH1 0x44 00002a2a: DUP3 00002a2b: ADD 00002a2c: MSTORE 00002a2d: SWAP1 00002a2e: MLOAD 00002a2f: SWAP1 00002a30: DUP2 00002a31: SWAP1 00002a32: SUB 00002a33: PUSH1 0x64 00002a35: ADD 00002a36: SWAP1 00002a37: REVERT 00002a38: JUMPDEST 00002a39: PUSH2 0x2a41 00002a3c: DUP2 00002a3d: PUSH2 0x3ae1 00002a40: JUMP 00002a41: JUMPDEST 00002a42: POP 00002a43: JUMP 00002a44: JUMPDEST 00002a45: PUSH1 0x01 00002a47: PUSH1 0x01 00002a49: PUSH1 0xa0 00002a4b: SHL 00002a4c: SUB 00002a4d: AND 00002a4e: ISZERO 00002a4f: SWAP1 00002a50: JUMP 00002a51: JUMPDEST 00002a52: PUSH2 0x2a5a 00002a55: CALLER 00002a56: PUSH2 0x1290 00002a59: JUMP 00002a5a: JUMPDEST 00002a5b: PUSH2 0x2a99 00002a5e: JUMPI 00002a5f: PUSH1 0x40 00002a61: DUP1 00002a62: MLOAD 00002a63: PUSH3 0x461bcd 00002a67: PUSH1 0xe5 00002a69: SHL 00002a6a: DUP2 00002a6b: MSTORE 00002a6c: PUSH1 0x20 00002a6e: PUSH1 0x04 00002a70: DUP3 00002a71: ADD 00002a72: MSTORE 00002a73: PUSH1 0x14 00002a75: PUSH1 0x24 00002a77: DUP3 00002a78: ADD 00002a79: MSTORE 00002a7a: PUSH1 0x00 00002a7c: DUP1 00002a7d: MLOAD 00002a7e: PUSH1 0x20 00002a80: PUSH2 0x3e89 00002a83: DUP4 00002a84: CODECOPY 00002a85: DUP2 00002a86: MLOAD 00002a87: SWAP2 00002a88: MSTORE 00002a89: PUSH1 0x44 00002a8b: DUP3 00002a8c: ADD 00002a8d: MSTORE 00002a8e: SWAP1 00002a8f: MLOAD 00002a90: SWAP1 00002a91: DUP2 00002a92: SWAP1 00002a93: SUB 00002a94: PUSH1 0x64 00002a96: ADD 00002a97: SWAP1 00002a98: REVERT 00002a99: JUMPDEST 00002a9a: CALLER 00002a9b: PUSH1 0x00 00002a9d: SWAP1 00002a9e: DUP2 00002a9f: MSTORE 00002aa0: PUSH1 0x05 00002aa2: PUSH1 0x20 00002aa4: MSTORE 00002aa5: PUSH1 0x40 00002aa7: SWAP1 00002aa8: KECCAK256 00002aa9: PUSH1 0x02 00002aab: DUP2 00002aac: ADD 00002aad: SLOAD 00002aae: PUSH2 0x2af6 00002ab1: JUMPI 00002ab2: PUSH1 0x40 00002ab4: DUP1 00002ab5: MLOAD 00002ab6: PUSH3 0x461bcd 00002aba: PUSH1 0xe5 00002abc: SHL 00002abd: DUP2 00002abe: MSTORE 00002abf: PUSH1 0x20 00002ac1: PUSH1 0x04 00002ac3: DUP3 00002ac4: ADD 00002ac5: MSTORE 00002ac6: PUSH1 0x15 00002ac8: PUSH1 0x24 00002aca: DUP3 00002acb: ADD 00002acc: MSTORE 00002acd: PUSH21 0x4e6f20756e6465726c79696e672062616c616e6365 00002ae3: PUSH1 0x58 00002ae5: SHL 00002ae6: PUSH1 0x44 00002ae8: DUP3 00002ae9: ADD 00002aea: MSTORE 00002aeb: SWAP1 00002aec: MLOAD 00002aed: SWAP1 00002aee: DUP2 00002aef: SWAP1 00002af0: SUB 00002af1: PUSH1 0x64 00002af3: ADD 00002af4: SWAP1 00002af5: REVERT 00002af6: JUMPDEST 00002af7: PUSH1 0x02 00002af9: DUP2 00002afa: ADD 00002afb: DUP1 00002afc: SLOAD 00002afd: PUSH1 0x00 00002aff: SWAP1 00002b00: SWAP2 00002b01: SSTORE 00002b02: PUSH2 0x2b0b 00002b05: CALLER 00002b06: DUP3 00002b07: PUSH2 0x37fd 00002b0a: JUMP 00002b0b: JUMPDEST 00002b0c: PUSH1 0x40 00002b0e: DUP1 00002b0f: MLOAD 00002b10: DUP3 00002b11: DUP2 00002b12: MSTORE 00002b13: CALLER 00002b14: PUSH1 0x20 00002b16: DUP3 00002b17: ADD 00002b18: MSTORE 00002b19: DUP2 00002b1a: MLOAD 00002b1b: PUSH32 0xea0bff65fa9380b944e9a761f9c6a665ad2d31e74706a52773ddb45c8a57c83d 00002b3c: SWAP3 00002b3d: SWAP2 00002b3e: DUP2 00002b3f: SWAP1 00002b40: SUB 00002b41: SWAP1 00002b42: SWAP2 00002b43: ADD 00002b44: SWAP1 00002b45: LOG1 00002b46: POP 00002b47: POP 00002b48: JUMP 00002b49: JUMPDEST 00002b4a: PUSH1 0x00 00002b4c: PUSH2 0x2b53 00002b4f: PUSH2 0x1dd6 00002b52: JUMP 00002b53: JUMPDEST 00002b54: ISZERO 00002b55: PUSH2 0x2b93 00002b58: JUMPI 00002b59: PUSH1 0x40 00002b5b: DUP1 00002b5c: MLOAD 00002b5d: PUSH3 0x461bcd 00002b61: PUSH1 0xe5 00002b63: SHL 00002b64: DUP2 00002b65: MSTORE 00002b66: PUSH1 0x20 00002b68: PUSH1 0x04 00002b6a: DUP3 00002b6b: ADD 00002b6c: MSTORE 00002b6d: PUSH1 0x18 00002b6f: PUSH1 0x24 00002b71: DUP3 00002b72: ADD 00002b73: MSTORE 00002b74: PUSH1 0x00 00002b76: DUP1 00002b77: MLOAD 00002b78: PUSH1 0x20 00002b7a: PUSH2 0x40dc 00002b7d: DUP4 00002b7e: CODECOPY 00002b7f: DUP2 00002b80: MLOAD 00002b81: SWAP2 00002b82: MSTORE 00002b83: PUSH1 0x44 00002b85: DUP3 00002b86: ADD 00002b87: MSTORE 00002b88: SWAP1 00002b89: MLOAD 00002b8a: SWAP1 00002b8b: DUP2 00002b8c: SWAP1 00002b8d: SUB 00002b8e: PUSH1 0x64 00002b90: ADD 00002b91: SWAP1 00002b92: REVERT 00002b93: JUMPDEST 00002b94: PUSH1 0x01 00002b96: PUSH1 0x01 00002b98: PUSH1 0xa0 00002b9a: SHL 00002b9b: SUB 00002b9c: DUP4 00002b9d: AND 00002b9e: PUSH1 0x00 00002ba0: SWAP1 00002ba1: DUP2 00002ba2: MSTORE 00002ba3: PUSH1 0x05 00002ba5: PUSH1 0x20 00002ba7: MSTORE 00002ba8: PUSH1 0x40 00002baa: SWAP1 00002bab: KECCAK256 00002bac: DUP1 00002bad: SLOAD 00002bae: PUSH2 0x2bbd 00002bb1: SWAP1 00002bb2: DUP5 00002bb3: PUSH4 0xffffffff 00002bb8: PUSH2 0x2cfa 00002bbb: AND 00002bbc: JUMP 00002bbd: JUMPDEST 00002bbe: SWAP1 00002bbf: DUP2 00002bc0: SWAP1 00002bc1: SSTORE 00002bc2: SWAP4 00002bc3: SWAP3 00002bc4: POP 00002bc5: POP 00002bc6: POP 00002bc7: JUMP 00002bc8: JUMPDEST 00002bc9: CALLER 00002bca: SWAP1 00002bcb: JUMP 00002bcc: JUMPDEST 00002bcd: PUSH1 0x01 00002bcf: PUSH1 0x01 00002bd1: PUSH1 0xa0 00002bd3: SHL 00002bd4: SUB 00002bd5: DUP4 00002bd6: AND 00002bd7: PUSH2 0x2c11 00002bda: JUMPI 00002bdb: PUSH1 0x40 00002bdd: MLOAD 00002bde: PUSH3 0x461bcd 00002be2: PUSH1 0xe5 00002be4: SHL 00002be5: DUP2 00002be6: MSTORE 00002be7: PUSH1 0x04 00002be9: ADD 00002bea: DUP1 00002beb: DUP1 00002bec: PUSH1 0x20 00002bee: ADD 00002bef: DUP3 00002bf0: DUP2 00002bf1: SUB 00002bf2: DUP3 00002bf3: MSTORE 00002bf4: PUSH1 0x24 00002bf6: DUP2 00002bf7: MSTORE 00002bf8: PUSH1 0x20 00002bfa: ADD 00002bfb: DUP1 00002bfc: PUSH2 0x408a 00002bff: PUSH1 0x24 00002c01: SWAP2 00002c02: CODECOPY 00002c03: PUSH1 0x40 00002c05: ADD 00002c06: SWAP2 00002c07: POP 00002c08: POP 00002c09: PUSH1 0x40 00002c0b: MLOAD 00002c0c: DUP1 00002c0d: SWAP2 00002c0e: SUB 00002c0f: SWAP1 00002c10: REVERT 00002c11: JUMPDEST 00002c12: PUSH1 0x01 00002c14: PUSH1 0x01 00002c16: PUSH1 0xa0 00002c18: SHL 00002c19: SUB 00002c1a: DUP3 00002c1b: AND 00002c1c: PUSH2 0x2c56 00002c1f: JUMPI 00002c20: PUSH1 0x40 00002c22: MLOAD 00002c23: PUSH3 0x461bcd 00002c27: PUSH1 0xe5 00002c29: SHL 00002c2a: DUP2 00002c2b: MSTORE 00002c2c: PUSH1 0x04 00002c2e: ADD 00002c2f: DUP1 00002c30: DUP1 00002c31: PUSH1 0x20 00002c33: ADD 00002c34: DUP3 00002c35: DUP2 00002c36: SUB 00002c37: DUP3 00002c38: MSTORE 00002c39: PUSH1 0x22 00002c3b: DUP2 00002c3c: MSTORE 00002c3d: PUSH1 0x20 00002c3f: ADD 00002c40: DUP1 00002c41: PUSH2 0x3e1b 00002c44: PUSH1 0x22 00002c46: SWAP2 00002c47: CODECOPY 00002c48: PUSH1 0x40 00002c4a: ADD 00002c4b: SWAP2 00002c4c: POP 00002c4d: POP 00002c4e: PUSH1 0x40 00002c50: MLOAD 00002c51: DUP1 00002c52: SWAP2 00002c53: SUB 00002c54: SWAP1 00002c55: REVERT 00002c56: JUMPDEST 00002c57: PUSH1 0x01 00002c59: PUSH1 0x01 00002c5b: PUSH1 0xa0 00002c5d: SHL 00002c5e: SUB 00002c5f: DUP1 00002c60: DUP5 00002c61: AND 00002c62: PUSH1 0x00 00002c64: DUP2 00002c65: DUP2 00002c66: MSTORE 00002c67: PUSH1 0x02 00002c69: PUSH1 0x20 00002c6b: SWAP1 00002c6c: DUP2 00002c6d: MSTORE 00002c6e: PUSH1 0x40 00002c70: DUP1 00002c71: DUP4 00002c72: KECCAK256 00002c73: SWAP5 00002c74: DUP8 00002c75: AND 00002c76: DUP1 00002c77: DUP5 00002c78: MSTORE 00002c79: SWAP5 00002c7a: DUP3 00002c7b: MSTORE 00002c7c: SWAP2 00002c7d: DUP3 00002c7e: SWAP1 00002c7f: KECCAK256 00002c80: DUP6 00002c81: SWAP1 00002c82: SSTORE 00002c83: DUP2 00002c84: MLOAD 00002c85: DUP6 00002c86: DUP2 00002c87: MSTORE 00002c88: SWAP2 00002c89: MLOAD 00002c8a: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 00002cab: SWAP3 00002cac: DUP2 00002cad: SWAP1 00002cae: SUB 00002caf: SWAP1 00002cb0: SWAP2 00002cb1: ADD 00002cb2: SWAP1 00002cb3: LOG3 00002cb4: POP 00002cb5: POP 00002cb6: POP 00002cb7: JUMP 00002cb8: JUMPDEST 00002cb9: PUSH1 0x00 00002cbb: PUSH2 0x1135 00002cbe: DUP4 00002cbf: DUP4 00002cc0: PUSH1 0x40 00002cc2: MLOAD 00002cc3: DUP1 00002cc4: PUSH1 0x40 00002cc6: ADD 00002cc7: PUSH1 0x40 00002cc9: MSTORE 00002cca: DUP1 00002ccb: PUSH1 0x1e 00002ccd: DUP2 00002cce: MSTORE 00002ccf: PUSH1 0x20 00002cd1: ADD 00002cd2: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 00002cf3: DUP2 00002cf4: MSTORE 00002cf5: POP 00002cf6: PUSH2 0x30a9 00002cf9: JUMP 00002cfa: JUMPDEST 00002cfb: PUSH1 0x00 00002cfd: DUP3 00002cfe: DUP3 00002cff: ADD 00002d00: DUP4 00002d01: DUP2 00002d02: LT 00002d03: ISZERO 00002d04: PUSH2 0x1135 00002d07: JUMPI 00002d08: PUSH1 0x40 00002d0a: DUP1 00002d0b: MLOAD 00002d0c: PUSH3 0x461bcd 00002d10: PUSH1 0xe5 00002d12: SHL 00002d13: DUP2 00002d14: MSTORE 00002d15: PUSH1 0x20 00002d17: PUSH1 0x04 00002d19: DUP3 00002d1a: ADD 00002d1b: MSTORE 00002d1c: PUSH1 0x1b 00002d1e: PUSH1 0x24 00002d20: DUP3 00002d21: ADD 00002d22: MSTORE 00002d23: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000 00002d44: PUSH1 0x44 00002d46: DUP3 00002d47: ADD 00002d48: MSTORE 00002d49: SWAP1 00002d4a: MLOAD 00002d4b: SWAP1 00002d4c: DUP2 00002d4d: SWAP1 00002d4e: SUB 00002d4f: PUSH1 0x64 00002d51: ADD 00002d52: SWAP1 00002d53: REVERT 00002d54: JUMPDEST 00002d55: PUSH1 0x00 00002d57: DUP1 00002d58: PUSH2 0x2d75 00002d5b: PUSH1 0x16 00002d5d: PUSH1 0x08 00002d5f: SWAP1 00002d60: SLOAD 00002d61: SWAP1 00002d62: PUSH2 0x0100 00002d65: EXP 00002d66: SWAP1 00002d67: DIV 00002d68: PUSH1 0x01 00002d6a: PUSH1 0x01 00002d6c: PUSH1 0xa0 00002d6e: SHL 00002d6f: SUB 00002d70: AND 00002d71: PUSH2 0x3b81 00002d74: JUMP 00002d75: JUMPDEST 00002d76: PUSH1 0x18 00002d78: SLOAD 00002d79: SWAP1 00002d7a: SWAP2 00002d7b: POP 00002d7c: PUSH1 0x00 00002d7e: SWAP1 00002d7f: PUSH2 0x2d90 00002d82: SWAP1 00002d83: PUSH1 0x01 00002d85: PUSH1 0x01 00002d87: PUSH1 0xa0 00002d89: SHL 00002d8a: SUB 00002d8b: AND 00002d8c: PUSH2 0x3b81 00002d8f: JUMP 00002d90: JUMPDEST 00002d91: PUSH1 0x0f 00002d93: SLOAD 00002d94: PUSH1 0x0d 00002d96: SLOAD 00002d97: SWAP2 00002d98: SWAP3 00002d99: POP 00002d9a: PUSH1 0x00 00002d9c: SWAP2 00002d9d: PUSH2 0x2dbe 00002da0: SWAP2 00002da1: SWAP1 00002da2: PUSH2 0x2db2 00002da5: SWAP1 00002da6: DUP9 00002da7: SWAP1 00002da8: PUSH4 0xffffffff 00002dad: PUSH2 0x37a4 00002db0: AND 00002db1: JUMP 00002db2: JUMPDEST 00002db3: SWAP1 00002db4: PUSH4 0xffffffff 00002db9: PUSH2 0x37a4 00002dbc: AND 00002dbd: JUMP 00002dbe: JUMPDEST 00002dbf: PUSH1 0x10 00002dc1: SLOAD 00002dc2: PUSH1 0x0e 00002dc4: SLOAD 00002dc5: SWAP2 00002dc6: SWAP3 00002dc7: POP 00002dc8: PUSH1 0x03 00002dca: SWAP2 00002dcb: DUP3 00002dcc: SIGNEXTEND 00002dcd: SWAP2 00002dce: SIGNEXTEND 00002dcf: ADD 00002dd0: PUSH1 0x00 00002dd2: PUSH2 0x2de5 00002dd5: DUP5 00002dd6: PUSH2 0x25e5 00002dd9: DUP11 00002dda: DUP9 00002ddb: PUSH4 0xffffffff 00002de0: PUSH2 0x37a4 00002de3: AND 00002de4: JUMP 00002de5: JUMPDEST 00002de6: PUSH1 0x16 00002de8: SLOAD 00002de9: SWAP1 00002dea: SWAP2 00002deb: POP 00002dec: PUSH1 0x03 00002dee: SWAP1 00002def: DUP2 00002df0: SIGNEXTEND 00002df1: SWAP1 00002df2: PUSH1 0x00 00002df4: SWAP1 00002df5: DUP2 00002df6: SWAP1 00002df7: DUP6 00002df8: DUP2 00002df9: SIGNEXTEND 00002dfa: SWAP1 00002dfb: DUP5 00002dfc: SWAP1 00002dfd: SIGNEXTEND 00002dfe: SLT 00002dff: ISZERO 00002e00: PUSH2 0x2e29 00002e03: JUMPI 00002e04: DUP3 00002e05: DUP6 00002e06: SUB 00002e07: PUSH1 0x03 00002e09: SIGNEXTEND 00002e0a: SWAP2 00002e0b: POP 00002e0c: DUP4 00002e0d: PUSH2 0x2e20 00002e10: DUP8 00002e11: PUSH1 0x0a 00002e13: DUP6 00002e14: SWAP1 00002e15: EXP 00002e16: PUSH4 0xffffffff 00002e1b: PUSH2 0x37a4 00002e1e: AND 00002e1f: JUMP 00002e20: JUMPDEST 00002e21: GT 00002e22: ISZERO 00002e23: SWAP1 00002e24: POP 00002e25: PUSH2 0x2e4b 00002e28: JUMP 00002e29: JUMPDEST 00002e2a: DUP5 00002e2b: DUP4 00002e2c: SUB 00002e2d: PUSH1 0x03 00002e2f: SIGNEXTEND 00002e30: SWAP2 00002e31: POP 00002e32: PUSH2 0x2e45 00002e35: DUP5 00002e36: PUSH1 0x0a 00002e38: DUP5 00002e39: SWAP1 00002e3a: EXP 00002e3b: PUSH4 0xffffffff 00002e40: PUSH2 0x37a4 00002e43: AND 00002e44: JUMP 00002e45: JUMPDEST 00002e46: DUP7 00002e47: GT 00002e48: ISZERO 00002e49: SWAP1 00002e4a: POP 00002e4b: JUMPDEST 00002e4c: SWAP11 00002e4d: SWAP10 00002e4e: POP 00002e4f: POP 00002e50: POP 00002e51: POP 00002e52: POP 00002e53: POP 00002e54: POP 00002e55: POP 00002e56: POP 00002e57: POP 00002e58: JUMP 00002e59: JUMPDEST 00002e5a: PUSH1 0x01 00002e5c: PUSH1 0x01 00002e5e: PUSH1 0xa0 00002e60: SHL 00002e61: SUB 00002e62: DUP3 00002e63: AND 00002e64: PUSH2 0x2eb4 00002e67: JUMPI 00002e68: PUSH1 0x40 00002e6a: DUP1 00002e6b: MLOAD 00002e6c: PUSH3 0x461bcd 00002e70: PUSH1 0xe5 00002e72: SHL 00002e73: DUP2 00002e74: MSTORE 00002e75: PUSH1 0x20 00002e77: PUSH1 0x04 00002e79: DUP3 00002e7a: ADD 00002e7b: MSTORE 00002e7c: PUSH1 0x1f 00002e7e: PUSH1 0x24 00002e80: DUP3 00002e81: ADD 00002e82: MSTORE 00002e83: PUSH32 0x45524332303a206d696e7420746f20746865207a65726f206164647265737300 00002ea4: PUSH1 0x44 00002ea6: DUP3 00002ea7: ADD 00002ea8: MSTORE 00002ea9: SWAP1 00002eaa: MLOAD 00002eab: SWAP1 00002eac: DUP2 00002ead: SWAP1 00002eae: SUB 00002eaf: PUSH1 0x64 00002eb1: ADD 00002eb2: SWAP1 00002eb3: REVERT 00002eb4: JUMPDEST 00002eb5: PUSH1 0x03 00002eb7: SLOAD 00002eb8: PUSH2 0x2ec7 00002ebb: SWAP1 00002ebc: DUP3 00002ebd: PUSH4 0xffffffff 00002ec2: PUSH2 0x2cfa 00002ec5: AND 00002ec6: JUMP 00002ec7: JUMPDEST 00002ec8: PUSH1 0x03 00002eca: SSTORE 00002ecb: PUSH1 0x01 00002ecd: PUSH1 0x01 00002ecf: PUSH1 0xa0 00002ed1: SHL 00002ed2: SUB 00002ed3: DUP3 00002ed4: AND 00002ed5: PUSH1 0x00 00002ed7: SWAP1 00002ed8: DUP2 00002ed9: MSTORE 00002eda: PUSH1 0x01 00002edc: PUSH1 0x20 00002ede: MSTORE 00002edf: PUSH1 0x40 00002ee1: SWAP1 00002ee2: KECCAK256 00002ee3: SLOAD 00002ee4: PUSH2 0x2ef3 00002ee7: SWAP1 00002ee8: DUP3 00002ee9: PUSH4 0xffffffff 00002eee: PUSH2 0x2cfa 00002ef1: AND 00002ef2: JUMP 00002ef3: JUMPDEST 00002ef4: PUSH1 0x01 00002ef6: PUSH1 0x01 00002ef8: PUSH1 0xa0 00002efa: SHL 00002efb: SUB 00002efc: DUP4 00002efd: AND 00002efe: PUSH1 0x00 00002f00: DUP2 00002f01: DUP2 00002f02: MSTORE 00002f03: PUSH1 0x01 00002f05: PUSH1 0x20 00002f07: SWAP1 00002f08: DUP2 00002f09: MSTORE 00002f0a: PUSH1 0x40 00002f0c: DUP1 00002f0d: DUP4 00002f0e: KECCAK256 00002f0f: SWAP5 00002f10: SWAP1 00002f11: SWAP5 00002f12: SSTORE 00002f13: DUP4 00002f14: MLOAD 00002f15: DUP6 00002f16: DUP2 00002f17: MSTORE 00002f18: SWAP4 00002f19: MLOAD 00002f1a: SWAP3 00002f1b: SWAP4 00002f1c: SWAP2 00002f1d: SWAP3 00002f1e: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00002f3f: SWAP3 00002f40: DUP2 00002f41: SWAP1 00002f42: SUB 00002f43: SWAP1 00002f44: SWAP2 00002f45: ADD 00002f46: SWAP1 00002f47: LOG3 00002f48: POP 00002f49: POP 00002f4a: JUMP 00002f4b: JUMPDEST 00002f4c: PUSH1 0x01 00002f4e: PUSH1 0x01 00002f50: PUSH1 0xa0 00002f52: SHL 00002f53: SUB 00002f54: DUP4 00002f55: AND 00002f56: PUSH2 0x2f90 00002f59: JUMPI 00002f5a: PUSH1 0x40 00002f5c: MLOAD 00002f5d: PUSH3 0x461bcd 00002f61: PUSH1 0xe5 00002f63: SHL 00002f64: DUP2 00002f65: MSTORE 00002f66: PUSH1 0x04 00002f68: ADD 00002f69: DUP1 00002f6a: DUP1 00002f6b: PUSH1 0x20 00002f6d: ADD 00002f6e: DUP3 00002f6f: DUP2 00002f70: SUB 00002f71: DUP3 00002f72: MSTORE 00002f73: PUSH1 0x25 00002f75: DUP2 00002f76: MSTORE 00002f77: PUSH1 0x20 00002f79: ADD 00002f7a: DUP1 00002f7b: PUSH2 0x4065 00002f7e: PUSH1 0x25 00002f80: SWAP2 00002f81: CODECOPY 00002f82: PUSH1 0x40 00002f84: ADD 00002f85: SWAP2 00002f86: POP 00002f87: POP 00002f88: PUSH1 0x40 00002f8a: MLOAD 00002f8b: DUP1 00002f8c: SWAP2 00002f8d: SUB 00002f8e: SWAP1 00002f8f: REVERT 00002f90: JUMPDEST 00002f91: PUSH1 0x01 00002f93: PUSH1 0x01 00002f95: PUSH1 0xa0 00002f97: SHL 00002f98: SUB 00002f99: DUP3 00002f9a: AND 00002f9b: PUSH2 0x2fd5 00002f9e: JUMPI 00002f9f: PUSH1 0x40 00002fa1: MLOAD 00002fa2: PUSH3 0x461bcd 00002fa6: PUSH1 0xe5 00002fa8: SHL 00002fa9: DUP2 00002faa: MSTORE 00002fab: PUSH1 0x04 00002fad: ADD 00002fae: DUP1 00002faf: DUP1 00002fb0: PUSH1 0x20 00002fb2: ADD 00002fb3: DUP3 00002fb4: DUP2 00002fb5: SUB 00002fb6: DUP3 00002fb7: MSTORE 00002fb8: PUSH1 0x23 00002fba: DUP2 00002fbb: MSTORE 00002fbc: PUSH1 0x20 00002fbe: ADD 00002fbf: DUP1 00002fc0: PUSH2 0x3d35 00002fc3: PUSH1 0x23 00002fc5: SWAP2 00002fc6: CODECOPY 00002fc7: PUSH1 0x40 00002fc9: ADD 00002fca: SWAP2 00002fcb: POP 00002fcc: POP 00002fcd: PUSH1 0x40 00002fcf: MLOAD 00002fd0: DUP1 00002fd1: SWAP2 00002fd2: SUB 00002fd3: SWAP1 00002fd4: REVERT 00002fd5: JUMPDEST 00002fd6: PUSH2 0x3018 00002fd9: DUP2 00002fda: PUSH1 0x40 00002fdc: MLOAD 00002fdd: DUP1 00002fde: PUSH1 0x60 00002fe0: ADD 00002fe1: PUSH1 0x40 00002fe3: MSTORE 00002fe4: DUP1 00002fe5: PUSH1 0x26 00002fe7: DUP2 00002fe8: MSTORE 00002fe9: PUSH1 0x20 00002feb: ADD 00002fec: PUSH2 0x3ea9 00002fef: PUSH1 0x26 00002ff1: SWAP2 00002ff2: CODECOPY 00002ff3: PUSH1 0x01 00002ff5: PUSH1 0x01 00002ff7: PUSH1 0xa0 00002ff9: SHL 00002ffa: SUB 00002ffb: DUP7 00002ffc: AND 00002ffd: PUSH1 0x00 00002fff: SWAP1 00003000: DUP2 00003001: MSTORE 00003002: PUSH1 0x01 00003004: PUSH1 0x20 00003006: MSTORE 00003007: PUSH1 0x40 00003009: SWAP1 0000300a: KECCAK256 0000300b: SLOAD 0000300c: SWAP2 0000300d: SWAP1 0000300e: PUSH4 0xffffffff 00003013: PUSH2 0x30a9 00003016: AND 00003017: JUMP 00003018: JUMPDEST 00003019: PUSH1 0x01 0000301b: PUSH1 0x01 0000301d: PUSH1 0xa0 0000301f: SHL 00003020: SUB 00003021: DUP1 00003022: DUP6 00003023: AND 00003024: PUSH1 0x00 00003026: SWAP1 00003027: DUP2 00003028: MSTORE 00003029: PUSH1 0x01 0000302b: PUSH1 0x20 0000302d: MSTORE 0000302e: PUSH1 0x40 00003030: DUP1 00003031: DUP3 00003032: KECCAK256 00003033: SWAP4 00003034: SWAP1 00003035: SWAP4 00003036: SSTORE 00003037: SWAP1 00003038: DUP5 00003039: AND 0000303a: DUP2 0000303b: MSTORE 0000303c: KECCAK256 0000303d: SLOAD 0000303e: PUSH2 0x304d 00003041: SWAP1 00003042: DUP3 00003043: PUSH4 0xffffffff 00003048: PUSH2 0x2cfa 0000304b: AND 0000304c: JUMP 0000304d: JUMPDEST 0000304e: PUSH1 0x01 00003050: PUSH1 0x01 00003052: PUSH1 0xa0 00003054: SHL 00003055: SUB 00003056: DUP1 00003057: DUP5 00003058: AND 00003059: PUSH1 0x00 0000305b: DUP2 0000305c: DUP2 0000305d: MSTORE 0000305e: PUSH1 0x01 00003060: PUSH1 0x20 00003062: SWAP1 00003063: DUP2 00003064: MSTORE 00003065: PUSH1 0x40 00003067: SWAP2 00003068: DUP3 00003069: SWAP1 0000306a: KECCAK256 0000306b: SWAP5 0000306c: SWAP1 0000306d: SWAP5 0000306e: SSTORE 0000306f: DUP1 00003070: MLOAD 00003071: DUP6 00003072: DUP2 00003073: MSTORE 00003074: SWAP1 00003075: MLOAD 00003076: SWAP2 00003077: SWAP4 00003078: SWAP3 00003079: DUP8 0000307a: AND 0000307b: SWAP3 0000307c: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 0000309d: SWAP3 0000309e: SWAP2 0000309f: DUP3 000030a0: SWAP1 000030a1: SUB 000030a2: ADD 000030a3: SWAP1 000030a4: LOG3 000030a5: POP 000030a6: POP 000030a7: POP 000030a8: JUMP 000030a9: JUMPDEST 000030aa: PUSH1 0x00 000030ac: DUP2 000030ad: DUP5 000030ae: DUP5 000030af: GT 000030b0: ISZERO 000030b1: PUSH2 0x3138 000030b4: JUMPI 000030b5: PUSH1 0x40 000030b7: MLOAD 000030b8: PUSH3 0x461bcd 000030bc: PUSH1 0xe5 000030be: SHL 000030bf: DUP2 000030c0: MSTORE 000030c1: PUSH1 0x04 000030c3: ADD 000030c4: DUP1 000030c5: DUP1 000030c6: PUSH1 0x20 000030c8: ADD 000030c9: DUP3 000030ca: DUP2 000030cb: SUB 000030cc: DUP3 000030cd: MSTORE 000030ce: DUP4 000030cf: DUP2 000030d0: DUP2 000030d1: MLOAD 000030d2: DUP2 000030d3: MSTORE 000030d4: PUSH1 0x20 000030d6: ADD 000030d7: SWAP2 000030d8: POP 000030d9: DUP1 000030da: MLOAD 000030db: SWAP1 000030dc: PUSH1 0x20 000030de: ADD 000030df: SWAP1 000030e0: DUP1 000030e1: DUP4 000030e2: DUP4 000030e3: PUSH1 0x00 000030e5: JUMPDEST 000030e6: DUP4 000030e7: DUP2 000030e8: LT 000030e9: ISZERO 000030ea: PUSH2 0x30fd 000030ed: JUMPI 000030ee: DUP2 000030ef: DUP2 000030f0: ADD 000030f1: MLOAD 000030f2: DUP4 000030f3: DUP3 000030f4: ADD 000030f5: MSTORE 000030f6: PUSH1 0x20 000030f8: ADD 000030f9: PUSH2 0x30e5 000030fc: JUMP 000030fd: JUMPDEST 000030fe: POP 000030ff: POP 00003100: POP 00003101: POP 00003102: SWAP1 00003103: POP 00003104: SWAP1 00003105: DUP2 00003106: ADD 00003107: SWAP1 00003108: PUSH1 0x1f 0000310a: AND 0000310b: DUP1 0000310c: ISZERO 0000310d: PUSH2 0x312a 00003110: JUMPI 00003111: DUP1 00003112: DUP3 00003113: SUB 00003114: DUP1 00003115: MLOAD 00003116: PUSH1 0x01 00003118: DUP4 00003119: PUSH1 0x20 0000311b: SUB 0000311c: PUSH2 0x0100 0000311f: EXP 00003120: SUB 00003121: NOT 00003122: AND 00003123: DUP2 00003124: MSTORE 00003125: PUSH1 0x20 00003127: ADD 00003128: SWAP2 00003129: POP 0000312a: JUMPDEST 0000312b: POP 0000312c: SWAP3 0000312d: POP 0000312e: POP 0000312f: POP 00003130: PUSH1 0x40 00003132: MLOAD 00003133: DUP1 00003134: SWAP2 00003135: SUB 00003136: SWAP1 00003137: REVERT 00003138: JUMPDEST 00003139: POP 0000313a: POP 0000313b: POP 0000313c: SWAP1 0000313d: SUB 0000313e: SWAP1 0000313f: JUMP 00003140: JUMPDEST 00003141: PUSH1 0x01 00003143: PUSH1 0x01 00003145: PUSH1 0xa0 00003147: SHL 00003148: SUB 00003149: AND 0000314a: PUSH1 0x00 0000314c: SWAP1 0000314d: DUP2 0000314e: MSTORE 0000314f: PUSH1 0x05 00003151: PUSH1 0x20 00003153: MSTORE 00003154: PUSH1 0x40 00003156: SWAP1 00003157: KECCAK256 00003158: SLOAD 00003159: SWAP1 0000315a: JUMP 0000315b: JUMPDEST 0000315c: PUSH1 0x16 0000315e: SLOAD 0000315f: PUSH2 0x3177 00003162: SWAP1 00003163: PUSH1 0x01 00003165: PUSH1 0x40 00003167: SHL 00003168: SWAP1 00003169: DIV 0000316a: PUSH1 0x01 0000316c: PUSH1 0x01 0000316e: PUSH1 0xa0 00003170: SHL 00003171: SUB 00003172: AND 00003173: PUSH2 0x2a44 00003176: JUMP 00003177: JUMPDEST 00003178: ISZERO 00003179: PUSH2 0x31b8 0000317c: JUMPI 0000317d: PUSH1 0x40 0000317f: MLOAD 00003180: PUSH1 0x01 00003182: PUSH1 0x01 00003184: PUSH1 0xa0 00003186: SHL 00003187: SUB 00003188: DUP4 00003189: AND 0000318a: SWAP1 0000318b: DUP3 0000318c: ISZERO 0000318d: PUSH2 0x08fc 00003190: MUL 00003191: SWAP1 00003192: DUP4 00003193: SWAP1 00003194: PUSH1 0x00 00003196: DUP2 00003197: DUP2 00003198: DUP2 00003199: DUP6 0000319a: DUP9 0000319b: DUP9 0000319c: CALL 0000319d: SWAP4 0000319e: POP 0000319f: POP 000031a0: POP 000031a1: POP 000031a2: ISZERO 000031a3: DUP1 000031a4: ISZERO 000031a5: PUSH2 0x31b2 000031a8: JUMPI 000031a9: RETURNDATASIZE 000031aa: PUSH1 0x00 000031ac: DUP1 000031ad: RETURNDATACOPY 000031ae: RETURNDATASIZE 000031af: PUSH1 0x00 000031b1: REVERT 000031b2: JUMPDEST 000031b3: POP 000031b4: PUSH2 0x1482 000031b7: JUMP 000031b8: JUMPDEST 000031b9: PUSH1 0x16 000031bb: SLOAD 000031bc: PUSH1 0x40 000031be: DUP1 000031bf: MLOAD 000031c0: PUSH4 0xa9059cbb 000031c5: PUSH1 0xe0 000031c7: SHL 000031c8: DUP2 000031c9: MSTORE 000031ca: PUSH1 0x01 000031cc: PUSH1 0x01 000031ce: PUSH1 0xa0 000031d0: SHL 000031d1: SUB 000031d2: DUP6 000031d3: DUP2 000031d4: AND 000031d5: PUSH1 0x04 000031d7: DUP4 000031d8: ADD 000031d9: MSTORE 000031da: PUSH1 0x24 000031dc: DUP3 000031dd: ADD 000031de: DUP6 000031df: SWAP1 000031e0: MSTORE 000031e1: SWAP2 000031e2: MLOAD 000031e3: PUSH1 0x01 000031e5: PUSH1 0x40 000031e7: SHL 000031e8: SWAP1 000031e9: SWAP4 000031ea: DIV 000031eb: SWAP1 000031ec: SWAP2 000031ed: AND 000031ee: SWAP2 000031ef: PUSH4 0xa9059cbb 000031f4: SWAP2 000031f5: PUSH1 0x44 000031f7: DUP1 000031f8: DUP3 000031f9: ADD 000031fa: SWAP3 000031fb: PUSH1 0x20 000031fd: SWAP3 000031fe: SWAP1 000031ff: SWAP2 00003200: SWAP1 00003201: DUP3 00003202: SWAP1 00003203: SUB 00003204: ADD 00003205: DUP2 00003206: PUSH1 0x00 00003208: DUP8 00003209: DUP1 0000320a: EXTCODESIZE 0000320b: ISZERO 0000320c: DUP1 0000320d: ISZERO 0000320e: PUSH2 0x3216 00003211: JUMPI 00003212: PUSH1 0x00 00003214: DUP1 00003215: REVERT 00003216: JUMPDEST 00003217: POP 00003218: GAS 00003219: CALL 0000321a: ISZERO 0000321b: DUP1 0000321c: ISZERO 0000321d: PUSH2 0x322a 00003220: JUMPI 00003221: RETURNDATASIZE 00003222: PUSH1 0x00 00003224: DUP1 00003225: RETURNDATACOPY 00003226: RETURNDATASIZE 00003227: PUSH1 0x00 00003229: REVERT 0000322a: JUMPDEST 0000322b: POP 0000322c: POP 0000322d: POP 0000322e: POP 0000322f: PUSH1 0x40 00003231: MLOAD 00003232: RETURNDATASIZE 00003233: PUSH1 0x20 00003235: DUP2 00003236: LT 00003237: ISZERO 00003238: PUSH2 0x3240 0000323b: JUMPI 0000323c: PUSH1 0x00 0000323e: DUP1 0000323f: REVERT 00003240: JUMPDEST 00003241: POP 00003242: POP 00003243: POP 00003244: POP 00003245: JUMP 00003246: JUMPDEST 00003247: PUSH2 0x324e 0000324a: PUSH2 0x12b5 0000324d: JUMP 0000324e: JUMPDEST 0000324f: PUSH2 0x3289 00003252: JUMPI 00003253: PUSH1 0x40 00003255: MLOAD 00003256: PUSH3 0x461bcd 0000325a: PUSH1 0xe5 0000325c: SHL 0000325d: DUP2 0000325e: MSTORE 0000325f: PUSH1 0x04 00003261: ADD 00003262: DUP1 00003263: DUP1 00003264: PUSH1 0x20 00003266: ADD 00003267: DUP3 00003268: DUP2 00003269: SUB 0000326a: DUP3 0000326b: MSTORE 0000326c: PUSH1 0x2d 0000326e: DUP2 0000326f: MSTORE 00003270: PUSH1 0x20 00003272: ADD 00003273: DUP1 00003274: PUSH2 0x3fa0 00003277: PUSH1 0x2d 00003279: SWAP2 0000327a: CODECOPY 0000327b: PUSH1 0x40 0000327d: ADD 0000327e: SWAP2 0000327f: POP 00003280: POP 00003281: PUSH1 0x40 00003283: MLOAD 00003284: DUP1 00003285: SWAP2 00003286: SUB 00003287: SWAP1 00003288: REVERT 00003289: JUMPDEST 0000328a: PUSH2 0x3292 0000328d: DUP2 0000328e: PUSH2 0x1290 00003291: JUMP 00003292: JUMPDEST 00003293: PUSH2 0x32d1 00003296: JUMPI 00003297: PUSH1 0x40 00003299: DUP1 0000329a: MLOAD 0000329b: PUSH3 0x461bcd 0000329f: PUSH1 0xe5 000032a1: SHL 000032a2: DUP2 000032a3: MSTORE 000032a4: PUSH1 0x20 000032a6: PUSH1 0x04 000032a8: DUP3 000032a9: ADD 000032aa: MSTORE 000032ab: PUSH1 0x14 000032ad: PUSH1 0x24 000032af: DUP3 000032b0: ADD 000032b1: MSTORE 000032b2: PUSH1 0x00 000032b4: DUP1 000032b5: MLOAD 000032b6: PUSH1 0x20 000032b8: PUSH2 0x3e89 000032bb: DUP4 000032bc: CODECOPY 000032bd: DUP2 000032be: MLOAD 000032bf: SWAP2 000032c0: MSTORE 000032c1: PUSH1 0x44 000032c3: DUP3 000032c4: ADD 000032c5: MSTORE 000032c6: SWAP1 000032c7: MLOAD 000032c8: SWAP1 000032c9: DUP2 000032ca: SWAP1 000032cb: SUB 000032cc: PUSH1 0x64 000032ce: ADD 000032cf: SWAP1 000032d0: REVERT 000032d1: JUMPDEST 000032d2: PUSH1 0x01 000032d4: PUSH1 0x01 000032d6: PUSH1 0xa0 000032d8: SHL 000032d9: SUB 000032da: DUP2 000032db: AND 000032dc: PUSH1 0x00 000032de: SWAP1 000032df: DUP2 000032e0: MSTORE 000032e1: PUSH1 0x05 000032e3: PUSH1 0x20 000032e5: MSTORE 000032e6: PUSH1 0x40 000032e8: SWAP1 000032e9: KECCAK256 000032ea: DUP3 000032eb: PUSH2 0x333b 000032ee: JUMPI 000032ef: PUSH1 0x40 000032f1: DUP1 000032f2: MLOAD 000032f3: PUSH3 0x461bcd 000032f7: PUSH1 0xe5 000032f9: SHL 000032fa: DUP2 000032fb: MSTORE 000032fc: PUSH1 0x20 000032fe: PUSH1 0x04 00003300: DUP3 00003301: ADD 00003302: MSTORE 00003303: PUSH1 0x18 00003305: PUSH1 0x24 00003307: DUP3 00003308: ADD 00003309: MSTORE 0000330a: PUSH32 0x43616e27742065786572636973652030206f546f6b656e730000000000000000 0000332b: PUSH1 0x44 0000332d: DUP3 0000332e: ADD 0000332f: MSTORE 00003330: SWAP1 00003331: MLOAD 00003332: SWAP1 00003333: DUP2 00003334: SWAP1 00003335: SUB 00003336: PUSH1 0x64 00003338: ADD 00003339: SWAP1 0000333a: REVERT 0000333b: JUMPDEST 0000333c: DUP1 0000333d: PUSH1 0x01 0000333f: ADD 00003340: SLOAD 00003341: DUP4 00003342: GT 00003343: ISZERO 00003344: PUSH2 0x337e 00003347: JUMPI 00003348: PUSH1 0x40 0000334a: MLOAD 0000334b: PUSH3 0x461bcd 0000334f: PUSH1 0xe5 00003351: SHL 00003352: DUP2 00003353: MSTORE 00003354: PUSH1 0x04 00003356: ADD 00003357: DUP1 00003358: DUP1 00003359: PUSH1 0x20 0000335b: ADD 0000335c: DUP3 0000335d: DUP2 0000335e: SUB 0000335f: DUP3 00003360: MSTORE 00003361: PUSH1 0x2e 00003363: DUP2 00003364: MSTORE 00003365: PUSH1 0x20 00003367: ADD 00003368: DUP1 00003369: PUSH2 0x40ae 0000336c: PUSH1 0x2e 0000336e: SWAP2 0000336f: CODECOPY 00003370: PUSH1 0x40 00003372: ADD 00003373: SWAP2 00003374: POP 00003375: POP 00003376: PUSH1 0x40 00003378: MLOAD 00003379: DUP1 0000337a: SWAP2 0000337b: SUB 0000337c: SWAP1 0000337d: REVERT 0000337e: JUMPDEST 0000337f: DUP3 00003380: PUSH2 0x3388 00003383: CALLER 00003384: PUSH2 0x1b6f 00003387: JUMP 00003388: JUMPDEST 00003389: LT 0000338a: ISZERO 0000338b: PUSH2 0x33d0 0000338e: JUMPI 0000338f: PUSH1 0x40 00003391: DUP1 00003392: MLOAD 00003393: PUSH3 0x461bcd 00003397: PUSH1 0xe5 00003399: SHL 0000339a: DUP2 0000339b: MSTORE 0000339c: PUSH1 0x20 0000339e: PUSH1 0x04 000033a0: DUP3 000033a1: ADD 000033a2: MSTORE 000033a3: PUSH1 0x12 000033a5: PUSH1 0x24 000033a7: DUP3 000033a8: ADD 000033a9: MSTORE 000033aa: PUSH18 0x4e6f7420656e6f756768206f546f6b656e73 000033bd: PUSH1 0x70 000033bf: SHL 000033c0: PUSH1 0x44 000033c2: DUP3 000033c3: ADD 000033c4: MSTORE 000033c5: SWAP1 000033c6: MLOAD 000033c7: SWAP1 000033c8: DUP2 000033c9: SWAP1 000033ca: SUB 000033cb: PUSH1 0x64 000033cd: ADD 000033ce: SWAP1 000033cf: REVERT 000033d0: JUMPDEST 000033d1: PUSH1 0x00 000033d3: PUSH2 0x33db 000033d6: DUP5 000033d7: PUSH2 0x1b2b 000033da: JUMP 000033db: JUMPDEST 000033dc: PUSH1 0x02 000033de: DUP4 000033df: ADD 000033e0: SLOAD 000033e1: SWAP1 000033e2: SWAP2 000033e3: POP 000033e4: PUSH2 0x33f3 000033e7: SWAP1 000033e8: DUP3 000033e9: PUSH4 0xffffffff 000033ee: PUSH2 0x2cfa 000033f1: AND 000033f2: JUMP 000033f3: JUMPDEST 000033f4: PUSH1 0x02 000033f6: DUP4 000033f7: ADD 000033f8: SSTORE 000033f9: PUSH1 0x40 000033fb: DUP1 000033fc: MLOAD 000033fd: DUP1 000033fe: DUP3 000033ff: ADD 00003400: SWAP1 00003401: SWAP2 00003402: MSTORE 00003403: PUSH1 0x01 00003405: DUP2 00003406: MSTORE 00003407: PUSH1 0x00 00003409: PUSH1 0x20 0000340b: DUP3 0000340c: ADD 0000340d: DUP2 0000340e: SWAP1 0000340f: MSTORE 00003410: SWAP1 00003411: PUSH2 0x341b 00003414: SWAP1 00003415: DUP7 00003416: SWAP1 00003417: PUSH2 0x38a3 0000341a: JUMP 0000341b: JUMPDEST 0000341c: PUSH1 0x40 0000341e: DUP1 0000341f: MLOAD 00003420: DUP1 00003421: DUP3 00003422: ADD 00003423: SWAP1 00003424: SWAP2 00003425: MSTORE 00003426: PUSH1 0x09 00003428: SLOAD 00003429: DUP2 0000342a: MSTORE 0000342b: PUSH1 0x0a 0000342d: SLOAD 0000342e: PUSH1 0x03 00003430: SWAP1 00003431: DUP2 00003432: SIGNEXTEND 00003433: DUP2 00003434: SIGNEXTEND 00003435: SWAP1 00003436: SIGNEXTEND 00003437: PUSH1 0x20 00003439: DUP3 0000343a: ADD 0000343b: MSTORE 0000343c: SWAP1 0000343d: SWAP2 0000343e: POP 0000343f: PUSH1 0x00 00003441: SWAP1 00003442: PUSH2 0x344c 00003445: SWAP1 00003446: DUP8 00003447: SWAP1 00003448: PUSH2 0x38a3 0000344b: JUMP 0000344c: JUMPDEST 0000344d: PUSH1 0x14 0000344f: SLOAD 00003450: SWAP1 00003451: SWAP2 00003452: POP 00003453: PUSH2 0x3462 00003456: SWAP1 00003457: DUP3 00003458: PUSH4 0xffffffff 0000345d: PUSH2 0x2cfa 00003460: AND 00003461: JUMP 00003462: JUMPDEST 00003463: PUSH1 0x14 00003465: SSTORE 00003466: PUSH1 0x00 00003468: PUSH2 0x3477 0000346b: DUP4 0000346c: DUP4 0000346d: PUSH4 0xffffffff 00003472: PUSH2 0x2cfa 00003475: AND 00003476: JUMP 00003477: JUMPDEST 00003478: DUP6 00003479: SLOAD 0000347a: SWAP1 0000347b: SWAP2 0000347c: POP 0000347d: DUP2 0000347e: GT 0000347f: ISZERO 00003480: PUSH2 0x34d0 00003483: JUMPI 00003484: PUSH1 0x40 00003486: DUP1 00003487: MLOAD 00003488: PUSH3 0x461bcd 0000348c: PUSH1 0xe5 0000348e: SHL 0000348f: DUP2 00003490: MSTORE 00003491: PUSH1 0x20 00003493: PUSH1 0x04 00003495: DUP3 00003496: ADD 00003497: DUP2 00003498: SWAP1 00003499: MSTORE 0000349a: PUSH1 0x24 0000349c: DUP3 0000349d: ADD 0000349e: MSTORE 0000349f: PUSH32 0x5661756c7420756e64657277617465722c2063616e2774206578657263697365 000034c0: PUSH1 0x44 000034c2: DUP3 000034c3: ADD 000034c4: MSTORE 000034c5: SWAP1 000034c6: MLOAD 000034c7: SWAP1 000034c8: DUP2 000034c9: SWAP1 000034ca: SUB 000034cb: PUSH1 0x64 000034cd: ADD 000034ce: SWAP1 000034cf: REVERT 000034d0: JUMPDEST 000034d1: DUP5 000034d2: SLOAD 000034d3: PUSH2 0x34e2 000034d6: SWAP1 000034d7: DUP3 000034d8: PUSH4 0xffffffff 000034dd: PUSH2 0x2cb8 000034e0: AND 000034e1: JUMP 000034e2: JUMPDEST 000034e3: DUP6 000034e4: SSTORE 000034e5: PUSH1 0x01 000034e7: DUP6 000034e8: ADD 000034e9: SLOAD 000034ea: PUSH2 0x34f9 000034ed: SWAP1 000034ee: DUP9 000034ef: PUSH4 0xffffffff 000034f4: PUSH2 0x2cb8 000034f7: AND 000034f8: JUMP 000034f9: JUMPDEST 000034fa: PUSH1 0x01 000034fc: DUP7 000034fd: ADD 000034fe: SSTORE 000034ff: PUSH1 0x17 00003501: SLOAD 00003502: PUSH2 0x3513 00003505: SWAP1 00003506: PUSH1 0x01 00003508: PUSH1 0x01 0000350a: PUSH1 0xa0 0000350c: SHL 0000350d: SUB 0000350e: AND 0000350f: PUSH2 0x2a44 00003512: JUMP 00003513: JUMPDEST 00003514: ISZERO 00003515: PUSH2 0x3567 00003518: JUMPI 00003519: DUP4 0000351a: CALLVALUE 0000351b: EQ 0000351c: PUSH2 0x3562 0000351f: JUMPI 00003520: PUSH1 0x40 00003522: DUP1 00003523: MLOAD 00003524: PUSH3 0x461bcd 00003528: PUSH1 0xe5 0000352a: SHL 0000352b: DUP2 0000352c: MSTORE 0000352d: PUSH1 0x20 0000352f: PUSH1 0x04 00003531: DUP3 00003532: ADD 00003533: MSTORE 00003534: PUSH1 0x13 00003536: PUSH1 0x24 00003538: DUP3 00003539: ADD 0000353a: MSTORE 0000353b: PUSH19 0x496e636f7272656374206d73672e76616c7565 0000354f: PUSH1 0x68 00003551: SHL 00003552: PUSH1 0x44 00003554: DUP3 00003555: ADD 00003556: MSTORE 00003557: SWAP1 00003558: MLOAD 00003559: SWAP1 0000355a: DUP2 0000355b: SWAP1 0000355c: SUB 0000355d: PUSH1 0x64 0000355f: ADD 00003560: SWAP1 00003561: REVERT 00003562: JUMPDEST 00003563: PUSH2 0x363e 00003566: JUMP 00003567: JUMPDEST 00003568: PUSH1 0x17 0000356a: SLOAD 0000356b: PUSH1 0x40 0000356d: DUP1 0000356e: MLOAD 0000356f: PUSH4 0x23b872dd 00003574: PUSH1 0xe0 00003576: SHL 00003577: DUP2 00003578: MSTORE 00003579: CALLER 0000357a: PUSH1 0x04 0000357c: DUP3 0000357d: ADD 0000357e: MSTORE 0000357f: ADDRESS 00003580: PUSH1 0x24 00003582: DUP3 00003583: ADD 00003584: MSTORE 00003585: PUSH1 0x44 00003587: DUP2 00003588: ADD 00003589: DUP8 0000358a: SWAP1 0000358b: MSTORE 0000358c: SWAP1 0000358d: MLOAD 0000358e: PUSH1 0x01 00003590: PUSH1 0x01 00003592: PUSH1 0xa0 00003594: SHL 00003595: SUB 00003596: SWAP1 00003597: SWAP3 00003598: AND 00003599: SWAP2 0000359a: PUSH4 0x23b872dd 0000359f: SWAP2 000035a0: PUSH1 0x64 000035a2: DUP1 000035a3: DUP3 000035a4: ADD 000035a5: SWAP3 000035a6: PUSH1 0x20 000035a8: SWAP3 000035a9: SWAP1 000035aa: SWAP2 000035ab: SWAP1 000035ac: DUP3 000035ad: SWAP1 000035ae: SUB 000035af: ADD 000035b0: DUP2 000035b1: PUSH1 0x00 000035b3: DUP8 000035b4: DUP1 000035b5: EXTCODESIZE 000035b6: ISZERO 000035b7: DUP1 000035b8: ISZERO 000035b9: PUSH2 0x35c1 000035bc: JUMPI 000035bd: PUSH1 0x00 000035bf: DUP1 000035c0: REVERT 000035c1: JUMPDEST 000035c2: POP 000035c3: GAS 000035c4: CALL 000035c5: ISZERO 000035c6: DUP1 000035c7: ISZERO 000035c8: PUSH2 0x35d5 000035cb: JUMPI 000035cc: RETURNDATASIZE 000035cd: PUSH1 0x00 000035cf: DUP1 000035d0: RETURNDATACOPY 000035d1: RETURNDATASIZE 000035d2: PUSH1 0x00 000035d4: REVERT 000035d5: JUMPDEST 000035d6: POP 000035d7: POP 000035d8: POP 000035d9: POP 000035da: PUSH1 0x40 000035dc: MLOAD 000035dd: RETURNDATASIZE 000035de: PUSH1 0x20 000035e0: DUP2 000035e1: LT 000035e2: ISZERO 000035e3: PUSH2 0x35eb 000035e6: JUMPI 000035e7: PUSH1 0x00 000035e9: DUP1 000035ea: REVERT 000035eb: JUMPDEST 000035ec: POP 000035ed: MLOAD 000035ee: PUSH2 0x363e 000035f1: JUMPI 000035f2: PUSH1 0x40 000035f4: DUP1 000035f5: MLOAD 000035f6: PUSH3 0x461bcd 000035fa: PUSH1 0xe5 000035fc: SHL 000035fd: DUP2 000035fe: MSTORE 000035ff: PUSH1 0x20 00003601: PUSH1 0x04 00003603: DUP3 00003604: ADD 00003605: MSTORE 00003606: PUSH1 0x1c 00003608: PUSH1 0x24 0000360a: DUP3 0000360b: ADD 0000360c: MSTORE 0000360d: PUSH32 0x436f756c64206e6f74207472616e7366657220696e20746f6b656e7300000000 0000362e: PUSH1 0x44 00003630: DUP3 00003631: ADD 00003632: MSTORE 00003633: SWAP1 00003634: MLOAD 00003635: SWAP1 00003636: DUP2 00003637: SWAP1 00003638: SUB 00003639: PUSH1 0x64 0000363b: ADD 0000363c: SWAP1 0000363d: REVERT 0000363e: JUMPDEST 0000363f: PUSH2 0x3648 00003642: CALLER 00003643: DUP9 00003644: PUSH2 0x39c7 00003647: JUMP 00003648: JUMPDEST 00003649: PUSH2 0x3652 0000364c: CALLER 0000364d: DUP5 0000364e: PUSH2 0x315b 00003651: JUMP 00003652: JUMPDEST 00003653: PUSH1 0x40 00003655: DUP1 00003656: MLOAD 00003657: DUP6 00003658: DUP2 00003659: MSTORE 0000365a: PUSH1 0x20 0000365c: DUP2 0000365d: ADD 0000365e: DUP6 0000365f: SWAP1 00003660: MSTORE 00003661: CALLER 00003662: DUP2 00003663: DUP4 00003664: ADD 00003665: MSTORE 00003666: PUSH1 0x01 00003668: PUSH1 0x01 0000366a: PUSH1 0xa0 0000366c: SHL 0000366d: SUB 0000366e: DUP9 0000366f: AND 00003670: PUSH1 0x60 00003672: DUP3 00003673: ADD 00003674: MSTORE 00003675: SWAP1 00003676: MLOAD 00003677: PUSH32 0xfa7bab37479e50a9b24a9412b879d400de9bcaa1e3a2b343e90bb370d85bbaa7 00003698: SWAP2 00003699: DUP2 0000369a: SWAP1 0000369b: SUB 0000369c: PUSH1 0x80 0000369e: ADD 0000369f: SWAP1 000036a0: LOG1 000036a1: POP 000036a2: POP 000036a3: POP 000036a4: POP 000036a5: POP 000036a6: POP 000036a7: POP 000036a8: JUMP 000036a9: JUMPDEST 000036aa: PUSH1 0x00 000036ac: DUP1 000036ad: PUSH2 0x36ca 000036b0: PUSH1 0x16 000036b2: PUSH1 0x08 000036b4: SWAP1 000036b5: SLOAD 000036b6: SWAP1 000036b7: PUSH2 0x0100 000036ba: EXP 000036bb: SWAP1 000036bc: DIV 000036bd: PUSH1 0x01 000036bf: PUSH1 0x01 000036c1: PUSH1 0xa0 000036c3: SHL 000036c4: SUB 000036c5: AND 000036c6: PUSH2 0x3b81 000036c9: JUMP 000036ca: JUMPDEST 000036cb: PUSH1 0x18 000036cd: SLOAD 000036ce: SWAP1 000036cf: SWAP2 000036d0: POP 000036d1: PUSH1 0x00 000036d3: SWAP1 000036d4: PUSH2 0x36e5 000036d7: SWAP1 000036d8: PUSH1 0x01 000036da: PUSH1 0x01 000036dc: PUSH1 0xa0 000036de: SHL 000036df: SUB 000036e0: AND 000036e1: PUSH2 0x3b81 000036e4: JUMP 000036e5: JUMPDEST 000036e6: PUSH1 0x0f 000036e8: SLOAD 000036e9: DUP6 000036ea: MLOAD 000036eb: SWAP2 000036ec: SWAP3 000036ed: POP 000036ee: PUSH1 0x00 000036f0: SWAP2 000036f1: PUSH2 0x36ff 000036f4: SWAP2 000036f5: PUSH4 0xffffffff 000036fa: PUSH2 0x37a4 000036fd: AND 000036fe: JUMP 000036ff: JUMPDEST 00003700: PUSH1 0x10 00003702: SLOAD 00003703: PUSH1 0x20 00003705: DUP8 00003706: ADD 00003707: MLOAD 00003708: SWAP2 00003709: SWAP3 0000370a: POP 0000370b: PUSH1 0x03 0000370d: SIGNEXTEND 0000370e: ADD 0000370f: PUSH1 0x00 00003711: PUSH2 0x3724 00003714: DUP5 00003715: PUSH2 0x25e5 00003718: DUP11 00003719: DUP9 0000371a: PUSH4 0xffffffff 0000371f: PUSH2 0x37a4 00003722: AND 00003723: JUMP 00003724: JUMPDEST 00003725: PUSH1 0x16 00003727: SLOAD 00003728: SWAP1 00003729: SWAP2 0000372a: POP 0000372b: PUSH1 0x03 0000372d: SWAP1 0000372e: DUP2 0000372f: SIGNEXTEND 00003730: SWAP1 00003731: PUSH1 0x00 00003733: SWAP1 00003734: DUP2 00003735: SWAP1 00003736: DUP6 00003737: DUP2 00003738: SIGNEXTEND 00003739: SWAP1 0000373a: DUP5 0000373b: SWAP1 0000373c: SIGNEXTEND 0000373d: SLT 0000373e: ISZERO 0000373f: PUSH2 0x3775 00003742: JUMPI 00003743: DUP3 00003744: DUP6 00003745: SUB 00003746: PUSH1 0x03 00003748: SIGNEXTEND 00003749: SWAP2 0000374a: POP 0000374b: PUSH2 0x376e 0000374e: PUSH2 0x3761 00003751: DUP8 00003752: PUSH1 0x0a 00003754: DUP6 00003755: SWAP1 00003756: EXP 00003757: PUSH4 0xffffffff 0000375c: PUSH2 0x37a4 0000375f: AND 00003760: JUMP 00003761: JUMPDEST 00003762: DUP6 00003763: SWAP1 00003764: PUSH4 0xffffffff 00003769: PUSH2 0x3985 0000376c: AND 0000376d: JUMP 0000376e: JUMPDEST 0000376f: SWAP1 00003770: POP 00003771: PUSH2 0x2e4b 00003774: JUMP 00003775: JUMPDEST 00003776: DUP5 00003777: DUP4 00003778: SUB 00003779: PUSH1 0x03 0000377b: SIGNEXTEND 0000377c: SWAP2 0000377d: POP 0000377e: PUSH2 0x3795 00003781: DUP7 00003782: PUSH2 0x25e5 00003785: DUP7 00003786: PUSH1 0x0a 00003788: DUP7 00003789: SWAP1 0000378a: EXP 0000378b: PUSH4 0xffffffff 00003790: PUSH2 0x37a4 00003793: AND 00003794: JUMP 00003795: JUMPDEST 00003796: SWAP12 00003797: SWAP11 00003798: POP 00003799: POP 0000379a: POP 0000379b: POP 0000379c: POP 0000379d: POP 0000379e: POP 0000379f: POP 000037a0: POP 000037a1: POP 000037a2: POP 000037a3: JUMP 000037a4: JUMPDEST 000037a5: PUSH1 0x00 000037a7: DUP3 000037a8: PUSH2 0x37b3 000037ab: JUMPI 000037ac: POP 000037ad: PUSH1 0x00 000037af: PUSH2 0x1138 000037b2: JUMP 000037b3: JUMPDEST 000037b4: DUP3 000037b5: DUP3 000037b6: MUL 000037b7: DUP3 000037b8: DUP5 000037b9: DUP3 000037ba: DUP2 000037bb: PUSH2 0x37c0 000037be: JUMPI 000037bf: INVALID 000037c0: JUMPDEST 000037c1: DIV 000037c2: EQ 000037c3: PUSH2 0x1135 000037c6: JUMPI 000037c7: PUSH1 0x40 000037c9: MLOAD 000037ca: PUSH3 0x461bcd 000037ce: PUSH1 0xe5 000037d0: SHL 000037d1: DUP2 000037d2: MSTORE 000037d3: PUSH1 0x04 000037d5: ADD 000037d6: DUP1 000037d7: DUP1 000037d8: PUSH1 0x20 000037da: ADD 000037db: DUP3 000037dc: DUP2 000037dd: SUB 000037de: DUP3 000037df: MSTORE 000037e0: PUSH1 0x21 000037e2: DUP2 000037e3: MSTORE 000037e4: PUSH1 0x20 000037e6: ADD 000037e7: DUP1 000037e8: PUSH2 0x3f58 000037eb: PUSH1 0x21 000037ed: SWAP2 000037ee: CODECOPY 000037ef: PUSH1 0x40 000037f1: ADD 000037f2: SWAP2 000037f3: POP 000037f4: POP 000037f5: PUSH1 0x40 000037f7: MLOAD 000037f8: DUP1 000037f9: SWAP2 000037fa: SUB 000037fb: SWAP1 000037fc: REVERT 000037fd: JUMPDEST 000037fe: PUSH1 0x17 00003800: SLOAD 00003801: PUSH2 0x3812 00003804: SWAP1 00003805: PUSH1 0x01 00003807: PUSH1 0x01 00003809: PUSH1 0xa0 0000380b: SHL 0000380c: SUB 0000380d: AND 0000380e: PUSH2 0x2a44 00003811: JUMP 00003812: JUMPDEST 00003813: ISZERO 00003814: PUSH2 0x384d 00003817: JUMPI 00003818: PUSH1 0x40 0000381a: MLOAD 0000381b: PUSH1 0x01 0000381d: PUSH1 0x01 0000381f: PUSH1 0xa0 00003821: SHL 00003822: SUB 00003823: DUP4 00003824: AND 00003825: SWAP1 00003826: DUP3 00003827: ISZERO 00003828: PUSH2 0x08fc 0000382b: MUL 0000382c: SWAP1 0000382d: DUP4 0000382e: SWAP1 0000382f: PUSH1 0x00 00003831: DUP2 00003832: DUP2 00003833: DUP2 00003834: DUP6 00003835: DUP9 00003836: DUP9 00003837: CALL 00003838: SWAP4 00003839: POP 0000383a: POP 0000383b: POP 0000383c: POP 0000383d: ISZERO 0000383e: DUP1 0000383f: ISZERO 00003840: PUSH2 0x31b2 00003843: JUMPI 00003844: RETURNDATASIZE 00003845: PUSH1 0x00 00003847: DUP1 00003848: RETURNDATACOPY 00003849: RETURNDATASIZE 0000384a: PUSH1 0x00 0000384c: REVERT 0000384d: JUMPDEST 0000384e: PUSH1 0x17 00003850: SLOAD 00003851: PUSH1 0x40 00003853: DUP1 00003854: MLOAD 00003855: PUSH4 0xa9059cbb 0000385a: PUSH1 0xe0 0000385c: SHL 0000385d: DUP2 0000385e: MSTORE 0000385f: PUSH1 0x01 00003861: PUSH1 0x01 00003863: PUSH1 0xa0 00003865: SHL 00003866: SUB 00003867: DUP6 00003868: DUP2 00003869: AND 0000386a: PUSH1 0x04 0000386c: DUP4 0000386d: ADD 0000386e: MSTORE 0000386f: PUSH1 0x24 00003871: DUP3 00003872: ADD 00003873: DUP6 00003874: SWAP1 00003875: MSTORE 00003876: SWAP2 00003877: MLOAD 00003878: SWAP2 00003879: SWAP1 0000387a: SWAP3 0000387b: AND 0000387c: SWAP2 0000387d: PUSH4 0xa9059cbb 00003882: SWAP2 00003883: PUSH1 0x44 00003885: DUP1 00003886: DUP4 00003887: ADD 00003888: SWAP3 00003889: PUSH1 0x20 0000388b: SWAP3 0000388c: SWAP2 0000388d: SWAP1 0000388e: DUP3 0000388f: SWAP1 00003890: SUB 00003891: ADD 00003892: DUP2 00003893: PUSH1 0x00 00003895: DUP8 00003896: DUP1 00003897: EXTCODESIZE 00003898: ISZERO 00003899: DUP1 0000389a: ISZERO 0000389b: PUSH2 0x3216 0000389e: JUMPI 0000389f: PUSH1 0x00 000038a1: DUP1 000038a2: REVERT 000038a3: JUMPDEST 000038a4: PUSH1 0x00 000038a6: DUP1 000038a7: PUSH2 0x38c4 000038aa: PUSH1 0x16 000038ac: PUSH1 0x08 000038ae: SWAP1 000038af: SLOAD 000038b0: SWAP1 000038b1: PUSH2 0x0100 000038b4: EXP 000038b5: SWAP1 000038b6: DIV 000038b7: PUSH1 0x01 000038b9: PUSH1 0x01 000038bb: PUSH1 0xa0 000038bd: SHL 000038be: SUB 000038bf: AND 000038c0: PUSH2 0x3b81 000038c3: JUMP 000038c4: JUMPDEST 000038c5: PUSH1 0x18 000038c7: SLOAD 000038c8: SWAP1 000038c9: SWAP2 000038ca: POP 000038cb: PUSH1 0x00 000038cd: SWAP1 000038ce: PUSH2 0x38df 000038d1: SWAP1 000038d2: PUSH1 0x01 000038d4: PUSH1 0x01 000038d6: PUSH1 0xa0 000038d8: SHL 000038d9: SUB 000038da: AND 000038db: PUSH2 0x3b81 000038de: JUMP 000038df: JUMPDEST 000038e0: SWAP1 000038e1: POP 000038e2: PUSH1 0x00 000038e4: PUSH2 0x3907 000038e7: DUP3 000038e8: PUSH2 0x2db2 000038eb: DUP8 000038ec: PUSH1 0x00 000038ee: ADD 000038ef: MLOAD 000038f0: PUSH2 0x2db2 000038f3: PUSH1 0x0f 000038f5: PUSH1 0x00 000038f7: ADD 000038f8: SLOAD 000038f9: DUP12 000038fa: PUSH2 0x37a4 000038fd: SWAP1 000038fe: SWAP2 000038ff: SWAP1 00003900: PUSH4 0xffffffff 00003905: AND 00003906: JUMP 00003907: JUMPDEST 00003908: PUSH1 0x16 0000390a: SLOAD 0000390b: PUSH1 0x20 0000390d: DUP8 0000390e: ADD 0000390f: MLOAD 00003910: PUSH1 0x10 00003912: SLOAD 00003913: SWAP3 00003914: SWAP4 00003915: POP 00003916: PUSH1 0x03 00003918: SWAP2 00003919: DUP3 0000391a: SIGNEXTEND 0000391b: SWAP3 0000391c: DUP3 0000391d: SIGNEXTEND 0000391e: ADD 0000391f: SWAP2 00003920: SWAP1 00003921: SWAP2 00003922: SUB 00003923: SWAP1 00003924: PUSH1 0x00 00003926: SWAP1 00003927: DUP3 00003928: SWAP1 00003929: SIGNEXTEND 0000392a: DUP2 0000392b: SLT 0000392c: ISZERO 0000392d: PUSH2 0x3955 00003930: JUMPI 00003931: DUP2 00003932: PUSH2 0x394d 00003935: DUP7 00003936: PUSH2 0x25e5 00003939: DUP7 0000393a: PUSH4 0xffffffff 0000393f: DUP1 00003940: DUP7 00003941: AND 00003942: PUSH1 0x0a 00003944: EXP 00003945: DUP2 00003946: AND 00003947: SWAP1 00003948: PUSH2 0x37a4 0000394b: AND 0000394c: JUMP 0000394d: JUMPDEST 0000394e: SWAP2 0000394f: POP 00003950: POP 00003951: PUSH2 0x397a 00003954: JUMP 00003955: JUMPDEST 00003956: PUSH1 0x00 00003958: DUP3 00003959: SWAP1 0000395a: SUB 0000395b: PUSH2 0x3976 0000395e: DUP7 0000395f: PUSH2 0x25e5 00003962: DUP7 00003963: PUSH4 0xffffffff 00003968: DUP1 00003969: DUP7 0000396a: AND 0000396b: PUSH1 0x0a 0000396d: EXP 0000396e: DUP2 0000396f: AND 00003970: SWAP1 00003971: PUSH2 0x3985 00003974: AND 00003975: JUMP 00003976: JUMPDEST 00003977: SWAP2 00003978: POP 00003979: POP 0000397a: JUMPDEST 0000397b: SWAP8 0000397c: SWAP7 0000397d: POP 0000397e: POP 0000397f: POP 00003980: POP 00003981: POP 00003982: POP 00003983: POP 00003984: JUMP 00003985: JUMPDEST 00003986: PUSH1 0x00 00003988: PUSH2 0x1135 0000398b: DUP4 0000398c: DUP4 0000398d: PUSH1 0x40 0000398f: MLOAD 00003990: DUP1 00003991: PUSH1 0x40 00003993: ADD 00003994: PUSH1 0x40 00003996: MSTORE 00003997: DUP1 00003998: PUSH1 0x1a 0000399a: DUP2 0000399b: MSTORE 0000399c: PUSH1 0x20 0000399e: ADD 0000399f: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000 000039c0: DUP2 000039c1: MSTORE 000039c2: POP 000039c3: PUSH2 0x3c20 000039c6: JUMP 000039c7: JUMPDEST 000039c8: PUSH1 0x01 000039ca: PUSH1 0x01 000039cc: PUSH1 0xa0 000039ce: SHL 000039cf: SUB 000039d0: DUP3 000039d1: AND 000039d2: PUSH2 0x3a0c 000039d5: JUMPI 000039d6: PUSH1 0x40 000039d8: MLOAD 000039d9: PUSH3 0x461bcd 000039dd: PUSH1 0xe5 000039df: SHL 000039e0: DUP2 000039e1: MSTORE 000039e2: PUSH1 0x04 000039e4: ADD 000039e5: DUP1 000039e6: DUP1 000039e7: PUSH1 0x20 000039e9: ADD 000039ea: DUP3 000039eb: DUP2 000039ec: SUB 000039ed: DUP3 000039ee: MSTORE 000039ef: PUSH1 0x21 000039f1: DUP2 000039f2: MSTORE 000039f3: PUSH1 0x20 000039f5: ADD 000039f6: DUP1 000039f7: PUSH2 0x4015 000039fa: PUSH1 0x21 000039fc: SWAP2 000039fd: CODECOPY 000039fe: PUSH1 0x40 00003a00: ADD 00003a01: SWAP2 00003a02: POP 00003a03: POP 00003a04: PUSH1 0x40 00003a06: MLOAD 00003a07: DUP1 00003a08: SWAP2 00003a09: SUB 00003a0a: SWAP1 00003a0b: REVERT 00003a0c: JUMPDEST 00003a0d: PUSH2 0x3a4f 00003a10: DUP2 00003a11: PUSH1 0x40 00003a13: MLOAD 00003a14: DUP1 00003a15: PUSH1 0x60 00003a17: ADD 00003a18: PUSH1 0x40 00003a1a: MSTORE 00003a1b: DUP1 00003a1c: PUSH1 0x22 00003a1e: DUP2 00003a1f: MSTORE 00003a20: PUSH1 0x20 00003a22: ADD 00003a23: PUSH2 0x3dab 00003a26: PUSH1 0x22 00003a28: SWAP2 00003a29: CODECOPY 00003a2a: PUSH1 0x01 00003a2c: PUSH1 0x01 00003a2e: PUSH1 0xa0 00003a30: SHL 00003a31: SUB 00003a32: DUP6 00003a33: AND 00003a34: PUSH1 0x00 00003a36: SWAP1 00003a37: DUP2 00003a38: MSTORE 00003a39: PUSH1 0x01 00003a3b: PUSH1 0x20 00003a3d: MSTORE 00003a3e: PUSH1 0x40 00003a40: SWAP1 00003a41: KECCAK256 00003a42: SLOAD 00003a43: SWAP2 00003a44: SWAP1 00003a45: PUSH4 0xffffffff 00003a4a: PUSH2 0x30a9 00003a4d: AND 00003a4e: JUMP 00003a4f: JUMPDEST 00003a50: PUSH1 0x01 00003a52: PUSH1 0x01 00003a54: PUSH1 0xa0 00003a56: SHL 00003a57: SUB 00003a58: DUP4 00003a59: AND 00003a5a: PUSH1 0x00 00003a5c: SWAP1 00003a5d: DUP2 00003a5e: MSTORE 00003a5f: PUSH1 0x01 00003a61: PUSH1 0x20 00003a63: MSTORE 00003a64: PUSH1 0x40 00003a66: SWAP1 00003a67: KECCAK256 00003a68: SSTORE 00003a69: PUSH1 0x03 00003a6b: SLOAD 00003a6c: PUSH2 0x3a7b 00003a6f: SWAP1 00003a70: DUP3 00003a71: PUSH4 0xffffffff 00003a76: PUSH2 0x2cb8 00003a79: AND 00003a7a: JUMP 00003a7b: JUMPDEST 00003a7c: PUSH1 0x03 00003a7e: SSTORE 00003a7f: PUSH1 0x40 00003a81: DUP1 00003a82: MLOAD 00003a83: DUP3 00003a84: DUP2 00003a85: MSTORE 00003a86: SWAP1 00003a87: MLOAD 00003a88: PUSH1 0x00 00003a8a: SWAP2 00003a8b: PUSH1 0x01 00003a8d: PUSH1 0x01 00003a8f: PUSH1 0xa0 00003a91: SHL 00003a92: SUB 00003a93: DUP6 00003a94: AND 00003a95: SWAP2 00003a96: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00003ab7: SWAP2 00003ab8: DUP2 00003ab9: SWAP1 00003aba: SUB 00003abb: PUSH1 0x20 00003abd: ADD 00003abe: SWAP1 00003abf: LOG3 00003ac0: POP 00003ac1: POP 00003ac2: JUMP 00003ac3: JUMPDEST 00003ac4: PUSH1 0x01 00003ac6: PUSH1 0x01 00003ac8: PUSH1 0xa0 00003aca: SHL 00003acb: SUB 00003acc: AND 00003acd: PUSH1 0x00 00003acf: SWAP1 00003ad0: DUP2 00003ad1: MSTORE 00003ad2: PUSH1 0x05 00003ad4: PUSH1 0x20 00003ad6: MSTORE 00003ad7: PUSH1 0x40 00003ad9: SWAP1 00003ada: KECCAK256 00003adb: PUSH1 0x01 00003add: ADD 00003ade: SLOAD 00003adf: SWAP1 00003ae0: JUMP 00003ae1: JUMPDEST 00003ae2: PUSH1 0x01 00003ae4: PUSH1 0x01 00003ae6: PUSH1 0xa0 00003ae8: SHL 00003ae9: SUB 00003aea: DUP2 00003aeb: AND 00003aec: PUSH2 0x3b26 00003aef: JUMPI 00003af0: PUSH1 0x40 00003af2: MLOAD 00003af3: PUSH3 0x461bcd 00003af7: PUSH1 0xe5 00003af9: SHL 00003afa: DUP2 00003afb: MSTORE 00003afc: PUSH1 0x04 00003afe: ADD 00003aff: DUP1 00003b00: DUP1 00003b01: PUSH1 0x20 00003b03: ADD 00003b04: DUP3 00003b05: DUP2 00003b06: SUB 00003b07: DUP3 00003b08: MSTORE 00003b09: PUSH1 0x26 00003b0b: DUP2 00003b0c: MSTORE 00003b0d: PUSH1 0x20 00003b0f: ADD 00003b10: DUP1 00003b11: PUSH2 0x3df5 00003b14: PUSH1 0x26 00003b16: SWAP2 00003b17: CODECOPY 00003b18: PUSH1 0x40 00003b1a: ADD 00003b1b: SWAP2 00003b1c: POP 00003b1d: POP 00003b1e: PUSH1 0x40 00003b20: MLOAD 00003b21: DUP1 00003b22: SWAP2 00003b23: SUB 00003b24: SWAP1 00003b25: REVERT 00003b26: JUMPDEST 00003b27: PUSH1 0x00 00003b29: DUP1 00003b2a: SLOAD 00003b2b: PUSH1 0x40 00003b2d: MLOAD 00003b2e: PUSH1 0x01 00003b30: PUSH1 0x01 00003b32: PUSH1 0xa0 00003b34: SHL 00003b35: SUB 00003b36: DUP1 00003b37: DUP6 00003b38: AND 00003b39: SWAP4 00003b3a: SWAP3 00003b3b: AND 00003b3c: SWAP2 00003b3d: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00003b5e: SWAP2 00003b5f: LOG3 00003b60: PUSH1 0x00 00003b62: DUP1 00003b63: SLOAD 00003b64: PUSH1 0x01 00003b66: PUSH1 0x01 00003b68: PUSH1 0xa0 00003b6a: SHL 00003b6b: SUB 00003b6c: NOT 00003b6d: AND 00003b6e: PUSH1 0x01 00003b70: PUSH1 0x01 00003b72: PUSH1 0xa0 00003b74: SHL 00003b75: SUB 00003b76: SWAP3 00003b77: SWAP1 00003b78: SWAP3 00003b79: AND 00003b7a: SWAP2 00003b7b: SWAP1 00003b7c: SWAP2 00003b7d: OR 00003b7e: SWAP1 00003b7f: SSTORE 00003b80: JUMP 00003b81: JUMPDEST 00003b82: PUSH1 0x00 00003b84: PUSH1 0x01 00003b86: PUSH1 0x01 00003b88: PUSH1 0xa0 00003b8a: SHL 00003b8b: SUB 00003b8c: DUP3 00003b8d: AND 00003b8e: PUSH2 0x3ba0 00003b91: JUMPI 00003b92: POP 00003b93: PUSH8 0x0de0b6b3a7640000 00003b9c: PUSH2 0x12b0 00003b9f: JUMP 00003ba0: JUMPDEST 00003ba1: PUSH1 0x19 00003ba3: SLOAD 00003ba4: PUSH1 0x40 00003ba6: DUP1 00003ba7: MLOAD 00003ba8: PUSH4 0x41976e09 00003bad: PUSH1 0xe0 00003baf: SHL 00003bb0: DUP2 00003bb1: MSTORE 00003bb2: PUSH1 0x01 00003bb4: PUSH1 0x01 00003bb6: PUSH1 0xa0 00003bb8: SHL 00003bb9: SUB 00003bba: DUP6 00003bbb: DUP2 00003bbc: AND 00003bbd: PUSH1 0x04 00003bbf: DUP4 00003bc0: ADD 00003bc1: MSTORE 00003bc2: SWAP2 00003bc3: MLOAD 00003bc4: SWAP2 00003bc5: SWAP1 00003bc6: SWAP3 00003bc7: AND 00003bc8: SWAP2 00003bc9: PUSH4 0x41976e09 00003bce: SWAP2 00003bcf: PUSH1 0x24 00003bd1: DUP1 00003bd2: DUP4 00003bd3: ADD 00003bd4: SWAP3 00003bd5: PUSH1 0x20 00003bd7: SWAP3 00003bd8: SWAP2 00003bd9: SWAP1 00003bda: DUP3 00003bdb: SWAP1 00003bdc: SUB 00003bdd: ADD 00003bde: DUP2 00003bdf: DUP7 00003be0: DUP1 00003be1: EXTCODESIZE 00003be2: ISZERO 00003be3: DUP1 00003be4: ISZERO 00003be5: PUSH2 0x3bed 00003be8: JUMPI 00003be9: PUSH1 0x00 00003beb: DUP1 00003bec: REVERT 00003bed: JUMPDEST 00003bee: POP 00003bef: GAS 00003bf0: STATICCALL 00003bf1: ISZERO 00003bf2: DUP1 00003bf3: ISZERO 00003bf4: PUSH2 0x3c01 00003bf7: JUMPI 00003bf8: RETURNDATASIZE 00003bf9: PUSH1 0x00 00003bfb: DUP1 00003bfc: RETURNDATACOPY 00003bfd: RETURNDATASIZE 00003bfe: PUSH1 0x00 00003c00: REVERT 00003c01: JUMPDEST 00003c02: POP 00003c03: POP 00003c04: POP 00003c05: POP 00003c06: PUSH1 0x40 00003c08: MLOAD 00003c09: RETURNDATASIZE 00003c0a: PUSH1 0x20 00003c0c: DUP2 00003c0d: LT 00003c0e: ISZERO 00003c0f: PUSH2 0x3c17 00003c12: JUMPI 00003c13: PUSH1 0x00 00003c15: DUP1 00003c16: REVERT 00003c17: JUMPDEST 00003c18: POP 00003c19: MLOAD 00003c1a: SWAP1 00003c1b: POP 00003c1c: PUSH2 0x12b0 00003c1f: JUMP 00003c20: JUMPDEST 00003c21: PUSH1 0x00 00003c23: DUP2 00003c24: DUP4 00003c25: PUSH2 0x3c6f 00003c28: JUMPI 00003c29: PUSH1 0x40 00003c2b: MLOAD 00003c2c: PUSH3 0x461bcd 00003c30: PUSH1 0xe5 00003c32: SHL 00003c33: DUP2 00003c34: MSTORE 00003c35: PUSH1 0x20 00003c37: PUSH1 0x04 00003c39: DUP3 00003c3a: ADD 00003c3b: DUP2 00003c3c: DUP2 00003c3d: MSTORE 00003c3e: DUP4 00003c3f: MLOAD 00003c40: PUSH1 0x24 00003c42: DUP5 00003c43: ADD 00003c44: MSTORE 00003c45: DUP4 00003c46: MLOAD 00003c47: SWAP1 00003c48: SWAP3 00003c49: DUP4 00003c4a: SWAP3 00003c4b: PUSH1 0x44 00003c4d: SWAP1 00003c4e: SWAP2 00003c4f: ADD 00003c50: SWAP2 00003c51: SWAP1 00003c52: DUP6 00003c53: ADD 00003c54: SWAP1 00003c55: DUP1 00003c56: DUP4 00003c57: DUP4 00003c58: PUSH1 0x00 00003c5a: DUP4 00003c5b: ISZERO 00003c5c: PUSH2 0x30fd 00003c5f: JUMPI 00003c60: DUP2 00003c61: DUP2 00003c62: ADD 00003c63: MLOAD 00003c64: DUP4 00003c65: DUP3 00003c66: ADD 00003c67: MSTORE 00003c68: PUSH1 0x20 00003c6a: ADD 00003c6b: PUSH2 0x30e5 00003c6e: JUMP 00003c6f: JUMPDEST 00003c70: POP 00003c71: PUSH1 0x00 00003c73: DUP4 00003c74: DUP6 00003c75: DUP2 00003c76: PUSH2 0x3c7b 00003c79: JUMPI 00003c7a: INVALID 00003c7b: JUMPDEST 00003c7c: DIV 00003c7d: SWAP6 00003c7e: SWAP5 00003c7f: POP 00003c80: POP 00003c81: POP 00003c82: POP 00003c83: POP 00003c84: JUMP 00003c85: JUMPDEST 00003c86: DUP3 00003c87: DUP1 00003c88: SLOAD 00003c89: PUSH1 0x01 00003c8b: DUP2 00003c8c: PUSH1 0x01 00003c8e: AND 00003c8f: ISZERO 00003c90: PUSH2 0x0100 00003c93: MUL 00003c94: SUB 00003c95: AND 00003c96: PUSH1 0x02 00003c98: SWAP1 00003c99: DIV 00003c9a: SWAP1 00003c9b: PUSH1 0x00 00003c9d: MSTORE 00003c9e: PUSH1 0x20 00003ca0: PUSH1 0x00 00003ca2: KECCAK256 00003ca3: SWAP1 00003ca4: PUSH1 0x1f 00003ca6: ADD 00003ca7: PUSH1 0x20 00003ca9: SWAP1 00003caa: DIV 00003cab: DUP2 00003cac: ADD 00003cad: SWAP3 00003cae: DUP3 00003caf: PUSH1 0x1f 00003cb1: LT 00003cb2: PUSH2 0x3cc6 00003cb5: JUMPI 00003cb6: DUP1 00003cb7: MLOAD 00003cb8: PUSH1 0xff 00003cba: NOT 00003cbb: AND 00003cbc: DUP4 00003cbd: DUP1 00003cbe: ADD 00003cbf: OR 00003cc0: DUP6 00003cc1: SSTORE 00003cc2: PUSH2 0x3cf3 00003cc5: JUMP 00003cc6: JUMPDEST 00003cc7: DUP3 00003cc8: DUP1 00003cc9: ADD 00003cca: PUSH1 0x01 00003ccc: ADD 00003ccd: DUP6 00003cce: SSTORE 00003ccf: DUP3 00003cd0: ISZERO 00003cd1: PUSH2 0x3cf3 00003cd4: JUMPI 00003cd5: SWAP2 00003cd6: DUP3 00003cd7: ADD 00003cd8: JUMPDEST 00003cd9: DUP3 00003cda: DUP2 00003cdb: GT 00003cdc: ISZERO 00003cdd: PUSH2 0x3cf3 00003ce0: JUMPI 00003ce1: DUP3 00003ce2: MLOAD 00003ce3: DUP3 00003ce4: SSTORE 00003ce5: SWAP2 00003ce6: PUSH1 0x20 00003ce8: ADD 00003ce9: SWAP2 00003cea: SWAP1 00003ceb: PUSH1 0x01 00003ced: ADD 00003cee: SWAP1 00003cef: PUSH2 0x3cd8 00003cf2: JUMP 00003cf3: JUMPDEST 00003cf4: POP 00003cf5: PUSH2 0x3cff 00003cf8: SWAP3 00003cf9: SWAP2 00003cfa: POP 00003cfb: PUSH2 0x3d1a 00003cfe: JUMP 00003cff: JUMPDEST 00003d00: POP 00003d01: SWAP1 00003d02: JUMP 00003d03: JUMPDEST 00003d04: PUSH1 0x40 00003d06: DUP1 00003d07: MLOAD 00003d08: DUP1 00003d09: DUP3 00003d0a: ADD 00003d0b: SWAP1 00003d0c: SWAP2 00003d0d: MSTORE 00003d0e: PUSH1 0x00 00003d10: DUP1 00003d11: DUP3 00003d12: MSTORE 00003d13: PUSH1 0x20 00003d15: DUP3 00003d16: ADD 00003d17: MSTORE 00003d18: SWAP1 00003d19: JUMP 00003d1a: JUMPDEST 00003d1b: PUSH2 0x11e2 00003d1e: SWAP2 00003d1f: SWAP1 00003d20: JUMPDEST 00003d21: DUP1 00003d22: DUP3 00003d23: GT 00003d24: ISZERO 00003d25: PUSH2 0x3cff 00003d28: JUMPI 00003d29: PUSH1 0x00 00003d2b: DUP2 00003d2c: SSTORE 00003d2d: PUSH1 0x01 00003d2f: ADD 00003d30: PUSH2 0x3d20 00003d33: JUMP 00003d34: INVALID 00003d35: GASLIMIT 00003d36: MSTORE 00003d37: NUMBER 00003d38: ORIGIN 00003d39: ADDRESS 00003d3a: GASPRICE 00003d3b: KECCAK256 00003d3c: PUSH21 0x72616e7366657220746f20746865207a65726f2061 00003d52: PUSH5 0x6472657373 00003d58: NUMBER 00003d59: PUSH2 0x6e27 00003d5c: PUSH21 0x2068617665206d696e436f6c6c61746572616c697a 00003d72: PUSH2 0x7469 00003d75: PUSH16 0x6e526174696f203c203143616e277420 00003d86: PUSH13 0x6971756964617465206d6f7265 00003d94: KECCAK256 00003d95: PUSH21 0x68616e2031303025206f6620746865207661756c74 00003dab: GASLIMIT 00003dac: MSTORE 00003dad: NUMBER 00003dae: ORIGIN 00003daf: ADDRESS 00003db0: GASPRICE 00003db1: KECCAK256 00003db2: PUSH3 0x75726e 00003db6: KECCAK256 00003db7: PUSH2 0x6d6f 00003dba: PUSH22 0x6e7420657863656564732062616c616e636545544820 00003dd1: PUSH10 0x73206e6f742074686520 00003ddc: PUSH20 0x706563696669656420636f6c6c61746572616c20 00003df1: PUSH21 0x7970654f776e61626c653a206e6577206f776e6572 00003e07: KECCAK256 00003e08: PUSH10 0x7320746865207a65726f 00003e13: KECCAK256 00003e14: PUSH2 0x6464 00003e17: PUSH19 0x65737345524332303a20617070726f76652074 00003e2b: PUSH16 0x20746865207a65726f20616464726573 00003e3c: PUSH20 0x43616e277420636f6c6c65637420636f6c6c6174 00003e51: PUSH6 0x72616c20756e 00003e58: PUSH21 0x696c20657870697279436f756c64206e6f74207472 00003e6e: PUSH2 0x6e73 00003e71: PUSH7 0x657220696e2063 00003e79: PUSH16 0x6c6c61746572616c20746f6b656e7356 00003e8a: PUSH2 0x756c 00003e8d: PUSH21 0x20646f6573206e6f74206578697374000000000000 00003ea3: STOP 00003ea4: STOP 00003ea5: STOP 00003ea6: STOP 00003ea7: STOP 00003ea8: STOP 00003ea9: GASLIMIT 00003eaa: MSTORE 00003eab: NUMBER 00003eac: ORIGIN 00003ead: ADDRESS 00003eae: GASPRICE 00003eaf: KECCAK256 00003eb0: PUSH21 0x72616e7366657220616d6f756e7420657863656564 00003ec6: PUSH20 0x2062616c616e636543616e27742068617665203e 00003edb: ORIGIN 00003edc: ADDRESS 00003edd: UNKNOWN(0x25) 00003ede: KECCAK256 00003edf: PUSH13 0x69717569646174696f6e20696e 00003eed: PUSH4 0x656e7469 00003ef2: PUSH23 0x65537065636966696564207661756c7473206861766520 00003f0a: PUSH10 0x6e73756666696369656e 00003f15: PUSH21 0x20636f6c6c61746572616c43616e206f6e6c79206c 00003f2b: PUSH10 0x71756964617465206c69 00003f36: PUSH18 0x7569646174696f6e20666163746f72206174 00003f49: KECCAK256 00003f4a: PUSH2 0x6e79 00003f4d: KECCAK256 00003f4e: PUSH8 0x6976656e2074696d 00003f57: PUSH6 0x536166654d61 00003f5e: PUSH21 0x683a206d756c7469706c69636174696f6e206f7665 00003f74: PUSH19 0x666c6f7743616e27742072656d6f7665206d6f 00003f88: PUSH19 0x6520636f6c6c61746572616c207468616e206f 00003f9c: PUSH24 0x6e656443616e2774206578657263697365206f7574736964 00003fb5: PUSH6 0x206f66207468 00003fbc: PUSH6 0x206578657263 00003fc3: PUSH10 0x73652077696e646f7745 00003fce: MSTORE 00003fcf: NUMBER 00003fd0: ORIGIN 00003fd1: ADDRESS 00003fd2: GASPRICE 00003fd3: KECCAK256 00003fd4: PUSH21 0x72616e7366657220616d6f756e7420657863656564 00003fea: PUSH20 0x20616c6c6f77616e63654f776e61626c653a2063 00003fff: PUSH2 0x6c6c 00004002: PUSH6 0x72206973206e 00004009: PUSH16 0x7420746865206f776e65724552433230 0000401a: GASPRICE 0000401b: KECCAK256 0000401c: PUSH3 0x75726e 00004020: KECCAK256 00004021: PUSH7 0x726f6d20746865 00004029: KECCAK256 0000402a: PUSH27 0x65726f206164647265737343616e6e6f7420657865726369736520 00004046: PUSH7 0x726f6d20612076 0000404e: PUSH2 0x756c 00004051: PUSH21 0x207468617420646f65736e27742065786973744552 00004067: NUMBER 00004068: ORIGIN 00004069: ADDRESS 0000406a: GASPRICE 0000406b: KECCAK256 0000406c: PUSH21 0x72616e736665722066726f6d20746865207a65726f 00004082: KECCAK256 00004083: PUSH2 0x6464 00004086: PUSH19 0x65737345524332303a20617070726f76652066 0000409a: PUSH19 0x6f6d20746865207a65726f2061646472657373 000040ae: NUMBER 000040af: PUSH2 0x6e27 000040b2: PUSH21 0x206578657263697365206d6f7265206f546f6b656e 000040c8: PUSH20 0x207468616e20746865206f776e6572206861734f 000040dd: PUSH17 0x74696f6e7320636f6e7472616374206578 000040ef: PUSH17 0x6972656400000000000000004552433230 00004101: GASPRICE 00004102: KECCAK256 00004103: PUSH5 0x6563726561 00004109: PUSH20 0x656420616c6c6f77616e63652062656c6f77207a 0000411e: PUSH6 0x726fa265627a 00004125: PUSH27 0x7230582078d274c261df68e9d5018737bd71b890ed72cabfe0e584 00004141: UNKNOWN(0xEB) 00004142: SAR 00004143: KECCAK256 00004144: BYTE 00004145: UNKNOWN(0xD7) 00004146: MSTORE 00004147: PUSH7 0x6c9564736f6c63 0000414f: NUMBER 00004150: STOP 00004151: SDIV 00004152: EXP 00004153: STOP 00004154: ORIGIN
| 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": "0xee1eab4f",
"selector": "0xee1eab4f",
"calldata_variants": [
"0xee1eab4f",
"0xee1eab4f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf70a2508",
"selector": "0xf70a2508",
"calldata_variants": [
"0xf70a2508",
"0xf70a25080000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfaa2041f",
"selector": "0xfaa2041f",
"calldata_variants": [
"0xfaa2041f",
"0xfaa2041f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe184c9be",
"selector": "0xe184c9be",
"calldata_variants": [
"0xe184c9be",
"0xe184c9be0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xea8c4bcf",
"selector": "0xea8c4bcf",
"calldata_variants": [
"0xea8c4bcf",
"0xea8c4bcf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeaa376b5",
"selector": "0xeaa376b5",
"calldata_variants": [
"0xeaa376b5",
"0xeaa376b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xed1f41c3",
"selector": "0xed1f41c3",
"calldata_variants": [
"0xed1f41c3",
"0xed1f41c30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 15672,
"type": "tx_origin_used"
},
{
"pc": 15790,
"type": "tx_origin_used"
},
{
"pc": 16044,
"type": "tx_origin_used"
},
{
"pc": 16091,
"type": "tx_origin_used"
},
{
"pc": 16336,
"type": "tx_origin_used"
},
{
"pc": 16488,
"type": "tx_origin_used"
},
{
"pc": 16724,
"type": "tx_origin_used"
}
]
}
|
| medium | other | codex | ETH oToken purchases can spend the contract’s ETH balance without enforcing msg.value | 75 | no | — |
viewevidence_json{
"evidence": "buyOTokens forwards to uniswapBuyOToken without checking msg.value; in the ETH branch, ethToTokenTransferOutput is called with ethToTransfer from contract balance and no msg.value validation.",
"locations": [
"contracts/OptionsExchange.sol:731",
"contracts/OptionsExchange.sol:879"
],
"recommendation": "Require msg.value to be at least the computed ethToTransfer, use msg.value as the sole source of ETH for the swap, and refund any excess. Revert if msg.value is insufficient.",
"exploit_scenario": "If the OptionsExchange contract has any ETH balance (e.g., from prior overpayments or forced ETH transfers), an attacker can call buyOTokens with paymentTokenAddress = address(0) and msg.value = 0. The function uses the contract\u2019s balance to pay Uniswap, sending oTokens to the attacker and draining the contract\u2019s ETH."
}
|
| medium | other | codex | Unchecked ERC20 transfers in collateral/underlying payouts can break accounting and lock funds | 75 | no | — |
viewevidence_json{
"evidence": "transferCollateral and transferUnderlying call ERC20 transfer without checking return values; these are used after state updates in removeCollateral, redeemVaultBalance, and _exercise.",
"locations": [
"contracts/OptionsContract.sol:1631",
"contracts/OptionsContract.sol:1658",
"contracts/OptionsContract.sol:1887",
"contracts/OptionsContract.sol:2058",
"contracts/OptionsContract.sol:2071"
],
"recommendation": "Use SafeERC20 (or explicit return-value checks) for all ERC20 transfers/transferFrom, and for fee-on-transfer tokens, compute actual received amounts by balance diffs before updating vault accounting.",
"exploit_scenario": "If the collateral/underlying token is non-standard (returns false), fee-on-transfer, or otherwise misbehaves, the contract updates vault balances and then performs transfers without checking success or actual amounts received/sent. This can zero out user balances or under-collateralize the system while transfers silently fail or transfer less than expected."
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x991d166f1c2db6aa53e56f057b16da71ced1a59fb5dc4874cb68295c03bc6398
call_targets:
0x98cc3bd6af1880fcfda17ac477b2f612980e5e33
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x991d166f1c2db6aa53e56f057b16da71ced1a59fb5dc4874cb68295c03bc6398",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x98cc3bd6af1880fcfda17ac477b2f612980e5e33"
],
"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": "0xee1eab4f",
"selector": "0xee1eab4f",
"calldata_variants": [
"0xee1eab4f",
"0xee1eab4f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf70a2508",
"selector": "0xf70a2508",
"calldata_variants": [
"0xf70a2508",
"0xf70a25080000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfaa2041f",
"selector": "0xfaa2041f",
"calldata_variants": [
"0xfaa2041f",
"0xfaa2041f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe184c9be",
"selector": "0xe184c9be",
"calldata_variants": [
"0xe184c9be",
"0xe184c9be0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xea8c4bcf",
"selector": "0xea8c4bcf",
"calldata_variants": [
"0xea8c4bcf",
"0xea8c4bcf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeaa376b5",
"selector": "0xeaa376b5",
"calldata_variants": [
"0xeaa376b5",
"0xeaa376b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xed1f41c3",
"selector": "0xed1f41c3",
"calldata_variants": [
"0xed1f41c3",
"0xed1f41c30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4151,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5514,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5658,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 9,
"guards_detected": [
{
"pc": 15672,
"type": "tx_origin_used"
},
{
"pc": 15790,
"type": "tx_origin_used"
},
{
"pc": 16044,
"type": "tx_origin_used"
},
{
"pc": 16091,
"type": "tx_origin_used"
},
{
"pc": 16336,
"type": "tx_origin_used"
},
{
"pc": 16488,
"type": "tx_origin_used"
},
{
"pc": 16724,
"type": "tx_origin_used"
}
]
}
|
| medium | oracle | codex | Collateralization relies on a manipulable spot oracle without freshness or sanity checks | 75 | no | — |
viewevidence_json{
"evidence": "isSafe and pricing calculations directly consume COMPOUND_ORACLE.getPrice without any checks for staleness or manipulation resistance.",
"locations": [
"contracts/OptionsContract.sol:1927",
"contracts/OptionsContract.sol:2083"
],
"recommendation": "Use a robust oracle (e.g., Chainlink or TWAP), enforce price freshness, and add sanity bounds or circuit breakers to prevent minting/liquidation on anomalous prices.",
"exploit_scenario": "An attacker can manipulate the oracle price (e.g., if COMPOUND_ORACLE is Uniswap-based or otherwise influenceable) to inflate collateral value or deflate strike value, enabling under-collateralized minting or avoiding liquidation during a manipulated window."
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x991d166f1c2db6aa53e56f057b16da71ced1a59fb5dc4874cb68295c03bc6398
call_targets:
0x98cc3bd6af1880fcfda17ac477b2f612980e5e33
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x991d166f1c2db6aa53e56f057b16da71ced1a59fb5dc4874cb68295c03bc6398",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x98cc3bd6af1880fcfda17ac477b2f612980e5e33"
],
"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": "0xee1eab4f",
"selector": "0xee1eab4f",
"calldata_variants": [
"0xee1eab4f",
"0xee1eab4f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf70a2508",
"selector": "0xf70a2508",
"calldata_variants": [
"0xf70a2508",
"0xf70a25080000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfaa2041f",
"selector": "0xfaa2041f",
"calldata_variants": [
"0xfaa2041f",
"0xfaa2041f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe184c9be",
"selector": "0xe184c9be",
"calldata_variants": [
"0xe184c9be",
"0xe184c9be0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xea8c4bcf",
"selector": "0xea8c4bcf",
"calldata_variants": [
"0xea8c4bcf",
"0xea8c4bcf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeaa376b5",
"selector": "0xeaa376b5",
"calldata_variants": [
"0xeaa376b5",
"0xeaa376b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xed1f41c3",
"selector": "0xed1f41c3",
"calldata_variants": [
"0xed1f41c3",
"0xed1f41c30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4151,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5514,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5658,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 9,
"guards_detected": [
{
"pc": 15672,
"type": "tx_origin_used"
},
{
"pc": 15790,
"type": "tx_origin_used"
},
{
"pc": 16044,
"type": "tx_origin_used"
},
{
"pc": 16091,
"type": "tx_origin_used"
},
{
"pc": 16336,
"type": "tx_origin_used"
},
{
"pc": 16488,
"type": "tx_origin_used"
},
{
"pc": 16724,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 9
}
|
| 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": 9
}
|