09655295-9ca8-4866-aeae-e0cd31e478e3
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 |
|---|---|---|---|---|
| 30750 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 75496 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 75497 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 75498 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 75499 | capability.graph | complete | 1 / 3 | 1 week ago |
| 75500 | detector.run | complete | 1 / 3 | 1 week ago |
| 75501 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1070439] OpenAI Codex v0.77.0 (research preview)
[codex:1070439] --------
[codex:1070439] workdir: /tmp/codex-multi-9eqdn5xa
[codex:1070439] model: gpt-5.2-codex
[codex:1070439] provider: openai
[codex:1070439] approval: never
[codex:1070439] sandbox: read-only
[codex:1070439] reasoning effort: xhigh
[codex:1070439] reasoning summaries: auto
[codex:1070439] session id: 019b70d9-ad84-7910-b88c-8b43f0bd6a33
[codex:1070439] --------
[codex:1070439] user
[codex:1070439] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1070439] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1070439] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1070439]
[codex:1070439] Scope rules:
[codex:1070439] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1070439] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1070439]
[codex:1070439] Output MUST be valid JSON matching the provided schema.
[codex:1070439] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1070439] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1070439]
[codex:1070439] Output constraints (IMPORTANT):
[codex:1070439] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1070439] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1070439] mcp startup: no servers
[codex:1070439]
[codex:1070439] thinking
[codex:1070439] **Reading AUDIT_BUNDLE.txt**
[codex:1070439] exec
[codex:1070439] /bin/bash -lc ls in /tmp/codex-multi-9eqdn5xa succeeded in 5ms:
[codex:1070439] AUDIT_BUNDLE.txt
[codex:1070439] codex-output-schema.json
[codex:1070439] contracts
[codex:1070439] exec
[codex:1070439] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-9eqdn5xa succeeded in 5ms:
[codex:1070439] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1070439]
[codex:1070439] ================================================================================
[codex:1070439] FILE: contracts/@openzeppelin/contracts/access/IAccessControl.sol
[codex:1070439] ================================================================================
[codex:1070439] // SPDX-License-Identifier: MIT
[codex:1070439] // OpenZeppelin Contracts (last updated v5.0.0) (access/IAccessControl.sol)
[codex:1070439]
[codex:1070439] pragma solidity ^0.8.20;
[codex:1070439]
[codex:1070439] /**
[codex:1070439] * @dev External interface of AccessControl declared to support ERC165 detection.
[codex:1070439] */
[codex:1070439] interface IAccessControl {
[codex:1070439] /**
[codex:1070439] * @dev The `account` is missing a role.
[codex:1070439] */
[codex:1070439] error AccessControlUnauthorizedAccount(address account, bytes32 neededRole);
[codex:1070439]
[codex:1070439] /**
[codex:1070439]
[codex:1070439]
[codex:1070439]
[codex:1070439]
[codex:1070439]
[codex:1070439] thinking
[codex:1070439] **Analyzing first-party contract vulnerabilities**
[codex:1070439] thinking
[codex:1070439] **Evaluating potential reentrancy and token hooks**
[codex:1070439]
[codex:1070439] I'm walking through how ERC777 token hooks might enable reentrancy during deposit calls, checking if allowance and balances correctly prevent abuse. I also explore how withdraw handles asset transfer sequencing and whether any state changes or external calls might lead to inconsistent accounting or permission issues. There is a lot to untangle around update timing, external calls, and internal state consistency!
[codex:1070439] thinking
[codex:1070439] **Spotting reentrancy in withdraw via deployer calls**
[codex:1070439]
[codex:1070439] I'm analyzing how the vault’s withdraw function might be vulnerable to reentrancy because it calls the deployer contract externally before burning tokens. The deployer could potentially reenter withdraw using the same vault tokens before they’re burned, risking multiple withdrawals. I’m reviewing how token burning order and call stack reverts might limit this and whether this risk depends on deployer trust or token transfer enabling.
[codex:1070439] thinking
[codex:1070439] **Identifying cooldown bypass and external call risks**
[codex:1070439]
[codex:1070439] I'm exploring how reentrancy during deposit's external token transfer might let attackers manipulate withdrawal cooldown by reentering before lastDepositBlock updates. Also, transfers enabled can let new token holders bypass cooldown by receiving tokens with lastDepositBlock unset. I’m weighing these logic issues along with risks from external calls before state updates and subtle contract upgradeability or integration assumptions.
[codex:1070439] thinking
[codex:1070439] **Evaluating admin role risks and token initialization hazards**
[codex:1070439]
[codex:1070439] I'm examining how the vault token’s admin role can grant minting rights, potentially leading to unbacked tokens if admin control is compromised. Also, the public initializer on the vault token could let attackers front-run deployment and seize admin rights early, posing deployment risks. These findings highlight centralization and initialization concerns beyond just cooldown bypass.
[codex:1070439] exec
[codex:1070439] /bin/bash -lc "nl -ba contracts/contracts/evm/launch_vault/vault.sol | sed -n '1,260p'" in /tmp/codex-multi-9eqdn5xa succeeded in 8ms:
[codex:1070439] 1 // SPDX-License-Identifier: MIT
[codex:1070439] 2 pragma solidity ^0.8.23;
[codex:1070439] 3
[codex:1070439] 4 import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:1070439] 5 import {AccessControlUpgradeable} from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:1070439] 6 import {IERC20} from "@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol";
[codex:1070439] 7 import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1070439] 8 import {BlackwingVaultToken} from "./vault_token.sol";
[codex:1070439] 9 import {IDeployer} from "./deployer/deployer_interface.sol";
[codex:1070439] 10
[codex:1070439] 11 struct PoolInfo {
[codex:1070439] 12 bool isValue;
[codex:1070439] 13 BlackwingVaultToken vaultToken;
[codex:1070439] 14 IDeployer deployer;
[codex:1070439] 15 }
[codex:1070439] 16
[codex:1070439] 17 struct UserInfo {
[codex:1070439] 18 bool isValue;
[codex:1070439] 19 uint lastDepositBlock;
[codex:1070439] 20 }
[codex:1070439]
[codex:1070439] thinking
[codex:1070439] **Noting line numbers for reference**
[codex:1070439] exec
[codex:1070439] /bin/bash -lc 'nl -ba contracts/contracts/evm/launch_vault/vault_token.sol' in /tmp/codex-multi-9eqdn5xa succeeded in 5ms:
[codex:1070439] 1 // SPDX-License-Identifier: MIT
[codex:1070439] 2 pragma solidity ^0.8.23;
[codex:1070439] 3
[codex:1070439] 4 import {AccessControlUpgradeable} from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
[codex:1070439] 5 import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
[codex:1070439] 6 import "@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol";
[codex:1070439] 7
[codex:1070439] 8 // LP token representing share of the assets in the vault. Should be non transferrable unless configured
[codex:1070439] 9 // to be via `transferable`.
[codex:1070439] 10
[codex:1070439] 11 contract BlackwingVaultToken is ERC20Upgradeable, AccessControlUpgradeable {
[codex:1070439] 12 string public constant TRANSFERS_DISABLED_ERR = '1'; // Transfers are disabled
[codex:1070439] 13 string public constant UNAUTHORIZED_ERR = '2'; // Not authorized to perform function
[codex:1070439] 14
[codex:1070439] 15 bytes32 public constant VAULT_ROLE = keccak256("VAULT_ROLE");
[codex:1070439] 16
[codex:1070439] 17 address private vault;
[codex:1070439] 18 bool private transferable;
[codex:1070439] 19
[codex:1070439] 20 function initialize(address _vault, string memory name, string memory symbol) public initializer {
[codex:1070439]
[codex:1070439] thinking
[codex:1070439] **Preparing JSON output**
[codex:1070439] exec
[codex:1070439] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-9eqdn5xa succeeded in 5ms:
[codex:1070439] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:1070439]
[codex:1070439]
[codex:1070439] thinking
[codex:1070439] **Summarizing vulnerabilities and recommendations**
[codex:1070439]
[codex:1070439] I'll prepare JSON output with two key findings: a low-severity cooldown bypass via LP token transfers due to lastDepositBlock not updating on transfers, and an informational risk where the vault token admin role can grant VAULT_ROLE and mint unbacked tokens, highlighting access control centralization concerns without labeling it a true vulnerability. I'll include evidence, exploit scenarios, and recommendations accordingly.
[codex:1070439] thinking
[codex:1070439] **Finalizing findings with line references**
[codex:1070439]
[codex:1070439] I'm organizing detailed evidence, line numbers, severity, categories, and recommendations for two findings: the withdrawal cooldown bypass linked to LP token transfers and the admin role’s minting privileges, ensuring clear paths and severity levels before outputting the final JSON report.
[codex:1070439] codex
[codex:1070439] {"no_findings":false,"summary":"Identified a low-severity cooldown bypass when LP transfers are enabled and an informational privileged-role risk around vault-token minting.","findings":[{"severity":"low","category":"auth","title":"Withdrawal cooldown bypassable via LP token transfers","exploit_scenario":"If the owner enables LP transfers, a user can deposit, receive vault tokens, immediately transfer them to a fresh address (with default lastDepositBlock = 0), and withdraw in the same block window, bypassing minBlocksSinceLastDeposit.","recommendation":"If the withdrawal delay is a security requirement, update lastDepositBlock on receipt of LP tokens (e.g., hook transfers in BlackwingVaultToken to notify the vault), or enforce the delay based on last transfer time, or keep transfers disabled when the cooldown is required.","evidence":"The withdrawal gate uses users[msg.sender].lastDepositBlock, which is only updated on deposit. Transfers can be enabled and do not update users[].lastDepositBlock, so recipients with a default 0 lastDepositBlock can withdraw immediately.","locations":["contracts/contracts/evm/launch_vault/vault.sol:90","contracts/contracts/evm/launch_vault/vault.sol:110","contracts/contracts/evm/launch_vault/vault.sol:123","contracts/contracts/evm/launch_vault/vault.sol:192","contracts/contracts/evm/launch_vault/vault_token.sol:33"]},{"severity":"info","category":"access_control","title":"LP token admin can grant VAULT_ROLE and mint unbacked shares","exploit_scenario":"If the DEFAULT_ADMIN_ROLE holder is compromised or misconfigured, they can grant themselves VAULT_ROLE, mint arbitrary LP tokens, and withdraw underlying assets from the vault, bypassing deposit requirements.","recommendation":"Limit DEFAULT_ADMIN_ROLE to a governance/multisig or the vault itself, or set VAULT_ROLE’s admin to itself and renounce DEFAULT_ADMIN_ROLE after setup to reduce mint/burn surface.","evidence":"BlackwingVaultToken.initialize grants DEFAULT_ADMIN_ROLE to msg.sender, while mint/burn are restricted only by VAULT_ROLE. DEFAULT_ADMIN_ROLE can grant VAULT_ROLE, enabling arbitrary mint/burn if that key is compromised.","locations":["contracts/contracts/evm/launch_vault/vault_token.sol:20","contracts/contracts/evm/launch_vault/vault_token.sol:23","contracts/contracts/evm/launch_vault/vault_token.sol:43"]}]}
[codex:1070439] tokens used
[codex:1070439] 47,041
[codex:1070439] {"no_findings":false,"summary":"Identified a low-severity cooldown bypass when LP transfers are enabled and an informational privileged-role risk around vault-token minting.","findings":[{"severity":"low","category":"auth","title":"Withdrawal cooldown bypassable via LP token transfers","exploit_scenario":"If the owner enables LP transfers, a user can deposit, receive vault tokens, immediately transfer them to a fresh address (with default lastDepositBlock = 0), and withdraw in the same block window, bypassing minBlocksSinceLastDeposit.","recommendation":"If the withdrawal delay is a security requirement, update lastDepositBlock on receipt of LP tokens (e.g., hook transfers in BlackwingVaultToken to notify the vault), or enforce the delay based on last transfer time, or keep transfers disabled when the cooldown is required.","evidence":"The withdrawal gate uses users[msg.sender].lastDepositBlock, which is only updated on deposit. Transfers can be enabled and do not update users[].lastDepositBlock, so recipients with a default 0 lastDepositBlock can withdraw immediately.","locations":["contracts/contracts/evm/launch_vault/vault.sol:90","contracts/contracts/evm/launch_vault/vault.sol:110","contracts/contracts/evm/launch_vault/vault.sol:123","contracts/contracts/evm/launch_vault/vault.sol:192","contracts/contracts/evm/launch_vault/vault_token.sol:33"]},{"severity":"info","category":"access_control","title":"LP token admin can grant VAULT_ROLE and mint unbacked shares","exploit_scenario":"If the DEFAULT_ADMIN_ROLE holder is compromised or misconfigured, they can grant themselves VAULT_ROLE, mint arbitrary LP tokens, and withdraw underlying assets from the vault, bypassing deposit requirements.","recommendation":"Limit DEFAULT_ADMIN_ROLE to a governance/multisig or the vault itself, or set VAULT_ROLE’s admin to itself and renounce DEFAULT_ADMIN_ROLE after setup to reduce mint/burn surface.","evidence":"BlackwingVaultToken.initialize grants DEFAULT_ADMIN_ROLE to msg.sender, while mint/burn are restricted only by VAULT_ROLE. DEFAULT_ADMIN_ROLE can grant VAULT_ROLE, enabling arbitrary mint/burn if that key is compromised.","locations":["contracts/contracts/evm/launch_vault/vault_token.sol:20","contracts/contracts/evm/launch_vault/vault_token.sol:23","contracts/contracts/evm/launch_vault/vault_token.sol:43"]}]}
{
"codex": {
"ran_at": "2025-12-30T20:08:33.006593+00:00",
"returncode": 0
},
"summary": "Identified a low-severity cooldown bypass when LP transfers are enabled and an informational privileged-role risk around vault-token minting.",
"raw_final": {
"summary": "Identified a low-severity cooldown bypass when LP transfers are enabled and an informational privileged-role risk around vault-token minting.",
"findings": [
{
"title": "Withdrawal cooldown bypassable via LP token transfers",
"category": "auth",
"evidence": "The withdrawal gate uses users[msg.sender].lastDepositBlock, which is only updated on deposit. Transfers can be enabled and do not update users[].lastDepositBlock, so recipients with a default 0 lastDepositBlock can withdraw immediately.",
"severity": "low",
"locations": [
"contracts/contracts/evm/launch_vault/vault.sol:90",
"contracts/contracts/evm/launch_vault/vault.sol:110",
"contracts/contracts/evm/launch_vault/vault.sol:123",
"contracts/contracts/evm/launch_vault/vault.sol:192",
"contracts/contracts/evm/launch_vault/vault_token.sol:33"
],
"recommendation": "If the withdrawal delay is a security requirement, update lastDepositBlock on receipt of LP tokens (e.g., hook transfers in BlackwingVaultToken to notify the vault), or enforce the delay based on last transfer time, or keep transfers disabled when the cooldown is required.",
"exploit_scenario": "If the owner enables LP transfers, a user can deposit, receive vault tokens, immediately transfer them to a fresh address (with default lastDepositBlock = 0), and withdraw in the same block window, bypassing minBlocksSinceLastDeposit."
},
{
"title": "LP token admin can grant VAULT_ROLE and mint unbacked shares",
"category": "access_control",
"evidence": "BlackwingVaultToken.initialize grants DEFAULT_ADMIN_ROLE to msg.sender, while mint/burn are restricted only by VAULT_ROLE. DEFAULT_ADMIN_ROLE can grant VAULT_ROLE, enabling arbitrary mint/burn if that key is compromised.",
"severity": "info",
"locations": [
"contracts/contracts/evm/launch_vault/vault_token.sol:20",
"contracts/contracts/evm/launch_vault/vault_token.sol:23",
"contracts/contracts/evm/launch_vault/vault_token.sol:43"
],
"recommendation": "Limit DEFAULT_ADMIN_ROLE to a governance/multisig or the vault itself, or set VAULT_ROLE\u2019s admin to itself and renounce DEFAULT_ADMIN_ROLE after setup to reduce mint/burn surface.",
"exploit_scenario": "If the DEFAULT_ADMIN_ROLE holder is compromised or misconfigured, they can grant themselves VAULT_ROLE, mint arbitrary LP tokens, and withdraw underlying assets from the vault, bypassing deposit requirements."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLVALUE 00000006: DUP1 00000007: ISZERO 00000008: PUSH2 0x0010 0000000b: JUMPI 0000000c: PUSH1 0x00 0000000e: DUP1 0000000f: REVERT 00000010: JUMPDEST 00000011: POP 00000012: PUSH1 0x04 00000014: CALLDATASIZE 00000015: LT 00000016: PUSH2 0x01fb 00000019: JUMPI 0000001a: PUSH1 0x00 0000001c: CALLDATALOAD 0000001d: PUSH1 0xe0 0000001f: SHR 00000020: DUP1 00000021: PUSH4 0x891697ca 00000026: GT 00000027: PUSH2 0x011a 0000002a: JUMPI 0000002b: DUP1 0000002c: PUSH4 0xd547741f 00000031: GT 00000032: PUSH2 0x00ad 00000035: JUMPI 00000036: DUP1 00000037: PUSH4 0xe7b7937f 0000003c: GT 0000003d: PUSH2 0x007c 00000040: JUMPI 00000041: DUP1 00000042: PUSH4 0xe7b7937f 00000047: EQ 00000048: PUSH2 0x0578 0000004b: JUMPI 0000004c: DUP1 0000004d: PUSH4 0xe8bac93b 00000052: EQ 00000053: PUSH2 0x05a8 00000056: JUMPI 00000057: DUP1 00000058: PUSH4 0xe9af7c24 0000005d: EQ 0000005e: PUSH2 0x05b2 00000061: JUMPI 00000062: DUP1 00000063: PUSH4 0xf3fef3a3 00000068: EQ 00000069: PUSH2 0x05d0 0000006c: JUMPI 0000006d: DUP1 0000006e: PUSH4 0xfe4b84df 00000073: EQ 00000074: PUSH2 0x05ec 00000077: JUMPI 00000078: PUSH2 0x01fb 0000007b: JUMP 0000007c: JUMPDEST 0000007d: DUP1 0000007e: PUSH4 0xd547741f 00000083: EQ 00000084: PUSH2 0x0502 00000087: JUMPI 00000088: DUP1 00000089: PUSH4 0xd80be039 0000008e: EQ 0000008f: PUSH2 0x051e 00000092: JUMPI 00000093: DUP1 00000094: PUSH4 0xdf11653d 00000099: EQ 0000009a: PUSH2 0x053c 0000009d: JUMPI 0000009e: DUP1 0000009f: PUSH4 0xe58378bb 000000a4: EQ 000000a5: PUSH2 0x055a 000000a8: JUMPI 000000a9: PUSH2 0x01fb 000000ac: JUMP 000000ad: JUMPDEST 000000ae: DUP1 000000af: PUSH4 0xad960ce1 000000b4: GT 000000b5: PUSH2 0x00e9 000000b8: JUMPI 000000b9: DUP1 000000ba: PUSH4 0xad960ce1 000000bf: EQ 000000c0: PUSH2 0x048c 000000c3: JUMPI 000000c4: DUP1 000000c5: PUSH4 0xaf4f19a6 000000ca: EQ 000000cb: PUSH2 0x0496 000000ce: JUMPI 000000cf: DUP1 000000d0: PUSH4 0xb203bb99 000000d5: EQ 000000d6: PUSH2 0x04b4 000000d9: JUMPI 000000da: DUP1 000000db: PUSH4 0xc74b7de1 000000e0: EQ 000000e1: PUSH2 0x04e4 000000e4: JUMPI 000000e5: PUSH2 0x01fb 000000e8: JUMP 000000e9: JUMPDEST 000000ea: DUP1 000000eb: PUSH4 0x891697ca 000000f0: EQ 000000f1: PUSH2 0x03f2 000000f4: JUMPI 000000f5: DUP1 000000f6: PUSH4 0x91d14854 000000fb: EQ 000000fc: PUSH2 0x040e 000000ff: JUMPI 00000100: DUP1 00000101: PUSH4 0x9ce1024b 00000106: EQ 00000107: PUSH2 0x043e 0000010a: JUMPI 0000010b: DUP1 0000010c: PUSH4 0xa217fddf 00000111: EQ 00000112: PUSH2 0x046e 00000115: JUMPI 00000116: PUSH2 0x01fb 00000119: JUMP 0000011a: JUMPDEST 0000011b: DUP1 0000011c: PUSH4 0x2f2ff15d 00000121: GT 00000122: PUSH2 0x0192 00000125: JUMPI 00000126: DUP1 00000127: PUSH4 0x47e7ef24 0000012c: GT 0000012d: PUSH2 0x0161 00000130: JUMPI 00000131: DUP1 00000132: PUSH4 0x47e7ef24 00000137: EQ 00000138: PUSH2 0x0380 0000013b: JUMPI 0000013c: DUP1 0000013d: PUSH4 0x4ada47c0 00000142: EQ 00000143: PUSH2 0x039c 00000146: JUMPI 00000147: DUP1 00000148: PUSH4 0x5e09e7af 0000014d: EQ 0000014e: PUSH2 0x03b8 00000151: JUMPI 00000152: DUP1 00000153: PUSH4 0x7f823d86 00000158: EQ 00000159: PUSH2 0x03d6 0000015c: JUMPI 0000015d: PUSH2 0x01fb 00000160: JUMP 00000161: JUMPDEST 00000162: DUP1 00000163: PUSH4 0x2f2ff15d 00000168: EQ 00000169: PUSH2 0x030e 0000016c: JUMPI 0000016d: DUP1 0000016e: PUSH4 0x36568abe 00000173: EQ 00000174: PUSH2 0x032a 00000177: JUMPI 00000178: DUP1 00000179: PUSH4 0x3d22756b 0000017e: EQ 0000017f: PUSH2 0x0346 00000182: JUMPI 00000183: DUP1 00000184: PUSH4 0x3f42015f 00000189: EQ 0000018a: PUSH2 0x0364 0000018d: JUMPI 0000018e: PUSH2 0x01fb 00000191: JUMP 00000192: JUMPDEST 00000193: DUP1 00000194: PUSH4 0x212e85e1 00000199: GT 0000019a: PUSH2 0x01ce 0000019d: JUMPI 0000019e: DUP1 0000019f: PUSH4 0x212e85e1 000001a4: EQ 000001a5: PUSH2 0x0288 000001a8: JUMPI 000001a9: DUP1 000001aa: PUSH4 0x248a9ca3 000001af: EQ 000001b0: PUSH2 0x02a6 000001b3: JUMPI 000001b4: DUP1 000001b5: PUSH4 0x2859b553 000001ba: EQ 000001bb: PUSH2 0x02d6 000001be: JUMPI 000001bf: DUP1 000001c0: PUSH4 0x2c474ed6 000001c5: EQ 000001c6: PUSH2 0x02f2 000001c9: JUMPI 000001ca: PUSH2 0x01fb 000001cd: JUMP 000001ce: JUMPDEST 000001cf: DUP1 000001d0: PUSH4 0x01ffc9a7 000001d5: EQ 000001d6: PUSH2 0x0200 000001d9: JUMPI 000001da: DUP1 000001db: PUSH4 0x04a2f204 000001e0: EQ 000001e1: PUSH2 0x0230 000001e4: JUMPI 000001e5: DUP1 000001e6: PUSH4 0x0d7dd533 000001eb: EQ 000001ec: PUSH2 0x024e 000001ef: JUMPI 000001f0: DUP1 000001f1: PUSH4 0x19efd6a0 000001f6: EQ 000001f7: PUSH2 0x026c 000001fa: JUMPI 000001fb: JUMPDEST 000001fc: PUSH1 0x00 000001fe: DUP1 000001ff: REVERT 00000200: JUMPDEST 00000201: PUSH2 0x021a 00000204: PUSH1 0x04 00000206: DUP1 00000207: CALLDATASIZE 00000208: SUB 00000209: DUP2 0000020a: ADD 0000020b: SWAP1 0000020c: PUSH2 0x0215 0000020f: SWAP2 00000210: SWAP1 00000211: PUSH2 0x30aa 00000214: JUMP 00000215: JUMPDEST 00000216: PUSH2 0x0608 00000219: JUMP 0000021a: JUMPDEST 0000021b: PUSH1 0x40 0000021d: MLOAD 0000021e: PUSH2 0x0227 00000221: SWAP2 00000222: SWAP1 00000223: PUSH2 0x30f2 00000226: JUMP 00000227: JUMPDEST 00000228: PUSH1 0x40 0000022a: MLOAD 0000022b: DUP1 0000022c: SWAP2 0000022d: SUB 0000022e: SWAP1 0000022f: RETURN 00000230: JUMPDEST 00000231: PUSH2 0x0238 00000234: PUSH2 0x0682 00000237: JUMP 00000238: JUMPDEST 00000239: PUSH1 0x40 0000023b: MLOAD 0000023c: PUSH2 0x0245 0000023f: SWAP2 00000240: SWAP1 00000241: PUSH2 0x3126 00000244: JUMP 00000245: JUMPDEST 00000246: PUSH1 0x40 00000248: MLOAD 00000249: DUP1 0000024a: SWAP2 0000024b: SUB 0000024c: SWAP1 0000024d: RETURN 0000024e: JUMPDEST 0000024f: PUSH2 0x0256 00000252: PUSH2 0x068c 00000255: JUMP 00000256: JUMPDEST 00000257: PUSH1 0x40 00000259: MLOAD 0000025a: PUSH2 0x0263 0000025d: SWAP2 0000025e: SWAP1 0000025f: PUSH2 0x31d1 00000262: JUMP 00000263: JUMPDEST 00000264: PUSH1 0x40 00000266: MLOAD 00000267: DUP1 00000268: SWAP2 00000269: SUB 0000026a: SWAP1 0000026b: RETURN 0000026c: JUMPDEST 0000026d: PUSH2 0x0286 00000270: PUSH1 0x04 00000272: DUP1 00000273: CALLDATASIZE 00000274: SUB 00000275: DUP2 00000276: ADD 00000277: SWAP1 00000278: PUSH2 0x0281 0000027b: SWAP2 0000027c: SWAP1 0000027d: PUSH2 0x321f 00000280: JUMP 00000281: JUMPDEST 00000282: PUSH2 0x06c5 00000285: JUMP 00000286: JUMPDEST 00000287: STOP 00000288: JUMPDEST 00000289: PUSH2 0x0290 0000028c: PUSH2 0x0771 0000028f: JUMP 00000290: JUMPDEST 00000291: PUSH1 0x40 00000293: MLOAD 00000294: PUSH2 0x029d 00000297: SWAP2 00000298: SWAP1 00000299: PUSH2 0x31d1 0000029c: JUMP 0000029d: JUMPDEST 0000029e: PUSH1 0x40 000002a0: MLOAD 000002a1: DUP1 000002a2: SWAP2 000002a3: SUB 000002a4: SWAP1 000002a5: RETURN 000002a6: JUMPDEST 000002a7: PUSH2 0x02c0 000002aa: PUSH1 0x04 000002ac: DUP1 000002ad: CALLDATASIZE 000002ae: SUB 000002af: DUP2 000002b0: ADD 000002b1: SWAP1 000002b2: PUSH2 0x02bb 000002b5: SWAP2 000002b6: SWAP1 000002b7: PUSH2 0x3282 000002ba: JUMP 000002bb: JUMPDEST 000002bc: PUSH2 0x07aa 000002bf: JUMP 000002c0: JUMPDEST 000002c1: PUSH1 0x40 000002c3: MLOAD 000002c4: PUSH2 0x02cd 000002c7: SWAP2 000002c8: SWAP1 000002c9: PUSH2 0x32be 000002cc: JUMP 000002cd: JUMPDEST 000002ce: PUSH1 0x40 000002d0: MLOAD 000002d1: DUP1 000002d2: SWAP2 000002d3: SUB 000002d4: SWAP1 000002d5: RETURN 000002d6: JUMPDEST 000002d7: PUSH2 0x02f0 000002da: PUSH1 0x04 000002dc: DUP1 000002dd: CALLDATASIZE 000002de: SUB 000002df: DUP2 000002e0: ADD 000002e1: SWAP1 000002e2: PUSH2 0x02eb 000002e5: SWAP2 000002e6: SWAP1 000002e7: PUSH2 0x3349 000002ea: JUMP 000002eb: JUMPDEST 000002ec: PUSH2 0x07d8 000002ef: JUMP 000002f0: JUMPDEST 000002f1: STOP 000002f2: JUMPDEST 000002f3: PUSH2 0x030c 000002f6: PUSH1 0x04 000002f8: DUP1 000002f9: CALLDATASIZE 000002fa: SUB 000002fb: DUP2 000002fc: ADD 000002fd: SWAP1 000002fe: PUSH2 0x0307 00000301: SWAP2 00000302: SWAP1 00000303: PUSH2 0x3376 00000306: JUMP 00000307: JUMPDEST 00000308: PUSH2 0x0947 0000030b: JUMP 0000030c: JUMPDEST 0000030d: STOP 0000030e: JUMPDEST 0000030f: PUSH2 0x0328 00000312: PUSH1 0x04 00000314: DUP1 00000315: CALLDATASIZE 00000316: SUB 00000317: DUP2 00000318: ADD 00000319: SWAP1 0000031a: PUSH2 0x0323 0000031d: SWAP2 0000031e: SWAP1 0000031f: PUSH2 0x33e2 00000322: JUMP 00000323: JUMPDEST 00000324: PUSH2 0x0ba9 00000327: JUMP 00000328: JUMPDEST 00000329: STOP 0000032a: JUMPDEST 0000032b: PUSH2 0x0344 0000032e: PUSH1 0x04 00000330: DUP1 00000331: CALLDATASIZE 00000332: SUB 00000333: DUP2 00000334: ADD 00000335: SWAP1 00000336: PUSH2 0x033f 00000339: SWAP2 0000033a: SWAP1 0000033b: PUSH2 0x33e2 0000033e: JUMP 0000033f: JUMPDEST 00000340: PUSH2 0x0bcb 00000343: JUMP 00000344: JUMPDEST 00000345: STOP 00000346: JUMPDEST 00000347: PUSH2 0x034e 0000034a: PUSH2 0x0c46 0000034d: JUMP 0000034e: JUMPDEST 0000034f: PUSH1 0x40 00000351: MLOAD 00000352: PUSH2 0x035b 00000355: SWAP2 00000356: SWAP1 00000357: PUSH2 0x31d1 0000035a: JUMP 0000035b: JUMPDEST 0000035c: PUSH1 0x40 0000035e: MLOAD 0000035f: DUP1 00000360: SWAP2 00000361: SUB 00000362: SWAP1 00000363: RETURN 00000364: JUMPDEST 00000365: PUSH2 0x037e 00000368: PUSH1 0x04 0000036a: DUP1 0000036b: CALLDATASIZE 0000036c: SUB 0000036d: DUP2 0000036e: ADD 0000036f: SWAP1 00000370: PUSH2 0x0379 00000373: SWAP2 00000374: SWAP1 00000375: PUSH2 0x3460 00000378: JUMP 00000379: JUMPDEST 0000037a: PUSH2 0x0c7f 0000037d: JUMP 0000037e: JUMPDEST 0000037f: STOP 00000380: JUMPDEST 00000381: PUSH2 0x039a 00000384: PUSH1 0x04 00000386: DUP1 00000387: CALLDATASIZE 00000388: SUB 00000389: DUP2 0000038a: ADD 0000038b: SWAP1 0000038c: PUSH2 0x0395 0000038f: SWAP2 00000390: SWAP1 00000391: PUSH2 0x3376 00000394: JUMP 00000395: JUMPDEST 00000396: PUSH2 0x0dae 00000399: JUMP 0000039a: JUMPDEST 0000039b: STOP 0000039c: JUMPDEST 0000039d: PUSH2 0x03b6 000003a0: PUSH1 0x04 000003a2: DUP1 000003a3: CALLDATASIZE 000003a4: SUB 000003a5: DUP2 000003a6: ADD 000003a7: SWAP1 000003a8: PUSH2 0x03b1 000003ab: SWAP2 000003ac: SWAP1 000003ad: PUSH2 0x3349 000003b0: JUMP 000003b1: JUMPDEST 000003b2: PUSH2 0x120b 000003b5: JUMP 000003b6: JUMPDEST 000003b7: STOP 000003b8: JUMPDEST 000003b9: PUSH2 0x03c0 000003bc: PUSH2 0x137a 000003bf: JUMP 000003c0: JUMPDEST 000003c1: PUSH1 0x40 000003c3: MLOAD 000003c4: PUSH2 0x03cd 000003c7: SWAP2 000003c8: SWAP1 000003c9: PUSH2 0x3126 000003cc: JUMP 000003cd: JUMPDEST 000003ce: PUSH1 0x40 000003d0: MLOAD 000003d1: DUP1 000003d2: SWAP2 000003d3: SUB 000003d4: SWAP1 000003d5: RETURN 000003d6: JUMPDEST 000003d7: PUSH2 0x03f0 000003da: PUSH1 0x04 000003dc: DUP1 000003dd: CALLDATASIZE 000003de: SUB 000003df: DUP2 000003e0: ADD 000003e1: SWAP1 000003e2: PUSH2 0x03eb 000003e5: SWAP2 000003e6: SWAP1 000003e7: PUSH2 0x34de 000003ea: JUMP 000003eb: JUMPDEST 000003ec: PUSH2 0x137f 000003ef: JUMP 000003f0: JUMPDEST 000003f1: STOP 000003f2: JUMPDEST 000003f3: PUSH2 0x040c 000003f6: PUSH1 0x04 000003f8: DUP1 000003f9: CALLDATASIZE 000003fa: SUB 000003fb: DUP2 000003fc: ADD 000003fd: SWAP1 000003fe: PUSH2 0x0407 00000401: SWAP2 00000402: SWAP1 00000403: PUSH2 0x3376 00000406: JUMP 00000407: JUMPDEST 00000408: PUSH2 0x1627 0000040b: JUMP 0000040c: JUMPDEST 0000040d: STOP 0000040e: JUMPDEST 0000040f: PUSH2 0x0428 00000412: PUSH1 0x04 00000414: DUP1 00000415: CALLDATASIZE 00000416: SUB 00000417: DUP2 00000418: ADD 00000419: SWAP1 0000041a: PUSH2 0x0423 0000041d: SWAP2 0000041e: SWAP1 0000041f: PUSH2 0x33e2 00000422: JUMP 00000423: JUMPDEST 00000424: PUSH2 0x188b 00000427: JUMP 00000428: JUMPDEST 00000429: PUSH1 0x40 0000042b: MLOAD 0000042c: PUSH2 0x0435 0000042f: SWAP2 00000430: SWAP1 00000431: PUSH2 0x30f2 00000434: JUMP 00000435: JUMPDEST 00000436: PUSH1 0x40 00000438: MLOAD 00000439: DUP1 0000043a: SWAP2 0000043b: SUB 0000043c: SWAP1 0000043d: RETURN 0000043e: JUMPDEST 0000043f: PUSH2 0x0458 00000442: PUSH1 0x04 00000444: DUP1 00000445: CALLDATASIZE 00000446: SUB 00000447: DUP2 00000448: ADD 00000449: SWAP1 0000044a: PUSH2 0x0453 0000044d: SWAP2 0000044e: SWAP1 0000044f: PUSH2 0x3531 00000452: JUMP 00000453: JUMPDEST 00000454: PUSH2 0x1904 00000457: JUMP 00000458: JUMPDEST 00000459: PUSH1 0x40 0000045b: MLOAD 0000045c: PUSH2 0x0465 0000045f: SWAP2 00000460: SWAP1 00000461: PUSH2 0x3126 00000464: JUMP 00000465: JUMPDEST 00000466: PUSH1 0x40 00000468: MLOAD 00000469: DUP1 0000046a: SWAP2 0000046b: SUB 0000046c: SWAP1 0000046d: RETURN 0000046e: JUMPDEST 0000046f: PUSH2 0x0476 00000472: PUSH2 0x1950 00000475: JUMP 00000476: JUMPDEST 00000477: PUSH1 0x40 00000479: MLOAD 0000047a: PUSH2 0x0483 0000047d: SWAP2 0000047e: SWAP1 0000047f: PUSH2 0x32be 00000482: JUMP 00000483: JUMPDEST 00000484: PUSH1 0x40 00000486: MLOAD 00000487: DUP1 00000488: SWAP2 00000489: SUB 0000048a: SWAP1 0000048b: RETURN 0000048c: JUMPDEST 0000048d: PUSH2 0x0494 00000490: PUSH2 0x1957 00000493: JUMP 00000494: JUMPDEST 00000495: STOP 00000496: JUMPDEST 00000497: PUSH2 0x049e 0000049a: PUSH2 0x1a16 0000049d: JUMP 0000049e: JUMPDEST 0000049f: PUSH1 0x40 000004a1: MLOAD 000004a2: PUSH2 0x04ab 000004a5: SWAP2 000004a6: SWAP1 000004a7: PUSH2 0x31d1 000004aa: JUMP 000004ab: JUMPDEST 000004ac: PUSH1 0x40 000004ae: MLOAD 000004af: DUP1 000004b0: SWAP2 000004b1: SUB 000004b2: SWAP1 000004b3: RETURN 000004b4: JUMPDEST 000004b5: PUSH2 0x04ce 000004b8: PUSH1 0x04 000004ba: DUP1 000004bb: CALLDATASIZE 000004bc: SUB 000004bd: DUP2 000004be: ADD 000004bf: SWAP1 000004c0: PUSH2 0x04c9 000004c3: SWAP2 000004c4: SWAP1 000004c5: PUSH2 0x355e 000004c8: JUMP 000004c9: JUMPDEST 000004ca: PUSH2 0x1a4f 000004cd: JUMP 000004ce: JUMPDEST 000004cf: PUSH1 0x40 000004d1: MLOAD 000004d2: PUSH2 0x04db 000004d5: SWAP2 000004d6: SWAP1 000004d7: PUSH2 0x3126 000004da: JUMP 000004db: JUMPDEST 000004dc: PUSH1 0x40 000004de: MLOAD 000004df: DUP1 000004e0: SWAP2 000004e1: SUB 000004e2: SWAP1 000004e3: RETURN 000004e4: JUMPDEST 000004e5: PUSH2 0x04ec 000004e8: PUSH2 0x1cac 000004eb: JUMP 000004ec: JUMPDEST 000004ed: PUSH1 0x40 000004ef: MLOAD 000004f0: PUSH2 0x04f9 000004f3: SWAP2 000004f4: SWAP1 000004f5: PUSH2 0x31d1 000004f8: JUMP 000004f9: JUMPDEST 000004fa: PUSH1 0x40 000004fc: MLOAD 000004fd: DUP1 000004fe: SWAP2 000004ff: SUB 00000500: SWAP1 00000501: RETURN 00000502: JUMPDEST 00000503: PUSH2 0x051c 00000506: PUSH1 0x04 00000508: DUP1 00000509: CALLDATASIZE 0000050a: SUB 0000050b: DUP2 0000050c: ADD 0000050d: SWAP1 0000050e: PUSH2 0x0517 00000511: SWAP2 00000512: SWAP1 00000513: PUSH2 0x33e2 00000516: JUMP 00000517: JUMPDEST 00000518: PUSH2 0x1ce5 0000051b: JUMP 0000051c: JUMPDEST 0000051d: STOP 0000051e: JUMPDEST 0000051f: PUSH2 0x0526 00000522: PUSH2 0x1d07 00000525: JUMP 00000526: JUMPDEST 00000527: PUSH1 0x40 00000529: MLOAD 0000052a: PUSH2 0x0533 0000052d: SWAP2 0000052e: SWAP1 0000052f: PUSH2 0x31d1 00000532: JUMP 00000533: JUMPDEST 00000534: PUSH1 0x40 00000536: MLOAD 00000537: DUP1 00000538: SWAP2 00000539: SUB 0000053a: SWAP1 0000053b: RETURN 0000053c: JUMPDEST 0000053d: PUSH2 0x0544 00000540: PUSH2 0x1d40 00000543: JUMP 00000544: JUMPDEST 00000545: PUSH1 0x40 00000547: MLOAD 00000548: PUSH2 0x0551 0000054b: SWAP2 0000054c: SWAP1 0000054d: PUSH2 0x31d1 00000550: JUMP 00000551: JUMPDEST 00000552: PUSH1 0x40 00000554: MLOAD 00000555: DUP1 00000556: SWAP2 00000557: SUB 00000558: SWAP1 00000559: RETURN 0000055a: JUMPDEST 0000055b: PUSH2 0x0562 0000055e: PUSH2 0x1d79 00000561: JUMP 00000562: JUMPDEST 00000563: PUSH1 0x40 00000565: MLOAD 00000566: PUSH2 0x056f 00000569: SWAP2 0000056a: SWAP1 0000056b: PUSH2 0x32be 0000056e: JUMP 0000056f: JUMPDEST 00000570: PUSH1 0x40 00000572: MLOAD 00000573: DUP1 00000574: SWAP2 00000575: SUB 00000576: SWAP1 00000577: RETURN 00000578: JUMPDEST 00000579: PUSH2 0x0592 0000057c: PUSH1 0x04 0000057e: DUP1 0000057f: CALLDATASIZE 00000580: SUB 00000581: DUP2 00000582: ADD 00000583: SWAP1 00000584: PUSH2 0x058d 00000587: SWAP2 00000588: SWAP1 00000589: PUSH2 0x3349 0000058c: JUMP 0000058d: JUMPDEST 0000058e: PUSH2 0x1d9d 00000591: JUMP 00000592: JUMPDEST 00000593: PUSH1 0x40 00000595: MLOAD 00000596: PUSH2 0x059f 00000599: SWAP2 0000059a: SWAP1 0000059b: PUSH2 0x35ad 0000059e: JUMP 0000059f: JUMPDEST 000005a0: PUSH1 0x40 000005a2: MLOAD 000005a3: DUP1 000005a4: SWAP2 000005a5: SUB 000005a6: SWAP1 000005a7: RETURN 000005a8: JUMPDEST 000005a9: PUSH2 0x05b0 000005ac: PUSH2 0x1e11 000005af: JUMP 000005b0: JUMPDEST 000005b1: STOP 000005b2: JUMPDEST 000005b3: PUSH2 0x05ba 000005b6: PUSH2 0x1ed0 000005b9: JUMP 000005ba: JUMPDEST 000005bb: PUSH1 0x40 000005bd: MLOAD 000005be: PUSH2 0x05c7 000005c1: SWAP2 000005c2: SWAP1 000005c3: PUSH2 0x31d1 000005c6: JUMP 000005c7: JUMPDEST 000005c8: PUSH1 0x40 000005ca: MLOAD 000005cb: DUP1 000005cc: SWAP2 000005cd: SUB 000005ce: SWAP1 000005cf: RETURN 000005d0: JUMPDEST 000005d1: PUSH2 0x05ea 000005d4: PUSH1 0x04 000005d6: DUP1 000005d7: CALLDATASIZE 000005d8: SUB 000005d9: DUP2 000005da: ADD 000005db: SWAP1 000005dc: PUSH2 0x05e5 000005df: SWAP2 000005e0: SWAP1 000005e1: PUSH2 0x3376 000005e4: JUMP 000005e5: JUMPDEST 000005e6: PUSH2 0x1f09 000005e9: JUMP 000005ea: JUMPDEST 000005eb: STOP 000005ec: JUMPDEST 000005ed: PUSH2 0x0606 000005f0: PUSH1 0x04 000005f2: DUP1 000005f3: CALLDATASIZE 000005f4: SUB 000005f5: DUP2 000005f6: ADD 000005f7: SWAP1 000005f8: PUSH2 0x0601 000005fb: SWAP2 000005fc: SWAP1 000005fd: PUSH2 0x321f 00000600: JUMP 00000601: JUMPDEST 00000602: PUSH2 0x252b 00000605: JUMP 00000606: JUMPDEST 00000607: STOP 00000608: JUMPDEST 00000609: PUSH1 0x00 0000060b: PUSH32 0x7965db0b00000000000000000000000000000000000000000000000000000000 0000062c: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00000649: NOT 0000064a: AND 0000064b: DUP3 0000064c: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00000669: NOT 0000066a: AND 0000066b: EQ 0000066c: DUP1 0000066d: PUSH2 0x067b 00000670: JUMPI 00000671: POP 00000672: PUSH2 0x067a 00000675: DUP3 00000676: PUSH2 0x2714 00000679: JUMP 0000067a: JUMPDEST 0000067b: JUMPDEST 0000067c: SWAP1 0000067d: POP 0000067e: SWAP2 0000067f: SWAP1 00000680: POP 00000681: JUMP 00000682: JUMPDEST 00000683: PUSH1 0x00 00000685: PUSH1 0x03 00000687: SLOAD 00000688: SWAP1 00000689: POP 0000068a: SWAP1 0000068b: JUMP 0000068c: JUMPDEST 0000068d: PUSH1 0x40 0000068f: MLOAD 00000690: DUP1 00000691: PUSH1 0x40 00000693: ADD 00000694: PUSH1 0x40 00000696: MSTORE 00000697: DUP1 00000698: PUSH1 0x01 0000069a: DUP2 0000069b: MSTORE 0000069c: PUSH1 0x20 0000069e: ADD 0000069f: PUSH32 0x3400000000000000000000000000000000000000000000000000000000000000 000006c0: DUP2 000006c1: MSTORE 000006c2: POP 000006c3: DUP2 000006c4: JUMP 000006c5: JUMPDEST 000006c6: PUSH2 0x06ef 000006c9: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 000006ea: CALLER 000006eb: PUSH2 0x188b 000006ee: JUMP 000006ef: JUMPDEST 000006f0: PUSH1 0x40 000006f2: MLOAD 000006f3: DUP1 000006f4: PUSH1 0x40 000006f6: ADD 000006f7: PUSH1 0x40 000006f9: MSTORE 000006fa: DUP1 000006fb: PUSH1 0x01 000006fd: DUP2 000006fe: MSTORE 000006ff: PUSH1 0x20 00000701: ADD 00000702: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 00000723: DUP2 00000724: MSTORE 00000725: POP 00000726: SWAP1 00000727: PUSH2 0x0766 0000072a: JUMPI 0000072b: PUSH1 0x40 0000072d: MLOAD 0000072e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000074f: DUP2 00000750: MSTORE 00000751: PUSH1 0x04 00000753: ADD 00000754: PUSH2 0x075d 00000757: SWAP2 00000758: SWAP1 00000759: PUSH2 0x31d1 0000075c: JUMP 0000075d: JUMPDEST 0000075e: PUSH1 0x40 00000760: MLOAD 00000761: DUP1 00000762: SWAP2 00000763: SUB 00000764: SWAP1 00000765: REVERT 00000766: JUMPDEST 00000767: POP 00000768: DUP1 00000769: PUSH1 0x03 0000076b: DUP2 0000076c: SWAP1 0000076d: SSTORE 0000076e: POP 0000076f: POP 00000770: JUMP 00000771: JUMPDEST 00000772: PUSH1 0x40 00000774: MLOAD 00000775: DUP1 00000776: PUSH1 0x40 00000778: ADD 00000779: PUSH1 0x40 0000077b: MSTORE 0000077c: DUP1 0000077d: PUSH1 0x01 0000077f: DUP2 00000780: MSTORE 00000781: PUSH1 0x20 00000783: ADD 00000784: PUSH32 0x3800000000000000000000000000000000000000000000000000000000000000 000007a5: DUP2 000007a6: MSTORE 000007a7: POP 000007a8: DUP2 000007a9: JUMP 000007aa: JUMPDEST 000007ab: PUSH1 0x00 000007ad: DUP1 000007ae: PUSH2 0x07b5 000007b1: PUSH2 0x277e 000007b4: JUMP 000007b5: JUMPDEST 000007b6: SWAP1 000007b7: POP 000007b8: DUP1 000007b9: PUSH1 0x00 000007bb: ADD 000007bc: PUSH1 0x00 000007be: DUP5 000007bf: DUP2 000007c0: MSTORE 000007c1: PUSH1 0x20 000007c3: ADD 000007c4: SWAP1 000007c5: DUP2 000007c6: MSTORE 000007c7: PUSH1 0x20 000007c9: ADD 000007ca: PUSH1 0x00 000007cc: KECCAK256 000007cd: PUSH1 0x01 000007cf: ADD 000007d0: SLOAD 000007d1: SWAP2 000007d2: POP 000007d3: POP 000007d4: SWAP2 000007d5: SWAP1 000007d6: POP 000007d7: JUMP 000007d8: JUMPDEST 000007d9: PUSH2 0x0802 000007dc: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 000007fd: CALLER 000007fe: PUSH2 0x188b 00000801: JUMP 00000802: JUMPDEST 00000803: PUSH1 0x40 00000805: MLOAD 00000806: DUP1 00000807: PUSH1 0x40 00000809: ADD 0000080a: PUSH1 0x40 0000080c: MSTORE 0000080d: DUP1 0000080e: PUSH1 0x01 00000810: DUP2 00000811: MSTORE 00000812: PUSH1 0x20 00000814: ADD 00000815: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 00000836: DUP2 00000837: MSTORE 00000838: POP 00000839: SWAP1 0000083a: PUSH2 0x0879 0000083d: JUMPI 0000083e: PUSH1 0x40 00000840: MLOAD 00000841: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000862: DUP2 00000863: MSTORE 00000864: PUSH1 0x04 00000866: ADD 00000867: PUSH2 0x0870 0000086a: SWAP2 0000086b: SWAP1 0000086c: PUSH2 0x31d1 0000086f: JUMP 00000870: JUMPDEST 00000871: PUSH1 0x40 00000873: MLOAD 00000874: DUP1 00000875: SWAP2 00000876: SUB 00000877: SWAP1 00000878: REVERT 00000879: JUMPDEST 0000087a: POP 0000087b: PUSH2 0x0883 0000087e: DUP2 0000087f: PUSH2 0x27a6 00000882: JUMP 00000883: JUMPDEST 00000884: PUSH1 0x00 00000886: DUP1 00000887: DUP3 00000888: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000089d: AND 0000089e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008b3: AND 000008b4: DUP2 000008b5: MSTORE 000008b6: PUSH1 0x20 000008b8: ADD 000008b9: SWAP1 000008ba: DUP2 000008bb: MSTORE 000008bc: PUSH1 0x20 000008be: ADD 000008bf: PUSH1 0x00 000008c1: KECCAK256 000008c2: PUSH1 0x00 000008c4: ADD 000008c5: PUSH1 0x01 000008c7: SWAP1 000008c8: SLOAD 000008c9: SWAP1 000008ca: PUSH2 0x0100 000008cd: EXP 000008ce: SWAP1 000008cf: DIV 000008d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008e5: AND 000008e6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008fb: AND 000008fc: PUSH4 0x3a67a0f6 00000901: PUSH1 0x40 00000903: MLOAD 00000904: DUP2 00000905: PUSH4 0xffffffff 0000090a: AND 0000090b: PUSH1 0xe0 0000090d: SHL 0000090e: DUP2 0000090f: MSTORE 00000910: PUSH1 0x04 00000912: ADD 00000913: PUSH1 0x00 00000915: PUSH1 0x40 00000917: MLOAD 00000918: DUP1 00000919: DUP4 0000091a: SUB 0000091b: DUP2 0000091c: PUSH1 0x00 0000091e: DUP8 0000091f: DUP1 00000920: EXTCODESIZE 00000921: ISZERO 00000922: DUP1 00000923: ISZERO 00000924: PUSH2 0x092c 00000927: JUMPI 00000928: PUSH1 0x00 0000092a: DUP1 0000092b: REVERT 0000092c: JUMPDEST 0000092d: POP 0000092e: GAS 0000092f: CALL 00000930: ISZERO 00000931: DUP1 00000932: ISZERO 00000933: PUSH2 0x0940 00000936: JUMPI 00000937: RETURNDATASIZE 00000938: PUSH1 0x00 0000093a: DUP1 0000093b: RETURNDATACOPY 0000093c: RETURNDATASIZE 0000093d: PUSH1 0x00 0000093f: REVERT 00000940: JUMPDEST 00000941: POP 00000942: POP 00000943: POP 00000944: POP 00000945: POP 00000946: JUMP 00000947: JUMPDEST 00000948: PUSH2 0x0971 0000094b: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 0000096c: CALLER 0000096d: PUSH2 0x188b 00000970: JUMP 00000971: JUMPDEST 00000972: PUSH1 0x40 00000974: MLOAD 00000975: DUP1 00000976: PUSH1 0x40 00000978: ADD 00000979: PUSH1 0x40 0000097b: MSTORE 0000097c: DUP1 0000097d: PUSH1 0x01 0000097f: DUP2 00000980: MSTORE 00000981: PUSH1 0x20 00000983: ADD 00000984: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 000009a5: DUP2 000009a6: MSTORE 000009a7: POP 000009a8: SWAP1 000009a9: PUSH2 0x09e8 000009ac: JUMPI 000009ad: PUSH1 0x40 000009af: MLOAD 000009b0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000009d1: DUP2 000009d2: MSTORE 000009d3: PUSH1 0x04 000009d5: ADD 000009d6: PUSH2 0x09df 000009d9: SWAP2 000009da: SWAP1 000009db: PUSH2 0x31d1 000009de: JUMP 000009df: JUMPDEST 000009e0: PUSH1 0x40 000009e2: MLOAD 000009e3: DUP1 000009e4: SWAP2 000009e5: SUB 000009e6: SWAP1 000009e7: REVERT 000009e8: JUMPDEST 000009e9: POP 000009ea: PUSH2 0x09f2 000009ed: DUP3 000009ee: PUSH2 0x27a6 000009f1: JUMP 000009f2: JUMPDEST 000009f3: PUSH1 0x00 000009f5: DUP1 000009f6: PUSH1 0x00 000009f8: DUP5 000009f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a0e: AND 00000a0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a24: AND 00000a25: DUP2 00000a26: MSTORE 00000a27: PUSH1 0x20 00000a29: ADD 00000a2a: SWAP1 00000a2b: DUP2 00000a2c: MSTORE 00000a2d: PUSH1 0x20 00000a2f: ADD 00000a30: PUSH1 0x00 00000a32: KECCAK256 00000a33: PUSH1 0x01 00000a35: ADD 00000a36: PUSH1 0x00 00000a38: SWAP1 00000a39: SLOAD 00000a3a: SWAP1 00000a3b: PUSH2 0x0100 00000a3e: EXP 00000a3f: SWAP1 00000a40: DIV 00000a41: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a56: AND 00000a57: SWAP1 00000a58: POP 00000a59: PUSH1 0x00 00000a5b: DUP2 00000a5c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a71: AND 00000a72: PUSH4 0x5768adcf 00000a77: DUP6 00000a78: PUSH1 0x40 00000a7a: MLOAD 00000a7b: DUP3 00000a7c: PUSH4 0xffffffff 00000a81: AND 00000a82: PUSH1 0xe0 00000a84: SHL 00000a85: DUP2 00000a86: MSTORE 00000a87: PUSH1 0x04 00000a89: ADD 00000a8a: PUSH2 0x0a93 00000a8d: SWAP2 00000a8e: SWAP1 00000a8f: PUSH2 0x3627 00000a92: JUMP 00000a93: JUMPDEST 00000a94: PUSH1 0x20 00000a96: PUSH1 0x40 00000a98: MLOAD 00000a99: DUP1 00000a9a: DUP4 00000a9b: SUB 00000a9c: DUP2 00000a9d: DUP7 00000a9e: GAS 00000a9f: STATICCALL 00000aa0: ISZERO 00000aa1: DUP1 00000aa2: ISZERO 00000aa3: PUSH2 0x0ab0 00000aa6: JUMPI 00000aa7: RETURNDATASIZE 00000aa8: PUSH1 0x00 00000aaa: DUP1 00000aab: RETURNDATACOPY 00000aac: RETURNDATASIZE 00000aad: PUSH1 0x00 00000aaf: REVERT 00000ab0: JUMPDEST 00000ab1: POP 00000ab2: POP 00000ab3: POP 00000ab4: POP 00000ab5: PUSH1 0x40 00000ab7: MLOAD 00000ab8: RETURNDATASIZE 00000ab9: PUSH1 0x1f 00000abb: NOT 00000abc: PUSH1 0x1f 00000abe: DUP3 00000abf: ADD 00000ac0: AND 00000ac1: DUP3 00000ac2: ADD 00000ac3: DUP1 00000ac4: PUSH1 0x40 00000ac6: MSTORE 00000ac7: POP 00000ac8: DUP2 00000ac9: ADD 00000aca: SWAP1 00000acb: PUSH2 0x0ad4 00000ace: SWAP2 00000acf: SWAP1 00000ad0: PUSH2 0x3657 00000ad3: JUMP 00000ad4: JUMPDEST 00000ad5: SWAP1 00000ad6: POP 00000ad7: PUSH1 0x00 00000ad9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000aee: AND 00000aef: DUP2 00000af0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b05: AND 00000b06: EQ 00000b07: PUSH2 0x0b36 00000b0a: JUMPI 00000b0b: PUSH2 0x0b35 00000b0e: DUP3 00000b0f: DUP5 00000b10: DUP4 00000b11: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b26: AND 00000b27: PUSH2 0x2870 00000b2a: SWAP1 00000b2b: SWAP3 00000b2c: SWAP2 00000b2d: SWAP1 00000b2e: PUSH4 0xffffffff 00000b33: AND 00000b34: JUMP 00000b35: JUMPDEST 00000b36: JUMPDEST 00000b37: DUP2 00000b38: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b4d: AND 00000b4e: PUSH4 0xabe7f1ab 00000b53: DUP6 00000b54: DUP6 00000b55: PUSH1 0x40 00000b57: MLOAD 00000b58: DUP4 00000b59: PUSH4 0xffffffff 00000b5e: AND 00000b5f: PUSH1 0xe0 00000b61: SHL 00000b62: DUP2 00000b63: MSTORE 00000b64: PUSH1 0x04 00000b66: ADD 00000b67: PUSH2 0x0b71 00000b6a: SWAP3 00000b6b: SWAP2 00000b6c: SWAP1 00000b6d: PUSH2 0x3684 00000b70: JUMP 00000b71: JUMPDEST 00000b72: PUSH1 0x00 00000b74: PUSH1 0x40 00000b76: MLOAD 00000b77: DUP1 00000b78: DUP4 00000b79: SUB 00000b7a: DUP2 00000b7b: PUSH1 0x00 00000b7d: DUP8 00000b7e: DUP1 00000b7f: EXTCODESIZE 00000b80: ISZERO 00000b81: DUP1 00000b82: ISZERO 00000b83: PUSH2 0x0b8b 00000b86: JUMPI 00000b87: PUSH1 0x00 00000b89: DUP1 00000b8a: REVERT 00000b8b: JUMPDEST 00000b8c: POP 00000b8d: GAS 00000b8e: CALL 00000b8f: ISZERO 00000b90: DUP1 00000b91: ISZERO 00000b92: PUSH2 0x0b9f 00000b95: JUMPI 00000b96: RETURNDATASIZE 00000b97: PUSH1 0x00 00000b99: DUP1 00000b9a: RETURNDATACOPY 00000b9b: RETURNDATASIZE 00000b9c: PUSH1 0x00 00000b9e: REVERT 00000b9f: JUMPDEST 00000ba0: POP 00000ba1: POP 00000ba2: POP 00000ba3: POP 00000ba4: POP 00000ba5: POP 00000ba6: POP 00000ba7: POP 00000ba8: JUMP 00000ba9: JUMPDEST 00000baa: PUSH2 0x0bb2 00000bad: DUP3 00000bae: PUSH2 0x07aa 00000bb1: JUMP 00000bb2: JUMPDEST 00000bb3: PUSH2 0x0bbb 00000bb6: DUP2 00000bb7: PUSH2 0x28ef 00000bba: JUMP 00000bbb: JUMPDEST 00000bbc: PUSH2 0x0bc5 00000bbf: DUP4 00000bc0: DUP4 00000bc1: PUSH2 0x2903 00000bc4: JUMP 00000bc5: JUMPDEST 00000bc6: POP 00000bc7: POP 00000bc8: POP 00000bc9: POP 00000bca: JUMP 00000bcb: JUMPDEST 00000bcc: PUSH2 0x0bd3 00000bcf: PUSH2 0x2a04 00000bd2: JUMP 00000bd3: JUMPDEST 00000bd4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000be9: AND 00000bea: DUP2 00000beb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c00: AND 00000c01: EQ 00000c02: PUSH2 0x0c37 00000c05: JUMPI 00000c06: PUSH1 0x40 00000c08: MLOAD 00000c09: PUSH32 0x6697b23200000000000000000000000000000000000000000000000000000000 00000c2a: DUP2 00000c2b: MSTORE 00000c2c: PUSH1 0x04 00000c2e: ADD 00000c2f: PUSH1 0x40 00000c31: MLOAD 00000c32: DUP1 00000c33: SWAP2 00000c34: SUB 00000c35: SWAP1 00000c36: REVERT 00000c37: JUMPDEST 00000c38: PUSH2 0x0c41 00000c3b: DUP3 00000c3c: DUP3 00000c3d: PUSH2 0x2a0c 00000c40: JUMP 00000c41: JUMPDEST 00000c42: POP 00000c43: POP 00000c44: POP 00000c45: JUMP 00000c46: JUMPDEST 00000c47: PUSH1 0x40 00000c49: MLOAD 00000c4a: DUP1 00000c4b: PUSH1 0x40 00000c4d: ADD 00000c4e: PUSH1 0x40 00000c50: MSTORE 00000c51: DUP1 00000c52: PUSH1 0x01 00000c54: DUP2 00000c55: MSTORE 00000c56: PUSH1 0x20 00000c58: ADD 00000c59: PUSH32 0x3700000000000000000000000000000000000000000000000000000000000000 00000c7a: DUP2 00000c7b: MSTORE 00000c7c: POP 00000c7d: DUP2 00000c7e: JUMP 00000c7f: JUMPDEST 00000c80: PUSH2 0x0ca9 00000c83: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 00000ca4: CALLER 00000ca5: PUSH2 0x188b 00000ca8: JUMP 00000ca9: JUMPDEST 00000caa: PUSH1 0x40 00000cac: MLOAD 00000cad: DUP1 00000cae: PUSH1 0x40 00000cb0: ADD 00000cb1: PUSH1 0x40 00000cb3: MSTORE 00000cb4: DUP1 00000cb5: PUSH1 0x01 00000cb7: DUP2 00000cb8: MSTORE 00000cb9: PUSH1 0x20 00000cbb: ADD 00000cbc: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 00000cdd: DUP2 00000cde: MSTORE 00000cdf: POP 00000ce0: SWAP1 00000ce1: PUSH2 0x0d20 00000ce4: JUMPI 00000ce5: PUSH1 0x40 00000ce7: MLOAD 00000ce8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000d09: DUP2 00000d0a: MSTORE 00000d0b: PUSH1 0x04 00000d0d: ADD 00000d0e: PUSH2 0x0d17 00000d11: SWAP2 00000d12: SWAP1 00000d13: PUSH2 0x31d1 00000d16: JUMP 00000d17: JUMPDEST 00000d18: PUSH1 0x40 00000d1a: MLOAD 00000d1b: DUP1 00000d1c: SWAP2 00000d1d: SUB 00000d1e: SWAP1 00000d1f: REVERT 00000d20: JUMPDEST 00000d21: POP 00000d22: PUSH2 0x0d2a 00000d25: DUP3 00000d26: PUSH2 0x27a6 00000d29: JUMP 00000d2a: JUMPDEST 00000d2b: DUP1 00000d2c: PUSH1 0x00 00000d2e: DUP1 00000d2f: DUP5 00000d30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d45: AND 00000d46: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d5b: AND 00000d5c: DUP2 00000d5d: MSTORE 00000d5e: PUSH1 0x20 00000d60: ADD 00000d61: SWAP1 00000d62: DUP2 00000d63: MSTORE 00000d64: PUSH1 0x20 00000d66: ADD 00000d67: PUSH1 0x00 00000d69: KECCAK256 00000d6a: PUSH1 0x01 00000d6c: ADD 00000d6d: PUSH1 0x00 00000d6f: PUSH2 0x0100 00000d72: EXP 00000d73: DUP2 00000d74: SLOAD 00000d75: DUP2 00000d76: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d8b: MUL 00000d8c: NOT 00000d8d: AND 00000d8e: SWAP1 00000d8f: DUP4 00000d90: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000da5: AND 00000da6: MUL 00000da7: OR 00000da8: SWAP1 00000da9: SSTORE 00000daa: POP 00000dab: POP 00000dac: POP 00000dad: JUMP 00000dae: JUMPDEST 00000daf: PUSH2 0x0db7 00000db2: DUP3 00000db3: PUSH2 0x27a6 00000db6: JUMP 00000db7: JUMPDEST 00000db8: PUSH1 0x00 00000dba: DUP1 00000dbb: PUSH1 0x00 00000dbd: DUP5 00000dbe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000dd3: AND 00000dd4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000de9: AND 00000dea: DUP2 00000deb: MSTORE 00000dec: PUSH1 0x20 00000dee: ADD 00000def: SWAP1 00000df0: DUP2 00000df1: MSTORE 00000df2: PUSH1 0x20 00000df4: ADD 00000df5: PUSH1 0x00 00000df7: KECCAK256 00000df8: PUSH1 0x40 00000dfa: MLOAD 00000dfb: DUP1 00000dfc: PUSH1 0x60 00000dfe: ADD 00000dff: PUSH1 0x40 00000e01: MSTORE 00000e02: SWAP1 00000e03: DUP2 00000e04: PUSH1 0x00 00000e06: DUP3 00000e07: ADD 00000e08: PUSH1 0x00 00000e0a: SWAP1 00000e0b: SLOAD 00000e0c: SWAP1 00000e0d: PUSH2 0x0100 00000e10: EXP 00000e11: SWAP1 00000e12: DIV 00000e13: PUSH1 0xff 00000e15: AND 00000e16: ISZERO 00000e17: ISZERO 00000e18: ISZERO 00000e19: ISZERO 00000e1a: DUP2 00000e1b: MSTORE 00000e1c: PUSH1 0x20 00000e1e: ADD 00000e1f: PUSH1 0x00 00000e21: DUP3 00000e22: ADD 00000e23: PUSH1 0x01 00000e25: SWAP1 00000e26: SLOAD 00000e27: SWAP1 00000e28: PUSH2 0x0100 00000e2b: EXP 00000e2c: SWAP1 00000e2d: DIV 00000e2e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e43: AND 00000e44: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e59: AND 00000e5a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e6f: AND 00000e70: DUP2 00000e71: MSTORE 00000e72: PUSH1 0x20 00000e74: ADD 00000e75: PUSH1 0x01 00000e77: DUP3 00000e78: ADD 00000e79: PUSH1 0x00 00000e7b: SWAP1 00000e7c: SLOAD 00000e7d: SWAP1 00000e7e: PUSH2 0x0100 00000e81: EXP 00000e82: SWAP1 00000e83: DIV 00000e84: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e99: AND 00000e9a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000eaf: AND 00000eb0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ec5: AND 00000ec6: DUP2 00000ec7: MSTORE 00000ec8: POP 00000ec9: POP 00000eca: SWAP1 00000ecb: POP 00000ecc: PUSH1 0x00 00000ece: DUP2 00000ecf: PUSH1 0x20 00000ed1: ADD 00000ed2: MLOAD 00000ed3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ee8: AND 00000ee9: PUSH4 0x18160ddd 00000eee: PUSH1 0x40 00000ef0: MLOAD 00000ef1: DUP2 00000ef2: PUSH4 0xffffffff 00000ef7: AND 00000ef8: PUSH1 0xe0 00000efa: SHL 00000efb: DUP2 00000efc: MSTORE 00000efd: PUSH1 0x04 00000eff: ADD 00000f00: PUSH1 0x20 00000f02: PUSH1 0x40 00000f04: MLOAD 00000f05: DUP1 00000f06: DUP4 00000f07: SUB 00000f08: DUP2 00000f09: DUP7 00000f0a: GAS 00000f0b: STATICCALL 00000f0c: ISZERO 00000f0d: DUP1 00000f0e: ISZERO 00000f0f: PUSH2 0x0f1c 00000f12: JUMPI 00000f13: RETURNDATASIZE 00000f14: PUSH1 0x00 00000f16: DUP1 00000f17: RETURNDATACOPY 00000f18: RETURNDATASIZE 00000f19: PUSH1 0x00 00000f1b: REVERT 00000f1c: JUMPDEST 00000f1d: POP 00000f1e: POP 00000f1f: POP 00000f20: POP 00000f21: PUSH1 0x40 00000f23: MLOAD 00000f24: RETURNDATASIZE 00000f25: PUSH1 0x1f 00000f27: NOT 00000f28: PUSH1 0x1f 00000f2a: DUP3 00000f2b: ADD 00000f2c: AND 00000f2d: DUP3 00000f2e: ADD 00000f2f: DUP1 00000f30: PUSH1 0x40 00000f32: MSTORE 00000f33: POP 00000f34: DUP2 00000f35: ADD 00000f36: SWAP1 00000f37: PUSH2 0x0f40 00000f3a: SWAP2 00000f3b: SWAP1 00000f3c: PUSH2 0x36c2 00000f3f: JUMP 00000f40: JUMPDEST 00000f41: SWAP1 00000f42: POP 00000f43: PUSH1 0x00 00000f45: DUP1 00000f46: DUP3 00000f47: SUB 00000f48: PUSH2 0x0f5f 00000f4b: JUMPI 00000f4c: PUSH1 0x64 00000f4e: DUP5 00000f4f: PUSH2 0x0f58 00000f52: SWAP2 00000f53: SWAP1 00000f54: PUSH2 0x371e 00000f57: JUMP 00000f58: JUMPDEST 00000f59: SWAP1 00000f5a: POP 00000f5b: PUSH2 0x0f87 00000f5e: JUMP 00000f5f: JUMPDEST 00000f60: PUSH1 0x00 00000f62: PUSH2 0x0f6a 00000f65: DUP7 00000f66: PUSH2 0x2b0e 00000f69: JUMP 00000f6a: JUMPDEST 00000f6b: SWAP1 00000f6c: POP 00000f6d: DUP1 00000f6e: DUP4 00000f6f: DUP7 00000f70: PUSH2 0x0f79 00000f73: SWAP2 00000f74: SWAP1 00000f75: PUSH2 0x371e 00000f78: JUMP 00000f79: JUMPDEST 00000f7a: PUSH2 0x0f83 00000f7d: SWAP2 00000f7e: SWAP1 00000f7f: PUSH2 0x378f 00000f82: JUMP 00000f83: JUMPDEST 00000f84: SWAP2 00000f85: POP 00000f86: POP 00000f87: JUMPDEST 00000f88: PUSH1 0x00 00000f8a: DUP2 00000f8b: GT 00000f8c: PUSH1 0x40 00000f8e: MLOAD 00000f8f: DUP1 00000f90: PUSH1 0x40 00000f92: ADD 00000f93: PUSH1 0x40 00000f95: MSTORE 00000f96: DUP1 00000f97: PUSH1 0x01 00000f99: DUP2 00000f9a: MSTORE 00000f9b: PUSH1 0x20 00000f9d: ADD 00000f9e: PUSH32 0x3100000000000000000000000000000000000000000000000000000000000000 00000fbf: DUP2 00000fc0: MSTORE 00000fc1: POP 00000fc2: SWAP1 00000fc3: PUSH2 0x1002 00000fc6: JUMPI 00000fc7: PUSH1 0x40 00000fc9: MLOAD 00000fca: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000feb: DUP2 00000fec: MSTORE 00000fed: PUSH1 0x04 00000fef: ADD 00000ff0: PUSH2 0x0ff9 00000ff3: SWAP2 00000ff4: SWAP1 00000ff5: PUSH2 0x31d1 00000ff8: JUMP 00000ff9: JUMPDEST 00000ffa: PUSH1 0x40 00000ffc: MLOAD 00000ffd: DUP1 00000ffe: SWAP2 00000fff: SUB 00001000: SWAP1 00001001: REVERT 00001002: JUMPDEST 00001003: POP 00001004: PUSH2 0x1030 00001007: CALLER 00001008: ADDRESS 00001009: DUP7 0000100a: DUP9 0000100b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001020: AND 00001021: PUSH2 0x2b33 00001024: SWAP1 00001025: SWAP4 00001026: SWAP3 00001027: SWAP2 00001028: SWAP1 00001029: PUSH4 0xffffffff 0000102e: AND 0000102f: JUMP 00001030: JUMPDEST 00001031: DUP3 00001032: PUSH1 0x20 00001034: ADD 00001035: MLOAD 00001036: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000104b: AND 0000104c: PUSH4 0x40c10f19 00001051: CALLER 00001052: DUP4 00001053: PUSH1 0x40 00001055: MLOAD 00001056: DUP4 00001057: PUSH4 0xffffffff 0000105c: AND 0000105d: PUSH1 0xe0 0000105f: SHL 00001060: DUP2 00001061: MSTORE 00001062: PUSH1 0x04 00001064: ADD 00001065: PUSH2 0x106f 00001068: SWAP3 00001069: SWAP2 0000106a: SWAP1 0000106b: PUSH2 0x37c0 0000106e: JUMP 0000106f: JUMPDEST 00001070: PUSH1 0x00 00001072: PUSH1 0x40 00001074: MLOAD 00001075: DUP1 00001076: DUP4 00001077: SUB 00001078: DUP2 00001079: PUSH1 0x00 0000107b: DUP8 0000107c: DUP1 0000107d: EXTCODESIZE 0000107e: ISZERO 0000107f: DUP1 00001080: ISZERO 00001081: PUSH2 0x1089 00001084: JUMPI 00001085: PUSH1 0x00 00001087: DUP1 00001088: REVERT 00001089: JUMPDEST 0000108a: POP 0000108b: GAS 0000108c: CALL 0000108d: ISZERO 0000108e: DUP1 0000108f: ISZERO 00001090: PUSH2 0x109d 00001093: JUMPI 00001094: RETURNDATASIZE 00001095: PUSH1 0x00 00001097: DUP1 00001098: RETURNDATACOPY 00001099: RETURNDATASIZE 0000109a: PUSH1 0x00 0000109c: REVERT 0000109d: JUMPDEST 0000109e: POP 0000109f: POP 000010a0: POP 000010a1: POP 000010a2: PUSH1 0x01 000010a4: PUSH1 0x00 000010a6: CALLER 000010a7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010bc: AND 000010bd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010d2: AND 000010d3: DUP2 000010d4: MSTORE 000010d5: PUSH1 0x20 000010d7: ADD 000010d8: SWAP1 000010d9: DUP2 000010da: MSTORE 000010db: PUSH1 0x20 000010dd: ADD 000010de: PUSH1 0x00 000010e0: KECCAK256 000010e1: PUSH1 0x00 000010e3: ADD 000010e4: PUSH1 0x00 000010e6: SWAP1 000010e7: SLOAD 000010e8: SWAP1 000010e9: PUSH2 0x0100 000010ec: EXP 000010ed: SWAP1 000010ee: DIV 000010ef: PUSH1 0xff 000010f1: AND 000010f2: PUSH2 0x117e 000010f5: JUMPI 000010f6: PUSH1 0x40 000010f8: MLOAD 000010f9: DUP1 000010fa: PUSH1 0x40 000010fc: ADD 000010fd: PUSH1 0x40 000010ff: MSTORE 00001100: DUP1 00001101: PUSH1 0x01 00001103: ISZERO 00001104: ISZERO 00001105: DUP2 00001106: MSTORE 00001107: PUSH1 0x20 00001109: ADD 0000110a: NUMBER 0000110b: DUP2 0000110c: MSTORE 0000110d: POP 0000110e: PUSH1 0x01 00001110: PUSH1 0x00 00001112: CALLER 00001113: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001128: AND 00001129: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000113e: AND 0000113f: DUP2 00001140: MSTORE 00001141: PUSH1 0x20 00001143: ADD 00001144: SWAP1 00001145: DUP2 00001146: MSTORE 00001147: PUSH1 0x20 00001149: ADD 0000114a: PUSH1 0x00 0000114c: KECCAK256 0000114d: PUSH1 0x00 0000114f: DUP3 00001150: ADD 00001151: MLOAD 00001152: DUP2 00001153: PUSH1 0x00 00001155: ADD 00001156: PUSH1 0x00 00001158: PUSH2 0x0100 0000115b: EXP 0000115c: DUP2 0000115d: SLOAD 0000115e: DUP2 0000115f: PUSH1 0xff 00001161: MUL 00001162: NOT 00001163: AND 00001164: SWAP1 00001165: DUP4 00001166: ISZERO 00001167: ISZERO 00001168: MUL 00001169: OR 0000116a: SWAP1 0000116b: SSTORE 0000116c: POP 0000116d: PUSH1 0x20 0000116f: DUP3 00001170: ADD 00001171: MLOAD 00001172: DUP2 00001173: PUSH1 0x01 00001175: ADD 00001176: SSTORE 00001177: SWAP1 00001178: POP 00001179: POP 0000117a: PUSH2 0x11c6 0000117d: JUMP 0000117e: JUMPDEST 0000117f: NUMBER 00001180: PUSH1 0x01 00001182: PUSH1 0x00 00001184: CALLER 00001185: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000119a: AND 0000119b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011b0: AND 000011b1: DUP2 000011b2: MSTORE 000011b3: PUSH1 0x20 000011b5: ADD 000011b6: SWAP1 000011b7: DUP2 000011b8: MSTORE 000011b9: PUSH1 0x20 000011bb: ADD 000011bc: PUSH1 0x00 000011be: KECCAK256 000011bf: PUSH1 0x01 000011c1: ADD 000011c2: DUP2 000011c3: SWAP1 000011c4: SSTORE 000011c5: POP 000011c6: JUMPDEST 000011c7: PUSH32 0xd34c461d783a9885b01b2fa71160857f48963a0ed4514e902adbda302ea80100 000011e8: PUSH1 0x01 000011ea: DUP7 000011eb: CALLER 000011ec: DUP8 000011ed: PUSH1 0x40 000011ef: MLOAD 000011f0: PUSH2 0x11fc 000011f3: SWAP5 000011f4: SWAP4 000011f5: SWAP3 000011f6: SWAP2 000011f7: SWAP1 000011f8: PUSH2 0x37e9 000011fb: JUMP 000011fc: JUMPDEST 000011fd: PUSH1 0x40 000011ff: MLOAD 00001200: DUP1 00001201: SWAP2 00001202: SUB 00001203: SWAP1 00001204: LOG1 00001205: POP 00001206: POP 00001207: POP 00001208: POP 00001209: POP 0000120a: JUMP 0000120b: JUMPDEST 0000120c: PUSH2 0x1235 0000120f: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 00001230: CALLER 00001231: PUSH2 0x188b 00001234: JUMP 00001235: JUMPDEST 00001236: PUSH1 0x40 00001238: MLOAD 00001239: DUP1 0000123a: PUSH1 0x40 0000123c: ADD 0000123d: PUSH1 0x40 0000123f: MSTORE 00001240: DUP1 00001241: PUSH1 0x01 00001243: DUP2 00001244: MSTORE 00001245: PUSH1 0x20 00001247: ADD 00001248: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 00001269: DUP2 0000126a: MSTORE 0000126b: POP 0000126c: SWAP1 0000126d: PUSH2 0x12ac 00001270: JUMPI 00001271: PUSH1 0x40 00001273: MLOAD 00001274: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001295: DUP2 00001296: MSTORE 00001297: PUSH1 0x04 00001299: ADD 0000129a: PUSH2 0x12a3 0000129d: SWAP2 0000129e: SWAP1 0000129f: PUSH2 0x31d1 000012a2: JUMP 000012a3: JUMPDEST 000012a4: PUSH1 0x40 000012a6: MLOAD 000012a7: DUP1 000012a8: SWAP2 000012a9: SUB 000012aa: SWAP1 000012ab: REVERT 000012ac: JUMPDEST 000012ad: POP 000012ae: PUSH2 0x12b6 000012b1: DUP2 000012b2: PUSH2 0x27a6 000012b5: JUMP 000012b6: JUMPDEST 000012b7: PUSH1 0x00 000012b9: DUP1 000012ba: DUP3 000012bb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012d0: AND 000012d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012e6: AND 000012e7: DUP2 000012e8: MSTORE 000012e9: PUSH1 0x20 000012eb: ADD 000012ec: SWAP1 000012ed: DUP2 000012ee: MSTORE 000012ef: PUSH1 0x20 000012f1: ADD 000012f2: PUSH1 0x00 000012f4: KECCAK256 000012f5: PUSH1 0x00 000012f7: ADD 000012f8: PUSH1 0x01 000012fa: SWAP1 000012fb: SLOAD 000012fc: SWAP1 000012fd: PUSH2 0x0100 00001300: EXP 00001301: SWAP1 00001302: DIV 00001303: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001318: AND 00001319: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000132e: AND 0000132f: PUSH4 0xaf35c6c7 00001334: PUSH1 0x40 00001336: MLOAD 00001337: DUP2 00001338: PUSH4 0xffffffff 0000133d: AND 0000133e: PUSH1 0xe0 00001340: SHL 00001341: DUP2 00001342: MSTORE 00001343: PUSH1 0x04 00001345: ADD 00001346: PUSH1 0x00 00001348: PUSH1 0x40 0000134a: MLOAD 0000134b: DUP1 0000134c: DUP4 0000134d: SUB 0000134e: DUP2 0000134f: PUSH1 0x00 00001351: DUP8 00001352: DUP1 00001353: EXTCODESIZE 00001354: ISZERO 00001355: DUP1 00001356: ISZERO 00001357: PUSH2 0x135f 0000135a: JUMPI 0000135b: PUSH1 0x00 0000135d: DUP1 0000135e: REVERT 0000135f: JUMPDEST 00001360: POP 00001361: GAS 00001362: CALL 00001363: ISZERO 00001364: DUP1 00001365: ISZERO 00001366: PUSH2 0x1373 00001369: JUMPI 0000136a: RETURNDATASIZE 0000136b: PUSH1 0x00 0000136d: DUP1 0000136e: RETURNDATACOPY 0000136f: RETURNDATASIZE 00001370: PUSH1 0x00 00001372: REVERT 00001373: JUMPDEST 00001374: POP 00001375: POP 00001376: POP 00001377: POP 00001378: POP 00001379: JUMP 0000137a: JUMPDEST 0000137b: PUSH1 0x64 0000137d: DUP2 0000137e: JUMP 0000137f: JUMPDEST 00001380: PUSH2 0x13a9 00001383: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 000013a4: CALLER 000013a5: PUSH2 0x188b 000013a8: JUMP 000013a9: JUMPDEST 000013aa: PUSH1 0x40 000013ac: MLOAD 000013ad: DUP1 000013ae: PUSH1 0x40 000013b0: ADD 000013b1: PUSH1 0x40 000013b3: MSTORE 000013b4: DUP1 000013b5: PUSH1 0x01 000013b7: DUP2 000013b8: MSTORE 000013b9: PUSH1 0x20 000013bb: ADD 000013bc: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 000013dd: DUP2 000013de: MSTORE 000013df: POP 000013e0: SWAP1 000013e1: PUSH2 0x1420 000013e4: JUMPI 000013e5: PUSH1 0x40 000013e7: MLOAD 000013e8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001409: DUP2 0000140a: MSTORE 0000140b: PUSH1 0x04 0000140d: ADD 0000140e: PUSH2 0x1417 00001411: SWAP2 00001412: SWAP1 00001413: PUSH2 0x31d1 00001416: JUMP 00001417: JUMPDEST 00001418: PUSH1 0x40 0000141a: MLOAD 0000141b: DUP1 0000141c: SWAP2 0000141d: SUB 0000141e: SWAP1 0000141f: REVERT 00001420: JUMPDEST 00001421: POP 00001422: PUSH1 0x00 00001424: DUP1 00001425: DUP5 00001426: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000143b: AND 0000143c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001451: AND 00001452: DUP2 00001453: MSTORE 00001454: PUSH1 0x20 00001456: ADD 00001457: SWAP1 00001458: DUP2 00001459: MSTORE 0000145a: PUSH1 0x20 0000145c: ADD 0000145d: PUSH1 0x00 0000145f: KECCAK256 00001460: PUSH1 0x00 00001462: ADD 00001463: PUSH1 0x00 00001465: SWAP1 00001466: SLOAD 00001467: SWAP1 00001468: PUSH2 0x0100 0000146b: EXP 0000146c: SWAP1 0000146d: DIV 0000146e: PUSH1 0xff 00001470: AND 00001471: ISZERO 00001472: PUSH1 0x40 00001474: MLOAD 00001475: DUP1 00001476: PUSH1 0x40 00001478: ADD 00001479: PUSH1 0x40 0000147b: MSTORE 0000147c: DUP1 0000147d: PUSH1 0x01 0000147f: DUP2 00001480: MSTORE 00001481: PUSH1 0x20 00001483: ADD 00001484: PUSH32 0x3400000000000000000000000000000000000000000000000000000000000000 000014a5: DUP2 000014a6: MSTORE 000014a7: POP 000014a8: SWAP1 000014a9: PUSH2 0x14e8 000014ac: JUMPI 000014ad: PUSH1 0x40 000014af: MLOAD 000014b0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000014d1: DUP2 000014d2: MSTORE 000014d3: PUSH1 0x04 000014d5: ADD 000014d6: PUSH2 0x14df 000014d9: SWAP2 000014da: SWAP1 000014db: PUSH2 0x31d1 000014de: JUMP 000014df: JUMPDEST 000014e0: PUSH1 0x40 000014e2: MLOAD 000014e3: DUP1 000014e4: SWAP2 000014e5: SUB 000014e6: SWAP1 000014e7: REVERT 000014e8: JUMPDEST 000014e9: POP 000014ea: PUSH1 0x40 000014ec: MLOAD 000014ed: DUP1 000014ee: PUSH1 0x60 000014f0: ADD 000014f1: PUSH1 0x40 000014f3: MSTORE 000014f4: DUP1 000014f5: PUSH1 0x01 000014f7: ISZERO 000014f8: ISZERO 000014f9: DUP2 000014fa: MSTORE 000014fb: PUSH1 0x20 000014fd: ADD 000014fe: DUP4 000014ff: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001514: AND 00001515: DUP2 00001516: MSTORE 00001517: PUSH1 0x20 00001519: ADD 0000151a: DUP3 0000151b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001530: AND 00001531: DUP2 00001532: MSTORE 00001533: POP 00001534: PUSH1 0x00 00001536: DUP1 00001537: DUP6 00001538: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000154d: AND 0000154e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001563: AND 00001564: DUP2 00001565: MSTORE 00001566: PUSH1 0x20 00001568: ADD 00001569: SWAP1 0000156a: DUP2 0000156b: MSTORE 0000156c: PUSH1 0x20 0000156e: ADD 0000156f: PUSH1 0x00 00001571: KECCAK256 00001572: PUSH1 0x00 00001574: DUP3 00001575: ADD 00001576: MLOAD 00001577: DUP2 00001578: PUSH1 0x00 0000157a: ADD 0000157b: PUSH1 0x00 0000157d: PUSH2 0x0100 00001580: EXP 00001581: DUP2 00001582: SLOAD 00001583: DUP2 00001584: PUSH1 0xff 00001586: MUL 00001587: NOT 00001588: AND 00001589: SWAP1 0000158a: DUP4 0000158b: ISZERO 0000158c: ISZERO 0000158d: MUL 0000158e: OR 0000158f: SWAP1 00001590: SSTORE 00001591: POP 00001592: PUSH1 0x20 00001594: DUP3 00001595: ADD 00001596: MLOAD 00001597: DUP2 00001598: PUSH1 0x00 0000159a: ADD 0000159b: PUSH1 0x01 0000159d: PUSH2 0x0100 000015a0: EXP 000015a1: DUP2 000015a2: SLOAD 000015a3: DUP2 000015a4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015b9: MUL 000015ba: NOT 000015bb: AND 000015bc: SWAP1 000015bd: DUP4 000015be: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015d3: AND 000015d4: MUL 000015d5: OR 000015d6: SWAP1 000015d7: SSTORE 000015d8: POP 000015d9: PUSH1 0x40 000015db: DUP3 000015dc: ADD 000015dd: MLOAD 000015de: DUP2 000015df: PUSH1 0x01 000015e1: ADD 000015e2: PUSH1 0x00 000015e4: PUSH2 0x0100 000015e7: EXP 000015e8: DUP2 000015e9: SLOAD 000015ea: DUP2 000015eb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001600: MUL 00001601: NOT 00001602: AND 00001603: SWAP1 00001604: DUP4 00001605: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000161a: AND 0000161b: MUL 0000161c: OR 0000161d: SWAP1 0000161e: SSTORE 0000161f: POP 00001620: SWAP1 00001621: POP 00001622: POP 00001623: POP 00001624: POP 00001625: POP 00001626: JUMP 00001627: JUMPDEST 00001628: PUSH2 0x1651 0000162b: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 0000164c: CALLER 0000164d: PUSH2 0x188b 00001650: JUMP 00001651: JUMPDEST 00001652: PUSH1 0x40 00001654: MLOAD 00001655: DUP1 00001656: PUSH1 0x40 00001658: ADD 00001659: PUSH1 0x40 0000165b: MSTORE 0000165c: DUP1 0000165d: PUSH1 0x01 0000165f: DUP2 00001660: MSTORE 00001661: PUSH1 0x20 00001663: ADD 00001664: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 00001685: DUP2 00001686: MSTORE 00001687: POP 00001688: SWAP1 00001689: PUSH2 0x16c8 0000168c: JUMPI 0000168d: PUSH1 0x40 0000168f: MLOAD 00001690: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000016b1: DUP2 000016b2: MSTORE 000016b3: PUSH1 0x04 000016b5: ADD 000016b6: PUSH2 0x16bf 000016b9: SWAP2 000016ba: SWAP1 000016bb: PUSH2 0x31d1 000016be: JUMP 000016bf: JUMPDEST 000016c0: PUSH1 0x40 000016c2: MLOAD 000016c3: DUP1 000016c4: SWAP2 000016c5: SUB 000016c6: SWAP1 000016c7: REVERT 000016c8: JUMPDEST 000016c9: POP 000016ca: PUSH2 0x16d2 000016cd: DUP3 000016ce: PUSH2 0x27a6 000016d1: JUMP 000016d2: JUMPDEST 000016d3: PUSH1 0x00 000016d5: DUP1 000016d6: PUSH1 0x00 000016d8: DUP5 000016d9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000016ee: AND 000016ef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001704: AND 00001705: DUP2 00001706: MSTORE 00001707: PUSH1 0x20 00001709: ADD 0000170a: SWAP1 0000170b: DUP2 0000170c: MSTORE 0000170d: PUSH1 0x20 0000170f: ADD 00001710: PUSH1 0x00 00001712: KECCAK256 00001713: PUSH1 0x40 00001715: MLOAD 00001716: DUP1 00001717: PUSH1 0x60 00001719: ADD 0000171a: PUSH1 0x40 0000171c: MSTORE 0000171d: SWAP1 0000171e: DUP2 0000171f: PUSH1 0x00 00001721: DUP3 00001722: ADD 00001723: PUSH1 0x00 00001725: SWAP1 00001726: SLOAD 00001727: SWAP1 00001728: PUSH2 0x0100 0000172b: EXP 0000172c: SWAP1 0000172d: DIV 0000172e: PUSH1 0xff 00001730: AND 00001731: ISZERO 00001732: ISZERO 00001733: ISZERO 00001734: ISZERO 00001735: DUP2 00001736: MSTORE 00001737: PUSH1 0x20 00001739: ADD 0000173a: PUSH1 0x00 0000173c: DUP3 0000173d: ADD 0000173e: PUSH1 0x01 00001740: SWAP1 00001741: SLOAD 00001742: SWAP1 00001743: PUSH2 0x0100 00001746: EXP 00001747: SWAP1 00001748: DIV 00001749: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000175e: AND 0000175f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001774: AND 00001775: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000178a: AND 0000178b: DUP2 0000178c: MSTORE 0000178d: PUSH1 0x20 0000178f: ADD 00001790: PUSH1 0x01 00001792: DUP3 00001793: ADD 00001794: PUSH1 0x00 00001796: SWAP1 00001797: SLOAD 00001798: SWAP1 00001799: PUSH2 0x0100 0000179c: EXP 0000179d: SWAP1 0000179e: DIV 0000179f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017b4: AND 000017b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017ca: AND 000017cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017e0: AND 000017e1: DUP2 000017e2: MSTORE 000017e3: POP 000017e4: POP 000017e5: SWAP1 000017e6: POP 000017e7: PUSH2 0x1815 000017ea: DUP2 000017eb: PUSH1 0x40 000017ed: ADD 000017ee: MLOAD 000017ef: DUP4 000017f0: DUP6 000017f1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001806: AND 00001807: PUSH2 0x2870 0000180a: SWAP1 0000180b: SWAP3 0000180c: SWAP2 0000180d: SWAP1 0000180e: PUSH4 0xffffffff 00001813: AND 00001814: JUMP 00001815: JUMPDEST 00001816: DUP1 00001817: PUSH1 0x40 00001819: ADD 0000181a: MLOAD 0000181b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001830: AND 00001831: PUSH4 0x4956eaf0 00001836: DUP5 00001837: DUP5 00001838: PUSH1 0x40 0000183a: MLOAD 0000183b: DUP4 0000183c: PUSH4 0xffffffff 00001841: AND 00001842: PUSH1 0xe0 00001844: SHL 00001845: DUP2 00001846: MSTORE 00001847: PUSH1 0x04 00001849: ADD 0000184a: PUSH2 0x1854 0000184d: SWAP3 0000184e: SWAP2 0000184f: SWAP1 00001850: PUSH2 0x3684 00001853: JUMP 00001854: JUMPDEST 00001855: PUSH1 0x00 00001857: PUSH1 0x40 00001859: MLOAD 0000185a: DUP1 0000185b: DUP4 0000185c: SUB 0000185d: DUP2 0000185e: PUSH1 0x00 00001860: DUP8 00001861: DUP1 00001862: EXTCODESIZE 00001863: ISZERO 00001864: DUP1 00001865: ISZERO 00001866: PUSH2 0x186e 00001869: JUMPI 0000186a: PUSH1 0x00 0000186c: DUP1 0000186d: REVERT 0000186e: JUMPDEST 0000186f: POP 00001870: GAS 00001871: CALL 00001872: ISZERO 00001873: DUP1 00001874: ISZERO 00001875: PUSH2 0x1882 00001878: JUMPI 00001879: RETURNDATASIZE 0000187a: PUSH1 0x00 0000187c: DUP1 0000187d: RETURNDATACOPY 0000187e: RETURNDATASIZE 0000187f: PUSH1 0x00 00001881: REVERT 00001882: JUMPDEST 00001883: POP 00001884: POP 00001885: POP 00001886: POP 00001887: POP 00001888: POP 00001889: POP 0000188a: JUMP 0000188b: JUMPDEST 0000188c: PUSH1 0x00 0000188e: DUP1 0000188f: PUSH2 0x1896 00001892: PUSH2 0x277e 00001895: JUMP 00001896: JUMPDEST 00001897: SWAP1 00001898: POP 00001899: DUP1 0000189a: PUSH1 0x00 0000189c: ADD 0000189d: PUSH1 0x00 0000189f: DUP6 000018a0: DUP2 000018a1: MSTORE 000018a2: PUSH1 0x20 000018a4: ADD 000018a5: SWAP1 000018a6: DUP2 000018a7: MSTORE 000018a8: PUSH1 0x20 000018aa: ADD 000018ab: PUSH1 0x00 000018ad: KECCAK256 000018ae: PUSH1 0x00 000018b0: ADD 000018b1: PUSH1 0x00 000018b3: DUP5 000018b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018c9: AND 000018ca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018df: AND 000018e0: DUP2 000018e1: MSTORE 000018e2: PUSH1 0x20 000018e4: ADD 000018e5: SWAP1 000018e6: DUP2 000018e7: MSTORE 000018e8: PUSH1 0x20 000018ea: ADD 000018eb: PUSH1 0x00 000018ed: KECCAK256 000018ee: PUSH1 0x00 000018f0: SWAP1 000018f1: SLOAD 000018f2: SWAP1 000018f3: PUSH2 0x0100 000018f6: EXP 000018f7: SWAP1 000018f8: DIV 000018f9: PUSH1 0xff 000018fb: AND 000018fc: SWAP2 000018fd: POP 000018fe: POP 000018ff: SWAP3 00001900: SWAP2 00001901: POP 00001902: POP 00001903: JUMP 00001904: JUMPDEST 00001905: PUSH1 0x00 00001907: PUSH1 0x01 00001909: PUSH1 0x00 0000190b: DUP4 0000190c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001921: AND 00001922: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001937: AND 00001938: DUP2 00001939: MSTORE 0000193a: PUSH1 0x20 0000193c: ADD 0000193d: SWAP1 0000193e: DUP2 0000193f: MSTORE 00001940: PUSH1 0x20 00001942: ADD 00001943: PUSH1 0x00 00001945: KECCAK256 00001946: PUSH1 0x01 00001948: ADD 00001949: SLOAD 0000194a: SWAP1 0000194b: POP 0000194c: SWAP2 0000194d: SWAP1 0000194e: POP 0000194f: JUMP 00001950: JUMPDEST 00001951: PUSH1 0x00 00001953: DUP1 00001954: SHL 00001955: DUP2 00001956: JUMP 00001957: JUMPDEST 00001958: PUSH2 0x1981 0000195b: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 0000197c: CALLER 0000197d: PUSH2 0x188b 00001980: JUMP 00001981: JUMPDEST 00001982: PUSH1 0x40 00001984: MLOAD 00001985: DUP1 00001986: PUSH1 0x40 00001988: ADD 00001989: PUSH1 0x40 0000198b: MSTORE 0000198c: DUP1 0000198d: PUSH1 0x01 0000198f: DUP2 00001990: MSTORE 00001991: PUSH1 0x20 00001993: ADD 00001994: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 000019b5: DUP2 000019b6: MSTORE 000019b7: POP 000019b8: SWAP1 000019b9: PUSH2 0x19f8 000019bc: JUMPI 000019bd: PUSH1 0x40 000019bf: MLOAD 000019c0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000019e1: DUP2 000019e2: MSTORE 000019e3: PUSH1 0x04 000019e5: ADD 000019e6: PUSH2 0x19ef 000019e9: SWAP2 000019ea: SWAP1 000019eb: PUSH2 0x31d1 000019ee: JUMP 000019ef: JUMPDEST 000019f0: PUSH1 0x40 000019f2: MLOAD 000019f3: DUP1 000019f4: SWAP2 000019f5: SUB 000019f6: SWAP1 000019f7: REVERT 000019f8: JUMPDEST 000019f9: POP 000019fa: PUSH1 0x00 000019fc: PUSH1 0x02 000019fe: PUSH1 0x00 00001a00: PUSH2 0x0100 00001a03: EXP 00001a04: DUP2 00001a05: SLOAD 00001a06: DUP2 00001a07: PUSH1 0xff 00001a09: MUL 00001a0a: NOT 00001a0b: AND 00001a0c: SWAP1 00001a0d: DUP4 00001a0e: ISZERO 00001a0f: ISZERO 00001a10: MUL 00001a11: OR 00001a12: SWAP1 00001a13: SSTORE 00001a14: POP 00001a15: JUMP 00001a16: JUMPDEST 00001a17: PUSH1 0x40 00001a19: MLOAD 00001a1a: DUP1 00001a1b: PUSH1 0x40 00001a1d: ADD 00001a1e: PUSH1 0x40 00001a20: MSTORE 00001a21: DUP1 00001a22: PUSH1 0x01 00001a24: DUP2 00001a25: MSTORE 00001a26: PUSH1 0x20 00001a28: ADD 00001a29: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 00001a4a: DUP2 00001a4b: MSTORE 00001a4c: POP 00001a4d: DUP2 00001a4e: JUMP 00001a4f: JUMPDEST 00001a50: PUSH1 0x00 00001a52: PUSH2 0x1a5a 00001a55: DUP4 00001a56: PUSH2 0x27a6 00001a59: JUMP 00001a5a: JUMPDEST 00001a5b: PUSH1 0x00 00001a5d: DUP1 00001a5e: PUSH1 0x00 00001a60: DUP6 00001a61: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a76: AND 00001a77: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a8c: AND 00001a8d: DUP2 00001a8e: MSTORE 00001a8f: PUSH1 0x20 00001a91: ADD 00001a92: SWAP1 00001a93: DUP2 00001a94: MSTORE 00001a95: PUSH1 0x20 00001a97: ADD 00001a98: PUSH1 0x00 00001a9a: KECCAK256 00001a9b: PUSH1 0x40 00001a9d: MLOAD 00001a9e: DUP1 00001a9f: PUSH1 0x60 00001aa1: ADD 00001aa2: PUSH1 0x40 00001aa4: MSTORE 00001aa5: SWAP1 00001aa6: DUP2 00001aa7: PUSH1 0x00 00001aa9: DUP3 00001aaa: ADD 00001aab: PUSH1 0x00 00001aad: SWAP1 00001aae: SLOAD 00001aaf: SWAP1 00001ab0: PUSH2 0x0100 00001ab3: EXP 00001ab4: SWAP1 00001ab5: DIV 00001ab6: PUSH1 0xff 00001ab8: AND 00001ab9: ISZERO 00001aba: ISZERO 00001abb: ISZERO 00001abc: ISZERO 00001abd: DUP2 00001abe: MSTORE 00001abf: PUSH1 0x20 00001ac1: ADD 00001ac2: PUSH1 0x00 00001ac4: DUP3 00001ac5: ADD 00001ac6: PUSH1 0x01 00001ac8: SWAP1 00001ac9: SLOAD 00001aca: SWAP1 00001acb: PUSH2 0x0100 00001ace: EXP 00001acf: SWAP1 00001ad0: DIV 00001ad1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ae6: AND 00001ae7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001afc: AND 00001afd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b12: AND 00001b13: DUP2 00001b14: MSTORE 00001b15: PUSH1 0x20 00001b17: ADD 00001b18: PUSH1 0x01 00001b1a: DUP3 00001b1b: ADD 00001b1c: PUSH1 0x00 00001b1e: SWAP1 00001b1f: SLOAD 00001b20: SWAP1 00001b21: PUSH2 0x0100 00001b24: EXP 00001b25: SWAP1 00001b26: DIV 00001b27: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b3c: AND 00001b3d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b52: AND 00001b53: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b68: AND 00001b69: DUP2 00001b6a: MSTORE 00001b6b: POP 00001b6c: POP 00001b6d: SWAP1 00001b6e: POP 00001b6f: PUSH1 0x00 00001b71: DUP2 00001b72: PUSH1 0x20 00001b74: ADD 00001b75: MLOAD 00001b76: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b8b: AND 00001b8c: PUSH4 0x70a08231 00001b91: DUP6 00001b92: PUSH1 0x40 00001b94: MLOAD 00001b95: DUP3 00001b96: PUSH4 0xffffffff 00001b9b: AND 00001b9c: PUSH1 0xe0 00001b9e: SHL 00001b9f: DUP2 00001ba0: MSTORE 00001ba1: PUSH1 0x04 00001ba3: ADD 00001ba4: PUSH2 0x1bad 00001ba7: SWAP2 00001ba8: SWAP1 00001ba9: PUSH2 0x35ad 00001bac: JUMP 00001bad: JUMPDEST 00001bae: PUSH1 0x20 00001bb0: PUSH1 0x40 00001bb2: MLOAD 00001bb3: DUP1 00001bb4: DUP4 00001bb5: SUB 00001bb6: DUP2 00001bb7: DUP7 00001bb8: GAS 00001bb9: STATICCALL 00001bba: ISZERO 00001bbb: DUP1 00001bbc: ISZERO 00001bbd: PUSH2 0x1bca 00001bc0: JUMPI 00001bc1: RETURNDATASIZE 00001bc2: PUSH1 0x00 00001bc4: DUP1 00001bc5: RETURNDATACOPY 00001bc6: RETURNDATASIZE 00001bc7: PUSH1 0x00 00001bc9: REVERT 00001bca: JUMPDEST 00001bcb: POP 00001bcc: POP 00001bcd: POP 00001bce: POP 00001bcf: PUSH1 0x40 00001bd1: MLOAD 00001bd2: RETURNDATASIZE 00001bd3: PUSH1 0x1f 00001bd5: NOT 00001bd6: PUSH1 0x1f 00001bd8: DUP3 00001bd9: ADD 00001bda: AND 00001bdb: DUP3 00001bdc: ADD 00001bdd: DUP1 00001bde: PUSH1 0x40 00001be0: MSTORE 00001be1: POP 00001be2: DUP2 00001be3: ADD 00001be4: SWAP1 00001be5: PUSH2 0x1bee 00001be8: SWAP2 00001be9: SWAP1 00001bea: PUSH2 0x36c2 00001bed: JUMP 00001bee: JUMPDEST 00001bef: SWAP1 00001bf0: POP 00001bf1: PUSH1 0x00 00001bf3: DUP3 00001bf4: PUSH1 0x20 00001bf6: ADD 00001bf7: MLOAD 00001bf8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001c0d: AND 00001c0e: PUSH4 0x18160ddd 00001c13: PUSH1 0x40 00001c15: MLOAD 00001c16: DUP2 00001c17: PUSH4 0xffffffff 00001c1c: AND 00001c1d: PUSH1 0xe0 00001c1f: SHL 00001c20: DUP2 00001c21: MSTORE 00001c22: PUSH1 0x04 00001c24: ADD 00001c25: PUSH1 0x20 00001c27: PUSH1 0x40 00001c29: MLOAD 00001c2a: DUP1 00001c2b: DUP4 00001c2c: SUB 00001c2d: DUP2 00001c2e: DUP7 00001c2f: GAS 00001c30: STATICCALL 00001c31: ISZERO 00001c32: DUP1 00001c33: ISZERO 00001c34: PUSH2 0x1c41 00001c37: JUMPI 00001c38: RETURNDATASIZE 00001c39: PUSH1 0x00 00001c3b: DUP1 00001c3c: RETURNDATACOPY 00001c3d: RETURNDATASIZE 00001c3e: PUSH1 0x00 00001c40: REVERT 00001c41: JUMPDEST 00001c42: POP 00001c43: POP 00001c44: POP 00001c45: POP 00001c46: PUSH1 0x40 00001c48: MLOAD 00001c49: RETURNDATASIZE 00001c4a: PUSH1 0x1f 00001c4c: NOT 00001c4d: PUSH1 0x1f 00001c4f: DUP3 00001c50: ADD 00001c51: AND 00001c52: DUP3 00001c53: ADD 00001c54: DUP1 00001c55: PUSH1 0x40 00001c57: MSTORE 00001c58: POP 00001c59: DUP2 00001c5a: ADD 00001c5b: SWAP1 00001c5c: PUSH2 0x1c65 00001c5f: SWAP2 00001c60: SWAP1 00001c61: PUSH2 0x36c2 00001c64: JUMP 00001c65: JUMPDEST 00001c66: SWAP1 00001c67: POP 00001c68: PUSH1 0x00 00001c6a: DUP2 00001c6b: SUB 00001c6c: PUSH2 0x1c7b 00001c6f: JUMPI 00001c70: PUSH1 0x00 00001c72: SWAP4 00001c73: POP 00001c74: POP 00001c75: POP 00001c76: POP 00001c77: PUSH2 0x1ca6 00001c7a: JUMP 00001c7b: JUMPDEST 00001c7c: PUSH1 0x00 00001c7e: PUSH2 0x1c86 00001c81: DUP8 00001c82: PUSH2 0x2b0e 00001c85: JUMP 00001c86: JUMPDEST 00001c87: SWAP1 00001c88: POP 00001c89: DUP2 00001c8a: DUP2 00001c8b: DUP5 00001c8c: PUSH2 0x1c95 00001c8f: SWAP2 00001c90: SWAP1 00001c91: PUSH2 0x371e 00001c94: JUMP 00001c95: JUMPDEST 00001c96: PUSH2 0x1c9f 00001c99: SWAP2 00001c9a: SWAP1 00001c9b: PUSH2 0x378f 00001c9e: JUMP 00001c9f: JUMPDEST 00001ca0: SWAP5 00001ca1: POP 00001ca2: POP 00001ca3: POP 00001ca4: POP 00001ca5: POP 00001ca6: JUMPDEST 00001ca7: SWAP3 00001ca8: SWAP2 00001ca9: POP 00001caa: POP 00001cab: JUMP 00001cac: JUMPDEST 00001cad: PUSH1 0x40 00001caf: MLOAD 00001cb0: DUP1 00001cb1: PUSH1 0x40 00001cb3: ADD 00001cb4: PUSH1 0x40 00001cb6: MSTORE 00001cb7: DUP1 00001cb8: PUSH1 0x01 00001cba: DUP2 00001cbb: MSTORE 00001cbc: PUSH1 0x20 00001cbe: ADD 00001cbf: PUSH32 0x3100000000000000000000000000000000000000000000000000000000000000 00001ce0: DUP2 00001ce1: MSTORE 00001ce2: POP 00001ce3: DUP2 00001ce4: JUMP 00001ce5: JUMPDEST 00001ce6: PUSH2 0x1cee 00001ce9: DUP3 00001cea: PUSH2 0x07aa 00001ced: JUMP 00001cee: JUMPDEST 00001cef: PUSH2 0x1cf7 00001cf2: DUP2 00001cf3: PUSH2 0x28ef 00001cf6: JUMP 00001cf7: JUMPDEST 00001cf8: PUSH2 0x1d01 00001cfb: DUP4 00001cfc: DUP4 00001cfd: PUSH2 0x2a0c 00001d00: JUMP 00001d01: JUMPDEST 00001d02: POP 00001d03: POP 00001d04: POP 00001d05: POP 00001d06: JUMP 00001d07: JUMPDEST 00001d08: PUSH1 0x40 00001d0a: MLOAD 00001d0b: DUP1 00001d0c: PUSH1 0x40 00001d0e: ADD 00001d0f: PUSH1 0x40 00001d11: MSTORE 00001d12: DUP1 00001d13: PUSH1 0x01 00001d15: DUP2 00001d16: MSTORE 00001d17: PUSH1 0x20 00001d19: ADD 00001d1a: PUSH32 0x3600000000000000000000000000000000000000000000000000000000000000 00001d3b: DUP2 00001d3c: MSTORE 00001d3d: POP 00001d3e: DUP2 00001d3f: JUMP 00001d40: JUMPDEST 00001d41: PUSH1 0x40 00001d43: MLOAD 00001d44: DUP1 00001d45: PUSH1 0x40 00001d47: ADD 00001d48: PUSH1 0x40 00001d4a: MSTORE 00001d4b: DUP1 00001d4c: PUSH1 0x01 00001d4e: DUP2 00001d4f: MSTORE 00001d50: PUSH1 0x20 00001d52: ADD 00001d53: PUSH32 0x3300000000000000000000000000000000000000000000000000000000000000 00001d74: DUP2 00001d75: MSTORE 00001d76: POP 00001d77: DUP2 00001d78: JUMP 00001d79: JUMPDEST 00001d7a: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 00001d9b: DUP2 00001d9c: JUMP 00001d9d: JUMPDEST 00001d9e: PUSH1 0x00 00001da0: PUSH2 0x1da8 00001da3: DUP3 00001da4: PUSH2 0x27a6 00001da7: JUMP 00001da8: JUMPDEST 00001da9: PUSH1 0x00 00001dab: DUP1 00001dac: DUP4 00001dad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001dc2: AND 00001dc3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001dd8: AND 00001dd9: DUP2 00001dda: MSTORE 00001ddb: PUSH1 0x20 00001ddd: ADD 00001dde: SWAP1 00001ddf: DUP2 00001de0: MSTORE 00001de1: PUSH1 0x20 00001de3: ADD 00001de4: PUSH1 0x00 00001de6: KECCAK256 00001de7: PUSH1 0x00 00001de9: ADD 00001dea: PUSH1 0x01 00001dec: SWAP1 00001ded: SLOAD 00001dee: SWAP1 00001def: PUSH2 0x0100 00001df2: EXP 00001df3: SWAP1 00001df4: DIV 00001df5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e0a: AND 00001e0b: SWAP1 00001e0c: POP 00001e0d: SWAP2 00001e0e: SWAP1 00001e0f: POP 00001e10: JUMP 00001e11: JUMPDEST 00001e12: PUSH2 0x1e3b 00001e15: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 00001e36: CALLER 00001e37: PUSH2 0x188b 00001e3a: JUMP 00001e3b: JUMPDEST 00001e3c: PUSH1 0x40 00001e3e: MLOAD 00001e3f: DUP1 00001e40: PUSH1 0x40 00001e42: ADD 00001e43: PUSH1 0x40 00001e45: MSTORE 00001e46: DUP1 00001e47: PUSH1 0x01 00001e49: DUP2 00001e4a: MSTORE 00001e4b: PUSH1 0x20 00001e4d: ADD 00001e4e: PUSH32 0x3200000000000000000000000000000000000000000000000000000000000000 00001e6f: DUP2 00001e70: MSTORE 00001e71: POP 00001e72: SWAP1 00001e73: PUSH2 0x1eb2 00001e76: JUMPI 00001e77: PUSH1 0x40 00001e79: MLOAD 00001e7a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001e9b: DUP2 00001e9c: MSTORE 00001e9d: PUSH1 0x04 00001e9f: ADD 00001ea0: PUSH2 0x1ea9 00001ea3: SWAP2 00001ea4: SWAP1 00001ea5: PUSH2 0x31d1 00001ea8: JUMP 00001ea9: JUMPDEST 00001eaa: PUSH1 0x40 00001eac: MLOAD 00001ead: DUP1 00001eae: SWAP2 00001eaf: SUB 00001eb0: SWAP1 00001eb1: REVERT 00001eb2: JUMPDEST 00001eb3: POP 00001eb4: PUSH1 0x01 00001eb6: PUSH1 0x02 00001eb8: PUSH1 0x00 00001eba: PUSH2 0x0100 00001ebd: EXP 00001ebe: DUP2 00001ebf: SLOAD 00001ec0: DUP2 00001ec1: PUSH1 0xff 00001ec3: MUL 00001ec4: NOT 00001ec5: AND 00001ec6: SWAP1 00001ec7: DUP4 00001ec8: ISZERO 00001ec9: ISZERO 00001eca: MUL 00001ecb: OR 00001ecc: SWAP1 00001ecd: SSTORE 00001ece: POP 00001ecf: JUMP 00001ed0: JUMPDEST 00001ed1: PUSH1 0x40 00001ed3: MLOAD 00001ed4: DUP1 00001ed5: PUSH1 0x40 00001ed7: ADD 00001ed8: PUSH1 0x40 00001eda: MSTORE 00001edb: DUP1 00001edc: PUSH1 0x01 00001ede: DUP2 00001edf: MSTORE 00001ee0: PUSH1 0x20 00001ee2: ADD 00001ee3: PUSH32 0x3500000000000000000000000000000000000000000000000000000000000000 00001f04: DUP2 00001f05: MSTORE 00001f06: POP 00001f07: DUP2 00001f08: JUMP 00001f09: JUMPDEST 00001f0a: PUSH2 0x1f12 00001f0d: DUP3 00001f0e: PUSH2 0x27a6 00001f11: JUMP 00001f12: JUMPDEST 00001f13: PUSH1 0x02 00001f15: PUSH1 0x00 00001f17: SWAP1 00001f18: SLOAD 00001f19: SWAP1 00001f1a: PUSH2 0x0100 00001f1d: EXP 00001f1e: SWAP1 00001f1f: DIV 00001f20: PUSH1 0xff 00001f22: AND 00001f23: PUSH1 0x40 00001f25: MLOAD 00001f26: DUP1 00001f27: PUSH1 0x40 00001f29: ADD 00001f2a: PUSH1 0x40 00001f2c: MSTORE 00001f2d: DUP1 00001f2e: PUSH1 0x01 00001f30: DUP2 00001f31: MSTORE 00001f32: PUSH1 0x20 00001f34: ADD 00001f35: PUSH32 0x3700000000000000000000000000000000000000000000000000000000000000 00001f56: DUP2 00001f57: MSTORE 00001f58: POP 00001f59: SWAP1 00001f5a: PUSH2 0x1f99 00001f5d: JUMPI 00001f5e: PUSH1 0x40 00001f60: MLOAD 00001f61: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001f82: DUP2 00001f83: MSTORE 00001f84: PUSH1 0x04 00001f86: ADD 00001f87: PUSH2 0x1f90 00001f8a: SWAP2 00001f8b: SWAP1 00001f8c: PUSH2 0x31d1 00001f8f: JUMP 00001f90: JUMPDEST 00001f91: PUSH1 0x40 00001f93: MLOAD 00001f94: DUP1 00001f95: SWAP2 00001f96: SUB 00001f97: SWAP1 00001f98: REVERT 00001f99: JUMPDEST 00001f9a: POP 00001f9b: PUSH1 0x00 00001f9d: PUSH1 0x01 00001f9f: PUSH1 0x00 00001fa1: CALLER 00001fa2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001fb7: AND 00001fb8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001fcd: AND 00001fce: DUP2 00001fcf: MSTORE 00001fd0: PUSH1 0x20 00001fd2: ADD 00001fd3: SWAP1 00001fd4: DUP2 00001fd5: MSTORE 00001fd6: PUSH1 0x20 00001fd8: ADD 00001fd9: PUSH1 0x00 00001fdb: KECCAK256 00001fdc: PUSH1 0x40 00001fde: MLOAD 00001fdf: DUP1 00001fe0: PUSH1 0x40 00001fe2: ADD 00001fe3: PUSH1 0x40 00001fe5: MSTORE 00001fe6: SWAP1 00001fe7: DUP2 00001fe8: PUSH1 0x00 00001fea: DUP3 00001feb: ADD 00001fec: PUSH1 0x00 00001fee: SWAP1 00001fef: SLOAD 00001ff0: SWAP1 00001ff1: PUSH2 0x0100 00001ff4: EXP 00001ff5: SWAP1 00001ff6: DIV 00001ff7: PUSH1 0xff 00001ff9: AND 00001ffa: ISZERO 00001ffb: ISZERO 00001ffc: ISZERO 00001ffd: ISZERO 00001ffe: DUP2 00001fff: MSTORE 00002000: PUSH1 0x20 00002002: ADD 00002003: PUSH1 0x01 00002005: DUP3 00002006: ADD 00002007: SLOAD 00002008: DUP2 00002009: MSTORE 0000200a: POP 0000200b: POP 0000200c: SWAP1 0000200d: POP 0000200e: PUSH1 0x03 00002010: SLOAD 00002011: DUP2 00002012: PUSH1 0x20 00002014: ADD 00002015: MLOAD 00002016: PUSH2 0x201f 00002019: SWAP2 0000201a: SWAP1 0000201b: PUSH2 0x382e 0000201e: JUMP 0000201f: JUMPDEST 00002020: NUMBER 00002021: GT 00002022: PUSH1 0x40 00002024: MLOAD 00002025: DUP1 00002026: PUSH1 0x40 00002028: ADD 00002029: PUSH1 0x40 0000202b: MSTORE 0000202c: DUP1 0000202d: PUSH1 0x01 0000202f: DUP2 00002030: MSTORE 00002031: PUSH1 0x20 00002033: ADD 00002034: PUSH32 0x3800000000000000000000000000000000000000000000000000000000000000 00002055: DUP2 00002056: MSTORE 00002057: POP 00002058: SWAP1 00002059: PUSH2 0x2098 0000205c: JUMPI 0000205d: PUSH1 0x40 0000205f: MLOAD 00002060: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002081: DUP2 00002082: MSTORE 00002083: PUSH1 0x04 00002085: ADD 00002086: PUSH2 0x208f 00002089: SWAP2 0000208a: SWAP1 0000208b: PUSH2 0x31d1 0000208e: JUMP 0000208f: JUMPDEST 00002090: PUSH1 0x40 00002092: MLOAD 00002093: DUP1 00002094: SWAP2 00002095: SUB 00002096: SWAP1 00002097: REVERT 00002098: JUMPDEST 00002099: POP 0000209a: PUSH1 0x00 0000209c: DUP1 0000209d: PUSH1 0x00 0000209f: DUP6 000020a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020b5: AND 000020b6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020cb: AND 000020cc: DUP2 000020cd: MSTORE 000020ce: PUSH1 0x20 000020d0: ADD 000020d1: SWAP1 000020d2: DUP2 000020d3: MSTORE 000020d4: PUSH1 0x20 000020d6: ADD 000020d7: PUSH1 0x00 000020d9: KECCAK256 000020da: PUSH1 0x40 000020dc: MLOAD 000020dd: DUP1 000020de: PUSH1 0x60 000020e0: ADD 000020e1: PUSH1 0x40 000020e3: MSTORE 000020e4: SWAP1 000020e5: DUP2 000020e6: PUSH1 0x00 000020e8: DUP3 000020e9: ADD 000020ea: PUSH1 0x00 000020ec: SWAP1 000020ed: SLOAD 000020ee: SWAP1 000020ef: PUSH2 0x0100 000020f2: EXP 000020f3: SWAP1 000020f4: DIV 000020f5: PUSH1 0xff 000020f7: AND 000020f8: ISZERO 000020f9: ISZERO 000020fa: ISZERO 000020fb: ISZERO 000020fc: DUP2 000020fd: MSTORE 000020fe: PUSH1 0x20 00002100: ADD 00002101: PUSH1 0x00 00002103: DUP3 00002104: ADD 00002105: PUSH1 0x01 00002107: SWAP1 00002108: SLOAD 00002109: SWAP1 0000210a: PUSH2 0x0100 0000210d: EXP 0000210e: SWAP1 0000210f: DIV 00002110: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002125: AND 00002126: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000213b: AND 0000213c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002151: AND 00002152: DUP2 00002153: MSTORE 00002154: PUSH1 0x20 00002156: ADD 00002157: PUSH1 0x01 00002159: DUP3 0000215a: ADD 0000215b: PUSH1 0x00 0000215d: SWAP1 0000215e: SLOAD 0000215f: SWAP1 00002160: PUSH2 0x0100 00002163: EXP 00002164: SWAP1 00002165: DIV 00002166: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000217b: AND 0000217c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002191: AND 00002192: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000021a7: AND 000021a8: DUP2 000021a9: MSTORE 000021aa: POP 000021ab: POP 000021ac: SWAP1 000021ad: POP 000021ae: PUSH1 0x00 000021b0: PUSH2 0x21b8 000021b3: DUP6 000021b4: PUSH2 0x2bb5 000021b7: JUMP 000021b8: JUMPDEST 000021b9: SWAP1 000021ba: POP 000021bb: PUSH1 0x00 000021bd: PUSH2 0x21c5 000021c0: DUP7 000021c1: PUSH2 0x2b0e 000021c4: JUMP 000021c5: JUMPDEST 000021c6: SWAP1 000021c7: POP 000021c8: PUSH1 0x00 000021ca: DUP4 000021cb: PUSH1 0x20 000021cd: ADD 000021ce: MLOAD 000021cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000021e4: AND 000021e5: PUSH4 0x18160ddd 000021ea: PUSH1 0x40 000021ec: MLOAD 000021ed: DUP2 000021ee: PUSH4 0xffffffff 000021f3: AND 000021f4: PUSH1 0xe0 000021f6: SHL 000021f7: DUP2 000021f8: MSTORE 000021f9: PUSH1 0x04 000021fb: ADD 000021fc: PUSH1 0x20 000021fe: PUSH1 0x40 00002200: MLOAD 00002201: DUP1 00002202: DUP4 00002203: SUB 00002204: DUP2 00002205: DUP7 00002206: GAS 00002207: STATICCALL 00002208: ISZERO 00002209: DUP1 0000220a: ISZERO 0000220b: PUSH2 0x2218 0000220e: JUMPI 0000220f: RETURNDATASIZE 00002210: PUSH1 0x00 00002212: DUP1 00002213: RETURNDATACOPY 00002214: RETURNDATASIZE 00002215: PUSH1 0x00 00002217: REVERT 00002218: JUMPDEST 00002219: POP 0000221a: POP 0000221b: POP 0000221c: POP 0000221d: PUSH1 0x40 0000221f: MLOAD 00002220: RETURNDATASIZE 00002221: PUSH1 0x1f 00002223: NOT 00002224: PUSH1 0x1f 00002226: DUP3 00002227: ADD 00002228: AND 00002229: DUP3 0000222a: ADD 0000222b: DUP1 0000222c: PUSH1 0x40 0000222e: MSTORE 0000222f: POP 00002230: DUP2 00002231: ADD 00002232: SWAP1 00002233: PUSH2 0x223c 00002236: SWAP2 00002237: SWAP1 00002238: PUSH2 0x36c2 0000223b: JUMP 0000223c: JUMPDEST 0000223d: SWAP1 0000223e: POP 0000223f: PUSH1 0x00 00002241: DUP2 00002242: DUP4 00002243: DUP9 00002244: PUSH2 0x224d 00002247: SWAP2 00002248: SWAP1 00002249: PUSH2 0x371e 0000224c: JUMP 0000224d: JUMPDEST 0000224e: PUSH2 0x2257 00002251: SWAP2 00002252: SWAP1 00002253: PUSH2 0x378f 00002256: JUMP 00002257: JUMPDEST 00002258: SWAP1 00002259: POP 0000225a: PUSH1 0x00 0000225c: DUP2 0000225d: GT 0000225e: PUSH1 0x40 00002260: MLOAD 00002261: DUP1 00002262: PUSH1 0x40 00002264: ADD 00002265: PUSH1 0x40 00002267: MSTORE 00002268: DUP1 00002269: PUSH1 0x01 0000226b: DUP2 0000226c: MSTORE 0000226d: PUSH1 0x20 0000226f: ADD 00002270: PUSH32 0x3100000000000000000000000000000000000000000000000000000000000000 00002291: DUP2 00002292: MSTORE 00002293: POP 00002294: SWAP1 00002295: PUSH2 0x22d4 00002298: JUMPI 00002299: PUSH1 0x40 0000229b: MLOAD 0000229c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000022bd: DUP2 000022be: MSTORE 000022bf: PUSH1 0x04 000022c1: ADD 000022c2: PUSH2 0x22cb 000022c5: SWAP2 000022c6: SWAP1 000022c7: PUSH2 0x31d1 000022ca: JUMP 000022cb: JUMPDEST 000022cc: PUSH1 0x40 000022ce: MLOAD 000022cf: DUP1 000022d0: SWAP2 000022d1: SUB 000022d2: SWAP1 000022d3: REVERT 000022d4: JUMPDEST 000022d5: POP 000022d6: DUP1 000022d7: DUP5 000022d8: LT 000022d9: ISZERO 000022da: PUSH2 0x2447 000022dd: JUMPI 000022de: PUSH1 0x00 000022e0: DUP6 000022e1: PUSH1 0x40 000022e3: ADD 000022e4: MLOAD 000022e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000022fa: AND 000022fb: PUSH4 0x5768adcf 00002300: DUP11 00002301: PUSH1 0x40 00002303: MLOAD 00002304: DUP3 00002305: PUSH4 0xffffffff 0000230a: AND 0000230b: PUSH1 0xe0 0000230d: SHL 0000230e: DUP2 0000230f: MSTORE 00002310: PUSH1 0x04 00002312: ADD 00002313: PUSH2 0x231c 00002316: SWAP2 00002317: SWAP1 00002318: PUSH2 0x3627 0000231b: JUMP 0000231c: JUMPDEST 0000231d: PUSH1 0x20 0000231f: PUSH1 0x40 00002321: MLOAD 00002322: DUP1 00002323: DUP4 00002324: SUB 00002325: DUP2 00002326: DUP7 00002327: GAS 00002328: STATICCALL 00002329: ISZERO 0000232a: DUP1 0000232b: ISZERO 0000232c: PUSH2 0x2339 0000232f: JUMPI 00002330: RETURNDATASIZE 00002331: PUSH1 0x00 00002333: DUP1 00002334: RETURNDATACOPY 00002335: RETURNDATASIZE 00002336: PUSH1 0x00 00002338: REVERT 00002339: JUMPDEST 0000233a: POP 0000233b: POP 0000233c: POP 0000233d: POP 0000233e: PUSH1 0x40 00002340: MLOAD 00002341: RETURNDATASIZE 00002342: PUSH1 0x1f 00002344: NOT 00002345: PUSH1 0x1f 00002347: DUP3 00002348: ADD 00002349: AND 0000234a: DUP3 0000234b: ADD 0000234c: DUP1 0000234d: PUSH1 0x40 0000234f: MSTORE 00002350: POP 00002351: DUP2 00002352: ADD 00002353: SWAP1 00002354: PUSH2 0x235d 00002357: SWAP2 00002358: SWAP1 00002359: PUSH2 0x3657 0000235c: JUMP 0000235d: JUMPDEST 0000235e: SWAP1 0000235f: POP 00002360: PUSH1 0x00 00002362: DUP6 00002363: DUP4 00002364: PUSH2 0x236d 00002367: SWAP2 00002368: SWAP1 00002369: PUSH2 0x3862 0000236c: JUMP 0000236d: JUMPDEST 0000236e: SWAP1 0000236f: POP 00002370: PUSH1 0x00 00002372: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002387: AND 00002388: DUP3 00002389: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000239e: AND 0000239f: EQ 000023a0: PUSH2 0x23d3 000023a3: JUMPI 000023a4: PUSH2 0x23d2 000023a7: DUP8 000023a8: PUSH1 0x40 000023aa: ADD 000023ab: MLOAD 000023ac: DUP3 000023ad: DUP5 000023ae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000023c3: AND 000023c4: PUSH2 0x2870 000023c7: SWAP1 000023c8: SWAP3 000023c9: SWAP2 000023ca: SWAP1 000023cb: PUSH4 0xffffffff 000023d0: AND 000023d1: JUMP 000023d2: JUMPDEST 000023d3: JUMPDEST 000023d4: DUP7 000023d5: PUSH1 0x40 000023d7: ADD 000023d8: MLOAD 000023d9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000023ee: AND 000023ef: PUSH4 0xabe7f1ab 000023f4: DUP12 000023f5: DUP4 000023f6: PUSH1 0x40 000023f8: MLOAD 000023f9: DUP4 000023fa: PUSH4 0xffffffff 000023ff: AND 00002400: PUSH1 0xe0 00002402: SHL 00002403: DUP2 00002404: MSTORE 00002405: PUSH1 0x04 00002407: ADD 00002408: PUSH2 0x2412 0000240b: SWAP3 0000240c: SWAP2 0000240d: SWAP1 0000240e: PUSH2 0x3684 00002411: JUMP 00002412: JUMPDEST 00002413: PUSH1 0x00 00002415: PUSH1 0x40 00002417: MLOAD 00002418: DUP1 00002419: DUP4 0000241a: SUB 0000241b: DUP2 0000241c: PUSH1 0x00 0000241e: DUP8 0000241f: DUP1 00002420: EXTCODESIZE 00002421: ISZERO 00002422: DUP1 00002423: ISZERO 00002424: PUSH2 0x242c 00002427: JUMPI 00002428: PUSH1 0x00 0000242a: DUP1 0000242b: REVERT 0000242c: JUMPDEST 0000242d: POP 0000242e: GAS 0000242f: CALL 00002430: ISZERO 00002431: DUP1 00002432: ISZERO 00002433: PUSH2 0x2440 00002436: JUMPI 00002437: RETURNDATASIZE 00002438: PUSH1 0x00 0000243a: DUP1 0000243b: RETURNDATACOPY 0000243c: RETURNDATASIZE 0000243d: PUSH1 0x00 0000243f: REVERT 00002440: JUMPDEST 00002441: POP 00002442: POP 00002443: POP 00002444: POP 00002445: POP 00002446: POP 00002447: JUMPDEST 00002448: DUP5 00002449: PUSH1 0x20 0000244b: ADD 0000244c: MLOAD 0000244d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002462: AND 00002463: PUSH4 0x9dc29fac 00002468: CALLER 00002469: DUP10 0000246a: PUSH1 0x40 0000246c: MLOAD 0000246d: DUP4 0000246e: PUSH4 0xffffffff 00002473: AND 00002474: PUSH1 0xe0 00002476: SHL 00002477: DUP2 00002478: MSTORE 00002479: PUSH1 0x04 0000247b: ADD 0000247c: PUSH2 0x2486 0000247f: SWAP3 00002480: SWAP2 00002481: SWAP1 00002482: PUSH2 0x37c0 00002485: JUMP 00002486: JUMPDEST 00002487: PUSH1 0x00 00002489: PUSH1 0x40 0000248b: MLOAD 0000248c: DUP1 0000248d: DUP4 0000248e: SUB 0000248f: DUP2 00002490: PUSH1 0x00 00002492: DUP8 00002493: DUP1 00002494: EXTCODESIZE 00002495: ISZERO 00002496: DUP1 00002497: ISZERO 00002498: PUSH2 0x24a0 0000249b: JUMPI 0000249c: PUSH1 0x00 0000249e: DUP1 0000249f: REVERT 000024a0: JUMPDEST 000024a1: POP 000024a2: GAS 000024a3: CALL 000024a4: ISZERO 000024a5: DUP1 000024a6: ISZERO 000024a7: PUSH2 0x24b4 000024aa: JUMPI 000024ab: RETURNDATASIZE 000024ac: PUSH1 0x00 000024ae: DUP1 000024af: RETURNDATACOPY 000024b0: RETURNDATASIZE 000024b1: PUSH1 0x00 000024b3: REVERT 000024b4: JUMPDEST 000024b5: POP 000024b6: POP 000024b7: POP 000024b8: POP 000024b9: PUSH2 0x24e3 000024bc: CALLER 000024bd: DUP3 000024be: DUP11 000024bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000024d4: AND 000024d5: PUSH2 0x2870 000024d8: SWAP1 000024d9: SWAP3 000024da: SWAP2 000024db: SWAP1 000024dc: PUSH4 0xffffffff 000024e1: AND 000024e2: JUMP 000024e3: JUMPDEST 000024e4: PUSH32 0xd34c461d783a9885b01b2fa71160857f48963a0ed4514e902adbda302ea80100 00002505: PUSH1 0x00 00002507: DUP10 00002508: CALLER 00002509: DUP5 0000250a: PUSH1 0x40 0000250c: MLOAD 0000250d: PUSH2 0x2519 00002510: SWAP5 00002511: SWAP4 00002512: SWAP3 00002513: SWAP2 00002514: SWAP1 00002515: PUSH2 0x37e9 00002518: JUMP 00002519: JUMPDEST 0000251a: PUSH1 0x40 0000251c: MLOAD 0000251d: DUP1 0000251e: SWAP2 0000251f: SUB 00002520: SWAP1 00002521: LOG1 00002522: POP 00002523: POP 00002524: POP 00002525: POP 00002526: POP 00002527: POP 00002528: POP 00002529: POP 0000252a: JUMP 0000252b: JUMPDEST 0000252c: PUSH1 0x00 0000252e: PUSH2 0x2535 00002531: PUSH2 0x2c38 00002534: JUMP 00002535: JUMPDEST 00002536: SWAP1 00002537: POP 00002538: PUSH1 0x00 0000253a: DUP2 0000253b: PUSH1 0x00 0000253d: ADD 0000253e: PUSH1 0x08 00002540: SWAP1 00002541: SLOAD 00002542: SWAP1 00002543: PUSH2 0x0100 00002546: EXP 00002547: SWAP1 00002548: DIV 00002549: PUSH1 0xff 0000254b: AND 0000254c: ISZERO 0000254d: SWAP1 0000254e: POP 0000254f: PUSH1 0x00 00002551: DUP3 00002552: PUSH1 0x00 00002554: ADD 00002555: PUSH1 0x00 00002557: SWAP1 00002558: SLOAD 00002559: SWAP1 0000255a: PUSH2 0x0100 0000255d: EXP 0000255e: SWAP1 0000255f: DIV 00002560: PUSH8 0xffffffffffffffff 00002569: AND 0000256a: SWAP1 0000256b: POP 0000256c: PUSH1 0x00 0000256e: DUP1 0000256f: DUP3 00002570: PUSH8 0xffffffffffffffff 00002579: AND 0000257a: EQ 0000257b: DUP1 0000257c: ISZERO 0000257d: PUSH2 0x2583 00002580: JUMPI 00002581: POP 00002582: DUP3 00002583: JUMPDEST 00002584: SWAP1 00002585: POP 00002586: PUSH1 0x00 00002588: PUSH1 0x01 0000258a: DUP4 0000258b: PUSH8 0xffffffffffffffff 00002594: AND 00002595: EQ 00002596: DUP1 00002597: ISZERO 00002598: PUSH2 0x25b8 0000259b: JUMPI 0000259c: POP 0000259d: PUSH1 0x00 0000259f: ADDRESS 000025a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000025b5: AND 000025b6: EXTCODESIZE 000025b7: EQ 000025b8: JUMPDEST 000025b9: SWAP1 000025ba: POP 000025bb: DUP2 000025bc: ISZERO 000025bd: DUP1 000025be: ISZERO 000025bf: PUSH2 0x25c6 000025c2: JUMPI 000025c3: POP 000025c4: DUP1 000025c5: ISZERO 000025c6: JUMPDEST 000025c7: ISZERO 000025c8: PUSH2 0x25fd 000025cb: JUMPI 000025cc: PUSH1 0x40 000025ce: MLOAD 000025cf: PUSH32 0xf92ee8a900000000000000000000000000000000000000000000000000000000 000025f0: DUP2 000025f1: MSTORE 000025f2: PUSH1 0x04 000025f4: ADD 000025f5: PUSH1 0x40 000025f7: MLOAD 000025f8: DUP1 000025f9: SWAP2 000025fa: SUB 000025fb: SWAP1 000025fc: REVERT 000025fd: JUMPDEST 000025fe: PUSH1 0x01 00002600: DUP6 00002601: PUSH1 0x00 00002603: ADD 00002604: PUSH1 0x00 00002606: PUSH2 0x0100 00002609: EXP 0000260a: DUP2 0000260b: SLOAD 0000260c: DUP2 0000260d: PUSH8 0xffffffffffffffff 00002616: MUL 00002617: NOT 00002618: AND 00002619: SWAP1 0000261a: DUP4 0000261b: PUSH8 0xffffffffffffffff 00002624: AND 00002625: MUL 00002626: OR 00002627: SWAP1 00002628: SSTORE 00002629: POP 0000262a: DUP4 0000262b: ISZERO 0000262c: PUSH2 0x264d 0000262f: JUMPI 00002630: PUSH1 0x01 00002632: DUP6 00002633: PUSH1 0x00 00002635: ADD 00002636: PUSH1 0x08 00002638: PUSH2 0x0100 0000263b: EXP 0000263c: DUP2 0000263d: SLOAD 0000263e: DUP2 0000263f: PUSH1 0xff 00002641: MUL 00002642: NOT 00002643: AND 00002644: SWAP1 00002645: DUP4 00002646: ISZERO 00002647: ISZERO 00002648: MUL 00002649: OR 0000264a: SWAP1 0000264b: SSTORE 0000264c: POP 0000264d: JUMPDEST 0000264e: PUSH2 0x2655 00002651: PUSH2 0x2c60 00002654: JUMP 00002655: JUMPDEST 00002656: PUSH2 0x2662 00002659: PUSH1 0x00 0000265b: DUP1 0000265c: SHL 0000265d: CALLER 0000265e: PUSH2 0x2903 00002661: JUMP 00002662: JUMPDEST 00002663: POP 00002664: PUSH2 0x268d 00002667: PUSH32 0xb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e 00002688: CALLER 00002689: PUSH2 0x2903 0000268c: JUMP 0000268d: JUMPDEST 0000268e: POP 0000268f: PUSH1 0x00 00002691: PUSH1 0x02 00002693: PUSH1 0x00 00002695: PUSH2 0x0100 00002698: EXP 00002699: DUP2 0000269a: SLOAD 0000269b: DUP2 0000269c: PUSH1 0xff 0000269e: MUL 0000269f: NOT 000026a0: AND 000026a1: SWAP1 000026a2: DUP4 000026a3: ISZERO 000026a4: ISZERO 000026a5: MUL 000026a6: OR 000026a7: SWAP1 000026a8: SSTORE 000026a9: POP 000026aa: DUP6 000026ab: PUSH1 0x03 000026ad: DUP2 000026ae: SWAP1 000026af: SSTORE 000026b0: POP 000026b1: DUP4 000026b2: ISZERO 000026b3: PUSH2 0x270c 000026b6: JUMPI 000026b7: PUSH1 0x00 000026b9: DUP6 000026ba: PUSH1 0x00 000026bc: ADD 000026bd: PUSH1 0x08 000026bf: PUSH2 0x0100 000026c2: EXP 000026c3: DUP2 000026c4: SLOAD 000026c5: DUP2 000026c6: PUSH1 0xff 000026c8: MUL 000026c9: NOT 000026ca: AND 000026cb: SWAP1 000026cc: DUP4 000026cd: ISZERO 000026ce: ISZERO 000026cf: MUL 000026d0: OR 000026d1: SWAP1 000026d2: SSTORE 000026d3: POP 000026d4: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2 000026f5: PUSH1 0x01 000026f7: PUSH1 0x40 000026f9: MLOAD 000026fa: PUSH2 0x2703 000026fd: SWAP2 000026fe: SWAP1 000026ff: PUSH2 0x38e5 00002702: JUMP 00002703: JUMPDEST 00002704: PUSH1 0x40 00002706: MLOAD 00002707: DUP1 00002708: SWAP2 00002709: SUB 0000270a: SWAP1 0000270b: LOG1 0000270c: JUMPDEST 0000270d: POP 0000270e: POP 0000270f: POP 00002710: POP 00002711: POP 00002712: POP 00002713: JUMP 00002714: JUMPDEST 00002715: PUSH1 0x00 00002717: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000 00002738: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002755: NOT 00002756: AND 00002757: DUP3 00002758: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002775: NOT 00002776: AND 00002777: EQ 00002778: SWAP1 00002779: POP 0000277a: SWAP2 0000277b: SWAP1 0000277c: POP 0000277d: JUMP 0000277e: JUMPDEST 0000277f: PUSH1 0x00 00002781: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 000027a2: SWAP1 000027a3: POP 000027a4: SWAP1 000027a5: JUMP 000027a6: JUMPDEST 000027a7: PUSH1 0x00 000027a9: DUP1 000027aa: DUP3 000027ab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000027c0: AND 000027c1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000027d6: AND 000027d7: DUP2 000027d8: MSTORE 000027d9: PUSH1 0x20 000027db: ADD 000027dc: SWAP1 000027dd: DUP2 000027de: MSTORE 000027df: PUSH1 0x20 000027e1: ADD 000027e2: PUSH1 0x00 000027e4: KECCAK256 000027e5: PUSH1 0x00 000027e7: ADD 000027e8: PUSH1 0x00 000027ea: SWAP1 000027eb: SLOAD 000027ec: SWAP1 000027ed: PUSH2 0x0100 000027f0: EXP 000027f1: SWAP1 000027f2: DIV 000027f3: PUSH1 0xff 000027f5: AND 000027f6: PUSH1 0x40 000027f8: MLOAD 000027f9: DUP1 000027fa: PUSH1 0x40 000027fc: ADD 000027fd: PUSH1 0x40 000027ff: MSTORE 00002800: DUP1 00002801: PUSH1 0x01 00002803: DUP2 00002804: MSTORE 00002805: PUSH1 0x20 00002807: ADD 00002808: PUSH32 0x3300000000000000000000000000000000000000000000000000000000000000 00002829: DUP2 0000282a: MSTORE 0000282b: POP 0000282c: SWAP1 0000282d: PUSH2 0x286c 00002830: JUMPI 00002831: PUSH1 0x40 00002833: MLOAD 00002834: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002855: DUP2 00002856: MSTORE 00002857: PUSH1 0x04 00002859: ADD 0000285a: PUSH2 0x2863 0000285d: SWAP2 0000285e: SWAP1 0000285f: PUSH2 0x31d1 00002862: JUMP 00002863: JUMPDEST 00002864: PUSH1 0x40 00002866: MLOAD 00002867: DUP1 00002868: SWAP2 00002869: SUB 0000286a: SWAP1 0000286b: REVERT 0000286c: JUMPDEST 0000286d: POP 0000286e: POP 0000286f: JUMP 00002870: JUMPDEST 00002871: PUSH2 0x28ea 00002874: DUP4 00002875: DUP5 00002876: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000288b: AND 0000288c: PUSH4 0xa9059cbb 00002891: DUP6 00002892: DUP6 00002893: PUSH1 0x40 00002895: MLOAD 00002896: PUSH1 0x24 00002898: ADD 00002899: PUSH2 0x28a3 0000289c: SWAP3 0000289d: SWAP2 0000289e: SWAP1 0000289f: PUSH2 0x37c0 000028a2: JUMP 000028a3: JUMPDEST 000028a4: PUSH1 0x40 000028a6: MLOAD 000028a7: PUSH1 0x20 000028a9: DUP2 000028aa: DUP4 000028ab: SUB 000028ac: SUB 000028ad: DUP2 000028ae: MSTORE 000028af: SWAP1 000028b0: PUSH1 0x40 000028b2: MSTORE 000028b3: SWAP2 000028b4: POP 000028b5: PUSH1 0xe0 000028b7: SHL 000028b8: PUSH1 0x20 000028ba: DUP3 000028bb: ADD 000028bc: DUP1 000028bd: MLOAD 000028be: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000028db: DUP4 000028dc: DUP2 000028dd: DUP4 000028de: AND 000028df: OR 000028e0: DUP4 000028e1: MSTORE 000028e2: POP 000028e3: POP 000028e4: POP 000028e5: POP 000028e6: PUSH2 0x2c6a 000028e9: JUMP 000028ea: JUMPDEST 000028eb: POP 000028ec: POP 000028ed: POP 000028ee: JUMP 000028ef: JUMPDEST 000028f0: PUSH2 0x2900 000028f3: DUP2 000028f4: PUSH2 0x28fb 000028f7: PUSH2 0x2a04 000028fa: JUMP 000028fb: JUMPDEST 000028fc: PUSH2 0x2d01 000028ff: JUMP 00002900: JUMPDEST 00002901: POP 00002902: JUMP 00002903: JUMPDEST 00002904: PUSH1 0x00 00002906: DUP1 00002907: PUSH2 0x290e 0000290a: PUSH2 0x277e 0000290d: JUMP 0000290e: JUMPDEST 0000290f: SWAP1 00002910: POP 00002911: PUSH2 0x291a 00002914: DUP5 00002915: DUP5 00002916: PUSH2 0x188b 00002919: JUMP 0000291a: JUMPDEST 0000291b: PUSH2 0x29f8 0000291e: JUMPI 0000291f: PUSH1 0x01 00002921: DUP2 00002922: PUSH1 0x00 00002924: ADD 00002925: PUSH1 0x00 00002927: DUP7 00002928: DUP2 00002929: MSTORE 0000292a: PUSH1 0x20 0000292c: ADD 0000292d: SWAP1 0000292e: DUP2 0000292f: MSTORE 00002930: PUSH1 0x20 00002932: ADD 00002933: PUSH1 0x00 00002935: KECCAK256 00002936: PUSH1 0x00 00002938: ADD 00002939: PUSH1 0x00 0000293b: DUP6 0000293c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002951: AND 00002952: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002967: AND 00002968: DUP2 00002969: MSTORE 0000296a: PUSH1 0x20 0000296c: ADD 0000296d: SWAP1 0000296e: DUP2 0000296f: MSTORE 00002970: PUSH1 0x20 00002972: ADD 00002973: PUSH1 0x00 00002975: KECCAK256 00002976: PUSH1 0x00 00002978: PUSH2 0x0100 0000297b: EXP 0000297c: DUP2 0000297d: SLOAD 0000297e: DUP2 0000297f: PUSH1 0xff 00002981: MUL 00002982: NOT 00002983: AND 00002984: SWAP1 00002985: DUP4 00002986: ISZERO 00002987: ISZERO 00002988: MUL 00002989: OR 0000298a: SWAP1 0000298b: SSTORE 0000298c: POP 0000298d: PUSH2 0x2994 00002990: PUSH2 0x2a04 00002993: JUMP 00002994: JUMPDEST 00002995: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000029aa: AND 000029ab: DUP4 000029ac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000029c1: AND 000029c2: DUP6 000029c3: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d 000029e4: PUSH1 0x40 000029e6: MLOAD 000029e7: PUSH1 0x40 000029e9: MLOAD 000029ea: DUP1 000029eb: SWAP2 000029ec: SUB 000029ed: SWAP1 000029ee: LOG4 000029ef: PUSH1 0x01 000029f1: SWAP2 000029f2: POP 000029f3: POP 000029f4: PUSH2 0x29fe 000029f7: JUMP 000029f8: JUMPDEST 000029f9: PUSH1 0x00 000029fb: SWAP2 000029fc: POP 000029fd: POP 000029fe: JUMPDEST 000029ff: SWAP3 00002a00: SWAP2 00002a01: POP 00002a02: POP 00002a03: JUMP 00002a04: JUMPDEST 00002a05: PUSH1 0x00 00002a07: CALLER 00002a08: SWAP1 00002a09: POP 00002a0a: SWAP1 00002a0b: JUMP 00002a0c: JUMPDEST 00002a0d: PUSH1 0x00 00002a0f: DUP1 00002a10: PUSH2 0x2a17 00002a13: PUSH2 0x277e 00002a16: JUMP 00002a17: JUMPDEST 00002a18: SWAP1 00002a19: POP 00002a1a: PUSH2 0x2a23 00002a1d: DUP5 00002a1e: DUP5 00002a1f: PUSH2 0x188b 00002a22: JUMP 00002a23: JUMPDEST 00002a24: ISZERO 00002a25: PUSH2 0x2b02 00002a28: JUMPI 00002a29: PUSH1 0x00 00002a2b: DUP2 00002a2c: PUSH1 0x00 00002a2e: ADD 00002a2f: PUSH1 0x00 00002a31: DUP7 00002a32: DUP2 00002a33: MSTORE 00002a34: PUSH1 0x20 00002a36: ADD 00002a37: SWAP1 00002a38: DUP2 00002a39: MSTORE 00002a3a: PUSH1 0x20 00002a3c: ADD 00002a3d: PUSH1 0x00 00002a3f: KECCAK256 00002a40: PUSH1 0x00 00002a42: ADD 00002a43: PUSH1 0x00 00002a45: DUP6 00002a46: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a5b: AND 00002a5c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002a71: AND 00002a72: DUP2 00002a73: MSTORE 00002a74: PUSH1 0x20 00002a76: ADD 00002a77: SWAP1 00002a78: DUP2 00002a79: MSTORE 00002a7a: PUSH1 0x20 00002a7c: ADD 00002a7d: PUSH1 0x00 00002a7f: KECCAK256 00002a80: PUSH1 0x00 00002a82: PUSH2 0x0100 00002a85: EXP 00002a86: DUP2 00002a87: SLOAD 00002a88: DUP2 00002a89: PUSH1 0xff 00002a8b: MUL 00002a8c: NOT 00002a8d: AND 00002a8e: SWAP1 00002a8f: DUP4 00002a90: ISZERO 00002a91: ISZERO 00002a92: MUL 00002a93: OR 00002a94: SWAP1 00002a95: SSTORE 00002a96: POP 00002a97: PUSH2 0x2a9e 00002a9a: PUSH2 0x2a04 00002a9d: JUMP 00002a9e: JUMPDEST 00002a9f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002ab4: AND 00002ab5: DUP4 00002ab6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002acb: AND 00002acc: DUP6 00002acd: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b 00002aee: PUSH1 0x40 00002af0: MLOAD 00002af1: PUSH1 0x40 00002af3: MLOAD 00002af4: DUP1 00002af5: SWAP2 00002af6: SUB 00002af7: SWAP1 00002af8: LOG4 00002af9: PUSH1 0x01 00002afb: SWAP2 00002afc: POP 00002afd: POP 00002afe: PUSH2 0x2b08 00002b01: JUMP 00002b02: JUMPDEST 00002b03: PUSH1 0x00 00002b05: SWAP2 00002b06: POP 00002b07: POP 00002b08: JUMPDEST 00002b09: SWAP3 00002b0a: SWAP2 00002b0b: POP 00002b0c: POP 00002b0d: JUMP 00002b0e: JUMPDEST 00002b0f: PUSH1 0x00 00002b11: PUSH2 0x2b19 00002b14: DUP3 00002b15: PUSH2 0x2d52 00002b18: JUMP 00002b19: JUMPDEST 00002b1a: PUSH2 0x2b22 00002b1d: DUP4 00002b1e: PUSH2 0x2bb5 00002b21: JUMP 00002b22: JUMPDEST 00002b23: PUSH2 0x2b2c 00002b26: SWAP2 00002b27: SWAP1 00002b28: PUSH2 0x382e 00002b2b: JUMP 00002b2c: JUMPDEST 00002b2d: SWAP1 00002b2e: POP 00002b2f: SWAP2 00002b30: SWAP1 00002b31: POP 00002b32: JUMP 00002b33: JUMPDEST 00002b34: PUSH2 0x2baf 00002b37: DUP5 00002b38: DUP6 00002b39: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b4e: AND 00002b4f: PUSH4 0x23b872dd 00002b54: DUP7 00002b55: DUP7 00002b56: DUP7 00002b57: PUSH1 0x40 00002b59: MLOAD 00002b5a: PUSH1 0x24 00002b5c: ADD 00002b5d: PUSH2 0x2b68 00002b60: SWAP4 00002b61: SWAP3 00002b62: SWAP2 00002b63: SWAP1 00002b64: PUSH2 0x3900 00002b67: JUMP 00002b68: JUMPDEST 00002b69: PUSH1 0x40 00002b6b: MLOAD 00002b6c: PUSH1 0x20 00002b6e: DUP2 00002b6f: DUP4 00002b70: SUB 00002b71: SUB 00002b72: DUP2 00002b73: MSTORE 00002b74: SWAP1 00002b75: PUSH1 0x40 00002b77: MSTORE 00002b78: SWAP2 00002b79: POP 00002b7a: PUSH1 0xe0 00002b7c: SHL 00002b7d: PUSH1 0x20 00002b7f: DUP3 00002b80: ADD 00002b81: DUP1 00002b82: MLOAD 00002b83: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002ba0: DUP4 00002ba1: DUP2 00002ba2: DUP4 00002ba3: AND 00002ba4: OR 00002ba5: DUP4 00002ba6: MSTORE 00002ba7: POP 00002ba8: POP 00002ba9: POP 00002baa: POP 00002bab: PUSH2 0x2c6a 00002bae: JUMP 00002baf: JUMPDEST 00002bb0: POP 00002bb1: POP 00002bb2: POP 00002bb3: POP 00002bb4: JUMP 00002bb5: JUMPDEST 00002bb6: PUSH1 0x00 00002bb8: DUP2 00002bb9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002bce: AND 00002bcf: PUSH4 0x70a08231 00002bd4: ADDRESS 00002bd5: PUSH1 0x40 00002bd7: MLOAD 00002bd8: DUP3 00002bd9: PUSH4 0xffffffff 00002bde: AND 00002bdf: PUSH1 0xe0 00002be1: SHL 00002be2: DUP2 00002be3: MSTORE 00002be4: PUSH1 0x04 00002be6: ADD 00002be7: PUSH2 0x2bf0 00002bea: SWAP2 00002beb: SWAP1 00002bec: PUSH2 0x35ad 00002bef: JUMP 00002bf0: JUMPDEST 00002bf1: PUSH1 0x20 00002bf3: PUSH1 0x40 00002bf5: MLOAD 00002bf6: DUP1 00002bf7: DUP4 00002bf8: SUB 00002bf9: DUP2 00002bfa: DUP7 00002bfb: GAS 00002bfc: STATICCALL 00002bfd: ISZERO 00002bfe: DUP1 00002bff: ISZERO 00002c00: PUSH2 0x2c0d 00002c03: JUMPI 00002c04: RETURNDATASIZE 00002c05: PUSH1 0x00 00002c07: DUP1 00002c08: RETURNDATACOPY 00002c09: RETURNDATASIZE 00002c0a: PUSH1 0x00 00002c0c: REVERT 00002c0d: JUMPDEST 00002c0e: POP 00002c0f: POP 00002c10: POP 00002c11: POP 00002c12: PUSH1 0x40 00002c14: MLOAD 00002c15: RETURNDATASIZE 00002c16: PUSH1 0x1f 00002c18: NOT 00002c19: PUSH1 0x1f 00002c1b: DUP3 00002c1c: ADD 00002c1d: AND 00002c1e: DUP3 00002c1f: ADD 00002c20: DUP1 00002c21: PUSH1 0x40 00002c23: MSTORE 00002c24: POP 00002c25: DUP2 00002c26: ADD 00002c27: SWAP1 00002c28: PUSH2 0x2c31 00002c2b: SWAP2 00002c2c: SWAP1 00002c2d: PUSH2 0x36c2 00002c30: JUMP 00002c31: JUMPDEST 00002c32: SWAP1 00002c33: POP 00002c34: SWAP2 00002c35: SWAP1 00002c36: POP 00002c37: JUMP 00002c38: JUMPDEST 00002c39: PUSH1 0x00 00002c3b: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 00002c5c: SWAP1 00002c5d: POP 00002c5e: SWAP1 00002c5f: JUMP 00002c60: JUMPDEST 00002c61: PUSH2 0x2c68 00002c64: PUSH2 0x2e36 00002c67: JUMP 00002c68: JUMPDEST 00002c69: JUMP 00002c6a: JUMPDEST 00002c6b: PUSH1 0x00 00002c6d: PUSH2 0x2c95 00002c70: DUP3 00002c71: DUP5 00002c72: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002c87: AND 00002c88: PUSH2 0x2e76 00002c8b: SWAP1 00002c8c: SWAP2 00002c8d: SWAP1 00002c8e: PUSH4 0xffffffff 00002c93: AND 00002c94: JUMP 00002c95: JUMPDEST 00002c96: SWAP1 00002c97: POP 00002c98: PUSH1 0x00 00002c9a: DUP2 00002c9b: MLOAD 00002c9c: EQ 00002c9d: ISZERO 00002c9e: DUP1 00002c9f: ISZERO 00002ca0: PUSH2 0x2cba 00002ca3: JUMPI 00002ca4: POP 00002ca5: DUP1 00002ca6: DUP1 00002ca7: PUSH1 0x20 00002ca9: ADD 00002caa: SWAP1 00002cab: MLOAD 00002cac: DUP2 00002cad: ADD 00002cae: SWAP1 00002caf: PUSH2 0x2cb8 00002cb2: SWAP2 00002cb3: SWAP1 00002cb4: PUSH2 0x3963 00002cb7: JUMP 00002cb8: JUMPDEST 00002cb9: ISZERO 00002cba: JUMPDEST 00002cbb: ISZERO 00002cbc: PUSH2 0x2cfc 00002cbf: JUMPI 00002cc0: DUP3 00002cc1: PUSH1 0x40 00002cc3: MLOAD 00002cc4: PUSH32 0x5274afe700000000000000000000000000000000000000000000000000000000 00002ce5: DUP2 00002ce6: MSTORE 00002ce7: PUSH1 0x04 00002ce9: ADD 00002cea: PUSH2 0x2cf3 00002ced: SWAP2 00002cee: SWAP1 00002cef: PUSH2 0x35ad 00002cf2: JUMP 00002cf3: JUMPDEST 00002cf4: PUSH1 0x40 00002cf6: MLOAD 00002cf7: DUP1 00002cf8: SWAP2 00002cf9: SUB 00002cfa: SWAP1 00002cfb: REVERT 00002cfc: JUMPDEST 00002cfd: POP 00002cfe: POP 00002cff: POP 00002d00: JUMP 00002d01: JUMPDEST 00002d02: PUSH2 0x2d0b 00002d05: DUP3 00002d06: DUP3 00002d07: PUSH2 0x188b 00002d0a: JUMP 00002d0b: JUMPDEST 00002d0c: PUSH2 0x2d4e 00002d0f: JUMPI 00002d10: DUP1 00002d11: DUP3 00002d12: PUSH1 0x40 00002d14: MLOAD 00002d15: PUSH32 0xe2517d3f00000000000000000000000000000000000000000000000000000000 00002d36: DUP2 00002d37: MSTORE 00002d38: PUSH1 0x04 00002d3a: ADD 00002d3b: PUSH2 0x2d45 00002d3e: SWAP3 00002d3f: SWAP2 00002d40: SWAP1 00002d41: PUSH2 0x3990 00002d44: JUMP 00002d45: JUMPDEST 00002d46: PUSH1 0x40 00002d48: MLOAD 00002d49: DUP1 00002d4a: SWAP2 00002d4b: SUB 00002d4c: SWAP1 00002d4d: REVERT 00002d4e: JUMPDEST 00002d4f: POP 00002d50: POP 00002d51: JUMP 00002d52: JUMPDEST 00002d53: PUSH1 0x00 00002d55: DUP1 00002d56: PUSH1 0x00 00002d58: DUP4 00002d59: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d6e: AND 00002d6f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002d84: AND 00002d85: DUP2 00002d86: MSTORE 00002d87: PUSH1 0x20 00002d89: ADD 00002d8a: SWAP1 00002d8b: DUP2 00002d8c: MSTORE 00002d8d: PUSH1 0x20 00002d8f: ADD 00002d90: PUSH1 0x00 00002d92: KECCAK256 00002d93: PUSH1 0x01 00002d95: ADD 00002d96: PUSH1 0x00 00002d98: SWAP1 00002d99: SLOAD 00002d9a: SWAP1 00002d9b: PUSH2 0x0100 00002d9e: EXP 00002d9f: SWAP1 00002da0: DIV 00002da1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002db6: AND 00002db7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002dcc: AND 00002dcd: PUSH4 0x8635a1f1 00002dd2: DUP4 00002dd3: PUSH1 0x40 00002dd5: MLOAD 00002dd6: DUP3 00002dd7: PUSH4 0xffffffff 00002ddc: AND 00002ddd: PUSH1 0xe0 00002ddf: SHL 00002de0: DUP2 00002de1: MSTORE 00002de2: PUSH1 0x04 00002de4: ADD 00002de5: PUSH2 0x2dee 00002de8: SWAP2 00002de9: SWAP1 00002dea: PUSH2 0x3627 00002ded: JUMP 00002dee: JUMPDEST 00002def: PUSH1 0x20 00002df1: PUSH1 0x40 00002df3: MLOAD 00002df4: DUP1 00002df5: DUP4 00002df6: SUB 00002df7: DUP2 00002df8: DUP7 00002df9: GAS 00002dfa: STATICCALL 00002dfb: ISZERO 00002dfc: DUP1 00002dfd: ISZERO 00002dfe: PUSH2 0x2e0b 00002e01: JUMPI 00002e02: RETURNDATASIZE 00002e03: PUSH1 0x00 00002e05: DUP1 00002e06: RETURNDATACOPY 00002e07: RETURNDATASIZE 00002e08: PUSH1 0x00 00002e0a: REVERT 00002e0b: JUMPDEST 00002e0c: POP 00002e0d: POP 00002e0e: POP 00002e0f: POP 00002e10: PUSH1 0x40 00002e12: MLOAD 00002e13: RETURNDATASIZE 00002e14: PUSH1 0x1f 00002e16: NOT 00002e17: PUSH1 0x1f 00002e19: DUP3 00002e1a: ADD 00002e1b: AND 00002e1c: DUP3 00002e1d: ADD 00002e1e: DUP1 00002e1f: PUSH1 0x40 00002e21: MSTORE 00002e22: POP 00002e23: DUP2 00002e24: ADD 00002e25: SWAP1 00002e26: PUSH2 0x2e2f 00002e29: SWAP2 00002e2a: SWAP1 00002e2b: PUSH2 0x36c2 00002e2e: JUMP 00002e2f: JUMPDEST 00002e30: SWAP1 00002e31: POP 00002e32: SWAP2 00002e33: SWAP1 00002e34: POP 00002e35: JUMP 00002e36: JUMPDEST 00002e37: PUSH2 0x2e3e 00002e3a: PUSH2 0x2e8c 00002e3d: JUMP 00002e3e: JUMPDEST 00002e3f: PUSH2 0x2e74 00002e42: JUMPI 00002e43: PUSH1 0x40 00002e45: MLOAD 00002e46: PUSH32 0xd7e6bcf800000000000000000000000000000000000000000000000000000000 00002e67: DUP2 00002e68: MSTORE 00002e69: PUSH1 0x04 00002e6b: ADD 00002e6c: PUSH1 0x40 00002e6e: MLOAD 00002e6f: DUP1 00002e70: SWAP2 00002e71: SUB 00002e72: SWAP1 00002e73: REVERT 00002e74: JUMPDEST 00002e75: JUMP 00002e76: JUMPDEST 00002e77: PUSH1 0x60 00002e79: PUSH2 0x2e84 00002e7c: DUP4 00002e7d: DUP4 00002e7e: PUSH1 0x00 00002e80: PUSH2 0x2eac 00002e83: JUMP 00002e84: JUMPDEST 00002e85: SWAP1 00002e86: POP 00002e87: SWAP3 00002e88: SWAP2 00002e89: POP 00002e8a: POP 00002e8b: JUMP 00002e8c: JUMPDEST 00002e8d: PUSH1 0x00 00002e8f: PUSH2 0x2e96 00002e92: PUSH2 0x2c38 00002e95: JUMP 00002e96: JUMPDEST 00002e97: PUSH1 0x00 00002e99: ADD 00002e9a: PUSH1 0x08 00002e9c: SWAP1 00002e9d: SLOAD 00002e9e: SWAP1 00002e9f: PUSH2 0x0100 00002ea2: EXP 00002ea3: SWAP1 00002ea4: DIV 00002ea5: PUSH1 0xff 00002ea7: AND 00002ea8: SWAP1 00002ea9: POP 00002eaa: SWAP1 00002eab: JUMP 00002eac: JUMPDEST 00002ead: PUSH1 0x60 00002eaf: DUP2 00002eb0: SELFBALANCE 00002eb1: LT 00002eb2: ISZERO 00002eb3: PUSH2 0x2ef3 00002eb6: JUMPI 00002eb7: ADDRESS 00002eb8: PUSH1 0x40 00002eba: MLOAD 00002ebb: PUSH32 0xcd78605900000000000000000000000000000000000000000000000000000000 00002edc: DUP2 00002edd: MSTORE 00002ede: PUSH1 0x04 00002ee0: ADD 00002ee1: PUSH2 0x2eea 00002ee4: SWAP2 00002ee5: SWAP1 00002ee6: PUSH2 0x35ad 00002ee9: JUMP 00002eea: JUMPDEST 00002eeb: PUSH1 0x40 00002eed: MLOAD 00002eee: DUP1 00002eef: SWAP2 00002ef0: SUB 00002ef1: SWAP1 00002ef2: REVERT 00002ef3: JUMPDEST 00002ef4: PUSH1 0x00 00002ef6: DUP1 00002ef7: DUP6 00002ef8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002f0d: AND 00002f0e: DUP5 00002f0f: DUP7 00002f10: PUSH1 0x40 00002f12: MLOAD 00002f13: PUSH2 0x2f1c 00002f16: SWAP2 00002f17: SWAP1 00002f18: PUSH2 0x3a00 00002f1b: JUMP 00002f1c: JUMPDEST 00002f1d: PUSH1 0x00 00002f1f: PUSH1 0x40 00002f21: MLOAD 00002f22: DUP1 00002f23: DUP4 00002f24: SUB 00002f25: DUP2 00002f26: DUP6 00002f27: DUP8 00002f28: GAS 00002f29: CALL 00002f2a: SWAP3 00002f2b: POP 00002f2c: POP 00002f2d: POP 00002f2e: RETURNDATASIZE 00002f2f: DUP1 00002f30: PUSH1 0x00 00002f32: DUP2 00002f33: EQ 00002f34: PUSH2 0x2f59 00002f37: JUMPI 00002f38: PUSH1 0x40 00002f3a: MLOAD 00002f3b: SWAP2 00002f3c: POP 00002f3d: PUSH1 0x1f 00002f3f: NOT 00002f40: PUSH1 0x3f 00002f42: RETURNDATASIZE 00002f43: ADD 00002f44: AND 00002f45: DUP3 00002f46: ADD 00002f47: PUSH1 0x40 00002f49: MSTORE 00002f4a: RETURNDATASIZE 00002f4b: DUP3 00002f4c: MSTORE 00002f4d: RETURNDATASIZE 00002f4e: PUSH1 0x00 00002f50: PUSH1 0x20 00002f52: DUP5 00002f53: ADD 00002f54: RETURNDATACOPY 00002f55: PUSH2 0x2f5e 00002f58: JUMP 00002f59: JUMPDEST 00002f5a: PUSH1 0x60 00002f5c: SWAP2 00002f5d: POP 00002f5e: JUMPDEST 00002f5f: POP 00002f60: SWAP2 00002f61: POP 00002f62: SWAP2 00002f63: POP 00002f64: PUSH2 0x2f6e 00002f67: DUP7 00002f68: DUP4 00002f69: DUP4 00002f6a: PUSH2 0x2f79 00002f6d: JUMP 00002f6e: JUMPDEST 00002f6f: SWAP3 00002f70: POP 00002f71: POP 00002f72: POP 00002f73: SWAP4 00002f74: SWAP3 00002f75: POP 00002f76: POP 00002f77: POP 00002f78: JUMP 00002f79: JUMPDEST 00002f7a: PUSH1 0x60 00002f7c: DUP3 00002f7d: PUSH2 0x2f8e 00002f80: JUMPI 00002f81: PUSH2 0x2f89 00002f84: DUP3 00002f85: PUSH2 0x3008 00002f88: JUMP 00002f89: JUMPDEST 00002f8a: PUSH2 0x3000 00002f8d: JUMP 00002f8e: JUMPDEST 00002f8f: PUSH1 0x00 00002f91: DUP3 00002f92: MLOAD 00002f93: EQ 00002f94: DUP1 00002f95: ISZERO 00002f96: PUSH2 0x2fb6 00002f99: JUMPI 00002f9a: POP 00002f9b: PUSH1 0x00 00002f9d: DUP5 00002f9e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002fb3: AND 00002fb4: EXTCODESIZE 00002fb5: EQ 00002fb6: JUMPDEST 00002fb7: ISZERO 00002fb8: PUSH2 0x2ff8 00002fbb: JUMPI 00002fbc: DUP4 00002fbd: PUSH1 0x40 00002fbf: MLOAD 00002fc0: PUSH32 0x9996b31500000000000000000000000000000000000000000000000000000000 00002fe1: DUP2 00002fe2: MSTORE 00002fe3: PUSH1 0x04 00002fe5: ADD 00002fe6: PUSH2 0x2fef 00002fe9: SWAP2 00002fea: SWAP1 00002feb: PUSH2 0x35ad 00002fee: JUMP 00002fef: JUMPDEST 00002ff0: PUSH1 0x40 00002ff2: MLOAD 00002ff3: DUP1 00002ff4: SWAP2 00002ff5: SUB 00002ff6: SWAP1 00002ff7: REVERT 00002ff8: JUMPDEST 00002ff9: DUP2 00002ffa: SWAP1 00002ffb: POP 00002ffc: PUSH2 0x3001 00002fff: JUMP 00003000: JUMPDEST 00003001: JUMPDEST 00003002: SWAP4 00003003: SWAP3 00003004: POP 00003005: POP 00003006: POP 00003007: JUMP 00003008: JUMPDEST 00003009: PUSH1 0x00 0000300b: DUP2 0000300c: MLOAD 0000300d: GT 0000300e: ISZERO 0000300f: PUSH2 0x301b 00003012: JUMPI 00003013: DUP1 00003014: MLOAD 00003015: DUP1 00003016: DUP3 00003017: PUSH1 0x20 00003019: ADD 0000301a: REVERT 0000301b: JUMPDEST 0000301c: PUSH1 0x40 0000301e: MLOAD 0000301f: PUSH32 0x1425ea4200000000000000000000000000000000000000000000000000000000 00003040: DUP2 00003041: MSTORE 00003042: PUSH1 0x04 00003044: ADD 00003045: PUSH1 0x40 00003047: MLOAD 00003048: DUP1 00003049: SWAP2 0000304a: SUB 0000304b: SWAP1 0000304c: REVERT 0000304d: JUMPDEST 0000304e: PUSH1 0x00 00003050: DUP1 00003051: REVERT 00003052: JUMPDEST 00003053: PUSH1 0x00 00003055: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00003076: DUP3 00003077: AND 00003078: SWAP1 00003079: POP 0000307a: SWAP2 0000307b: SWAP1 0000307c: POP 0000307d: JUMP 0000307e: JUMPDEST 0000307f: PUSH2 0x3087 00003082: DUP2 00003083: PUSH2 0x3052 00003086: JUMP 00003087: JUMPDEST 00003088: DUP2 00003089: EQ 0000308a: PUSH2 0x3092 0000308d: JUMPI 0000308e: PUSH1 0x00 00003090: DUP1 00003091: REVERT 00003092: JUMPDEST 00003093: POP 00003094: JUMP 00003095: JUMPDEST 00003096: PUSH1 0x00 00003098: DUP2 00003099: CALLDATALOAD 0000309a: SWAP1 0000309b: POP 0000309c: PUSH2 0x30a4 0000309f: DUP2 000030a0: PUSH2 0x307e 000030a3: JUMP 000030a4: JUMPDEST 000030a5: SWAP3 000030a6: SWAP2 000030a7: POP 000030a8: POP 000030a9: JUMP 000030aa: JUMPDEST 000030ab: PUSH1 0x00 000030ad: PUSH1 0x20 000030af: DUP3 000030b0: DUP5 000030b1: SUB 000030b2: SLT 000030b3: ISZERO 000030b4: PUSH2 0x30c0 000030b7: JUMPI 000030b8: PUSH2 0x30bf 000030bb: PUSH2 0x304d 000030be: JUMP 000030bf: JUMPDEST 000030c0: JUMPDEST 000030c1: PUSH1 0x00 000030c3: PUSH2 0x30ce 000030c6: DUP5 000030c7: DUP3 000030c8: DUP6 000030c9: ADD 000030ca: PUSH2 0x3095 000030cd: JUMP 000030ce: JUMPDEST 000030cf: SWAP2 000030d0: POP 000030d1: POP 000030d2: SWAP3 000030d3: SWAP2 000030d4: POP 000030d5: POP 000030d6: JUMP 000030d7: JUMPDEST 000030d8: PUSH1 0x00 000030da: DUP2 000030db: ISZERO 000030dc: ISZERO 000030dd: SWAP1 000030de: POP 000030df: SWAP2 000030e0: SWAP1 000030e1: POP 000030e2: JUMP 000030e3: JUMPDEST 000030e4: PUSH2 0x30ec 000030e7: DUP2 000030e8: PUSH2 0x30d7 000030eb: JUMP 000030ec: JUMPDEST 000030ed: DUP3 000030ee: MSTORE 000030ef: POP 000030f0: POP 000030f1: JUMP 000030f2: JUMPDEST 000030f3: PUSH1 0x00 000030f5: PUSH1 0x20 000030f7: DUP3 000030f8: ADD 000030f9: SWAP1 000030fa: POP 000030fb: PUSH2 0x3107 000030fe: PUSH1 0x00 00003100: DUP4 00003101: ADD 00003102: DUP5 00003103: PUSH2 0x30e3 00003106: JUMP 00003107: JUMPDEST 00003108: SWAP3 00003109: SWAP2 0000310a: POP 0000310b: POP 0000310c: JUMP 0000310d: JUMPDEST 0000310e: PUSH1 0x00 00003110: DUP2 00003111: SWAP1 00003112: POP 00003113: SWAP2 00003114: SWAP1 00003115: POP 00003116: JUMP 00003117: JUMPDEST 00003118: PUSH2 0x3120 0000311b: DUP2 0000311c: PUSH2 0x310d 0000311f: JUMP 00003120: JUMPDEST 00003121: DUP3 00003122: MSTORE 00003123: POP 00003124: POP 00003125: JUMP 00003126: JUMPDEST 00003127: PUSH1 0x00 00003129: PUSH1 0x20 0000312b: DUP3 0000312c: ADD 0000312d: SWAP1 0000312e: POP 0000312f: PUSH2 0x313b 00003132: PUSH1 0x00 00003134: DUP4 00003135: ADD 00003136: DUP5 00003137: PUSH2 0x3117 0000313a: JUMP 0000313b: JUMPDEST 0000313c: SWAP3 0000313d: SWAP2 0000313e: POP 0000313f: POP 00003140: JUMP 00003141: JUMPDEST 00003142: PUSH1 0x00 00003144: DUP2 00003145: MLOAD 00003146: SWAP1 00003147: POP 00003148: SWAP2 00003149: SWAP1 0000314a: POP 0000314b: JUMP 0000314c: JUMPDEST 0000314d: PUSH1 0x00 0000314f: DUP3 00003150: DUP3 00003151: MSTORE 00003152: PUSH1 0x20 00003154: DUP3 00003155: ADD 00003156: SWAP1 00003157: POP 00003158: SWAP3 00003159: SWAP2 0000315a: POP 0000315b: POP 0000315c: JUMP 0000315d: JUMPDEST 0000315e: PUSH1 0x00 00003160: JUMPDEST 00003161: DUP4 00003162: DUP2 00003163: LT 00003164: ISZERO 00003165: PUSH2 0x317b 00003168: JUMPI 00003169: DUP1 0000316a: DUP3 0000316b: ADD 0000316c: MLOAD 0000316d: DUP2 0000316e: DUP5 0000316f: ADD 00003170: MSTORE 00003171: PUSH1 0x20 00003173: DUP2 00003174: ADD 00003175: SWAP1 00003176: POP 00003177: PUSH2 0x3160 0000317a: JUMP 0000317b: JUMPDEST 0000317c: PUSH1 0x00 0000317e: DUP5 0000317f: DUP5 00003180: ADD 00003181: MSTORE 00003182: POP 00003183: POP 00003184: POP 00003185: POP 00003186: JUMP 00003187: JUMPDEST 00003188: PUSH1 0x00 0000318a: PUSH1 0x1f 0000318c: NOT 0000318d: PUSH1 0x1f 0000318f: DUP4 00003190: ADD 00003191: AND 00003192: SWAP1 00003193: POP 00003194: SWAP2 00003195: SWAP1 00003196: POP 00003197: JUMP 00003198: JUMPDEST 00003199: PUSH1 0x00 0000319b: PUSH2 0x31a3 0000319e: DUP3 0000319f: PUSH2 0x3141 000031a2: JUMP 000031a3: JUMPDEST 000031a4: PUSH2 0x31ad 000031a7: DUP2 000031a8: DUP6 000031a9: PUSH2 0x314c 000031ac: JUMP 000031ad: JUMPDEST 000031ae: SWAP4 000031af: POP 000031b0: PUSH2 0x31bd 000031b3: DUP2 000031b4: DUP6 000031b5: PUSH1 0x20 000031b7: DUP7 000031b8: ADD 000031b9: PUSH2 0x315d 000031bc: JUMP 000031bd: JUMPDEST 000031be: PUSH2 0x31c6 000031c1: DUP2 000031c2: PUSH2 0x3187 000031c5: JUMP 000031c6: JUMPDEST 000031c7: DUP5 000031c8: ADD 000031c9: SWAP2 000031ca: POP 000031cb: POP 000031cc: SWAP3 000031cd: SWAP2 000031ce: POP 000031cf: POP 000031d0: JUMP 000031d1: JUMPDEST 000031d2: PUSH1 0x00 000031d4: PUSH1 0x20 000031d6: DUP3 000031d7: ADD 000031d8: SWAP1 000031d9: POP 000031da: DUP2 000031db: DUP2 000031dc: SUB 000031dd: PUSH1 0x00 000031df: DUP4 000031e0: ADD 000031e1: MSTORE 000031e2: PUSH2 0x31eb 000031e5: DUP2 000031e6: DUP5 000031e7: PUSH2 0x3198 000031ea: JUMP 000031eb: JUMPDEST 000031ec: SWAP1 000031ed: POP 000031ee: SWAP3 000031ef: SWAP2 000031f0: POP 000031f1: POP 000031f2: JUMP 000031f3: JUMPDEST 000031f4: PUSH2 0x31fc 000031f7: DUP2 000031f8: PUSH2 0x310d 000031fb: JUMP 000031fc: JUMPDEST 000031fd: DUP2 000031fe: EQ 000031ff: PUSH2 0x3207 00003202: JUMPI 00003203: PUSH1 0x00 00003205: DUP1 00003206: REVERT 00003207: JUMPDEST 00003208: POP 00003209: JUMP 0000320a: JUMPDEST 0000320b: PUSH1 0x00 0000320d: DUP2 0000320e: CALLDATALOAD 0000320f: SWAP1 00003210: POP 00003211: PUSH2 0x3219 00003214: DUP2 00003215: PUSH2 0x31f3 00003218: JUMP 00003219: JUMPDEST 0000321a: SWAP3 0000321b: SWAP2 0000321c: POP 0000321d: POP 0000321e: JUMP 0000321f: JUMPDEST 00003220: PUSH1 0x00 00003222: PUSH1 0x20 00003224: DUP3 00003225: DUP5 00003226: SUB 00003227: SLT 00003228: ISZERO 00003229: PUSH2 0x3235 0000322c: JUMPI 0000322d: PUSH2 0x3234 00003230: PUSH2 0x304d 00003233: JUMP 00003234: JUMPDEST 00003235: JUMPDEST 00003236: PUSH1 0x00 00003238: PUSH2 0x3243 0000323b: DUP5 0000323c: DUP3 0000323d: DUP6 0000323e: ADD 0000323f: PUSH2 0x320a 00003242: JUMP 00003243: JUMPDEST 00003244: SWAP2 00003245: POP 00003246: POP 00003247: SWAP3 00003248: SWAP2 00003249: POP 0000324a: POP 0000324b: JUMP 0000324c: JUMPDEST 0000324d: PUSH1 0x00 0000324f: DUP2 00003250: SWAP1 00003251: POP 00003252: SWAP2 00003253: SWAP1 00003254: POP 00003255: JUMP 00003256: JUMPDEST 00003257: PUSH2 0x325f 0000325a: DUP2 0000325b: PUSH2 0x324c 0000325e: JUMP 0000325f: JUMPDEST 00003260: DUP2 00003261: EQ 00003262: PUSH2 0x326a 00003265: JUMPI 00003266: PUSH1 0x00 00003268: DUP1 00003269: REVERT 0000326a: JUMPDEST 0000326b: POP 0000326c: JUMP 0000326d: JUMPDEST 0000326e: PUSH1 0x00 00003270: DUP2 00003271: CALLDATALOAD 00003272: SWAP1 00003273: POP 00003274: PUSH2 0x327c 00003277: DUP2 00003278: PUSH2 0x3256 0000327b: JUMP 0000327c: JUMPDEST 0000327d: SWAP3 0000327e: SWAP2 0000327f: POP 00003280: POP 00003281: JUMP 00003282: JUMPDEST 00003283: PUSH1 0x00 00003285: PUSH1 0x20 00003287: DUP3 00003288: DUP5 00003289: SUB 0000328a: SLT 0000328b: ISZERO 0000328c: PUSH2 0x3298 0000328f: JUMPI 00003290: PUSH2 0x3297 00003293: PUSH2 0x304d 00003296: JUMP 00003297: JUMPDEST 00003298: JUMPDEST 00003299: PUSH1 0x00 0000329b: PUSH2 0x32a6 0000329e: DUP5 0000329f: DUP3 000032a0: DUP6 000032a1: ADD 000032a2: PUSH2 0x326d 000032a5: JUMP 000032a6: JUMPDEST 000032a7: SWAP2 000032a8: POP 000032a9: POP 000032aa: SWAP3 000032ab: SWAP2 000032ac: POP 000032ad: POP 000032ae: JUMP 000032af: JUMPDEST 000032b0: PUSH2 0x32b8 000032b3: DUP2 000032b4: PUSH2 0x324c 000032b7: JUMP 000032b8: JUMPDEST 000032b9: DUP3 000032ba: MSTORE 000032bb: POP 000032bc: POP 000032bd: JUMP 000032be: JUMPDEST 000032bf: PUSH1 0x00 000032c1: PUSH1 0x20 000032c3: DUP3 000032c4: ADD 000032c5: SWAP1 000032c6: POP 000032c7: PUSH2 0x32d3 000032ca: PUSH1 0x00 000032cc: DUP4 000032cd: ADD 000032ce: DUP5 000032cf: PUSH2 0x32af 000032d2: JUMP 000032d3: JUMPDEST 000032d4: SWAP3 000032d5: SWAP2 000032d6: POP 000032d7: POP 000032d8: JUMP 000032d9: JUMPDEST 000032da: PUSH1 0x00 000032dc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000032f1: DUP3 000032f2: AND 000032f3: SWAP1 000032f4: POP 000032f5: SWAP2 000032f6: SWAP1 000032f7: POP 000032f8: JUMP 000032f9: JUMPDEST 000032fa: PUSH1 0x00 000032fc: PUSH2 0x3304 000032ff: DUP3 00003300: PUSH2 0x32d9 00003303: JUMP 00003304: JUMPDEST 00003305: SWAP1 00003306: POP 00003307: SWAP2 00003308: SWAP1 00003309: POP 0000330a: JUMP 0000330b: JUMPDEST 0000330c: PUSH1 0x00 0000330e: PUSH2 0x3316 00003311: DUP3 00003312: PUSH2 0x32f9 00003315: JUMP 00003316: JUMPDEST 00003317: SWAP1 00003318: POP 00003319: SWAP2 0000331a: SWAP1 0000331b: POP 0000331c: JUMP 0000331d: JUMPDEST 0000331e: PUSH2 0x3326 00003321: DUP2 00003322: PUSH2 0x330b 00003325: JUMP 00003326: JUMPDEST 00003327: DUP2 00003328: EQ 00003329: PUSH2 0x3331 0000332c: JUMPI 0000332d: PUSH1 0x00 0000332f: DUP1 00003330: REVERT 00003331: JUMPDEST 00003332: POP 00003333: JUMP 00003334: JUMPDEST 00003335: PUSH1 0x00 00003337: DUP2 00003338: CALLDATALOAD 00003339: SWAP1 0000333a: POP 0000333b: PUSH2 0x3343 0000333e: DUP2 0000333f: PUSH2 0x331d 00003342: JUMP 00003343: JUMPDEST 00003344: SWAP3 00003345: SWAP2 00003346: POP 00003347: POP 00003348: JUMP 00003349: JUMPDEST 0000334a: PUSH1 0x00 0000334c: PUSH1 0x20 0000334e: DUP3 0000334f: DUP5 00003350: SUB 00003351: SLT 00003352: ISZERO 00003353: PUSH2 0x335f 00003356: JUMPI 00003357: PUSH2 0x335e 0000335a: PUSH2 0x304d 0000335d: JUMP 0000335e: JUMPDEST 0000335f: JUMPDEST 00003360: PUSH1 0x00 00003362: PUSH2 0x336d 00003365: DUP5 00003366: DUP3 00003367: DUP6 00003368: ADD 00003369: PUSH2 0x3334 0000336c: JUMP 0000336d: JUMPDEST 0000336e: SWAP2 0000336f: POP 00003370: POP 00003371: SWAP3 00003372: SWAP2 00003373: POP 00003374: POP 00003375: JUMP 00003376: JUMPDEST 00003377: PUSH1 0x00 00003379: DUP1 0000337a: PUSH1 0x40 0000337c: DUP4 0000337d: DUP6 0000337e: SUB 0000337f: SLT 00003380: ISZERO 00003381: PUSH2 0x338d 00003384: JUMPI 00003385: PUSH2 0x338c 00003388: PUSH2 0x304d 0000338b: JUMP 0000338c: JUMPDEST 0000338d: JUMPDEST 0000338e: PUSH1 0x00 00003390: PUSH2 0x339b 00003393: DUP6 00003394: DUP3 00003395: DUP7 00003396: ADD 00003397: PUSH2 0x3334 0000339a: JUMP 0000339b: JUMPDEST 0000339c: SWAP3 0000339d: POP 0000339e: POP 0000339f: PUSH1 0x20 000033a1: PUSH2 0x33ac 000033a4: DUP6 000033a5: DUP3 000033a6: DUP7 000033a7: ADD 000033a8: PUSH2 0x320a 000033ab: JUMP 000033ac: JUMPDEST 000033ad: SWAP2 000033ae: POP 000033af: POP 000033b0: SWAP3 000033b1: POP 000033b2: SWAP3 000033b3: SWAP1 000033b4: POP 000033b5: JUMP 000033b6: JUMPDEST 000033b7: PUSH2 0x33bf 000033ba: DUP2 000033bb: PUSH2 0x32f9 000033be: JUMP 000033bf: JUMPDEST 000033c0: DUP2 000033c1: EQ 000033c2: PUSH2 0x33ca 000033c5: JUMPI 000033c6: PUSH1 0x00 000033c8: DUP1 000033c9: REVERT 000033ca: JUMPDEST 000033cb: POP 000033cc: JUMP 000033cd: JUMPDEST 000033ce: PUSH1 0x00 000033d0: DUP2 000033d1: CALLDATALOAD 000033d2: SWAP1 000033d3: POP 000033d4: PUSH2 0x33dc 000033d7: DUP2 000033d8: PUSH2 0x33b6 000033db: JUMP 000033dc: JUMPDEST 000033dd: SWAP3 000033de: SWAP2 000033df: POP 000033e0: POP 000033e1: JUMP 000033e2: JUMPDEST 000033e3: PUSH1 0x00 000033e5: DUP1 000033e6: PUSH1 0x40 000033e8: DUP4 000033e9: DUP6 000033ea: SUB 000033eb: SLT 000033ec: ISZERO 000033ed: PUSH2 0x33f9 000033f0: JUMPI 000033f1: PUSH2 0x33f8 000033f4: PUSH2 0x304d 000033f7: JUMP 000033f8: JUMPDEST 000033f9: JUMPDEST 000033fa: PUSH1 0x00 000033fc: PUSH2 0x3407 000033ff: DUP6 00003400: DUP3 00003401: DUP7 00003402: ADD 00003403: PUSH2 0x326d 00003406: JUMP 00003407: JUMPDEST 00003408: SWAP3 00003409: POP 0000340a: POP 0000340b: PUSH1 0x20 0000340d: PUSH2 0x3418 00003410: DUP6 00003411: DUP3 00003412: DUP7 00003413: ADD 00003414: PUSH2 0x33cd 00003417: JUMP 00003418: JUMPDEST 00003419: SWAP2 0000341a: POP 0000341b: POP 0000341c: SWAP3 0000341d: POP 0000341e: SWAP3 0000341f: SWAP1 00003420: POP 00003421: JUMP 00003422: JUMPDEST 00003423: PUSH1 0x00 00003425: PUSH2 0x342d 00003428: DUP3 00003429: PUSH2 0x32f9 0000342c: JUMP 0000342d: JUMPDEST 0000342e: SWAP1 0000342f: POP 00003430: SWAP2 00003431: SWAP1 00003432: POP 00003433: JUMP 00003434: JUMPDEST 00003435: PUSH2 0x343d 00003438: DUP2 00003439: PUSH2 0x3422 0000343c: JUMP 0000343d: JUMPDEST 0000343e: DUP2 0000343f: EQ 00003440: PUSH2 0x3448 00003443: JUMPI 00003444: PUSH1 0x00 00003446: DUP1 00003447: REVERT 00003448: JUMPDEST 00003449: POP 0000344a: JUMP 0000344b: JUMPDEST 0000344c: PUSH1 0x00 0000344e: DUP2 0000344f: CALLDATALOAD 00003450: SWAP1 00003451: POP 00003452: PUSH2 0x345a 00003455: DUP2 00003456: PUSH2 0x3434 00003459: JUMP 0000345a: JUMPDEST 0000345b: SWAP3 0000345c: SWAP2 0000345d: POP 0000345e: POP 0000345f: JUMP 00003460: JUMPDEST 00003461: PUSH1 0x00 00003463: DUP1 00003464: PUSH1 0x40 00003466: DUP4 00003467: DUP6 00003468: SUB 00003469: SLT 0000346a: ISZERO 0000346b: PUSH2 0x3477 0000346e: JUMPI 0000346f: PUSH2 0x3476 00003472: PUSH2 0x304d 00003475: JUMP 00003476: JUMPDEST 00003477: JUMPDEST 00003478: PUSH1 0x00 0000347a: PUSH2 0x3485 0000347d: DUP6 0000347e: DUP3 0000347f: DUP7 00003480: ADD 00003481: PUSH2 0x3334 00003484: JUMP 00003485: JUMPDEST 00003486: SWAP3 00003487: POP 00003488: POP 00003489: PUSH1 0x20 0000348b: PUSH2 0x3496 0000348e: DUP6 0000348f: DUP3 00003490: DUP7 00003491: ADD 00003492: PUSH2 0x344b 00003495: JUMP 00003496: JUMPDEST 00003497: SWAP2 00003498: POP 00003499: POP 0000349a: SWAP3 0000349b: POP 0000349c: SWAP3 0000349d: SWAP1 0000349e: POP 0000349f: JUMP 000034a0: JUMPDEST 000034a1: PUSH1 0x00 000034a3: PUSH2 0x34ab 000034a6: DUP3 000034a7: PUSH2 0x32f9 000034aa: JUMP 000034ab: JUMPDEST 000034ac: SWAP1 000034ad: POP 000034ae: SWAP2 000034af: SWAP1 000034b0: POP 000034b1: JUMP 000034b2: JUMPDEST 000034b3: PUSH2 0x34bb 000034b6: DUP2 000034b7: PUSH2 0x34a0 000034ba: JUMP 000034bb: JUMPDEST 000034bc: DUP2 000034bd: EQ 000034be: PUSH2 0x34c6 000034c1: JUMPI 000034c2: PUSH1 0x00 000034c4: DUP1 000034c5: REVERT 000034c6: JUMPDEST 000034c7: POP 000034c8: JUMP 000034c9: JUMPDEST 000034ca: PUSH1 0x00 000034cc: DUP2 000034cd: CALLDATALOAD 000034ce: SWAP1 000034cf: POP 000034d0: PUSH2 0x34d8 000034d3: DUP2 000034d4: PUSH2 0x34b2 000034d7: JUMP 000034d8: JUMPDEST 000034d9: SWAP3 000034da: SWAP2 000034db: POP 000034dc: POP 000034dd: JUMP 000034de: JUMPDEST 000034df: PUSH1 0x00 000034e1: DUP1 000034e2: PUSH1 0x00 000034e4: PUSH1 0x60 000034e6: DUP5 000034e7: DUP7 000034e8: SUB 000034e9: SLT 000034ea: ISZERO 000034eb: PUSH2 0x34f7 000034ee: JUMPI 000034ef: PUSH2 0x34f6 000034f2: PUSH2 0x304d 000034f5: JUMP 000034f6: JUMPDEST 000034f7: JUMPDEST 000034f8: PUSH1 0x00 000034fa: PUSH2 0x3505 000034fd: DUP7 000034fe: DUP3 000034ff: DUP8 00003500: ADD 00003501: PUSH2 0x3334 00003504: JUMP 00003505: JUMPDEST 00003506: SWAP4 00003507: POP 00003508: POP 00003509: PUSH1 0x20 0000350b: PUSH2 0x3516 0000350e: DUP7 0000350f: DUP3 00003510: DUP8 00003511: ADD 00003512: PUSH2 0x34c9 00003515: JUMP 00003516: JUMPDEST 00003517: SWAP3 00003518: POP 00003519: POP 0000351a: PUSH1 0x40 0000351c: PUSH2 0x3527 0000351f: DUP7 00003520: DUP3 00003521: DUP8 00003522: ADD 00003523: PUSH2 0x344b 00003526: JUMP 00003527: JUMPDEST 00003528: SWAP2 00003529: POP 0000352a: POP 0000352b: SWAP3 0000352c: POP 0000352d: SWAP3 0000352e: POP 0000352f: SWAP3 00003530: JUMP 00003531: JUMPDEST 00003532: PUSH1 0x00 00003534: PUSH1 0x20 00003536: DUP3 00003537: DUP5 00003538: SUB 00003539: SLT 0000353a: ISZERO 0000353b: PUSH2 0x3547 0000353e: JUMPI 0000353f: PUSH2 0x3546 00003542: PUSH2 0x304d 00003545: JUMP 00003546: JUMPDEST 00003547: JUMPDEST 00003548: PUSH1 0x00 0000354a: PUSH2 0x3555 0000354d: DUP5 0000354e: DUP3 0000354f: DUP6 00003550: ADD 00003551: PUSH2 0x33cd 00003554: JUMP 00003555: JUMPDEST 00003556: SWAP2 00003557: POP 00003558: POP 00003559: SWAP3 0000355a: SWAP2 0000355b: POP 0000355c: POP 0000355d: JUMP 0000355e: JUMPDEST 0000355f: PUSH1 0x00 00003561: DUP1 00003562: PUSH1 0x40 00003564: DUP4 00003565: DUP6 00003566: SUB 00003567: SLT 00003568: ISZERO 00003569: PUSH2 0x3575 0000356c: JUMPI 0000356d: PUSH2 0x3574 00003570: PUSH2 0x304d 00003573: JUMP 00003574: JUMPDEST 00003575: JUMPDEST 00003576: PUSH1 0x00 00003578: PUSH2 0x3583 0000357b: DUP6 0000357c: DUP3 0000357d: DUP7 0000357e: ADD 0000357f: PUSH2 0x3334 00003582: JUMP 00003583: JUMPDEST 00003584: SWAP3 00003585: POP 00003586: POP 00003587: PUSH1 0x20 00003589: PUSH2 0x3594 0000358c: DUP6 0000358d: DUP3 0000358e: DUP7 0000358f: ADD 00003590: PUSH2 0x33cd 00003593: JUMP 00003594: JUMPDEST 00003595: SWAP2 00003596: POP 00003597: POP 00003598: SWAP3 00003599: POP 0000359a: SWAP3 0000359b: SWAP1 0000359c: POP 0000359d: JUMP 0000359e: JUMPDEST 0000359f: PUSH2 0x35a7 000035a2: DUP2 000035a3: PUSH2 0x32f9 000035a6: JUMP 000035a7: JUMPDEST 000035a8: DUP3 000035a9: MSTORE 000035aa: POP 000035ab: POP 000035ac: JUMP 000035ad: JUMPDEST 000035ae: PUSH1 0x00 000035b0: PUSH1 0x20 000035b2: DUP3 000035b3: ADD 000035b4: SWAP1 000035b5: POP 000035b6: PUSH2 0x35c2 000035b9: PUSH1 0x00 000035bb: DUP4 000035bc: ADD 000035bd: DUP5 000035be: PUSH2 0x359e 000035c1: JUMP 000035c2: JUMPDEST 000035c3: SWAP3 000035c4: SWAP2 000035c5: POP 000035c6: POP 000035c7: JUMP 000035c8: JUMPDEST 000035c9: PUSH1 0x00 000035cb: DUP2 000035cc: SWAP1 000035cd: POP 000035ce: SWAP2 000035cf: SWAP1 000035d0: POP 000035d1: JUMP 000035d2: JUMPDEST 000035d3: PUSH1 0x00 000035d5: PUSH2 0x35ed 000035d8: PUSH2 0x35e8 000035db: PUSH2 0x35e3 000035de: DUP5 000035df: PUSH2 0x32d9 000035e2: JUMP 000035e3: JUMPDEST 000035e4: PUSH2 0x35c8 000035e7: JUMP 000035e8: JUMPDEST 000035e9: PUSH2 0x32d9 000035ec: JUMP 000035ed: JUMPDEST 000035ee: SWAP1 000035ef: POP 000035f0: SWAP2 000035f1: SWAP1 000035f2: POP 000035f3: JUMP 000035f4: JUMPDEST 000035f5: PUSH1 0x00 000035f7: PUSH2 0x35ff 000035fa: DUP3 000035fb: PUSH2 0x35d2 000035fe: JUMP 000035ff: JUMPDEST 00003600: SWAP1 00003601: POP 00003602: SWAP2 00003603: SWAP1 00003604: POP 00003605: JUMP 00003606: JUMPDEST 00003607: PUSH1 0x00 00003609: PUSH2 0x3611 0000360c: DUP3 0000360d: PUSH2 0x35f4 00003610: JUMP 00003611: JUMPDEST 00003612: SWAP1 00003613: POP 00003614: SWAP2 00003615: SWAP1 00003616: POP 00003617: JUMP 00003618: JUMPDEST 00003619: PUSH2 0x3621 0000361c: DUP2 0000361d: PUSH2 0x3606 00003620: JUMP 00003621: JUMPDEST 00003622: DUP3 00003623: MSTORE 00003624: POP 00003625: POP 00003626: JUMP 00003627: JUMPDEST 00003628: PUSH1 0x00 0000362a: PUSH1 0x20 0000362c: DUP3 0000362d: ADD 0000362e: SWAP1 0000362f: POP 00003630: PUSH2 0x363c 00003633: PUSH1 0x00 00003635: DUP4 00003636: ADD 00003637: DUP5 00003638: PUSH2 0x3618 0000363b: JUMP 0000363c: JUMPDEST 0000363d: SWAP3 0000363e: SWAP2 0000363f: POP 00003640: POP 00003641: JUMP 00003642: JUMPDEST 00003643: PUSH1 0x00 00003645: DUP2 00003646: MLOAD 00003647: SWAP1 00003648: POP 00003649: PUSH2 0x3651 0000364c: DUP2 0000364d: PUSH2 0x33b6 00003650: JUMP 00003651: JUMPDEST 00003652: SWAP3 00003653: SWAP2 00003654: POP 00003655: POP 00003656: JUMP 00003657: JUMPDEST 00003658: PUSH1 0x00 0000365a: PUSH1 0x20 0000365c: DUP3 0000365d: DUP5 0000365e: SUB 0000365f: SLT 00003660: ISZERO 00003661: PUSH2 0x366d 00003664: JUMPI 00003665: PUSH2 0x366c 00003668: PUSH2 0x304d 0000366b: JUMP 0000366c: JUMPDEST 0000366d: JUMPDEST 0000366e: PUSH1 0x00 00003670: PUSH2 0x367b 00003673: DUP5 00003674: DUP3 00003675: DUP6 00003676: ADD 00003677: PUSH2 0x3642 0000367a: JUMP 0000367b: JUMPDEST 0000367c: SWAP2 0000367d: POP 0000367e: POP 0000367f: SWAP3 00003680: SWAP2 00003681: POP 00003682: POP 00003683: JUMP 00003684: JUMPDEST 00003685: PUSH1 0x00 00003687: PUSH1 0x40 00003689: DUP3 0000368a: ADD 0000368b: SWAP1 0000368c: POP 0000368d: PUSH2 0x3699 00003690: PUSH1 0x00 00003692: DUP4 00003693: ADD 00003694: DUP6 00003695: PUSH2 0x3618 00003698: JUMP 00003699: JUMPDEST 0000369a: PUSH2 0x36a6 0000369d: PUSH1 0x20 0000369f: DUP4 000036a0: ADD 000036a1: DUP5 000036a2: PUSH2 0x3117 000036a5: JUMP 000036a6: JUMPDEST 000036a7: SWAP4 000036a8: SWAP3 000036a9: POP 000036aa: POP 000036ab: POP 000036ac: JUMP 000036ad: JUMPDEST 000036ae: PUSH1 0x00 000036b0: DUP2 000036b1: MLOAD 000036b2: SWAP1 000036b3: POP 000036b4: PUSH2 0x36bc 000036b7: DUP2 000036b8: PUSH2 0x31f3 000036bb: JUMP 000036bc: JUMPDEST 000036bd: SWAP3 000036be: SWAP2 000036bf: POP 000036c0: POP 000036c1: JUMP 000036c2: JUMPDEST 000036c3: PUSH1 0x00 000036c5: PUSH1 0x20 000036c7: DUP3 000036c8: DUP5 000036c9: SUB 000036ca: SLT 000036cb: ISZERO 000036cc: PUSH2 0x36d8 000036cf: JUMPI 000036d0: PUSH2 0x36d7 000036d3: PUSH2 0x304d 000036d6: JUMP 000036d7: JUMPDEST 000036d8: JUMPDEST 000036d9: PUSH1 0x00 000036db: PUSH2 0x36e6 000036de: DUP5 000036df: DUP3 000036e0: DUP6 000036e1: ADD 000036e2: PUSH2 0x36ad 000036e5: JUMP 000036e6: JUMPDEST 000036e7: SWAP2 000036e8: POP 000036e9: POP 000036ea: SWAP3 000036eb: SWAP2 000036ec: POP 000036ed: POP 000036ee: JUMP 000036ef: JUMPDEST 000036f0: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00003711: PUSH1 0x00 00003713: MSTORE 00003714: PUSH1 0x11 00003716: PUSH1 0x04 00003718: MSTORE 00003719: PUSH1 0x24 0000371b: PUSH1 0x00 0000371d: REVERT 0000371e: JUMPDEST 0000371f: PUSH1 0x00 00003721: PUSH2 0x3729 00003724: DUP3 00003725: PUSH2 0x310d 00003728: JUMP 00003729: JUMPDEST 0000372a: SWAP2 0000372b: POP 0000372c: PUSH2 0x3734 0000372f: DUP4 00003730: PUSH2 0x310d 00003733: JUMP 00003734: JUMPDEST 00003735: SWAP3 00003736: POP 00003737: DUP3 00003738: DUP3 00003739: MUL 0000373a: PUSH2 0x3742 0000373d: DUP2 0000373e: PUSH2 0x310d 00003741: JUMP 00003742: JUMPDEST 00003743: SWAP2 00003744: POP 00003745: DUP3 00003746: DUP3 00003747: DIV 00003748: DUP5 00003749: EQ 0000374a: DUP4 0000374b: ISZERO 0000374c: OR 0000374d: PUSH2 0x3759 00003750: JUMPI 00003751: PUSH2 0x3758 00003754: PUSH2 0x36ef 00003757: JUMP 00003758: JUMPDEST 00003759: JUMPDEST 0000375a: POP 0000375b: SWAP3 0000375c: SWAP2 0000375d: POP 0000375e: POP 0000375f: JUMP 00003760: JUMPDEST 00003761: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00003782: PUSH1 0x00 00003784: MSTORE 00003785: PUSH1 0x12 00003787: PUSH1 0x04 00003789: MSTORE 0000378a: PUSH1 0x24 0000378c: PUSH1 0x00 0000378e: REVERT 0000378f: JUMPDEST 00003790: PUSH1 0x00 00003792: PUSH2 0x379a 00003795: DUP3 00003796: PUSH2 0x310d 00003799: JUMP 0000379a: JUMPDEST 0000379b: SWAP2 0000379c: POP 0000379d: PUSH2 0x37a5 000037a0: DUP4 000037a1: PUSH2 0x310d 000037a4: JUMP 000037a5: JUMPDEST 000037a6: SWAP3 000037a7: POP 000037a8: DUP3 000037a9: PUSH2 0x37b5 000037ac: JUMPI 000037ad: PUSH2 0x37b4 000037b0: PUSH2 0x3760 000037b3: JUMP 000037b4: JUMPDEST 000037b5: JUMPDEST 000037b6: DUP3 000037b7: DUP3 000037b8: DIV 000037b9: SWAP1 000037ba: POP 000037bb: SWAP3 000037bc: SWAP2 000037bd: POP 000037be: POP 000037bf: JUMP 000037c0: JUMPDEST 000037c1: PUSH1 0x00 000037c3: PUSH1 0x40 000037c5: DUP3 000037c6: ADD 000037c7: SWAP1 000037c8: POP 000037c9: PUSH2 0x37d5 000037cc: PUSH1 0x00 000037ce: DUP4 000037cf: ADD 000037d0: DUP6 000037d1: PUSH2 0x359e 000037d4: JUMP 000037d5: JUMPDEST 000037d6: PUSH2 0x37e2 000037d9: PUSH1 0x20 000037db: DUP4 000037dc: ADD 000037dd: DUP5 000037de: PUSH2 0x3117 000037e1: JUMP 000037e2: JUMPDEST 000037e3: SWAP4 000037e4: SWAP3 000037e5: POP 000037e6: POP 000037e7: POP 000037e8: JUMP 000037e9: JUMPDEST 000037ea: PUSH1 0x00 000037ec: PUSH1 0x80 000037ee: DUP3 000037ef: ADD 000037f0: SWAP1 000037f1: POP 000037f2: PUSH2 0x37fe 000037f5: PUSH1 0x00 000037f7: DUP4 000037f8: ADD 000037f9: DUP8 000037fa: PUSH2 0x30e3 000037fd: JUMP 000037fe: JUMPDEST 000037ff: PUSH2 0x380b 00003802: PUSH1 0x20 00003804: DUP4 00003805: ADD 00003806: DUP7 00003807: PUSH2 0x359e 0000380a: JUMP 0000380b: JUMPDEST 0000380c: PUSH2 0x3818 0000380f: PUSH1 0x40 00003811: DUP4 00003812: ADD 00003813: DUP6 00003814: PUSH2 0x359e 00003817: JUMP 00003818: JUMPDEST 00003819: PUSH2 0x3825 0000381c: PUSH1 0x60 0000381e: DUP4 0000381f: ADD 00003820: DUP5 00003821: PUSH2 0x3117 00003824: JUMP 00003825: JUMPDEST 00003826: SWAP6 00003827: SWAP5 00003828: POP 00003829: POP 0000382a: POP 0000382b: POP 0000382c: POP 0000382d: JUMP 0000382e: JUMPDEST 0000382f: PUSH1 0x00 00003831: PUSH2 0x3839 00003834: DUP3 00003835: PUSH2 0x310d 00003838: JUMP 00003839: JUMPDEST 0000383a: SWAP2 0000383b: POP 0000383c: PUSH2 0x3844 0000383f: DUP4 00003840: PUSH2 0x310d 00003843: JUMP 00003844: JUMPDEST 00003845: SWAP3 00003846: POP 00003847: DUP3 00003848: DUP3 00003849: ADD 0000384a: SWAP1 0000384b: POP 0000384c: DUP1 0000384d: DUP3 0000384e: GT 0000384f: ISZERO 00003850: PUSH2 0x385c 00003853: JUMPI 00003854: PUSH2 0x385b 00003857: PUSH2 0x36ef 0000385a: JUMP 0000385b: JUMPDEST 0000385c: JUMPDEST 0000385d: SWAP3 0000385e: SWAP2 0000385f: POP 00003860: POP 00003861: JUMP 00003862: JUMPDEST 00003863: PUSH1 0x00 00003865: PUSH2 0x386d 00003868: DUP3 00003869: PUSH2 0x310d 0000386c: JUMP 0000386d: JUMPDEST 0000386e: SWAP2 0000386f: POP 00003870: PUSH2 0x3878 00003873: DUP4 00003874: PUSH2 0x310d 00003877: JUMP 00003878: JUMPDEST 00003879: SWAP3 0000387a: POP 0000387b: DUP3 0000387c: DUP3 0000387d: SUB 0000387e: SWAP1 0000387f: POP 00003880: DUP2 00003881: DUP2 00003882: GT 00003883: ISZERO 00003884: PUSH2 0x3890 00003887: JUMPI 00003888: PUSH2 0x388f 0000388b: PUSH2 0x36ef 0000388e: JUMP 0000388f: JUMPDEST 00003890: JUMPDEST 00003891: SWAP3 00003892: SWAP2 00003893: POP 00003894: POP 00003895: JUMP 00003896: JUMPDEST 00003897: PUSH1 0x00 00003899: DUP2 0000389a: SWAP1 0000389b: POP 0000389c: SWAP2 0000389d: SWAP1 0000389e: POP 0000389f: JUMP 000038a0: JUMPDEST 000038a1: PUSH1 0x00 000038a3: PUSH8 0xffffffffffffffff 000038ac: DUP3 000038ad: AND 000038ae: SWAP1 000038af: POP 000038b0: SWAP2 000038b1: SWAP1 000038b2: POP 000038b3: JUMP 000038b4: JUMPDEST 000038b5: PUSH1 0x00 000038b7: PUSH2 0x38cf 000038ba: PUSH2 0x38ca 000038bd: PUSH2 0x38c5 000038c0: DUP5 000038c1: PUSH2 0x3896 000038c4: JUMP 000038c5: JUMPDEST 000038c6: PUSH2 0x35c8 000038c9: JUMP 000038ca: JUMPDEST 000038cb: PUSH2 0x38a0 000038ce: JUMP 000038cf: JUMPDEST 000038d0: SWAP1 000038d1: POP 000038d2: SWAP2 000038d3: SWAP1 000038d4: POP 000038d5: JUMP 000038d6: JUMPDEST 000038d7: PUSH2 0x38df 000038da: DUP2 000038db: PUSH2 0x38b4 000038de: JUMP 000038df: JUMPDEST 000038e0: DUP3 000038e1: MSTORE 000038e2: POP 000038e3: POP 000038e4: JUMP 000038e5: JUMPDEST 000038e6: PUSH1 0x00 000038e8: PUSH1 0x20 000038ea: DUP3 000038eb: ADD 000038ec: SWAP1 000038ed: POP 000038ee: PUSH2 0x38fa 000038f1: PUSH1 0x00 000038f3: DUP4 000038f4: ADD 000038f5: DUP5 000038f6: PUSH2 0x38d6 000038f9: JUMP 000038fa: JUMPDEST 000038fb: SWAP3 000038fc: SWAP2 000038fd: POP 000038fe: POP 000038ff: JUMP 00003900: JUMPDEST 00003901: PUSH1 0x00 00003903: PUSH1 0x60 00003905: DUP3 00003906: ADD 00003907: SWAP1 00003908: POP 00003909: PUSH2 0x3915 0000390c: PUSH1 0x00 0000390e: DUP4 0000390f: ADD 00003910: DUP7 00003911: PUSH2 0x359e 00003914: JUMP 00003915: JUMPDEST 00003916: PUSH2 0x3922 00003919: PUSH1 0x20 0000391b: DUP4 0000391c: ADD 0000391d: DUP6 0000391e: PUSH2 0x359e 00003921: JUMP 00003922: JUMPDEST 00003923: PUSH2 0x392f 00003926: PUSH1 0x40 00003928: DUP4 00003929: ADD 0000392a: DUP5 0000392b: PUSH2 0x3117 0000392e: JUMP 0000392f: JUMPDEST 00003930: SWAP5 00003931: SWAP4 00003932: POP 00003933: POP 00003934: POP 00003935: POP 00003936: JUMP 00003937: JUMPDEST 00003938: PUSH2 0x3940 0000393b: DUP2 0000393c: PUSH2 0x30d7 0000393f: JUMP 00003940: JUMPDEST 00003941: DUP2 00003942: EQ 00003943: PUSH2 0x394b 00003946: JUMPI 00003947: PUSH1 0x00 00003949: DUP1 0000394a: REVERT 0000394b: JUMPDEST 0000394c: POP 0000394d: JUMP 0000394e: JUMPDEST 0000394f: PUSH1 0x00 00003951: DUP2 00003952: MLOAD 00003953: SWAP1 00003954: POP 00003955: PUSH2 0x395d 00003958: DUP2 00003959: PUSH2 0x3937 0000395c: JUMP 0000395d: JUMPDEST 0000395e: SWAP3 0000395f: SWAP2 00003960: POP 00003961: POP 00003962: JUMP 00003963: JUMPDEST 00003964: PUSH1 0x00 00003966: PUSH1 0x20 00003968: DUP3 00003969: DUP5 0000396a: SUB 0000396b: SLT 0000396c: ISZERO 0000396d: PUSH2 0x3979 00003970: JUMPI 00003971: PUSH2 0x3978 00003974: PUSH2 0x304d 00003977: JUMP 00003978: JUMPDEST 00003979: JUMPDEST 0000397a: PUSH1 0x00 0000397c: PUSH2 0x3987 0000397f: DUP5 00003980: DUP3 00003981: DUP6 00003982: ADD 00003983: PUSH2 0x394e 00003986: JUMP 00003987: JUMPDEST 00003988: SWAP2 00003989: POP 0000398a: POP 0000398b: SWAP3 0000398c: SWAP2 0000398d: POP 0000398e: POP 0000398f: JUMP 00003990: JUMPDEST 00003991: PUSH1 0x00 00003993: PUSH1 0x40 00003995: DUP3 00003996: ADD 00003997: SWAP1 00003998: POP 00003999: PUSH2 0x39a5 0000399c: PUSH1 0x00 0000399e: DUP4 0000399f: ADD 000039a0: DUP6 000039a1: PUSH2 0x359e 000039a4: JUMP 000039a5: JUMPDEST 000039a6: PUSH2 0x39b2 000039a9: PUSH1 0x20 000039ab: DUP4 000039ac: ADD 000039ad: DUP5 000039ae: PUSH2 0x32af 000039b1: JUMP 000039b2: JUMPDEST 000039b3: SWAP4 000039b4: SWAP3 000039b5: POP 000039b6: POP 000039b7: POP 000039b8: JUMP 000039b9: JUMPDEST 000039ba: PUSH1 0x00 000039bc: DUP2 000039bd: MLOAD 000039be: SWAP1 000039bf: POP 000039c0: SWAP2 000039c1: SWAP1 000039c2: POP 000039c3: JUMP 000039c4: JUMPDEST 000039c5: PUSH1 0x00 000039c7: DUP2 000039c8: SWAP1 000039c9: POP 000039ca: SWAP3 000039cb: SWAP2 000039cc: POP 000039cd: POP 000039ce: JUMP 000039cf: JUMPDEST 000039d0: PUSH1 0x00 000039d2: PUSH2 0x39da 000039d5: DUP3 000039d6: PUSH2 0x39b9 000039d9: JUMP 000039da: JUMPDEST 000039db: PUSH2 0x39e4 000039de: DUP2 000039df: DUP6 000039e0: PUSH2 0x39c4 000039e3: JUMP 000039e4: JUMPDEST 000039e5: SWAP4 000039e6: POP 000039e7: PUSH2 0x39f4 000039ea: DUP2 000039eb: DUP6 000039ec: PUSH1 0x20 000039ee: DUP7 000039ef: ADD 000039f0: PUSH2 0x315d 000039f3: JUMP 000039f4: JUMPDEST 000039f5: DUP1 000039f6: DUP5 000039f7: ADD 000039f8: SWAP2 000039f9: POP 000039fa: POP 000039fb: SWAP3 000039fc: SWAP2 000039fd: POP 000039fe: POP 000039ff: JUMP 00003a00: JUMPDEST 00003a01: PUSH1 0x00 00003a03: PUSH2 0x3a0c 00003a06: DUP3 00003a07: DUP5 00003a08: PUSH2 0x39cf 00003a0b: JUMP 00003a0c: JUMPDEST 00003a0d: SWAP2 00003a0e: POP 00003a0f: DUP2 00003a10: SWAP1 00003a11: POP 00003a12: SWAP3 00003a13: SWAP2 00003a14: POP 00003a15: POP 00003a16: JUMP 00003a17: INVALID 00003a18: LOG2 00003a19: PUSH5 0x6970667358 00003a1f: UNKNOWN(0x22) 00003a20: SLT 00003a21: KECCAK256 00003a22: DIV 00003a23: GAS 00003a24: BLOCKHASH 00003a25: UNKNOWN(0xCE) 00003a26: UNKNOWN(0x2E) 00003a27: SAR 00003a28: UNKNOWN(0x28) 00003a29: UNKNOWN(0xAF) 00003a2a: UNKNOWN(0xD7) 00003a2b: DIFFICULTY 00003a2c: UNKNOWN(0xEC) 00003a2d: RETURN 00003a2e: EQ 00003a2f: UNKNOWN(0xE7) 00003a30: PUSH7 0x69971934ea93a0 00003a38: MSTORE 00003a39: DUP9 00003a3a: UNKNOWN(0xDE) 00003a3b: GASPRICE 00003a3c: UNKNOWN(0xCB) 00003a3d: LOG0 00003a3e: ADDRESS 00003a3f: TIMESTAMP 00003a40: UNKNOWN(0xA5) 00003a41: CODESIZE 00003a42: PUSH5 0x736f6c6343 00003a48: STOP 00003a49: ADDMOD 00003a4a: OR 00003a4b: STOP 00003a4c: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0xde04d3c36fdea0ce370472b6b1b345ad35bc72782e6effe2920d8d3beeaa857d
call_targets:
0xa92299289361fdcbb4ce9acbb512a84bd5fab37d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xde04d3c36fdea0ce370472b6b1b345ad35bc72782e6effe2920d8d3beeaa857d",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xa92299289361fdcbb4ce9acbb512a84bd5fab37d"
],
"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": "0xe7b7937f",
"selector": "0xe7b7937f",
"calldata_variants": [
"0xe7b7937f",
"0xe7b7937f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe8bac93b",
"selector": "0xe8bac93b",
"calldata_variants": [
"0xe8bac93b",
"0xe8bac93b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9af7c24",
"selector": "0xe9af7c24",
"calldata_variants": [
"0xe9af7c24",
"0xe9af7c240000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf3fef3a3",
"selector": "0xf3fef3a3",
"calldata_variants": [
"0xf3fef3a3",
"0xf3fef3a30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfe4b84df",
"selector": "0xfe4b84df",
"calldata_variants": [
"0xfe4b84df",
"0xfe4b84df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd80be039",
"selector": "0xd80be039",
"calldata_variants": [
"0xd80be039",
"0xd80be0390000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf11653d",
"selector": "0xdf11653d",
"calldata_variants": [
"0xdf11653d",
"0xdf11653d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2351,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2958,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4236,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 8,
"guards_detected": [],
"untrusted_call_count": 8
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0xde04d3c36fdea0ce370472b6b1b345ad35bc72782e6effe2920d8d3beeaa857d
call_targets:
0xa92299289361fdcbb4ce9acbb512a84bd5fab37d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xde04d3c36fdea0ce370472b6b1b345ad35bc72782e6effe2920d8d3beeaa857d",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xa92299289361fdcbb4ce9acbb512a84bd5fab37d"
],
"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": "0xe7b7937f",
"selector": "0xe7b7937f",
"calldata_variants": [
"0xe7b7937f",
"0xe7b7937f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe8bac93b",
"selector": "0xe8bac93b",
"calldata_variants": [
"0xe8bac93b",
"0xe8bac93b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9af7c24",
"selector": "0xe9af7c24",
"calldata_variants": [
"0xe9af7c24",
"0xe9af7c240000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf3fef3a3",
"selector": "0xf3fef3a3",
"calldata_variants": [
"0xf3fef3a3",
"0xf3fef3a30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfe4b84df",
"selector": "0xfe4b84df",
"calldata_variants": [
"0xfe4b84df",
"0xfe4b84df0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd80be039",
"selector": "0xd80be039",
"calldata_variants": [
"0xd80be039",
"0xd80be0390000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf11653d",
"selector": "0xdf11653d",
"calldata_variants": [
"0xdf11653d",
"0xdf11653d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2351,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2958,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4236,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 8,
"guards_detected": []
}
|
| low | auth | codex | Withdrawal cooldown bypassable via LP token transfers | 65 | no | — |
viewevidence_json{
"evidence": "The withdrawal gate uses users[msg.sender].lastDepositBlock, which is only updated on deposit. Transfers can be enabled and do not update users[].lastDepositBlock, so recipients with a default 0 lastDepositBlock can withdraw immediately.",
"locations": [
"contracts/contracts/evm/launch_vault/vault.sol:90",
"contracts/contracts/evm/launch_vault/vault.sol:110",
"contracts/contracts/evm/launch_vault/vault.sol:123",
"contracts/contracts/evm/launch_vault/vault.sol:192",
"contracts/contracts/evm/launch_vault/vault_token.sol:33"
],
"recommendation": "If the withdrawal delay is a security requirement, update lastDepositBlock on receipt of LP tokens (e.g., hook transfers in BlackwingVaultToken to notify the vault), or enforce the delay based on last transfer time, or keep transfers disabled when the cooldown is required.",
"exploit_scenario": "If the owner enables LP transfers, a user can deposit, receive vault tokens, immediately transfer them to a fresh address (with default lastDepositBlock = 0), and withdraw in the same block window, bypassing minBlocksSinceLastDeposit."
}
|
| info | access_control | codex | LP token admin can grant VAULT_ROLE and mint unbacked shares | 60 | no | — |
viewevidence_json{
"evidence": "BlackwingVaultToken.initialize grants DEFAULT_ADMIN_ROLE to msg.sender, while mint/burn are restricted only by VAULT_ROLE. DEFAULT_ADMIN_ROLE can grant VAULT_ROLE, enabling arbitrary mint/burn if that key is compromised.",
"locations": [
"contracts/contracts/evm/launch_vault/vault_token.sol:20",
"contracts/contracts/evm/launch_vault/vault_token.sol:23",
"contracts/contracts/evm/launch_vault/vault_token.sol:43"
],
"recommendation": "Limit DEFAULT_ADMIN_ROLE to a governance/multisig or the vault itself, or set VAULT_ROLE\u2019s admin to itself and renounce DEFAULT_ADMIN_ROLE after setup to reduce mint/burn surface.",
"exploit_scenario": "If the DEFAULT_ADMIN_ROLE holder is compromised or misconfigured, they can grant themselves VAULT_ROLE, mint arbitrary LP tokens, and withdraw underlying assets from the vault, bypassing deposit requirements."
}
|
| 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
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 16
}
|