cc0af19c-f5b5-4769-92bd-1d29f762fd1e
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 |
|---|---|---|---|---|
| 30257 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 73726 | artifact.fetch | failed | 1 / 3 | 2 weeks ago |
| 73727 | tool.cast_disasm | complete | 1 / 3 | 2 weeks ago |
| 73728 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 73729 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 73730 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 73731 | validation.fork | complete | 1 / 3 | 2 weeks ago |
No slither job recorded yet.
[codex:1027767] OpenAI Codex v0.77.0 (research preview)
[codex:1027767] --------
[codex:1027767] workdir: /tmp/codex-multi-wo4bau6h
[codex:1027767] model: gpt-5.2-codex
[codex:1027767] provider: openai
[codex:1027767] approval: never
[codex:1027767] sandbox: read-only
[codex:1027767] reasoning effort: xhigh
[codex:1027767] reasoning summaries: auto
[codex:1027767] session id: 019b6278-e14d-7b52-a3dc-8031823bd570
[codex:1027767] --------
[codex:1027767] user
[codex:1027767] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1027767] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1027767] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1027767]
[codex:1027767] Scope rules:
[codex:1027767] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1027767] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1027767]
[codex:1027767] Output MUST be valid JSON matching the provided schema.
[codex:1027767] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1027767] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1027767]
[codex:1027767] Output constraints (IMPORTANT):
[codex:1027767] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1027767] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1027767] mcp startup: no servers
[codex:1027767]
[codex:1027767] thinking
[codex:1027767] **Preparing to read AUDIT_BUNDLE.txt**
[codex:1027767] exec
[codex:1027767] /bin/bash -lc ls in /tmp/codex-multi-wo4bau6h succeeded in 5ms:
[codex:1027767] AUDIT_BUNDLE.txt
[codex:1027767] codex-output-schema.json
[codex:1027767] contracts
[codex:1027767] exec
[codex:1027767] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-wo4bau6h succeeded in 7ms:
[codex:1027767] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1027767]
[codex:1027767] ================================================================================
[codex:1027767] FILE: contracts/lib/solmate/src/tokens/ERC20.sol
[codex:1027767] ================================================================================
[codex:1027767] // SPDX-License-Identifier: AGPL-3.0-only
[codex:1027767] pragma solidity >=0.8.0;
[codex:1027767]
[codex:1027767] /// @notice Modern and gas efficient ERC20 + EIP-2612 implementation.
[codex:1027767] /// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC20.sol)
[codex:1027767] /// @author Modified from Uniswap (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/UniswapV2ERC20.sol)
[codex:1027767] /// @dev Do not manually set balances without updating totalSupply, as the sum of all user balances must not exceed it.
[codex:1027767] abstract contract ERC20 {
[codex:1027767] /*///////////////////////////////////////////////////////////////
[codex:1027767] EVENTS
[codex:1027767] //////////////////////////////////////////////////////////////*/
[codex:1027767]
[codex:1027767] event Transfer(address indexed from, address indexed to, uint256 amount);
[codex:1027767]
[codex:1027767] event Approval(address indexed owner, address indexed spender, uint256 amount);
[codex:1027767]
[codex:1027767] thinking
[codex:1027767] **Preparing to audit smart contract bundle**
[codex:1027767] exec
[codex:1027767] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-wo4bau6h succeeded in 7ms:
[codex:1027767] 4:FILE: contracts/lib/solmate/src/tokens/ERC20.sol
[codex:1027767] 203:FILE: contracts/lib/solmate/src/utils/ReentrancyGuard.sol
[codex:1027767] 226:FILE: contracts/lib/solmate/src/utils/SafeTransferLib.sol
[codex:1027767] 370:FILE: contracts/src/Entity.sol
[codex:1027767] 912:FILE: contracts/src/Portfolio.sol
[codex:1027767] 1447:FILE: contracts/src/Registry.sol
[codex:1027767] 1791:FILE: contracts/src/RegistryAuth.sol
[codex:1027767] 1850:FILE: contracts/src/interfaces/ISwapWrapper.sol
[codex:1027767] 1892:FILE: contracts/src/lib/Math.sol
[codex:1027767] 1951:FILE: contracts/src/lib/ReentrancyGuard.sol
[codex:1027767] 1981:FILE: contracts/src/lib/auth/Auth.sol
[codex:1027767] 2047:FILE: contracts/src/lib/auth/EndaomentAuth.sol
[codex:1027767] 2126:FILE: contracts/src/lib/auth/authorities/RolesAuthority.sol
[codex:1027767] 2226:FILE: contracts/src/portfolios/SingleTokenPortfolio.sol
[codex:1027767]
[codex:1027767] thinking
[codex:1027767] **Reviewing key smart contract files**
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '370,912p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 5ms:
[codex:1027767] FILE: contracts/src/Entity.sol
[codex:1027767] ================================================================================
[codex:1027767] //SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity >=0.8.0;
[codex:1027767]
[codex:1027767] import "solmate/tokens/ERC20.sol";
[codex:1027767] import "solmate/utils/SafeTransferLib.sol";
[codex:1027767] import "./lib/ReentrancyGuard.sol";
[codex:1027767]
[codex:1027767] import {Registry} from "./Registry.sol";
[codex:1027767] import {ISwapWrapper} from "./interfaces/ISwapWrapper.sol";
[codex:1027767] import {EndaomentAuth} from "./lib/auth/EndaomentAuth.sol";
[codex:1027767] import {Portfolio} from "./Portfolio.sol";
[codex:1027767] import {Math} from "./lib/Math.sol";
[codex:1027767]
[codex:1027767] error EntityInactive();
[codex:1027767] error PortfolioInactive();
[codex:1027767] error InsufficientFunds();
[codex:1027767] error InvalidAction();
[codex:1027767] error BalanceMismatch();
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '912,1447p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 6ms:
[codex:1027767] FILE: contracts/src/Portfolio.sol
[codex:1027767] ================================================================================
[codex:1027767] //SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity >=0.8.0;
[codex:1027767]
[codex:1027767] import {ReentrancyGuard} from "solmate/utils/ReentrancyGuard.sol";
[codex:1027767] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1027767] import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
[codex:1027767] import {Registry} from "./Registry.sol";
[codex:1027767] import {Entity} from "./Entity.sol";
[codex:1027767] import {EndaomentAuth} from "./lib/auth/EndaomentAuth.sol";
[codex:1027767] import {Math} from "./lib/Math.sol";
[codex:1027767]
[codex:1027767] abstract contract Portfolio is ERC20, EndaomentAuth, ReentrancyGuard {
[codex:1027767] using Math for uint256;
[codex:1027767] using SafeTransferLib for ERC20;
[codex:1027767]
[codex:1027767] Registry public immutable registry;
[codex:1027767] uint256 public cap;
[codex:1027767] address public feeTreasury;
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '1447,1791p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 6ms:
[codex:1027767] FILE: contracts/src/Registry.sol
[codex:1027767] ================================================================================
[codex:1027767] //SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity 0.8.13;
[codex:1027767]
[codex:1027767] import {Math} from "./lib/Math.sol";
[codex:1027767] import {ERC20} from "solmate/tokens/ERC20.sol";
[codex:1027767] import {Auth, Authority} from "./lib/auth/Auth.sol";
[codex:1027767] import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";
[codex:1027767]
[codex:1027767] import {RegistryAuth} from "./RegistryAuth.sol";
[codex:1027767] import {Entity} from "./Entity.sol";
[codex:1027767] import {ISwapWrapper} from "./interfaces/ISwapWrapper.sol";
[codex:1027767] import {Portfolio} from "./Portfolio.sol";
[codex:1027767]
[codex:1027767] // --- Errors ---
[codex:1027767] error Unauthorized();
[codex:1027767] error UnsupportedSwapper();
[codex:1027767]
[codex:1027767] /**
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '1791,1892p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 6ms:
[codex:1027767] FILE: contracts/src/RegistryAuth.sol
[codex:1027767] ================================================================================
[codex:1027767] //SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity 0.8.13;
[codex:1027767]
[codex:1027767] import {Auth, Authority} from "./lib/auth/Auth.sol";
[codex:1027767] import {RolesAuthority} from "./lib/auth/authorities/RolesAuthority.sol";
[codex:1027767]
[codex:1027767] // --- Errors ---
[codex:1027767] error OwnershipInvalid();
[codex:1027767]
[codex:1027767] /**
[codex:1027767] * @notice RegistryAuth - contract to control ownership of the Registry.
[codex:1027767] */
[codex:1027767] contract RegistryAuth is RolesAuthority {
[codex:1027767] /// @notice Emitted when the first step of an ownership transfer (proposal) is done.
[codex:1027767] event OwnershipTransferProposed(address indexed user, address indexed newOwner);
[codex:1027767]
[codex:1027767] /// @notice Emitted when the second step of an ownership transfer (claim) is done.
[codex:1027767] event OwnershipChanged(address indexed owner, address indexed newOwner);
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '1892,1981p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 6ms:
[codex:1027767] FILE: contracts/src/lib/Math.sol
[codex:1027767] ================================================================================
[codex:1027767] // SPDX-License-Identifier: BSD 3-Clause
[codex:1027767] pragma solidity 0.8.13;
[codex:1027767]
[codex:1027767] library Math {
[codex:1027767] uint256 internal constant ZOC = 1e4;
[codex:1027767]
[codex:1027767] /**
[codex:1027767] * @dev Multiply 2 numbers where at least one is a zoc, return product in original units of the other number.
[codex:1027767] */
[codex:1027767] function zocmul(uint256 x, uint256 y) internal pure returns (uint256 z) {
[codex:1027767] z = x * y;
[codex:1027767] unchecked {
[codex:1027767] z /= ZOC;
[codex:1027767] }
[codex:1027767] }
[codex:1027767]
[codex:1027767] // Below is WAD math from solmate's FixedPointMathLib.
[codex:1027767] // https://github.com/Rari-Capital/solmate/blob/c8278b3cb948cffda3f1de5a401858035f262060/src/utils/FixedPointMathLib.sol
[codex:1027767] exec
[codex:1027767] /bin/bash -lc "sed -n '1981,2047p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-wo4bau6h succeeded in 7ms:
[codex:1027767] FILE: contracts/src/lib/auth/Auth.sol
[codex:1027767] ================================================================================
[codex:1027767] // SPDX-License-Identifier: AGPL-3.0-only
[codex:1027767] pragma solidity >=0.8.0;
[codex:1027767]
[codex:1027767] // This contract is modified from Solmate only to make requiresAuth virtual on line 26
[codex:1027767]
[codex:1027767] /// @notice Provides a flexible and updatable auth pattern which is completely separate from application logic.
[codex:1027767] /// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/auth/Auth.sol)
[codex:1027767] /// @author Modified from Dappsys (https://github.com/dapphub/ds-auth/blob/master/src/auth.sol)
[codex:1027767] abstract contract Auth {
[codex:1027767] event OwnerUpdated(address indexed user, address indexed newOwner);
[codex:1027767]
[codex:1027767] event AuthorityUpdated(address indexed user, Authority indexed newAuthority);
[codex:1027767]
[codex:1027767] address public owner;
[codex:1027767]
[codex:1027767] Authority public authority;
[codex:1027767]
[codex:1027767] constructor(address _owner, Authority _authority) {
[codex:1027767]
[codex:1027767]
[codex:1027767]
[codex:1027767]
[codex:1027767]
[codex:1027767]
[codex:1027767]
[codex:1027767]
[codex:1027767]
[codex:1027767] thinking
[codex:1027767] **Evaluating contract security and potential vulnerabilities**
[codex:1027767]
[codex:1027767] I'm auditing the contracts focusing on reentrancy, access control, upgradeability, signature validation, oracle manipulation, accounting integrity, external calls, and delegatecall risks. I’m digging into how balance updates and external token calls interact, especially around ERC20 transfers and potential callbacks, plus the safety of admin functions and initialization guards. There’s a lot about carefully checking if any external or reentrant calls can be exploited given internal state updates and permissions. Let’s explore these nuanced patterns and see where risks might lie!
[codex:1027767] thinking
[codex:1027767] **Reviewing token handling and access control nuances**
[codex:1027767]
[codex:1027767] There's a lot to unravel here! I’m analyzing how ETH amounts and approvals are managed with swap wrappers, noting the reliance on admin-only arbitrary calls without reentrancy guards. I’m also exploring how price oracles via swap outputs could let deposits bypass caps through manipulation, and reviewing how slippage, approvals, and signature checks interplay. The evaluation also covers potential edge cases like division-by-zero, leftover assets after shutdown, and approval patterns that might cause failures with some tokens. I want to see how these contract interactions might affect security or correctness under various scenarios.
[codex:1027767] thinking
[codex:1027767] **Evaluating permission tags and entity activation risks**
[codex:1027767]
[codex:1027767] I'm examining how permission tags use address-like bytes that might collide with real contract addresses, considering how active entities can be set by any approved factory without strict ownership checks. Also, I’m looking into how the receiveTransfer function can be called by any active entity to alter balances without actual token transfers, potentially causing accounting confusion, though it’s fixable. There are also nuances in deposit/redeem logic, fee calculations, approvals, and reentrancy protections that seem designed carefully but deserve close attention to subtle edge cases.
[codex:1027767] thinking
[codex:1027767] **Analyzing token transfer nuances and reentrancy considerations**
[codex:1027767]
[codex:1027767] I'm reviewing how fee-on-transfer tokens could cause balance mismatches in transfers and payouts, considering that the baseToken is assumed stable and fee-free. I’m also looking into subtle operator precedence in role checks, access control on key functions, and reentrancy risks in external calls where state updates happen after transfers. The intricacies of deposit/redeem logic, permission checks, and allowance handling show a thoughtful design, though some edge cases with ERC777-like tokens and token approvals deserve attention to possible reentrancy or mismatch issues.
[codex:1027767] thinking
[codex:1027767] **Evaluating deposit/redeem logic and role-based access nuances**
[codex:1027767]
[codex:1027767] I’m walking through how asset-to-share conversions handle fees and swaps, checking for any edge cases in cap enforcement and decoding of swap data. I’m also contemplating the impact of allowed active entities on deposit permissions and how approvals with tokens like USDT are managed. The interplay of access controls, especially around entity activation and role checks, reveals a complex but mostly safe system, though some scenarios around trusted factories and active EOAs might subtly affect permissions.
[codex:1027767] thinking
[codex:1027767] **Inspecting authority mappings and approval edge cases**
[codex:1027767]
[codex:1027767] I’m analyzing how specialTarget addresses and capability mappings could affect function permissions, especially around public access flags. I’m also looking into allowance management during portfolio deposits, considering non-standard tokens and potential leftover approvals, alongside subtle transfer scenarios when entities might be EOAs instead of contracts. There is quite a bit to unpack about configuration risks and nuanced contract interactions!
[codex:1027767] thinking
[codex:1027767] **Evaluating portfolio shutdown reentrancy and oracle risks**
[codex:1027767]
[codex:1027767] I’m looking closely at shutdown’s lack of reentrancy guard and how a malicious swap wrapper could reenter during the swap to call redeem, though it seems harmless overall. I’m also considering how price manipulation via the swap wrapper’s output could let deposits bypass portfolio caps, posing an oracle manipulation risk worth mentioning among low-to-medium severity findings.
[codex:1027767] thinking
[codex:1027767] **Summarizing oracle manipulation and accounting observations**
[codex:1027767]
[codex:1027767] I’m weighing the oracle manipulation risk from using the swap wrapper’s spot price for the portfolio cap check, which could let deposits bypass the cap, though it doesn't cause direct loss. I’m also noting minor issues like active entities being able to inflate balances via `receiveTransfer`, causing temporary accounting mismatches without theft, and some event reporting inconsistencies—these seem low severity and mostly operational nuances rather than exploitable vulnerabilities. Overall, no critical issues stand out, but I’ll highlight these residual considerations.
[codex:1027767] thinking
[codex:1027767] **Preparing final JSON audit summary**
[codex:1027767]
[codex:1027767] I’m finalizing a clear JSON report that states no exploitable vulnerabilities were found while noting residual risks around trusted swap wrappers and cap enforcement relying on on-chain pricing. I’m making sure the output matches the required schema with no findings array and a concise summary highlighting assumptions and testing gaps.
[codex:1027767] codex
[codex:1027767] {"no_findings":true,"summary":"No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.","findings":[]}
[codex:1027767] tokens used
[codex:1027767] 68,157
[codex:1027767] {"no_findings":true,"summary":"No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.","findings":[]}
{
"codex": {
"ran_at": "2025-12-28T01:10:39.613043+00:00",
"returncode": 0
},
"summary": "No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.",
"raw_final": {
"summary": "No exploitable vulnerabilities found in the first-party contracts in scope. Residual risk: core invariants (fees/caps/accounting) assume a well-behaved `baseToken` and trusted, non-manipulable `ISwapWrapper` implementations configured in `Registry`; if those assumptions are violated, limits and accounting can be undermined.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x02fd 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x5d303519 00000019: GT 0000001a: PUSH2 0x018f 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xbfa37e37 00000024: GT 00000025: PUSH2 0x00e1 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xe37d15bf 0000002f: GT 00000030: PUSH2 0x008a 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xf06dfacb 0000003a: GT 0000003b: PUSH2 0x0064 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xf06dfacb 00000045: EQ 00000046: PUSH2 0x0919 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xfef78497 00000050: EQ 00000051: PUSH2 0x092f 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xff5ac9a4 0000005b: EQ 0000005c: PUSH2 0x0942 0000005f: JUMPI 00000060: PUSH1 0x00 00000062: DUP1 00000063: REVERT 00000064: JUMPDEST 00000065: DUP1 00000066: PUSH4 0xe37d15bf 0000006b: EQ 0000006c: PUSH2 0x08c3 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xe77c646d 00000076: EQ 00000077: PUSH2 0x08d9 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xf029748d 00000081: EQ 00000082: PUSH2 0x08f9 00000085: JUMPI 00000086: PUSH1 0x00 00000088: DUP1 00000089: REVERT 0000008a: JUMPDEST 0000008b: DUP1 0000008c: PUSH4 0xcbb94359 00000091: GT 00000092: PUSH2 0x00bb 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0xcbb94359 0000009c: EQ 0000009d: PUSH2 0x084b 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xd505accf 000000a7: EQ 000000a8: PUSH2 0x086b 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xdd62ed3e 000000b2: EQ 000000b3: PUSH2 0x088b 000000b6: JUMPI 000000b7: PUSH1 0x00 000000b9: DUP1 000000ba: REVERT 000000bb: JUMPDEST 000000bc: DUP1 000000bd: PUSH4 0xbfa37e37 000000c2: EQ 000000c3: PUSH2 0x07d7 000000c6: JUMPI 000000c7: DUP1 000000c8: PUSH4 0xc55dae63 000000cd: EQ 000000ce: PUSH2 0x07f7 000000d1: JUMPI 000000d2: DUP1 000000d3: PUSH4 0xc6e6f592 000000d8: EQ 000000d9: PUSH2 0x082b 000000dc: JUMPI 000000dd: PUSH1 0x00 000000df: DUP1 000000e0: REVERT 000000e1: JUMPDEST 000000e2: DUP1 000000e3: PUSH4 0x7dbc1df0 000000e8: GT 000000e9: PUSH2 0x0143 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x99aa7348 000000f3: GT 000000f4: PUSH2 0x011d 000000f7: JUMPI 000000f8: DUP1 000000f9: PUSH4 0x99aa7348 000000fe: EQ 000000ff: PUSH2 0x0795 00000102: JUMPI 00000103: DUP1 00000104: PUSH4 0xa9059cbb 00000109: EQ 0000010a: PUSH2 0x036c 0000010d: JUMPI 0000010e: DUP1 0000010f: PUSH4 0xbf7e214f 00000114: EQ 00000115: PUSH2 0x07aa 00000118: JUMPI 00000119: PUSH1 0x00 0000011b: DUP1 0000011c: REVERT 0000011d: JUMPDEST 0000011e: DUP1 0000011f: PUSH4 0x7dbc1df0 00000124: EQ 00000125: PUSH2 0x0733 00000128: JUMPI 00000129: DUP1 0000012a: PUSH4 0x7ecebe00 0000012f: EQ 00000130: PUSH2 0x0753 00000133: JUMPI 00000134: DUP1 00000135: PUSH4 0x95d89b41 0000013a: EQ 0000013b: PUSH2 0x0780 0000013e: JUMPI 0000013f: PUSH1 0x00 00000141: DUP1 00000142: REVERT 00000143: JUMPDEST 00000144: DUP1 00000145: PUSH4 0x67a52793 0000014a: GT 0000014b: PUSH2 0x0174 0000014e: JUMPI 0000014f: DUP1 00000150: PUSH4 0x67a52793 00000155: EQ 00000156: PUSH2 0x06bc 00000159: JUMPI 0000015a: DUP1 0000015b: PUSH4 0x70a08231 00000160: EQ 00000161: PUSH2 0x06d2 00000164: JUMPI 00000165: DUP1 00000166: PUSH4 0x7b103999 0000016b: EQ 0000016c: PUSH2 0x06ff 0000016f: JUMPI 00000170: PUSH1 0x00 00000172: DUP1 00000173: REVERT 00000174: JUMPDEST 00000175: DUP1 00000176: PUSH4 0x5d303519 0000017b: EQ 0000017c: PUSH2 0x066f 0000017f: JUMPI 00000180: DUP1 00000181: PUSH4 0x60dc2340 00000186: EQ 00000187: PUSH2 0x068f 0000018a: JUMPI 0000018b: PUSH1 0x00 0000018d: DUP1 0000018e: REVERT 0000018f: JUMPDEST 00000190: DUP1 00000191: PUSH4 0x23b872dd 00000196: GT 00000197: PUSH2 0x0253 0000019a: JUMPI 0000019b: DUP1 0000019c: PUSH4 0x38d52e0f 000001a1: GT 000001a2: PUSH2 0x01fc 000001a5: JUMPI 000001a6: DUP1 000001a7: PUSH4 0x47786d37 000001ac: GT 000001ad: PUSH2 0x01d6 000001b0: JUMPI 000001b1: DUP1 000001b2: PUSH4 0x47786d37 000001b7: EQ 000001b8: PUSH2 0x060f 000001bb: JUMPI 000001bc: DUP1 000001bd: PUSH4 0x490ae210 000001c2: EQ 000001c3: PUSH2 0x062f 000001c6: JUMPI 000001c7: DUP1 000001c8: PUSH4 0x5bae19ef 000001cd: EQ 000001ce: PUSH2 0x064f 000001d1: JUMPI 000001d2: PUSH1 0x00 000001d4: DUP1 000001d5: REVERT 000001d6: JUMPDEST 000001d7: DUP1 000001d8: PUSH4 0x38d52e0f 000001dd: EQ 000001de: PUSH2 0x056c 000001e1: JUMPI 000001e2: DUP1 000001e3: PUSH4 0x4288d871 000001e8: EQ 000001e9: PUSH2 0x05c5 000001ec: JUMPI 000001ed: DUP1 000001ee: PUSH4 0x458f5815 000001f3: EQ 000001f4: PUSH2 0x05f9 000001f7: JUMPI 000001f8: PUSH1 0x00 000001fa: DUP1 000001fb: REVERT 000001fc: JUMPDEST 000001fd: DUP1 000001fe: PUSH4 0x313ce567 00000203: GT 00000204: PUSH2 0x022d 00000207: JUMPI 00000208: DUP1 00000209: PUSH4 0x313ce567 0000020e: EQ 0000020f: PUSH2 0x04fb 00000212: JUMPI 00000213: DUP1 00000214: PUSH4 0x355274ea 00000219: EQ 0000021a: PUSH2 0x0541 0000021d: JUMPI 0000021e: DUP1 0000021f: PUSH4 0x3644e515 00000224: EQ 00000225: PUSH2 0x0557 00000228: JUMPI 00000229: PUSH1 0x00 0000022b: DUP1 0000022c: REVERT 0000022d: JUMPDEST 0000022e: DUP1 0000022f: PUSH4 0x23b872dd 00000234: EQ 00000235: PUSH2 0x048c 00000238: JUMPI 00000239: DUP1 0000023a: PUSH4 0x280398b5 0000023f: EQ 00000240: PUSH2 0x04a7 00000243: JUMPI 00000244: DUP1 00000245: PUSH4 0x30adf81f 0000024a: EQ 0000024b: PUSH2 0x04c7 0000024e: JUMPI 0000024f: PUSH1 0x00 00000251: DUP1 00000252: REVERT 00000253: JUMPDEST 00000254: DUP1 00000255: PUSH4 0x106f276f 0000025a: GT 0000025b: PUSH2 0x02b5 0000025e: JUMPI 0000025f: DUP1 00000260: PUSH4 0x1e7ee237 00000265: GT 00000266: PUSH2 0x028f 00000269: JUMPI 0000026a: DUP1 0000026b: PUSH4 0x1e7ee237 00000270: EQ 00000271: PUSH2 0x0405 00000274: JUMPI 00000275: DUP1 00000276: PUSH4 0x2031ee95 0000027b: EQ 0000027c: PUSH2 0x041f 0000027f: JUMPI 00000280: DUP1 00000281: PUSH4 0x22dc2909 00000286: EQ 00000287: PUSH2 0x046a 0000028a: JUMPI 0000028b: PUSH1 0x00 0000028d: DUP1 0000028e: REVERT 0000028f: JUMPDEST 00000290: DUP1 00000291: PUSH4 0x106f276f 00000296: EQ 00000297: PUSH2 0x03b1 0000029a: JUMPI 0000029b: DUP1 0000029c: PUSH4 0x18160ddd 000002a1: EQ 000002a2: PUSH2 0x03d1 000002a5: JUMPI 000002a6: DUP1 000002a7: PUSH4 0x1e500759 000002ac: EQ 000002ad: PUSH2 0x03e7 000002b0: JUMPI 000002b1: PUSH1 0x00 000002b3: DUP1 000002b4: REVERT 000002b5: JUMPDEST 000002b6: DUP1 000002b7: PUSH4 0x07a2d13a 000002bc: GT 000002bd: PUSH2 0x02e6 000002c0: JUMPI 000002c1: DUP1 000002c2: PUSH4 0x07a2d13a 000002c7: EQ 000002c8: PUSH2 0x034c 000002cb: JUMPI 000002cc: DUP1 000002cd: PUSH4 0x095ea7b3 000002d2: EQ 000002d3: PUSH2 0x036c 000002d6: JUMPI 000002d7: DUP1 000002d8: PUSH4 0x0a9d5514 000002dd: EQ 000002de: PUSH2 0x039c 000002e1: JUMPI 000002e2: PUSH1 0x00 000002e4: DUP1 000002e5: REVERT 000002e6: JUMPDEST 000002e7: DUP1 000002e8: PUSH4 0x01e1d114 000002ed: EQ 000002ee: PUSH2 0x0302 000002f1: JUMPI 000002f2: DUP1 000002f3: PUSH4 0x06fdde03 000002f8: EQ 000002f9: PUSH2 0x032a 000002fc: JUMPI 000002fd: JUMPDEST 000002fe: PUSH1 0x00 00000300: DUP1 00000301: REVERT 00000302: JUMPDEST 00000303: CALLVALUE 00000304: DUP1 00000305: ISZERO 00000306: PUSH2 0x030e 00000309: JUMPI 0000030a: PUSH1 0x00 0000030c: DUP1 0000030d: REVERT 0000030e: JUMPDEST 0000030f: POP 00000310: PUSH2 0x0317 00000313: PUSH2 0x0958 00000316: JUMP 00000317: JUMPDEST 00000318: PUSH1 0x40 0000031a: MLOAD 0000031b: SWAP1 0000031c: DUP2 0000031d: MSTORE 0000031e: PUSH1 0x20 00000320: ADD 00000321: JUMPDEST 00000322: PUSH1 0x40 00000324: MLOAD 00000325: DUP1 00000326: SWAP2 00000327: SUB 00000328: SWAP1 00000329: RETURN 0000032a: JUMPDEST 0000032b: CALLVALUE 0000032c: DUP1 0000032d: ISZERO 0000032e: PUSH2 0x0336 00000331: JUMPI 00000332: PUSH1 0x00 00000334: DUP1 00000335: REVERT 00000336: JUMPDEST 00000337: POP 00000338: PUSH2 0x033f 0000033b: PUSH2 0x096a 0000033e: JUMP 0000033f: JUMPDEST 00000340: PUSH1 0x40 00000342: MLOAD 00000343: PUSH2 0x0321 00000346: SWAP2 00000347: SWAP1 00000348: PUSH2 0x2b03 0000034b: JUMP 0000034c: JUMPDEST 0000034d: CALLVALUE 0000034e: DUP1 0000034f: ISZERO 00000350: PUSH2 0x0358 00000353: JUMPI 00000354: PUSH1 0x00 00000356: DUP1 00000357: REVERT 00000358: JUMPDEST 00000359: POP 0000035a: PUSH2 0x0317 0000035d: PUSH2 0x0367 00000360: CALLDATASIZE 00000361: PUSH1 0x04 00000363: PUSH2 0x2b16 00000366: JUMP 00000367: JUMPDEST 00000368: PUSH2 0x09f8 0000036b: JUMP 0000036c: JUMPDEST 0000036d: CALLVALUE 0000036e: DUP1 0000036f: ISZERO 00000370: PUSH2 0x0378 00000373: JUMPI 00000374: PUSH1 0x00 00000376: DUP1 00000377: REVERT 00000378: JUMPDEST 00000379: POP 0000037a: PUSH2 0x038c 0000037d: PUSH2 0x0387 00000380: CALLDATASIZE 00000381: PUSH1 0x04 00000383: PUSH2 0x2b54 00000386: JUMP 00000387: JUMPDEST 00000388: PUSH2 0x0a25 0000038b: JUMP 0000038c: JUMPDEST 0000038d: PUSH1 0x40 0000038f: MLOAD 00000390: SWAP1 00000391: ISZERO 00000392: ISZERO 00000393: DUP2 00000394: MSTORE 00000395: PUSH1 0x20 00000397: ADD 00000398: PUSH2 0x0321 0000039b: JUMP 0000039c: JUMPDEST 0000039d: CALLVALUE 0000039e: DUP1 0000039f: ISZERO 000003a0: PUSH2 0x03a8 000003a3: JUMPI 000003a4: PUSH1 0x00 000003a6: DUP1 000003a7: REVERT 000003a8: JUMPDEST 000003a9: POP 000003aa: PUSH2 0x0317 000003ad: PUSH2 0x0a59 000003b0: JUMP 000003b1: JUMPDEST 000003b2: CALLVALUE 000003b3: DUP1 000003b4: ISZERO 000003b5: PUSH2 0x03bd 000003b8: JUMPI 000003b9: PUSH1 0x00 000003bb: DUP1 000003bc: REVERT 000003bd: JUMPDEST 000003be: POP 000003bf: PUSH2 0x0317 000003c2: PUSH2 0x03cc 000003c5: CALLDATASIZE 000003c6: PUSH1 0x04 000003c8: PUSH2 0x2bc9 000003cb: JUMP 000003cc: JUMPDEST 000003cd: PUSH2 0x0b0a 000003d0: JUMP 000003d1: JUMPDEST 000003d2: CALLVALUE 000003d3: DUP1 000003d4: ISZERO 000003d5: PUSH2 0x03dd 000003d8: JUMPI 000003d9: PUSH1 0x00 000003db: DUP1 000003dc: REVERT 000003dd: JUMPDEST 000003de: POP 000003df: PUSH2 0x0317 000003e2: PUSH1 0x02 000003e4: SLOAD 000003e5: DUP2 000003e6: JUMP 000003e7: JUMPDEST 000003e8: CALLVALUE 000003e9: DUP1 000003ea: ISZERO 000003eb: PUSH2 0x03f3 000003ee: JUMPI 000003ef: PUSH1 0x00 000003f1: DUP1 000003f2: REVERT 000003f3: JUMPDEST 000003f4: POP 000003f5: PUSH2 0x0317 000003f8: PUSH2 0x0402 000003fb: CALLDATASIZE 000003fc: PUSH1 0x04 000003fe: PUSH2 0x2b16 00000401: JUMP 00000402: JUMPDEST 00000403: SWAP1 00000404: JUMP 00000405: JUMPDEST 00000406: CALLVALUE 00000407: DUP1 00000408: ISZERO 00000409: PUSH2 0x0411 0000040c: JUMPI 0000040d: PUSH1 0x00 0000040f: DUP1 00000410: REVERT 00000411: JUMPDEST 00000412: POP 00000413: PUSH1 0x0d 00000415: SLOAD 00000416: PUSH2 0x038c 00000419: SWAP1 0000041a: PUSH1 0xff 0000041c: AND 0000041d: DUP2 0000041e: JUMP 0000041f: JUMPDEST 00000420: CALLVALUE 00000421: DUP1 00000422: ISZERO 00000423: PUSH2 0x042b 00000426: JUMPI 00000427: PUSH1 0x00 00000429: DUP1 0000042a: REVERT 0000042b: JUMPDEST 0000042c: POP 0000042d: PUSH1 0x07 0000042f: SLOAD 00000430: PUSH2 0x0439 00000433: SWAP1 00000434: PUSH1 0x60 00000436: SHL 00000437: DUP2 00000438: JUMP 00000439: JUMPDEST 0000043a: PUSH1 0x40 0000043c: MLOAD 0000043d: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 0000045e: SWAP1 0000045f: SWAP2 00000460: AND 00000461: DUP2 00000462: MSTORE 00000463: PUSH1 0x20 00000465: ADD 00000466: PUSH2 0x0321 00000469: JUMP 0000046a: JUMPDEST 0000046b: CALLVALUE 0000046c: DUP1 0000046d: ISZERO 0000046e: PUSH2 0x0476 00000471: JUMPI 00000472: PUSH1 0x00 00000474: DUP1 00000475: REVERT 00000476: JUMPDEST 00000477: POP 00000478: PUSH2 0x048a 0000047b: PUSH2 0x0485 0000047e: CALLDATASIZE 0000047f: PUSH1 0x04 00000481: PUSH2 0x2b16 00000484: JUMP 00000485: JUMPDEST 00000486: PUSH2 0x0c3c 00000489: JUMP 0000048a: JUMPDEST 0000048b: STOP 0000048c: JUMPDEST 0000048d: CALLVALUE 0000048e: DUP1 0000048f: ISZERO 00000490: PUSH2 0x0498 00000493: JUMPI 00000494: PUSH1 0x00 00000496: DUP1 00000497: REVERT 00000498: JUMPDEST 00000499: POP 0000049a: PUSH2 0x038c 0000049d: PUSH2 0x0387 000004a0: CALLDATASIZE 000004a1: PUSH1 0x04 000004a3: PUSH2 0x2c0b 000004a6: JUMP 000004a7: JUMPDEST 000004a8: CALLVALUE 000004a9: DUP1 000004aa: ISZERO 000004ab: PUSH2 0x04b3 000004ae: JUMPI 000004af: PUSH1 0x00 000004b1: DUP1 000004b2: REVERT 000004b3: JUMPDEST 000004b4: POP 000004b5: PUSH2 0x0317 000004b8: PUSH2 0x04c2 000004bb: CALLDATASIZE 000004bc: PUSH1 0x04 000004be: PUSH2 0x2c4c 000004c1: JUMP 000004c2: JUMPDEST 000004c3: PUSH2 0x0d1e 000004c6: JUMP 000004c7: JUMPDEST 000004c8: CALLVALUE 000004c9: DUP1 000004ca: ISZERO 000004cb: PUSH2 0x04d3 000004ce: JUMPI 000004cf: PUSH1 0x00 000004d1: DUP1 000004d2: REVERT 000004d3: JUMPDEST 000004d4: POP 000004d5: PUSH2 0x0317 000004d8: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9 000004f9: DUP2 000004fa: JUMP 000004fb: JUMPDEST 000004fc: CALLVALUE 000004fd: DUP1 000004fe: ISZERO 000004ff: PUSH2 0x0507 00000502: JUMPI 00000503: PUSH1 0x00 00000505: DUP1 00000506: REVERT 00000507: JUMPDEST 00000508: POP 00000509: PUSH2 0x052f 0000050c: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000012 0000052d: DUP2 0000052e: JUMP 0000052f: JUMPDEST 00000530: PUSH1 0x40 00000532: MLOAD 00000533: PUSH1 0xff 00000535: SWAP1 00000536: SWAP2 00000537: AND 00000538: DUP2 00000539: MSTORE 0000053a: PUSH1 0x20 0000053c: ADD 0000053d: PUSH2 0x0321 00000540: JUMP 00000541: JUMPDEST 00000542: CALLVALUE 00000543: DUP1 00000544: ISZERO 00000545: PUSH2 0x054d 00000548: JUMPI 00000549: PUSH1 0x00 0000054b: DUP1 0000054c: REVERT 0000054d: JUMPDEST 0000054e: POP 0000054f: PUSH2 0x0317 00000552: PUSH1 0x09 00000554: SLOAD 00000555: DUP2 00000556: JUMP 00000557: JUMPDEST 00000558: CALLVALUE 00000559: DUP1 0000055a: ISZERO 0000055b: PUSH2 0x0563 0000055e: JUMPI 0000055f: PUSH1 0x00 00000561: DUP1 00000562: REVERT 00000563: JUMPDEST 00000564: POP 00000565: PUSH2 0x0317 00000568: PUSH2 0x0d95 0000056b: JUMP 0000056c: JUMPDEST 0000056d: CALLVALUE 0000056e: DUP1 0000056f: ISZERO 00000570: PUSH2 0x0578 00000573: JUMPI 00000574: PUSH1 0x00 00000576: DUP1 00000577: REVERT 00000578: JUMPDEST 00000579: POP 0000057a: PUSH2 0x05a0 0000057d: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0000059e: DUP2 0000059f: JUMP 000005a0: JUMPDEST 000005a1: PUSH1 0x40 000005a3: MLOAD 000005a4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005b9: SWAP1 000005ba: SWAP2 000005bb: AND 000005bc: DUP2 000005bd: MSTORE 000005be: PUSH1 0x20 000005c0: ADD 000005c1: PUSH2 0x0321 000005c4: JUMP 000005c5: JUMPDEST 000005c6: CALLVALUE 000005c7: DUP1 000005c8: ISZERO 000005c9: PUSH2 0x05d1 000005cc: JUMPI 000005cd: PUSH1 0x00 000005cf: DUP1 000005d0: REVERT 000005d1: JUMPDEST 000005d2: POP 000005d3: PUSH2 0x05a0 000005d6: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000005f7: DUP2 000005f8: JUMP 000005f9: JUMPDEST 000005fa: CALLVALUE 000005fb: DUP1 000005fc: ISZERO 000005fd: PUSH2 0x0605 00000600: JUMPI 00000601: PUSH1 0x00 00000603: DUP1 00000604: REVERT 00000605: JUMPDEST 00000606: POP 00000607: PUSH2 0x0317 0000060a: PUSH1 0x0c 0000060c: SLOAD 0000060d: DUP2 0000060e: JUMP 0000060f: JUMPDEST 00000610: CALLVALUE 00000611: DUP1 00000612: ISZERO 00000613: PUSH2 0x061b 00000616: JUMPI 00000617: PUSH1 0x00 00000619: DUP1 0000061a: REVERT 0000061b: JUMPDEST 0000061c: POP 0000061d: PUSH2 0x048a 00000620: PUSH2 0x062a 00000623: CALLDATASIZE 00000624: PUSH1 0x04 00000626: PUSH2 0x2b16 00000629: JUMP 0000062a: JUMPDEST 0000062b: PUSH2 0x0deb 0000062e: JUMP 0000062f: JUMPDEST 00000630: CALLVALUE 00000631: DUP1 00000632: ISZERO 00000633: PUSH2 0x063b 00000636: JUMPI 00000637: PUSH1 0x00 00000639: DUP1 0000063a: REVERT 0000063b: JUMPDEST 0000063c: POP 0000063d: PUSH2 0x048a 00000640: PUSH2 0x064a 00000643: CALLDATASIZE 00000644: PUSH1 0x04 00000646: PUSH2 0x2b16 00000649: JUMP 0000064a: JUMPDEST 0000064b: PUSH2 0x0e84 0000064e: JUMP 0000064f: JUMPDEST 00000650: CALLVALUE 00000651: DUP1 00000652: ISZERO 00000653: PUSH2 0x065b 00000656: JUMPI 00000657: PUSH1 0x00 00000659: DUP1 0000065a: REVERT 0000065b: JUMPDEST 0000065c: POP 0000065d: PUSH2 0x048a 00000660: PUSH2 0x066a 00000663: CALLDATASIZE 00000664: PUSH1 0x04 00000666: PUSH2 0x2b16 00000669: JUMP 0000066a: JUMPDEST 0000066b: PUSH2 0x0f59 0000066e: JUMP 0000066f: JUMPDEST 00000670: CALLVALUE 00000671: DUP1 00000672: ISZERO 00000673: PUSH2 0x067b 00000676: JUMPI 00000677: PUSH1 0x00 00000679: DUP1 0000067a: REVERT 0000067b: JUMPDEST 0000067c: POP 0000067d: PUSH2 0x0317 00000680: PUSH2 0x068a 00000683: CALLDATASIZE 00000684: PUSH1 0x04 00000686: PUSH2 0x2c6e 00000689: JUMP 0000068a: JUMPDEST 0000068b: PUSH2 0x1038 0000068e: JUMP 0000068f: JUMPDEST 00000690: CALLVALUE 00000691: DUP1 00000692: ISZERO 00000693: PUSH2 0x069b 00000696: JUMPI 00000697: PUSH1 0x00 00000699: DUP1 0000069a: REVERT 0000069b: JUMPDEST 0000069c: POP 0000069d: PUSH1 0x0a 0000069f: SLOAD 000006a0: PUSH2 0x05a0 000006a3: SWAP1 000006a4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006b9: AND 000006ba: DUP2 000006bb: JUMP 000006bc: JUMPDEST 000006bd: CALLVALUE 000006be: DUP1 000006bf: ISZERO 000006c0: PUSH2 0x06c8 000006c3: JUMPI 000006c4: PUSH1 0x00 000006c6: DUP1 000006c7: REVERT 000006c8: JUMPDEST 000006c9: POP 000006ca: PUSH2 0x0317 000006cd: PUSH1 0x0b 000006cf: SLOAD 000006d0: DUP2 000006d1: JUMP 000006d2: JUMPDEST 000006d3: CALLVALUE 000006d4: DUP1 000006d5: ISZERO 000006d6: PUSH2 0x06de 000006d9: JUMPI 000006da: PUSH1 0x00 000006dc: DUP1 000006dd: REVERT 000006de: JUMPDEST 000006df: POP 000006e0: PUSH2 0x0317 000006e3: PUSH2 0x06ed 000006e6: CALLDATASIZE 000006e7: PUSH1 0x04 000006e9: PUSH2 0x2cba 000006ec: JUMP 000006ed: JUMPDEST 000006ee: PUSH1 0x03 000006f0: PUSH1 0x20 000006f2: MSTORE 000006f3: PUSH1 0x00 000006f5: SWAP1 000006f6: DUP2 000006f7: MSTORE 000006f8: PUSH1 0x40 000006fa: SWAP1 000006fb: KECCAK256 000006fc: SLOAD 000006fd: DUP2 000006fe: JUMP 000006ff: JUMPDEST 00000700: CALLVALUE 00000701: DUP1 00000702: ISZERO 00000703: PUSH2 0x070b 00000706: JUMPI 00000707: PUSH1 0x00 00000709: DUP1 0000070a: REVERT 0000070b: JUMPDEST 0000070c: POP 0000070d: PUSH2 0x05a0 00000710: PUSH32 0x00000000000000000000000094106ca9c7e567109a1d39413052887d1f412183 00000731: DUP2 00000732: JUMP 00000733: JUMPDEST 00000734: CALLVALUE 00000735: DUP1 00000736: ISZERO 00000737: PUSH2 0x073f 0000073a: JUMPI 0000073b: PUSH1 0x00 0000073d: DUP1 0000073e: REVERT 0000073f: JUMPDEST 00000740: POP 00000741: PUSH2 0x048a 00000744: PUSH2 0x074e 00000747: CALLDATASIZE 00000748: PUSH1 0x04 0000074a: PUSH2 0x2b16 0000074d: JUMP 0000074e: JUMPDEST 0000074f: PUSH2 0x1232 00000752: JUMP 00000753: JUMPDEST 00000754: CALLVALUE 00000755: DUP1 00000756: ISZERO 00000757: PUSH2 0x075f 0000075a: JUMPI 0000075b: PUSH1 0x00 0000075d: DUP1 0000075e: REVERT 0000075f: JUMPDEST 00000760: POP 00000761: PUSH2 0x0317 00000764: PUSH2 0x076e 00000767: CALLDATASIZE 00000768: PUSH1 0x04 0000076a: PUSH2 0x2cba 0000076d: JUMP 0000076e: JUMPDEST 0000076f: PUSH1 0x05 00000771: PUSH1 0x20 00000773: MSTORE 00000774: PUSH1 0x00 00000776: SWAP1 00000777: DUP2 00000778: MSTORE 00000779: PUSH1 0x40 0000077b: SWAP1 0000077c: KECCAK256 0000077d: SLOAD 0000077e: DUP2 0000077f: JUMP 00000780: JUMPDEST 00000781: CALLVALUE 00000782: DUP1 00000783: ISZERO 00000784: PUSH2 0x078c 00000787: JUMPI 00000788: PUSH1 0x00 0000078a: DUP1 0000078b: REVERT 0000078c: JUMPDEST 0000078d: POP 0000078e: PUSH2 0x033f 00000791: PUSH2 0x1307 00000794: JUMP 00000795: JUMPDEST 00000796: CALLVALUE 00000797: DUP1 00000798: ISZERO 00000799: PUSH2 0x07a1 0000079c: JUMPI 0000079d: PUSH1 0x00 0000079f: DUP1 000007a0: REVERT 000007a1: JUMPDEST 000007a2: POP 000007a3: PUSH2 0x048a 000007a6: PUSH2 0x1314 000007a9: JUMP 000007aa: JUMPDEST 000007ab: CALLVALUE 000007ac: DUP1 000007ad: ISZERO 000007ae: PUSH2 0x07b6 000007b1: JUMPI 000007b2: PUSH1 0x00 000007b4: DUP1 000007b5: REVERT 000007b6: JUMPDEST 000007b7: POP 000007b8: PUSH1 0x06 000007ba: SLOAD 000007bb: PUSH2 0x05a0 000007be: SWAP1 000007bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007d4: AND 000007d5: DUP2 000007d6: JUMP 000007d7: JUMPDEST 000007d8: CALLVALUE 000007d9: DUP1 000007da: ISZERO 000007db: PUSH2 0x07e3 000007de: JUMPI 000007df: PUSH1 0x00 000007e1: DUP1 000007e2: REVERT 000007e3: JUMPDEST 000007e4: POP 000007e5: PUSH2 0x048a 000007e8: PUSH2 0x07f2 000007eb: CALLDATASIZE 000007ec: PUSH1 0x04 000007ee: PUSH2 0x2cba 000007f1: JUMP 000007f2: JUMPDEST 000007f3: PUSH2 0x1404 000007f6: JUMP 000007f7: JUMPDEST 000007f8: CALLVALUE 000007f9: DUP1 000007fa: ISZERO 000007fb: PUSH2 0x0803 000007fe: JUMPI 000007ff: PUSH1 0x00 00000801: DUP1 00000802: REVERT 00000803: JUMPDEST 00000804: POP 00000805: PUSH2 0x05a0 00000808: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00000829: DUP2 0000082a: JUMP 0000082b: JUMPDEST 0000082c: CALLVALUE 0000082d: DUP1 0000082e: ISZERO 0000082f: PUSH2 0x0837 00000832: JUMPI 00000833: PUSH1 0x00 00000835: DUP1 00000836: REVERT 00000837: JUMPDEST 00000838: POP 00000839: PUSH2 0x0317 0000083c: PUSH2 0x0846 0000083f: CALLDATASIZE 00000840: PUSH1 0x04 00000842: PUSH2 0x2b16 00000845: JUMP 00000846: JUMPDEST 00000847: PUSH2 0x14db 0000084a: JUMP 0000084b: JUMPDEST 0000084c: CALLVALUE 0000084d: DUP1 0000084e: ISZERO 0000084f: PUSH2 0x0857 00000852: JUMPI 00000853: PUSH1 0x00 00000855: DUP1 00000856: REVERT 00000857: JUMPDEST 00000858: POP 00000859: PUSH2 0x048a 0000085c: PUSH2 0x0866 0000085f: CALLDATASIZE 00000860: PUSH1 0x04 00000862: PUSH2 0x2b16 00000865: JUMP 00000866: JUMPDEST 00000867: PUSH2 0x14fb 0000086a: JUMP 0000086b: JUMPDEST 0000086c: CALLVALUE 0000086d: DUP1 0000086e: ISZERO 0000086f: PUSH2 0x0877 00000872: JUMPI 00000873: PUSH1 0x00 00000875: DUP1 00000876: REVERT 00000877: JUMPDEST 00000878: POP 00000879: PUSH2 0x048a 0000087c: PUSH2 0x0886 0000087f: CALLDATASIZE 00000880: PUSH1 0x04 00000882: PUSH2 0x2cd7 00000885: JUMP 00000886: JUMPDEST 00000887: PUSH2 0x15d6 0000088a: JUMP 0000088b: JUMPDEST 0000088c: CALLVALUE 0000088d: DUP1 0000088e: ISZERO 0000088f: PUSH2 0x0897 00000892: JUMPI 00000893: PUSH1 0x00 00000895: DUP1 00000896: REVERT 00000897: JUMPDEST 00000898: POP 00000899: PUSH2 0x0317 0000089c: PUSH2 0x08a6 0000089f: CALLDATASIZE 000008a0: PUSH1 0x04 000008a2: PUSH2 0x2d4e 000008a5: JUMP 000008a6: JUMPDEST 000008a7: PUSH1 0x04 000008a9: PUSH1 0x20 000008ab: SWAP1 000008ac: DUP2 000008ad: MSTORE 000008ae: PUSH1 0x00 000008b0: SWAP3 000008b1: DUP4 000008b2: MSTORE 000008b3: PUSH1 0x40 000008b5: DUP1 000008b6: DUP5 000008b7: KECCAK256 000008b8: SWAP1 000008b9: SWAP2 000008ba: MSTORE 000008bb: SWAP1 000008bc: DUP3 000008bd: MSTORE 000008be: SWAP1 000008bf: KECCAK256 000008c0: SLOAD 000008c1: DUP2 000008c2: JUMP 000008c3: JUMPDEST 000008c4: CALLVALUE 000008c5: DUP1 000008c6: ISZERO 000008c7: PUSH2 0x08cf 000008ca: JUMPI 000008cb: PUSH1 0x00 000008cd: DUP1 000008ce: REVERT 000008cf: JUMPDEST 000008d0: POP 000008d1: PUSH2 0x0317 000008d4: PUSH1 0x0f 000008d6: SLOAD 000008d7: DUP2 000008d8: JUMP 000008d9: JUMPDEST 000008da: CALLVALUE 000008db: DUP1 000008dc: ISZERO 000008dd: PUSH2 0x08e5 000008e0: JUMPI 000008e1: PUSH1 0x00 000008e3: DUP1 000008e4: REVERT 000008e5: JUMPDEST 000008e6: POP 000008e7: PUSH2 0x0317 000008ea: PUSH2 0x08f4 000008ed: CALLDATASIZE 000008ee: PUSH1 0x04 000008f0: PUSH2 0x2c6e 000008f3: JUMP 000008f4: JUMPDEST 000008f5: PUSH2 0x1608 000008f8: JUMP 000008f9: JUMPDEST 000008fa: CALLVALUE 000008fb: DUP1 000008fc: ISZERO 000008fd: PUSH2 0x0905 00000900: JUMPI 00000901: PUSH1 0x00 00000903: DUP1 00000904: REVERT 00000905: JUMPDEST 00000906: POP 00000907: PUSH2 0x0317 0000090a: PUSH2 0x0914 0000090d: CALLDATASIZE 0000090e: PUSH1 0x04 00000910: PUSH2 0x2b16 00000913: JUMP 00000914: JUMPDEST 00000915: PUSH2 0x17ec 00000918: JUMP 00000919: JUMPDEST 0000091a: CALLVALUE 0000091b: DUP1 0000091c: ISZERO 0000091d: PUSH2 0x0925 00000920: JUMPI 00000921: PUSH1 0x00 00000923: DUP1 00000924: REVERT 00000925: JUMPDEST 00000926: POP 00000927: PUSH2 0x0317 0000092a: PUSH1 0x10 0000092c: SLOAD 0000092d: DUP2 0000092e: JUMP 0000092f: JUMPDEST 00000930: PUSH2 0x033f 00000933: PUSH2 0x093d 00000936: CALLDATASIZE 00000937: PUSH1 0x04 00000939: PUSH2 0x2db6 0000093c: JUMP 0000093d: JUMPDEST 0000093e: PUSH2 0x18aa 00000941: JUMP 00000942: JUMPDEST 00000943: CALLVALUE 00000944: DUP1 00000945: ISZERO 00000946: PUSH2 0x094e 00000949: JUMPI 0000094a: PUSH1 0x00 0000094c: DUP1 0000094d: REVERT 0000094e: JUMPDEST 0000094f: POP 00000950: PUSH2 0x0317 00000953: PUSH1 0x0e 00000955: SLOAD 00000956: DUP2 00000957: JUMP 00000958: JUMPDEST 00000959: PUSH1 0x00 0000095b: PUSH2 0x0965 0000095e: PUSH2 0x0402 00000961: PUSH2 0x0a59 00000964: JUMP 00000965: JUMPDEST 00000966: SWAP1 00000967: POP 00000968: SWAP1 00000969: JUMP 0000096a: JUMPDEST 0000096b: PUSH1 0x00 0000096d: DUP1 0000096e: SLOAD 0000096f: PUSH2 0x0977 00000972: SWAP1 00000973: PUSH2 0x2ea1 00000976: JUMP 00000977: JUMPDEST 00000978: DUP1 00000979: PUSH1 0x1f 0000097b: ADD 0000097c: PUSH1 0x20 0000097e: DUP1 0000097f: SWAP2 00000980: DIV 00000981: MUL 00000982: PUSH1 0x20 00000984: ADD 00000985: PUSH1 0x40 00000987: MLOAD 00000988: SWAP1 00000989: DUP2 0000098a: ADD 0000098b: PUSH1 0x40 0000098d: MSTORE 0000098e: DUP1 0000098f: SWAP3 00000990: SWAP2 00000991: SWAP1 00000992: DUP2 00000993: DUP2 00000994: MSTORE 00000995: PUSH1 0x20 00000997: ADD 00000998: DUP3 00000999: DUP1 0000099a: SLOAD 0000099b: PUSH2 0x09a3 0000099e: SWAP1 0000099f: PUSH2 0x2ea1 000009a2: JUMP 000009a3: JUMPDEST 000009a4: DUP1 000009a5: ISZERO 000009a6: PUSH2 0x09f0 000009a9: JUMPI 000009aa: DUP1 000009ab: PUSH1 0x1f 000009ad: LT 000009ae: PUSH2 0x09c5 000009b1: JUMPI 000009b2: PUSH2 0x0100 000009b5: DUP1 000009b6: DUP4 000009b7: SLOAD 000009b8: DIV 000009b9: MUL 000009ba: DUP4 000009bb: MSTORE 000009bc: SWAP2 000009bd: PUSH1 0x20 000009bf: ADD 000009c0: SWAP2 000009c1: PUSH2 0x09f0 000009c4: JUMP 000009c5: JUMPDEST 000009c6: DUP3 000009c7: ADD 000009c8: SWAP2 000009c9: SWAP1 000009ca: PUSH1 0x00 000009cc: MSTORE 000009cd: PUSH1 0x20 000009cf: PUSH1 0x00 000009d1: KECCAK256 000009d2: SWAP1 000009d3: JUMPDEST 000009d4: DUP2 000009d5: SLOAD 000009d6: DUP2 000009d7: MSTORE 000009d8: SWAP1 000009d9: PUSH1 0x01 000009db: ADD 000009dc: SWAP1 000009dd: PUSH1 0x20 000009df: ADD 000009e0: DUP1 000009e1: DUP4 000009e2: GT 000009e3: PUSH2 0x09d3 000009e6: JUMPI 000009e7: DUP3 000009e8: SWAP1 000009e9: SUB 000009ea: PUSH1 0x1f 000009ec: AND 000009ed: DUP3 000009ee: ADD 000009ef: SWAP2 000009f0: JUMPDEST 000009f1: POP 000009f2: POP 000009f3: POP 000009f4: POP 000009f5: POP 000009f6: DUP2 000009f7: JUMP 000009f8: JUMPDEST 000009f9: PUSH1 0x02 000009fb: SLOAD 000009fc: PUSH1 0x00 000009fe: SWAP1 000009ff: DUP1 00000a00: ISZERO 00000a01: PUSH2 0x0a1c 00000a04: JUMPI 00000a05: PUSH2 0x0a17 00000a08: PUSH2 0x0a0f 00000a0b: PUSH2 0x0958 00000a0e: JUMP 00000a0f: JUMPDEST 00000a10: DUP5 00000a11: SWAP1 00000a12: DUP4 00000a13: PUSH2 0x19c2 00000a16: JUMP 00000a17: JUMPDEST 00000a18: PUSH2 0x0a1e 00000a1b: JUMP 00000a1c: JUMPDEST 00000a1d: DUP3 00000a1e: JUMPDEST 00000a1f: SWAP4 00000a20: SWAP3 00000a21: POP 00000a22: POP 00000a23: POP 00000a24: JUMP 00000a25: JUMPDEST 00000a26: PUSH1 0x00 00000a28: PUSH1 0x40 00000a2a: MLOAD 00000a2b: PUSH32 0xc31c949300000000000000000000000000000000000000000000000000000000 00000a4c: DUP2 00000a4d: MSTORE 00000a4e: PUSH1 0x04 00000a50: ADD 00000a51: PUSH1 0x40 00000a53: MLOAD 00000a54: DUP1 00000a55: SWAP2 00000a56: SUB 00000a57: SWAP1 00000a58: REVERT 00000a59: JUMPDEST 00000a5a: PUSH1 0x40 00000a5c: MLOAD 00000a5d: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 00000a7e: DUP2 00000a7f: MSTORE 00000a80: ADDRESS 00000a81: PUSH1 0x04 00000a83: DUP3 00000a84: ADD 00000a85: MSTORE 00000a86: PUSH1 0x00 00000a88: SWAP1 00000a89: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00000aaa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000abf: AND 00000ac0: SWAP1 00000ac1: PUSH4 0x70a08231 00000ac6: SWAP1 00000ac7: PUSH1 0x24 00000ac9: ADD 00000aca: PUSH1 0x20 00000acc: PUSH1 0x40 00000ace: MLOAD 00000acf: DUP1 00000ad0: DUP4 00000ad1: SUB 00000ad2: DUP2 00000ad3: DUP7 00000ad4: GAS 00000ad5: STATICCALL 00000ad6: ISZERO 00000ad7: DUP1 00000ad8: ISZERO 00000ad9: PUSH2 0x0ae6 00000adc: JUMPI 00000add: RETURNDATASIZE 00000ade: PUSH1 0x00 00000ae0: DUP1 00000ae1: RETURNDATACOPY 00000ae2: RETURNDATASIZE 00000ae3: PUSH1 0x00 00000ae5: REVERT 00000ae6: JUMPDEST 00000ae7: POP 00000ae8: POP 00000ae9: POP 00000aea: POP 00000aeb: PUSH1 0x40 00000aed: MLOAD 00000aee: RETURNDATASIZE 00000aef: PUSH1 0x1f 00000af1: NOT 00000af2: PUSH1 0x1f 00000af4: DUP3 00000af5: ADD 00000af6: AND 00000af7: DUP3 00000af8: ADD 00000af9: DUP1 00000afa: PUSH1 0x40 00000afc: MSTORE 00000afd: POP 00000afe: DUP2 00000aff: ADD 00000b00: SWAP1 00000b01: PUSH2 0x0965 00000b04: SWAP2 00000b05: SWAP1 00000b06: PUSH2 0x2ef4 00000b09: JUMP 00000b0a: JUMPDEST 00000b0b: PUSH1 0x00 00000b0d: PUSH2 0x0b3a 00000b10: CALLER 00000b11: PUSH1 0x00 00000b13: CALLDATALOAD 00000b14: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00000b35: AND 00000b36: PUSH2 0x19e1 00000b39: JUMP 00000b3a: JUMPDEST 00000b3b: PUSH2 0x0b70 00000b3e: JUMPI 00000b3f: PUSH1 0x40 00000b41: MLOAD 00000b42: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00000b63: DUP2 00000b64: MSTORE 00000b65: PUSH1 0x04 00000b67: ADD 00000b68: PUSH1 0x40 00000b6a: MLOAD 00000b6b: DUP1 00000b6c: SWAP2 00000b6d: SUB 00000b6e: SWAP1 00000b6f: REVERT 00000b70: JUMPDEST 00000b71: PUSH1 0x0d 00000b73: SLOAD 00000b74: PUSH1 0xff 00000b76: AND 00000b77: ISZERO 00000b78: PUSH2 0x0bad 00000b7b: JUMPI 00000b7c: PUSH1 0x40 00000b7e: MLOAD 00000b7f: PUSH32 0x2a542da400000000000000000000000000000000000000000000000000000000 00000ba0: DUP2 00000ba1: MSTORE 00000ba2: PUSH1 0x04 00000ba4: ADD 00000ba5: PUSH1 0x40 00000ba7: MLOAD 00000ba8: DUP1 00000ba9: SWAP2 00000baa: SUB 00000bab: SWAP1 00000bac: REVERT 00000bad: JUMPDEST 00000bae: PUSH1 0x0d 00000bb0: DUP1 00000bb1: SLOAD 00000bb2: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00000bd3: AND 00000bd4: PUSH1 0x01 00000bd6: OR 00000bd7: SWAP1 00000bd8: SSTORE 00000bd9: PUSH1 0x00 00000bdb: PUSH2 0x0be2 00000bde: PUSH2 0x0958 00000be1: JUMP 00000be2: JUMPDEST 00000be3: SWAP1 00000be4: POP 00000be5: PUSH1 0x00 00000be7: DUP1 00000be8: PUSH2 0x0bf2 00000beb: DUP4 00000bec: DUP8 00000bed: DUP8 00000bee: PUSH2 0x1bbd 00000bf1: JUMP 00000bf2: JUMPDEST 00000bf3: PUSH1 0x40 00000bf5: DUP1 00000bf6: MLOAD 00000bf7: DUP4 00000bf8: DUP2 00000bf9: MSTORE 00000bfa: PUSH1 0x20 00000bfc: DUP2 00000bfd: ADD 00000bfe: DUP4 00000bff: SWAP1 00000c00: MSTORE 00000c01: SWAP3 00000c02: SWAP5 00000c03: POP 00000c04: SWAP1 00000c05: SWAP3 00000c06: POP 00000c07: PUSH32 0xbf74a2393b907f335184e6dbeb4daa93812b077b8e034c2e61c8e6864002dda7 00000c28: SWAP2 00000c29: ADD 00000c2a: PUSH1 0x40 00000c2c: MLOAD 00000c2d: DUP1 00000c2e: SWAP2 00000c2f: SUB 00000c30: SWAP1 00000c31: LOG1 00000c32: SWAP3 00000c33: POP 00000c34: POP 00000c35: POP 00000c36: JUMPDEST 00000c37: SWAP3 00000c38: SWAP2 00000c39: POP 00000c3a: POP 00000c3b: JUMP 00000c3c: JUMPDEST 00000c3d: PUSH2 0x0c6a 00000c40: CALLER 00000c41: PUSH1 0x00 00000c43: CALLDATALOAD 00000c44: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00000c65: AND 00000c66: PUSH2 0x19e1 00000c69: JUMP 00000c6a: JUMPDEST 00000c6b: PUSH2 0x0ca0 00000c6e: JUMPI 00000c6f: PUSH1 0x40 00000c71: MLOAD 00000c72: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00000c93: DUP2 00000c94: MSTORE 00000c95: PUSH1 0x04 00000c97: ADD 00000c98: PUSH1 0x40 00000c9a: MLOAD 00000c9b: DUP1 00000c9c: SWAP2 00000c9d: SUB 00000c9e: SWAP1 00000c9f: REVERT 00000ca0: JUMPDEST 00000ca1: PUSH8 0x0de0b6b3a7640000 00000caa: DUP2 00000cab: GT 00000cac: ISZERO 00000cad: PUSH2 0x0ce2 00000cb0: JUMPI 00000cb1: PUSH1 0x40 00000cb3: MLOAD 00000cb4: PUSH32 0xf08319c600000000000000000000000000000000000000000000000000000000 00000cd5: DUP2 00000cd6: MSTORE 00000cd7: PUSH1 0x04 00000cd9: ADD 00000cda: PUSH1 0x40 00000cdc: MLOAD 00000cdd: DUP1 00000cde: SWAP2 00000cdf: SUB 00000ce0: SWAP1 00000ce1: REVERT 00000ce2: JUMPDEST 00000ce3: PUSH1 0x10 00000ce5: DUP2 00000ce6: SWAP1 00000ce7: SSTORE 00000ce8: PUSH1 0x40 00000cea: MLOAD 00000ceb: DUP2 00000cec: DUP2 00000ced: MSTORE 00000cee: PUSH32 0x1b93bc9809c55f88e4bd6c7309c9ee1954771b4b87fcf5df7e4593b9ab0e1c9c 00000d0f: SWAP1 00000d10: PUSH1 0x20 00000d12: ADD 00000d13: JUMPDEST 00000d14: PUSH1 0x40 00000d16: MLOAD 00000d17: DUP1 00000d18: SWAP2 00000d19: SUB 00000d1a: SWAP1 00000d1b: LOG1 00000d1c: POP 00000d1d: JUMP 00000d1e: JUMPDEST 00000d1f: PUSH1 0x02 00000d21: SLOAD 00000d22: PUSH1 0x00 00000d24: SWAP1 00000d25: DUP2 00000d26: PUSH2 0x0d2d 00000d29: PUSH2 0x0958 00000d2c: JUMP 00000d2d: JUMPDEST 00000d2e: SWAP1 00000d2f: POP 00000d30: PUSH1 0x00 00000d32: PUSH2 0x0d53 00000d35: DUP3 00000d36: PUSH1 0x0e 00000d38: SLOAD 00000d39: DUP8 00000d3a: TIMESTAMP 00000d3b: PUSH2 0x0d44 00000d3e: SWAP2 00000d3f: SWAP1 00000d40: PUSH2 0x2f3c 00000d43: JUMP 00000d44: JUMPDEST 00000d45: PUSH2 0x0d4e 00000d48: SWAP2 00000d49: SWAP1 00000d4a: PUSH2 0x2f54 00000d4d: JUMP 00000d4e: JUMPDEST 00000d4f: PUSH2 0x1eb8 00000d52: JUMP 00000d53: JUMPDEST 00000d54: SWAP1 00000d55: POP 00000d56: DUP2 00000d57: DUP2 00000d58: GT 00000d59: ISZERO 00000d5a: PUSH2 0x0d69 00000d5d: JUMPI 00000d5e: PUSH1 0x00 00000d60: SWAP4 00000d61: POP 00000d62: POP 00000d63: POP 00000d64: POP 00000d65: PUSH2 0x0c36 00000d68: JUMP 00000d69: JUMPDEST 00000d6a: DUP3 00000d6b: ISZERO 00000d6c: PUSH2 0x0d89 00000d6f: JUMPI 00000d70: PUSH2 0x0d84 00000d73: PUSH2 0x0d7c 00000d76: DUP3 00000d77: DUP5 00000d78: PUSH2 0x2f54 00000d7b: JUMP 00000d7c: JUMPDEST 00000d7d: DUP8 00000d7e: SWAP1 00000d7f: DUP6 00000d80: PUSH2 0x19c2 00000d83: JUMP 00000d84: JUMPDEST 00000d85: PUSH2 0x0d8b 00000d88: JUMP 00000d89: JUMPDEST 00000d8a: DUP6 00000d8b: JUMPDEST 00000d8c: SWAP7 00000d8d: SWAP6 00000d8e: POP 00000d8f: POP 00000d90: POP 00000d91: POP 00000d92: POP 00000d93: POP 00000d94: JUMP 00000d95: JUMPDEST 00000d96: PUSH1 0x00 00000d98: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001 00000db9: CHAINID 00000dba: EQ 00000dbb: PUSH2 0x0dc6 00000dbe: JUMPI 00000dbf: PUSH2 0x0965 00000dc2: PUSH2 0x1ef5 00000dc5: JUMP 00000dc6: JUMPDEST 00000dc7: POP 00000dc8: PUSH32 0xdb6130c13f63a6e2088519c4c8e873b529d390a553a47f54d560cc23bfedd250 00000de9: SWAP1 00000dea: JUMP 00000deb: JUMPDEST 00000dec: PUSH2 0x0e19 00000def: CALLER 00000df0: PUSH1 0x00 00000df2: CALLDATALOAD 00000df3: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00000e14: AND 00000e15: PUSH2 0x19e1 00000e18: JUMP 00000e19: JUMPDEST 00000e1a: PUSH2 0x0e4f 00000e1d: JUMPI 00000e1e: PUSH1 0x40 00000e20: MLOAD 00000e21: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00000e42: DUP2 00000e43: MSTORE 00000e44: PUSH1 0x04 00000e46: ADD 00000e47: PUSH1 0x40 00000e49: MLOAD 00000e4a: DUP1 00000e4b: SWAP2 00000e4c: SUB 00000e4d: SWAP1 00000e4e: REVERT 00000e4f: JUMPDEST 00000e50: PUSH1 0x09 00000e52: DUP2 00000e53: SWAP1 00000e54: SSTORE 00000e55: PUSH1 0x40 00000e57: MLOAD 00000e58: DUP2 00000e59: DUP2 00000e5a: MSTORE 00000e5b: PUSH32 0x9872d5eb566b79923d043f1b59aca655ca80a2bb5b6bca4824e515b0e398902f 00000e7c: SWAP1 00000e7d: PUSH1 0x20 00000e7f: ADD 00000e80: PUSH2 0x0d13 00000e83: JUMP 00000e84: JUMPDEST 00000e85: PUSH2 0x0eb2 00000e88: CALLER 00000e89: PUSH1 0x00 00000e8b: CALLDATALOAD 00000e8c: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00000ead: AND 00000eae: PUSH2 0x19e1 00000eb1: JUMP 00000eb2: JUMPDEST 00000eb3: PUSH2 0x0ee8 00000eb6: JUMPI 00000eb7: PUSH1 0x40 00000eb9: MLOAD 00000eba: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00000edb: DUP2 00000edc: MSTORE 00000edd: PUSH1 0x04 00000edf: ADD 00000ee0: PUSH1 0x40 00000ee2: MLOAD 00000ee3: DUP1 00000ee4: SWAP2 00000ee5: SUB 00000ee6: SWAP1 00000ee7: REVERT 00000ee8: JUMPDEST 00000ee9: PUSH2 0x2710 00000eec: DUP2 00000eed: GT 00000eee: ISZERO 00000eef: PUSH2 0x0f24 00000ef2: JUMPI 00000ef3: PUSH1 0x40 00000ef5: MLOAD 00000ef6: PUSH32 0xf08319c600000000000000000000000000000000000000000000000000000000 00000f17: DUP2 00000f18: MSTORE 00000f19: PUSH1 0x04 00000f1b: ADD 00000f1c: PUSH1 0x40 00000f1e: MLOAD 00000f1f: DUP1 00000f20: SWAP2 00000f21: SUB 00000f22: SWAP1 00000f23: REVERT 00000f24: JUMPDEST 00000f25: PUSH1 0x0b 00000f27: DUP2 00000f28: SWAP1 00000f29: SSTORE 00000f2a: PUSH1 0x40 00000f2c: MLOAD 00000f2d: DUP2 00000f2e: DUP2 00000f2f: MSTORE 00000f30: PUSH32 0x12865465a7036a0232cbf9fb63ce880a3ee54f702775fe7abbc3c416e7968cd5 00000f51: SWAP1 00000f52: PUSH1 0x20 00000f54: ADD 00000f55: PUSH2 0x0d13 00000f58: JUMP 00000f59: JUMPDEST 00000f5a: PUSH2 0x0f87 00000f5d: CALLER 00000f5e: PUSH1 0x00 00000f60: CALLDATALOAD 00000f61: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00000f82: AND 00000f83: PUSH2 0x19e1 00000f86: JUMP 00000f87: JUMPDEST 00000f88: PUSH2 0x0fbd 00000f8b: JUMPI 00000f8c: PUSH1 0x40 00000f8e: MLOAD 00000f8f: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00000fb0: DUP2 00000fb1: MSTORE 00000fb2: PUSH1 0x04 00000fb4: ADD 00000fb5: PUSH1 0x40 00000fb7: MLOAD 00000fb8: DUP1 00000fb9: SWAP2 00000fba: SUB 00000fbb: SWAP1 00000fbc: REVERT 00000fbd: JUMPDEST 00000fbe: PUSH4 0xbce02f4e 00000fc3: DUP2 00000fc4: GT 00000fc5: ISZERO 00000fc6: PUSH2 0x0ffb 00000fc9: JUMPI 00000fca: PUSH1 0x40 00000fcc: MLOAD 00000fcd: PUSH32 0x6a43f8d100000000000000000000000000000000000000000000000000000000 00000fee: DUP2 00000fef: MSTORE 00000ff0: PUSH1 0x04 00000ff2: ADD 00000ff3: PUSH1 0x40 00000ff5: MLOAD 00000ff6: DUP1 00000ff7: SWAP2 00000ff8: SUB 00000ff9: SWAP1 00000ffa: REVERT 00000ffb: JUMPDEST 00000ffc: PUSH2 0x1003 00000fff: PUSH2 0x1314 00001002: JUMP 00001003: JUMPDEST 00001004: PUSH1 0x0f 00001006: DUP2 00001007: SWAP1 00001008: SSTORE 00001009: PUSH1 0x40 0000100b: MLOAD 0000100c: DUP2 0000100d: DUP2 0000100e: MSTORE 0000100f: PUSH32 0xad2a1b372bf4c8402696d0ed78880c15faa5b69298ede2615a228810a52dc6c4 00001030: SWAP1 00001031: PUSH1 0x20 00001033: ADD 00001034: PUSH2 0x0d13 00001037: JUMP 00001038: JUMPDEST 00001039: PUSH1 0x00 0000103b: PUSH1 0x08 0000103d: SLOAD 0000103e: PUSH1 0x01 00001040: EQ 00001041: PUSH2 0x10ab 00001044: JUMPI 00001045: PUSH1 0x40 00001047: MLOAD 00001048: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001069: DUP2 0000106a: MSTORE 0000106b: PUSH1 0x20 0000106d: PUSH1 0x04 0000106f: DUP3 00001070: ADD 00001071: MSTORE 00001072: PUSH1 0x0a 00001074: PUSH1 0x24 00001076: DUP3 00001077: ADD 00001078: MSTORE 00001079: PUSH32 0x5245454e5452414e435900000000000000000000000000000000000000000000 0000109a: PUSH1 0x44 0000109c: DUP3 0000109d: ADD 0000109e: MSTORE 0000109f: PUSH1 0x64 000010a1: ADD 000010a2: JUMPDEST 000010a3: PUSH1 0x40 000010a5: MLOAD 000010a6: DUP1 000010a7: SWAP2 000010a8: SUB 000010a9: SWAP1 000010aa: REVERT 000010ab: JUMPDEST 000010ac: PUSH1 0x02 000010ae: PUSH1 0x08 000010b0: SSTORE 000010b1: PUSH1 0x0d 000010b3: SLOAD 000010b4: PUSH1 0xff 000010b6: AND 000010b7: ISZERO 000010b8: PUSH2 0x10ed 000010bb: JUMPI 000010bc: PUSH1 0x40 000010be: MLOAD 000010bf: PUSH32 0x326eab7500000000000000000000000000000000000000000000000000000000 000010e0: DUP2 000010e1: MSTORE 000010e2: PUSH1 0x04 000010e4: ADD 000010e5: PUSH1 0x40 000010e7: MLOAD 000010e8: DUP1 000010e9: SWAP2 000010ea: SUB 000010eb: SWAP1 000010ec: REVERT 000010ed: JUMPDEST 000010ee: PUSH2 0x10f6 000010f1: CALLER 000010f2: PUSH2 0x1f8f 000010f5: JUMP 000010f6: JUMPDEST 000010f7: PUSH2 0x112c 000010fa: JUMPI 000010fb: PUSH1 0x40 000010fd: MLOAD 000010fe: PUSH32 0x184849cf00000000000000000000000000000000000000000000000000000000 0000111f: DUP2 00001120: MSTORE 00001121: PUSH1 0x04 00001123: ADD 00001124: PUSH1 0x40 00001126: MLOAD 00001127: DUP1 00001128: SWAP2 00001129: SUB 0000112a: SWAP1 0000112b: REVERT 0000112c: JUMPDEST 0000112d: PUSH2 0x1134 00001130: PUSH2 0x1314 00001133: JUMP 00001134: JUMPDEST 00001135: PUSH1 0x00 00001137: DUP1 00001138: PUSH1 0x00 0000113a: PUSH2 0x1144 0000113d: DUP8 0000113e: DUP8 0000113f: DUP8 00001140: PUSH2 0x2044 00001143: JUMP 00001144: JUMPDEST 00001145: SWAP2 00001146: SWAP5 00001147: POP 00001148: SWAP3 00001149: POP 0000114a: SWAP1 0000114b: POP 0000114c: PUSH2 0x1157 0000114f: DUP6 00001150: DUP8 00001151: ADD 00001152: DUP8 00001153: PUSH2 0x2b16 00001156: JUMP 00001157: JUMPDEST 00001158: DUP4 00001159: LT 0000115a: ISZERO 0000115b: PUSH2 0x1190 0000115e: JUMPI 0000115f: PUSH1 0x40 00001161: MLOAD 00001162: PUSH32 0x7dd37f7000000000000000000000000000000000000000000000000000000000 00001183: DUP2 00001184: MSTORE 00001185: PUSH1 0x04 00001187: ADD 00001188: PUSH1 0x40 0000118a: MLOAD 0000118b: DUP1 0000118c: SWAP2 0000118d: SUB 0000118e: SWAP1 0000118f: REVERT 00001190: JUMPDEST 00001191: DUP3 00001192: PUSH1 0x00 00001194: SUB 00001195: PUSH2 0x11ca 00001198: JUMPI 00001199: PUSH1 0x40 0000119b: MLOAD 0000119c: PUSH32 0xc440e0aa00000000000000000000000000000000000000000000000000000000 000011bd: DUP2 000011be: MSTORE 000011bf: PUSH1 0x04 000011c1: ADD 000011c2: PUSH1 0x40 000011c4: MLOAD 000011c5: DUP1 000011c6: SWAP2 000011c7: SUB 000011c8: SWAP1 000011c9: REVERT 000011ca: JUMPDEST 000011cb: PUSH2 0x11d4 000011ce: CALLER 000011cf: DUP5 000011d0: PUSH2 0x23bd 000011d3: JUMP 000011d4: JUMPDEST 000011d5: PUSH1 0x40 000011d7: DUP1 000011d8: MLOAD 000011d9: DUP4 000011da: DUP2 000011db: MSTORE 000011dc: PUSH1 0x20 000011de: DUP2 000011df: ADD 000011e0: DUP6 000011e1: SWAP1 000011e2: MSTORE 000011e3: SWAP1 000011e4: DUP2 000011e5: ADD 000011e6: DUP9 000011e7: SWAP1 000011e8: MSTORE 000011e9: PUSH1 0x60 000011eb: DUP2 000011ec: ADD 000011ed: DUP3 000011ee: SWAP1 000011ef: MSTORE 000011f0: CALLER 000011f1: SWAP1 000011f2: DUP2 000011f3: SWAP1 000011f4: PUSH32 0x5f971bd00bf3ffbca8a6d72cdd4fd92cfd4f62636161921d1e5a64f0b64ccb6d 00001215: SWAP1 00001216: PUSH1 0x80 00001218: ADD 00001219: PUSH1 0x40 0000121b: MLOAD 0000121c: DUP1 0000121d: SWAP2 0000121e: SUB 0000121f: SWAP1 00001220: LOG3 00001221: POP 00001222: SWAP1 00001223: SWAP2 00001224: POP 00001225: POP 00001226: JUMPDEST 00001227: PUSH1 0x01 00001229: PUSH1 0x08 0000122b: SSTORE 0000122c: SWAP4 0000122d: SWAP3 0000122e: POP 0000122f: POP 00001230: POP 00001231: JUMP 00001232: JUMPDEST 00001233: PUSH2 0x1260 00001236: CALLER 00001237: PUSH1 0x00 00001239: CALLDATALOAD 0000123a: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 0000125b: AND 0000125c: PUSH2 0x19e1 0000125f: JUMP 00001260: JUMPDEST 00001261: PUSH2 0x1296 00001264: JUMPI 00001265: PUSH1 0x40 00001267: MLOAD 00001268: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00001289: DUP2 0000128a: MSTORE 0000128b: PUSH1 0x04 0000128d: ADD 0000128e: PUSH1 0x40 00001290: MLOAD 00001291: DUP1 00001292: SWAP2 00001293: SUB 00001294: SWAP1 00001295: REVERT 00001296: JUMPDEST 00001297: PUSH2 0x2710 0000129a: DUP2 0000129b: GT 0000129c: ISZERO 0000129d: PUSH2 0x12d2 000012a0: JUMPI 000012a1: PUSH1 0x40 000012a3: MLOAD 000012a4: PUSH32 0xf08319c600000000000000000000000000000000000000000000000000000000 000012c5: DUP2 000012c6: MSTORE 000012c7: PUSH1 0x04 000012c9: ADD 000012ca: PUSH1 0x40 000012cc: MLOAD 000012cd: DUP1 000012ce: SWAP2 000012cf: SUB 000012d0: SWAP1 000012d1: REVERT 000012d2: JUMPDEST 000012d3: PUSH1 0x0c 000012d5: DUP2 000012d6: SWAP1 000012d7: SSTORE 000012d8: PUSH1 0x40 000012da: MLOAD 000012db: DUP2 000012dc: DUP2 000012dd: MSTORE 000012de: PUSH32 0x91cc643d187eb250905520d3dae0b1017edd16961d27ab9a4a61fea5e38f717d 000012ff: SWAP1 00001300: PUSH1 0x20 00001302: ADD 00001303: PUSH2 0x0d13 00001306: JUMP 00001307: JUMPDEST 00001308: PUSH1 0x01 0000130a: DUP1 0000130b: SLOAD 0000130c: PUSH2 0x0977 0000130f: SWAP1 00001310: PUSH2 0x2ea1 00001313: JUMP 00001314: JUMPDEST 00001315: PUSH1 0x0d 00001317: SLOAD 00001318: PUSH1 0xff 0000131a: AND 0000131b: ISZERO 0000131c: PUSH2 0x1329 0000131f: JUMPI 00001320: PUSH2 0x1327 00001323: PUSH2 0x2436 00001326: JUMP 00001327: JUMPDEST 00001328: JUMP 00001329: JUMPDEST 0000132a: PUSH1 0x00 0000132c: PUSH2 0x1333 0000132f: PUSH2 0x0a59 00001332: JUMP 00001333: JUMPDEST 00001334: SWAP1 00001335: POP 00001336: PUSH1 0x00 00001338: PUSH1 0x0e 0000133a: SLOAD 0000133b: TIMESTAMP 0000133c: PUSH2 0x1345 0000133f: SWAP2 00001340: SWAP1 00001341: PUSH2 0x2f54 00001344: JUMP 00001345: JUMPDEST 00001346: SWAP1 00001347: POP 00001348: PUSH1 0x00 0000134a: PUSH2 0x1353 0000134d: DUP4 0000134e: DUP4 0000134f: PUSH2 0x1eb8 00001352: JUMP 00001353: JUMPDEST 00001354: SWAP1 00001355: POP 00001356: DUP3 00001357: DUP2 00001358: GT 00001359: ISZERO 0000135a: PUSH2 0x1360 0000135d: JUMPI 0000135e: POP 0000135f: DUP2 00001360: JUMPDEST 00001361: PUSH1 0x00 00001363: DUP2 00001364: GT 00001365: DUP1 00001366: PUSH2 0x136f 00001369: JUMPI 0000136a: POP 0000136b: PUSH1 0x02 0000136d: SLOAD 0000136e: ISZERO 0000136f: JUMPDEST 00001370: ISZERO 00001371: PUSH2 0x13ff 00001374: JUMPI 00001375: TIMESTAMP 00001376: PUSH1 0x0e 00001378: SSTORE 00001379: DUP1 0000137a: ISZERO 0000137b: PUSH2 0x13ff 0000137e: JUMPI 0000137f: PUSH1 0x0a 00001381: SLOAD 00001382: PUSH2 0x13c5 00001385: SWAP1 00001386: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000139b: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000013bc: DUP2 000013bd: AND 000013be: SWAP2 000013bf: AND 000013c0: DUP4 000013c1: PUSH2 0x2561 000013c4: JUMP 000013c5: JUMPDEST 000013c6: PUSH1 0x40 000013c8: DUP1 000013c9: MLOAD 000013ca: DUP3 000013cb: DUP2 000013cc: MSTORE 000013cd: PUSH1 0x20 000013cf: DUP2 000013d0: ADD 000013d1: DUP5 000013d2: SWAP1 000013d3: MSTORE 000013d4: PUSH32 0xc5bd0ea7a1520a37af6ec1d295e0b4f9820e066c078ae82f4abcc49286ab1028 000013f5: SWAP2 000013f6: ADD 000013f7: PUSH1 0x40 000013f9: MLOAD 000013fa: DUP1 000013fb: SWAP2 000013fc: SUB 000013fd: SWAP1 000013fe: LOG1 000013ff: JUMPDEST 00001400: POP 00001401: POP 00001402: POP 00001403: JUMP 00001404: JUMPDEST 00001405: PUSH2 0x1432 00001408: CALLER 00001409: PUSH1 0x00 0000140b: CALLDATALOAD 0000140c: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 0000142d: AND 0000142e: PUSH2 0x19e1 00001431: JUMP 00001432: JUMPDEST 00001433: PUSH2 0x1468 00001436: JUMPI 00001437: PUSH1 0x40 00001439: MLOAD 0000143a: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 0000145b: DUP2 0000145c: MSTORE 0000145d: PUSH1 0x04 0000145f: ADD 00001460: PUSH1 0x40 00001462: MLOAD 00001463: DUP1 00001464: SWAP2 00001465: SUB 00001466: SWAP1 00001467: REVERT 00001468: JUMPDEST 00001469: PUSH1 0x0a 0000146b: DUP1 0000146c: SLOAD 0000146d: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 0000148e: AND 0000148f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014a4: DUP4 000014a5: AND 000014a6: SWAP1 000014a7: DUP2 000014a8: OR 000014a9: SWAP1 000014aa: SWAP2 000014ab: SSTORE 000014ac: PUSH1 0x40 000014ae: MLOAD 000014af: SWAP1 000014b0: DUP2 000014b1: MSTORE 000014b2: PUSH32 0xfa91b2d5be9caed9cc205220f1d5f3c5fee252dea3faf893928e0e639c0ccc70 000014d3: SWAP1 000014d4: PUSH1 0x20 000014d6: ADD 000014d7: PUSH2 0x0d13 000014da: JUMP 000014db: JUMPDEST 000014dc: PUSH1 0x02 000014de: SLOAD 000014df: PUSH1 0x00 000014e1: SWAP1 000014e2: DUP1 000014e3: ISZERO 000014e4: PUSH2 0x0a1c 000014e7: JUMPI 000014e8: PUSH2 0x0a17 000014eb: DUP2 000014ec: PUSH2 0x14f3 000014ef: PUSH2 0x0958 000014f2: JUMP 000014f3: JUMPDEST 000014f4: DUP6 000014f5: SWAP2 000014f6: SWAP1 000014f7: PUSH2 0x19c2 000014fa: JUMP 000014fb: JUMPDEST 000014fc: PUSH2 0x1529 000014ff: CALLER 00001500: PUSH1 0x00 00001502: CALLDATALOAD 00001503: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00001524: AND 00001525: PUSH2 0x19e1 00001528: JUMP 00001529: JUMPDEST 0000152a: PUSH2 0x155f 0000152d: JUMPI 0000152e: PUSH1 0x40 00001530: MLOAD 00001531: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00001552: DUP2 00001553: MSTORE 00001554: PUSH1 0x04 00001556: ADD 00001557: PUSH1 0x40 00001559: MLOAD 0000155a: DUP1 0000155b: SWAP2 0000155c: SUB 0000155d: SWAP1 0000155e: REVERT 0000155f: JUMPDEST 00001560: PUSH1 0x0a 00001562: SLOAD 00001563: PUSH2 0x15a6 00001566: SWAP1 00001567: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000157c: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0000159d: DUP2 0000159e: AND 0000159f: SWAP2 000015a0: AND 000015a1: DUP4 000015a2: PUSH2 0x2561 000015a5: JUMP 000015a6: JUMPDEST 000015a7: PUSH1 0x40 000015a9: MLOAD 000015aa: DUP2 000015ab: DUP2 000015ac: MSTORE 000015ad: PUSH32 0xfba1cbbf893e6a61412440b48fca1c80a5bf24d2f7deb6d5544717745077a360 000015ce: SWAP1 000015cf: PUSH1 0x20 000015d1: ADD 000015d2: PUSH2 0x0d13 000015d5: JUMP 000015d6: JUMPDEST 000015d7: PUSH1 0x40 000015d9: MLOAD 000015da: PUSH32 0xc31c949300000000000000000000000000000000000000000000000000000000 000015fb: DUP2 000015fc: MSTORE 000015fd: PUSH1 0x04 000015ff: ADD 00001600: PUSH1 0x40 00001602: MLOAD 00001603: DUP1 00001604: SWAP2 00001605: SUB 00001606: SWAP1 00001607: REVERT 00001608: JUMPDEST 00001609: PUSH1 0x00 0000160b: PUSH1 0x08 0000160d: SLOAD 0000160e: PUSH1 0x01 00001610: EQ 00001611: PUSH2 0x1676 00001614: JUMPI 00001615: PUSH1 0x40 00001617: MLOAD 00001618: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001639: DUP2 0000163a: MSTORE 0000163b: PUSH1 0x20 0000163d: PUSH1 0x04 0000163f: DUP3 00001640: ADD 00001641: MSTORE 00001642: PUSH1 0x0a 00001644: PUSH1 0x24 00001646: DUP3 00001647: ADD 00001648: MSTORE 00001649: PUSH32 0x5245454e5452414e435900000000000000000000000000000000000000000000 0000166a: PUSH1 0x44 0000166c: DUP3 0000166d: ADD 0000166e: MSTORE 0000166f: PUSH1 0x64 00001671: ADD 00001672: PUSH2 0x10a2 00001675: JUMP 00001676: JUMPDEST 00001677: PUSH1 0x02 00001679: PUSH1 0x08 0000167b: SSTORE 0000167c: PUSH2 0x1683 0000167f: PUSH2 0x1314 00001682: JUMP 00001683: JUMPDEST 00001684: PUSH1 0x0d 00001686: SLOAD 00001687: PUSH1 0xff 00001689: AND 0000168a: ISZERO 0000168b: PUSH2 0x169e 0000168e: JUMPI 0000168f: PUSH2 0x1697 00001692: DUP5 00001693: PUSH2 0x262e 00001696: JUMP 00001697: JUMPDEST 00001698: SWAP1 00001699: POP 0000169a: PUSH2 0x1226 0000169d: JUMP 0000169e: JUMPDEST 0000169f: PUSH1 0x00 000016a1: DUP1 000016a2: PUSH2 0x16ac 000016a5: DUP7 000016a6: DUP7 000016a7: DUP7 000016a8: PUSH2 0x2736 000016ab: JUMP 000016ac: JUMPDEST 000016ad: SWAP2 000016ae: POP 000016af: SWAP2 000016b0: POP 000016b1: DUP2 000016b2: PUSH1 0x00 000016b4: SUB 000016b5: PUSH2 0x16ea 000016b8: JUMPI 000016b9: PUSH1 0x40 000016bb: MLOAD 000016bc: PUSH32 0xc440e0aa00000000000000000000000000000000000000000000000000000000 000016dd: DUP2 000016de: MSTORE 000016df: PUSH1 0x04 000016e1: ADD 000016e2: PUSH1 0x40 000016e4: MLOAD 000016e5: DUP1 000016e6: SWAP2 000016e7: SUB 000016e8: SWAP1 000016e9: REVERT 000016ea: JUMPDEST 000016eb: PUSH2 0x16f4 000016ee: CALLER 000016ef: DUP8 000016f0: PUSH2 0x2763 000016f3: JUMP 000016f4: JUMPDEST 000016f5: PUSH1 0x00 000016f7: DUP1 000016f8: PUSH2 0x1703 000016fb: DUP4 000016fc: PUSH1 0x0c 000016fe: SLOAD 000016ff: PUSH2 0x27f1 00001702: JUMP 00001703: JUMPDEST 00001704: PUSH1 0x0a 00001706: SLOAD 00001707: SWAP2 00001708: SWAP4 00001709: POP 0000170a: SWAP2 0000170b: POP 0000170c: PUSH2 0x174f 0000170f: SWAP1 00001710: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001725: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00001746: DUP2 00001747: AND 00001748: SWAP2 00001749: AND 0000174a: DUP4 0000174b: PUSH2 0x2561 0000174e: JUMP 0000174f: JUMPDEST 00001750: PUSH2 0x1790 00001753: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001768: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00001789: AND 0000178a: CALLER 0000178b: DUP5 0000178c: PUSH2 0x2561 0000178f: JUMP 00001790: JUMPDEST 00001791: PUSH1 0x40 00001793: DUP1 00001794: MLOAD 00001795: DUP6 00001796: DUP2 00001797: MSTORE 00001798: PUSH1 0x20 0000179a: DUP2 0000179b: ADD 0000179c: DUP11 0000179d: SWAP1 0000179e: MSTORE 0000179f: SWAP1 000017a0: DUP2 000017a1: ADD 000017a2: DUP4 000017a3: SWAP1 000017a4: MSTORE 000017a5: PUSH1 0x60 000017a7: DUP2 000017a8: ADD 000017a9: DUP3 000017aa: SWAP1 000017ab: MSTORE 000017ac: CALLER 000017ad: SWAP1 000017ae: DUP2 000017af: SWAP1 000017b0: PUSH32 0x8caf04742286d017f9ac3924388e188c73e6e5094311c5e59a61a7ef86dda8bf 000017d1: SWAP1 000017d2: PUSH1 0x80 000017d4: ADD 000017d5: PUSH1 0x40 000017d7: MLOAD 000017d8: DUP1 000017d9: SWAP2 000017da: SUB 000017db: SWAP1 000017dc: LOG3 000017dd: POP 000017de: PUSH1 0x01 000017e0: PUSH1 0x08 000017e2: SSTORE 000017e3: SWAP7 000017e4: SWAP6 000017e5: POP 000017e6: POP 000017e7: POP 000017e8: POP 000017e9: POP 000017ea: POP 000017eb: JUMP 000017ec: JUMPDEST 000017ed: PUSH1 0x02 000017ef: SLOAD 000017f0: PUSH1 0x00 000017f2: SWAP1 000017f3: DUP1 000017f4: ISZERO 000017f5: PUSH2 0x0a1c 000017f8: JUMPI 000017f9: PUSH1 0x40 000017fb: MLOAD 000017fc: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 0000181d: DUP2 0000181e: MSTORE 0000181f: ADDRESS 00001820: PUSH1 0x04 00001822: DUP3 00001823: ADD 00001824: MSTORE 00001825: PUSH2 0x0a17 00001828: SWAP1 00001829: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 0000184a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000185f: AND 00001860: SWAP1 00001861: PUSH4 0x70a08231 00001866: SWAP1 00001867: PUSH1 0x24 00001869: ADD 0000186a: PUSH1 0x20 0000186c: PUSH1 0x40 0000186e: MLOAD 0000186f: DUP1 00001870: DUP4 00001871: SUB 00001872: DUP2 00001873: DUP7 00001874: GAS 00001875: STATICCALL 00001876: ISZERO 00001877: DUP1 00001878: ISZERO 00001879: PUSH2 0x1886 0000187c: JUMPI 0000187d: RETURNDATASIZE 0000187e: PUSH1 0x00 00001880: DUP1 00001881: RETURNDATACOPY 00001882: RETURNDATASIZE 00001883: PUSH1 0x00 00001885: REVERT 00001886: JUMPDEST 00001887: POP 00001888: POP 00001889: POP 0000188a: POP 0000188b: PUSH1 0x40 0000188d: MLOAD 0000188e: RETURNDATASIZE 0000188f: PUSH1 0x1f 00001891: NOT 00001892: PUSH1 0x1f 00001894: DUP3 00001895: ADD 00001896: AND 00001897: DUP3 00001898: ADD 00001899: DUP1 0000189a: PUSH1 0x40 0000189c: MSTORE 0000189d: POP 0000189e: DUP2 0000189f: ADD 000018a0: SWAP1 000018a1: PUSH2 0x0a0f 000018a4: SWAP2 000018a5: SWAP1 000018a6: PUSH2 0x2ef4 000018a9: JUMP 000018aa: JUMPDEST 000018ab: PUSH1 0x60 000018ad: PUSH2 0x18da 000018b0: CALLER 000018b1: PUSH1 0x00 000018b3: CALLDATALOAD 000018b4: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 000018d5: AND 000018d6: PUSH2 0x19e1 000018d9: JUMP 000018da: JUMPDEST 000018db: PUSH2 0x1910 000018de: JUMPI 000018df: PUSH1 0x40 000018e1: MLOAD 000018e2: PUSH32 0x82b4290000000000000000000000000000000000000000000000000000000000 00001903: DUP2 00001904: MSTORE 00001905: PUSH1 0x04 00001907: ADD 00001908: PUSH1 0x40 0000190a: MLOAD 0000190b: DUP1 0000190c: SWAP2 0000190d: SUB 0000190e: SWAP1 0000190f: REVERT 00001910: JUMPDEST 00001911: PUSH1 0x00 00001913: DUP1 00001914: DUP6 00001915: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000192a: AND 0000192b: DUP6 0000192c: DUP6 0000192d: PUSH1 0x40 0000192f: MLOAD 00001930: PUSH2 0x1939 00001933: SWAP2 00001934: SWAP1 00001935: PUSH2 0x2f6b 00001938: JUMP 00001939: JUMPDEST 0000193a: PUSH1 0x00 0000193c: PUSH1 0x40 0000193e: MLOAD 0000193f: DUP1 00001940: DUP4 00001941: SUB 00001942: DUP2 00001943: DUP6 00001944: DUP8 00001945: GAS 00001946: CALL 00001947: SWAP3 00001948: POP 00001949: POP 0000194a: POP 0000194b: RETURNDATASIZE 0000194c: DUP1 0000194d: PUSH1 0x00 0000194f: DUP2 00001950: EQ 00001951: PUSH2 0x1976 00001954: JUMPI 00001955: PUSH1 0x40 00001957: MLOAD 00001958: SWAP2 00001959: POP 0000195a: PUSH1 0x1f 0000195c: NOT 0000195d: PUSH1 0x3f 0000195f: RETURNDATASIZE 00001960: ADD 00001961: AND 00001962: DUP3 00001963: ADD 00001964: PUSH1 0x40 00001966: MSTORE 00001967: RETURNDATASIZE 00001968: DUP3 00001969: MSTORE 0000196a: RETURNDATASIZE 0000196b: PUSH1 0x00 0000196d: PUSH1 0x20 0000196f: DUP5 00001970: ADD 00001971: RETURNDATACOPY 00001972: PUSH2 0x197b 00001975: JUMP 00001976: JUMPDEST 00001977: PUSH1 0x60 00001979: SWAP2 0000197a: POP 0000197b: JUMPDEST 0000197c: POP 0000197d: SWAP2 0000197e: POP 0000197f: SWAP2 00001980: POP 00001981: DUP2 00001982: PUSH2 0x19b9 00001985: JUMPI 00001986: DUP1 00001987: PUSH1 0x40 00001989: MLOAD 0000198a: PUSH32 0xa5fa8d2b00000000000000000000000000000000000000000000000000000000 000019ab: DUP2 000019ac: MSTORE 000019ad: PUSH1 0x04 000019af: ADD 000019b0: PUSH2 0x10a2 000019b3: SWAP2 000019b4: SWAP1 000019b5: PUSH2 0x2b03 000019b8: JUMP 000019b9: JUMPDEST 000019ba: SWAP6 000019bb: SWAP5 000019bc: POP 000019bd: POP 000019be: POP 000019bf: POP 000019c0: POP 000019c1: JUMP 000019c2: JUMPDEST 000019c3: DUP3 000019c4: DUP3 000019c5: MUL 000019c6: DUP2 000019c7: ISZERO 000019c8: ISZERO 000019c9: DUP5 000019ca: ISZERO 000019cb: DUP6 000019cc: DUP4 000019cd: DIV 000019ce: DUP6 000019cf: EQ 000019d0: OR 000019d1: AND 000019d2: PUSH2 0x19da 000019d5: JUMPI 000019d6: PUSH1 0x00 000019d8: DUP1 000019d9: REVERT 000019da: JUMPDEST 000019db: DIV 000019dc: SWAP3 000019dd: SWAP2 000019de: POP 000019df: POP 000019e0: JUMP 000019e1: JUMPDEST 000019e2: PUSH1 0x06 000019e4: SLOAD 000019e5: PUSH1 0x07 000019e7: SLOAD 000019e8: PUSH1 0x00 000019ea: SWAP2 000019eb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a00: AND 00001a01: SWAP1 00001a02: DUP3 00001a03: SWAP1 00001a04: PUSH1 0x60 00001a06: SHL 00001a07: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 00001a28: AND 00001a29: ISZERO 00001a2a: PUSH2 0x1a4b 00001a2d: JUMPI 00001a2e: PUSH1 0x07 00001a30: SLOAD 00001a31: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a46: AND 00001a47: PUSH2 0x1a4d 00001a4a: JUMP 00001a4b: JUMPDEST 00001a4c: ADDRESS 00001a4d: JUMPDEST 00001a4e: PUSH1 0x40 00001a50: MLOAD 00001a51: PUSH32 0xb700961300000000000000000000000000000000000000000000000000000000 00001a72: DUP2 00001a73: MSTORE 00001a74: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a89: DUP8 00001a8a: DUP2 00001a8b: AND 00001a8c: PUSH1 0x04 00001a8e: DUP4 00001a8f: ADD 00001a90: MSTORE 00001a91: DUP1 00001a92: DUP4 00001a93: AND 00001a94: PUSH1 0x24 00001a96: DUP4 00001a97: ADD 00001a98: MSTORE 00001a99: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00001aba: DUP8 00001abb: AND 00001abc: PUSH1 0x44 00001abe: DUP4 00001abf: ADD 00001ac0: MSTORE 00001ac1: SWAP2 00001ac2: SWAP3 00001ac3: POP 00001ac4: SWAP1 00001ac5: DUP4 00001ac6: AND 00001ac7: SWAP1 00001ac8: PUSH4 0xb7009613 00001acd: SWAP1 00001ace: PUSH1 0x64 00001ad0: ADD 00001ad1: PUSH1 0x20 00001ad3: PUSH1 0x40 00001ad5: MLOAD 00001ad6: DUP1 00001ad7: DUP4 00001ad8: SUB 00001ad9: DUP2 00001ada: DUP7 00001adb: GAS 00001adc: STATICCALL 00001add: ISZERO 00001ade: DUP1 00001adf: ISZERO 00001ae0: PUSH2 0x1aed 00001ae3: JUMPI 00001ae4: RETURNDATASIZE 00001ae5: PUSH1 0x00 00001ae7: DUP1 00001ae8: RETURNDATACOPY 00001ae9: RETURNDATASIZE 00001aea: PUSH1 0x00 00001aec: REVERT 00001aed: JUMPDEST 00001aee: POP 00001aef: POP 00001af0: POP 00001af1: POP 00001af2: PUSH1 0x40 00001af4: MLOAD 00001af5: RETURNDATASIZE 00001af6: PUSH1 0x1f 00001af8: NOT 00001af9: PUSH1 0x1f 00001afb: DUP3 00001afc: ADD 00001afd: AND 00001afe: DUP3 00001aff: ADD 00001b00: DUP1 00001b01: PUSH1 0x40 00001b03: MSTORE 00001b04: POP 00001b05: DUP2 00001b06: ADD 00001b07: SWAP1 00001b08: PUSH2 0x1b11 00001b0b: SWAP2 00001b0c: SWAP1 00001b0d: PUSH2 0x2f87 00001b10: JUMP 00001b11: JUMPDEST 00001b12: DUP1 00001b13: PUSH2 0x19b9 00001b16: JUMPI 00001b17: POP 00001b18: DUP2 00001b19: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b2e: AND 00001b2f: PUSH4 0x8da5cb5b 00001b34: PUSH1 0x40 00001b36: MLOAD 00001b37: DUP2 00001b38: PUSH4 0xffffffff 00001b3d: AND 00001b3e: PUSH1 0xe0 00001b40: SHL 00001b41: DUP2 00001b42: MSTORE 00001b43: PUSH1 0x04 00001b45: ADD 00001b46: PUSH1 0x20 00001b48: PUSH1 0x40 00001b4a: MLOAD 00001b4b: DUP1 00001b4c: DUP4 00001b4d: SUB 00001b4e: DUP2 00001b4f: DUP7 00001b50: GAS 00001b51: STATICCALL 00001b52: ISZERO 00001b53: DUP1 00001b54: ISZERO 00001b55: PUSH2 0x1b62 00001b58: JUMPI 00001b59: RETURNDATASIZE 00001b5a: PUSH1 0x00 00001b5c: DUP1 00001b5d: RETURNDATACOPY 00001b5e: RETURNDATASIZE 00001b5f: PUSH1 0x00 00001b61: REVERT 00001b62: JUMPDEST 00001b63: POP 00001b64: POP 00001b65: POP 00001b66: POP 00001b67: PUSH1 0x40 00001b69: MLOAD 00001b6a: RETURNDATASIZE 00001b6b: PUSH1 0x1f 00001b6d: NOT 00001b6e: PUSH1 0x1f 00001b70: DUP3 00001b71: ADD 00001b72: AND 00001b73: DUP3 00001b74: ADD 00001b75: DUP1 00001b76: PUSH1 0x40 00001b78: MSTORE 00001b79: POP 00001b7a: DUP2 00001b7b: ADD 00001b7c: SWAP1 00001b7d: PUSH2 0x1b86 00001b80: SWAP2 00001b81: SWAP1 00001b82: PUSH2 0x2fa9 00001b85: JUMP 00001b86: JUMPDEST 00001b87: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b9c: AND 00001b9d: DUP6 00001b9e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001bb3: AND 00001bb4: EQ 00001bb5: SWAP6 00001bb6: SWAP5 00001bb7: POP 00001bb8: POP 00001bb9: POP 00001bba: POP 00001bbb: POP 00001bbc: JUMP 00001bbd: JUMPDEST 00001bbe: PUSH1 0x00 00001bc0: DUP1 00001bc1: DUP1 00001bc2: PUSH2 0x1bcf 00001bc5: PUSH1 0x34 00001bc7: PUSH1 0x20 00001bc9: DUP7 00001bca: DUP9 00001bcb: PUSH2 0x2fc6 00001bce: JUMP 00001bcf: JUMPDEST 00001bd0: PUSH2 0x1bd8 00001bd3: SWAP2 00001bd4: PUSH2 0x2ff0 00001bd7: JUMP 00001bd8: JUMPDEST 00001bd9: PUSH1 0x40 00001bdb: MLOAD 00001bdc: PUSH32 0x6ab3905700000000000000000000000000000000000000000000000000000000 00001bfd: DUP2 00001bfe: MSTORE 00001bff: PUSH1 0x60 00001c01: SWAP2 00001c02: SWAP1 00001c03: SWAP2 00001c04: SHR 00001c05: PUSH1 0x04 00001c07: DUP3 00001c08: ADD 00001c09: DUP2 00001c0a: SWAP1 00001c0b: MSTORE 00001c0c: SWAP2 00001c0d: POP 00001c0e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001c23: PUSH32 0x00000000000000000000000094106ca9c7e567109a1d39413052887d1f412183 00001c44: AND 00001c45: SWAP1 00001c46: PUSH4 0x6ab39057 00001c4b: SWAP1 00001c4c: PUSH1 0x24 00001c4e: ADD 00001c4f: PUSH1 0x20 00001c51: PUSH1 0x40 00001c53: MLOAD 00001c54: DUP1 00001c55: DUP4 00001c56: SUB 00001c57: DUP2 00001c58: DUP7 00001c59: GAS 00001c5a: STATICCALL 00001c5b: ISZERO 00001c5c: DUP1 00001c5d: ISZERO 00001c5e: PUSH2 0x1c6b 00001c61: JUMPI 00001c62: RETURNDATASIZE 00001c63: PUSH1 0x00 00001c65: DUP1 00001c66: RETURNDATACOPY 00001c67: RETURNDATASIZE 00001c68: PUSH1 0x00 00001c6a: REVERT 00001c6b: JUMPDEST 00001c6c: POP 00001c6d: POP 00001c6e: POP 00001c6f: POP 00001c70: PUSH1 0x40 00001c72: MLOAD 00001c73: RETURNDATASIZE 00001c74: PUSH1 0x1f 00001c76: NOT 00001c77: PUSH1 0x1f 00001c79: DUP3 00001c7a: ADD 00001c7b: AND 00001c7c: DUP3 00001c7d: ADD 00001c7e: DUP1 00001c7f: PUSH1 0x40 00001c81: MSTORE 00001c82: POP 00001c83: DUP2 00001c84: ADD 00001c85: SWAP1 00001c86: PUSH2 0x1c8f 00001c89: SWAP2 00001c8a: SWAP1 00001c8b: PUSH2 0x2f87 00001c8e: JUMP 00001c8f: JUMPDEST 00001c90: PUSH2 0x1cc5 00001c93: JUMPI 00001c94: PUSH1 0x40 00001c96: MLOAD 00001c97: PUSH32 0xc94f7a9a00000000000000000000000000000000000000000000000000000000 00001cb8: DUP2 00001cb9: MSTORE 00001cba: PUSH1 0x04 00001cbc: ADD 00001cbd: PUSH1 0x40 00001cbf: MLOAD 00001cc0: DUP1 00001cc1: SWAP2 00001cc2: SUB 00001cc3: SWAP1 00001cc4: REVERT 00001cc5: JUMPDEST 00001cc6: PUSH1 0x00 00001cc8: PUSH2 0x1cd3 00001ccb: DUP6 00001ccc: DUP8 00001ccd: ADD 00001cce: DUP8 00001ccf: PUSH2 0x2b16 00001cd2: JUMP 00001cd3: JUMPDEST 00001cd4: SWAP1 00001cd5: POP 00001cd6: PUSH1 0x00 00001cd8: PUSH2 0x1cec 00001cdb: PUSH1 0x10 00001cdd: SLOAD 00001cde: DUP10 00001cdf: PUSH2 0x2845 00001ce2: SWAP1 00001ce3: SWAP2 00001ce4: SWAP1 00001ce5: PUSH4 0xffffffff 00001cea: AND 00001ceb: JUMP 00001cec: JUMPDEST 00001ced: SWAP1 00001cee: POP 00001cef: DUP8 00001cf0: DUP3 00001cf1: GT 00001cf2: DUP1 00001cf3: PUSH2 0x1d04 00001cf6: JUMPI 00001cf7: POP 00001cf8: DUP1 00001cf9: PUSH2 0x1d02 00001cfc: DUP4 00001cfd: DUP11 00001cfe: PUSH2 0x2f54 00001d01: JUMP 00001d02: JUMPDEST 00001d03: GT 00001d04: JUMPDEST 00001d05: ISZERO 00001d06: PUSH2 0x1d4c 00001d09: JUMPI 00001d0a: PUSH1 0x40 00001d0c: MLOAD 00001d0d: PUSH32 0x07a7129e00000000000000000000000000000000000000000000000000000000 00001d2e: DUP2 00001d2f: MSTORE 00001d30: PUSH1 0x04 00001d32: DUP2 00001d33: ADD 00001d34: DUP4 00001d35: SWAP1 00001d36: MSTORE 00001d37: PUSH1 0x24 00001d39: DUP2 00001d3a: ADD 00001d3b: DUP10 00001d3c: SWAP1 00001d3d: MSTORE 00001d3e: PUSH1 0x44 00001d40: DUP2 00001d41: ADD 00001d42: DUP3 00001d43: SWAP1 00001d44: MSTORE 00001d45: PUSH1 0x64 00001d47: ADD 00001d48: PUSH2 0x10a2 00001d4b: JUMP 00001d4c: JUMPDEST 00001d4d: PUSH2 0x1d8e 00001d50: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001d65: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00001d86: AND 00001d87: DUP5 00001d88: PUSH1 0x00 00001d8a: PUSH2 0x285a 00001d8d: JUMP 00001d8e: JUMPDEST 00001d8f: PUSH2 0x1dcf 00001d92: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001da7: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00001dc8: AND 00001dc9: DUP5 00001dca: DUP5 00001dcb: PUSH2 0x285a 00001dce: JUMP 00001dcf: JUMPDEST 00001dd0: PUSH1 0x00 00001dd2: DUP4 00001dd3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001de8: AND 00001de9: PUSH4 0xda145263 00001dee: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00001e0f: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00001e30: ADDRESS 00001e31: DUP8 00001e32: DUP14 00001e33: DUP14 00001e34: PUSH1 0x34 00001e36: SWAP1 00001e37: DUP1 00001e38: SWAP3 00001e39: PUSH2 0x1e44 00001e3c: SWAP4 00001e3d: SWAP3 00001e3e: SWAP2 00001e3f: SWAP1 00001e40: PUSH2 0x2fc6 00001e43: JUMP 00001e44: JUMPDEST 00001e45: PUSH1 0x40 00001e47: MLOAD 00001e48: DUP8 00001e49: PUSH4 0xffffffff 00001e4e: AND 00001e4f: PUSH1 0xe0 00001e51: SHL 00001e52: DUP2 00001e53: MSTORE 00001e54: PUSH1 0x04 00001e56: ADD 00001e57: PUSH2 0x1e65 00001e5a: SWAP7 00001e5b: SWAP6 00001e5c: SWAP5 00001e5d: SWAP4 00001e5e: SWAP3 00001e5f: SWAP2 00001e60: SWAP1 00001e61: PUSH2 0x3038 00001e64: JUMP 00001e65: JUMPDEST 00001e66: PUSH1 0x20 00001e68: PUSH1 0x40 00001e6a: MLOAD 00001e6b: DUP1 00001e6c: DUP4 00001e6d: SUB 00001e6e: DUP2 00001e6f: PUSH1 0x00 00001e71: DUP8 00001e72: GAS 00001e73: CALL 00001e74: ISZERO 00001e75: DUP1 00001e76: ISZERO 00001e77: PUSH2 0x1e84 00001e7a: JUMPI 00001e7b: RETURNDATASIZE 00001e7c: PUSH1 0x00 00001e7e: DUP1 00001e7f: RETURNDATACOPY 00001e80: RETURNDATASIZE 00001e81: PUSH1 0x00 00001e83: REVERT 00001e84: JUMPDEST 00001e85: POP 00001e86: POP 00001e87: POP 00001e88: POP 00001e89: PUSH1 0x40 00001e8b: MLOAD 00001e8c: RETURNDATASIZE 00001e8d: PUSH1 0x1f 00001e8f: NOT 00001e90: PUSH1 0x1f 00001e92: DUP3 00001e93: ADD 00001e94: AND 00001e95: DUP3 00001e96: ADD 00001e97: DUP1 00001e98: PUSH1 0x40 00001e9a: MSTORE 00001e9b: POP 00001e9c: DUP2 00001e9d: ADD 00001e9e: SWAP1 00001e9f: PUSH2 0x1ea8 00001ea2: SWAP2 00001ea3: SWAP1 00001ea4: PUSH2 0x2ef4 00001ea7: JUMP 00001ea8: JUMPDEST 00001ea9: SWAP3 00001eaa: SWAP10 00001eab: SWAP3 00001eac: SWAP9 00001ead: POP 00001eae: SWAP2 00001eaf: SWAP7 00001eb0: POP 00001eb1: POP 00001eb2: POP 00001eb3: POP 00001eb4: POP 00001eb5: POP 00001eb6: POP 00001eb7: JUMP 00001eb8: JUMPDEST 00001eb9: PUSH1 0x00 00001ebb: DUP3 00001ebc: ISZERO 00001ebd: DUP1 00001ebe: PUSH2 0x1ec7 00001ec1: JUMPI 00001ec2: POP 00001ec3: PUSH1 0x0f 00001ec5: SLOAD 00001ec6: ISZERO 00001ec7: JUMPDEST 00001ec8: DUP1 00001ec9: PUSH2 0x1ed0 00001ecc: JUMPI 00001ecd: POP 00001ece: DUP2 00001ecf: ISZERO 00001ed0: JUMPDEST 00001ed1: ISZERO 00001ed2: PUSH2 0x1edd 00001ed5: JUMPI 00001ed6: POP 00001ed7: PUSH1 0x00 00001ed9: PUSH2 0x0c36 00001edc: JUMP 00001edd: JUMPDEST 00001ede: PUSH2 0x0a1e 00001ee1: PUSH1 0x0f 00001ee3: SLOAD 00001ee4: DUP4 00001ee5: PUSH2 0x1eee 00001ee8: SWAP2 00001ee9: SWAP1 00001eea: PUSH2 0x30c0 00001eed: JUMP 00001eee: JUMPDEST 00001eef: DUP5 00001ef0: SWAP1 00001ef1: PUSH2 0x2845 00001ef4: JUMP 00001ef5: JUMPDEST 00001ef6: PUSH1 0x00 00001ef8: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f 00001f19: PUSH1 0x00 00001f1b: PUSH1 0x40 00001f1d: MLOAD 00001f1e: PUSH2 0x1f27 00001f21: SWAP2 00001f22: SWAP1 00001f23: PUSH2 0x30fd 00001f26: JUMP 00001f27: JUMPDEST 00001f28: PUSH1 0x40 00001f2a: DUP1 00001f2b: MLOAD 00001f2c: SWAP2 00001f2d: DUP3 00001f2e: SWAP1 00001f2f: SUB 00001f30: DUP3 00001f31: KECCAK256 00001f32: PUSH1 0x20 00001f34: DUP4 00001f35: ADD 00001f36: SWAP4 00001f37: SWAP1 00001f38: SWAP4 00001f39: MSTORE 00001f3a: DUP2 00001f3b: ADD 00001f3c: SWAP2 00001f3d: SWAP1 00001f3e: SWAP2 00001f3f: MSTORE 00001f40: PUSH32 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6 00001f61: PUSH1 0x60 00001f63: DUP3 00001f64: ADD 00001f65: MSTORE 00001f66: CHAINID 00001f67: PUSH1 0x80 00001f69: DUP3 00001f6a: ADD 00001f6b: MSTORE 00001f6c: ADDRESS 00001f6d: PUSH1 0xa0 00001f6f: DUP3 00001f70: ADD 00001f71: MSTORE 00001f72: PUSH1 0xc0 00001f74: ADD 00001f75: PUSH1 0x40 00001f77: MLOAD 00001f78: PUSH1 0x20 00001f7a: DUP2 00001f7b: DUP4 00001f7c: SUB 00001f7d: SUB 00001f7e: DUP2 00001f7f: MSTORE 00001f80: SWAP1 00001f81: PUSH1 0x40 00001f83: MSTORE 00001f84: DUP1 00001f85: MLOAD 00001f86: SWAP1 00001f87: PUSH1 0x20 00001f89: ADD 00001f8a: KECCAK256 00001f8b: SWAP1 00001f8c: POP 00001f8d: SWAP1 00001f8e: JUMP 00001f8f: JUMPDEST 00001f90: PUSH1 0x40 00001f92: MLOAD 00001f93: PUSH32 0xea3fff6800000000000000000000000000000000000000000000000000000000 00001fb4: DUP2 00001fb5: MSTORE 00001fb6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001fcb: DUP3 00001fcc: DUP2 00001fcd: AND 00001fce: PUSH1 0x04 00001fd0: DUP4 00001fd1: ADD 00001fd2: MSTORE 00001fd3: PUSH1 0x00 00001fd5: SWAP2 00001fd6: PUSH32 0x00000000000000000000000094106ca9c7e567109a1d39413052887d1f412183 00001ff7: SWAP1 00001ff8: SWAP2 00001ff9: AND 00001ffa: SWAP1 00001ffb: PUSH4 0xea3fff68 00002000: SWAP1 00002001: PUSH1 0x24 00002003: ADD 00002004: PUSH1 0x20 00002006: PUSH1 0x40 00002008: MLOAD 00002009: DUP1 0000200a: DUP4 0000200b: SUB 0000200c: DUP2 0000200d: DUP7 0000200e: GAS 0000200f: STATICCALL 00002010: ISZERO 00002011: DUP1 00002012: ISZERO 00002013: PUSH2 0x2020 00002016: JUMPI 00002017: RETURNDATASIZE 00002018: PUSH1 0x00 0000201a: DUP1 0000201b: RETURNDATACOPY 0000201c: RETURNDATASIZE 0000201d: PUSH1 0x00 0000201f: REVERT 00002020: JUMPDEST 00002021: POP 00002022: POP 00002023: POP 00002024: POP 00002025: PUSH1 0x40 00002027: MLOAD 00002028: RETURNDATASIZE 00002029: PUSH1 0x1f 0000202b: NOT 0000202c: PUSH1 0x1f 0000202e: DUP3 0000202f: ADD 00002030: AND 00002031: DUP3 00002032: ADD 00002033: DUP1 00002034: PUSH1 0x40 00002036: MSTORE 00002037: POP 00002038: DUP2 00002039: ADD 0000203a: SWAP1 0000203b: PUSH2 0x0c36 0000203e: SWAP2 0000203f: SWAP1 00002040: PUSH2 0x2f87 00002043: JUMP 00002044: JUMPDEST 00002045: PUSH1 0x00 00002047: DUP1 00002048: DUP1 00002049: DUP1 0000204a: PUSH2 0x2057 0000204d: PUSH1 0x34 0000204f: PUSH1 0x20 00002051: DUP8 00002052: DUP10 00002053: PUSH2 0x2fc6 00002056: JUMP 00002057: JUMPDEST 00002058: PUSH2 0x2060 0000205b: SWAP2 0000205c: PUSH2 0x2ff0 0000205f: JUMP 00002060: JUMPDEST 00002061: PUSH1 0x40 00002063: MLOAD 00002064: PUSH32 0x6ab3905700000000000000000000000000000000000000000000000000000000 00002085: DUP2 00002086: MSTORE 00002087: PUSH1 0x60 00002089: SWAP2 0000208a: SWAP1 0000208b: SWAP2 0000208c: SHR 0000208d: PUSH1 0x04 0000208f: DUP3 00002090: ADD 00002091: DUP2 00002092: SWAP1 00002093: MSTORE 00002094: SWAP2 00002095: POP 00002096: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020ab: PUSH32 0x00000000000000000000000094106ca9c7e567109a1d39413052887d1f412183 000020cc: AND 000020cd: SWAP1 000020ce: PUSH4 0x6ab39057 000020d3: SWAP1 000020d4: PUSH1 0x24 000020d6: ADD 000020d7: PUSH1 0x20 000020d9: PUSH1 0x40 000020db: MLOAD 000020dc: DUP1 000020dd: DUP4 000020de: SUB 000020df: DUP2 000020e0: DUP7 000020e1: GAS 000020e2: STATICCALL 000020e3: ISZERO 000020e4: DUP1 000020e5: ISZERO 000020e6: PUSH2 0x20f3 000020e9: JUMPI 000020ea: RETURNDATASIZE 000020eb: PUSH1 0x00 000020ed: DUP1 000020ee: RETURNDATACOPY 000020ef: RETURNDATASIZE 000020f0: PUSH1 0x00 000020f2: REVERT 000020f3: JUMPDEST 000020f4: POP 000020f5: POP 000020f6: POP 000020f7: POP 000020f8: PUSH1 0x40 000020fa: MLOAD 000020fb: RETURNDATASIZE 000020fc: PUSH1 0x1f 000020fe: NOT 000020ff: PUSH1 0x1f 00002101: DUP3 00002102: ADD 00002103: AND 00002104: DUP3 00002105: ADD 00002106: DUP1 00002107: PUSH1 0x40 00002109: MSTORE 0000210a: POP 0000210b: DUP2 0000210c: ADD 0000210d: SWAP1 0000210e: PUSH2 0x2117 00002111: SWAP2 00002112: SWAP1 00002113: PUSH2 0x2f87 00002116: JUMP 00002117: JUMPDEST 00002118: PUSH2 0x214d 0000211b: JUMPI 0000211c: PUSH1 0x40 0000211e: MLOAD 0000211f: PUSH32 0xc94f7a9a00000000000000000000000000000000000000000000000000000000 00002140: DUP2 00002141: MSTORE 00002142: PUSH1 0x04 00002144: ADD 00002145: PUSH1 0x40 00002147: MLOAD 00002148: DUP1 00002149: SWAP2 0000214a: SUB 0000214b: SWAP1 0000214c: REVERT 0000214d: JUMPDEST 0000214e: PUSH1 0x00 00002150: DUP1 00002151: PUSH2 0x215c 00002154: DUP10 00002155: PUSH1 0x0b 00002157: SLOAD 00002158: PUSH2 0x27f1 0000215b: JUMP 0000215c: JUMPDEST 0000215d: SWAP1 0000215e: SWAP3 0000215f: POP 00002160: SWAP1 00002161: POP 00002162: PUSH2 0x21a3 00002165: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000217a: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 0000219b: AND 0000219c: CALLER 0000219d: ADDRESS 0000219e: DUP13 0000219f: PUSH2 0x2921 000021a2: JUMP 000021a3: JUMPDEST 000021a4: PUSH1 0x0a 000021a6: SLOAD 000021a7: PUSH2 0x21ea 000021aa: SWAP1 000021ab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000021c0: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 000021e1: DUP2 000021e2: AND 000021e3: SWAP2 000021e4: AND 000021e5: DUP4 000021e6: PUSH2 0x2561 000021e9: JUMP 000021ea: JUMPDEST 000021eb: PUSH2 0x222c 000021ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002203: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00002224: AND 00002225: DUP5 00002226: PUSH1 0x00 00002228: PUSH2 0x285a 0000222b: JUMP 0000222c: JUMPDEST 0000222d: PUSH2 0x226d 00002230: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002245: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00002266: AND 00002267: DUP5 00002268: DUP5 00002269: PUSH2 0x285a 0000226c: JUMP 0000226d: JUMPDEST 0000226e: PUSH1 0x00 00002270: DUP4 00002271: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002286: AND 00002287: PUSH4 0xda145263 0000228c: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 000022ad: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000022ce: ADDRESS 000022cf: DUP8 000022d0: DUP15 000022d1: DUP15 000022d2: PUSH1 0x34 000022d4: SWAP1 000022d5: DUP1 000022d6: SWAP3 000022d7: PUSH2 0x22e2 000022da: SWAP4 000022db: SWAP3 000022dc: SWAP2 000022dd: SWAP1 000022de: PUSH2 0x2fc6 000022e1: JUMP 000022e2: JUMPDEST 000022e3: PUSH1 0x40 000022e5: MLOAD 000022e6: DUP8 000022e7: PUSH4 0xffffffff 000022ec: AND 000022ed: PUSH1 0xe0 000022ef: SHL 000022f0: DUP2 000022f1: MSTORE 000022f2: PUSH1 0x04 000022f4: ADD 000022f5: PUSH2 0x2303 000022f8: SWAP7 000022f9: SWAP6 000022fa: SWAP5 000022fb: SWAP4 000022fc: SWAP3 000022fd: SWAP2 000022fe: SWAP1 000022ff: PUSH2 0x3038 00002302: JUMP 00002303: JUMPDEST 00002304: PUSH1 0x20 00002306: PUSH1 0x40 00002308: MLOAD 00002309: DUP1 0000230a: DUP4 0000230b: SUB 0000230c: DUP2 0000230d: PUSH1 0x00 0000230f: DUP8 00002310: GAS 00002311: CALL 00002312: ISZERO 00002313: DUP1 00002314: ISZERO 00002315: PUSH2 0x2322 00002318: JUMPI 00002319: RETURNDATASIZE 0000231a: PUSH1 0x00 0000231c: DUP1 0000231d: RETURNDATACOPY 0000231e: RETURNDATASIZE 0000231f: PUSH1 0x00 00002321: REVERT 00002322: JUMPDEST 00002323: POP 00002324: POP 00002325: POP 00002326: POP 00002327: PUSH1 0x40 00002329: MLOAD 0000232a: RETURNDATASIZE 0000232b: PUSH1 0x1f 0000232d: NOT 0000232e: PUSH1 0x1f 00002330: DUP3 00002331: ADD 00002332: AND 00002333: DUP3 00002334: ADD 00002335: DUP1 00002336: PUSH1 0x40 00002338: MSTORE 00002339: POP 0000233a: DUP2 0000233b: ADD 0000233c: SWAP1 0000233d: PUSH2 0x2346 00002340: SWAP2 00002341: SWAP1 00002342: PUSH2 0x2ef4 00002345: JUMP 00002346: JUMPDEST 00002347: SWAP1 00002348: POP 00002349: PUSH1 0x09 0000234b: SLOAD 0000234c: DUP2 0000234d: DUP5 0000234e: PUSH2 0x2355 00002351: PUSH2 0x0958 00002354: JUMP 00002355: JUMPDEST 00002356: PUSH2 0x235f 00002359: SWAP2 0000235a: SWAP1 0000235b: PUSH2 0x30c0 0000235e: JUMP 0000235f: JUMPDEST 00002360: PUSH2 0x2369 00002363: SWAP2 00002364: SWAP1 00002365: PUSH2 0x31cf 00002368: JUMP 00002369: JUMPDEST 0000236a: GT 0000236b: ISZERO 0000236c: PUSH2 0x23a1 0000236f: JUMPI 00002370: PUSH1 0x40 00002372: MLOAD 00002373: PUSH32 0x2edaff4300000000000000000000000000000000000000000000000000000000 00002394: DUP2 00002395: MSTORE 00002396: PUSH1 0x04 00002398: ADD 00002399: PUSH1 0x40 0000239b: MLOAD 0000239c: DUP1 0000239d: SWAP2 0000239e: SUB 0000239f: SWAP1 000023a0: REVERT 000023a1: JUMPDEST 000023a2: PUSH1 0x00 000023a4: PUSH2 0x23ac 000023a7: DUP3 000023a8: PUSH2 0x2a0b 000023ab: JUMP 000023ac: JUMPDEST 000023ad: SWAP12 000023ae: SWAP2 000023af: SWAP11 000023b0: POP 000023b1: SWAP2 000023b2: SWAP9 000023b3: POP 000023b4: SWAP7 000023b5: POP 000023b6: POP 000023b7: POP 000023b8: POP 000023b9: POP 000023ba: POP 000023bb: POP 000023bc: JUMP 000023bd: JUMPDEST 000023be: DUP1 000023bf: PUSH1 0x02 000023c1: PUSH1 0x00 000023c3: DUP3 000023c4: DUP3 000023c5: SLOAD 000023c6: PUSH2 0x23cf 000023c9: SWAP2 000023ca: SWAP1 000023cb: PUSH2 0x2f3c 000023ce: JUMP 000023cf: JUMPDEST 000023d0: SWAP1 000023d1: SWAP2 000023d2: SSTORE 000023d3: POP 000023d4: POP 000023d5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000023ea: DUP3 000023eb: AND 000023ec: PUSH1 0x00 000023ee: DUP2 000023ef: DUP2 000023f0: MSTORE 000023f1: PUSH1 0x03 000023f3: PUSH1 0x20 000023f5: SWAP1 000023f6: DUP2 000023f7: MSTORE 000023f8: PUSH1 0x40 000023fa: DUP1 000023fb: DUP4 000023fc: KECCAK256 000023fd: DUP1 000023fe: SLOAD 000023ff: DUP7 00002400: ADD 00002401: SWAP1 00002402: SSTORE 00002403: MLOAD 00002404: DUP5 00002405: DUP2 00002406: MSTORE 00002407: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00002428: SWAP2 00002429: ADD 0000242a: JUMPDEST 0000242b: PUSH1 0x40 0000242d: MLOAD 0000242e: DUP1 0000242f: SWAP2 00002430: SUB 00002431: SWAP1 00002432: LOG3 00002433: POP 00002434: POP 00002435: JUMP 00002436: JUMPDEST 00002437: PUSH1 0x40 00002439: MLOAD 0000243a: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 0000245b: DUP2 0000245c: MSTORE 0000245d: ADDRESS 0000245e: PUSH1 0x04 00002460: DUP3 00002461: ADD 00002462: MSTORE 00002463: PUSH1 0x00 00002465: SWAP1 00002466: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00002487: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000249c: AND 0000249d: SWAP1 0000249e: PUSH4 0x70a08231 000024a3: SWAP1 000024a4: PUSH1 0x24 000024a6: ADD 000024a7: PUSH1 0x20 000024a9: PUSH1 0x40 000024ab: MLOAD 000024ac: DUP1 000024ad: DUP4 000024ae: SUB 000024af: DUP2 000024b0: DUP7 000024b1: GAS 000024b2: STATICCALL 000024b3: ISZERO 000024b4: DUP1 000024b5: ISZERO 000024b6: PUSH2 0x24c3 000024b9: JUMPI 000024ba: RETURNDATASIZE 000024bb: PUSH1 0x00 000024bd: DUP1 000024be: RETURNDATACOPY 000024bf: RETURNDATASIZE 000024c0: PUSH1 0x00 000024c2: REVERT 000024c3: JUMPDEST 000024c4: POP 000024c5: POP 000024c6: POP 000024c7: POP 000024c8: PUSH1 0x40 000024ca: MLOAD 000024cb: RETURNDATASIZE 000024cc: PUSH1 0x1f 000024ce: NOT 000024cf: PUSH1 0x1f 000024d1: DUP3 000024d2: ADD 000024d3: AND 000024d4: DUP3 000024d5: ADD 000024d6: DUP1 000024d7: PUSH1 0x40 000024d9: MSTORE 000024da: POP 000024db: DUP2 000024dc: ADD 000024dd: SWAP1 000024de: PUSH2 0x24e7 000024e1: SWAP2 000024e2: SWAP1 000024e3: PUSH2 0x2ef4 000024e6: JUMP 000024e7: JUMPDEST 000024e8: SWAP1 000024e9: POP 000024ea: PUSH1 0x00 000024ec: PUSH1 0x0e 000024ee: SLOAD 000024ef: TIMESTAMP 000024f0: PUSH2 0x24f9 000024f3: SWAP2 000024f4: SWAP1 000024f5: PUSH2 0x2f54 000024f8: JUMP 000024f9: JUMPDEST 000024fa: SWAP1 000024fb: POP 000024fc: PUSH1 0x00 000024fe: PUSH2 0x2507 00002501: DUP4 00002502: DUP4 00002503: PUSH2 0x1eb8 00002506: JUMP 00002507: JUMPDEST 00002508: SWAP1 00002509: POP 0000250a: DUP3 0000250b: DUP2 0000250c: GT 0000250d: ISZERO 0000250e: PUSH2 0x2514 00002511: JUMPI 00002512: POP 00002513: DUP2 00002514: JUMPDEST 00002515: DUP1 00002516: ISZERO 00002517: PUSH2 0x13ff 0000251a: JUMPI 0000251b: TIMESTAMP 0000251c: PUSH1 0x0e 0000251e: SSTORE 0000251f: PUSH1 0x0a 00002521: SLOAD 00002522: PUSH2 0x13c5 00002525: SWAP1 00002526: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000253b: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 0000255c: DUP2 0000255d: AND 0000255e: SWAP2 0000255f: AND 00002560: DUP4 00002561: JUMPDEST 00002562: PUSH1 0x00 00002564: PUSH1 0x40 00002566: MLOAD 00002567: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 00002588: DUP2 00002589: MSTORE 0000258a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000259f: DUP5 000025a0: AND 000025a1: PUSH1 0x04 000025a3: DUP3 000025a4: ADD 000025a5: MSTORE 000025a6: DUP3 000025a7: PUSH1 0x24 000025a9: DUP3 000025aa: ADD 000025ab: MSTORE 000025ac: PUSH1 0x00 000025ae: DUP1 000025af: PUSH1 0x44 000025b1: DUP4 000025b2: PUSH1 0x00 000025b4: DUP10 000025b5: GAS 000025b6: CALL 000025b7: SWAP2 000025b8: POP 000025b9: POP 000025ba: PUSH2 0x25c2 000025bd: DUP2 000025be: PUSH2 0x2a2e 000025c1: JUMP 000025c2: JUMPDEST 000025c3: PUSH2 0x2628 000025c6: JUMPI 000025c7: PUSH1 0x40 000025c9: MLOAD 000025ca: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000025eb: DUP2 000025ec: MSTORE 000025ed: PUSH1 0x20 000025ef: PUSH1 0x04 000025f1: DUP3 000025f2: ADD 000025f3: MSTORE 000025f4: PUSH1 0x0f 000025f6: PUSH1 0x24 000025f8: DUP3 000025f9: ADD 000025fa: MSTORE 000025fb: PUSH32 0x5452414e534645525f4641494c45440000000000000000000000000000000000 0000261c: PUSH1 0x44 0000261e: DUP3 0000261f: ADD 00002620: MSTORE 00002621: PUSH1 0x64 00002623: ADD 00002624: PUSH2 0x10a2 00002627: JUMP 00002628: JUMPDEST 00002629: POP 0000262a: POP 0000262b: POP 0000262c: POP 0000262d: JUMP 0000262e: JUMPDEST 0000262f: PUSH1 0x00 00002631: DUP1 00002632: PUSH2 0x263a 00002635: DUP4 00002636: PUSH2 0x17ec 00002639: JUMP 0000263a: JUMPDEST 0000263b: SWAP1 0000263c: POP 0000263d: PUSH2 0x2646 00002640: CALLER 00002641: DUP5 00002642: PUSH2 0x2763 00002645: JUMP 00002646: JUMPDEST 00002647: PUSH1 0x00 00002649: DUP1 0000264a: PUSH2 0x2655 0000264d: DUP4 0000264e: PUSH1 0x0c 00002650: SLOAD 00002651: PUSH2 0x27f1 00002654: JUMP 00002655: JUMPDEST 00002656: PUSH1 0x0a 00002658: SLOAD 00002659: SWAP2 0000265a: SWAP4 0000265b: POP 0000265c: SWAP2 0000265d: POP 0000265e: PUSH2 0x26a1 00002661: SWAP1 00002662: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002677: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 00002698: DUP2 00002699: AND 0000269a: SWAP2 0000269b: AND 0000269c: DUP4 0000269d: PUSH2 0x2561 000026a0: JUMP 000026a1: JUMPDEST 000026a2: PUSH2 0x26e2 000026a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000026ba: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 000026db: AND 000026dc: CALLER 000026dd: DUP5 000026de: PUSH2 0x2561 000026e1: JUMP 000026e2: JUMPDEST 000026e3: PUSH1 0x40 000026e5: DUP1 000026e6: MLOAD 000026e7: DUP5 000026e8: DUP2 000026e9: MSTORE 000026ea: PUSH1 0x20 000026ec: DUP2 000026ed: ADD 000026ee: DUP8 000026ef: SWAP1 000026f0: MSTORE 000026f1: SWAP1 000026f2: DUP2 000026f3: ADD 000026f4: DUP4 000026f5: SWAP1 000026f6: MSTORE 000026f7: PUSH1 0x60 000026f9: DUP2 000026fa: ADD 000026fb: DUP3 000026fc: SWAP1 000026fd: MSTORE 000026fe: CALLER 000026ff: SWAP1 00002700: DUP2 00002701: SWAP1 00002702: PUSH32 0x8caf04742286d017f9ac3924388e188c73e6e5094311c5e59a61a7ef86dda8bf 00002723: SWAP1 00002724: PUSH1 0x80 00002726: ADD 00002727: PUSH1 0x40 00002729: MLOAD 0000272a: DUP1 0000272b: SWAP2 0000272c: SUB 0000272d: SWAP1 0000272e: LOG3 0000272f: POP 00002730: SWAP4 00002731: SWAP3 00002732: POP 00002733: POP 00002734: POP 00002735: JUMP 00002736: JUMPDEST 00002737: PUSH1 0x00 00002739: DUP1 0000273a: PUSH1 0x00 0000273c: PUSH2 0x2744 0000273f: DUP7 00002740: PUSH2 0x09f8 00002743: JUMP 00002744: JUMPDEST 00002745: SWAP1 00002746: POP 00002747: PUSH1 0x00 00002749: DUP1 0000274a: PUSH2 0x2754 0000274d: DUP4 0000274e: DUP9 0000274f: DUP9 00002750: PUSH2 0x1bbd 00002753: JUMP 00002754: JUMPDEST 00002755: SWAP1 00002756: SWAP10 00002757: SWAP1 00002758: SWAP9 00002759: POP 0000275a: SWAP7 0000275b: POP 0000275c: POP 0000275d: POP 0000275e: POP 0000275f: POP 00002760: POP 00002761: POP 00002762: JUMP 00002763: JUMPDEST 00002764: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002779: DUP3 0000277a: AND 0000277b: PUSH1 0x00 0000277d: SWAP1 0000277e: DUP2 0000277f: MSTORE 00002780: PUSH1 0x03 00002782: PUSH1 0x20 00002784: MSTORE 00002785: PUSH1 0x40 00002787: DUP2 00002788: KECCAK256 00002789: DUP1 0000278a: SLOAD 0000278b: DUP4 0000278c: SWAP3 0000278d: SWAP1 0000278e: PUSH2 0x2798 00002791: SWAP1 00002792: DUP5 00002793: SWAP1 00002794: PUSH2 0x2f54 00002797: JUMP 00002798: JUMPDEST 00002799: SWAP1 0000279a: SWAP2 0000279b: SSTORE 0000279c: POP 0000279d: POP 0000279e: PUSH1 0x02 000027a0: DUP1 000027a1: SLOAD 000027a2: DUP3 000027a3: SWAP1 000027a4: SUB 000027a5: SWAP1 000027a6: SSTORE 000027a7: PUSH1 0x40 000027a9: MLOAD 000027aa: DUP2 000027ab: DUP2 000027ac: MSTORE 000027ad: PUSH1 0x00 000027af: SWAP1 000027b0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000027c5: DUP5 000027c6: AND 000027c7: SWAP1 000027c8: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 000027e9: SWAP1 000027ea: PUSH1 0x20 000027ec: ADD 000027ed: PUSH2 0x242a 000027f0: JUMP 000027f1: JUMPDEST 000027f2: PUSH1 0x00 000027f4: DUP1 000027f5: PUSH2 0x2710 000027f8: DUP4 000027f9: GT 000027fa: ISZERO 000027fb: PUSH2 0x2830 000027fe: JUMPI 000027ff: PUSH1 0x40 00002801: MLOAD 00002802: PUSH32 0xf08319c600000000000000000000000000000000000000000000000000000000 00002823: DUP2 00002824: MSTORE 00002825: PUSH1 0x04 00002827: ADD 00002828: PUSH1 0x40 0000282a: MLOAD 0000282b: DUP1 0000282c: SWAP2 0000282d: SUB 0000282e: SWAP1 0000282f: REVERT 00002830: JUMPDEST 00002831: PUSH2 0x283a 00002834: DUP5 00002835: DUP5 00002836: PUSH2 0x2a75 00002839: JUMP 0000283a: JUMPDEST 0000283b: SWAP4 0000283c: DUP5 0000283d: SWAP1 0000283e: SUB 0000283f: SWAP5 00002840: SWAP3 00002841: POP 00002842: POP 00002843: POP 00002844: JUMP 00002845: JUMPDEST 00002846: PUSH1 0x00 00002848: PUSH2 0x0a1e 0000284b: DUP4 0000284c: DUP4 0000284d: PUSH8 0x0de0b6b3a7640000 00002856: PUSH2 0x19c2 00002859: JUMP 0000285a: JUMPDEST 0000285b: PUSH1 0x00 0000285d: PUSH1 0x40 0000285f: MLOAD 00002860: PUSH32 0x095ea7b300000000000000000000000000000000000000000000000000000000 00002881: DUP2 00002882: MSTORE 00002883: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002898: DUP5 00002899: AND 0000289a: PUSH1 0x04 0000289c: DUP3 0000289d: ADD 0000289e: MSTORE 0000289f: DUP3 000028a0: PUSH1 0x24 000028a2: DUP3 000028a3: ADD 000028a4: MSTORE 000028a5: PUSH1 0x00 000028a7: DUP1 000028a8: PUSH1 0x44 000028aa: DUP4 000028ab: PUSH1 0x00 000028ad: DUP10 000028ae: GAS 000028af: CALL 000028b0: SWAP2 000028b1: POP 000028b2: POP 000028b3: PUSH2 0x28bb 000028b6: DUP2 000028b7: PUSH2 0x2a2e 000028ba: JUMP 000028bb: JUMPDEST 000028bc: PUSH2 0x2628 000028bf: JUMPI 000028c0: PUSH1 0x40 000028c2: MLOAD 000028c3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000028e4: DUP2 000028e5: MSTORE 000028e6: PUSH1 0x20 000028e8: PUSH1 0x04 000028ea: DUP3 000028eb: ADD 000028ec: MSTORE 000028ed: PUSH1 0x0e 000028ef: PUSH1 0x24 000028f1: DUP3 000028f2: ADD 000028f3: MSTORE 000028f4: PUSH32 0x415050524f56455f4641494c4544000000000000000000000000000000000000 00002915: PUSH1 0x44 00002917: DUP3 00002918: ADD 00002919: MSTORE 0000291a: PUSH1 0x64 0000291c: ADD 0000291d: PUSH2 0x10a2 00002920: JUMP 00002921: JUMPDEST 00002922: PUSH1 0x00 00002924: PUSH1 0x40 00002926: MLOAD 00002927: PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000 00002948: DUP2 00002949: MSTORE 0000294a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000295f: DUP6 00002960: AND 00002961: PUSH1 0x04 00002963: DUP3 00002964: ADD 00002965: MSTORE 00002966: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000297b: DUP5 0000297c: AND 0000297d: PUSH1 0x24 0000297f: DUP3 00002980: ADD 00002981: MSTORE 00002982: DUP3 00002983: PUSH1 0x44 00002985: DUP3 00002986: ADD 00002987: MSTORE 00002988: PUSH1 0x00 0000298a: DUP1 0000298b: PUSH1 0x64 0000298d: DUP4 0000298e: PUSH1 0x00 00002990: DUP11 00002991: GAS 00002992: CALL 00002993: SWAP2 00002994: POP 00002995: POP 00002996: PUSH2 0x299e 00002999: DUP2 0000299a: PUSH2 0x2a2e 0000299d: JUMP 0000299e: JUMPDEST 0000299f: PUSH2 0x2a04 000029a2: JUMPI 000029a3: PUSH1 0x40 000029a5: MLOAD 000029a6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000029c7: DUP2 000029c8: MSTORE 000029c9: PUSH1 0x20 000029cb: PUSH1 0x04 000029cd: DUP3 000029ce: ADD 000029cf: MSTORE 000029d0: PUSH1 0x14 000029d2: PUSH1 0x24 000029d4: DUP3 000029d5: ADD 000029d6: MSTORE 000029d7: PUSH32 0x5452414e534645525f46524f4d5f4641494c4544000000000000000000000000 000029f8: PUSH1 0x44 000029fa: DUP3 000029fb: ADD 000029fc: MSTORE 000029fd: PUSH1 0x64 000029ff: ADD 00002a00: PUSH2 0x10a2 00002a03: JUMP 00002a04: JUMPDEST 00002a05: POP 00002a06: POP 00002a07: POP 00002a08: POP 00002a09: POP 00002a0a: JUMP 00002a0b: JUMPDEST 00002a0c: PUSH1 0x02 00002a0e: SLOAD 00002a0f: PUSH1 0x00 00002a11: SWAP1 00002a12: DUP1 00002a13: ISZERO 00002a14: PUSH2 0x0a1c 00002a17: JUMPI 00002a18: PUSH2 0x0a17 00002a1b: DUP2 00002a1c: DUP5 00002a1d: PUSH2 0x2a24 00002a20: PUSH2 0x0958 00002a23: JUMP 00002a24: JUMPDEST 00002a25: PUSH2 0x14f3 00002a28: SWAP2 00002a29: SWAP1 00002a2a: PUSH2 0x2f54 00002a2d: JUMP 00002a2e: JUMPDEST 00002a2f: PUSH1 0x00 00002a31: RETURNDATASIZE 00002a32: DUP3 00002a33: PUSH2 0x2a40 00002a36: JUMPI 00002a37: DUP1 00002a38: PUSH1 0x00 00002a3a: DUP1 00002a3b: RETURNDATACOPY 00002a3c: DUP1 00002a3d: PUSH1 0x00 00002a3f: REVERT 00002a40: JUMPDEST 00002a41: DUP1 00002a42: PUSH1 0x20 00002a44: DUP2 00002a45: EQ 00002a46: PUSH2 0x2a58 00002a49: JUMPI 00002a4a: DUP1 00002a4b: ISZERO 00002a4c: PUSH2 0x2a69 00002a4f: JUMPI 00002a50: PUSH1 0x00 00002a52: SWAP3 00002a53: POP 00002a54: PUSH2 0x2a6e 00002a57: JUMP 00002a58: JUMPDEST 00002a59: DUP2 00002a5a: PUSH1 0x00 00002a5c: DUP1 00002a5d: RETURNDATACOPY 00002a5e: PUSH1 0x00 00002a60: MLOAD 00002a61: ISZERO 00002a62: ISZERO 00002a63: SWAP3 00002a64: POP 00002a65: PUSH2 0x2a6e 00002a68: JUMP 00002a69: JUMPDEST 00002a6a: PUSH1 0x01 00002a6c: SWAP3 00002a6d: POP 00002a6e: JUMPDEST 00002a6f: POP 00002a70: POP 00002a71: SWAP2 00002a72: SWAP1 00002a73: POP 00002a74: JUMP 00002a75: JUMPDEST 00002a76: PUSH1 0x00 00002a78: PUSH2 0x2a81 00002a7b: DUP3 00002a7c: DUP5 00002a7d: PUSH2 0x30c0 00002a80: JUMP 00002a81: JUMPDEST 00002a82: PUSH2 0x2710 00002a85: SWAP1 00002a86: DIV 00002a87: SWAP4 00002a88: SWAP3 00002a89: POP 00002a8a: POP 00002a8b: POP 00002a8c: JUMP 00002a8d: JUMPDEST 00002a8e: PUSH1 0x00 00002a90: JUMPDEST 00002a91: DUP4 00002a92: DUP2 00002a93: LT 00002a94: ISZERO 00002a95: PUSH2 0x2aa8 00002a98: JUMPI 00002a99: DUP2 00002a9a: DUP2 00002a9b: ADD 00002a9c: MLOAD 00002a9d: DUP4 00002a9e: DUP3 00002a9f: ADD 00002aa0: MSTORE 00002aa1: PUSH1 0x20 00002aa3: ADD 00002aa4: PUSH2 0x2a90 00002aa7: JUMP 00002aa8: JUMPDEST 00002aa9: DUP4 00002aaa: DUP2 00002aab: GT 00002aac: ISZERO 00002aad: PUSH2 0x2628 00002ab0: JUMPI 00002ab1: POP 00002ab2: POP 00002ab3: PUSH1 0x00 00002ab5: SWAP2 00002ab6: ADD 00002ab7: MSTORE 00002ab8: JUMP 00002ab9: JUMPDEST 00002aba: PUSH1 0x00 00002abc: DUP2 00002abd: MLOAD 00002abe: DUP1 00002abf: DUP5 00002ac0: MSTORE 00002ac1: PUSH2 0x2ad1 00002ac4: DUP2 00002ac5: PUSH1 0x20 00002ac7: DUP7 00002ac8: ADD 00002ac9: PUSH1 0x20 00002acb: DUP7 00002acc: ADD 00002acd: PUSH2 0x2a8d 00002ad0: JUMP 00002ad1: JUMPDEST 00002ad2: PUSH1 0x1f 00002ad4: ADD 00002ad5: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00002af6: AND 00002af7: SWAP3 00002af8: SWAP1 00002af9: SWAP3 00002afa: ADD 00002afb: PUSH1 0x20 00002afd: ADD 00002afe: SWAP3 00002aff: SWAP2 00002b00: POP 00002b01: POP 00002b02: JUMP 00002b03: JUMPDEST 00002b04: PUSH1 0x20 00002b06: DUP2 00002b07: MSTORE 00002b08: PUSH1 0x00 00002b0a: PUSH2 0x0a1e 00002b0d: PUSH1 0x20 00002b0f: DUP4 00002b10: ADD 00002b11: DUP5 00002b12: PUSH2 0x2ab9 00002b15: JUMP 00002b16: JUMPDEST 00002b17: PUSH1 0x00 00002b19: PUSH1 0x20 00002b1b: DUP3 00002b1c: DUP5 00002b1d: SUB 00002b1e: SLT 00002b1f: ISZERO 00002b20: PUSH2 0x2b28 00002b23: JUMPI 00002b24: PUSH1 0x00 00002b26: DUP1 00002b27: REVERT 00002b28: JUMPDEST 00002b29: POP 00002b2a: CALLDATALOAD 00002b2b: SWAP2 00002b2c: SWAP1 00002b2d: POP 00002b2e: JUMP 00002b2f: JUMPDEST 00002b30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002b45: DUP2 00002b46: AND 00002b47: DUP2 00002b48: EQ 00002b49: PUSH2 0x2b51 00002b4c: JUMPI 00002b4d: PUSH1 0x00 00002b4f: DUP1 00002b50: REVERT 00002b51: JUMPDEST 00002b52: POP 00002b53: JUMP 00002b54: JUMPDEST 00002b55: PUSH1 0x00 00002b57: DUP1 00002b58: PUSH1 0x40 00002b5a: DUP4 00002b5b: DUP6 00002b5c: SUB 00002b5d: SLT 00002b5e: ISZERO 00002b5f: PUSH2 0x2b67 00002b62: JUMPI 00002b63: PUSH1 0x00 00002b65: DUP1 00002b66: REVERT 00002b67: JUMPDEST 00002b68: DUP3 00002b69: CALLDATALOAD 00002b6a: PUSH2 0x2b72 00002b6d: DUP2 00002b6e: PUSH2 0x2b2f 00002b71: JUMP 00002b72: JUMPDEST 00002b73: SWAP5 00002b74: PUSH1 0x20 00002b76: SWAP4 00002b77: SWAP1 00002b78: SWAP4 00002b79: ADD 00002b7a: CALLDATALOAD 00002b7b: SWAP4 00002b7c: POP 00002b7d: POP 00002b7e: POP 00002b7f: JUMP 00002b80: JUMPDEST 00002b81: PUSH1 0x00 00002b83: DUP1 00002b84: DUP4 00002b85: PUSH1 0x1f 00002b87: DUP5 00002b88: ADD 00002b89: SLT 00002b8a: PUSH2 0x2b92 00002b8d: JUMPI 00002b8e: PUSH1 0x00 00002b90: DUP1 00002b91: REVERT 00002b92: JUMPDEST 00002b93: POP 00002b94: DUP2 00002b95: CALLDATALOAD 00002b96: PUSH8 0xffffffffffffffff 00002b9f: DUP2 00002ba0: GT 00002ba1: ISZERO 00002ba2: PUSH2 0x2baa 00002ba5: JUMPI 00002ba6: PUSH1 0x00 00002ba8: DUP1 00002ba9: REVERT 00002baa: JUMPDEST 00002bab: PUSH1 0x20 00002bad: DUP4 00002bae: ADD 00002baf: SWAP2 00002bb0: POP 00002bb1: DUP4 00002bb2: PUSH1 0x20 00002bb4: DUP3 00002bb5: DUP6 00002bb6: ADD 00002bb7: ADD 00002bb8: GT 00002bb9: ISZERO 00002bba: PUSH2 0x2bc2 00002bbd: JUMPI 00002bbe: PUSH1 0x00 00002bc0: DUP1 00002bc1: REVERT 00002bc2: JUMPDEST 00002bc3: SWAP3 00002bc4: POP 00002bc5: SWAP3 00002bc6: SWAP1 00002bc7: POP 00002bc8: JUMP 00002bc9: JUMPDEST 00002bca: PUSH1 0x00 00002bcc: DUP1 00002bcd: PUSH1 0x20 00002bcf: DUP4 00002bd0: DUP6 00002bd1: SUB 00002bd2: SLT 00002bd3: ISZERO 00002bd4: PUSH2 0x2bdc 00002bd7: JUMPI 00002bd8: PUSH1 0x00 00002bda: DUP1 00002bdb: REVERT 00002bdc: JUMPDEST 00002bdd: DUP3 00002bde: CALLDATALOAD 00002bdf: PUSH8 0xffffffffffffffff 00002be8: DUP2 00002be9: GT 00002bea: ISZERO 00002beb: PUSH2 0x2bf3 00002bee: JUMPI 00002bef: PUSH1 0x00 00002bf1: DUP1 00002bf2: REVERT 00002bf3: JUMPDEST 00002bf4: PUSH2 0x2bff 00002bf7: DUP6 00002bf8: DUP3 00002bf9: DUP7 00002bfa: ADD 00002bfb: PUSH2 0x2b80 00002bfe: JUMP 00002bff: JUMPDEST 00002c00: SWAP1 00002c01: SWAP7 00002c02: SWAP1 00002c03: SWAP6 00002c04: POP 00002c05: SWAP4 00002c06: POP 00002c07: POP 00002c08: POP 00002c09: POP 00002c0a: JUMP 00002c0b: JUMPDEST 00002c0c: PUSH1 0x00 00002c0e: DUP1 00002c0f: PUSH1 0x00 00002c11: PUSH1 0x60 00002c13: DUP5 00002c14: DUP7 00002c15: SUB 00002c16: SLT 00002c17: ISZERO 00002c18: PUSH2 0x2c20 00002c1b: JUMPI 00002c1c: PUSH1 0x00 00002c1e: DUP1 00002c1f: REVERT 00002c20: JUMPDEST 00002c21: DUP4 00002c22: CALLDATALOAD 00002c23: PUSH2 0x2c2b 00002c26: DUP2 00002c27: PUSH2 0x2b2f 00002c2a: JUMP 00002c2b: JUMPDEST 00002c2c: SWAP3 00002c2d: POP 00002c2e: PUSH1 0x20 00002c30: DUP5 00002c31: ADD 00002c32: CALLDATALOAD 00002c33: PUSH2 0x2c3b 00002c36: DUP2 00002c37: PUSH2 0x2b2f 00002c3a: JUMP 00002c3b: JUMPDEST 00002c3c: SWAP3 00002c3d: SWAP6 00002c3e: SWAP3 00002c3f: SWAP5 00002c40: POP 00002c41: POP 00002c42: POP 00002c43: PUSH1 0x40 00002c45: SWAP2 00002c46: SWAP1 00002c47: SWAP2 00002c48: ADD 00002c49: CALLDATALOAD 00002c4a: SWAP1 00002c4b: JUMP 00002c4c: JUMPDEST 00002c4d: PUSH1 0x00 00002c4f: DUP1 00002c50: PUSH1 0x40 00002c52: DUP4 00002c53: DUP6 00002c54: SUB 00002c55: SLT 00002c56: ISZERO 00002c57: PUSH2 0x2c5f 00002c5a: JUMPI 00002c5b: PUSH1 0x00 00002c5d: DUP1 00002c5e: REVERT 00002c5f: JUMPDEST 00002c60: POP 00002c61: POP 00002c62: DUP1 00002c63: CALLDATALOAD 00002c64: SWAP3 00002c65: PUSH1 0x20 00002c67: SWAP1 00002c68: SWAP2 00002c69: ADD 00002c6a: CALLDATALOAD 00002c6b: SWAP2 00002c6c: POP 00002c6d: JUMP 00002c6e: JUMPDEST 00002c6f: PUSH1 0x00 00002c71: DUP1 00002c72: PUSH1 0x00 00002c74: PUSH1 0x40 00002c76: DUP5 00002c77: DUP7 00002c78: SUB 00002c79: SLT 00002c7a: ISZERO 00002c7b: PUSH2 0x2c83 00002c7e: JUMPI 00002c7f: PUSH1 0x00 00002c81: DUP1 00002c82: REVERT 00002c83: JUMPDEST 00002c84: DUP4 00002c85: CALLDATALOAD 00002c86: SWAP3 00002c87: POP 00002c88: PUSH1 0x20 00002c8a: DUP5 00002c8b: ADD 00002c8c: CALLDATALOAD 00002c8d: PUSH8 0xffffffffffffffff 00002c96: DUP2 00002c97: GT 00002c98: ISZERO 00002c99: PUSH2 0x2ca1 00002c9c: JUMPI 00002c9d: PUSH1 0x00 00002c9f: DUP1 00002ca0: REVERT 00002ca1: JUMPDEST 00002ca2: PUSH2 0x2cad 00002ca5: DUP7 00002ca6: DUP3 00002ca7: DUP8 00002ca8: ADD 00002ca9: PUSH2 0x2b80 00002cac: JUMP 00002cad: JUMPDEST 00002cae: SWAP5 00002caf: SWAP8 00002cb0: SWAP1 00002cb1: SWAP7 00002cb2: POP 00002cb3: SWAP4 00002cb4: SWAP5 00002cb5: POP 00002cb6: POP 00002cb7: POP 00002cb8: POP 00002cb9: JUMP 00002cba: JUMPDEST 00002cbb: PUSH1 0x00 00002cbd: PUSH1 0x20 00002cbf: DUP3 00002cc0: DUP5 00002cc1: SUB 00002cc2: SLT 00002cc3: ISZERO 00002cc4: PUSH2 0x2ccc 00002cc7: JUMPI 00002cc8: PUSH1 0x00 00002cca: DUP1 00002ccb: REVERT 00002ccc: JUMPDEST 00002ccd: DUP2 00002cce: CALLDATALOAD 00002ccf: PUSH2 0x0a1e 00002cd2: DUP2 00002cd3: PUSH2 0x2b2f 00002cd6: JUMP 00002cd7: JUMPDEST 00002cd8: PUSH1 0x00 00002cda: DUP1 00002cdb: PUSH1 0x00 00002cdd: DUP1 00002cde: PUSH1 0x00 00002ce0: DUP1 00002ce1: PUSH1 0x00 00002ce3: PUSH1 0xe0 00002ce5: DUP9 00002ce6: DUP11 00002ce7: SUB 00002ce8: SLT 00002ce9: ISZERO 00002cea: PUSH2 0x2cf2 00002ced: JUMPI 00002cee: PUSH1 0x00 00002cf0: DUP1 00002cf1: REVERT 00002cf2: JUMPDEST 00002cf3: DUP8 00002cf4: CALLDATALOAD 00002cf5: PUSH2 0x2cfd 00002cf8: DUP2 00002cf9: PUSH2 0x2b2f 00002cfc: JUMP 00002cfd: JUMPDEST 00002cfe: SWAP7 00002cff: POP 00002d00: PUSH1 0x20 00002d02: DUP9 00002d03: ADD 00002d04: CALLDATALOAD 00002d05: PUSH2 0x2d0d 00002d08: DUP2 00002d09: PUSH2 0x2b2f 00002d0c: JUMP 00002d0d: JUMPDEST 00002d0e: SWAP6 00002d0f: POP 00002d10: PUSH1 0x40 00002d12: DUP9 00002d13: ADD 00002d14: CALLDATALOAD 00002d15: SWAP5 00002d16: POP 00002d17: PUSH1 0x60 00002d19: DUP9 00002d1a: ADD 00002d1b: CALLDATALOAD 00002d1c: SWAP4 00002d1d: POP 00002d1e: PUSH1 0x80 00002d20: DUP9 00002d21: ADD 00002d22: CALLDATALOAD 00002d23: PUSH1 0xff 00002d25: DUP2 00002d26: AND 00002d27: DUP2 00002d28: EQ 00002d29: PUSH2 0x2d31 00002d2c: JUMPI 00002d2d: PUSH1 0x00 00002d2f: DUP1 00002d30: REVERT 00002d31: JUMPDEST 00002d32: SWAP7 00002d33: SWAP10 00002d34: SWAP6 00002d35: SWAP9 00002d36: POP 00002d37: SWAP4 00002d38: SWAP7 00002d39: SWAP3 00002d3a: SWAP6 00002d3b: SWAP5 00002d3c: PUSH1 0xa0 00002d3e: DUP5 00002d3f: ADD 00002d40: CALLDATALOAD 00002d41: SWAP5 00002d42: POP 00002d43: PUSH1 0xc0 00002d45: SWAP1 00002d46: SWAP4 00002d47: ADD 00002d48: CALLDATALOAD 00002d49: SWAP3 00002d4a: SWAP2 00002d4b: POP 00002d4c: POP 00002d4d: JUMP 00002d4e: JUMPDEST 00002d4f: PUSH1 0x00 00002d51: DUP1 00002d52: PUSH1 0x40 00002d54: DUP4 00002d55: DUP6 00002d56: SUB 00002d57: SLT 00002d58: ISZERO 00002d59: PUSH2 0x2d61 00002d5c: JUMPI 00002d5d: PUSH1 0x00 00002d5f: DUP1 00002d60: REVERT 00002d61: JUMPDEST 00002d62: DUP3 00002d63: CALLDATALOAD 00002d64: PUSH2 0x2d6c 00002d67: DUP2 00002d68: PUSH2 0x2b2f 00002d6b: JUMP 00002d6c: JUMPDEST 00002d6d: SWAP2 00002d6e: POP 00002d6f: PUSH1 0x20 00002d71: DUP4 00002d72: ADD 00002d73: CALLDATALOAD 00002d74: PUSH2 0x2d7c 00002d77: DUP2 00002d78: PUSH2 0x2b2f 00002d7b: JUMP 00002d7c: JUMPDEST 00002d7d: DUP1 00002d7e: SWAP2 00002d7f: POP 00002d80: POP 00002d81: SWAP3 00002d82: POP 00002d83: SWAP3 00002d84: SWAP1 00002d85: POP 00002d86: JUMP 00002d87: JUMPDEST 00002d88: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00002da9: PUSH1 0x00 00002dab: MSTORE 00002dac: PUSH1 0x41 00002dae: PUSH1 0x04 00002db0: MSTORE 00002db1: PUSH1 0x24 00002db3: PUSH1 0x00 00002db5: REVERT 00002db6: JUMPDEST 00002db7: PUSH1 0x00 00002db9: DUP1 00002dba: PUSH1 0x00 00002dbc: PUSH1 0x60 00002dbe: DUP5 00002dbf: DUP7 00002dc0: SUB 00002dc1: SLT 00002dc2: ISZERO 00002dc3: PUSH2 0x2dcb 00002dc6: JUMPI 00002dc7: PUSH1 0x00 00002dc9: DUP1 00002dca: REVERT 00002dcb: JUMPDEST 00002dcc: DUP4 00002dcd: CALLDATALOAD 00002dce: PUSH2 0x2dd6 00002dd1: DUP2 00002dd2: PUSH2 0x2b2f 00002dd5: JUMP 00002dd6: JUMPDEST 00002dd7: SWAP3 00002dd8: POP 00002dd9: PUSH1 0x20 00002ddb: DUP5 00002ddc: ADD 00002ddd: CALLDATALOAD 00002dde: SWAP2 00002ddf: POP 00002de0: PUSH1 0x40 00002de2: DUP5 00002de3: ADD 00002de4: CALLDATALOAD 00002de5: PUSH8 0xffffffffffffffff 00002dee: DUP1 00002def: DUP3 00002df0: GT 00002df1: ISZERO 00002df2: PUSH2 0x2dfa 00002df5: JUMPI 00002df6: PUSH1 0x00 00002df8: DUP1 00002df9: REVERT 00002dfa: JUMPDEST 00002dfb: DUP2 00002dfc: DUP7 00002dfd: ADD 00002dfe: SWAP2 00002dff: POP 00002e00: DUP7 00002e01: PUSH1 0x1f 00002e03: DUP4 00002e04: ADD 00002e05: SLT 00002e06: PUSH2 0x2e0e 00002e09: JUMPI 00002e0a: PUSH1 0x00 00002e0c: DUP1 00002e0d: REVERT 00002e0e: JUMPDEST 00002e0f: DUP2 00002e10: CALLDATALOAD 00002e11: DUP2 00002e12: DUP2 00002e13: GT 00002e14: ISZERO 00002e15: PUSH2 0x2e20 00002e18: JUMPI 00002e19: PUSH2 0x2e20 00002e1c: PUSH2 0x2d87 00002e1f: JUMP 00002e20: JUMPDEST 00002e21: PUSH1 0x40 00002e23: MLOAD 00002e24: PUSH1 0x1f 00002e26: DUP3 00002e27: ADD 00002e28: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00002e49: SWAP1 00002e4a: DUP2 00002e4b: AND 00002e4c: PUSH1 0x3f 00002e4e: ADD 00002e4f: AND 00002e50: DUP2 00002e51: ADD 00002e52: SWAP1 00002e53: DUP4 00002e54: DUP3 00002e55: GT 00002e56: DUP2 00002e57: DUP4 00002e58: LT 00002e59: OR 00002e5a: ISZERO 00002e5b: PUSH2 0x2e66 00002e5e: JUMPI 00002e5f: PUSH2 0x2e66 00002e62: PUSH2 0x2d87 00002e65: JUMP 00002e66: JUMPDEST 00002e67: DUP2 00002e68: PUSH1 0x40 00002e6a: MSTORE 00002e6b: DUP3 00002e6c: DUP2 00002e6d: MSTORE 00002e6e: DUP10 00002e6f: PUSH1 0x20 00002e71: DUP5 00002e72: DUP8 00002e73: ADD 00002e74: ADD 00002e75: GT 00002e76: ISZERO 00002e77: PUSH2 0x2e7f 00002e7a: JUMPI 00002e7b: PUSH1 0x00 00002e7d: DUP1 00002e7e: REVERT 00002e7f: JUMPDEST 00002e80: DUP3 00002e81: PUSH1 0x20 00002e83: DUP7 00002e84: ADD 00002e85: PUSH1 0x20 00002e87: DUP4 00002e88: ADD 00002e89: CALLDATACOPY 00002e8a: PUSH1 0x00 00002e8c: PUSH1 0x20 00002e8e: DUP5 00002e8f: DUP4 00002e90: ADD 00002e91: ADD 00002e92: MSTORE 00002e93: DUP1 00002e94: SWAP6 00002e95: POP 00002e96: POP 00002e97: POP 00002e98: POP 00002e99: POP 00002e9a: POP 00002e9b: SWAP3 00002e9c: POP 00002e9d: SWAP3 00002e9e: POP 00002e9f: SWAP3 00002ea0: JUMP 00002ea1: JUMPDEST 00002ea2: PUSH1 0x01 00002ea4: DUP2 00002ea5: DUP2 00002ea6: SHR 00002ea7: SWAP1 00002ea8: DUP3 00002ea9: AND 00002eaa: DUP1 00002eab: PUSH2 0x2eb5 00002eae: JUMPI 00002eaf: PUSH1 0x7f 00002eb1: DUP3 00002eb2: AND 00002eb3: SWAP2 00002eb4: POP 00002eb5: JUMPDEST 00002eb6: PUSH1 0x20 00002eb8: DUP3 00002eb9: LT 00002eba: DUP2 00002ebb: SUB 00002ebc: PUSH2 0x2eee 00002ebf: JUMPI 00002ec0: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00002ee1: PUSH1 0x00 00002ee3: MSTORE 00002ee4: PUSH1 0x22 00002ee6: PUSH1 0x04 00002ee8: MSTORE 00002ee9: PUSH1 0x24 00002eeb: PUSH1 0x00 00002eed: REVERT 00002eee: JUMPDEST 00002eef: POP 00002ef0: SWAP2 00002ef1: SWAP1 00002ef2: POP 00002ef3: JUMP 00002ef4: JUMPDEST 00002ef5: PUSH1 0x00 00002ef7: PUSH1 0x20 00002ef9: DUP3 00002efa: DUP5 00002efb: SUB 00002efc: SLT 00002efd: ISZERO 00002efe: PUSH2 0x2f06 00002f01: JUMPI 00002f02: PUSH1 0x00 00002f04: DUP1 00002f05: REVERT 00002f06: JUMPDEST 00002f07: POP 00002f08: MLOAD 00002f09: SWAP2 00002f0a: SWAP1 00002f0b: POP 00002f0c: JUMP 00002f0d: JUMPDEST 00002f0e: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00002f2f: PUSH1 0x00 00002f31: MSTORE 00002f32: PUSH1 0x11 00002f34: PUSH1 0x04 00002f36: MSTORE 00002f37: PUSH1 0x24 00002f39: PUSH1 0x00 00002f3b: REVERT 00002f3c: JUMPDEST 00002f3d: PUSH1 0x00 00002f3f: DUP3 00002f40: NOT 00002f41: DUP3 00002f42: GT 00002f43: ISZERO 00002f44: PUSH2 0x2f4f 00002f47: JUMPI 00002f48: PUSH2 0x2f4f 00002f4b: PUSH2 0x2f0d 00002f4e: JUMP 00002f4f: JUMPDEST 00002f50: POP 00002f51: ADD 00002f52: SWAP1 00002f53: JUMP 00002f54: JUMPDEST 00002f55: PUSH1 0x00 00002f57: DUP3 00002f58: DUP3 00002f59: LT 00002f5a: ISZERO 00002f5b: PUSH2 0x2f66 00002f5e: JUMPI 00002f5f: PUSH2 0x2f66 00002f62: PUSH2 0x2f0d 00002f65: JUMP 00002f66: JUMPDEST 00002f67: POP 00002f68: SUB 00002f69: SWAP1 00002f6a: JUMP 00002f6b: JUMPDEST 00002f6c: PUSH1 0x00 00002f6e: DUP3 00002f6f: MLOAD 00002f70: PUSH2 0x2f7d 00002f73: DUP2 00002f74: DUP5 00002f75: PUSH1 0x20 00002f77: DUP8 00002f78: ADD 00002f79: PUSH2 0x2a8d 00002f7c: JUMP 00002f7d: JUMPDEST 00002f7e: SWAP2 00002f7f: SWAP1 00002f80: SWAP2 00002f81: ADD 00002f82: SWAP3 00002f83: SWAP2 00002f84: POP 00002f85: POP 00002f86: JUMP 00002f87: JUMPDEST 00002f88: PUSH1 0x00 00002f8a: PUSH1 0x20 00002f8c: DUP3 00002f8d: DUP5 00002f8e: SUB 00002f8f: SLT 00002f90: ISZERO 00002f91: PUSH2 0x2f99 00002f94: JUMPI 00002f95: PUSH1 0x00 00002f97: DUP1 00002f98: REVERT 00002f99: JUMPDEST 00002f9a: DUP2 00002f9b: MLOAD 00002f9c: DUP1 00002f9d: ISZERO 00002f9e: ISZERO 00002f9f: DUP2 00002fa0: EQ 00002fa1: PUSH2 0x0a1e 00002fa4: JUMPI 00002fa5: PUSH1 0x00 00002fa7: DUP1 00002fa8: REVERT 00002fa9: JUMPDEST 00002faa: PUSH1 0x00 00002fac: PUSH1 0x20 00002fae: DUP3 00002faf: DUP5 00002fb0: SUB 00002fb1: SLT 00002fb2: ISZERO 00002fb3: PUSH2 0x2fbb 00002fb6: JUMPI 00002fb7: PUSH1 0x00 00002fb9: DUP1 00002fba: REVERT 00002fbb: JUMPDEST 00002fbc: DUP2 00002fbd: MLOAD 00002fbe: PUSH2 0x0a1e 00002fc1: DUP2 00002fc2: PUSH2 0x2b2f 00002fc5: JUMP 00002fc6: JUMPDEST 00002fc7: PUSH1 0x00 00002fc9: DUP1 00002fca: DUP6 00002fcb: DUP6 00002fcc: GT 00002fcd: ISZERO 00002fce: PUSH2 0x2fd6 00002fd1: JUMPI 00002fd2: PUSH1 0x00 00002fd4: DUP1 00002fd5: REVERT 00002fd6: JUMPDEST 00002fd7: DUP4 00002fd8: DUP7 00002fd9: GT 00002fda: ISZERO 00002fdb: PUSH2 0x2fe3 00002fde: JUMPI 00002fdf: PUSH1 0x00 00002fe1: DUP1 00002fe2: REVERT 00002fe3: JUMPDEST 00002fe4: POP 00002fe5: POP 00002fe6: DUP3 00002fe7: ADD 00002fe8: SWAP4 00002fe9: SWAP2 00002fea: SWAP1 00002feb: SWAP3 00002fec: SUB 00002fed: SWAP2 00002fee: POP 00002fef: JUMP 00002ff0: JUMPDEST 00002ff1: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 00003012: DUP2 00003013: CALLDATALOAD 00003014: DUP2 00003015: DUP2 00003016: AND 00003017: SWAP2 00003018: PUSH1 0x14 0000301a: DUP6 0000301b: LT 0000301c: ISZERO 0000301d: PUSH2 0x3030 00003020: JUMPI 00003021: DUP1 00003022: DUP2 00003023: DUP7 00003024: PUSH1 0x14 00003026: SUB 00003027: PUSH1 0x03 00003029: SHL 0000302a: SHL 0000302b: DUP4 0000302c: AND 0000302d: AND 0000302e: SWAP3 0000302f: POP 00003030: JUMPDEST 00003031: POP 00003032: POP 00003033: SWAP3 00003034: SWAP2 00003035: POP 00003036: POP 00003037: JUMP 00003038: JUMPDEST 00003039: PUSH1 0x00 0000303b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00003050: DUP1 00003051: DUP10 00003052: AND 00003053: DUP4 00003054: MSTORE 00003055: DUP1 00003056: DUP9 00003057: AND 00003058: PUSH1 0x20 0000305a: DUP5 0000305b: ADD 0000305c: MSTORE 0000305d: DUP1 0000305e: DUP8 0000305f: AND 00003060: PUSH1 0x40 00003062: DUP5 00003063: ADD 00003064: MSTORE 00003065: POP 00003066: DUP5 00003067: PUSH1 0x60 00003069: DUP4 0000306a: ADD 0000306b: MSTORE 0000306c: PUSH1 0xa0 0000306e: PUSH1 0x80 00003070: DUP4 00003071: ADD 00003072: MSTORE 00003073: DUP3 00003074: PUSH1 0xa0 00003076: DUP4 00003077: ADD 00003078: MSTORE 00003079: DUP3 0000307a: DUP5 0000307b: PUSH1 0xc0 0000307d: DUP5 0000307e: ADD 0000307f: CALLDATACOPY 00003080: PUSH1 0x00 00003082: PUSH1 0xc0 00003084: DUP5 00003085: DUP5 00003086: ADD 00003087: ADD 00003088: MSTORE 00003089: PUSH1 0xc0 0000308b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 000030ac: PUSH1 0x1f 000030ae: DUP6 000030af: ADD 000030b0: AND 000030b1: DUP4 000030b2: ADD 000030b3: ADD 000030b4: SWAP1 000030b5: POP 000030b6: SWAP8 000030b7: SWAP7 000030b8: POP 000030b9: POP 000030ba: POP 000030bb: POP 000030bc: POP 000030bd: POP 000030be: POP 000030bf: JUMP 000030c0: JUMPDEST 000030c1: PUSH1 0x00 000030c3: DUP2 000030c4: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 000030e5: DIV 000030e6: DUP4 000030e7: GT 000030e8: DUP3 000030e9: ISZERO 000030ea: ISZERO 000030eb: AND 000030ec: ISZERO 000030ed: PUSH2 0x30f8 000030f0: JUMPI 000030f1: PUSH2 0x30f8 000030f4: PUSH2 0x2f0d 000030f7: JUMP 000030f8: JUMPDEST 000030f9: POP 000030fa: MUL 000030fb: SWAP1 000030fc: JUMP 000030fd: JUMPDEST 000030fe: PUSH1 0x00 00003100: DUP1 00003101: DUP4 00003102: SLOAD 00003103: DUP2 00003104: PUSH1 0x01 00003106: DUP3 00003107: DUP2 00003108: SHR 00003109: SWAP2 0000310a: POP 0000310b: DUP1 0000310c: DUP4 0000310d: AND 0000310e: DUP1 0000310f: PUSH2 0x3119 00003112: JUMPI 00003113: PUSH1 0x7f 00003115: DUP4 00003116: AND 00003117: SWAP3 00003118: POP 00003119: JUMPDEST 0000311a: PUSH1 0x20 0000311c: DUP1 0000311d: DUP5 0000311e: LT 0000311f: DUP3 00003120: SUB 00003121: PUSH2 0x3151 00003124: JUMPI 00003125: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00003146: DUP7 00003147: MSTORE 00003148: PUSH1 0x22 0000314a: PUSH1 0x04 0000314c: MSTORE 0000314d: PUSH1 0x24 0000314f: DUP7 00003150: REVERT 00003151: JUMPDEST 00003152: DUP2 00003153: DUP1 00003154: ISZERO 00003155: PUSH2 0x3165 00003158: JUMPI 00003159: PUSH1 0x01 0000315b: DUP2 0000315c: EQ 0000315d: PUSH2 0x3194 00003160: JUMPI 00003161: PUSH2 0x31c1 00003164: JUMP 00003165: JUMPDEST 00003166: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00003187: DUP7 00003188: AND 00003189: DUP10 0000318a: MSTORE 0000318b: DUP5 0000318c: DUP10 0000318d: ADD 0000318e: SWAP7 0000318f: POP 00003190: PUSH2 0x31c1 00003193: JUMP 00003194: JUMPDEST 00003195: PUSH1 0x00 00003197: DUP11 00003198: DUP2 00003199: MSTORE 0000319a: PUSH1 0x20 0000319c: SWAP1 0000319d: KECCAK256 0000319e: PUSH1 0x00 000031a0: JUMPDEST 000031a1: DUP7 000031a2: DUP2 000031a3: LT 000031a4: ISZERO 000031a5: PUSH2 0x31b9 000031a8: JUMPI 000031a9: DUP2 000031aa: SLOAD 000031ab: DUP12 000031ac: DUP3 000031ad: ADD 000031ae: MSTORE 000031af: SWAP1 000031b0: DUP6 000031b1: ADD 000031b2: SWAP1 000031b3: DUP4 000031b4: ADD 000031b5: PUSH2 0x31a0 000031b8: JUMP 000031b9: JUMPDEST 000031ba: POP 000031bb: POP 000031bc: DUP5 000031bd: DUP10 000031be: ADD 000031bf: SWAP7 000031c0: POP 000031c1: JUMPDEST 000031c2: POP 000031c3: SWAP5 000031c4: SWAP9 000031c5: SWAP8 000031c6: POP 000031c7: POP 000031c8: POP 000031c9: POP 000031ca: POP 000031cb: POP 000031cc: POP 000031cd: POP 000031ce: JUMP 000031cf: JUMPDEST 000031d0: PUSH1 0x00 000031d2: DUP3 000031d3: PUSH2 0x3205 000031d6: JUMPI 000031d7: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000031f8: PUSH1 0x00 000031fa: MSTORE 000031fb: PUSH1 0x12 000031fd: PUSH1 0x04 000031ff: MSTORE 00003200: PUSH1 0x24 00003202: PUSH1 0x00 00003204: REVERT 00003205: JUMPDEST 00003206: POP 00003207: DIV 00003208: SWAP1 00003209: JUMP 0000320a: INVALID 0000320b: LOG2 0000320c: PUSH5 0x6970667358 00003212: UNKNOWN(0x22) 00003213: SLT 00003214: KECCAK256 00003215: STATICCALL 00003216: KECCAK256 00003217: UNKNOWN(0xF7) 00003218: BLOBBASEFEE 00003219: UNKNOWN(0xBE) 0000321a: DUP8 0000321b: UNKNOWN(0xCA) 0000321c: DUP14 0000321d: UNKNOWN(0xDF) 0000321e: OR 0000321f: UNKNOWN(0xA8) 00003220: PUSH25 0xafa311510d37ea822582c7b0c73b89672f28e0f764736f6c63 0000323a: NUMBER 0000323b: STOP 0000323c: ADDMOD 0000323d: UNKNOWN(0x0D) 0000323e: STOP 0000323f: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x1427b98e28115c5f6a7cba929f1761cf863c8ed084aab262bcb4aa171c491f44
call_targets:
0xe521a0dc9f00c67979d875f0ef9f8080f322e3db
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x1427b98e28115c5f6a7cba929f1761cf863c8ed084aab262bcb4aa171c491f44",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe521a0dc9f00c67979d875f0ef9f8080f322e3db"
],
"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": "0xf06dfacb",
"selector": "0xf06dfacb",
"calldata_variants": [
"0xf06dfacb",
"0xf06dfacb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfef78497",
"selector": "0xfef78497",
"calldata_variants": [
"0xfef78497",
"0xfef784970000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xff5ac9a4",
"selector": "0xff5ac9a4",
"calldata_variants": [
"0xff5ac9a4",
"0xff5ac9a40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe37d15bf",
"selector": "0xe37d15bf",
"calldata_variants": [
"0xe37d15bf",
"0xe37d15bf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe77c646d",
"selector": "0xe77c646d",
"calldata_variants": [
"0xe77c646d",
"0xe77c646d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf029748d",
"selector": "0xf029748d",
"calldata_variants": [
"0xf029748d",
"0xf029748d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcbb94359",
"selector": "0xcbb94359",
"calldata_variants": [
"0xcbb94359",
"0xcbb943590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 6470,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7795,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 8977,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 6,
"guards_detected": [],
"untrusted_call_count": 6
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x1427b98e28115c5f6a7cba929f1761cf863c8ed084aab262bcb4aa171c491f44
call_targets:
0xe521a0dc9f00c67979d875f0ef9f8080f322e3db
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x1427b98e28115c5f6a7cba929f1761cf863c8ed084aab262bcb4aa171c491f44",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe521a0dc9f00c67979d875f0ef9f8080f322e3db"
],
"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": "0xf06dfacb",
"selector": "0xf06dfacb",
"calldata_variants": [
"0xf06dfacb",
"0xf06dfacb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfef78497",
"selector": "0xfef78497",
"calldata_variants": [
"0xfef78497",
"0xfef784970000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xff5ac9a4",
"selector": "0xff5ac9a4",
"calldata_variants": [
"0xff5ac9a4",
"0xff5ac9a40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe37d15bf",
"selector": "0xe37d15bf",
"calldata_variants": [
"0xe37d15bf",
"0xe37d15bf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe77c646d",
"selector": "0xe77c646d",
"calldata_variants": [
"0xe77c646d",
"0xe77c646d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf029748d",
"selector": "0xf029748d",
"calldata_variants": [
"0xf029748d",
"0xf029748d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcbb94359",
"selector": "0xcbb94359",
"calldata_variants": [
"0xcbb94359",
"0xcbb943590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 6470,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7795,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 8977,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 6,
"guards_detected": []
}
|
| 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": 15
}
|