21882865-9b4a-4420-b853-fc947442c2be
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 |
|---|---|---|---|---|
| 30352 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 74296 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 74297 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 74298 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 74299 | capability.graph | complete | 1 / 3 | 1 week ago |
| 74300 | detector.run | complete | 1 / 3 | 1 week ago |
| 74301 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:527134] OpenAI Codex v0.77.0 (research preview)
[codex:527134] --------
[codex:527134] workdir: /tmp/codex-multi-p9c5nhzv
[codex:527134] model: gpt-5.2-codex
[codex:527134] provider: openai
[codex:527134] approval: never
[codex:527134] sandbox: read-only
[codex:527134] reasoning effort: xhigh
[codex:527134] reasoning summaries: auto
[codex:527134] session id: 019b6634-cd66-7232-af49-c82e889e4331
[codex:527134] --------
[codex:527134] user
[codex:527134] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:527134] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:527134] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:527134]
[codex:527134] Scope rules:
[codex:527134] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:527134] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:527134]
[codex:527134] Output MUST be valid JSON matching the provided schema.
[codex:527134] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:527134] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:527134]
[codex:527134] Output constraints (IMPORTANT):
[codex:527134] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:527134] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:527134] mcp startup: no servers
[codex:527134]
[codex:527134] thinking
[codex:527134] **Preparing to read audit bundle**
[codex:527134] exec
[codex:527134] /bin/bash -lc ls in /tmp/codex-multi-p9c5nhzv succeeded in 5ms:
[codex:527134] AUDIT_BUNDLE.txt
[codex:527134] codex-output-schema.json
[codex:527134] contracts
[codex:527134] exec
[codex:527134] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-p9c5nhzv succeeded in 5ms:
[codex:527134] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:527134]
[codex:527134] ================================================================================
[codex:527134] FILE: contracts/Contract.sol
[codex:527134] ================================================================================
[codex:527134] // Dependency file: @openzeppelin/contracts/utils/SafeCast.sol
[codex:527134]
[codex:527134]
[codex:527134]
[codex:527134] // pragma solidity ^0.6.0;
[codex:527134]
[codex:527134]
[codex:527134] /**
[codex:527134] * @dev Wrappers over Solidity's uintXX/intXX casting operators with added overflow
[codex:527134] * checks.
[codex:527134] *
[codex:527134] * Downcasting from uint256/int256 in Solidity does not revert on overflow. This can
[codex:527134] * easily result in undesired exploitation or bugs, since developers usually
[codex:527134] * assume that overflows raise errors. `SafeCast` restores this intuition by
[codex:527134] * reverting the transaction when such an operation overflows.
[codex:527134]
[codex:527134] thinking
[codex:527134] **Planning audit bundle parsing**
[codex:527134] exec
[codex:527134] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-p9c5nhzv succeeded in 6ms:
[codex:527134] * _Available since v3.1._
[codex:527134] */
[codex:527134] function toInt8(int256 value) internal pure returns (int8) {
[codex:527134] require(value >= -2**7 && value < 2**7, "SafeCast: value doesn\'t fit in 8 bits");
[codex:527134] return int8(value);
[codex:527134] }
[codex:527134]
[codex:527134] /**
[codex:527134] * @dev Converts an unsigned uint256 into a signed int256.
[codex:527134] *
[codex:527134] * Requirements:
[codex:527134] *
[codex:527134] * - input must be less than or equal to maxInt256.
[codex:527134] */
[codex:527134] function toInt256(uint256 value) internal pure returns (int256) {
[codex:527134] require(value < 2**255, "SafeCast: value doesn't fit in an int256");
[codex:527134] return int256(value);
[codex:527134] }
[codex:527134] }
[codex:527134]
[codex:527134]
[codex:527134] thinking
[codex:527134] **Distinguishing first-party contracts from dependencies**
[codex:527134] exec
[codex:527134] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-p9c5nhzv succeeded in 6ms:
[codex:527134] 4:FILE: contracts/Contract.sol
[codex:527134]
[codex:527134] thinking
[codex:527134] **Inspecting contract file structure**
[codex:527134] exec
[codex:527134] /bin/bash -lc 'rg -n "contract|interface|library" AUDIT_BUNDLE.txt' in /tmp/codex-multi-p9c5nhzv succeeded in 6ms:
[codex:527134] 4:FILE: contracts/Contract.sol
[codex:527134] 6:// Dependency file: @openzeppelin/contracts/utils/SafeCast.sol
[codex:527134] 22: * Using this library instead of the unchecked operations eliminates an entire
[codex:527134] 28:library SafeCast {
[codex:527134] 220:// Dependency file: @openzeppelin/contracts/token/ERC20/IERC20.sol
[codex:527134] 229:interface IERC20 {
[codex:527134] 300:// Dependency file: @openzeppelin/contracts/GSN/Context.sol
[codex:527134] 314: * This contract is only required for intermediate, library-like contracts.
[codex:527134] 316:abstract contract Context {
[codex:527134] 327:// Dependency file: contracts/lib/AddressArrayUtils.sol
[codex:527134] 355:library AddressArrayUtils {
[codex:527134] 445:// Dependency file: contracts/lib/PreciseUnitMath.sol
[codex:527134] 468:// import { SafeMath } from "@openzeppelin/contracts/math/SafeMath.sol";
[codex:527134] 469:// import { SignedSafeMath } from "@openzeppelin/contracts/math/SignedSafeMath.sol";
[codex:527134] 477: * dYdX's BaseMath library.
[codex:527134] 479:library PreciseUnitMath {
[codex:527134] 610:// Dependency file: contracts/protocol/lib/Position.sol
[codex:527134] 633:// import { SafeCast } from "@openzeppelin/contracts/utils/SafeCast.sol";
[codex:527134] 634:// import { SafeMath } from "@openzeppelin/contracts/math/SafeMath.sol";
[codex:527134] 635:// import { SignedSafeMath } from "@openzeppelin/contracts/math/SignedSafeMath.sol";
[codex:527134]
[codex:527134] thinking
[codex:527134] **Extracting SetToken contract code**
[codex:527134] exec
[codex:527134] /bin/bash -lc "sed -n '1680,2100p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-p9c5nhzv succeeded in 5ms:
[codex:527134] * - `target` must be a contract.
[codex:527134] * - calling `target` with `data` must not revert.
[codex:527134] *
[codex:527134] * _Available since v3.1._
[codex:527134] */
[codex:527134] function functionCall(address target, bytes memory data) internal returns (bytes memory) {
[codex:527134] return functionCall(target, data, "Address: low-level call failed");
[codex:527134] }
[codex:527134]
[codex:527134] /**
[codex:527134] * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
[codex:527134] * `errorMessage` as a fallback revert reason when `target` reverts.
[codex:527134] *
[codex:527134] * _Available since v3.1._
[codex:527134] */
[codex:527134] function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
[codex:527134] return _functionCallWithValue(target, data, 0, errorMessage);
[codex:527134] }
[codex:527134]
[codex:527134] /**
[codex:527134] exec
[codex:527134] /bin/bash -lc "sed -n '2100,2600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-p9c5nhzv succeeded in 5ms:
[codex:527134] /**
[codex:527134] * PRIVELEGED MODULE FUNCTION. Unlocks the SetToken and clears the locker
[codex:527134] */
[codex:527134] function unlock() external onlyModule {
[codex:527134] require(isLocked, "Must be locked");
[codex:527134] require(locker == msg.sender, "Must be locker");
[codex:527134] delete locker;
[codex:527134] isLocked = false;
[codex:527134] }
[codex:527134]
[codex:527134] /**
[codex:527134] * MANAGER ONLY. Adds a module into a PENDING state; Module must later be initialized via
[codex:527134] * module's initialize function
[codex:527134] */
[codex:527134] function addModule(address _module) external onlyManager {
[codex:527134] require(moduleStates[_module] == ISetToken.ModuleState.NONE, "Module must not be added");
[codex:527134] require(controller.isModule(_module), "Must be enabled on Controller");
[codex:527134]
[codex:527134] moduleStates[_module] = ISetToken.ModuleState.PENDING;
[codex:527134]
[codex:527134]
[codex:527134] thinking
[codex:527134] **Analyzing SetToken contract vulnerabilities**
[codex:527134]
[codex:527134] I’m focusing on auditing the SetToken contract within the bundled code, ignoring third-party libs unless misused. I’m weighing potential risks like reentrancy in the `invoke` function, privilege escalation via `manager` and `modules`, and data consistency issues with component arrays. The design relies heavily on trusted modules and manager contracts, so I’m trying to distinguish intended behavior from actual vulnerabilities.
[codex:527134] exec
[codex:527134] /bin/bash -lc "rg -n \"function remove\\(\" -n AUDIT_BUNDLE.txt" in /tmp/codex-multi-p9c5nhzv succeeded in 6ms:
[codex:527134] 408: function remove(address[] memory A, address a)
[codex:527134] exec
[codex:527134] /bin/bash -lc "sed -n '400,470p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-p9c5nhzv succeeded in 5ms:
[codex:527134] return false;
[codex:527134] }
[codex:527134]
[codex:527134] /**
[codex:527134] * @param A The input array to search
[codex:527134] * @param a The address to remove
[codex:527134] * @return Returns the array with the object removed.
[codex:527134] */
[codex:527134] function remove(address[] memory A, address a)
[codex:527134] internal
[codex:527134] pure
[codex:527134] returns (address[] memory)
[codex:527134] {
[codex:527134] (uint256 index, bool isIn) = indexOf(A, a);
[codex:527134] if (!isIn) {
[codex:527134] revert("Address not in array.");
[codex:527134] } else {
[codex:527134] (address[] memory _A,) = pop(A, index);
[codex:527134] return _A;
[codex:527134] }
[codex:527134]
[codex:527134]
[codex:527134] thinking
[codex:527134] **Analyzing reentrancy and locking vulnerabilities**
[codex:527134]
[codex:527134] I've found a real reentrancy risk in `removeModule`: because it calls the module's `removeModule` externally before updating state, a malicious module can lock the contract during that call and then get removed, leaving the set token permanently locked with no way to unlock—effectively causing a denial-of-service. There are also related concerns about modules being disabled while locking, preventing unlocks, and potential accounting inconsistencies from duplicate components or external position modules. Overall, the main critical issue involves reentrancy enabling a permanent lock state.
[codex:527134] thinking
[codex:527134] **Evaluating liveness risks from controller-module interaction**
[codex:527134]
[codex:527134] I'm considering the liveness risk where if the controller disables a locking module, the set token becomes permanently locked since unlocking requires the module to be enabled. This dependency on external controller state creates a design fragility that could freeze functionality, though it likely depends on governance behavior outside this contract. I'll verify relevant line numbers in the contract to support precise reporting.
[codex:527134] exec
[codex:527134] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '1840,2100p'" in /tmp/codex-multi-p9c5nhzv succeeded in 6ms:
[codex:527134] 1840 * Throws if SetToken is locked and called by any account other than the locker.
[codex:527134] 1841 */
[codex:527134] 1842 modifier whenLockedOnlyLocker() {
[codex:527134] 1843 _validateWhenLockedOnlyLocker();
[codex:527134] 1844 _;
[codex:527134] 1845 }
[codex:527134] 1846
[codex:527134] 1847 /* ============ State Variables ============ */
[codex:527134] 1848
[codex:527134] 1849 // Address of the controller
[codex:527134] 1850 IController public controller;
[codex:527134] 1851
[codex:527134] 1852 // The manager has the privelege to add modules, remove, and set a new manager
[codex:527134] 1853 address public manager;
[codex:527134] 1854
[codex:527134] 1855 // A module that has locked other modules from privileged functionality, typically required
[codex:527134] 1856 // for multi-block module actions such as auctions
[codex:527134] 1857 address public locker;
[codex:527134] 1858
[codex:527134] 1859 // List of initialized Modules; Modules extend the functionality of SetTokens
[codex:527134] exec
[codex:527134] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '2100,2300p'" in /tmp/codex-multi-p9c5nhzv succeeded in 6ms:
[codex:527134] 2100 require(locker == msg.sender, "Must be locker");
[codex:527134] 2101 delete locker;
[codex:527134] 2102 isLocked = false;
[codex:527134] 2103 }
[codex:527134] 2104
[codex:527134] 2105 /**
[codex:527134] 2106 * MANAGER ONLY. Adds a module into a PENDING state; Module must later be initialized via
[codex:527134] 2107 * module's initialize function
[codex:527134] 2108 */
[codex:527134] 2109 function addModule(address _module) external onlyManager {
[codex:527134] 2110 require(moduleStates[_module] == ISetToken.ModuleState.NONE, "Module must not be added");
[codex:527134] 2111 require(controller.isModule(_module), "Must be enabled on Controller");
[codex:527134] 2112
[codex:527134] 2113 moduleStates[_module] = ISetToken.ModuleState.PENDING;
[codex:527134] 2114
[codex:527134] 2115 emit ModuleAdded(_module);
[codex:527134] 2116 }
[codex:527134] 2117
[codex:527134] 2118 /**
[codex:527134] 2119 * MANAGER ONLY. Removes a module from the SetToken. SetToken calls removeModule on module itself to confirm
[codex:527134]
[codex:527134] thinking
[codex:527134] **Locating function line numbers**
[codex:527134] exec
[codex:527134] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '2350,2460p'" in /tmp/codex-multi-p9c5nhzv succeeded in 6ms:
[codex:527134] 2350 );
[codex:527134] 2351
[codex:527134] 2352 require(
[codex:527134] 2353 controller.isModule(msg.sender),
[codex:527134] 2354 "Module must be enabled on controller"
[codex:527134] 2355 );
[codex:527134] 2356 }
[codex:527134] 2357
[codex:527134] 2358 function _validateOnlyManager() internal view {
[codex:527134] 2359 require(msg.sender == manager, "Only manager can call");
[codex:527134] 2360 }
[codex:527134] 2361
[codex:527134] 2362 function _validateWhenLockedOnlyLocker() internal view {
[codex:527134] 2363 if (isLocked) {
[codex:527134] 2364 require(msg.sender == locker, "When locked, only the locker can call");
[codex:527134] 2365 }
[codex:527134] 2366 }
[codex:527134] 2367 }
[codex:527134]
[codex:527134] thinking
[codex:527134] **Locating _validateOnlyModule start lines**
[codex:527134] exec
[codex:527134] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '2320,2360p'" in /tmp/codex-multi-p9c5nhzv succeeded in 6ms:
[codex:527134] 2320 */
[codex:527134] 2321 function _getPositionCount() internal view returns (uint256) {
[codex:527134] 2322 uint256 positionCount;
[codex:527134] 2323 for (uint256 i = 0; i < components.length; i++) {
[codex:527134] 2324 address component = components[i];
[codex:527134] 2325
[codex:527134] 2326 // Increment the position count if the default position is > 0
[codex:527134] 2327 if (_defaultPositionVirtualUnit(component) > 0) {
[codex:527134] 2328 positionCount++;
[codex:527134] 2329 }
[codex:527134] 2330
[codex:527134] 2331 // Increment the position count by each external position module
[codex:527134] 2332 address[] memory externalModules = _externalPositionModules(component);
[codex:527134] 2333 if (externalModules.length > 0) {
[codex:527134] 2334 positionCount = positionCount.add(externalModules.length);
[codex:527134] 2335 }
[codex:527134] 2336 }
[codex:527134] 2337
[codex:527134] 2338 return positionCount;
[codex:527134] 2339 }
[codex:527134]
[codex:527134]
[codex:527134] thinking
[codex:527134] **Summarizing audit findings**
[codex:527134] thinking
[codex:527134] **Preparing evidence details**
[codex:527134] codex
[codex:527134] {"no_findings":false,"summary":"Identified a high-severity reentrancy/DoS risk in the module removal flow that can permanently lock the SetToken.","findings":[{"severity":"high","category":"reentrancy","title":"Reentrancy during module removal can permanently lock the SetToken","exploit_scenario":"A manager calls removeModule on a malicious module. While removeModule is executing, the SetToken calls the module’s external removeModule() hook. The module reenters SetToken.lock() (it is still INITIALIZED) and becomes the locker. After returning, SetToken clears the module state and removes it from the modules list. The SetToken remains locked, but the locker is no longer an initialized module, so unlock() (onlyModule) can never be called and manager-only functions are blocked by isLocked—permanent DoS.","recommendation":"Apply checks-effects-interactions or a reentrancy guard around module removal. Consider preventing lock() during module removal, or allow a manager escape hatch to unlock when the locker is no longer an initialized module. Alternatively, split cleanup so the module can’t lock during its removal hook.","evidence":"removeModule performs an external call to _module.removeModule() before clearing module state; the module can reenter lock() while still INITIALIZED. unlock() and other privileged functions require onlyModule, which fails after the module is removed.","locations":["contracts/Contract.sol:2122","contracts/Contract.sol:2126","contracts/Contract.sol:2089","contracts/Contract.sol:2098","contracts/Contract.sol:2346"]}]}
[codex:527134] tokens used
[codex:527134] 34,561
[codex:527134] {"no_findings":false,"summary":"Identified a high-severity reentrancy/DoS risk in the module removal flow that can permanently lock the SetToken.","findings":[{"severity":"high","category":"reentrancy","title":"Reentrancy during module removal can permanently lock the SetToken","exploit_scenario":"A manager calls removeModule on a malicious module. While removeModule is executing, the SetToken calls the module’s external removeModule() hook. The module reenters SetToken.lock() (it is still INITIALIZED) and becomes the locker. After returning, SetToken clears the module state and removes it from the modules list. The SetToken remains locked, but the locker is no longer an initialized module, so unlock() (onlyModule) can never be called and manager-only functions are blocked by isLocked—permanent DoS.","recommendation":"Apply checks-effects-interactions or a reentrancy guard around module removal. Consider preventing lock() during module removal, or allow a manager escape hatch to unlock when the locker is no longer an initialized module. Alternatively, split cleanup so the module can’t lock during its removal hook.","evidence":"removeModule performs an external call to _module.removeModule() before clearing module state; the module can reenter lock() while still INITIALIZED. unlock() and other privileged functions require onlyModule, which fails after the module is removed.","locations":["contracts/Contract.sol:2122","contracts/Contract.sol:2126","contracts/Contract.sol:2089","contracts/Contract.sol:2098","contracts/Contract.sol:2346"]}]}
{
"codex": {
"ran_at": "2025-12-28T18:28:30.086472+00:00",
"returncode": 0
},
"summary": "Identified a high-severity reentrancy/DoS risk in the module removal flow that can permanently lock the SetToken.",
"raw_final": {
"summary": "Identified a high-severity reentrancy/DoS risk in the module removal flow that can permanently lock the SetToken.",
"findings": [
{
"title": "Reentrancy during module removal can permanently lock the SetToken",
"category": "reentrancy",
"evidence": "removeModule performs an external call to _module.removeModule() before clearing module state; the module can reenter lock() while still INITIALIZED. unlock() and other privileged functions require onlyModule, which fails after the module is removed.",
"severity": "high",
"locations": [
"contracts/Contract.sol:2122",
"contracts/Contract.sol:2126",
"contracts/Contract.sol:2089",
"contracts/Contract.sol:2098",
"contracts/Contract.sol:2346"
],
"recommendation": "Apply checks-effects-interactions or a reentrancy guard around module removal. Consider preventing lock() during module removal, or allow a manager escape hatch to unlock when the locker is no longer an initialized module. Alternatively, split cleanup so the module can\u2019t lock during its removal hook.",
"exploit_scenario": "A manager calls removeModule on a malicious module. While removeModule is executing, the SetToken calls the module\u2019s external removeModule() hook. The module reenters SetToken.lock() (it is still INITIALIZED) and becomes the locker. After returning, SetToken clears the module state and removes it from the modules list. The SetToken remains locked, but the locker is no longer an initialized module, so unlock() (onlyModule) can never be called and manager-only functions are blocked by isLocked\u2014permanent DoS."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x02b2 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x8ae458da 00000019: GT 0000001a: PUSH2 0x0175 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xb2494df3 00000024: GT 00000025: PUSH2 0x00dc 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xd7f1b27c 0000002f: GT 00000030: PUSH2 0x0095 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xea0ee559 0000003a: GT 0000003b: PUSH2 0x006f 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xea0ee559 00000045: EQ 00000046: PUSH2 0x0842 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xeaf993e1 00000050: EQ 00000051: PUSH2 0x0862 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf77c4791 0000005b: EQ 0000005c: PUSH2 0x0882 0000005f: JUMPI 00000060: DUP1 00000061: PUSH4 0xf83d08ba 00000066: EQ 00000067: PUSH2 0x0897 0000006a: JUMPI 0000006b: PUSH2 0x02b9 0000006e: JUMP 0000006f: JUMPDEST 00000070: DUP1 00000071: PUSH4 0xd7f1b27c 00000076: EQ 00000077: PUSH2 0x07e2 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xdd62ed3e 00000081: EQ 00000082: PUSH2 0x0802 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xdf5e9b29 0000008c: EQ 0000008d: PUSH2 0x0822 00000090: JUMPI 00000091: PUSH2 0x02b9 00000094: JUMP 00000095: JUMPDEST 00000096: DUP1 00000097: PUSH4 0xb2494df3 0000009c: EQ 0000009d: PUSH2 0x0738 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xc2de0e9d 000000a7: EQ 000000a8: PUSH2 0x074d 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xc5d574fe 000000b2: EQ 000000b3: PUSH2 0x076d 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xc7564017 000000bd: EQ 000000be: PUSH2 0x078d 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xd0ebdbe7 000000c8: EQ 000000c9: PUSH2 0x07ad 000000cc: JUMPI 000000cd: DUP1 000000ce: PUSH4 0xd7b96d4e 000000d3: EQ 000000d4: PUSH2 0x07cd 000000d7: JUMPI 000000d8: PUSH2 0x02b9 000000db: JUMP 000000dc: JUMPDEST 000000dd: DUP1 000000de: PUSH4 0xa457c2d7 000000e3: GT 000000e4: PUSH2 0x012e 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0xa457c2d7 000000ee: EQ 000000ef: PUSH2 0x068e 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0xa4e2d634 000000f9: EQ 000000fa: PUSH2 0x06ae 000000fd: JUMPI 000000fe: DUP1 000000ff: PUSH4 0xa69df4b5 00000104: EQ 00000105: PUSH2 0x06c3 00000108: JUMPI 00000109: DUP1 0000010a: PUSH4 0xa7bdad03 0000010f: EQ 00000110: PUSH2 0x06d8 00000113: JUMPI 00000114: DUP1 00000115: PUSH4 0xa9059cbb 0000011a: EQ 0000011b: PUSH2 0x06f8 0000011e: JUMPI 0000011f: DUP1 00000120: PUSH4 0xacf3f077 00000125: EQ 00000126: PUSH2 0x0718 00000129: JUMPI 0000012a: PUSH2 0x02b9 0000012d: JUMP 0000012e: JUMPDEST 0000012f: DUP1 00000130: PUSH4 0x8ae458da 00000135: EQ 00000136: PUSH2 0x05d7 00000139: JUMPI 0000013a: DUP1 0000013b: PUSH4 0x8f6f0332 00000140: EQ 00000141: PUSH2 0x05f7 00000144: JUMPI 00000145: DUP1 00000146: PUSH4 0x95d89b41 0000014b: EQ 0000014c: PUSH2 0x0617 0000014f: JUMPI 00000150: DUP1 00000151: PUSH4 0x99d50d5d 00000156: EQ 00000157: PUSH2 0x062c 0000015a: JUMPI 0000015b: DUP1 0000015c: PUSH4 0x9dc29fac 00000161: EQ 00000162: PUSH2 0x064e 00000165: JUMPI 00000166: DUP1 00000167: PUSH4 0xa0632461 0000016c: EQ 0000016d: PUSH2 0x066e 00000170: JUMPI 00000171: PUSH2 0x02b9 00000174: JUMP 00000175: JUMPDEST 00000176: DUP1 00000177: PUSH4 0x40c10f19 0000017c: GT 0000017d: PUSH2 0x0219 00000180: JUMPI 00000181: DUP1 00000182: PUSH4 0x66cb8d2f 00000187: GT 00000188: PUSH2 0x01d2 0000018b: JUMPI 0000018c: DUP1 0000018d: PUSH4 0x66cb8d2f 00000192: EQ 00000193: PUSH2 0x0515 00000196: JUMPI 00000197: DUP1 00000198: PUSH4 0x6f86c897 0000019d: EQ 0000019e: PUSH2 0x0535 000001a1: JUMPI 000001a2: DUP1 000001a3: PUSH4 0x70a08231 000001a8: EQ 000001a9: PUSH2 0x0555 000001ac: JUMPI 000001ad: DUP1 000001ae: PUSH4 0x7d966593 000001b3: EQ 000001b4: PUSH2 0x0575 000001b7: JUMPI 000001b8: DUP1 000001b9: PUSH4 0x80275860 000001be: EQ 000001bf: PUSH2 0x0595 000001c2: JUMPI 000001c3: DUP1 000001c4: PUSH4 0x81b2248a 000001c9: EQ 000001ca: PUSH2 0x05b7 000001cd: JUMPI 000001ce: PUSH2 0x02b9 000001d1: JUMP 000001d2: JUMPDEST 000001d3: DUP1 000001d4: PUSH4 0x40c10f19 000001d9: EQ 000001da: PUSH2 0x045e 000001dd: JUMPI 000001de: DUP1 000001df: PUSH4 0x481c6a75 000001e4: EQ 000001e5: PUSH2 0x047e 000001e8: JUMPI 000001e9: DUP1 000001ea: PUSH4 0x4e353270 000001ef: EQ 000001f0: PUSH2 0x04a0 000001f3: JUMPI 000001f4: DUP1 000001f5: PUSH4 0x5230c396 000001fa: EQ 000001fb: PUSH2 0x04c0 000001fe: JUMPI 000001ff: DUP1 00000200: PUSH4 0x53bae5f7 00000205: EQ 00000206: PUSH2 0x04d5 00000209: JUMPI 0000020a: DUP1 0000020b: PUSH4 0x63a90fc1 00000210: EQ 00000211: PUSH2 0x04f5 00000214: JUMPI 00000215: PUSH2 0x02b9 00000218: JUMP 00000219: JUMPDEST 0000021a: DUP1 0000021b: PUSH4 0x23b872dd 00000220: GT 00000221: PUSH2 0x026b 00000224: JUMPI 00000225: DUP1 00000226: PUSH4 0x23b872dd 0000022b: EQ 0000022c: PUSH2 0x038f 0000022f: JUMPI 00000230: DUP1 00000231: PUSH4 0x26898fe1 00000236: EQ 00000237: PUSH2 0x03af 0000023a: JUMPI 0000023b: DUP1 0000023c: PUSH4 0x2ba57d17 00000241: EQ 00000242: PUSH2 0x03cf 00000245: JUMPI 00000246: DUP1 00000247: PUSH4 0x313ce567 0000024c: EQ 0000024d: PUSH2 0x03ef 00000250: JUMPI 00000251: DUP1 00000252: PUSH4 0x35bc4e52 00000257: EQ 00000258: PUSH2 0x0411 0000025b: JUMPI 0000025c: DUP1 0000025d: PUSH4 0x39509351 00000262: EQ 00000263: PUSH2 0x043e 00000266: JUMPI 00000267: PUSH2 0x02b9 0000026a: JUMP 0000026b: JUMPDEST 0000026c: DUP1 0000026d: PUSH4 0x06fdde03 00000272: EQ 00000273: PUSH2 0x02be 00000276: JUMPI 00000277: DUP1 00000278: PUSH4 0x095ea7b3 0000027d: EQ 0000027e: PUSH2 0x02e9 00000281: JUMPI 00000282: DUP1 00000283: PUSH4 0x0ffe0f1e 00000288: EQ 00000289: PUSH2 0x0316 0000028c: JUMPI 0000028d: DUP1 0000028e: PUSH4 0x18160ddd 00000293: EQ 00000294: PUSH2 0x032d 00000297: JUMPI 00000298: DUP1 00000299: PUSH4 0x1ed86f19 0000029e: EQ 0000029f: PUSH2 0x034f 000002a2: JUMPI 000002a3: DUP1 000002a4: PUSH4 0x22ebeba4 000002a9: EQ 000002aa: PUSH2 0x036f 000002ad: JUMPI 000002ae: PUSH2 0x02b9 000002b1: JUMP 000002b2: JUMPDEST 000002b3: CALLDATASIZE 000002b4: PUSH2 0x02b9 000002b7: JUMPI 000002b8: STOP 000002b9: JUMPDEST 000002ba: PUSH1 0x00 000002bc: DUP1 000002bd: REVERT 000002be: JUMPDEST 000002bf: CALLVALUE 000002c0: DUP1 000002c1: ISZERO 000002c2: PUSH2 0x02ca 000002c5: JUMPI 000002c6: PUSH1 0x00 000002c8: DUP1 000002c9: REVERT 000002ca: JUMPDEST 000002cb: POP 000002cc: PUSH2 0x02d3 000002cf: PUSH2 0x08ac 000002d2: JUMP 000002d3: JUMPDEST 000002d4: PUSH1 0x40 000002d6: MLOAD 000002d7: PUSH2 0x02e0 000002da: SWAP2 000002db: SWAP1 000002dc: PUSH2 0x2e5d 000002df: JUMP 000002e0: JUMPDEST 000002e1: PUSH1 0x40 000002e3: MLOAD 000002e4: DUP1 000002e5: SWAP2 000002e6: SUB 000002e7: SWAP1 000002e8: RETURN 000002e9: JUMPDEST 000002ea: CALLVALUE 000002eb: DUP1 000002ec: ISZERO 000002ed: PUSH2 0x02f5 000002f0: JUMPI 000002f1: PUSH1 0x00 000002f3: DUP1 000002f4: REVERT 000002f5: JUMPDEST 000002f6: POP 000002f7: PUSH2 0x0309 000002fa: PUSH2 0x0304 000002fd: CALLDATASIZE 000002fe: PUSH1 0x04 00000300: PUSH2 0x2bd9 00000303: JUMP 00000304: JUMPDEST 00000305: PUSH2 0x0943 00000308: JUMP 00000309: JUMPDEST 0000030a: PUSH1 0x40 0000030c: MLOAD 0000030d: PUSH2 0x02e0 00000310: SWAP2 00000311: SWAP1 00000312: PUSH2 0x2e0e 00000315: JUMP 00000316: JUMPDEST 00000317: CALLVALUE 00000318: DUP1 00000319: ISZERO 0000031a: PUSH2 0x0322 0000031d: JUMPI 0000031e: PUSH1 0x00 00000320: DUP1 00000321: REVERT 00000322: JUMPDEST 00000323: POP 00000324: PUSH2 0x032b 00000327: PUSH2 0x0961 0000032a: JUMP 0000032b: JUMPDEST 0000032c: STOP 0000032d: JUMPDEST 0000032e: CALLVALUE 0000032f: DUP1 00000330: ISZERO 00000331: PUSH2 0x0339 00000334: JUMPI 00000335: PUSH1 0x00 00000337: DUP1 00000338: REVERT 00000339: JUMPDEST 0000033a: POP 0000033b: PUSH2 0x0342 0000033e: PUSH2 0x0a4b 00000341: JUMP 00000342: JUMPDEST 00000343: PUSH1 0x40 00000345: MLOAD 00000346: PUSH2 0x02e0 00000349: SWAP2 0000034a: SWAP1 0000034b: PUSH2 0x2e84 0000034e: JUMP 0000034f: JUMPDEST 00000350: CALLVALUE 00000351: DUP1 00000352: ISZERO 00000353: PUSH2 0x035b 00000356: JUMPI 00000357: PUSH1 0x00 00000359: DUP1 0000035a: REVERT 0000035b: JUMPDEST 0000035c: POP 0000035d: PUSH2 0x032b 00000360: PUSH2 0x036a 00000363: CALLDATASIZE 00000364: PUSH1 0x04 00000366: PUSH2 0x2aaa 00000369: JUMP 0000036a: JUMPDEST 0000036b: PUSH2 0x0a51 0000036e: JUMP 0000036f: JUMPDEST 00000370: CALLVALUE 00000371: DUP1 00000372: ISZERO 00000373: PUSH2 0x037b 00000376: JUMPI 00000377: PUSH1 0x00 00000379: DUP1 0000037a: REVERT 0000037b: JUMPDEST 0000037c: POP 0000037d: PUSH2 0x0342 00000380: PUSH2 0x038a 00000383: CALLDATASIZE 00000384: PUSH1 0x04 00000386: PUSH2 0x2ac5 00000389: JUMP 0000038a: JUMPDEST 0000038b: PUSH2 0x0b89 0000038e: JUMP 0000038f: JUMPDEST 00000390: CALLVALUE 00000391: DUP1 00000392: ISZERO 00000393: PUSH2 0x039b 00000396: JUMPI 00000397: PUSH1 0x00 00000399: DUP1 0000039a: REVERT 0000039b: JUMPDEST 0000039c: POP 0000039d: PUSH2 0x0309 000003a0: PUSH2 0x03aa 000003a3: CALLDATASIZE 000003a4: PUSH1 0x04 000003a6: PUSH2 0x2b99 000003a9: JUMP 000003aa: JUMPDEST 000003ab: PUSH2 0x0ba4 000003ae: JUMP 000003af: JUMPDEST 000003b0: CALLVALUE 000003b1: DUP1 000003b2: ISZERO 000003b3: PUSH2 0x03bb 000003b6: JUMPI 000003b7: PUSH1 0x00 000003b9: DUP1 000003ba: REVERT 000003bb: JUMPDEST 000003bc: POP 000003bd: PUSH2 0x032b 000003c0: PUSH2 0x03ca 000003c3: CALLDATASIZE 000003c4: PUSH1 0x04 000003c6: PUSH2 0x2af9 000003c9: JUMP 000003ca: JUMPDEST 000003cb: PUSH2 0x0c31 000003ce: JUMP 000003cf: JUMPDEST 000003d0: CALLVALUE 000003d1: DUP1 000003d2: ISZERO 000003d3: PUSH2 0x03db 000003d6: JUMPI 000003d7: PUSH1 0x00 000003d9: DUP1 000003da: REVERT 000003db: JUMPDEST 000003dc: POP 000003dd: PUSH2 0x032b 000003e0: PUSH2 0x03ea 000003e3: CALLDATASIZE 000003e4: PUSH1 0x04 000003e6: PUSH2 0x2bd9 000003e9: JUMP 000003ea: JUMPDEST 000003eb: PUSH2 0x0ccc 000003ee: JUMP 000003ef: JUMPDEST 000003f0: CALLVALUE 000003f1: DUP1 000003f2: ISZERO 000003f3: PUSH2 0x03fb 000003f6: JUMPI 000003f7: PUSH1 0x00 000003f9: DUP1 000003fa: REVERT 000003fb: JUMPDEST 000003fc: POP 000003fd: PUSH2 0x0404 00000400: PUSH2 0x0d6c 00000403: JUMP 00000404: JUMPDEST 00000405: PUSH1 0x40 00000407: MLOAD 00000408: PUSH2 0x02e0 0000040b: SWAP2 0000040c: SWAP1 0000040d: PUSH2 0x358a 00000410: JUMP 00000411: JUMPDEST 00000412: CALLVALUE 00000413: DUP1 00000414: ISZERO 00000415: PUSH2 0x041d 00000418: JUMPI 00000419: PUSH1 0x00 0000041b: DUP1 0000041c: REVERT 0000041d: JUMPDEST 0000041e: POP 0000041f: PUSH2 0x0431 00000422: PUSH2 0x042c 00000425: CALLDATASIZE 00000426: PUSH1 0x04 00000428: PUSH2 0x2aaa 0000042b: JUMP 0000042c: JUMPDEST 0000042d: PUSH2 0x0d75 00000430: JUMP 00000431: JUMPDEST 00000432: PUSH1 0x40 00000434: MLOAD 00000435: PUSH2 0x02e0 00000438: SWAP2 00000439: SWAP1 0000043a: PUSH2 0x2e70 0000043d: JUMP 0000043e: JUMPDEST 0000043f: CALLVALUE 00000440: DUP1 00000441: ISZERO 00000442: PUSH2 0x044a 00000445: JUMPI 00000446: PUSH1 0x00 00000448: DUP1 00000449: REVERT 0000044a: JUMPDEST 0000044b: POP 0000044c: PUSH2 0x0309 0000044f: PUSH2 0x0459 00000452: CALLDATASIZE 00000453: PUSH1 0x04 00000455: PUSH2 0x2bd9 00000458: JUMP 00000459: JUMPDEST 0000045a: PUSH2 0x0d8a 0000045d: JUMP 0000045e: JUMPDEST 0000045f: CALLVALUE 00000460: DUP1 00000461: ISZERO 00000462: PUSH2 0x046a 00000465: JUMPI 00000466: PUSH1 0x00 00000468: DUP1 00000469: REVERT 0000046a: JUMPDEST 0000046b: POP 0000046c: PUSH2 0x032b 0000046f: PUSH2 0x0479 00000472: CALLDATASIZE 00000473: PUSH1 0x04 00000475: PUSH2 0x2bd9 00000478: JUMP 00000479: JUMPDEST 0000047a: PUSH2 0x0dde 0000047d: JUMP 0000047e: JUMPDEST 0000047f: CALLVALUE 00000480: DUP1 00000481: ISZERO 00000482: PUSH2 0x048a 00000485: JUMPI 00000486: PUSH1 0x00 00000488: DUP1 00000489: REVERT 0000048a: JUMPDEST 0000048b: POP 0000048c: PUSH2 0x0493 0000048f: PUSH2 0x0dfc 00000492: JUMP 00000493: JUMPDEST 00000494: PUSH1 0x40 00000496: MLOAD 00000497: PUSH2 0x02e0 0000049a: SWAP2 0000049b: SWAP1 0000049c: PUSH2 0x2cef 0000049f: JUMP 000004a0: JUMPDEST 000004a1: CALLVALUE 000004a2: DUP1 000004a3: ISZERO 000004a4: PUSH2 0x04ac 000004a7: JUMPI 000004a8: PUSH1 0x00 000004aa: DUP1 000004ab: REVERT 000004ac: JUMPDEST 000004ad: POP 000004ae: PUSH2 0x032b 000004b1: PUSH2 0x04bb 000004b4: CALLDATASIZE 000004b5: PUSH1 0x04 000004b7: PUSH2 0x2aaa 000004ba: JUMP 000004bb: JUMPDEST 000004bc: PUSH2 0x0e0b 000004bf: JUMP 000004c0: JUMPDEST 000004c1: CALLVALUE 000004c2: DUP1 000004c3: ISZERO 000004c4: PUSH2 0x04cc 000004c7: JUMPI 000004c8: PUSH1 0x00 000004ca: DUP1 000004cb: REVERT 000004cc: JUMPDEST 000004cd: POP 000004ce: PUSH2 0x0342 000004d1: PUSH2 0x0e93 000004d4: JUMP 000004d5: JUMPDEST 000004d6: CALLVALUE 000004d7: DUP1 000004d8: ISZERO 000004d9: PUSH2 0x04e1 000004dc: JUMPI 000004dd: PUSH1 0x00 000004df: DUP1 000004e0: REVERT 000004e1: JUMPDEST 000004e2: POP 000004e3: PUSH2 0x0309 000004e6: PUSH2 0x04f0 000004e9: CALLDATASIZE 000004ea: PUSH1 0x04 000004ec: PUSH2 0x2aaa 000004ef: JUMP 000004f0: JUMPDEST 000004f1: PUSH2 0x0e99 000004f4: JUMP 000004f5: JUMPDEST 000004f6: CALLVALUE 000004f7: DUP1 000004f8: ISZERO 000004f9: PUSH2 0x0501 000004fc: JUMPI 000004fd: PUSH1 0x00 000004ff: DUP1 00000500: REVERT 00000501: JUMPDEST 00000502: POP 00000503: PUSH2 0x032b 00000506: PUSH2 0x0510 00000509: CALLDATASIZE 0000050a: PUSH1 0x04 0000050c: PUSH2 0x2b5c 0000050f: JUMP 00000510: JUMPDEST 00000511: PUSH2 0x0ecc 00000514: JUMP 00000515: JUMPDEST 00000516: CALLVALUE 00000517: DUP1 00000518: ISZERO 00000519: PUSH2 0x0521 0000051c: JUMPI 0000051d: PUSH1 0x00 0000051f: DUP1 00000520: REVERT 00000521: JUMPDEST 00000522: POP 00000523: PUSH2 0x0342 00000526: PUSH2 0x0530 00000529: CALLDATASIZE 0000052a: PUSH1 0x04 0000052c: PUSH2 0x2aaa 0000052f: JUMP 00000530: JUMPDEST 00000531: PUSH2 0x0f73 00000534: JUMP 00000535: JUMPDEST 00000536: CALLVALUE 00000537: DUP1 00000538: ISZERO 00000539: PUSH2 0x0541 0000053c: JUMPI 0000053d: PUSH1 0x00 0000053f: DUP1 00000540: REVERT 00000541: JUMPDEST 00000542: POP 00000543: PUSH2 0x032b 00000546: PUSH2 0x0550 00000549: CALLDATASIZE 0000054a: PUSH1 0x04 0000054c: PUSH2 0x2aaa 0000054f: JUMP 00000550: JUMPDEST 00000551: PUSH2 0x0f81 00000554: JUMP 00000555: JUMPDEST 00000556: CALLVALUE 00000557: DUP1 00000558: ISZERO 00000559: PUSH2 0x0561 0000055c: JUMPI 0000055d: PUSH1 0x00 0000055f: DUP1 00000560: REVERT 00000561: JUMPDEST 00000562: POP 00000563: PUSH2 0x0342 00000566: PUSH2 0x0570 00000569: CALLDATASIZE 0000056a: PUSH1 0x04 0000056c: PUSH2 0x2aaa 0000056f: JUMP 00000570: JUMPDEST 00000571: PUSH2 0x104a 00000574: JUMP 00000575: JUMPDEST 00000576: CALLVALUE 00000577: DUP1 00000578: ISZERO 00000579: PUSH2 0x0581 0000057c: JUMPI 0000057d: PUSH1 0x00 0000057f: DUP1 00000580: REVERT 00000581: JUMPDEST 00000582: POP 00000583: PUSH2 0x0309 00000586: PUSH2 0x0590 00000589: CALLDATASIZE 0000058a: PUSH1 0x04 0000058c: PUSH2 0x2ac5 0000058f: JUMP 00000590: JUMPDEST 00000591: PUSH2 0x1065 00000594: JUMP 00000595: JUMPDEST 00000596: CALLVALUE 00000597: DUP1 00000598: ISZERO 00000599: PUSH2 0x05a1 0000059c: JUMPI 0000059d: PUSH1 0x00 0000059f: DUP1 000005a0: REVERT 000005a1: JUMPDEST 000005a2: POP 000005a3: PUSH2 0x05aa 000005a6: PUSH2 0x1080 000005a9: JUMP 000005aa: JUMPDEST 000005ab: PUSH1 0x40 000005ad: MLOAD 000005ae: PUSH2 0x02e0 000005b1: SWAP2 000005b2: SWAP1 000005b3: PUSH2 0x2d6a 000005b6: JUMP 000005b7: JUMPDEST 000005b8: CALLVALUE 000005b9: DUP1 000005ba: ISZERO 000005bb: PUSH2 0x05c3 000005be: JUMPI 000005bf: PUSH1 0x00 000005c1: DUP1 000005c2: REVERT 000005c3: JUMPDEST 000005c4: POP 000005c5: PUSH2 0x0493 000005c8: PUSH2 0x05d2 000005cb: CALLDATASIZE 000005cc: PUSH1 0x04 000005ce: PUSH2 0x2c65 000005d1: JUMP 000005d2: JUMPDEST 000005d3: PUSH2 0x123d 000005d6: JUMP 000005d7: JUMPDEST 000005d8: CALLVALUE 000005d9: DUP1 000005da: ISZERO 000005db: PUSH2 0x05e3 000005de: JUMPI 000005df: PUSH1 0x00 000005e1: DUP1 000005e2: REVERT 000005e3: JUMPDEST 000005e4: POP 000005e5: PUSH2 0x02d3 000005e8: PUSH2 0x05f2 000005eb: CALLDATASIZE 000005ec: PUSH1 0x04 000005ee: PUSH2 0x2ac5 000005f1: JUMP 000005f2: JUMPDEST 000005f3: PUSH2 0x1264 000005f6: JUMP 000005f7: JUMPDEST 000005f8: CALLVALUE 000005f9: DUP1 000005fa: ISZERO 000005fb: PUSH2 0x0603 000005fe: JUMPI 000005ff: PUSH1 0x00 00000601: DUP1 00000602: REVERT 00000603: JUMPDEST 00000604: POP 00000605: PUSH2 0x02d3 00000608: PUSH2 0x0612 0000060b: CALLDATASIZE 0000060c: PUSH1 0x04 0000060e: PUSH2 0x2c03 00000611: JUMP 00000612: JUMPDEST 00000613: PUSH2 0x1270 00000616: JUMP 00000617: JUMPDEST 00000618: CALLVALUE 00000619: DUP1 0000061a: ISZERO 0000061b: PUSH2 0x0623 0000061e: JUMPI 0000061f: PUSH1 0x00 00000621: DUP1 00000622: REVERT 00000623: JUMPDEST 00000624: POP 00000625: PUSH2 0x02d3 00000628: PUSH2 0x131e 0000062b: JUMP 0000062c: JUMPDEST 0000062d: CALLVALUE 0000062e: DUP1 0000062f: ISZERO 00000630: PUSH2 0x0638 00000633: JUMPI 00000634: PUSH1 0x00 00000636: DUP1 00000637: REVERT 00000638: JUMPDEST 00000639: POP 0000063a: PUSH2 0x0641 0000063d: PUSH2 0x137f 00000640: JUMP 00000641: JUMPDEST 00000642: PUSH1 0x40 00000644: MLOAD 00000645: PUSH2 0x02e0 00000648: SWAP2 00000649: SWAP1 0000064a: PUSH2 0x2d1d 0000064d: JUMP 0000064e: JUMPDEST 0000064f: CALLVALUE 00000650: DUP1 00000651: ISZERO 00000652: PUSH2 0x065a 00000655: JUMPI 00000656: PUSH1 0x00 00000658: DUP1 00000659: REVERT 0000065a: JUMPDEST 0000065b: POP 0000065c: PUSH2 0x032b 0000065f: PUSH2 0x0669 00000662: CALLDATASIZE 00000663: PUSH1 0x04 00000665: PUSH2 0x2bd9 00000668: JUMP 00000669: JUMPDEST 0000066a: PUSH2 0x13e0 0000066d: JUMP 0000066e: JUMPDEST 0000066f: CALLVALUE 00000670: DUP1 00000671: ISZERO 00000672: PUSH2 0x067a 00000675: JUMPI 00000676: PUSH1 0x00 00000678: DUP1 00000679: REVERT 0000067a: JUMPDEST 0000067b: POP 0000067c: PUSH2 0x032b 0000067f: PUSH2 0x0689 00000682: CALLDATASIZE 00000683: PUSH1 0x04 00000685: PUSH2 0x2aaa 00000688: JUMP 00000689: JUMPDEST 0000068a: PUSH2 0x13fa 0000068d: JUMP 0000068e: JUMPDEST 0000068f: CALLVALUE 00000690: DUP1 00000691: ISZERO 00000692: PUSH2 0x069a 00000695: JUMPI 00000696: PUSH1 0x00 00000698: DUP1 00000699: REVERT 0000069a: JUMPDEST 0000069b: POP 0000069c: PUSH2 0x0309 0000069f: PUSH2 0x06a9 000006a2: CALLDATASIZE 000006a3: PUSH1 0x04 000006a5: PUSH2 0x2bd9 000006a8: JUMP 000006a9: JUMPDEST 000006aa: PUSH2 0x159b 000006ad: JUMP 000006ae: JUMPDEST 000006af: CALLVALUE 000006b0: DUP1 000006b1: ISZERO 000006b2: PUSH2 0x06ba 000006b5: JUMPI 000006b6: PUSH1 0x00 000006b8: DUP1 000006b9: REVERT 000006ba: JUMPDEST 000006bb: POP 000006bc: PUSH2 0x0309 000006bf: PUSH2 0x1609 000006c2: JUMP 000006c3: JUMPDEST 000006c4: CALLVALUE 000006c5: DUP1 000006c6: ISZERO 000006c7: PUSH2 0x06cf 000006ca: JUMPI 000006cb: PUSH1 0x00 000006cd: DUP1 000006ce: REVERT 000006cf: JUMPDEST 000006d0: POP 000006d1: PUSH2 0x032b 000006d4: PUSH2 0x1612 000006d7: JUMP 000006d8: JUMPDEST 000006d9: CALLVALUE 000006da: DUP1 000006db: ISZERO 000006dc: PUSH2 0x06e4 000006df: JUMPI 000006e0: PUSH1 0x00 000006e2: DUP1 000006e3: REVERT 000006e4: JUMPDEST 000006e5: POP 000006e6: PUSH2 0x0641 000006e9: PUSH2 0x06f3 000006ec: CALLDATASIZE 000006ed: PUSH1 0x04 000006ef: PUSH2 0x2aaa 000006f2: JUMP 000006f3: JUMPDEST 000006f4: PUSH2 0x1682 000006f7: JUMP 000006f8: JUMPDEST 000006f9: CALLVALUE 000006fa: DUP1 000006fb: ISZERO 000006fc: PUSH2 0x0704 000006ff: JUMPI 00000700: PUSH1 0x00 00000702: DUP1 00000703: REVERT 00000704: JUMPDEST 00000705: POP 00000706: PUSH2 0x0309 00000709: PUSH2 0x0713 0000070c: CALLDATASIZE 0000070d: PUSH1 0x04 0000070f: PUSH2 0x2bd9 00000712: JUMP 00000713: JUMPDEST 00000714: PUSH2 0x168d 00000717: JUMP 00000718: JUMPDEST 00000719: CALLVALUE 0000071a: DUP1 0000071b: ISZERO 0000071c: PUSH2 0x0724 0000071f: JUMPI 00000720: PUSH1 0x00 00000722: DUP1 00000723: REVERT 00000724: JUMPDEST 00000725: POP 00000726: PUSH2 0x032b 00000729: PUSH2 0x0733 0000072c: CALLDATASIZE 0000072d: PUSH1 0x04 0000072f: PUSH2 0x2ac5 00000732: JUMP 00000733: JUMPDEST 00000734: PUSH2 0x16a1 00000737: JUMP 00000738: JUMPDEST 00000739: CALLVALUE 0000073a: DUP1 0000073b: ISZERO 0000073c: PUSH2 0x0744 0000073f: JUMPI 00000740: PUSH1 0x00 00000742: DUP1 00000743: REVERT 00000744: JUMPDEST 00000745: POP 00000746: PUSH2 0x0641 00000749: PUSH2 0x177e 0000074c: JUMP 0000074d: JUMPDEST 0000074e: CALLVALUE 0000074f: DUP1 00000750: ISZERO 00000751: PUSH2 0x0759 00000754: JUMPI 00000755: PUSH1 0x00 00000757: DUP1 00000758: REVERT 00000759: JUMPDEST 0000075a: POP 0000075b: PUSH2 0x032b 0000075e: PUSH2 0x0768 00000761: CALLDATASIZE 00000762: PUSH1 0x04 00000764: PUSH2 0x2c65 00000767: JUMP 00000768: JUMPDEST 00000769: PUSH2 0x17de 0000076c: JUMP 0000076d: JUMPDEST 0000076e: CALLVALUE 0000076f: DUP1 00000770: ISZERO 00000771: PUSH2 0x0779 00000774: JUMPI 00000775: PUSH1 0x00 00000777: DUP1 00000778: REVERT 00000779: JUMPDEST 0000077a: POP 0000077b: PUSH2 0x0493 0000077e: PUSH2 0x0788 00000781: CALLDATASIZE 00000782: PUSH1 0x04 00000784: PUSH2 0x2c65 00000787: JUMP 00000788: JUMPDEST 00000789: PUSH2 0x184e 0000078c: JUMP 0000078d: JUMPDEST 0000078e: CALLVALUE 0000078f: DUP1 00000790: ISZERO 00000791: PUSH2 0x0799 00000794: JUMPI 00000795: PUSH1 0x00 00000797: DUP1 00000798: REVERT 00000799: JUMPDEST 0000079a: POP 0000079b: PUSH2 0x032b 0000079e: PUSH2 0x07a8 000007a1: CALLDATASIZE 000007a2: PUSH1 0x04 000007a4: PUSH2 0x2aaa 000007a7: JUMP 000007a8: JUMPDEST 000007a9: PUSH2 0x185b 000007ac: JUMP 000007ad: JUMPDEST 000007ae: CALLVALUE 000007af: DUP1 000007b0: ISZERO 000007b1: PUSH2 0x07b9 000007b4: JUMPI 000007b5: PUSH1 0x00 000007b7: DUP1 000007b8: REVERT 000007b9: JUMPDEST 000007ba: POP 000007bb: PUSH2 0x032b 000007be: PUSH2 0x07c8 000007c1: CALLDATASIZE 000007c2: PUSH1 0x04 000007c4: PUSH2 0x2aaa 000007c7: JUMP 000007c8: JUMPDEST 000007c9: PUSH2 0x1915 000007cc: JUMP 000007cd: JUMPDEST 000007ce: CALLVALUE 000007cf: DUP1 000007d0: ISZERO 000007d1: PUSH2 0x07d9 000007d4: JUMPI 000007d5: PUSH1 0x00 000007d7: DUP1 000007d8: REVERT 000007d9: JUMPDEST 000007da: POP 000007db: PUSH2 0x0493 000007de: PUSH2 0x199f 000007e1: JUMP 000007e2: JUMPDEST 000007e3: CALLVALUE 000007e4: DUP1 000007e5: ISZERO 000007e6: PUSH2 0x07ee 000007e9: JUMPI 000007ea: PUSH1 0x00 000007ec: DUP1 000007ed: REVERT 000007ee: JUMPDEST 000007ef: POP 000007f0: PUSH2 0x0309 000007f3: PUSH2 0x07fd 000007f6: CALLDATASIZE 000007f7: PUSH1 0x04 000007f9: PUSH2 0x2aaa 000007fc: JUMP 000007fd: JUMPDEST 000007fe: PUSH2 0x19ae 00000801: JUMP 00000802: JUMPDEST 00000803: CALLVALUE 00000804: DUP1 00000805: ISZERO 00000806: PUSH2 0x080e 00000809: JUMPI 0000080a: PUSH1 0x00 0000080c: DUP1 0000080d: REVERT 0000080e: JUMPDEST 0000080f: POP 00000810: PUSH2 0x0342 00000813: PUSH2 0x081d 00000816: CALLDATASIZE 00000817: PUSH1 0x04 00000819: PUSH2 0x2ac5 0000081c: JUMP 0000081d: JUMPDEST 0000081e: PUSH2 0x19b7 00000821: JUMP 00000822: JUMPDEST 00000823: CALLVALUE 00000824: DUP1 00000825: ISZERO 00000826: PUSH2 0x082e 00000829: JUMPI 0000082a: PUSH1 0x00 0000082c: DUP1 0000082d: REVERT 0000082e: JUMPDEST 0000082f: POP 00000830: PUSH2 0x0309 00000833: PUSH2 0x083d 00000836: CALLDATASIZE 00000837: PUSH1 0x04 00000839: PUSH2 0x2aaa 0000083c: JUMP 0000083d: JUMPDEST 0000083e: PUSH2 0x19e2 00000841: JUMP 00000842: JUMPDEST 00000843: CALLVALUE 00000844: DUP1 00000845: ISZERO 00000846: PUSH2 0x084e 00000849: JUMPI 0000084a: PUSH1 0x00 0000084c: DUP1 0000084d: REVERT 0000084e: JUMPDEST 0000084f: POP 00000850: PUSH2 0x032b 00000853: PUSH2 0x085d 00000856: CALLDATASIZE 00000857: PUSH1 0x04 00000859: PUSH2 0x2ac5 0000085c: JUMP 0000085d: JUMPDEST 0000085e: PUSH2 0x1a51 00000861: JUMP 00000862: JUMPDEST 00000863: CALLVALUE 00000864: DUP1 00000865: ISZERO 00000866: PUSH2 0x086e 00000869: JUMPI 0000086a: PUSH1 0x00 0000086c: DUP1 0000086d: REVERT 0000086e: JUMPDEST 0000086f: POP 00000870: PUSH2 0x0342 00000873: PUSH2 0x087d 00000876: CALLDATASIZE 00000877: PUSH1 0x04 00000879: PUSH2 0x2aaa 0000087c: JUMP 0000087d: JUMPDEST 0000087e: PUSH2 0x1ace 00000881: JUMP 00000882: JUMPDEST 00000883: CALLVALUE 00000884: DUP1 00000885: ISZERO 00000886: PUSH2 0x088e 00000889: JUMPI 0000088a: PUSH1 0x00 0000088c: DUP1 0000088d: REVERT 0000088e: JUMPDEST 0000088f: POP 00000890: PUSH2 0x0493 00000893: PUSH2 0x1b35 00000896: JUMP 00000897: JUMPDEST 00000898: CALLVALUE 00000899: DUP1 0000089a: ISZERO 0000089b: PUSH2 0x08a3 0000089e: JUMPI 0000089f: PUSH1 0x00 000008a1: DUP1 000008a2: REVERT 000008a3: JUMPDEST 000008a4: POP 000008a5: PUSH2 0x032b 000008a8: PUSH2 0x1b49 000008ab: JUMP 000008ac: JUMPDEST 000008ad: PUSH1 0x03 000008af: DUP1 000008b0: SLOAD 000008b1: PUSH1 0x40 000008b3: DUP1 000008b4: MLOAD 000008b5: PUSH1 0x20 000008b7: PUSH1 0x1f 000008b9: PUSH1 0x02 000008bb: PUSH1 0x00 000008bd: NOT 000008be: PUSH2 0x0100 000008c1: PUSH1 0x01 000008c3: DUP9 000008c4: AND 000008c5: ISZERO 000008c6: MUL 000008c7: ADD 000008c8: SWAP1 000008c9: SWAP6 000008ca: AND 000008cb: SWAP5 000008cc: SWAP1 000008cd: SWAP5 000008ce: DIV 000008cf: SWAP4 000008d0: DUP5 000008d1: ADD 000008d2: DUP2 000008d3: SWAP1 000008d4: DIV 000008d5: DUP2 000008d6: MUL 000008d7: DUP3 000008d8: ADD 000008d9: DUP2 000008da: ADD 000008db: SWAP1 000008dc: SWAP3 000008dd: MSTORE 000008de: DUP3 000008df: DUP2 000008e0: MSTORE 000008e1: PUSH1 0x60 000008e3: SWAP4 000008e4: SWAP1 000008e5: SWAP3 000008e6: SWAP1 000008e7: SWAP2 000008e8: DUP4 000008e9: ADD 000008ea: DUP3 000008eb: DUP3 000008ec: DUP1 000008ed: ISZERO 000008ee: PUSH2 0x0938 000008f1: JUMPI 000008f2: DUP1 000008f3: PUSH1 0x1f 000008f5: LT 000008f6: PUSH2 0x090d 000008f9: JUMPI 000008fa: PUSH2 0x0100 000008fd: DUP1 000008fe: DUP4 000008ff: SLOAD 00000900: DIV 00000901: MUL 00000902: DUP4 00000903: MSTORE 00000904: SWAP2 00000905: PUSH1 0x20 00000907: ADD 00000908: SWAP2 00000909: PUSH2 0x0938 0000090c: JUMP 0000090d: JUMPDEST 0000090e: DUP3 0000090f: ADD 00000910: SWAP2 00000911: SWAP1 00000912: PUSH1 0x00 00000914: MSTORE 00000915: PUSH1 0x20 00000917: PUSH1 0x00 00000919: KECCAK256 0000091a: SWAP1 0000091b: JUMPDEST 0000091c: DUP2 0000091d: SLOAD 0000091e: DUP2 0000091f: MSTORE 00000920: SWAP1 00000921: PUSH1 0x01 00000923: ADD 00000924: SWAP1 00000925: PUSH1 0x20 00000927: ADD 00000928: DUP1 00000929: DUP4 0000092a: GT 0000092b: PUSH2 0x091b 0000092e: JUMPI 0000092f: DUP3 00000930: SWAP1 00000931: SUB 00000932: PUSH1 0x1f 00000934: AND 00000935: DUP3 00000936: ADD 00000937: SWAP2 00000938: JUMPDEST 00000939: POP 0000093a: POP 0000093b: POP 0000093c: POP 0000093d: POP 0000093e: SWAP1 0000093f: POP 00000940: JUMPDEST 00000941: SWAP1 00000942: JUMP 00000943: JUMPDEST 00000944: PUSH1 0x00 00000946: PUSH2 0x0957 00000949: PUSH2 0x0950 0000094c: PUSH2 0x1ba1 0000094f: JUMP 00000950: JUMPDEST 00000951: DUP5 00000952: DUP5 00000953: PUSH2 0x1ba5 00000956: JUMP 00000957: JUMPDEST 00000958: POP 00000959: PUSH1 0x01 0000095b: JUMPDEST 0000095c: SWAP3 0000095d: SWAP2 0000095e: POP 0000095f: POP 00000960: JUMP 00000961: JUMPDEST 00000962: PUSH1 0x0a 00000964: SLOAD 00000965: PUSH1 0xff 00000967: AND 00000968: ISZERO 00000969: PUSH2 0x098d 0000096c: JUMPI 0000096d: PUSH1 0x40 0000096f: MLOAD 00000970: PUSH3 0x461bcd 00000974: PUSH1 0xe5 00000976: SHL 00000977: DUP2 00000978: MSTORE 00000979: PUSH1 0x04 0000097b: ADD 0000097c: PUSH2 0x0984 0000097f: SWAP1 00000980: PUSH2 0x3425 00000983: JUMP 00000984: JUMPDEST 00000985: PUSH1 0x40 00000987: MLOAD 00000988: DUP1 00000989: SWAP2 0000098a: SUB 0000098b: SWAP1 0000098c: REVERT 0000098d: JUMPDEST 0000098e: PUSH1 0x01 00000990: CALLER 00000991: PUSH1 0x00 00000993: SWAP1 00000994: DUP2 00000995: MSTORE 00000996: PUSH1 0x09 00000998: PUSH1 0x20 0000099a: MSTORE 0000099b: PUSH1 0x40 0000099d: SWAP1 0000099e: KECCAK256 0000099f: SLOAD 000009a0: PUSH1 0xff 000009a2: AND 000009a3: PUSH1 0x02 000009a5: DUP2 000009a6: GT 000009a7: ISZERO 000009a8: PUSH2 0x09ad 000009ab: JUMPI 000009ac: INVALID 000009ad: JUMPDEST 000009ae: EQ 000009af: PUSH2 0x09ca 000009b2: JUMPI 000009b3: PUSH1 0x40 000009b5: MLOAD 000009b6: PUSH3 0x461bcd 000009ba: PUSH1 0xe5 000009bc: SHL 000009bd: DUP2 000009be: MSTORE 000009bf: PUSH1 0x04 000009c1: ADD 000009c2: PUSH2 0x0984 000009c5: SWAP1 000009c6: PUSH2 0x34f9 000009c9: JUMP 000009ca: JUMPDEST 000009cb: CALLER 000009cc: PUSH1 0x00 000009ce: DUP2 000009cf: DUP2 000009d0: MSTORE 000009d1: PUSH1 0x09 000009d3: PUSH1 0x20 000009d5: MSTORE 000009d6: PUSH1 0x40 000009d8: DUP1 000009d9: DUP3 000009da: KECCAK256 000009db: DUP1 000009dc: SLOAD 000009dd: PUSH1 0xff 000009df: NOT 000009e0: AND 000009e1: PUSH1 0x02 000009e3: OR 000009e4: SWAP1 000009e5: SSTORE 000009e6: PUSH1 0x08 000009e8: DUP1 000009e9: SLOAD 000009ea: PUSH1 0x01 000009ec: DUP2 000009ed: ADD 000009ee: DUP3 000009ef: SSTORE 000009f0: SWAP1 000009f1: DUP4 000009f2: MSTORE 000009f3: PUSH32 0xf3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3 00000a14: ADD 00000a15: DUP1 00000a16: SLOAD 00000a17: PUSH1 0x01 00000a19: PUSH1 0x01 00000a1b: PUSH1 0xa0 00000a1d: SHL 00000a1e: SUB 00000a1f: NOT 00000a20: AND 00000a21: DUP5 00000a22: OR 00000a23: SWAP1 00000a24: SSTORE 00000a25: MLOAD 00000a26: PUSH32 0x27b541a16df0902e262f34789782092ab25125513b8ed73608e802951771b928 00000a47: SWAP2 00000a48: SWAP1 00000a49: LOG2 00000a4a: JUMP 00000a4b: JUMPDEST 00000a4c: PUSH1 0x02 00000a4e: SLOAD 00000a4f: SWAP1 00000a50: JUMP 00000a51: JUMPDEST 00000a52: PUSH2 0x0a59 00000a55: PUSH2 0x1c59 00000a58: JUMP 00000a59: JUMPDEST 00000a5a: PUSH1 0x01 00000a5c: PUSH1 0x01 00000a5e: PUSH1 0xa0 00000a60: SHL 00000a61: SUB 00000a62: DUP2 00000a63: AND 00000a64: PUSH1 0x00 00000a66: SWAP1 00000a67: DUP2 00000a68: MSTORE 00000a69: PUSH1 0x09 00000a6b: PUSH1 0x20 00000a6d: MSTORE 00000a6e: PUSH1 0x40 00000a70: DUP2 00000a71: KECCAK256 00000a72: SLOAD 00000a73: PUSH1 0xff 00000a75: AND 00000a76: PUSH1 0x02 00000a78: DUP2 00000a79: GT 00000a7a: ISZERO 00000a7b: PUSH2 0x0a80 00000a7e: JUMPI 00000a7f: INVALID 00000a80: JUMPDEST 00000a81: EQ 00000a82: PUSH2 0x0a9d 00000a85: JUMPI 00000a86: PUSH1 0x40 00000a88: MLOAD 00000a89: PUSH3 0x461bcd 00000a8d: PUSH1 0xe5 00000a8f: SHL 00000a90: DUP2 00000a91: MSTORE 00000a92: PUSH1 0x04 00000a94: ADD 00000a95: PUSH2 0x0984 00000a98: SWAP1 00000a99: PUSH2 0x2f62 00000a9c: JUMP 00000a9d: JUMPDEST 00000a9e: PUSH1 0x05 00000aa0: SLOAD 00000aa1: PUSH1 0x40 00000aa3: MLOAD 00000aa4: PUSH4 0x42f6e389 00000aa9: PUSH1 0xe0 00000aab: SHL 00000aac: DUP2 00000aad: MSTORE 00000aae: PUSH2 0x0100 00000ab1: SWAP1 00000ab2: SWAP2 00000ab3: DIV 00000ab4: PUSH1 0x01 00000ab6: PUSH1 0x01 00000ab8: PUSH1 0xa0 00000aba: SHL 00000abb: SUB 00000abc: AND 00000abd: SWAP1 00000abe: PUSH4 0x42f6e389 00000ac3: SWAP1 00000ac4: PUSH2 0x0ad1 00000ac7: SWAP1 00000ac8: DUP5 00000ac9: SWAP1 00000aca: PUSH1 0x04 00000acc: ADD 00000acd: PUSH2 0x2cef 00000ad0: JUMP 00000ad1: JUMPDEST 00000ad2: PUSH1 0x20 00000ad4: PUSH1 0x40 00000ad6: MLOAD 00000ad7: DUP1 00000ad8: DUP4 00000ad9: SUB 00000ada: DUP2 00000adb: DUP7 00000adc: DUP1 00000add: EXTCODESIZE 00000ade: ISZERO 00000adf: DUP1 00000ae0: ISZERO 00000ae1: PUSH2 0x0ae9 00000ae4: JUMPI 00000ae5: PUSH1 0x00 00000ae7: DUP1 00000ae8: REVERT 00000ae9: JUMPDEST 00000aea: POP 00000aeb: GAS 00000aec: STATICCALL 00000aed: ISZERO 00000aee: DUP1 00000aef: ISZERO 00000af0: PUSH2 0x0afd 00000af3: JUMPI 00000af4: RETURNDATASIZE 00000af5: PUSH1 0x00 00000af7: DUP1 00000af8: RETURNDATACOPY 00000af9: RETURNDATASIZE 00000afa: PUSH1 0x00 00000afc: REVERT 00000afd: JUMPDEST 00000afe: POP 00000aff: POP 00000b00: POP 00000b01: POP 00000b02: PUSH1 0x40 00000b04: MLOAD 00000b05: RETURNDATASIZE 00000b06: PUSH1 0x1f 00000b08: NOT 00000b09: PUSH1 0x1f 00000b0b: DUP3 00000b0c: ADD 00000b0d: AND 00000b0e: DUP3 00000b0f: ADD 00000b10: DUP1 00000b11: PUSH1 0x40 00000b13: MSTORE 00000b14: POP 00000b15: DUP2 00000b16: ADD 00000b17: SWAP1 00000b18: PUSH2 0x0b21 00000b1b: SWAP2 00000b1c: SWAP1 00000b1d: PUSH2 0x2c45 00000b20: JUMP 00000b21: JUMPDEST 00000b22: PUSH2 0x0b3d 00000b25: JUMPI 00000b26: PUSH1 0x40 00000b28: MLOAD 00000b29: PUSH3 0x461bcd 00000b2d: PUSH1 0xe5 00000b2f: SHL 00000b30: DUP2 00000b31: MSTORE 00000b32: PUSH1 0x04 00000b34: ADD 00000b35: PUSH2 0x0984 00000b38: SWAP1 00000b39: PUSH2 0x31eb 00000b3c: JUMP 00000b3d: JUMPDEST 00000b3e: PUSH1 0x01 00000b40: PUSH1 0x01 00000b42: PUSH1 0xa0 00000b44: SHL 00000b45: SUB 00000b46: DUP2 00000b47: AND 00000b48: PUSH1 0x00 00000b4a: DUP2 00000b4b: DUP2 00000b4c: MSTORE 00000b4d: PUSH1 0x09 00000b4f: PUSH1 0x20 00000b51: MSTORE 00000b52: PUSH1 0x40 00000b54: DUP1 00000b55: DUP3 00000b56: KECCAK256 00000b57: DUP1 00000b58: SLOAD 00000b59: PUSH1 0xff 00000b5b: NOT 00000b5c: AND 00000b5d: PUSH1 0x01 00000b5f: OR 00000b60: SWAP1 00000b61: SSTORE 00000b62: MLOAD 00000b63: PUSH32 0xead6a006345da1073a106d5f32372d2d2204f46cb0b4bca8f5ebafcbbed12b8a 00000b84: SWAP2 00000b85: SWAP1 00000b86: LOG2 00000b87: POP 00000b88: JUMP 00000b89: JUMPDEST 00000b8a: PUSH1 0x00 00000b8c: PUSH2 0x0b9d 00000b8f: PUSH2 0x0b98 00000b92: DUP5 00000b93: DUP5 00000b94: PUSH2 0x1c85 00000b97: JUMP 00000b98: JUMPDEST 00000b99: PUSH2 0x1cb4 00000b9c: JUMP 00000b9d: JUMPDEST 00000b9e: SWAP4 00000b9f: SWAP3 00000ba0: POP 00000ba1: POP 00000ba2: POP 00000ba3: JUMP 00000ba4: JUMPDEST 00000ba5: PUSH1 0x00 00000ba7: PUSH2 0x0bb1 00000baa: DUP5 00000bab: DUP5 00000bac: DUP5 00000bad: PUSH2 0x1ccb 00000bb0: JUMP 00000bb1: JUMPDEST 00000bb2: PUSH2 0x0c27 00000bb5: DUP5 00000bb6: PUSH2 0x0bbd 00000bb9: PUSH2 0x1ba1 00000bbc: JUMP 00000bbd: JUMPDEST 00000bbe: PUSH2 0x0c22 00000bc1: DUP6 00000bc2: PUSH1 0x40 00000bc4: MLOAD 00000bc5: DUP1 00000bc6: PUSH1 0x60 00000bc8: ADD 00000bc9: PUSH1 0x40 00000bcb: MSTORE 00000bcc: DUP1 00000bcd: PUSH1 0x28 00000bcf: DUP2 00000bd0: MSTORE 00000bd1: PUSH1 0x20 00000bd3: ADD 00000bd4: PUSH2 0x364f 00000bd7: PUSH1 0x28 00000bd9: SWAP2 00000bda: CODECOPY 00000bdb: PUSH1 0x01 00000bdd: PUSH1 0x01 00000bdf: PUSH1 0xa0 00000be1: SHL 00000be2: SUB 00000be3: DUP11 00000be4: AND 00000be5: PUSH1 0x00 00000be7: SWAP1 00000be8: DUP2 00000be9: MSTORE 00000bea: PUSH1 0x01 00000bec: PUSH1 0x20 00000bee: MSTORE 00000bef: PUSH1 0x40 00000bf1: DUP2 00000bf2: KECCAK256 00000bf3: SWAP1 00000bf4: PUSH2 0x0bfb 00000bf7: PUSH2 0x1ba1 00000bfa: JUMP 00000bfb: JUMPDEST 00000bfc: PUSH1 0x01 00000bfe: PUSH1 0x01 00000c00: PUSH1 0xa0 00000c02: SHL 00000c03: SUB 00000c04: AND 00000c05: DUP2 00000c06: MSTORE 00000c07: PUSH1 0x20 00000c09: DUP2 00000c0a: ADD 00000c0b: SWAP2 00000c0c: SWAP1 00000c0d: SWAP2 00000c0e: MSTORE 00000c0f: PUSH1 0x40 00000c11: ADD 00000c12: PUSH1 0x00 00000c14: KECCAK256 00000c15: SLOAD 00000c16: SWAP2 00000c17: SWAP1 00000c18: PUSH4 0xffffffff 00000c1d: PUSH2 0x1dec 00000c20: AND 00000c21: JUMP 00000c22: JUMPDEST 00000c23: PUSH2 0x1ba5 00000c26: JUMP 00000c27: JUMPDEST 00000c28: POP 00000c29: PUSH1 0x01 00000c2b: SWAP4 00000c2c: SWAP3 00000c2d: POP 00000c2e: POP 00000c2f: POP 00000c30: JUMP 00000c31: JUMPDEST 00000c32: PUSH2 0x0c39 00000c35: PUSH2 0x1e18 00000c38: JUMP 00000c39: JUMPDEST 00000c3a: PUSH2 0x0c41 00000c3d: PUSH2 0x1ef5 00000c40: JUMP 00000c41: JUMPDEST 00000c42: PUSH1 0x01 00000c44: PUSH1 0x01 00000c46: PUSH1 0xa0 00000c48: SHL 00000c49: SUB 00000c4a: DUP1 00000c4b: DUP6 00000c4c: AND 00000c4d: PUSH1 0x00 00000c4f: SWAP1 00000c50: DUP2 00000c51: MSTORE 00000c52: PUSH1 0x0c 00000c54: PUSH1 0x20 00000c56: SWAP1 00000c57: DUP2 00000c58: MSTORE 00000c59: PUSH1 0x40 00000c5b: DUP1 00000c5c: DUP4 00000c5d: KECCAK256 00000c5e: SWAP4 00000c5f: DUP8 00000c60: AND 00000c61: DUP4 00000c62: MSTORE 00000c63: PUSH1 0x02 00000c65: SWAP1 00000c66: SWAP4 00000c67: ADD 00000c68: SWAP1 00000c69: MSTORE 00000c6a: KECCAK256 00000c6b: PUSH2 0x0c78 00000c6e: SWAP1 00000c6f: PUSH1 0x01 00000c71: ADD 00000c72: DUP4 00000c73: DUP4 00000c74: PUSH2 0x28ab 00000c77: JUMP 00000c78: JUMPDEST 00000c79: POP 00000c7a: DUP3 00000c7b: PUSH1 0x01 00000c7d: PUSH1 0x01 00000c7f: PUSH1 0xa0 00000c81: SHL 00000c82: SUB 00000c83: AND 00000c84: DUP5 00000c85: PUSH1 0x01 00000c87: PUSH1 0x01 00000c89: PUSH1 0xa0 00000c8b: SHL 00000c8c: SUB 00000c8d: AND 00000c8e: PUSH32 0xb373eedb8e9038a2dcba31f06b2735887c1a904125e5c9f0021ba41ed972318e 00000caf: DUP5 00000cb0: DUP5 00000cb1: PUSH1 0x40 00000cb3: MLOAD 00000cb4: PUSH2 0x0cbe 00000cb7: SWAP3 00000cb8: SWAP2 00000cb9: SWAP1 00000cba: PUSH2 0x2e19 00000cbd: JUMP 00000cbe: JUMPDEST 00000cbf: PUSH1 0x40 00000cc1: MLOAD 00000cc2: DUP1 00000cc3: SWAP2 00000cc4: SUB 00000cc5: SWAP1 00000cc6: LOG3 00000cc7: POP 00000cc8: POP 00000cc9: POP 00000cca: POP 00000ccb: JUMP 00000ccc: JUMPDEST 00000ccd: PUSH2 0x0cd4 00000cd0: PUSH2 0x1e18 00000cd3: JUMP 00000cd4: JUMPDEST 00000cd5: PUSH2 0x0cdc 00000cd8: PUSH2 0x1ef5 00000cdb: JUMP 00000cdc: JUMPDEST 00000cdd: PUSH1 0x00 00000cdf: PUSH2 0x0ce7 00000ce2: DUP3 00000ce3: PUSH2 0x1f2a 00000ce6: JUMP 00000ce7: JUMPDEST 00000ce8: SWAP1 00000ce9: POP 00000cea: PUSH1 0x00 00000cec: DUP3 00000ced: SGT 00000cee: DUP1 00000cef: ISZERO 00000cf0: PUSH2 0x0cf7 00000cf3: JUMPI 00000cf4: POP 00000cf5: DUP1 00000cf6: ISZERO 00000cf7: JUMPDEST 00000cf8: ISZERO 00000cf9: PUSH2 0x0d14 00000cfc: JUMPI 00000cfd: PUSH1 0x40 00000cff: MLOAD 00000d00: PUSH3 0x461bcd 00000d04: PUSH1 0xe5 00000d06: SHL 00000d07: DUP2 00000d08: MSTORE 00000d09: PUSH1 0x04 00000d0b: ADD 00000d0c: PUSH2 0x0984 00000d0f: SWAP1 00000d10: PUSH2 0x3099 00000d13: JUMP 00000d14: JUMPDEST 00000d15: PUSH1 0x01 00000d17: PUSH1 0x01 00000d19: PUSH1 0xa0 00000d1b: SHL 00000d1c: SUB 00000d1d: DUP4 00000d1e: AND 00000d1f: PUSH1 0x00 00000d21: DUP2 00000d22: DUP2 00000d23: MSTORE 00000d24: PUSH1 0x0c 00000d26: PUSH1 0x20 00000d28: MSTORE 00000d29: PUSH1 0x40 00000d2b: SWAP1 00000d2c: DUP2 00000d2d: SWAP1 00000d2e: KECCAK256 00000d2f: DUP4 00000d30: SWAP1 00000d31: SSTORE 00000d32: MLOAD 00000d33: PUSH32 0x8133e2bf34edab764b55c59d1d41f9df637e7c22828bb6b0a9d55b429d008a97 00000d54: SWAP1 00000d55: PUSH2 0x0d5f 00000d58: SWAP1 00000d59: DUP6 00000d5a: SWAP1 00000d5b: PUSH2 0x2e84 00000d5e: JUMP 00000d5f: JUMPDEST 00000d60: PUSH1 0x40 00000d62: MLOAD 00000d63: DUP1 00000d64: SWAP2 00000d65: SUB 00000d66: SWAP1 00000d67: LOG2 00000d68: POP 00000d69: POP 00000d6a: POP 00000d6b: JUMP 00000d6c: JUMPDEST 00000d6d: PUSH1 0x05 00000d6f: SLOAD 00000d70: PUSH1 0xff 00000d72: AND 00000d73: SWAP1 00000d74: JUMP 00000d75: JUMPDEST 00000d76: PUSH1 0x09 00000d78: PUSH1 0x20 00000d7a: MSTORE 00000d7b: PUSH1 0x00 00000d7d: SWAP1 00000d7e: DUP2 00000d7f: MSTORE 00000d80: PUSH1 0x40 00000d82: SWAP1 00000d83: KECCAK256 00000d84: SLOAD 00000d85: PUSH1 0xff 00000d87: AND 00000d88: DUP2 00000d89: JUMP 00000d8a: JUMPDEST 00000d8b: PUSH1 0x00 00000d8d: PUSH2 0x0957 00000d90: PUSH2 0x0d97 00000d93: PUSH2 0x1ba1 00000d96: JUMP 00000d97: JUMPDEST 00000d98: DUP5 00000d99: PUSH2 0x0c22 00000d9c: DUP6 00000d9d: PUSH1 0x01 00000d9f: PUSH1 0x00 00000da1: PUSH2 0x0da8 00000da4: PUSH2 0x1ba1 00000da7: JUMP 00000da8: JUMPDEST 00000da9: PUSH1 0x01 00000dab: PUSH1 0x01 00000dad: PUSH1 0xa0 00000daf: SHL 00000db0: SUB 00000db1: SWAP1 00000db2: DUP2 00000db3: AND 00000db4: DUP3 00000db5: MSTORE 00000db6: PUSH1 0x20 00000db8: DUP1 00000db9: DUP4 00000dba: ADD 00000dbb: SWAP4 00000dbc: SWAP1 00000dbd: SWAP4 00000dbe: MSTORE 00000dbf: PUSH1 0x40 00000dc1: SWAP2 00000dc2: DUP3 00000dc3: ADD 00000dc4: PUSH1 0x00 00000dc6: SWAP1 00000dc7: DUP2 00000dc8: KECCAK256 00000dc9: SWAP2 00000dca: DUP13 00000dcb: AND 00000dcc: DUP2 00000dcd: MSTORE 00000dce: SWAP3 00000dcf: MSTORE 00000dd0: SWAP1 00000dd1: KECCAK256 00000dd2: SLOAD 00000dd3: SWAP1 00000dd4: PUSH4 0xffffffff 00000dd9: PUSH2 0x1f41 00000ddc: AND 00000ddd: JUMP 00000dde: JUMPDEST 00000ddf: PUSH2 0x0de6 00000de2: PUSH2 0x1e18 00000de5: JUMP 00000de6: JUMPDEST 00000de7: PUSH2 0x0dee 00000dea: PUSH2 0x1ef5 00000ded: JUMP 00000dee: JUMPDEST 00000def: PUSH2 0x0df8 00000df2: DUP3 00000df3: DUP3 00000df4: PUSH2 0x1f66 00000df7: JUMP 00000df8: JUMPDEST 00000df9: POP 00000dfa: POP 00000dfb: JUMP 00000dfc: JUMPDEST 00000dfd: PUSH1 0x06 00000dff: SLOAD 00000e00: PUSH1 0x01 00000e02: PUSH1 0x01 00000e04: PUSH1 0xa0 00000e06: SHL 00000e07: SUB 00000e08: AND 00000e09: DUP2 00000e0a: JUMP 00000e0b: JUMPDEST 00000e0c: PUSH2 0x0e13 00000e0f: PUSH2 0x1e18 00000e12: JUMP 00000e13: JUMPDEST 00000e14: PUSH2 0x0e1b 00000e17: PUSH2 0x1ef5 00000e1a: JUMP 00000e1b: JUMPDEST 00000e1c: PUSH1 0x0b 00000e1e: DUP1 00000e1f: SLOAD 00000e20: PUSH1 0x01 00000e22: DUP2 00000e23: ADD 00000e24: DUP3 00000e25: SSTORE 00000e26: PUSH1 0x00 00000e28: SWAP2 00000e29: DUP3 00000e2a: MSTORE 00000e2b: PUSH32 0x0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9 00000e4c: ADD 00000e4d: DUP1 00000e4e: SLOAD 00000e4f: PUSH1 0x01 00000e51: PUSH1 0x01 00000e53: PUSH1 0xa0 00000e55: SHL 00000e56: SUB 00000e57: NOT 00000e58: AND 00000e59: PUSH1 0x01 00000e5b: PUSH1 0x01 00000e5d: PUSH1 0xa0 00000e5f: SHL 00000e60: SUB 00000e61: DUP5 00000e62: AND 00000e63: SWAP1 00000e64: DUP2 00000e65: OR 00000e66: SWAP1 00000e67: SWAP2 00000e68: SSTORE 00000e69: PUSH1 0x40 00000e6b: MLOAD 00000e6c: SWAP1 00000e6d: SWAP2 00000e6e: PUSH32 0x76da6cf8b40dd2b2c223a5956831e0ff4e75522538a86782108a0bbe1577e298 00000e8f: SWAP2 00000e90: LOG2 00000e91: POP 00000e92: JUMP 00000e93: JUMPDEST 00000e94: PUSH1 0x0d 00000e96: SLOAD 00000e97: DUP2 00000e98: JUMP 00000e99: JUMPDEST 00000e9a: PUSH1 0x00 00000e9c: PUSH1 0x01 00000e9e: JUMPDEST 00000e9f: PUSH1 0x01 00000ea1: PUSH1 0x01 00000ea3: PUSH1 0xa0 00000ea5: SHL 00000ea6: SUB 00000ea7: DUP4 00000ea8: AND 00000ea9: PUSH1 0x00 00000eab: SWAP1 00000eac: DUP2 00000ead: MSTORE 00000eae: PUSH1 0x09 00000eb0: PUSH1 0x20 00000eb2: MSTORE 00000eb3: PUSH1 0x40 00000eb5: SWAP1 00000eb6: KECCAK256 00000eb7: SLOAD 00000eb8: PUSH1 0xff 00000eba: AND 00000ebb: PUSH1 0x02 00000ebd: DUP2 00000ebe: GT 00000ebf: ISZERO 00000ec0: PUSH2 0x0ec5 00000ec3: JUMPI 00000ec4: INVALID 00000ec5: JUMPDEST 00000ec6: EQ 00000ec7: SWAP3 00000ec8: SWAP2 00000ec9: POP 00000eca: POP 00000ecb: JUMP 00000ecc: JUMPDEST 00000ecd: PUSH2 0x0ed4 00000ed0: PUSH2 0x1e18 00000ed3: JUMP 00000ed4: JUMPDEST 00000ed5: PUSH2 0x0edc 00000ed8: PUSH2 0x1ef5 00000edb: JUMP 00000edc: JUMPDEST 00000edd: PUSH1 0x00 00000edf: PUSH2 0x0ee7 00000ee2: DUP3 00000ee3: PUSH2 0x1f2a 00000ee6: JUMP 00000ee7: JUMPDEST 00000ee8: SWAP1 00000ee9: POP 00000eea: PUSH1 0x00 00000eec: DUP3 00000eed: SGT 00000eee: DUP1 00000eef: ISZERO 00000ef0: PUSH2 0x0ef7 00000ef3: JUMPI 00000ef4: POP 00000ef5: DUP1 00000ef6: ISZERO 00000ef7: JUMPDEST 00000ef8: ISZERO 00000ef9: PUSH2 0x0f14 00000efc: JUMPI 00000efd: PUSH1 0x40 00000eff: MLOAD 00000f00: PUSH3 0x461bcd 00000f04: PUSH1 0xe5 00000f06: SHL 00000f07: DUP2 00000f08: MSTORE 00000f09: PUSH1 0x04 00000f0b: ADD 00000f0c: PUSH2 0x0984 00000f0f: SWAP1 00000f10: PUSH2 0x3099 00000f13: JUMP 00000f14: JUMPDEST 00000f15: PUSH1 0x01 00000f17: PUSH1 0x01 00000f19: PUSH1 0xa0 00000f1b: SHL 00000f1c: SUB 00000f1d: DUP1 00000f1e: DUP6 00000f1f: AND 00000f20: PUSH1 0x00 00000f22: DUP2 00000f23: DUP2 00000f24: MSTORE 00000f25: PUSH1 0x0c 00000f27: PUSH1 0x20 00000f29: SWAP1 00000f2a: DUP2 00000f2b: MSTORE 00000f2c: PUSH1 0x40 00000f2e: DUP1 00000f2f: DUP4 00000f30: KECCAK256 00000f31: SWAP5 00000f32: DUP9 00000f33: AND 00000f34: DUP1 00000f35: DUP5 00000f36: MSTORE 00000f37: PUSH1 0x02 00000f39: SWAP1 00000f3a: SWAP6 00000f3b: ADD 00000f3c: SWAP1 00000f3d: SWAP2 00000f3e: MSTORE 00000f3f: SWAP1 00000f40: DUP2 00000f41: SWAP1 00000f42: KECCAK256 00000f43: DUP5 00000f44: SWAP1 00000f45: SSTORE 00000f46: MLOAD 00000f47: PUSH32 0x81a422e27f503e1b92cdb616a6e653aac10a8e0c3fa6832a58dc616c080fd7bd 00000f68: SWAP1 00000f69: PUSH2 0x0cbe 00000f6c: SWAP1 00000f6d: DUP7 00000f6e: SWAP1 00000f6f: PUSH2 0x2e84 00000f72: JUMP 00000f73: JUMPDEST 00000f74: PUSH1 0x00 00000f76: PUSH2 0x095b 00000f79: PUSH2 0x0b98 00000f7c: DUP4 00000f7d: PUSH2 0x2032 00000f80: JUMP 00000f81: JUMPDEST 00000f82: PUSH2 0x0f89 00000f85: PUSH2 0x1e18 00000f88: JUMP 00000f89: JUMPDEST 00000f8a: PUSH2 0x0f91 00000f8d: PUSH2 0x1ef5 00000f90: JUMP 00000f91: JUMPDEST 00000f92: PUSH2 0x0ffe 00000f95: DUP2 00000f96: PUSH1 0x0b 00000f98: DUP1 00000f99: SLOAD 00000f9a: DUP1 00000f9b: PUSH1 0x20 00000f9d: MUL 00000f9e: PUSH1 0x20 00000fa0: ADD 00000fa1: PUSH1 0x40 00000fa3: MLOAD 00000fa4: SWAP1 00000fa5: DUP2 00000fa6: ADD 00000fa7: PUSH1 0x40 00000fa9: MSTORE 00000faa: DUP1 00000fab: SWAP3 00000fac: SWAP2 00000fad: SWAP1 00000fae: DUP2 00000faf: DUP2 00000fb0: MSTORE 00000fb1: PUSH1 0x20 00000fb3: ADD 00000fb4: DUP3 00000fb5: DUP1 00000fb6: SLOAD 00000fb7: DUP1 00000fb8: ISZERO 00000fb9: PUSH2 0x0feb 00000fbc: JUMPI 00000fbd: PUSH1 0x20 00000fbf: MUL 00000fc0: DUP3 00000fc1: ADD 00000fc2: SWAP2 00000fc3: SWAP1 00000fc4: PUSH1 0x00 00000fc6: MSTORE 00000fc7: PUSH1 0x20 00000fc9: PUSH1 0x00 00000fcb: KECCAK256 00000fcc: SWAP1 00000fcd: JUMPDEST 00000fce: DUP2 00000fcf: SLOAD 00000fd0: PUSH1 0x01 00000fd2: PUSH1 0x01 00000fd4: PUSH1 0xa0 00000fd6: SHL 00000fd7: SUB 00000fd8: AND 00000fd9: DUP2 00000fda: MSTORE 00000fdb: PUSH1 0x01 00000fdd: SWAP1 00000fde: SWAP2 00000fdf: ADD 00000fe0: SWAP1 00000fe1: PUSH1 0x20 00000fe3: ADD 00000fe4: DUP1 00000fe5: DUP4 00000fe6: GT 00000fe7: PUSH2 0x0fcd 00000fea: JUMPI 00000feb: JUMPDEST 00000fec: POP 00000fed: POP 00000fee: POP 00000fef: POP 00000ff0: POP 00000ff1: PUSH2 0x204d 00000ff4: SWAP1 00000ff5: SWAP2 00000ff6: SWAP1 00000ff7: PUSH4 0xffffffff 00000ffc: AND 00000ffd: JUMP 00000ffe: JUMPDEST 00000fff: DUP1 00001000: MLOAD 00001001: PUSH2 0x1012 00001004: SWAP2 00001005: PUSH1 0x0b 00001007: SWAP2 00001008: PUSH1 0x20 0000100a: SWAP1 0000100b: SWAP2 0000100c: ADD 0000100d: SWAP1 0000100e: PUSH2 0x2929 00001011: JUMP 00001012: JUMPDEST 00001013: POP 00001014: PUSH1 0x40 00001016: MLOAD 00001017: PUSH1 0x01 00001019: PUSH1 0x01 0000101b: PUSH1 0xa0 0000101d: SHL 0000101e: SUB 0000101f: DUP3 00001020: AND 00001021: SWAP1 00001022: PUSH32 0xc605d0bf97f9b921340106a2e59f9428d5eb9039b16866159e0cdd2bf8e963df 00001043: SWAP1 00001044: PUSH1 0x00 00001046: SWAP1 00001047: LOG2 00001048: POP 00001049: JUMP 0000104a: JUMPDEST 0000104b: PUSH1 0x01 0000104d: PUSH1 0x01 0000104f: PUSH1 0xa0 00001051: SHL 00001052: SUB 00001053: AND 00001054: PUSH1 0x00 00001056: SWAP1 00001057: DUP2 00001058: MSTORE 00001059: PUSH1 0x20 0000105b: DUP2 0000105c: SWAP1 0000105d: MSTORE 0000105e: PUSH1 0x40 00001060: SWAP1 00001061: KECCAK256 00001062: SLOAD 00001063: SWAP1 00001064: JUMP 00001065: JUMPDEST 00001066: PUSH1 0x00 00001068: PUSH2 0x0b9d 0000106b: DUP3 0000106c: PUSH2 0x1074 0000106f: DUP6 00001070: PUSH2 0x2095 00001073: JUMP 00001074: JUMPDEST 00001075: SWAP1 00001076: PUSH4 0xffffffff 0000107b: PUSH2 0x210e 0000107e: AND 0000107f: JUMP 00001080: JUMPDEST 00001081: PUSH1 0x60 00001083: DUP1 00001084: PUSH2 0x108b 00001087: PUSH2 0x2124 0000108a: JUMP 0000108b: JUMPDEST 0000108c: PUSH8 0xffffffffffffffff 00001095: DUP2 00001096: GT 00001097: DUP1 00001098: ISZERO 00001099: PUSH2 0x10a1 0000109c: JUMPI 0000109d: PUSH1 0x00 0000109f: DUP1 000010a0: REVERT 000010a1: JUMPDEST 000010a2: POP 000010a3: PUSH1 0x40 000010a5: MLOAD 000010a6: SWAP1 000010a7: DUP1 000010a8: DUP3 000010a9: MSTORE 000010aa: DUP1 000010ab: PUSH1 0x20 000010ad: MUL 000010ae: PUSH1 0x20 000010b0: ADD 000010b1: DUP3 000010b2: ADD 000010b3: PUSH1 0x40 000010b5: MSTORE 000010b6: DUP1 000010b7: ISZERO 000010b8: PUSH2 0x10db 000010bb: JUMPI 000010bc: DUP2 000010bd: PUSH1 0x20 000010bf: ADD 000010c0: JUMPDEST 000010c1: PUSH2 0x10c8 000010c4: PUSH2 0x298a 000010c7: JUMP 000010c8: JUMPDEST 000010c9: DUP2 000010ca: MSTORE 000010cb: PUSH1 0x20 000010cd: ADD 000010ce: SWAP1 000010cf: PUSH1 0x01 000010d1: SWAP1 000010d2: SUB 000010d3: SWAP1 000010d4: DUP2 000010d5: PUSH2 0x10c0 000010d8: JUMPI 000010d9: SWAP1 000010da: POP 000010db: JUMPDEST 000010dc: POP 000010dd: SWAP1 000010de: POP 000010df: PUSH1 0x00 000010e1: DUP1 000010e2: JUMPDEST 000010e3: PUSH1 0x0b 000010e5: SLOAD 000010e6: DUP2 000010e7: LT 000010e8: ISZERO 000010e9: PUSH2 0x1235 000010ec: JUMPI 000010ed: PUSH1 0x00 000010ef: PUSH1 0x0b 000010f1: DUP3 000010f2: DUP2 000010f3: SLOAD 000010f4: DUP2 000010f5: LT 000010f6: PUSH2 0x10fb 000010f9: JUMPI 000010fa: INVALID 000010fb: JUMPDEST 000010fc: PUSH1 0x00 000010fe: SWAP2 000010ff: DUP3 00001100: MSTORE 00001101: PUSH1 0x20 00001103: DUP3 00001104: KECCAK256 00001105: ADD 00001106: SLOAD 00001107: PUSH1 0x01 00001109: PUSH1 0x01 0000110b: PUSH1 0xa0 0000110d: SHL 0000110e: SUB 0000110f: AND 00001110: SWAP2 00001111: POP 00001112: PUSH2 0x111a 00001115: DUP3 00001116: PUSH2 0x2032 00001119: JUMP 0000111a: JUMPDEST 0000111b: SGT 0000111c: ISZERO 0000111d: PUSH2 0x1189 00001120: JUMPI 00001121: PUSH1 0x40 00001123: DUP1 00001124: MLOAD 00001125: PUSH1 0xa0 00001127: DUP2 00001128: ADD 00001129: DUP3 0000112a: MSTORE 0000112b: PUSH1 0x01 0000112d: PUSH1 0x01 0000112f: PUSH1 0xa0 00001131: SHL 00001132: SUB 00001133: DUP4 00001134: AND 00001135: DUP2 00001136: MSTORE 00001137: PUSH1 0x00 00001139: PUSH1 0x20 0000113b: DUP3 0000113c: ADD 0000113d: MSTORE 0000113e: SWAP1 0000113f: DUP2 00001140: ADD 00001141: PUSH2 0x1149 00001144: DUP4 00001145: PUSH2 0x0f73 00001148: JUMP 00001149: JUMPDEST 0000114a: DUP2 0000114b: MSTORE 0000114c: PUSH1 0x20 0000114e: ADD 0000114f: PUSH1 0x00 00001151: PUSH1 0xff 00001153: AND 00001154: DUP2 00001155: MSTORE 00001156: PUSH1 0x20 00001158: ADD 00001159: PUSH1 0x40 0000115b: MLOAD 0000115c: DUP1 0000115d: PUSH1 0x20 0000115f: ADD 00001160: PUSH1 0x40 00001162: MSTORE 00001163: DUP1 00001164: PUSH1 0x00 00001166: DUP2 00001167: MSTORE 00001168: POP 00001169: DUP2 0000116a: MSTORE 0000116b: POP 0000116c: DUP5 0000116d: DUP5 0000116e: DUP2 0000116f: MLOAD 00001170: DUP2 00001171: LT 00001172: PUSH2 0x1177 00001175: JUMPI 00001176: INVALID 00001177: JUMPDEST 00001178: PUSH1 0x20 0000117a: SWAP1 0000117b: DUP2 0000117c: MUL 0000117d: SWAP2 0000117e: SWAP1 0000117f: SWAP2 00001180: ADD 00001181: ADD 00001182: MSTORE 00001183: PUSH1 0x01 00001185: SWAP1 00001186: SWAP3 00001187: ADD 00001188: SWAP2 00001189: JUMPDEST 0000118a: PUSH1 0x60 0000118c: PUSH2 0x1194 0000118f: DUP3 00001190: PUSH2 0x2095 00001193: JUMP 00001194: JUMPDEST 00001195: SWAP1 00001196: POP 00001197: PUSH1 0x00 00001199: JUMPDEST 0000119a: DUP2 0000119b: MLOAD 0000119c: DUP2 0000119d: LT 0000119e: ISZERO 0000119f: PUSH2 0x122a 000011a2: JUMPI 000011a3: PUSH1 0x00 000011a5: DUP3 000011a6: DUP3 000011a7: DUP2 000011a8: MLOAD 000011a9: DUP2 000011aa: LT 000011ab: PUSH2 0x11b0 000011ae: JUMPI 000011af: INVALID 000011b0: JUMPDEST 000011b1: PUSH1 0x20 000011b3: MUL 000011b4: PUSH1 0x20 000011b6: ADD 000011b7: ADD 000011b8: MLOAD 000011b9: SWAP1 000011ba: POP 000011bb: PUSH1 0x40 000011bd: MLOAD 000011be: DUP1 000011bf: PUSH1 0xa0 000011c1: ADD 000011c2: PUSH1 0x40 000011c4: MSTORE 000011c5: DUP1 000011c6: DUP6 000011c7: PUSH1 0x01 000011c9: PUSH1 0x01 000011cb: PUSH1 0xa0 000011cd: SHL 000011ce: SUB 000011cf: AND 000011d0: DUP2 000011d1: MSTORE 000011d2: PUSH1 0x20 000011d4: ADD 000011d5: DUP3 000011d6: PUSH1 0x01 000011d8: PUSH1 0x01 000011da: PUSH1 0xa0 000011dc: SHL 000011dd: SUB 000011de: AND 000011df: DUP2 000011e0: MSTORE 000011e1: PUSH1 0x20 000011e3: ADD 000011e4: PUSH2 0x11ed 000011e7: DUP7 000011e8: DUP5 000011e9: PUSH2 0x0b89 000011ec: JUMP 000011ed: JUMPDEST 000011ee: DUP2 000011ef: MSTORE 000011f0: PUSH1 0x01 000011f2: PUSH1 0x20 000011f4: DUP3 000011f5: ADD 000011f6: MSTORE 000011f7: PUSH1 0x40 000011f9: ADD 000011fa: PUSH2 0x1203 000011fd: DUP7 000011fe: DUP5 000011ff: PUSH2 0x21a9 00001202: JUMP 00001203: JUMPDEST 00001204: DUP2 00001205: MSTORE 00001206: POP 00001207: DUP8 00001208: DUP8 00001209: DUP2 0000120a: MLOAD 0000120b: DUP2 0000120c: LT 0000120d: PUSH2 0x1212 00001210: JUMPI 00001211: INVALID 00001212: JUMPDEST 00001213: PUSH1 0x20 00001215: SWAP1 00001216: DUP2 00001217: MUL 00001218: SWAP2 00001219: SWAP1 0000121a: SWAP2 0000121b: ADD 0000121c: ADD 0000121d: MSTORE 0000121e: POP 0000121f: PUSH1 0x01 00001221: SWAP5 00001222: DUP6 00001223: ADD 00001224: SWAP5 00001225: ADD 00001226: PUSH2 0x1199 00001229: JUMP 0000122a: JUMPDEST 0000122b: POP 0000122c: POP 0000122d: POP 0000122e: PUSH1 0x01 00001230: ADD 00001231: PUSH2 0x10e2 00001234: JUMP 00001235: JUMPDEST 00001236: POP 00001237: SWAP1 00001238: SWAP2 00001239: POP 0000123a: POP 0000123b: SWAP1 0000123c: JUMP 0000123d: JUMPDEST 0000123e: PUSH1 0x08 00001240: DUP2 00001241: DUP2 00001242: SLOAD 00001243: DUP2 00001244: LT 00001245: PUSH2 0x124a 00001248: JUMPI 00001249: INVALID 0000124a: JUMPDEST 0000124b: PUSH1 0x00 0000124d: SWAP2 0000124e: DUP3 0000124f: MSTORE 00001250: PUSH1 0x20 00001252: SWAP1 00001253: SWAP2 00001254: KECCAK256 00001255: ADD 00001256: SLOAD 00001257: PUSH1 0x01 00001259: PUSH1 0x01 0000125b: PUSH1 0xa0 0000125d: SHL 0000125e: SUB 0000125f: AND 00001260: SWAP1 00001261: POP 00001262: DUP2 00001263: JUMP 00001264: JUMPDEST 00001265: PUSH1 0x60 00001267: PUSH2 0x0b9d 0000126a: DUP4 0000126b: DUP4 0000126c: PUSH2 0x21a9 0000126f: JUMP 00001270: JUMPDEST 00001271: PUSH1 0x60 00001273: PUSH2 0x127a 00001276: PUSH2 0x1e18 00001279: JUMP 0000127a: JUMPDEST 0000127b: PUSH2 0x1282 0000127e: PUSH2 0x1ef5 00001281: JUMP 00001282: JUMPDEST 00001283: PUSH2 0x12cd 00001286: DUP4 00001287: DUP4 00001288: DUP1 00001289: DUP1 0000128a: PUSH1 0x1f 0000128c: ADD 0000128d: PUSH1 0x20 0000128f: DUP1 00001290: SWAP2 00001291: DIV 00001292: MUL 00001293: PUSH1 0x20 00001295: ADD 00001296: PUSH1 0x40 00001298: MLOAD 00001299: SWAP1 0000129a: DUP2 0000129b: ADD 0000129c: PUSH1 0x40 0000129e: MSTORE 0000129f: DUP1 000012a0: SWAP4 000012a1: SWAP3 000012a2: SWAP2 000012a3: SWAP1 000012a4: DUP2 000012a5: DUP2 000012a6: MSTORE 000012a7: PUSH1 0x20 000012a9: ADD 000012aa: DUP4 000012ab: DUP4 000012ac: DUP1 000012ad: DUP3 000012ae: DUP5 000012af: CALLDATACOPY 000012b0: PUSH1 0x00 000012b2: SWAP3 000012b3: ADD 000012b4: SWAP2 000012b5: SWAP1 000012b6: SWAP2 000012b7: MSTORE 000012b8: POP 000012b9: POP 000012ba: POP 000012bb: PUSH1 0x01 000012bd: PUSH1 0x01 000012bf: PUSH1 0xa0 000012c1: SHL 000012c2: SUB 000012c3: DUP9 000012c4: AND 000012c5: SWAP2 000012c6: SWAP1 000012c7: POP 000012c8: DUP7 000012c9: PUSH2 0x2267 000012cc: JUMP 000012cd: JUMPDEST 000012ce: SWAP1 000012cf: POP 000012d0: DUP4 000012d1: DUP6 000012d2: PUSH1 0x01 000012d4: PUSH1 0x01 000012d6: PUSH1 0xa0 000012d8: SHL 000012d9: SUB 000012da: AND 000012db: PUSH32 0x2a936dbabeaea30adc1ddad138b1958497988474bef8b09a29411f0105ab8ab2 000012fc: DUP6 000012fd: DUP6 000012fe: DUP6 000012ff: PUSH1 0x40 00001301: MLOAD 00001302: PUSH2 0x130d 00001305: SWAP4 00001306: SWAP3 00001307: SWAP2 00001308: SWAP1 00001309: PUSH2 0x2e2d 0000130c: JUMP 0000130d: JUMPDEST 0000130e: PUSH1 0x40 00001310: MLOAD 00001311: DUP1 00001312: SWAP2 00001313: SUB 00001314: SWAP1 00001315: LOG3 00001316: JUMPDEST 00001317: SWAP5 00001318: SWAP4 00001319: POP 0000131a: POP 0000131b: POP 0000131c: POP 0000131d: JUMP 0000131e: JUMPDEST 0000131f: PUSH1 0x04 00001321: DUP1 00001322: SLOAD 00001323: PUSH1 0x40 00001325: DUP1 00001326: MLOAD 00001327: PUSH1 0x20 00001329: PUSH1 0x1f 0000132b: PUSH1 0x02 0000132d: PUSH1 0x00 0000132f: NOT 00001330: PUSH2 0x0100 00001333: PUSH1 0x01 00001335: DUP9 00001336: AND 00001337: ISZERO 00001338: MUL 00001339: ADD 0000133a: SWAP1 0000133b: SWAP6 0000133c: AND 0000133d: SWAP5 0000133e: SWAP1 0000133f: SWAP5 00001340: DIV 00001341: SWAP4 00001342: DUP5 00001343: ADD 00001344: DUP2 00001345: SWAP1 00001346: DIV 00001347: DUP2 00001348: MUL 00001349: DUP3 0000134a: ADD 0000134b: DUP2 0000134c: ADD 0000134d: SWAP1 0000134e: SWAP3 0000134f: MSTORE 00001350: DUP3 00001351: DUP2 00001352: MSTORE 00001353: PUSH1 0x60 00001355: SWAP4 00001356: SWAP1 00001357: SWAP3 00001358: SWAP1 00001359: SWAP2 0000135a: DUP4 0000135b: ADD 0000135c: DUP3 0000135d: DUP3 0000135e: DUP1 0000135f: ISZERO 00001360: PUSH2 0x0938 00001363: JUMPI 00001364: DUP1 00001365: PUSH1 0x1f 00001367: LT 00001368: PUSH2 0x090d 0000136b: JUMPI 0000136c: PUSH2 0x0100 0000136f: DUP1 00001370: DUP4 00001371: SLOAD 00001372: DIV 00001373: MUL 00001374: DUP4 00001375: MSTORE 00001376: SWAP2 00001377: PUSH1 0x20 00001379: ADD 0000137a: SWAP2 0000137b: PUSH2 0x0938 0000137e: JUMP 0000137f: JUMPDEST 00001380: PUSH1 0x60 00001382: PUSH1 0x0b 00001384: DUP1 00001385: SLOAD 00001386: DUP1 00001387: PUSH1 0x20 00001389: MUL 0000138a: PUSH1 0x20 0000138c: ADD 0000138d: PUSH1 0x40 0000138f: MLOAD 00001390: SWAP1 00001391: DUP2 00001392: ADD 00001393: PUSH1 0x40 00001395: MSTORE 00001396: DUP1 00001397: SWAP3 00001398: SWAP2 00001399: SWAP1 0000139a: DUP2 0000139b: DUP2 0000139c: MSTORE 0000139d: PUSH1 0x20 0000139f: ADD 000013a0: DUP3 000013a1: DUP1 000013a2: SLOAD 000013a3: DUP1 000013a4: ISZERO 000013a5: PUSH2 0x0938 000013a8: JUMPI 000013a9: PUSH1 0x20 000013ab: MUL 000013ac: DUP3 000013ad: ADD 000013ae: SWAP2 000013af: SWAP1 000013b0: PUSH1 0x00 000013b2: MSTORE 000013b3: PUSH1 0x20 000013b5: PUSH1 0x00 000013b7: KECCAK256 000013b8: SWAP1 000013b9: JUMPDEST 000013ba: DUP2 000013bb: SLOAD 000013bc: PUSH1 0x01 000013be: PUSH1 0x01 000013c0: PUSH1 0xa0 000013c2: SHL 000013c3: SUB 000013c4: AND 000013c5: DUP2 000013c6: MSTORE 000013c7: PUSH1 0x01 000013c9: SWAP1 000013ca: SWAP2 000013cb: ADD 000013cc: SWAP1 000013cd: PUSH1 0x20 000013cf: ADD 000013d0: DUP1 000013d1: DUP4 000013d2: GT 000013d3: PUSH2 0x13b9 000013d6: JUMPI 000013d7: POP 000013d8: POP 000013d9: POP 000013da: POP 000013db: POP 000013dc: SWAP1 000013dd: POP 000013de: SWAP1 000013df: JUMP 000013e0: JUMPDEST 000013e1: PUSH2 0x13e8 000013e4: PUSH2 0x1e18 000013e7: JUMP 000013e8: JUMPDEST 000013e9: PUSH2 0x13f0 000013ec: PUSH2 0x1ef5 000013ef: JUMP 000013f0: JUMPDEST 000013f1: PUSH2 0x0df8 000013f4: DUP3 000013f5: DUP3 000013f6: PUSH2 0x228d 000013f9: JUMP 000013fa: JUMPDEST 000013fb: PUSH2 0x1402 000013fe: PUSH2 0x1c59 00001401: JUMP 00001402: JUMPDEST 00001403: PUSH1 0x0a 00001405: SLOAD 00001406: PUSH1 0xff 00001408: AND 00001409: ISZERO 0000140a: PUSH2 0x1425 0000140d: JUMPI 0000140e: PUSH1 0x40 00001410: MLOAD 00001411: PUSH3 0x461bcd 00001415: PUSH1 0xe5 00001417: SHL 00001418: DUP2 00001419: MSTORE 0000141a: PUSH1 0x04 0000141c: ADD 0000141d: PUSH2 0x0984 00001420: SWAP1 00001421: PUSH2 0x3425 00001424: JUMP 00001425: JUMPDEST 00001426: PUSH1 0x02 00001428: PUSH1 0x01 0000142a: PUSH1 0x01 0000142c: PUSH1 0xa0 0000142e: SHL 0000142f: SUB 00001430: DUP3 00001431: AND 00001432: PUSH1 0x00 00001434: SWAP1 00001435: DUP2 00001436: MSTORE 00001437: PUSH1 0x09 00001439: PUSH1 0x20 0000143b: MSTORE 0000143c: PUSH1 0x40 0000143e: SWAP1 0000143f: KECCAK256 00001440: SLOAD 00001441: PUSH1 0xff 00001443: AND 00001444: PUSH1 0x02 00001446: DUP2 00001447: GT 00001448: ISZERO 00001449: PUSH2 0x144e 0000144c: JUMPI 0000144d: INVALID 0000144e: JUMPDEST 0000144f: EQ 00001450: PUSH2 0x146b 00001453: JUMPI 00001454: PUSH1 0x40 00001456: MLOAD 00001457: PUSH3 0x461bcd 0000145b: PUSH1 0xe5 0000145d: SHL 0000145e: DUP2 0000145f: MSTORE 00001460: PUSH1 0x04 00001462: ADD 00001463: PUSH2 0x0984 00001466: SWAP1 00001467: PUSH2 0x30d0 0000146a: JUMP 0000146b: JUMPDEST 0000146c: DUP1 0000146d: PUSH1 0x01 0000146f: PUSH1 0x01 00001471: PUSH1 0xa0 00001473: SHL 00001474: SUB 00001475: AND 00001476: PUSH4 0x847ef08d 0000147b: PUSH1 0x40 0000147d: MLOAD 0000147e: DUP2 0000147f: PUSH4 0xffffffff 00001484: AND 00001485: PUSH1 0xe0 00001487: SHL 00001488: DUP2 00001489: MSTORE 0000148a: PUSH1 0x04 0000148c: ADD 0000148d: PUSH1 0x00 0000148f: PUSH1 0x40 00001491: MLOAD 00001492: DUP1 00001493: DUP4 00001494: SUB 00001495: DUP2 00001496: PUSH1 0x00 00001498: DUP8 00001499: DUP1 0000149a: EXTCODESIZE 0000149b: ISZERO 0000149c: DUP1 0000149d: ISZERO 0000149e: PUSH2 0x14a6 000014a1: JUMPI 000014a2: PUSH1 0x00 000014a4: DUP1 000014a5: REVERT 000014a6: JUMPDEST 000014a7: POP 000014a8: GAS 000014a9: CALL 000014aa: ISZERO 000014ab: DUP1 000014ac: ISZERO 000014ad: PUSH2 0x14ba 000014b0: JUMPI 000014b1: RETURNDATASIZE 000014b2: PUSH1 0x00 000014b4: DUP1 000014b5: RETURNDATACOPY 000014b6: RETURNDATASIZE 000014b7: PUSH1 0x00 000014b9: REVERT 000014ba: JUMPDEST 000014bb: POP 000014bc: POP 000014bd: POP 000014be: POP 000014bf: PUSH1 0x01 000014c1: PUSH1 0x01 000014c3: PUSH1 0xa0 000014c5: SHL 000014c6: SUB 000014c7: DUP2 000014c8: AND 000014c9: PUSH1 0x00 000014cb: SWAP1 000014cc: DUP2 000014cd: MSTORE 000014ce: PUSH1 0x09 000014d0: PUSH1 0x20 000014d2: MSTORE 000014d3: PUSH1 0x40 000014d5: DUP2 000014d6: KECCAK256 000014d7: DUP1 000014d8: SLOAD 000014d9: PUSH1 0xff 000014db: NOT 000014dc: AND 000014dd: PUSH1 0x01 000014df: DUP4 000014e0: MUL 000014e1: OR 000014e2: SWAP1 000014e3: SSTORE 000014e4: POP 000014e5: PUSH2 0x154f 000014e8: DUP2 000014e9: PUSH1 0x08 000014eb: DUP1 000014ec: SLOAD 000014ed: DUP1 000014ee: PUSH1 0x20 000014f0: MUL 000014f1: PUSH1 0x20 000014f3: ADD 000014f4: PUSH1 0x40 000014f6: MLOAD 000014f7: SWAP1 000014f8: DUP2 000014f9: ADD 000014fa: PUSH1 0x40 000014fc: MSTORE 000014fd: DUP1 000014fe: SWAP3 000014ff: SWAP2 00001500: SWAP1 00001501: DUP2 00001502: DUP2 00001503: MSTORE 00001504: PUSH1 0x20 00001506: ADD 00001507: DUP3 00001508: DUP1 00001509: SLOAD 0000150a: DUP1 0000150b: ISZERO 0000150c: PUSH2 0x0feb 0000150f: JUMPI 00001510: PUSH1 0x20 00001512: MUL 00001513: DUP3 00001514: ADD 00001515: SWAP2 00001516: SWAP1 00001517: PUSH1 0x00 00001519: MSTORE 0000151a: PUSH1 0x20 0000151c: PUSH1 0x00 0000151e: KECCAK256 0000151f: SWAP1 00001520: DUP2 00001521: SLOAD 00001522: PUSH1 0x01 00001524: PUSH1 0x01 00001526: PUSH1 0xa0 00001528: SHL 00001529: SUB 0000152a: AND 0000152b: DUP2 0000152c: MSTORE 0000152d: PUSH1 0x01 0000152f: SWAP1 00001530: SWAP2 00001531: ADD 00001532: SWAP1 00001533: PUSH1 0x20 00001535: ADD 00001536: DUP1 00001537: DUP4 00001538: GT 00001539: PUSH2 0x0fcd 0000153c: JUMPI 0000153d: POP 0000153e: POP 0000153f: POP 00001540: POP 00001541: POP 00001542: PUSH2 0x204d 00001545: SWAP1 00001546: SWAP2 00001547: SWAP1 00001548: PUSH4 0xffffffff 0000154d: AND 0000154e: JUMP 0000154f: JUMPDEST 00001550: DUP1 00001551: MLOAD 00001552: PUSH2 0x1563 00001555: SWAP2 00001556: PUSH1 0x08 00001558: SWAP2 00001559: PUSH1 0x20 0000155b: SWAP1 0000155c: SWAP2 0000155d: ADD 0000155e: SWAP1 0000155f: PUSH2 0x2929 00001562: JUMP 00001563: JUMPDEST 00001564: POP 00001565: PUSH1 0x40 00001567: MLOAD 00001568: PUSH1 0x01 0000156a: PUSH1 0x01 0000156c: PUSH1 0xa0 0000156e: SHL 0000156f: SUB 00001570: DUP3 00001571: AND 00001572: SWAP1 00001573: PUSH32 0x0a1ee69f55c33d8467c69ca59ce2007a737a88603d75392972520bf67cb513b8 00001594: SWAP1 00001595: PUSH1 0x00 00001597: SWAP1 00001598: LOG2 00001599: POP 0000159a: JUMP 0000159b: JUMPDEST 0000159c: PUSH1 0x00 0000159e: PUSH2 0x0957 000015a1: PUSH2 0x15a8 000015a4: PUSH2 0x1ba1 000015a7: JUMP 000015a8: JUMPDEST 000015a9: DUP5 000015aa: PUSH2 0x0c22 000015ad: DUP6 000015ae: PUSH1 0x40 000015b0: MLOAD 000015b1: DUP1 000015b2: PUSH1 0x60 000015b4: ADD 000015b5: PUSH1 0x40 000015b7: MSTORE 000015b8: DUP1 000015b9: PUSH1 0x25 000015bb: DUP2 000015bc: MSTORE 000015bd: PUSH1 0x20 000015bf: ADD 000015c0: PUSH2 0x3677 000015c3: PUSH1 0x25 000015c5: SWAP2 000015c6: CODECOPY 000015c7: PUSH1 0x01 000015c9: PUSH1 0x00 000015cb: PUSH2 0x15d2 000015ce: PUSH2 0x1ba1 000015d1: JUMP 000015d2: JUMPDEST 000015d3: PUSH1 0x01 000015d5: PUSH1 0x01 000015d7: PUSH1 0xa0 000015d9: SHL 000015da: SUB 000015db: SWAP1 000015dc: DUP2 000015dd: AND 000015de: DUP3 000015df: MSTORE 000015e0: PUSH1 0x20 000015e2: DUP1 000015e3: DUP4 000015e4: ADD 000015e5: SWAP4 000015e6: SWAP1 000015e7: SWAP4 000015e8: MSTORE 000015e9: PUSH1 0x40 000015eb: SWAP2 000015ec: DUP3 000015ed: ADD 000015ee: PUSH1 0x00 000015f0: SWAP1 000015f1: DUP2 000015f2: KECCAK256 000015f3: SWAP2 000015f4: DUP14 000015f5: AND 000015f6: DUP2 000015f7: MSTORE 000015f8: SWAP3 000015f9: MSTORE 000015fa: SWAP1 000015fb: KECCAK256 000015fc: SLOAD 000015fd: SWAP2 000015fe: SWAP1 000015ff: PUSH4 0xffffffff 00001604: PUSH2 0x1dec 00001607: AND 00001608: JUMP 00001609: JUMPDEST 0000160a: PUSH1 0x0a 0000160c: SLOAD 0000160d: PUSH1 0xff 0000160f: AND 00001610: DUP2 00001611: JUMP 00001612: JUMPDEST 00001613: PUSH2 0x161a 00001616: PUSH2 0x1e18 00001619: JUMP 0000161a: JUMPDEST 0000161b: PUSH1 0x0a 0000161d: SLOAD 0000161e: PUSH1 0xff 00001620: AND 00001621: PUSH2 0x163c 00001624: JUMPI 00001625: PUSH1 0x40 00001627: MLOAD 00001628: PUSH3 0x461bcd 0000162c: PUSH1 0xe5 0000162e: SHL 0000162f: DUP2 00001630: MSTORE 00001631: PUSH1 0x04 00001633: ADD 00001634: PUSH2 0x0984 00001637: SWAP1 00001638: PUSH2 0x3269 0000163b: JUMP 0000163c: JUMPDEST 0000163d: PUSH1 0x07 0000163f: SLOAD 00001640: PUSH1 0x01 00001642: PUSH1 0x01 00001644: PUSH1 0xa0 00001646: SHL 00001647: SUB 00001648: AND 00001649: CALLER 0000164a: EQ 0000164b: PUSH2 0x1666 0000164e: JUMPI 0000164f: PUSH1 0x40 00001651: MLOAD 00001652: PUSH3 0x461bcd 00001656: PUSH1 0xe5 00001658: SHL 00001659: DUP2 0000165a: MSTORE 0000165b: PUSH1 0x04 0000165d: ADD 0000165e: PUSH2 0x0984 00001661: SWAP1 00001662: PUSH2 0x32f9 00001665: JUMP 00001666: JUMPDEST 00001667: PUSH1 0x07 00001669: DUP1 0000166a: SLOAD 0000166b: PUSH1 0x01 0000166d: PUSH1 0x01 0000166f: PUSH1 0xa0 00001671: SHL 00001672: SUB 00001673: NOT 00001674: AND 00001675: SWAP1 00001676: SSTORE 00001677: PUSH1 0x0a 00001679: DUP1 0000167a: SLOAD 0000167b: PUSH1 0xff 0000167d: NOT 0000167e: AND 0000167f: SWAP1 00001680: SSTORE 00001681: JUMP 00001682: JUMPDEST 00001683: PUSH1 0x60 00001685: PUSH2 0x095b 00001688: DUP3 00001689: PUSH2 0x2095 0000168c: JUMP 0000168d: JUMPDEST 0000168e: PUSH1 0x00 00001690: PUSH2 0x0957 00001693: PUSH2 0x169a 00001696: PUSH2 0x1ba1 00001699: JUMP 0000169a: JUMPDEST 0000169b: DUP5 0000169c: DUP5 0000169d: PUSH2 0x1ccb 000016a0: JUMP 000016a1: JUMPDEST 000016a2: PUSH2 0x16a9 000016a5: PUSH2 0x1e18 000016a8: JUMP 000016a9: JUMPDEST 000016aa: PUSH2 0x16b1 000016ad: PUSH2 0x1ef5 000016b0: JUMP 000016b1: JUMPDEST 000016b2: PUSH2 0x16ca 000016b5: DUP2 000016b6: PUSH2 0x16be 000016b9: DUP5 000016ba: PUSH2 0x2095 000016bd: JUMP 000016be: JUMPDEST 000016bf: SWAP1 000016c0: PUSH4 0xffffffff 000016c5: PUSH2 0x204d 000016c8: AND 000016c9: JUMP 000016ca: JUMPDEST 000016cb: PUSH1 0x01 000016cd: PUSH1 0x01 000016cf: PUSH1 0xa0 000016d1: SHL 000016d2: SUB 000016d3: DUP4 000016d4: AND 000016d5: PUSH1 0x00 000016d7: SWAP1 000016d8: DUP2 000016d9: MSTORE 000016da: PUSH1 0x0c 000016dc: PUSH1 0x20 000016de: SWAP1 000016df: DUP2 000016e0: MSTORE 000016e1: PUSH1 0x40 000016e3: SWAP1 000016e4: SWAP2 000016e5: KECCAK256 000016e6: DUP3 000016e7: MLOAD 000016e8: PUSH2 0x16fb 000016eb: SWAP4 000016ec: PUSH1 0x01 000016ee: SWAP1 000016ef: SWAP3 000016f0: ADD 000016f1: SWAP3 000016f2: SWAP2 000016f3: SWAP1 000016f4: SWAP2 000016f5: ADD 000016f6: SWAP1 000016f7: PUSH2 0x2929 000016fa: JUMP 000016fb: JUMPDEST 000016fc: POP 000016fd: PUSH1 0x01 000016ff: PUSH1 0x01 00001701: PUSH1 0xa0 00001703: SHL 00001704: SUB 00001705: DUP1 00001706: DUP4 00001707: AND 00001708: PUSH1 0x00 0000170a: SWAP1 0000170b: DUP2 0000170c: MSTORE 0000170d: PUSH1 0x0c 0000170f: PUSH1 0x20 00001711: SWAP1 00001712: DUP2 00001713: MSTORE 00001714: PUSH1 0x40 00001716: DUP1 00001717: DUP4 00001718: KECCAK256 00001719: SWAP4 0000171a: DUP6 0000171b: AND 0000171c: DUP4 0000171d: MSTORE 0000171e: PUSH1 0x02 00001720: SWAP1 00001721: SWAP4 00001722: ADD 00001723: SWAP1 00001724: MSTORE 00001725: SWAP1 00001726: DUP2 00001727: KECCAK256 00001728: DUP2 00001729: DUP2 0000172a: SSTORE 0000172b: SWAP1 0000172c: PUSH2 0x1738 0000172f: PUSH1 0x01 00001731: DUP4 00001732: ADD 00001733: DUP3 00001734: PUSH2 0x29ce 00001737: JUMP 00001738: JUMPDEST 00001739: POP 0000173a: POP 0000173b: DUP1 0000173c: PUSH1 0x01 0000173e: PUSH1 0x01 00001740: PUSH1 0xa0 00001742: SHL 00001743: SUB 00001744: AND 00001745: DUP3 00001746: PUSH1 0x01 00001748: PUSH1 0x01 0000174a: PUSH1 0xa0 0000174c: SHL 0000174d: SUB 0000174e: AND 0000174f: PUSH32 0x5d0275f68d583838a7e2be68e3ef8ac2c1f9d4eeaa4b223360f4cd093a160d75 00001770: PUSH1 0x40 00001772: MLOAD 00001773: PUSH1 0x40 00001775: MLOAD 00001776: DUP1 00001777: SWAP2 00001778: SUB 00001779: SWAP1 0000177a: LOG3 0000177b: POP 0000177c: POP 0000177d: JUMP 0000177e: JUMPDEST 0000177f: PUSH1 0x60 00001781: PUSH1 0x08 00001783: DUP1 00001784: SLOAD 00001785: DUP1 00001786: PUSH1 0x20 00001788: MUL 00001789: PUSH1 0x20 0000178b: ADD 0000178c: PUSH1 0x40 0000178e: MLOAD 0000178f: SWAP1 00001790: DUP2 00001791: ADD 00001792: PUSH1 0x40 00001794: MSTORE 00001795: DUP1 00001796: SWAP3 00001797: SWAP2 00001798: SWAP1 00001799: DUP2 0000179a: DUP2 0000179b: MSTORE 0000179c: PUSH1 0x20 0000179e: ADD 0000179f: DUP3 000017a0: DUP1 000017a1: SLOAD 000017a2: DUP1 000017a3: ISZERO 000017a4: PUSH2 0x0938 000017a7: JUMPI 000017a8: PUSH1 0x20 000017aa: MUL 000017ab: DUP3 000017ac: ADD 000017ad: SWAP2 000017ae: SWAP1 000017af: PUSH1 0x00 000017b1: MSTORE 000017b2: PUSH1 0x20 000017b4: PUSH1 0x00 000017b6: KECCAK256 000017b7: SWAP1 000017b8: DUP2 000017b9: SLOAD 000017ba: PUSH1 0x01 000017bc: PUSH1 0x01 000017be: PUSH1 0xa0 000017c0: SHL 000017c1: SUB 000017c2: AND 000017c3: DUP2 000017c4: MSTORE 000017c5: PUSH1 0x01 000017c7: SWAP1 000017c8: SWAP2 000017c9: ADD 000017ca: SWAP1 000017cb: PUSH1 0x20 000017cd: ADD 000017ce: DUP1 000017cf: DUP4 000017d0: GT 000017d1: PUSH2 0x13b9 000017d4: JUMPI 000017d5: POP 000017d6: POP 000017d7: POP 000017d8: POP 000017d9: POP 000017da: SWAP1 000017db: POP 000017dc: SWAP1 000017dd: JUMP 000017de: JUMPDEST 000017df: PUSH2 0x17e6 000017e2: PUSH2 0x1e18 000017e5: JUMP 000017e6: JUMPDEST 000017e7: PUSH2 0x17ee 000017ea: PUSH2 0x1ef5 000017ed: JUMP 000017ee: JUMPDEST 000017ef: PUSH1 0x00 000017f1: DUP2 000017f2: SGT 000017f3: PUSH2 0x180e 000017f6: JUMPI 000017f7: PUSH1 0x40 000017f9: MLOAD 000017fa: PUSH3 0x461bcd 000017fe: PUSH1 0xe5 00001800: SHL 00001801: DUP2 00001802: MSTORE 00001803: PUSH1 0x04 00001805: ADD 00001806: PUSH2 0x0984 00001809: SWAP1 0000180a: PUSH2 0x30fe 0000180d: JUMP 0000180e: JUMPDEST 0000180f: PUSH1 0x0d 00001811: DUP2 00001812: SWAP1 00001813: SSTORE 00001814: PUSH1 0x40 00001816: MLOAD 00001817: PUSH32 0xc4e78b3245dc105eefced18655b978e194ff858545a1080f2888dc3b6ae8df0a 00001838: SWAP1 00001839: PUSH2 0x1843 0000183c: SWAP1 0000183d: DUP4 0000183e: SWAP1 0000183f: PUSH2 0x2e84 00001842: JUMP 00001843: JUMPDEST 00001844: PUSH1 0x40 00001846: MLOAD 00001847: DUP1 00001848: SWAP2 00001849: SUB 0000184a: SWAP1 0000184b: LOG1 0000184c: POP 0000184d: JUMP 0000184e: JUMPDEST 0000184f: PUSH1 0x0b 00001851: DUP2 00001852: DUP2 00001853: SLOAD 00001854: DUP2 00001855: LT 00001856: PUSH2 0x124a 00001859: JUMPI 0000185a: INVALID 0000185b: JUMPDEST 0000185c: PUSH2 0x1863 0000185f: PUSH2 0x1c59 00001862: JUMP 00001863: JUMPDEST 00001864: PUSH1 0x0a 00001866: SLOAD 00001867: PUSH1 0xff 00001869: AND 0000186a: ISZERO 0000186b: PUSH2 0x1886 0000186e: JUMPI 0000186f: PUSH1 0x40 00001871: MLOAD 00001872: PUSH3 0x461bcd 00001876: PUSH1 0xe5 00001878: SHL 00001879: DUP2 0000187a: MSTORE 0000187b: PUSH1 0x04 0000187d: ADD 0000187e: PUSH2 0x0984 00001881: SWAP1 00001882: PUSH2 0x3425 00001885: JUMP 00001886: JUMPDEST 00001887: PUSH1 0x01 00001889: PUSH1 0x01 0000188b: PUSH1 0x01 0000188d: PUSH1 0xa0 0000188f: SHL 00001890: SUB 00001891: DUP3 00001892: AND 00001893: PUSH1 0x00 00001895: SWAP1 00001896: DUP2 00001897: MSTORE 00001898: PUSH1 0x09 0000189a: PUSH1 0x20 0000189c: MSTORE 0000189d: PUSH1 0x40 0000189f: SWAP1 000018a0: KECCAK256 000018a1: SLOAD 000018a2: PUSH1 0xff 000018a4: AND 000018a5: PUSH1 0x02 000018a7: DUP2 000018a8: GT 000018a9: ISZERO 000018aa: PUSH2 0x18af 000018ad: JUMPI 000018ae: INVALID 000018af: JUMPDEST 000018b0: EQ 000018b1: PUSH2 0x18cc 000018b4: JUMPI 000018b5: PUSH1 0x40 000018b7: MLOAD 000018b8: PUSH3 0x461bcd 000018bc: PUSH1 0xe5 000018be: SHL 000018bf: DUP2 000018c0: MSTORE 000018c1: PUSH1 0x04 000018c3: ADD 000018c4: PUSH2 0x0984 000018c7: SWAP1 000018c8: PUSH2 0x34f9 000018cb: JUMP 000018cc: JUMPDEST 000018cd: PUSH1 0x01 000018cf: PUSH1 0x01 000018d1: PUSH1 0xa0 000018d3: SHL 000018d4: SUB 000018d5: DUP2 000018d6: AND 000018d7: PUSH1 0x00 000018d9: DUP2 000018da: DUP2 000018db: MSTORE 000018dc: PUSH1 0x09 000018de: PUSH1 0x20 000018e0: MSTORE 000018e1: PUSH1 0x40 000018e3: DUP1 000018e4: DUP3 000018e5: KECCAK256 000018e6: DUP1 000018e7: SLOAD 000018e8: PUSH1 0xff 000018ea: NOT 000018eb: AND 000018ec: SWAP1 000018ed: SSTORE 000018ee: MLOAD 000018ef: PUSH32 0xd6b18042563148f38d728c1c4d339ffd515b632d0ad2e1833b822412f3f4d877 00001910: SWAP2 00001911: SWAP1 00001912: LOG2 00001913: POP 00001914: JUMP 00001915: JUMPDEST 00001916: PUSH2 0x191d 00001919: PUSH2 0x1c59 0000191c: JUMP 0000191d: JUMPDEST 0000191e: PUSH1 0x0a 00001920: SLOAD 00001921: PUSH1 0xff 00001923: AND 00001924: ISZERO 00001925: PUSH2 0x1940 00001928: JUMPI 00001929: PUSH1 0x40 0000192b: MLOAD 0000192c: PUSH3 0x461bcd 00001930: PUSH1 0xe5 00001932: SHL 00001933: DUP2 00001934: MSTORE 00001935: PUSH1 0x04 00001937: ADD 00001938: PUSH2 0x0984 0000193b: SWAP1 0000193c: PUSH2 0x3425 0000193f: JUMP 00001940: JUMPDEST 00001941: PUSH1 0x06 00001943: DUP1 00001944: SLOAD 00001945: PUSH1 0x01 00001947: PUSH1 0x01 00001949: PUSH1 0xa0 0000194b: SHL 0000194c: SUB 0000194d: DUP4 0000194e: DUP2 0000194f: AND 00001950: PUSH1 0x01 00001952: PUSH1 0x01 00001954: PUSH1 0xa0 00001956: SHL 00001957: SUB 00001958: NOT 00001959: DUP4 0000195a: AND 0000195b: OR 0000195c: SWAP1 0000195d: SWAP3 0000195e: SSTORE 0000195f: PUSH1 0x40 00001961: MLOAD 00001962: SWAP2 00001963: AND 00001964: SWAP1 00001965: PUSH32 0x43fcfef38622d6a5b118be09c27a6ed8cbdbfca21f0ea9245412ce8031c0423c 00001986: SWAP1 00001987: PUSH2 0x1993 0000198a: SWAP1 0000198b: DUP5 0000198c: SWAP1 0000198d: DUP5 0000198e: SWAP1 0000198f: PUSH2 0x2d03 00001992: JUMP 00001993: JUMPDEST 00001994: PUSH1 0x40 00001996: MLOAD 00001997: DUP1 00001998: SWAP2 00001999: SUB 0000199a: SWAP1 0000199b: LOG1 0000199c: POP 0000199d: POP 0000199e: JUMP 0000199f: JUMPDEST 000019a0: PUSH1 0x07 000019a2: SLOAD 000019a3: PUSH1 0x01 000019a5: PUSH1 0x01 000019a7: PUSH1 0xa0 000019a9: SHL 000019aa: SUB 000019ab: AND 000019ac: DUP2 000019ad: JUMP 000019ae: JUMPDEST 000019af: PUSH1 0x00 000019b1: PUSH1 0x02 000019b3: PUSH2 0x0e9e 000019b6: JUMP 000019b7: JUMPDEST 000019b8: PUSH1 0x01 000019ba: PUSH1 0x01 000019bc: PUSH1 0xa0 000019be: SHL 000019bf: SUB 000019c0: SWAP2 000019c1: DUP3 000019c2: AND 000019c3: PUSH1 0x00 000019c5: SWAP1 000019c6: DUP2 000019c7: MSTORE 000019c8: PUSH1 0x01 000019ca: PUSH1 0x20 000019cc: SWAP1 000019cd: DUP2 000019ce: MSTORE 000019cf: PUSH1 0x40 000019d1: DUP1 000019d2: DUP4 000019d3: KECCAK256 000019d4: SWAP4 000019d5: SWAP1 000019d6: SWAP5 000019d7: AND 000019d8: DUP3 000019d9: MSTORE 000019da: SWAP2 000019db: SWAP1 000019dc: SWAP2 000019dd: MSTORE 000019de: KECCAK256 000019df: SLOAD 000019e0: SWAP1 000019e1: JUMP 000019e2: JUMPDEST 000019e3: PUSH1 0x00 000019e5: PUSH2 0x095b 000019e8: DUP3 000019e9: PUSH1 0x0b 000019eb: DUP1 000019ec: SLOAD 000019ed: DUP1 000019ee: PUSH1 0x20 000019f0: MUL 000019f1: PUSH1 0x20 000019f3: ADD 000019f4: PUSH1 0x40 000019f6: MLOAD 000019f7: SWAP1 000019f8: DUP2 000019f9: ADD 000019fa: PUSH1 0x40 000019fc: MSTORE 000019fd: DUP1 000019fe: SWAP3 000019ff: SWAP2 00001a00: SWAP1 00001a01: DUP2 00001a02: DUP2 00001a03: MSTORE 00001a04: PUSH1 0x20 00001a06: ADD 00001a07: DUP3 00001a08: DUP1 00001a09: SLOAD 00001a0a: DUP1 00001a0b: ISZERO 00001a0c: PUSH2 0x1a3e 00001a0f: JUMPI 00001a10: PUSH1 0x20 00001a12: MUL 00001a13: DUP3 00001a14: ADD 00001a15: SWAP2 00001a16: SWAP1 00001a17: PUSH1 0x00 00001a19: MSTORE 00001a1a: PUSH1 0x20 00001a1c: PUSH1 0x00 00001a1e: KECCAK256 00001a1f: SWAP1 00001a20: JUMPDEST 00001a21: DUP2 00001a22: SLOAD 00001a23: PUSH1 0x01 00001a25: PUSH1 0x01 00001a27: PUSH1 0xa0 00001a29: SHL 00001a2a: SUB 00001a2b: AND 00001a2c: DUP2 00001a2d: MSTORE 00001a2e: PUSH1 0x01 00001a30: SWAP1 00001a31: SWAP2 00001a32: ADD 00001a33: SWAP1 00001a34: PUSH1 0x20 00001a36: ADD 00001a37: DUP1 00001a38: DUP4 00001a39: GT 00001a3a: PUSH2 0x1a20 00001a3d: JUMPI 00001a3e: JUMPDEST 00001a3f: POP 00001a40: POP 00001a41: POP 00001a42: POP 00001a43: POP 00001a44: PUSH2 0x210e 00001a47: SWAP1 00001a48: SWAP2 00001a49: SWAP1 00001a4a: PUSH4 0xffffffff 00001a4f: AND 00001a50: JUMP 00001a51: JUMPDEST 00001a52: PUSH2 0x1a59 00001a55: PUSH2 0x1e18 00001a58: JUMP 00001a59: JUMPDEST 00001a5a: PUSH2 0x1a61 00001a5d: PUSH2 0x1ef5 00001a60: JUMP 00001a61: JUMPDEST 00001a62: PUSH1 0x01 00001a64: PUSH1 0x01 00001a66: PUSH1 0xa0 00001a68: SHL 00001a69: SUB 00001a6a: DUP3 00001a6b: DUP2 00001a6c: AND 00001a6d: PUSH1 0x00 00001a6f: DUP2 00001a70: DUP2 00001a71: MSTORE 00001a72: PUSH1 0x0c 00001a74: PUSH1 0x20 00001a76: SWAP1 00001a77: DUP2 00001a78: MSTORE 00001a79: PUSH1 0x40 00001a7b: DUP1 00001a7c: DUP4 00001a7d: KECCAK256 00001a7e: PUSH1 0x01 00001a80: SWAP1 00001a81: DUP2 00001a82: ADD 00001a83: DUP1 00001a84: SLOAD 00001a85: SWAP2 00001a86: DUP3 00001a87: ADD 00001a88: DUP2 00001a89: SSTORE 00001a8a: DUP5 00001a8b: MSTORE 00001a8c: SWAP2 00001a8d: DUP4 00001a8e: KECCAK256 00001a8f: SWAP1 00001a90: SWAP2 00001a91: ADD 00001a92: DUP1 00001a93: SLOAD 00001a94: PUSH1 0x01 00001a96: PUSH1 0x01 00001a98: PUSH1 0xa0 00001a9a: SHL 00001a9b: SUB 00001a9c: NOT 00001a9d: AND 00001a9e: SWAP5 00001a9f: DUP7 00001aa0: AND 00001aa1: SWAP5 00001aa2: DUP6 00001aa3: OR 00001aa4: SWAP1 00001aa5: SSTORE 00001aa6: MLOAD 00001aa7: PUSH32 0xf71324fa78e1894b364a1fc8d0535c4208f28c7b380f752afe00c8ce386023fb 00001ac8: SWAP2 00001ac9: SWAP1 00001aca: LOG3 00001acb: POP 00001acc: POP 00001acd: JUMP 00001ace: JUMPDEST 00001acf: PUSH1 0x00 00001ad1: DUP1 00001ad2: PUSH2 0x1ada 00001ad5: DUP4 00001ad6: PUSH2 0x0f73 00001ad9: JUMP 00001ada: JUMPDEST 00001adb: SWAP1 00001adc: POP 00001add: PUSH1 0x60 00001adf: PUSH2 0x1ae7 00001ae2: DUP5 00001ae3: PUSH2 0x2095 00001ae6: JUMP 00001ae7: JUMPDEST 00001ae8: SWAP1 00001ae9: POP 00001aea: PUSH1 0x00 00001aec: JUMPDEST 00001aed: DUP2 00001aee: MLOAD 00001aef: DUP2 00001af0: LT 00001af1: ISZERO 00001af2: PUSH2 0x1b2c 00001af5: JUMPI 00001af6: PUSH2 0x1b22 00001af9: PUSH2 0x1b15 00001afc: DUP7 00001afd: DUP5 00001afe: DUP5 00001aff: DUP2 00001b00: MLOAD 00001b01: DUP2 00001b02: LT 00001b03: PUSH2 0x1b08 00001b06: JUMPI 00001b07: INVALID 00001b08: JUMPDEST 00001b09: PUSH1 0x20 00001b0b: MUL 00001b0c: PUSH1 0x20 00001b0e: ADD 00001b0f: ADD 00001b10: MLOAD 00001b11: PUSH2 0x0b89 00001b14: JUMP 00001b15: JUMPDEST 00001b16: DUP5 00001b17: SWAP1 00001b18: PUSH4 0xffffffff 00001b1d: PUSH2 0x236f 00001b20: AND 00001b21: JUMP 00001b22: JUMPDEST 00001b23: SWAP3 00001b24: POP 00001b25: PUSH1 0x01 00001b27: ADD 00001b28: PUSH2 0x1aec 00001b2b: JUMP 00001b2c: JUMPDEST 00001b2d: POP 00001b2e: SWAP1 00001b2f: SWAP4 00001b30: SWAP3 00001b31: POP 00001b32: POP 00001b33: POP 00001b34: JUMP 00001b35: JUMPDEST 00001b36: PUSH1 0x05 00001b38: SLOAD 00001b39: PUSH2 0x0100 00001b3c: SWAP1 00001b3d: DIV 00001b3e: PUSH1 0x01 00001b40: PUSH1 0x01 00001b42: PUSH1 0xa0 00001b44: SHL 00001b45: SUB 00001b46: AND 00001b47: DUP2 00001b48: JUMP 00001b49: JUMPDEST 00001b4a: PUSH2 0x1b51 00001b4d: PUSH2 0x1e18 00001b50: JUMP 00001b51: JUMPDEST 00001b52: PUSH1 0x0a 00001b54: SLOAD 00001b55: PUSH1 0xff 00001b57: AND 00001b58: ISZERO 00001b59: PUSH2 0x1b74 00001b5c: JUMPI 00001b5d: PUSH1 0x40 00001b5f: MLOAD 00001b60: PUSH3 0x461bcd 00001b64: PUSH1 0xe5 00001b66: SHL 00001b67: DUP2 00001b68: MSTORE 00001b69: PUSH1 0x04 00001b6b: ADD 00001b6c: PUSH2 0x0984 00001b6f: SWAP1 00001b70: PUSH2 0x2e8d 00001b73: JUMP 00001b74: JUMPDEST 00001b75: PUSH1 0x07 00001b77: DUP1 00001b78: SLOAD 00001b79: PUSH1 0x01 00001b7b: PUSH1 0x01 00001b7d: PUSH1 0xa0 00001b7f: SHL 00001b80: SUB 00001b81: NOT 00001b82: AND 00001b83: CALLER 00001b84: OR 00001b85: SWAP1 00001b86: SSTORE 00001b87: PUSH1 0x0a 00001b89: DUP1 00001b8a: SLOAD 00001b8b: PUSH1 0xff 00001b8d: NOT 00001b8e: AND 00001b8f: PUSH1 0x01 00001b91: OR 00001b92: SWAP1 00001b93: SSTORE 00001b94: JUMP 00001b95: JUMPDEST 00001b96: PUSH8 0x0de0b6b3a7640000 00001b9f: SWAP1 00001ba0: JUMP 00001ba1: JUMPDEST 00001ba2: CALLER 00001ba3: SWAP1 00001ba4: JUMP 00001ba5: JUMPDEST 00001ba6: PUSH1 0x01 00001ba8: PUSH1 0x01 00001baa: PUSH1 0xa0 00001bac: SHL 00001bad: SUB 00001bae: DUP4 00001baf: AND 00001bb0: PUSH2 0x1bcb 00001bb3: JUMPI 00001bb4: PUSH1 0x40 00001bb6: MLOAD 00001bb7: PUSH3 0x461bcd 00001bbb: PUSH1 0xe5 00001bbd: SHL 00001bbe: DUP2 00001bbf: MSTORE 00001bc0: PUSH1 0x04 00001bc2: ADD 00001bc3: PUSH2 0x0984 00001bc6: SWAP1 00001bc7: PUSH2 0x3366 00001bca: JUMP 00001bcb: JUMPDEST 00001bcc: PUSH1 0x01 00001bce: PUSH1 0x01 00001bd0: PUSH1 0xa0 00001bd2: SHL 00001bd3: SUB 00001bd4: DUP3 00001bd5: AND 00001bd6: PUSH2 0x1bf1 00001bd9: JUMPI 00001bda: PUSH1 0x40 00001bdc: MLOAD 00001bdd: PUSH3 0x461bcd 00001be1: PUSH1 0xe5 00001be3: SHL 00001be4: DUP2 00001be5: MSTORE 00001be6: PUSH1 0x04 00001be8: ADD 00001be9: PUSH2 0x0984 00001bec: SWAP1 00001bed: PUSH2 0x2f99 00001bf0: JUMP 00001bf1: JUMPDEST 00001bf2: PUSH1 0x01 00001bf4: PUSH1 0x01 00001bf6: PUSH1 0xa0 00001bf8: SHL 00001bf9: SUB 00001bfa: DUP1 00001bfb: DUP5 00001bfc: AND 00001bfd: PUSH1 0x00 00001bff: DUP2 00001c00: DUP2 00001c01: MSTORE 00001c02: PUSH1 0x01 00001c04: PUSH1 0x20 00001c06: SWAP1 00001c07: DUP2 00001c08: MSTORE 00001c09: PUSH1 0x40 00001c0b: DUP1 00001c0c: DUP4 00001c0d: KECCAK256 00001c0e: SWAP5 00001c0f: DUP8 00001c10: AND 00001c11: DUP1 00001c12: DUP5 00001c13: MSTORE 00001c14: SWAP5 00001c15: SWAP1 00001c16: SWAP2 00001c17: MSTORE 00001c18: SWAP1 00001c19: DUP2 00001c1a: SWAP1 00001c1b: KECCAK256 00001c1c: DUP5 00001c1d: SWAP1 00001c1e: SSTORE 00001c1f: MLOAD 00001c20: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 00001c41: SWAP1 00001c42: PUSH2 0x1c4c 00001c45: SWAP1 00001c46: DUP6 00001c47: SWAP1 00001c48: PUSH2 0x2e84 00001c4b: JUMP 00001c4c: JUMPDEST 00001c4d: PUSH1 0x40 00001c4f: MLOAD 00001c50: DUP1 00001c51: SWAP2 00001c52: SUB 00001c53: SWAP1 00001c54: LOG3 00001c55: POP 00001c56: POP 00001c57: POP 00001c58: JUMP 00001c59: JUMPDEST 00001c5a: PUSH1 0x06 00001c5c: SLOAD 00001c5d: PUSH1 0x01 00001c5f: PUSH1 0x01 00001c61: PUSH1 0xa0 00001c63: SHL 00001c64: SUB 00001c65: AND 00001c66: CALLER 00001c67: EQ 00001c68: PUSH2 0x1c83 00001c6b: JUMPI 00001c6c: PUSH1 0x40 00001c6e: MLOAD 00001c6f: PUSH3 0x461bcd 00001c73: PUSH1 0xe5 00001c75: SHL 00001c76: DUP2 00001c77: MSTORE 00001c78: PUSH1 0x04 00001c7a: ADD 00001c7b: PUSH2 0x0984 00001c7e: SWAP1 00001c7f: PUSH2 0x3495 00001c82: JUMP 00001c83: JUMPDEST 00001c84: JUMP 00001c85: JUMPDEST 00001c86: PUSH1 0x01 00001c88: PUSH1 0x01 00001c8a: PUSH1 0xa0 00001c8c: SHL 00001c8d: SUB 00001c8e: SWAP2 00001c8f: DUP3 00001c90: AND 00001c91: PUSH1 0x00 00001c93: SWAP1 00001c94: DUP2 00001c95: MSTORE 00001c96: PUSH1 0x0c 00001c98: PUSH1 0x20 00001c9a: SWAP1 00001c9b: DUP2 00001c9c: MSTORE 00001c9d: PUSH1 0x40 00001c9f: DUP1 00001ca0: DUP4 00001ca1: KECCAK256 00001ca2: SWAP4 00001ca3: SWAP1 00001ca4: SWAP5 00001ca5: AND 00001ca6: DUP3 00001ca7: MSTORE 00001ca8: PUSH1 0x02 00001caa: SWAP1 00001cab: SWAP3 00001cac: ADD 00001cad: SWAP1 00001cae: SWAP2 00001caf: MSTORE 00001cb0: KECCAK256 00001cb1: SLOAD 00001cb2: SWAP1 00001cb3: JUMP 00001cb4: JUMPDEST 00001cb5: PUSH1 0x00 00001cb7: PUSH2 0x095b 00001cba: PUSH1 0x0d 00001cbc: SLOAD 00001cbd: DUP4 00001cbe: PUSH2 0x23b5 00001cc1: SWAP1 00001cc2: SWAP2 00001cc3: SWAP1 00001cc4: PUSH4 0xffffffff 00001cc9: AND 00001cca: JUMP 00001ccb: JUMPDEST 00001ccc: PUSH1 0x01 00001cce: PUSH1 0x01 00001cd0: PUSH1 0xa0 00001cd2: SHL 00001cd3: SUB 00001cd4: DUP4 00001cd5: AND 00001cd6: PUSH2 0x1cf1 00001cd9: JUMPI 00001cda: PUSH1 0x40 00001cdc: MLOAD 00001cdd: PUSH3 0x461bcd 00001ce1: PUSH1 0xe5 00001ce3: SHL 00001ce4: DUP2 00001ce5: MSTORE 00001ce6: PUSH1 0x04 00001ce8: ADD 00001ce9: PUSH2 0x0984 00001cec: SWAP1 00001ced: PUSH2 0x3321 00001cf0: JUMP 00001cf1: JUMPDEST 00001cf2: PUSH1 0x01 00001cf4: PUSH1 0x01 00001cf6: PUSH1 0xa0 00001cf8: SHL 00001cf9: SUB 00001cfa: DUP3 00001cfb: AND 00001cfc: PUSH2 0x1d17 00001cff: JUMPI 00001d00: PUSH1 0x40 00001d02: MLOAD 00001d03: PUSH3 0x461bcd 00001d07: PUSH1 0xe5 00001d09: SHL 00001d0a: DUP2 00001d0b: MSTORE 00001d0c: PUSH1 0x04 00001d0e: ADD 00001d0f: PUSH2 0x0984 00001d12: SWAP1 00001d13: PUSH2 0x2eb9 00001d16: JUMP 00001d17: JUMPDEST 00001d18: PUSH2 0x1d22 00001d1b: DUP4 00001d1c: DUP4 00001d1d: DUP4 00001d1e: PUSH2 0x23d8 00001d21: JUMP 00001d22: JUMPDEST 00001d23: PUSH2 0x1d65 00001d26: DUP2 00001d27: PUSH1 0x40 00001d29: MLOAD 00001d2a: DUP1 00001d2b: PUSH1 0x60 00001d2d: ADD 00001d2e: PUSH1 0x40 00001d30: MSTORE 00001d31: DUP1 00001d32: PUSH1 0x26 00001d34: DUP2 00001d35: MSTORE 00001d36: PUSH1 0x20 00001d38: ADD 00001d39: PUSH2 0x3600 00001d3c: PUSH1 0x26 00001d3e: SWAP2 00001d3f: CODECOPY 00001d40: PUSH1 0x01 00001d42: PUSH1 0x01 00001d44: PUSH1 0xa0 00001d46: SHL 00001d47: SUB 00001d48: DUP7 00001d49: AND 00001d4a: PUSH1 0x00 00001d4c: SWAP1 00001d4d: DUP2 00001d4e: MSTORE 00001d4f: PUSH1 0x20 00001d51: DUP2 00001d52: SWAP1 00001d53: MSTORE 00001d54: PUSH1 0x40 00001d56: SWAP1 00001d57: KECCAK256 00001d58: SLOAD 00001d59: SWAP2 00001d5a: SWAP1 00001d5b: PUSH4 0xffffffff 00001d60: PUSH2 0x1dec 00001d63: AND 00001d64: JUMP 00001d65: JUMPDEST 00001d66: PUSH1 0x01 00001d68: PUSH1 0x01 00001d6a: PUSH1 0xa0 00001d6c: SHL 00001d6d: SUB 00001d6e: DUP1 00001d6f: DUP6 00001d70: AND 00001d71: PUSH1 0x00 00001d73: SWAP1 00001d74: DUP2 00001d75: MSTORE 00001d76: PUSH1 0x20 00001d78: DUP2 00001d79: SWAP1 00001d7a: MSTORE 00001d7b: PUSH1 0x40 00001d7d: DUP1 00001d7e: DUP3 00001d7f: KECCAK256 00001d80: SWAP4 00001d81: SWAP1 00001d82: SWAP4 00001d83: SSTORE 00001d84: SWAP1 00001d85: DUP5 00001d86: AND 00001d87: DUP2 00001d88: MSTORE 00001d89: KECCAK256 00001d8a: SLOAD 00001d8b: PUSH2 0x1d9a 00001d8e: SWAP1 00001d8f: DUP3 00001d90: PUSH4 0xffffffff 00001d95: PUSH2 0x1f41 00001d98: AND 00001d99: JUMP 00001d9a: JUMPDEST 00001d9b: PUSH1 0x01 00001d9d: PUSH1 0x01 00001d9f: PUSH1 0xa0 00001da1: SHL 00001da2: SUB 00001da3: DUP1 00001da4: DUP5 00001da5: AND 00001da6: PUSH1 0x00 00001da8: DUP2 00001da9: DUP2 00001daa: MSTORE 00001dab: PUSH1 0x20 00001dad: DUP2 00001dae: SWAP1 00001daf: MSTORE 00001db0: PUSH1 0x40 00001db2: SWAP1 00001db3: DUP2 00001db4: SWAP1 00001db5: KECCAK256 00001db6: SWAP4 00001db7: SWAP1 00001db8: SWAP4 00001db9: SSTORE 00001dba: SWAP2 00001dbb: MLOAD 00001dbc: SWAP1 00001dbd: DUP6 00001dbe: AND 00001dbf: SWAP1 00001dc0: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00001de1: SWAP1 00001de2: PUSH2 0x1c4c 00001de5: SWAP1 00001de6: DUP6 00001de7: SWAP1 00001de8: PUSH2 0x2e84 00001deb: JUMP 00001dec: JUMPDEST 00001ded: PUSH1 0x00 00001def: DUP2 00001df0: DUP5 00001df1: DUP5 00001df2: GT 00001df3: ISZERO 00001df4: PUSH2 0x1e10 00001df7: JUMPI 00001df8: PUSH1 0x40 00001dfa: MLOAD 00001dfb: PUSH3 0x461bcd 00001dff: PUSH1 0xe5 00001e01: SHL 00001e02: DUP2 00001e03: MSTORE 00001e04: PUSH1 0x04 00001e06: ADD 00001e07: PUSH2 0x0984 00001e0a: SWAP2 00001e0b: SWAP1 00001e0c: PUSH2 0x2e5d 00001e0f: JUMP 00001e10: JUMPDEST 00001e11: POP 00001e12: POP 00001e13: POP 00001e14: SWAP1 00001e15: SUB 00001e16: SWAP1 00001e17: JUMP 00001e18: JUMPDEST 00001e19: PUSH1 0x02 00001e1b: CALLER 00001e1c: PUSH1 0x00 00001e1e: SWAP1 00001e1f: DUP2 00001e20: MSTORE 00001e21: PUSH1 0x09 00001e23: PUSH1 0x20 00001e25: MSTORE 00001e26: PUSH1 0x40 00001e28: SWAP1 00001e29: KECCAK256 00001e2a: SLOAD 00001e2b: PUSH1 0xff 00001e2d: AND 00001e2e: PUSH1 0x02 00001e30: DUP2 00001e31: GT 00001e32: ISZERO 00001e33: PUSH2 0x1e38 00001e36: JUMPI 00001e37: INVALID 00001e38: JUMPDEST 00001e39: EQ 00001e3a: PUSH2 0x1e55 00001e3d: JUMPI 00001e3e: PUSH1 0x40 00001e40: MLOAD 00001e41: PUSH3 0x461bcd 00001e45: PUSH1 0xe5 00001e47: SHL 00001e48: DUP2 00001e49: MSTORE 00001e4a: PUSH1 0x04 00001e4c: ADD 00001e4d: PUSH2 0x0984 00001e50: SWAP1 00001e51: PUSH2 0x3173 00001e54: JUMP 00001e55: JUMPDEST 00001e56: PUSH1 0x05 00001e58: SLOAD 00001e59: PUSH1 0x40 00001e5b: MLOAD 00001e5c: PUSH4 0x42f6e389 00001e61: PUSH1 0xe0 00001e63: SHL 00001e64: DUP2 00001e65: MSTORE 00001e66: PUSH2 0x0100 00001e69: SWAP1 00001e6a: SWAP2 00001e6b: DIV 00001e6c: PUSH1 0x01 00001e6e: PUSH1 0x01 00001e70: PUSH1 0xa0 00001e72: SHL 00001e73: SUB 00001e74: AND 00001e75: SWAP1 00001e76: PUSH4 0x42f6e389 00001e7b: SWAP1 00001e7c: PUSH2 0x1e89 00001e7f: SWAP1 00001e80: CALLER 00001e81: SWAP1 00001e82: PUSH1 0x04 00001e84: ADD 00001e85: PUSH2 0x2cef 00001e88: JUMP 00001e89: JUMPDEST 00001e8a: PUSH1 0x20 00001e8c: PUSH1 0x40 00001e8e: MLOAD 00001e8f: DUP1 00001e90: DUP4 00001e91: SUB 00001e92: DUP2 00001e93: DUP7 00001e94: DUP1 00001e95: EXTCODESIZE 00001e96: ISZERO 00001e97: DUP1 00001e98: ISZERO 00001e99: PUSH2 0x1ea1 00001e9c: JUMPI 00001e9d: PUSH1 0x00 00001e9f: DUP1 00001ea0: REVERT 00001ea1: JUMPDEST 00001ea2: POP 00001ea3: GAS 00001ea4: STATICCALL 00001ea5: ISZERO 00001ea6: DUP1 00001ea7: ISZERO 00001ea8: PUSH2 0x1eb5 00001eab: JUMPI 00001eac: RETURNDATASIZE 00001ead: PUSH1 0x00 00001eaf: DUP1 00001eb0: RETURNDATACOPY 00001eb1: RETURNDATASIZE 00001eb2: PUSH1 0x00 00001eb4: REVERT 00001eb5: JUMPDEST 00001eb6: POP 00001eb7: POP 00001eb8: POP 00001eb9: POP 00001eba: PUSH1 0x40 00001ebc: MLOAD 00001ebd: RETURNDATASIZE 00001ebe: PUSH1 0x1f 00001ec0: NOT 00001ec1: PUSH1 0x1f 00001ec3: DUP3 00001ec4: ADD 00001ec5: AND 00001ec6: DUP3 00001ec7: ADD 00001ec8: DUP1 00001ec9: PUSH1 0x40 00001ecb: MSTORE 00001ecc: POP 00001ecd: DUP2 00001ece: ADD 00001ecf: SWAP1 00001ed0: PUSH2 0x1ed9 00001ed3: SWAP2 00001ed4: SWAP1 00001ed5: PUSH2 0x2c45 00001ed8: JUMP 00001ed9: JUMPDEST 00001eda: PUSH2 0x1c83 00001edd: JUMPI 00001ede: PUSH1 0x40 00001ee0: MLOAD 00001ee1: PUSH3 0x461bcd 00001ee5: PUSH1 0xe5 00001ee7: SHL 00001ee8: DUP2 00001ee9: MSTORE 00001eea: PUSH1 0x04 00001eec: ADD 00001eed: PUSH2 0x0984 00001ef0: SWAP1 00001ef1: PUSH2 0x33e1 00001ef4: JUMP 00001ef5: JUMPDEST 00001ef6: PUSH1 0x0a 00001ef8: SLOAD 00001ef9: PUSH1 0xff 00001efb: AND 00001efc: ISZERO 00001efd: PUSH2 0x1c83 00001f00: JUMPI 00001f01: PUSH1 0x07 00001f03: SLOAD 00001f04: PUSH1 0x01 00001f06: PUSH1 0x01 00001f08: PUSH1 0xa0 00001f0a: SHL 00001f0b: SUB 00001f0c: AND 00001f0d: CALLER 00001f0e: EQ 00001f0f: PUSH2 0x1c83 00001f12: JUMPI 00001f13: PUSH1 0x40 00001f15: MLOAD 00001f16: PUSH3 0x461bcd 00001f1a: PUSH1 0xe5 00001f1c: SHL 00001f1d: DUP2 00001f1e: MSTORE 00001f1f: PUSH1 0x04 00001f21: ADD 00001f22: PUSH2 0x0984 00001f25: SWAP1 00001f26: PUSH2 0x312e 00001f29: JUMP 00001f2a: JUMPDEST 00001f2b: PUSH1 0x00 00001f2d: PUSH2 0x095b 00001f30: PUSH1 0x0d 00001f32: SLOAD 00001f33: DUP4 00001f34: PUSH2 0x23dd 00001f37: SWAP1 00001f38: SWAP2 00001f39: SWAP1 00001f3a: PUSH4 0xffffffff 00001f3f: AND 00001f40: JUMP 00001f41: JUMPDEST 00001f42: PUSH1 0x00 00001f44: DUP3 00001f45: DUP3 00001f46: ADD 00001f47: DUP4 00001f48: DUP2 00001f49: LT 00001f4a: ISZERO 00001f4b: PUSH2 0x0b9d 00001f4e: JUMPI 00001f4f: PUSH1 0x40 00001f51: MLOAD 00001f52: PUSH3 0x461bcd 00001f56: PUSH1 0xe5 00001f58: SHL 00001f59: DUP2 00001f5a: MSTORE 00001f5b: PUSH1 0x04 00001f5d: ADD 00001f5e: PUSH2 0x0984 00001f61: SWAP1 00001f62: PUSH2 0x2fdb 00001f65: JUMP 00001f66: JUMPDEST 00001f67: PUSH1 0x01 00001f69: PUSH1 0x01 00001f6b: PUSH1 0xa0 00001f6d: SHL 00001f6e: SUB 00001f6f: DUP3 00001f70: AND 00001f71: PUSH2 0x1f8c 00001f74: JUMPI 00001f75: PUSH1 0x40 00001f77: MLOAD 00001f78: PUSH3 0x461bcd 00001f7c: PUSH1 0xe5 00001f7e: SHL 00001f7f: DUP2 00001f80: MSTORE 00001f81: PUSH1 0x04 00001f83: ADD 00001f84: PUSH2 0x0984 00001f87: SWAP1 00001f88: PUSH2 0x3529 00001f8b: JUMP 00001f8c: JUMPDEST 00001f8d: PUSH2 0x1f98 00001f90: PUSH1 0x00 00001f92: DUP4 00001f93: DUP4 00001f94: PUSH2 0x23d8 00001f97: JUMP 00001f98: JUMPDEST 00001f99: PUSH1 0x02 00001f9b: SLOAD 00001f9c: PUSH2 0x1fab 00001f9f: SWAP1 00001fa0: DUP3 00001fa1: PUSH4 0xffffffff 00001fa6: PUSH2 0x1f41 00001fa9: AND 00001faa: JUMP 00001fab: JUMPDEST 00001fac: PUSH1 0x02 00001fae: SSTORE 00001faf: PUSH1 0x01 00001fb1: PUSH1 0x01 00001fb3: PUSH1 0xa0 00001fb5: SHL 00001fb6: SUB 00001fb7: DUP3 00001fb8: AND 00001fb9: PUSH1 0x00 00001fbb: SWAP1 00001fbc: DUP2 00001fbd: MSTORE 00001fbe: PUSH1 0x20 00001fc0: DUP2 00001fc1: SWAP1 00001fc2: MSTORE 00001fc3: PUSH1 0x40 00001fc5: SWAP1 00001fc6: KECCAK256 00001fc7: SLOAD 00001fc8: PUSH2 0x1fd7 00001fcb: SWAP1 00001fcc: DUP3 00001fcd: PUSH4 0xffffffff 00001fd2: PUSH2 0x1f41 00001fd5: AND 00001fd6: JUMP 00001fd7: JUMPDEST 00001fd8: PUSH1 0x01 00001fda: PUSH1 0x01 00001fdc: PUSH1 0xa0 00001fde: SHL 00001fdf: SUB 00001fe0: DUP4 00001fe1: AND 00001fe2: PUSH1 0x00 00001fe4: DUP2 00001fe5: DUP2 00001fe6: MSTORE 00001fe7: PUSH1 0x20 00001fe9: DUP2 00001fea: SWAP1 00001feb: MSTORE 00001fec: PUSH1 0x40 00001fee: DUP1 00001fef: DUP3 00001ff0: KECCAK256 00001ff1: SWAP4 00001ff2: SWAP1 00001ff3: SWAP4 00001ff4: SSTORE 00001ff5: SWAP2 00001ff6: MLOAD 00001ff7: SWAP1 00001ff8: SWAP2 00001ff9: SWAP1 00001ffa: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 0000201b: SWAP1 0000201c: PUSH2 0x2026 0000201f: SWAP1 00002020: DUP6 00002021: SWAP1 00002022: PUSH2 0x2e84 00002025: JUMP 00002026: JUMPDEST 00002027: PUSH1 0x40 00002029: MLOAD 0000202a: DUP1 0000202b: SWAP2 0000202c: SUB 0000202d: SWAP1 0000202e: LOG3 0000202f: POP 00002030: POP 00002031: JUMP 00002032: JUMPDEST 00002033: PUSH1 0x01 00002035: PUSH1 0x01 00002037: PUSH1 0xa0 00002039: SHL 0000203a: SUB 0000203b: AND 0000203c: PUSH1 0x00 0000203e: SWAP1 0000203f: DUP2 00002040: MSTORE 00002041: PUSH1 0x0c 00002043: PUSH1 0x20 00002045: MSTORE 00002046: PUSH1 0x40 00002048: SWAP1 00002049: KECCAK256 0000204a: SLOAD 0000204b: SWAP1 0000204c: JUMP 0000204d: JUMPDEST 0000204e: PUSH1 0x60 00002050: PUSH1 0x00 00002052: DUP1 00002053: PUSH2 0x205c 00002056: DUP6 00002057: DUP6 00002058: PUSH2 0x2400 0000205b: JUMP 0000205c: JUMPDEST 0000205d: SWAP2 0000205e: POP 0000205f: SWAP2 00002060: POP 00002061: DUP1 00002062: PUSH2 0x207d 00002065: JUMPI 00002066: PUSH1 0x40 00002068: MLOAD 00002069: PUSH3 0x461bcd 0000206d: PUSH1 0xe5 0000206f: SHL 00002070: DUP2 00002071: MSTORE 00002072: PUSH1 0x04 00002074: ADD 00002075: PUSH2 0x0984 00002078: SWAP1 00002079: PUSH2 0x2efc 0000207c: JUMP 0000207d: JUMPDEST 0000207e: PUSH1 0x60 00002080: PUSH2 0x2089 00002083: DUP7 00002084: DUP5 00002085: PUSH2 0x2466 00002088: JUMP 00002089: JUMPDEST 0000208a: POP 0000208b: SWAP4 0000208c: POP 0000208d: PUSH2 0x095b 00002090: SWAP3 00002091: POP 00002092: POP 00002093: POP 00002094: JUMP 00002095: JUMPDEST 00002096: PUSH1 0x01 00002098: PUSH1 0x01 0000209a: PUSH1 0xa0 0000209c: SHL 0000209d: SUB 0000209e: DUP2 0000209f: AND 000020a0: PUSH1 0x00 000020a2: SWAP1 000020a3: DUP2 000020a4: MSTORE 000020a5: PUSH1 0x0c 000020a7: PUSH1 0x20 000020a9: SWAP1 000020aa: DUP2 000020ab: MSTORE 000020ac: PUSH1 0x40 000020ae: SWAP2 000020af: DUP3 000020b0: SWAP1 000020b1: KECCAK256 000020b2: PUSH1 0x01 000020b4: ADD 000020b5: DUP1 000020b6: SLOAD 000020b7: DUP4 000020b8: MLOAD 000020b9: DUP2 000020ba: DUP5 000020bb: MUL 000020bc: DUP2 000020bd: ADD 000020be: DUP5 000020bf: ADD 000020c0: SWAP1 000020c1: SWAP5 000020c2: MSTORE 000020c3: DUP1 000020c4: DUP5 000020c5: MSTORE 000020c6: PUSH1 0x60 000020c8: SWAP4 000020c9: SWAP3 000020ca: DUP4 000020cb: ADD 000020cc: DUP3 000020cd: DUP3 000020ce: DUP1 000020cf: ISZERO 000020d0: PUSH2 0x2102 000020d3: JUMPI 000020d4: PUSH1 0x20 000020d6: MUL 000020d7: DUP3 000020d8: ADD 000020d9: SWAP2 000020da: SWAP1 000020db: PUSH1 0x00 000020dd: MSTORE 000020de: PUSH1 0x20 000020e0: PUSH1 0x00 000020e2: KECCAK256 000020e3: SWAP1 000020e4: JUMPDEST 000020e5: DUP2 000020e6: SLOAD 000020e7: PUSH1 0x01 000020e9: PUSH1 0x01 000020eb: PUSH1 0xa0 000020ed: SHL 000020ee: SUB 000020ef: AND 000020f0: DUP2 000020f1: MSTORE 000020f2: PUSH1 0x01 000020f4: SWAP1 000020f5: SWAP2 000020f6: ADD 000020f7: SWAP1 000020f8: PUSH1 0x20 000020fa: ADD 000020fb: DUP1 000020fc: DUP4 000020fd: GT 000020fe: PUSH2 0x20e4 00002101: JUMPI 00002102: JUMPDEST 00002103: POP 00002104: POP 00002105: POP 00002106: POP 00002107: POP 00002108: SWAP1 00002109: POP 0000210a: SWAP2 0000210b: SWAP1 0000210c: POP 0000210d: JUMP 0000210e: JUMPDEST 0000210f: PUSH1 0x00 00002111: DUP1 00002112: PUSH2 0x211b 00002115: DUP5 00002116: DUP5 00002117: PUSH2 0x2400 0000211a: JUMP 0000211b: JUMPDEST 0000211c: SWAP6 0000211d: SWAP5 0000211e: POP 0000211f: POP 00002120: POP 00002121: POP 00002122: POP 00002123: JUMP 00002124: JUMPDEST 00002125: PUSH1 0x00 00002127: DUP1 00002128: DUP1 00002129: JUMPDEST 0000212a: PUSH1 0x0b 0000212c: SLOAD 0000212d: DUP2 0000212e: LT 0000212f: ISZERO 00002130: PUSH2 0x21a3 00002133: JUMPI 00002134: PUSH1 0x00 00002136: PUSH1 0x0b 00002138: DUP3 00002139: DUP2 0000213a: SLOAD 0000213b: DUP2 0000213c: LT 0000213d: PUSH2 0x2142 00002140: JUMPI 00002141: INVALID 00002142: JUMPDEST 00002143: PUSH1 0x00 00002145: SWAP2 00002146: DUP3 00002147: MSTORE 00002148: PUSH1 0x20 0000214a: DUP3 0000214b: KECCAK256 0000214c: ADD 0000214d: SLOAD 0000214e: PUSH1 0x01 00002150: PUSH1 0x01 00002152: PUSH1 0xa0 00002154: SHL 00002155: SUB 00002156: AND 00002157: SWAP2 00002158: POP 00002159: PUSH2 0x2161 0000215c: DUP3 0000215d: PUSH2 0x2032 00002160: JUMP 00002161: JUMPDEST 00002162: SGT 00002163: ISZERO 00002164: PUSH2 0x216e 00002167: JUMPI 00002168: PUSH1 0x01 0000216a: SWAP1 0000216b: SWAP3 0000216c: ADD 0000216d: SWAP2 0000216e: JUMPDEST 0000216f: PUSH1 0x60 00002171: PUSH2 0x2179 00002174: DUP3 00002175: PUSH2 0x2095 00002178: JUMP 00002179: JUMPDEST 0000217a: DUP1 0000217b: MLOAD 0000217c: SWAP1 0000217d: SWAP2 0000217e: POP 0000217f: ISZERO 00002180: PUSH2 0x2199 00002183: JUMPI 00002184: DUP1 00002185: MLOAD 00002186: PUSH2 0x2196 00002189: SWAP1 0000218a: DUP6 0000218b: SWAP1 0000218c: PUSH4 0xffffffff 00002191: PUSH2 0x1f41 00002194: AND 00002195: JUMP 00002196: JUMPDEST 00002197: SWAP4 00002198: POP 00002199: JUMPDEST 0000219a: POP 0000219b: POP 0000219c: PUSH1 0x01 0000219e: ADD 0000219f: PUSH2 0x2129 000021a2: JUMP 000021a3: JUMPDEST 000021a4: POP 000021a5: SWAP1 000021a6: POP 000021a7: SWAP1 000021a8: JUMP 000021a9: JUMPDEST 000021aa: PUSH1 0x01 000021ac: PUSH1 0x01 000021ae: PUSH1 0xa0 000021b0: SHL 000021b1: SUB 000021b2: DUP3 000021b3: DUP2 000021b4: AND 000021b5: PUSH1 0x00 000021b7: SWAP1 000021b8: DUP2 000021b9: MSTORE 000021ba: PUSH1 0x0c 000021bc: PUSH1 0x20 000021be: SWAP1 000021bf: DUP2 000021c0: MSTORE 000021c1: PUSH1 0x40 000021c3: DUP1 000021c4: DUP4 000021c5: KECCAK256 000021c6: SWAP4 000021c7: DUP6 000021c8: AND 000021c9: DUP4 000021ca: MSTORE 000021cb: PUSH1 0x02 000021cd: SWAP4 000021ce: DUP5 000021cf: ADD 000021d0: DUP3 000021d1: MSTORE 000021d2: SWAP2 000021d3: DUP3 000021d4: SWAP1 000021d5: KECCAK256 000021d6: PUSH1 0x01 000021d8: SWAP1 000021d9: DUP2 000021da: ADD 000021db: DUP1 000021dc: SLOAD 000021dd: DUP5 000021de: MLOAD 000021df: SWAP3 000021e0: DUP2 000021e1: AND 000021e2: ISZERO 000021e3: PUSH2 0x0100 000021e6: MUL 000021e7: PUSH1 0x00 000021e9: NOT 000021ea: ADD 000021eb: AND 000021ec: SWAP5 000021ed: SWAP1 000021ee: SWAP5 000021ef: DIV 000021f0: PUSH1 0x1f 000021f2: DUP2 000021f3: ADD 000021f4: DUP4 000021f5: SWAP1 000021f6: DIV 000021f7: DUP4 000021f8: MUL 000021f9: DUP3 000021fa: ADD 000021fb: DUP4 000021fc: ADD 000021fd: SWAP1 000021fe: SWAP4 000021ff: MSTORE 00002200: DUP3 00002201: DUP2 00002202: MSTORE 00002203: PUSH1 0x60 00002205: SWAP4 00002206: SWAP1 00002207: SWAP3 00002208: SWAP1 00002209: SWAP2 0000220a: DUP4 0000220b: ADD 0000220c: DUP3 0000220d: DUP3 0000220e: DUP1 0000220f: ISZERO 00002210: PUSH2 0x225a 00002213: JUMPI 00002214: DUP1 00002215: PUSH1 0x1f 00002217: LT 00002218: PUSH2 0x222f 0000221b: JUMPI 0000221c: PUSH2 0x0100 0000221f: DUP1 00002220: DUP4 00002221: SLOAD 00002222: DIV 00002223: MUL 00002224: DUP4 00002225: MSTORE 00002226: SWAP2 00002227: PUSH1 0x20 00002229: ADD 0000222a: SWAP2 0000222b: PUSH2 0x225a 0000222e: JUMP 0000222f: JUMPDEST 00002230: DUP3 00002231: ADD 00002232: SWAP2 00002233: SWAP1 00002234: PUSH1 0x00 00002236: MSTORE 00002237: PUSH1 0x20 00002239: PUSH1 0x00 0000223b: KECCAK256 0000223c: SWAP1 0000223d: JUMPDEST 0000223e: DUP2 0000223f: SLOAD 00002240: DUP2 00002241: MSTORE 00002242: SWAP1 00002243: PUSH1 0x01 00002245: ADD 00002246: SWAP1 00002247: PUSH1 0x20 00002249: ADD 0000224a: DUP1 0000224b: DUP4 0000224c: GT 0000224d: PUSH2 0x223d 00002250: JUMPI 00002251: DUP3 00002252: SWAP1 00002253: SUB 00002254: PUSH1 0x1f 00002256: AND 00002257: DUP3 00002258: ADD 00002259: SWAP2 0000225a: JUMPDEST 0000225b: POP 0000225c: POP 0000225d: POP 0000225e: POP 0000225f: POP 00002260: SWAP1 00002261: POP 00002262: SWAP3 00002263: SWAP2 00002264: POP 00002265: POP 00002266: JUMP 00002267: JUMPDEST 00002268: PUSH1 0x60 0000226a: PUSH2 0x1316 0000226d: DUP5 0000226e: DUP5 0000226f: DUP5 00002270: PUSH1 0x40 00002272: MLOAD 00002273: DUP1 00002274: PUSH1 0x60 00002276: ADD 00002277: PUSH1 0x40 00002279: MSTORE 0000227a: DUP1 0000227b: PUSH1 0x29 0000227d: DUP2 0000227e: MSTORE 0000227f: PUSH1 0x20 00002281: ADD 00002282: PUSH2 0x3626 00002285: PUSH1 0x29 00002287: SWAP2 00002288: CODECOPY 00002289: PUSH2 0x2595 0000228c: JUMP 0000228d: JUMPDEST 0000228e: PUSH1 0x01 00002290: PUSH1 0x01 00002292: PUSH1 0xa0 00002294: SHL 00002295: SUB 00002296: DUP3 00002297: AND 00002298: PUSH2 0x22b3 0000229b: JUMPI 0000229c: PUSH1 0x40 0000229e: MLOAD 0000229f: PUSH3 0x461bcd 000022a3: PUSH1 0xe5 000022a5: SHL 000022a6: DUP2 000022a7: MSTORE 000022a8: PUSH1 0x04 000022aa: ADD 000022ab: PUSH2 0x0984 000022ae: SWAP1 000022af: PUSH2 0x32b8 000022b2: JUMP 000022b3: JUMPDEST 000022b4: PUSH2 0x22bf 000022b7: DUP3 000022b8: PUSH1 0x00 000022ba: DUP4 000022bb: PUSH2 0x23d8 000022be: JUMP 000022bf: JUMPDEST 000022c0: PUSH2 0x2302 000022c3: DUP2 000022c4: PUSH1 0x40 000022c6: MLOAD 000022c7: DUP1 000022c8: PUSH1 0x60 000022ca: ADD 000022cb: PUSH1 0x40 000022cd: MSTORE 000022ce: DUP1 000022cf: PUSH1 0x22 000022d1: DUP2 000022d2: MSTORE 000022d3: PUSH1 0x20 000022d5: ADD 000022d6: PUSH2 0x35de 000022d9: PUSH1 0x22 000022db: SWAP2 000022dc: CODECOPY 000022dd: PUSH1 0x01 000022df: PUSH1 0x01 000022e1: PUSH1 0xa0 000022e3: SHL 000022e4: SUB 000022e5: DUP6 000022e6: AND 000022e7: PUSH1 0x00 000022e9: SWAP1 000022ea: DUP2 000022eb: MSTORE 000022ec: PUSH1 0x20 000022ee: DUP2 000022ef: SWAP1 000022f0: MSTORE 000022f1: PUSH1 0x40 000022f3: SWAP1 000022f4: KECCAK256 000022f5: SLOAD 000022f6: SWAP2 000022f7: SWAP1 000022f8: PUSH4 0xffffffff 000022fd: PUSH2 0x1dec 00002300: AND 00002301: JUMP 00002302: JUMPDEST 00002303: PUSH1 0x01 00002305: PUSH1 0x01 00002307: PUSH1 0xa0 00002309: SHL 0000230a: SUB 0000230b: DUP4 0000230c: AND 0000230d: PUSH1 0x00 0000230f: SWAP1 00002310: DUP2 00002311: MSTORE 00002312: PUSH1 0x20 00002314: DUP2 00002315: SWAP1 00002316: MSTORE 00002317: PUSH1 0x40 00002319: SWAP1 0000231a: KECCAK256 0000231b: SSTORE 0000231c: PUSH1 0x02 0000231e: SLOAD 0000231f: PUSH2 0x232e 00002322: SWAP1 00002323: DUP3 00002324: PUSH4 0xffffffff 00002329: PUSH2 0x25c3 0000232c: AND 0000232d: JUMP 0000232e: JUMPDEST 0000232f: PUSH1 0x02 00002331: SSTORE 00002332: PUSH1 0x40 00002334: MLOAD 00002335: PUSH1 0x00 00002337: SWAP1 00002338: PUSH1 0x01 0000233a: PUSH1 0x01 0000233c: PUSH1 0xa0 0000233e: SHL 0000233f: SUB 00002340: DUP5 00002341: AND 00002342: SWAP1 00002343: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00002364: SWAP1 00002365: PUSH2 0x2026 00002368: SWAP1 00002369: DUP6 0000236a: SWAP1 0000236b: PUSH2 0x2e84 0000236e: JUMP 0000236f: JUMPDEST 00002370: PUSH1 0x00 00002372: DUP3 00002373: DUP3 00002374: ADD 00002375: DUP2 00002376: DUP4 00002377: SLT 00002378: DUP1 00002379: ISZERO 0000237a: SWAP1 0000237b: PUSH2 0x2384 0000237e: JUMPI 0000237f: POP 00002380: DUP4 00002381: DUP2 00002382: SLT 00002383: ISZERO 00002384: JUMPDEST 00002385: DUP1 00002386: PUSH2 0x2399 00002389: JUMPI 0000238a: POP 0000238b: PUSH1 0x00 0000238d: DUP4 0000238e: SLT 0000238f: DUP1 00002390: ISZERO 00002391: PUSH2 0x2399 00002394: JUMPI 00002395: POP 00002396: DUP4 00002397: DUP2 00002398: SLT 00002399: JUMPDEST 0000239a: PUSH2 0x0b9d 0000239d: JUMPI 0000239e: PUSH1 0x40 000023a0: MLOAD 000023a1: PUSH3 0x461bcd 000023a5: PUSH1 0xe5 000023a7: SHL 000023a8: DUP2 000023a9: MSTORE 000023aa: PUSH1 0x04 000023ac: ADD 000023ad: PUSH2 0x0984 000023b0: SWAP1 000023b1: PUSH2 0x3012 000023b4: JUMP 000023b5: JUMPDEST 000023b6: PUSH1 0x00 000023b8: PUSH2 0x0b9d 000023bb: PUSH2 0x23ca 000023be: DUP5 000023bf: DUP5 000023c0: PUSH4 0xffffffff 000023c5: PUSH2 0x2605 000023c8: AND 000023c9: JUMP 000023ca: JUMPDEST 000023cb: PUSH8 0x0de0b6b3a7640000 000023d4: PUSH2 0x2670 000023d7: JUMP 000023d8: JUMPDEST 000023d9: POP 000023da: POP 000023db: POP 000023dc: JUMP 000023dd: JUMPDEST 000023de: PUSH1 0x00 000023e0: PUSH2 0x0b9d 000023e3: PUSH2 0x23fa 000023e6: DUP5 000023e7: PUSH8 0x0de0b6b3a7640000 000023f0: PUSH4 0xffffffff 000023f5: PUSH2 0x2605 000023f8: AND 000023f9: JUMP 000023fa: JUMPDEST 000023fb: DUP4 000023fc: PUSH2 0x2670 000023ff: JUMP 00002400: JUMPDEST 00002401: DUP2 00002402: MLOAD 00002403: PUSH1 0x00 00002405: SWAP1 00002406: DUP2 00002407: SWAP1 00002408: DUP2 00002409: JUMPDEST 0000240a: DUP2 0000240b: DUP2 0000240c: LT 0000240d: ISZERO 0000240e: PUSH2 0x2453 00002411: JUMPI 00002412: DUP5 00002413: PUSH1 0x01 00002415: PUSH1 0x01 00002417: PUSH1 0xa0 00002419: SHL 0000241a: SUB 0000241b: AND 0000241c: DUP7 0000241d: DUP3 0000241e: DUP2 0000241f: MLOAD 00002420: DUP2 00002421: LT 00002422: PUSH2 0x2427 00002425: JUMPI 00002426: INVALID 00002427: JUMPDEST 00002428: PUSH1 0x20 0000242a: MUL 0000242b: PUSH1 0x20 0000242d: ADD 0000242e: ADD 0000242f: MLOAD 00002430: PUSH1 0x01 00002432: PUSH1 0x01 00002434: PUSH1 0xa0 00002436: SHL 00002437: SUB 00002438: AND 00002439: EQ 0000243a: ISZERO 0000243b: PUSH2 0x244b 0000243e: JUMPI 0000243f: SWAP3 00002440: POP 00002441: PUSH1 0x01 00002443: SWAP2 00002444: POP 00002445: PUSH2 0x245f 00002448: SWAP1 00002449: POP 0000244a: JUMP 0000244b: JUMPDEST 0000244c: PUSH1 0x01 0000244e: ADD 0000244f: PUSH2 0x2409 00002452: JUMP 00002453: JUMPDEST 00002454: POP 00002455: PUSH1 0x00 00002457: NOT 00002458: PUSH1 0x00 0000245a: SWAP3 0000245b: POP 0000245c: SWAP3 0000245d: POP 0000245e: POP 0000245f: JUMPDEST 00002460: SWAP3 00002461: POP 00002462: SWAP3 00002463: SWAP1 00002464: POP 00002465: JUMP 00002466: JUMPDEST 00002467: DUP2 00002468: MLOAD 00002469: PUSH1 0x60 0000246b: SWAP1 0000246c: PUSH1 0x00 0000246e: SWAP1 0000246f: DUP1 00002470: DUP5 00002471: LT 00002472: PUSH2 0x248d 00002475: JUMPI 00002476: PUSH1 0x40 00002478: MLOAD 00002479: PUSH3 0x461bcd 0000247d: PUSH1 0xe5 0000247f: SHL 00002480: DUP2 00002481: MSTORE 00002482: PUSH1 0x04 00002484: ADD 00002485: PUSH2 0x0984 00002488: SWAP1 00002489: PUSH2 0x2f2b 0000248c: JUMP 0000248d: JUMPDEST 0000248e: PUSH1 0x60 00002490: PUSH1 0x01 00002492: DUP3 00002493: SUB 00002494: PUSH8 0xffffffffffffffff 0000249d: DUP2 0000249e: GT 0000249f: DUP1 000024a0: ISZERO 000024a1: PUSH2 0x24a9 000024a4: JUMPI 000024a5: PUSH1 0x00 000024a7: DUP1 000024a8: REVERT 000024a9: JUMPDEST 000024aa: POP 000024ab: PUSH1 0x40 000024ad: MLOAD 000024ae: SWAP1 000024af: DUP1 000024b0: DUP3 000024b1: MSTORE 000024b2: DUP1 000024b3: PUSH1 0x20 000024b5: MUL 000024b6: PUSH1 0x20 000024b8: ADD 000024b9: DUP3 000024ba: ADD 000024bb: PUSH1 0x40 000024bd: MSTORE 000024be: DUP1 000024bf: ISZERO 000024c0: PUSH2 0x24d3 000024c3: JUMPI 000024c4: DUP2 000024c5: PUSH1 0x20 000024c7: ADD 000024c8: PUSH1 0x20 000024ca: DUP3 000024cb: MUL 000024cc: DUP1 000024cd: CALLDATASIZE 000024ce: DUP4 000024cf: CALLDATACOPY 000024d0: ADD 000024d1: SWAP1 000024d2: POP 000024d3: JUMPDEST 000024d4: POP 000024d5: SWAP1 000024d6: POP 000024d7: PUSH1 0x00 000024d9: JUMPDEST 000024da: DUP6 000024db: DUP2 000024dc: LT 000024dd: ISZERO 000024de: PUSH2 0x2521 000024e1: JUMPI 000024e2: DUP7 000024e3: DUP2 000024e4: DUP2 000024e5: MLOAD 000024e6: DUP2 000024e7: LT 000024e8: PUSH2 0x24ed 000024eb: JUMPI 000024ec: INVALID 000024ed: JUMPDEST 000024ee: PUSH1 0x20 000024f0: MUL 000024f1: PUSH1 0x20 000024f3: ADD 000024f4: ADD 000024f5: MLOAD 000024f6: DUP3 000024f7: DUP3 000024f8: DUP2 000024f9: MLOAD 000024fa: DUP2 000024fb: LT 000024fc: PUSH2 0x2501 000024ff: JUMPI 00002500: INVALID 00002501: JUMPDEST 00002502: PUSH1 0x01 00002504: PUSH1 0x01 00002506: PUSH1 0xa0 00002508: SHL 00002509: SUB 0000250a: SWAP1 0000250b: SWAP3 0000250c: AND 0000250d: PUSH1 0x20 0000250f: SWAP3 00002510: DUP4 00002511: MUL 00002512: SWAP2 00002513: SWAP1 00002514: SWAP2 00002515: ADD 00002516: SWAP1 00002517: SWAP2 00002518: ADD 00002519: MSTORE 0000251a: PUSH1 0x01 0000251c: ADD 0000251d: PUSH2 0x24d9 00002520: JUMP 00002521: JUMPDEST 00002522: POP 00002523: PUSH1 0x01 00002525: DUP6 00002526: ADD 00002527: JUMPDEST 00002528: DUP3 00002529: DUP2 0000252a: LT 0000252b: ISZERO 0000252c: PUSH2 0x2572 0000252f: JUMPI 00002530: DUP7 00002531: DUP2 00002532: DUP2 00002533: MLOAD 00002534: DUP2 00002535: LT 00002536: PUSH2 0x253b 00002539: JUMPI 0000253a: INVALID 0000253b: JUMPDEST 0000253c: PUSH1 0x20 0000253e: MUL 0000253f: PUSH1 0x20 00002541: ADD 00002542: ADD 00002543: MLOAD 00002544: DUP3 00002545: PUSH1 0x01 00002547: DUP4 00002548: SUB 00002549: DUP2 0000254a: MLOAD 0000254b: DUP2 0000254c: LT 0000254d: PUSH2 0x2552 00002550: JUMPI 00002551: INVALID 00002552: JUMPDEST 00002553: PUSH1 0x01 00002555: PUSH1 0x01 00002557: PUSH1 0xa0 00002559: SHL 0000255a: SUB 0000255b: SWAP1 0000255c: SWAP3 0000255d: AND 0000255e: PUSH1 0x20 00002560: SWAP3 00002561: DUP4 00002562: MUL 00002563: SWAP2 00002564: SWAP1 00002565: SWAP2 00002566: ADD 00002567: SWAP1 00002568: SWAP2 00002569: ADD 0000256a: MSTORE 0000256b: PUSH1 0x01 0000256d: ADD 0000256e: PUSH2 0x2527 00002571: JUMP 00002572: JUMPDEST 00002573: POP 00002574: DUP1 00002575: DUP7 00002576: DUP7 00002577: DUP2 00002578: MLOAD 00002579: DUP2 0000257a: LT 0000257b: PUSH2 0x2580 0000257e: JUMPI 0000257f: INVALID 00002580: JUMPDEST 00002581: PUSH1 0x20 00002583: MUL 00002584: PUSH1 0x20 00002586: ADD 00002587: ADD 00002588: MLOAD 00002589: SWAP4 0000258a: POP 0000258b: SWAP4 0000258c: POP 0000258d: POP 0000258e: POP 0000258f: SWAP3 00002590: POP 00002591: SWAP3 00002592: SWAP1 00002593: POP 00002594: JUMP 00002595: JUMPDEST 00002596: PUSH1 0x60 00002598: DUP3 00002599: SELFBALANCE 0000259a: LT 0000259b: ISZERO 0000259c: PUSH2 0x25b7 0000259f: JUMPI 000025a0: PUSH1 0x40 000025a2: MLOAD 000025a3: PUSH3 0x461bcd 000025a7: PUSH1 0xe5 000025a9: SHL 000025aa: DUP2 000025ab: MSTORE 000025ac: PUSH1 0x04 000025ae: ADD 000025af: PUSH2 0x0984 000025b2: SWAP1 000025b3: PUSH2 0x3053 000025b6: JUMP 000025b7: JUMPDEST 000025b8: PUSH2 0x211b 000025bb: DUP6 000025bc: DUP6 000025bd: DUP6 000025be: DUP6 000025bf: PUSH2 0x2704 000025c2: JUMP 000025c3: JUMPDEST 000025c4: PUSH1 0x00 000025c6: PUSH2 0x0b9d 000025c9: DUP4 000025ca: DUP4 000025cb: PUSH1 0x40 000025cd: MLOAD 000025ce: DUP1 000025cf: PUSH1 0x40 000025d1: ADD 000025d2: PUSH1 0x40 000025d4: MSTORE 000025d5: DUP1 000025d6: PUSH1 0x1e 000025d8: DUP2 000025d9: MSTORE 000025da: PUSH1 0x20 000025dc: ADD 000025dd: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 000025fe: DUP2 000025ff: MSTORE 00002600: POP 00002601: PUSH2 0x1dec 00002604: JUMP 00002605: JUMPDEST 00002606: PUSH1 0x00 00002608: DUP3 00002609: PUSH2 0x2614 0000260c: JUMPI 0000260d: POP 0000260e: PUSH1 0x00 00002610: PUSH2 0x095b 00002613: JUMP 00002614: JUMPDEST 00002615: DUP3 00002616: PUSH1 0x00 00002618: NOT 00002619: EQ 0000261a: DUP1 0000261b: ISZERO 0000261c: PUSH2 0x2628 0000261f: JUMPI 00002620: POP 00002621: PUSH1 0x01 00002623: PUSH1 0xff 00002625: SHL 00002626: DUP3 00002627: EQ 00002628: JUMPDEST 00002629: ISZERO 0000262a: PUSH2 0x2645 0000262d: JUMPI 0000262e: PUSH1 0x40 00002630: MLOAD 00002631: PUSH3 0x461bcd 00002635: PUSH1 0xe5 00002637: SHL 00002638: DUP2 00002639: MSTORE 0000263a: PUSH1 0x04 0000263c: ADD 0000263d: PUSH2 0x0984 00002640: SWAP1 00002641: PUSH2 0x3222 00002644: JUMP 00002645: JUMPDEST 00002646: DUP3 00002647: DUP3 00002648: MUL 00002649: DUP3 0000264a: DUP5 0000264b: DUP3 0000264c: DUP2 0000264d: PUSH2 0x2652 00002650: JUMPI 00002651: INVALID 00002652: JUMPDEST 00002653: SDIV 00002654: EQ 00002655: PUSH2 0x0b9d 00002658: JUMPI 00002659: PUSH1 0x40 0000265b: MLOAD 0000265c: PUSH3 0x461bcd 00002660: PUSH1 0xe5 00002662: SHL 00002663: DUP2 00002664: MSTORE 00002665: PUSH1 0x04 00002667: ADD 00002668: PUSH2 0x0984 0000266b: SWAP1 0000266c: PUSH2 0x3222 0000266f: JUMP 00002670: JUMPDEST 00002671: PUSH1 0x00 00002673: DUP2 00002674: PUSH2 0x268f 00002677: JUMPI 00002678: PUSH1 0x40 0000267a: MLOAD 0000267b: PUSH3 0x461bcd 0000267f: PUSH1 0xe5 00002681: SHL 00002682: DUP2 00002683: MSTORE 00002684: PUSH1 0x04 00002686: ADD 00002687: PUSH2 0x0984 0000268a: SWAP1 0000268b: PUSH2 0x3560 0000268e: JUMP 0000268f: JUMPDEST 00002690: PUSH1 0x01 00002692: PUSH1 0xff 00002694: SHL 00002695: DUP4 00002696: EQ 00002697: ISZERO 00002698: DUP1 00002699: PUSH2 0x26a4 0000269c: JUMPI 0000269d: POP 0000269e: DUP2 0000269f: PUSH1 0x00 000026a1: NOT 000026a2: EQ 000026a3: ISZERO 000026a4: JUMPDEST 000026a5: PUSH2 0x26c0 000026a8: JUMPI 000026a9: PUSH1 0x40 000026ab: MLOAD 000026ac: PUSH3 0x461bcd 000026b0: PUSH1 0xe5 000026b2: SHL 000026b3: DUP2 000026b4: MSTORE 000026b5: PUSH1 0x04 000026b7: ADD 000026b8: PUSH2 0x0984 000026bb: SWAP1 000026bc: PUSH2 0x3291 000026bf: JUMP 000026c0: JUMPDEST 000026c1: PUSH1 0x00 000026c3: PUSH2 0x26d2 000026c6: DUP5 000026c7: DUP5 000026c8: PUSH4 0xffffffff 000026cd: PUSH2 0x27c8 000026d0: AND 000026d1: JUMP 000026d2: JUMPDEST 000026d3: SWAP1 000026d4: POP 000026d5: PUSH1 0x00 000026d7: DUP4 000026d8: DUP6 000026d9: XOR 000026da: SLT 000026db: DUP1 000026dc: ISZERO 000026dd: PUSH2 0x26ee 000026e0: JUMPI 000026e1: POP 000026e2: DUP3 000026e3: DUP5 000026e4: DUP2 000026e5: PUSH2 0x26ea 000026e8: JUMPI 000026e9: INVALID 000026ea: JUMPDEST 000026eb: SMOD 000026ec: ISZERO 000026ed: ISZERO 000026ee: JUMPDEST 000026ef: ISZERO 000026f0: PUSH2 0x0b9d 000026f3: JUMPI 000026f4: PUSH2 0x1316 000026f7: DUP2 000026f8: PUSH1 0x01 000026fa: PUSH4 0xffffffff 000026ff: PUSH2 0x282c 00002702: AND 00002703: JUMP 00002704: JUMPDEST 00002705: PUSH1 0x60 00002707: PUSH2 0x270f 0000270a: DUP6 0000270b: PUSH2 0x2872 0000270e: JUMP 0000270f: JUMPDEST 00002710: PUSH2 0x272b 00002713: JUMPI 00002714: PUSH1 0x40 00002716: MLOAD 00002717: PUSH3 0x461bcd 0000271b: PUSH1 0xe5 0000271d: SHL 0000271e: DUP2 0000271f: MSTORE 00002720: PUSH1 0x04 00002722: ADD 00002723: PUSH2 0x0984 00002726: SWAP1 00002727: PUSH2 0x33aa 0000272a: JUMP 0000272b: JUMPDEST 0000272c: PUSH1 0x00 0000272e: PUSH1 0x60 00002730: DUP7 00002731: PUSH1 0x01 00002733: PUSH1 0x01 00002735: PUSH1 0xa0 00002737: SHL 00002738: SUB 00002739: AND 0000273a: DUP6 0000273b: DUP8 0000273c: PUSH1 0x40 0000273e: MLOAD 0000273f: PUSH2 0x2748 00002742: SWAP2 00002743: SWAP1 00002744: PUSH2 0x2cd3 00002747: JUMP 00002748: JUMPDEST 00002749: PUSH1 0x00 0000274b: PUSH1 0x40 0000274d: MLOAD 0000274e: DUP1 0000274f: DUP4 00002750: SUB 00002751: DUP2 00002752: DUP6 00002753: DUP8 00002754: GAS 00002755: CALL 00002756: SWAP3 00002757: POP 00002758: POP 00002759: POP 0000275a: RETURNDATASIZE 0000275b: DUP1 0000275c: PUSH1 0x00 0000275e: DUP2 0000275f: EQ 00002760: PUSH2 0x2785 00002763: JUMPI 00002764: PUSH1 0x40 00002766: MLOAD 00002767: SWAP2 00002768: POP 00002769: PUSH1 0x1f 0000276b: NOT 0000276c: PUSH1 0x3f 0000276e: RETURNDATASIZE 0000276f: ADD 00002770: AND 00002771: DUP3 00002772: ADD 00002773: PUSH1 0x40 00002775: MSTORE 00002776: RETURNDATASIZE 00002777: DUP3 00002778: MSTORE 00002779: RETURNDATASIZE 0000277a: PUSH1 0x00 0000277c: PUSH1 0x20 0000277e: DUP5 0000277f: ADD 00002780: RETURNDATACOPY 00002781: PUSH2 0x278a 00002784: JUMP 00002785: JUMPDEST 00002786: PUSH1 0x60 00002788: SWAP2 00002789: POP 0000278a: JUMPDEST 0000278b: POP 0000278c: SWAP2 0000278d: POP 0000278e: SWAP2 0000278f: POP 00002790: DUP2 00002791: ISZERO 00002792: PUSH2 0x279e 00002795: JUMPI 00002796: SWAP2 00002797: POP 00002798: PUSH2 0x1316 0000279b: SWAP1 0000279c: POP 0000279d: JUMP 0000279e: JUMPDEST 0000279f: DUP1 000027a0: MLOAD 000027a1: ISZERO 000027a2: PUSH2 0x27ae 000027a5: JUMPI 000027a6: DUP1 000027a7: MLOAD 000027a8: DUP1 000027a9: DUP3 000027aa: PUSH1 0x20 000027ac: ADD 000027ad: REVERT 000027ae: JUMPDEST 000027af: DUP4 000027b0: PUSH1 0x40 000027b2: MLOAD 000027b3: PUSH3 0x461bcd 000027b7: PUSH1 0xe5 000027b9: SHL 000027ba: DUP2 000027bb: MSTORE 000027bc: PUSH1 0x04 000027be: ADD 000027bf: PUSH2 0x0984 000027c2: SWAP2 000027c3: SWAP1 000027c4: PUSH2 0x2e5d 000027c7: JUMP 000027c8: JUMPDEST 000027c9: PUSH1 0x00 000027cb: DUP2 000027cc: PUSH2 0x27e7 000027cf: JUMPI 000027d0: PUSH1 0x40 000027d2: MLOAD 000027d3: PUSH3 0x461bcd 000027d7: PUSH1 0xe5 000027d9: SHL 000027da: DUP2 000027db: MSTORE 000027dc: PUSH1 0x04 000027de: ADD 000027df: PUSH2 0x0984 000027e2: SWAP1 000027e3: PUSH2 0x34c4 000027e6: JUMP 000027e7: JUMPDEST 000027e8: DUP2 000027e9: PUSH1 0x00 000027eb: NOT 000027ec: EQ 000027ed: DUP1 000027ee: ISZERO 000027ef: PUSH2 0x27fb 000027f2: JUMPI 000027f3: POP 000027f4: PUSH1 0x01 000027f6: PUSH1 0xff 000027f8: SHL 000027f9: DUP4 000027fa: EQ 000027fb: JUMPDEST 000027fc: ISZERO 000027fd: PUSH2 0x2818 00002800: JUMPI 00002801: PUSH1 0x40 00002803: MLOAD 00002804: PUSH3 0x461bcd 00002808: PUSH1 0xe5 0000280a: SHL 0000280b: DUP2 0000280c: MSTORE 0000280d: PUSH1 0x04 0000280f: ADD 00002810: PUSH2 0x0984 00002813: SWAP1 00002814: PUSH2 0x31aa 00002817: JUMP 00002818: JUMPDEST 00002819: PUSH1 0x00 0000281b: DUP3 0000281c: DUP5 0000281d: DUP2 0000281e: PUSH2 0x2823 00002821: JUMPI 00002822: INVALID 00002823: JUMPDEST 00002824: SDIV 00002825: SWAP5 00002826: SWAP4 00002827: POP 00002828: POP 00002829: POP 0000282a: POP 0000282b: JUMP 0000282c: JUMPDEST 0000282d: PUSH1 0x00 0000282f: DUP2 00002830: DUP4 00002831: SUB 00002832: DUP2 00002833: DUP4 00002834: SLT 00002835: DUP1 00002836: ISZERO 00002837: SWAP1 00002838: PUSH2 0x2841 0000283b: JUMPI 0000283c: POP 0000283d: DUP4 0000283e: DUP2 0000283f: SGT 00002840: ISZERO 00002841: JUMPDEST 00002842: DUP1 00002843: PUSH2 0x2856 00002846: JUMPI 00002847: POP 00002848: PUSH1 0x00 0000284a: DUP4 0000284b: SLT 0000284c: DUP1 0000284d: ISZERO 0000284e: PUSH2 0x2856 00002851: JUMPI 00002852: POP 00002853: DUP4 00002854: DUP2 00002855: SGT 00002856: JUMPDEST 00002857: PUSH2 0x0b9d 0000285a: JUMPI 0000285b: PUSH1 0x40 0000285d: MLOAD 0000285e: PUSH3 0x461bcd 00002862: PUSH1 0xe5 00002864: SHL 00002865: DUP2 00002866: MSTORE 00002867: PUSH1 0x04 00002869: ADD 0000286a: PUSH2 0x0984 0000286d: SWAP1 0000286e: PUSH2 0x3451 00002871: JUMP 00002872: JUMPDEST 00002873: PUSH1 0x00 00002875: DUP2 00002876: EXTCODEHASH 00002877: PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 00002898: DUP2 00002899: DUP2 0000289a: EQ 0000289b: DUP1 0000289c: ISZERO 0000289d: SWAP1 0000289e: PUSH2 0x1316 000028a1: JUMPI 000028a2: POP 000028a3: POP 000028a4: ISZERO 000028a5: ISZERO 000028a6: SWAP3 000028a7: SWAP2 000028a8: POP 000028a9: POP 000028aa: JUMP 000028ab: JUMPDEST 000028ac: DUP3 000028ad: DUP1 000028ae: SLOAD 000028af: PUSH1 0x01 000028b1: DUP2 000028b2: PUSH1 0x01 000028b4: AND 000028b5: ISZERO 000028b6: PUSH2 0x0100 000028b9: MUL 000028ba: SUB 000028bb: AND 000028bc: PUSH1 0x02 000028be: SWAP1 000028bf: DIV 000028c0: SWAP1 000028c1: PUSH1 0x00 000028c3: MSTORE 000028c4: PUSH1 0x20 000028c6: PUSH1 0x00 000028c8: KECCAK256 000028c9: SWAP1 000028ca: PUSH1 0x1f 000028cc: ADD 000028cd: PUSH1 0x20 000028cf: SWAP1 000028d0: DIV 000028d1: DUP2 000028d2: ADD 000028d3: SWAP3 000028d4: DUP3 000028d5: PUSH1 0x1f 000028d7: LT 000028d8: PUSH2 0x28ec 000028db: JUMPI 000028dc: DUP3 000028dd: DUP1 000028de: ADD 000028df: PUSH1 0xff 000028e1: NOT 000028e2: DUP3 000028e3: CALLDATALOAD 000028e4: AND 000028e5: OR 000028e6: DUP6 000028e7: SSTORE 000028e8: PUSH2 0x2919 000028eb: JUMP 000028ec: JUMPDEST 000028ed: DUP3 000028ee: DUP1 000028ef: ADD 000028f0: PUSH1 0x01 000028f2: ADD 000028f3: DUP6 000028f4: SSTORE 000028f5: DUP3 000028f6: ISZERO 000028f7: PUSH2 0x2919 000028fa: JUMPI 000028fb: SWAP2 000028fc: DUP3 000028fd: ADD 000028fe: JUMPDEST 000028ff: DUP3 00002900: DUP2 00002901: GT 00002902: ISZERO 00002903: PUSH2 0x2919 00002906: JUMPI 00002907: DUP3 00002908: CALLDATALOAD 00002909: DUP3 0000290a: SSTORE 0000290b: SWAP2 0000290c: PUSH1 0x20 0000290e: ADD 0000290f: SWAP2 00002910: SWAP1 00002911: PUSH1 0x01 00002913: ADD 00002914: SWAP1 00002915: PUSH2 0x28fe 00002918: JUMP 00002919: JUMPDEST 0000291a: POP 0000291b: PUSH2 0x2925 0000291e: SWAP3 0000291f: SWAP2 00002920: POP 00002921: PUSH2 0x2a15 00002924: JUMP 00002925: JUMPDEST 00002926: POP 00002927: SWAP1 00002928: JUMP 00002929: JUMPDEST 0000292a: DUP3 0000292b: DUP1 0000292c: SLOAD 0000292d: DUP3 0000292e: DUP3 0000292f: SSTORE 00002930: SWAP1 00002931: PUSH1 0x00 00002933: MSTORE 00002934: PUSH1 0x20 00002936: PUSH1 0x00 00002938: KECCAK256 00002939: SWAP1 0000293a: DUP2 0000293b: ADD 0000293c: SWAP3 0000293d: DUP3 0000293e: ISZERO 0000293f: PUSH2 0x297e 00002942: JUMPI 00002943: SWAP2 00002944: PUSH1 0x20 00002946: MUL 00002947: DUP3 00002948: ADD 00002949: JUMPDEST 0000294a: DUP3 0000294b: DUP2 0000294c: GT 0000294d: ISZERO 0000294e: PUSH2 0x297e 00002951: JUMPI 00002952: DUP3 00002953: MLOAD 00002954: DUP3 00002955: SLOAD 00002956: PUSH1 0x01 00002958: PUSH1 0x01 0000295a: PUSH1 0xa0 0000295c: SHL 0000295d: SUB 0000295e: NOT 0000295f: AND 00002960: PUSH1 0x01 00002962: PUSH1 0x01 00002964: PUSH1 0xa0 00002966: SHL 00002967: SUB 00002968: SWAP1 00002969: SWAP2 0000296a: AND 0000296b: OR 0000296c: DUP3 0000296d: SSTORE 0000296e: PUSH1 0x20 00002970: SWAP1 00002971: SWAP3 00002972: ADD 00002973: SWAP2 00002974: PUSH1 0x01 00002976: SWAP1 00002977: SWAP2 00002978: ADD 00002979: SWAP1 0000297a: PUSH2 0x2949 0000297d: JUMP 0000297e: JUMPDEST 0000297f: POP 00002980: PUSH2 0x2925 00002983: SWAP3 00002984: SWAP2 00002985: POP 00002986: PUSH2 0x2a2f 00002989: JUMP 0000298a: JUMPDEST 0000298b: PUSH1 0x40 0000298d: MLOAD 0000298e: DUP1 0000298f: PUSH1 0xa0 00002991: ADD 00002992: PUSH1 0x40 00002994: MSTORE 00002995: DUP1 00002996: PUSH1 0x00 00002998: PUSH1 0x01 0000299a: PUSH1 0x01 0000299c: PUSH1 0xa0 0000299e: SHL 0000299f: SUB 000029a0: AND 000029a1: DUP2 000029a2: MSTORE 000029a3: PUSH1 0x20 000029a5: ADD 000029a6: PUSH1 0x00 000029a8: PUSH1 0x01 000029aa: PUSH1 0x01 000029ac: PUSH1 0xa0 000029ae: SHL 000029af: SUB 000029b0: AND 000029b1: DUP2 000029b2: MSTORE 000029b3: PUSH1 0x20 000029b5: ADD 000029b6: PUSH1 0x00 000029b8: DUP2 000029b9: MSTORE 000029ba: PUSH1 0x20 000029bc: ADD 000029bd: PUSH1 0x00 000029bf: PUSH1 0xff 000029c1: AND 000029c2: DUP2 000029c3: MSTORE 000029c4: PUSH1 0x20 000029c6: ADD 000029c7: PUSH1 0x60 000029c9: DUP2 000029ca: MSTORE 000029cb: POP 000029cc: SWAP1 000029cd: JUMP 000029ce: JUMPDEST 000029cf: POP 000029d0: DUP1 000029d1: SLOAD 000029d2: PUSH1 0x01 000029d4: DUP2 000029d5: PUSH1 0x01 000029d7: AND 000029d8: ISZERO 000029d9: PUSH2 0x0100 000029dc: MUL 000029dd: SUB 000029de: AND 000029df: PUSH1 0x02 000029e1: SWAP1 000029e2: DIV 000029e3: PUSH1 0x00 000029e5: DUP3 000029e6: SSTORE 000029e7: DUP1 000029e8: PUSH1 0x1f 000029ea: LT 000029eb: PUSH2 0x29f4 000029ee: JUMPI 000029ef: POP 000029f0: PUSH2 0x2a12 000029f3: JUMP 000029f4: JUMPDEST 000029f5: PUSH1 0x1f 000029f7: ADD 000029f8: PUSH1 0x20 000029fa: SWAP1 000029fb: DIV 000029fc: SWAP1 000029fd: PUSH1 0x00 000029ff: MSTORE 00002a00: PUSH1 0x20 00002a02: PUSH1 0x00 00002a04: KECCAK256 00002a05: SWAP1 00002a06: DUP2 00002a07: ADD 00002a08: SWAP1 00002a09: PUSH2 0x2a12 00002a0c: SWAP2 00002a0d: SWAP1 00002a0e: PUSH2 0x2a15 00002a11: JUMP 00002a12: JUMPDEST 00002a13: POP 00002a14: JUMP 00002a15: JUMPDEST 00002a16: PUSH2 0x0940 00002a19: SWAP2 00002a1a: SWAP1 00002a1b: JUMPDEST 00002a1c: DUP1 00002a1d: DUP3 00002a1e: GT 00002a1f: ISZERO 00002a20: PUSH2 0x2925 00002a23: JUMPI 00002a24: PUSH1 0x00 00002a26: DUP2 00002a27: SSTORE 00002a28: PUSH1 0x01 00002a2a: ADD 00002a2b: PUSH2 0x2a1b 00002a2e: JUMP 00002a2f: JUMPDEST 00002a30: PUSH2 0x0940 00002a33: SWAP2 00002a34: SWAP1 00002a35: JUMPDEST 00002a36: DUP1 00002a37: DUP3 00002a38: GT 00002a39: ISZERO 00002a3a: PUSH2 0x2925 00002a3d: JUMPI 00002a3e: DUP1 00002a3f: SLOAD 00002a40: PUSH1 0x01 00002a42: PUSH1 0x01 00002a44: PUSH1 0xa0 00002a46: SHL 00002a47: SUB 00002a48: NOT 00002a49: AND 00002a4a: DUP2 00002a4b: SSTORE 00002a4c: PUSH1 0x01 00002a4e: ADD 00002a4f: PUSH2 0x2a35 00002a52: JUMP 00002a53: JUMPDEST 00002a54: DUP1 00002a55: CALLDATALOAD 00002a56: PUSH1 0x01 00002a58: PUSH1 0x01 00002a5a: PUSH1 0xa0 00002a5c: SHL 00002a5d: SUB 00002a5e: DUP2 00002a5f: AND 00002a60: DUP2 00002a61: EQ 00002a62: PUSH2 0x095b 00002a65: JUMPI 00002a66: PUSH1 0x00 00002a68: DUP1 00002a69: REVERT 00002a6a: JUMPDEST 00002a6b: PUSH1 0x00 00002a6d: DUP1 00002a6e: DUP4 00002a6f: PUSH1 0x1f 00002a71: DUP5 00002a72: ADD 00002a73: SLT 00002a74: PUSH2 0x2a7b 00002a77: JUMPI 00002a78: DUP2 00002a79: DUP3 00002a7a: REVERT 00002a7b: JUMPDEST 00002a7c: POP 00002a7d: DUP2 00002a7e: CALLDATALOAD 00002a7f: PUSH8 0xffffffffffffffff 00002a88: DUP2 00002a89: GT 00002a8a: ISZERO 00002a8b: PUSH2 0x2a92 00002a8e: JUMPI 00002a8f: DUP2 00002a90: DUP3 00002a91: REVERT 00002a92: JUMPDEST 00002a93: PUSH1 0x20 00002a95: DUP4 00002a96: ADD 00002a97: SWAP2 00002a98: POP 00002a99: DUP4 00002a9a: PUSH1 0x20 00002a9c: DUP3 00002a9d: DUP6 00002a9e: ADD 00002a9f: ADD 00002aa0: GT 00002aa1: ISZERO 00002aa2: PUSH2 0x245f 00002aa5: JUMPI 00002aa6: PUSH1 0x00 00002aa8: DUP1 00002aa9: REVERT 00002aaa: JUMPDEST 00002aab: PUSH1 0x00 00002aad: PUSH1 0x20 00002aaf: DUP3 00002ab0: DUP5 00002ab1: SUB 00002ab2: SLT 00002ab3: ISZERO 00002ab4: PUSH2 0x2abb 00002ab7: JUMPI 00002ab8: DUP1 00002ab9: DUP2 00002aba: REVERT 00002abb: JUMPDEST 00002abc: PUSH2 0x0b9d 00002abf: DUP4 00002ac0: DUP4 00002ac1: PUSH2 0x2a53 00002ac4: JUMP 00002ac5: JUMPDEST 00002ac6: PUSH1 0x00 00002ac8: DUP1 00002ac9: PUSH1 0x40 00002acb: DUP4 00002acc: DUP6 00002acd: SUB 00002ace: SLT 00002acf: ISZERO 00002ad0: PUSH2 0x2ad7 00002ad3: JUMPI 00002ad4: DUP1 00002ad5: DUP2 00002ad6: REVERT 00002ad7: JUMPDEST 00002ad8: PUSH2 0x2ae1 00002adb: DUP5 00002adc: DUP5 00002add: PUSH2 0x2a53 00002ae0: JUMP 00002ae1: JUMPDEST 00002ae2: SWAP2 00002ae3: POP 00002ae4: PUSH2 0x2af0 00002ae7: DUP5 00002ae8: PUSH1 0x20 00002aea: DUP6 00002aeb: ADD 00002aec: PUSH2 0x2a53 00002aef: JUMP 00002af0: JUMPDEST 00002af1: SWAP1 00002af2: POP 00002af3: SWAP3 00002af4: POP 00002af5: SWAP3 00002af6: SWAP1 00002af7: POP 00002af8: JUMP 00002af9: JUMPDEST 00002afa: PUSH1 0x00 00002afc: DUP1 00002afd: PUSH1 0x00 00002aff: DUP1 00002b00: PUSH1 0x60 00002b02: DUP6 00002b03: DUP8 00002b04: SUB 00002b05: SLT 00002b06: ISZERO 00002b07: PUSH2 0x2b0e 00002b0a: JUMPI 00002b0b: DUP2 00002b0c: DUP3 00002b0d: REVERT 00002b0e: JUMPDEST 00002b0f: DUP5 00002b10: CALLDATALOAD 00002b11: PUSH2 0x2b19 00002b14: DUP2 00002b15: PUSH2 0x35c8 00002b18: JUMP 00002b19: JUMPDEST 00002b1a: SWAP4 00002b1b: POP 00002b1c: PUSH1 0x20 00002b1e: DUP6 00002b1f: ADD 00002b20: CALLDATALOAD 00002b21: PUSH2 0x2b29 00002b24: DUP2 00002b25: PUSH2 0x35c8 00002b28: JUMP 00002b29: JUMPDEST 00002b2a: SWAP3 00002b2b: POP 00002b2c: PUSH1 0x40 00002b2e: DUP6 00002b2f: ADD 00002b30: CALLDATALOAD 00002b31: PUSH8 0xffffffffffffffff 00002b3a: DUP2 00002b3b: GT 00002b3c: ISZERO 00002b3d: PUSH2 0x2b44 00002b40: JUMPI 00002b41: DUP3 00002b42: DUP4 00002b43: REVERT 00002b44: JUMPDEST 00002b45: PUSH2 0x2b50 00002b48: DUP8 00002b49: DUP3 00002b4a: DUP9 00002b4b: ADD 00002b4c: PUSH2 0x2a6a 00002b4f: JUMP 00002b50: JUMPDEST 00002b51: SWAP6 00002b52: SWAP9 00002b53: SWAP5 00002b54: SWAP8 00002b55: POP 00002b56: SWAP6 00002b57: POP 00002b58: POP 00002b59: POP 00002b5a: POP 00002b5b: JUMP 00002b5c: JUMPDEST 00002b5d: PUSH1 0x00 00002b5f: DUP1 00002b60: PUSH1 0x00 00002b62: PUSH1 0x60 00002b64: DUP5 00002b65: DUP7 00002b66: SUB 00002b67: SLT 00002b68: ISZERO 00002b69: PUSH2 0x2b70 00002b6c: JUMPI 00002b6d: DUP3 00002b6e: DUP4 00002b6f: REVERT 00002b70: JUMPDEST 00002b71: PUSH2 0x2b7a 00002b74: DUP6 00002b75: DUP6 00002b76: PUSH2 0x2a53 00002b79: JUMP 00002b7a: JUMPDEST 00002b7b: SWAP3 00002b7c: POP 00002b7d: PUSH2 0x2b89 00002b80: DUP6 00002b81: PUSH1 0x20 00002b83: DUP7 00002b84: ADD 00002b85: PUSH2 0x2a53 00002b88: JUMP 00002b89: JUMPDEST 00002b8a: SWAP2 00002b8b: POP 00002b8c: PUSH1 0x40 00002b8e: DUP5 00002b8f: ADD 00002b90: CALLDATALOAD 00002b91: SWAP1 00002b92: POP 00002b93: SWAP3 00002b94: POP 00002b95: SWAP3 00002b96: POP 00002b97: SWAP3 00002b98: JUMP 00002b99: JUMPDEST 00002b9a: PUSH1 0x00 00002b9c: DUP1 00002b9d: PUSH1 0x00 00002b9f: PUSH1 0x60 00002ba1: DUP5 00002ba2: DUP7 00002ba3: SUB 00002ba4: SLT 00002ba5: ISZERO 00002ba6: PUSH2 0x2bad 00002ba9: JUMPI 00002baa: DUP3 00002bab: DUP4 00002bac: REVERT 00002bad: JUMPDEST 00002bae: DUP4 00002baf: CALLDATALOAD 00002bb0: PUSH2 0x2bb8 00002bb3: DUP2 00002bb4: PUSH2 0x35c8 00002bb7: JUMP 00002bb8: JUMPDEST 00002bb9: SWAP3 00002bba: POP 00002bbb: PUSH1 0x20 00002bbd: DUP5 00002bbe: ADD 00002bbf: CALLDATALOAD 00002bc0: PUSH2 0x2bc8 00002bc3: DUP2 00002bc4: PUSH2 0x35c8 00002bc7: JUMP 00002bc8: JUMPDEST 00002bc9: SWAP3 00002bca: SWAP6 00002bcb: SWAP3 00002bcc: SWAP5 00002bcd: POP 00002bce: POP 00002bcf: POP 00002bd0: PUSH1 0x40 00002bd2: SWAP2 00002bd3: SWAP1 00002bd4: SWAP2 00002bd5: ADD 00002bd6: CALLDATALOAD 00002bd7: SWAP1 00002bd8: JUMP 00002bd9: JUMPDEST 00002bda: PUSH1 0x00 00002bdc: DUP1 00002bdd: PUSH1 0x40 00002bdf: DUP4 00002be0: DUP6 00002be1: SUB 00002be2: SLT 00002be3: ISZERO 00002be4: PUSH2 0x2beb 00002be7: JUMPI 00002be8: DUP2 00002be9: DUP3 00002bea: REVERT 00002beb: JUMPDEST 00002bec: PUSH2 0x2bf5 00002bef: DUP5 00002bf0: DUP5 00002bf1: PUSH2 0x2a53 00002bf4: JUMP 00002bf5: JUMPDEST 00002bf6: SWAP5 00002bf7: PUSH1 0x20 00002bf9: SWAP4 00002bfa: SWAP1 00002bfb: SWAP4 00002bfc: ADD 00002bfd: CALLDATALOAD 00002bfe: SWAP4 00002bff: POP 00002c00: POP 00002c01: POP 00002c02: JUMP 00002c03: JUMPDEST 00002c04: PUSH1 0x00 00002c06: DUP1 00002c07: PUSH1 0x00 00002c09: DUP1 00002c0a: PUSH1 0x60 00002c0c: DUP6 00002c0d: DUP8 00002c0e: SUB 00002c0f: SLT 00002c10: ISZERO 00002c11: PUSH2 0x2c18 00002c14: JUMPI 00002c15: DUP4 00002c16: DUP5 00002c17: REVERT 00002c18: JUMPDEST 00002c19: DUP5 00002c1a: CALLDATALOAD 00002c1b: PUSH2 0x2c23 00002c1e: DUP2 00002c1f: PUSH2 0x35c8 00002c22: JUMP 00002c23: JUMPDEST 00002c24: SWAP4 00002c25: POP 00002c26: PUSH1 0x20 00002c28: DUP6 00002c29: ADD 00002c2a: CALLDATALOAD 00002c2b: SWAP3 00002c2c: POP 00002c2d: PUSH1 0x40 00002c2f: DUP6 00002c30: ADD 00002c31: CALLDATALOAD 00002c32: PUSH8 0xffffffffffffffff 00002c3b: DUP2 00002c3c: GT 00002c3d: ISZERO 00002c3e: PUSH2 0x2b44 00002c41: JUMPI 00002c42: DUP3 00002c43: DUP4 00002c44: REVERT 00002c45: JUMPDEST 00002c46: PUSH1 0x00 00002c48: PUSH1 0x20 00002c4a: DUP3 00002c4b: DUP5 00002c4c: SUB 00002c4d: SLT 00002c4e: ISZERO 00002c4f: PUSH2 0x2c56 00002c52: JUMPI 00002c53: DUP1 00002c54: DUP2 00002c55: REVERT 00002c56: JUMPDEST 00002c57: DUP2 00002c58: MLOAD 00002c59: DUP1 00002c5a: ISZERO 00002c5b: ISZERO 00002c5c: DUP2 00002c5d: EQ 00002c5e: PUSH2 0x0b9d 00002c61: JUMPI 00002c62: DUP2 00002c63: DUP3 00002c64: REVERT 00002c65: JUMPDEST 00002c66: PUSH1 0x00 00002c68: PUSH1 0x20 00002c6a: DUP3 00002c6b: DUP5 00002c6c: SUB 00002c6d: SLT 00002c6e: ISZERO 00002c6f: PUSH2 0x2c76 00002c72: JUMPI 00002c73: DUP1 00002c74: DUP2 00002c75: REVERT 00002c76: JUMPDEST 00002c77: POP 00002c78: CALLDATALOAD 00002c79: SWAP2 00002c7a: SWAP1 00002c7b: POP 00002c7c: JUMP 00002c7d: JUMPDEST 00002c7e: PUSH1 0x00 00002c80: DUP3 00002c81: DUP5 00002c82: MSTORE 00002c83: DUP3 00002c84: DUP3 00002c85: PUSH1 0x20 00002c87: DUP7 00002c88: ADD 00002c89: CALLDATACOPY 00002c8a: DUP1 00002c8b: PUSH1 0x20 00002c8d: DUP5 00002c8e: DUP7 00002c8f: ADD 00002c90: ADD 00002c91: MSTORE 00002c92: PUSH1 0x20 00002c94: PUSH1 0x1f 00002c96: NOT 00002c97: PUSH1 0x1f 00002c99: DUP6 00002c9a: ADD 00002c9b: AND 00002c9c: DUP6 00002c9d: ADD 00002c9e: ADD 00002c9f: SWAP1 00002ca0: POP 00002ca1: SWAP4 00002ca2: SWAP3 00002ca3: POP 00002ca4: POP 00002ca5: POP 00002ca6: JUMP 00002ca7: JUMPDEST 00002ca8: PUSH1 0x00 00002caa: DUP2 00002cab: MLOAD 00002cac: DUP1 00002cad: DUP5 00002cae: MSTORE 00002caf: PUSH2 0x2cbf 00002cb2: DUP2 00002cb3: PUSH1 0x20 00002cb5: DUP7 00002cb6: ADD 00002cb7: PUSH1 0x20 00002cb9: DUP7 00002cba: ADD 00002cbb: PUSH2 0x3598 00002cbe: JUMP 00002cbf: JUMPDEST 00002cc0: PUSH1 0x1f 00002cc2: ADD 00002cc3: PUSH1 0x1f 00002cc5: NOT 00002cc6: AND 00002cc7: SWAP3 00002cc8: SWAP1 00002cc9: SWAP3 00002cca: ADD 00002ccb: PUSH1 0x20 00002ccd: ADD 00002cce: SWAP3 00002ccf: SWAP2 00002cd0: POP 00002cd1: POP 00002cd2: JUMP 00002cd3: JUMPDEST 00002cd4: PUSH1 0x00 00002cd6: DUP3 00002cd7: MLOAD 00002cd8: PUSH2 0x2ce5 00002cdb: DUP2 00002cdc: DUP5 00002cdd: PUSH1 0x20 00002cdf: DUP8 00002ce0: ADD 00002ce1: PUSH2 0x3598 00002ce4: JUMP 00002ce5: JUMPDEST 00002ce6: SWAP2 00002ce7: SWAP1 00002ce8: SWAP2 00002ce9: ADD 00002cea: SWAP3 00002ceb: SWAP2 00002cec: POP 00002ced: POP 00002cee: JUMP 00002cef: JUMPDEST 00002cf0: PUSH1 0x01 00002cf2: PUSH1 0x01 00002cf4: PUSH1 0xa0 00002cf6: SHL 00002cf7: SUB 00002cf8: SWAP2 00002cf9: SWAP1 00002cfa: SWAP2 00002cfb: AND 00002cfc: DUP2 00002cfd: MSTORE 00002cfe: PUSH1 0x20 00002d00: ADD 00002d01: SWAP1 00002d02: JUMP 00002d03: JUMPDEST 00002d04: PUSH1 0x01 00002d06: PUSH1 0x01 00002d08: PUSH1 0xa0 00002d0a: SHL 00002d0b: SUB 00002d0c: SWAP3 00002d0d: DUP4 00002d0e: AND 00002d0f: DUP2 00002d10: MSTORE 00002d11: SWAP2 00002d12: AND 00002d13: PUSH1 0x20 00002d15: DUP3 00002d16: ADD 00002d17: MSTORE 00002d18: PUSH1 0x40 00002d1a: ADD 00002d1b: SWAP1 00002d1c: JUMP 00002d1d: JUMPDEST 00002d1e: PUSH1 0x20 00002d20: DUP1 00002d21: DUP3 00002d22: MSTORE 00002d23: DUP3 00002d24: MLOAD 00002d25: DUP3 00002d26: DUP3 00002d27: ADD 00002d28: DUP2 00002d29: SWAP1 00002d2a: MSTORE 00002d2b: PUSH1 0x00 00002d2d: SWAP2 00002d2e: SWAP1 00002d2f: DUP5 00002d30: DUP3 00002d31: ADD 00002d32: SWAP1 00002d33: PUSH1 0x40 00002d35: DUP6 00002d36: ADD 00002d37: SWAP1 00002d38: DUP5 00002d39: JUMPDEST 00002d3a: DUP2 00002d3b: DUP2 00002d3c: LT 00002d3d: ISZERO 00002d3e: PUSH2 0x2d5e 00002d41: JUMPI 00002d42: DUP4 00002d43: MLOAD 00002d44: PUSH1 0x01 00002d46: PUSH1 0x01 00002d48: PUSH1 0xa0 00002d4a: SHL 00002d4b: SUB 00002d4c: AND 00002d4d: DUP4 00002d4e: MSTORE 00002d4f: SWAP3 00002d50: DUP5 00002d51: ADD 00002d52: SWAP3 00002d53: SWAP2 00002d54: DUP5 00002d55: ADD 00002d56: SWAP2 00002d57: PUSH1 0x01 00002d59: ADD 00002d5a: PUSH2 0x2d39 00002d5d: JUMP 00002d5e: JUMPDEST 00002d5f: POP 00002d60: SWAP1 00002d61: SWAP7 00002d62: SWAP6 00002d63: POP 00002d64: POP 00002d65: POP 00002d66: POP 00002d67: POP 00002d68: POP 00002d69: JUMP 00002d6a: JUMPDEST 00002d6b: PUSH1 0x20 00002d6d: DUP1 00002d6e: DUP3 00002d6f: MSTORE 00002d70: DUP3 00002d71: MLOAD 00002d72: DUP3 00002d73: DUP3 00002d74: ADD 00002d75: DUP2 00002d76: SWAP1 00002d77: MSTORE 00002d78: PUSH1 0x00 00002d7a: SWAP2 00002d7b: SWAP1 00002d7c: PUSH1 0x40 00002d7e: SWAP1 00002d7f: DUP2 00002d80: DUP6 00002d81: ADD 00002d82: SWAP1 00002d83: DUP1 00002d84: DUP5 00002d85: MUL 00002d86: DUP7 00002d87: ADD 00002d88: DUP4 00002d89: ADD 00002d8a: DUP8 00002d8b: DUP6 00002d8c: ADD 00002d8d: DUP7 00002d8e: JUMPDEST 00002d8f: DUP4 00002d90: DUP2 00002d91: LT 00002d92: ISZERO 00002d93: PUSH2 0x2e00 00002d96: JUMPI 00002d97: DUP9 00002d98: DUP4 00002d99: SUB 00002d9a: PUSH1 0x3f 00002d9c: NOT 00002d9d: ADD 00002d9e: DUP6 00002d9f: MSTORE 00002da0: DUP2 00002da1: MLOAD 00002da2: DUP1 00002da3: MLOAD 00002da4: PUSH1 0x01 00002da6: PUSH1 0x01 00002da8: PUSH1 0xa0 00002daa: SHL 00002dab: SUB 00002dac: SWAP1 00002dad: DUP2 00002dae: AND 00002daf: DUP6 00002db0: MSTORE 00002db1: DUP9 00002db2: DUP3 00002db3: ADD 00002db4: MLOAD 00002db5: AND 00002db6: DUP9 00002db7: DUP6 00002db8: ADD 00002db9: MSTORE 00002dba: DUP7 00002dbb: DUP2 00002dbc: ADD 00002dbd: MLOAD 00002dbe: DUP8 00002dbf: DUP6 00002dc0: ADD 00002dc1: MSTORE 00002dc2: PUSH1 0x60 00002dc4: DUP1 00002dc5: DUP3 00002dc6: ADD 00002dc7: MLOAD 00002dc8: PUSH1 0xff 00002dca: AND 00002dcb: SWAP1 00002dcc: DUP6 00002dcd: ADD 00002dce: MSTORE 00002dcf: PUSH1 0x80 00002dd1: DUP1 00002dd2: DUP3 00002dd3: ADD 00002dd4: MLOAD 00002dd5: PUSH1 0xa0 00002dd7: DUP3 00002dd8: DUP8 00002dd9: ADD 00002dda: DUP2 00002ddb: SWAP1 00002ddc: MSTORE 00002ddd: SWAP2 00002dde: SWAP1 00002ddf: PUSH2 0x2dea 00002de2: DUP4 00002de3: DUP9 00002de4: ADD 00002de5: DUP3 00002de6: PUSH2 0x2ca7 00002de9: JUMP 00002dea: JUMPDEST 00002deb: SWAP9 00002dec: DUP12 00002ded: ADD 00002dee: SWAP9 00002def: SWAP7 00002df0: POP 00002df1: POP 00002df2: POP 00002df3: SWAP3 00002df4: DUP9 00002df5: ADD 00002df6: SWAP3 00002df7: POP 00002df8: POP 00002df9: PUSH1 0x01 00002dfb: ADD 00002dfc: PUSH2 0x2d8e 00002dff: JUMP 00002e00: JUMPDEST 00002e01: POP 00002e02: SWAP1 00002e03: SWAP9 00002e04: SWAP8 00002e05: POP 00002e06: POP 00002e07: POP 00002e08: POP 00002e09: POP 00002e0a: POP 00002e0b: POP 00002e0c: POP 00002e0d: JUMP 00002e0e: JUMPDEST 00002e0f: SWAP1 00002e10: ISZERO 00002e11: ISZERO 00002e12: DUP2 00002e13: MSTORE 00002e14: PUSH1 0x20 00002e16: ADD 00002e17: SWAP1 00002e18: JUMP 00002e19: JUMPDEST 00002e1a: PUSH1 0x00 00002e1c: PUSH1 0x20 00002e1e: DUP3 00002e1f: MSTORE 00002e20: PUSH2 0x1316 00002e23: PUSH1 0x20 00002e25: DUP4 00002e26: ADD 00002e27: DUP5 00002e28: DUP7 00002e29: PUSH2 0x2c7d 00002e2c: JUMP 00002e2d: JUMPDEST 00002e2e: PUSH1 0x00 00002e30: PUSH1 0x40 00002e32: DUP3 00002e33: MSTORE 00002e34: PUSH2 0x2e41 00002e37: PUSH1 0x40 00002e39: DUP4 00002e3a: ADD 00002e3b: DUP6 00002e3c: DUP8 00002e3d: PUSH2 0x2c7d 00002e40: JUMP 00002e41: JUMPDEST 00002e42: DUP3 00002e43: DUP2 00002e44: SUB 00002e45: PUSH1 0x20 00002e47: DUP5 00002e48: ADD 00002e49: MSTORE 00002e4a: PUSH2 0x2e53 00002e4d: DUP2 00002e4e: DUP6 00002e4f: PUSH2 0x2ca7 00002e52: JUMP 00002e53: JUMPDEST 00002e54: SWAP7 00002e55: SWAP6 00002e56: POP 00002e57: POP 00002e58: POP 00002e59: POP 00002e5a: POP 00002e5b: POP 00002e5c: JUMP 00002e5d: JUMPDEST 00002e5e: PUSH1 0x00 00002e60: PUSH1 0x20 00002e62: DUP3 00002e63: MSTORE 00002e64: PUSH2 0x0b9d 00002e67: PUSH1 0x20 00002e69: DUP4 00002e6a: ADD 00002e6b: DUP5 00002e6c: PUSH2 0x2ca7 00002e6f: JUMP 00002e70: JUMPDEST 00002e71: PUSH1 0x20 00002e73: DUP2 00002e74: ADD 00002e75: PUSH1 0x03 00002e77: DUP4 00002e78: LT 00002e79: PUSH2 0x2e7e 00002e7c: JUMPI 00002e7d: INVALID 00002e7e: JUMPDEST 00002e7f: SWAP2 00002e80: SWAP1 00002e81: MSTORE 00002e82: SWAP1 00002e83: JUMP 00002e84: JUMPDEST 00002e85: SWAP1 00002e86: DUP2 00002e87: MSTORE 00002e88: PUSH1 0x20 00002e8a: ADD 00002e8b: SWAP1 00002e8c: JUMP 00002e8d: JUMPDEST 00002e8e: PUSH1 0x20 00002e90: DUP1 00002e91: DUP3 00002e92: MSTORE 00002e93: PUSH1 0x12 00002e95: SWAP1 00002e96: DUP3 00002e97: ADD 00002e98: MSTORE 00002e99: PUSH18 0x135d5cdd081b9bdd081899481b1bd8dad959 00002eac: PUSH1 0x72 00002eae: SHL 00002eaf: PUSH1 0x40 00002eb1: DUP3 00002eb2: ADD 00002eb3: MSTORE 00002eb4: PUSH1 0x60 00002eb6: ADD 00002eb7: SWAP1 00002eb8: JUMP 00002eb9: JUMPDEST 00002eba: PUSH1 0x20 00002ebc: DUP1 00002ebd: DUP3 00002ebe: MSTORE 00002ebf: PUSH1 0x23 00002ec1: SWAP1 00002ec2: DUP3 00002ec3: ADD 00002ec4: MSTORE 00002ec5: PUSH32 0x45524332303a207472616e7366657220746f20746865207a65726f2061646472 00002ee6: PUSH1 0x40 00002ee8: DUP3 00002ee9: ADD 00002eea: MSTORE 00002eeb: PUSH3 0x657373 00002eef: PUSH1 0xe8 00002ef1: SHL 00002ef2: PUSH1 0x60 00002ef4: DUP3 00002ef5: ADD 00002ef6: MSTORE 00002ef7: PUSH1 0x80 00002ef9: ADD 00002efa: SWAP1 00002efb: JUMP 00002efc: JUMPDEST 00002efd: PUSH1 0x20 00002eff: DUP1 00002f00: DUP3 00002f01: MSTORE 00002f02: PUSH1 0x15 00002f04: SWAP1 00002f05: DUP3 00002f06: ADD 00002f07: MSTORE 00002f08: PUSH21 0x20b2323932b9b9903737ba1034b71030b93930bc97 00002f1e: PUSH1 0x59 00002f20: SHL 00002f21: PUSH1 0x40 00002f23: DUP3 00002f24: ADD 00002f25: MSTORE 00002f26: PUSH1 0x60 00002f28: ADD 00002f29: SWAP1 00002f2a: JUMP 00002f2b: JUMPDEST 00002f2c: PUSH1 0x20 00002f2e: DUP1 00002f2f: DUP3 00002f30: MSTORE 00002f31: PUSH1 0x18 00002f33: SWAP1 00002f34: DUP3 00002f35: ADD 00002f36: MSTORE 00002f37: PUSH32 0x496e646578206d757374206265203c2041206c656e6774680000000000000000 00002f58: PUSH1 0x40 00002f5a: DUP3 00002f5b: ADD 00002f5c: MSTORE 00002f5d: PUSH1 0x60 00002f5f: ADD 00002f60: SWAP1 00002f61: JUMP 00002f62: JUMPDEST 00002f63: PUSH1 0x20 00002f65: DUP1 00002f66: DUP3 00002f67: MSTORE 00002f68: PUSH1 0x18 00002f6a: SWAP1 00002f6b: DUP3 00002f6c: ADD 00002f6d: MSTORE 00002f6e: PUSH32 0x4d6f64756c65206d757374206e6f742062652061646465640000000000000000 00002f8f: PUSH1 0x40 00002f91: DUP3 00002f92: ADD 00002f93: MSTORE 00002f94: PUSH1 0x60 00002f96: ADD 00002f97: SWAP1 00002f98: JUMP 00002f99: JUMPDEST 00002f9a: PUSH1 0x20 00002f9c: DUP1 00002f9d: DUP3 00002f9e: MSTORE 00002f9f: PUSH1 0x22 00002fa1: SWAP1 00002fa2: DUP3 00002fa3: ADD 00002fa4: MSTORE 00002fa5: PUSH32 0x45524332303a20617070726f766520746f20746865207a65726f206164647265 00002fc6: PUSH1 0x40 00002fc8: DUP3 00002fc9: ADD 00002fca: MSTORE 00002fcb: PUSH2 0x7373 00002fce: PUSH1 0xf0 00002fd0: SHL 00002fd1: PUSH1 0x60 00002fd3: DUP3 00002fd4: ADD 00002fd5: MSTORE 00002fd6: PUSH1 0x80 00002fd8: ADD 00002fd9: SWAP1 00002fda: JUMP 00002fdb: JUMPDEST 00002fdc: PUSH1 0x20 00002fde: DUP1 00002fdf: DUP3 00002fe0: MSTORE 00002fe1: PUSH1 0x1b 00002fe3: SWAP1 00002fe4: DUP3 00002fe5: ADD 00002fe6: MSTORE 00002fe7: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000 00003008: PUSH1 0x40 0000300a: DUP3 0000300b: ADD 0000300c: MSTORE 0000300d: PUSH1 0x60 0000300f: ADD 00003010: SWAP1 00003011: JUMP 00003012: JUMPDEST 00003013: PUSH1 0x20 00003015: DUP1 00003016: DUP3 00003017: MSTORE 00003018: PUSH1 0x21 0000301a: SWAP1 0000301b: DUP3 0000301c: ADD 0000301d: MSTORE 0000301e: PUSH32 0x5369676e6564536166654d6174683a206164646974696f6e206f766572666c6f 0000303f: PUSH1 0x40 00003041: DUP3 00003042: ADD 00003043: MSTORE 00003044: PUSH1 0x77 00003046: PUSH1 0xf8 00003048: SHL 00003049: PUSH1 0x60 0000304b: DUP3 0000304c: ADD 0000304d: MSTORE 0000304e: PUSH1 0x80 00003050: ADD 00003051: SWAP1 00003052: JUMP 00003053: JUMPDEST 00003054: PUSH1 0x20 00003056: DUP1 00003057: DUP3 00003058: MSTORE 00003059: PUSH1 0x26 0000305b: SWAP1 0000305c: DUP3 0000305d: ADD 0000305e: MSTORE 0000305f: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 00003080: PUSH1 0x40 00003082: DUP3 00003083: ADD 00003084: MSTORE 00003085: PUSH6 0x1c8818d85b1b 0000308c: PUSH1 0xd2 0000308e: SHL 0000308f: PUSH1 0x60 00003091: DUP3 00003092: ADD 00003093: MSTORE 00003094: PUSH1 0x80 00003096: ADD 00003097: SWAP1 00003098: JUMP 00003099: JUMPDEST 0000309a: PUSH1 0x20 0000309c: DUP1 0000309d: DUP3 0000309e: MSTORE 0000309f: PUSH1 0x1f 000030a1: SWAP1 000030a2: DUP3 000030a3: ADD 000030a4: MSTORE 000030a5: PUSH32 0x5669727475616c20756e697420636f6e76657273696f6e20696e76616c696400 000030c6: PUSH1 0x40 000030c8: DUP3 000030c9: ADD 000030ca: MSTORE 000030cb: PUSH1 0x60 000030cd: ADD 000030ce: SWAP1 000030cf: JUMP 000030d0: JUMPDEST 000030d1: PUSH1 0x20 000030d3: DUP1 000030d4: DUP3 000030d5: MSTORE 000030d6: PUSH1 0x14 000030d8: SWAP1 000030d9: DUP3 000030da: ADD 000030db: MSTORE 000030dc: PUSH20 0x135bd91d5b19481b5d5cdd081899481859191959 000030f1: PUSH1 0x62 000030f3: SHL 000030f4: PUSH1 0x40 000030f6: DUP3 000030f7: ADD 000030f8: MSTORE 000030f9: PUSH1 0x60 000030fb: ADD 000030fc: SWAP1 000030fd: JUMP 000030fe: JUMPDEST 000030ff: PUSH1 0x20 00003101: DUP1 00003102: DUP3 00003103: MSTORE 00003104: PUSH1 0x16 00003106: SWAP1 00003107: DUP3 00003108: ADD 00003109: MSTORE 0000310a: PUSH22 0x04d7573742062652067726561746572207468616e203 00003121: PUSH1 0x54 00003123: SHL 00003124: PUSH1 0x40 00003126: DUP3 00003127: ADD 00003128: MSTORE 00003129: PUSH1 0x60 0000312b: ADD 0000312c: SWAP1 0000312d: JUMP 0000312e: JUMPDEST 0000312f: PUSH1 0x20 00003131: DUP1 00003132: DUP3 00003133: MSTORE 00003134: PUSH1 0x25 00003136: SWAP1 00003137: DUP3 00003138: ADD 00003139: MSTORE 0000313a: PUSH32 0x5768656e206c6f636b65642c206f6e6c7920746865206c6f636b65722063616e 0000315b: PUSH1 0x40 0000315d: DUP3 0000315e: ADD 0000315f: MSTORE 00003160: PUSH5 0x0818d85b1b 00003166: PUSH1 0xda 00003168: SHL 00003169: PUSH1 0x60 0000316b: DUP3 0000316c: ADD 0000316d: MSTORE 0000316e: PUSH1 0x80 00003170: ADD 00003171: SWAP1 00003172: JUMP 00003173: JUMPDEST 00003174: PUSH1 0x20 00003176: DUP1 00003177: DUP3 00003178: MSTORE 00003179: PUSH1 0x18 0000317b: SWAP1 0000317c: DUP3 0000317d: ADD 0000317e: MSTORE 0000317f: PUSH32 0x4f6e6c7920746865206d6f64756c652063616e2063616c6c0000000000000000 000031a0: PUSH1 0x40 000031a2: DUP3 000031a3: ADD 000031a4: MSTORE 000031a5: PUSH1 0x60 000031a7: ADD 000031a8: SWAP1 000031a9: JUMP 000031aa: JUMPDEST 000031ab: PUSH1 0x20 000031ad: DUP1 000031ae: DUP3 000031af: MSTORE 000031b0: PUSH1 0x21 000031b2: SWAP1 000031b3: DUP3 000031b4: ADD 000031b5: MSTORE 000031b6: PUSH32 0x5369676e6564536166654d6174683a206469766973696f6e206f766572666c6f 000031d7: PUSH1 0x40 000031d9: DUP3 000031da: ADD 000031db: MSTORE 000031dc: PUSH1 0x77 000031de: PUSH1 0xf8 000031e0: SHL 000031e1: PUSH1 0x60 000031e3: DUP3 000031e4: ADD 000031e5: MSTORE 000031e6: PUSH1 0x80 000031e8: ADD 000031e9: SWAP1 000031ea: JUMP 000031eb: JUMPDEST 000031ec: PUSH1 0x20 000031ee: DUP1 000031ef: DUP3 000031f0: MSTORE 000031f1: PUSH1 0x1d 000031f3: SWAP1 000031f4: DUP3 000031f5: ADD 000031f6: MSTORE 000031f7: PUSH32 0x4d75737420626520656e61626c6564206f6e20436f6e74726f6c6c6572000000 00003218: PUSH1 0x40 0000321a: DUP3 0000321b: ADD 0000321c: MSTORE 0000321d: PUSH1 0x60 0000321f: ADD 00003220: SWAP1 00003221: JUMP 00003222: JUMPDEST 00003223: PUSH1 0x20 00003225: DUP1 00003226: DUP3 00003227: MSTORE 00003228: PUSH1 0x27 0000322a: SWAP1 0000322b: DUP3 0000322c: ADD 0000322d: MSTORE 0000322e: PUSH32 0x5369676e6564536166654d6174683a206d756c7469706c69636174696f6e206f 0000324f: PUSH1 0x40 00003251: DUP3 00003252: ADD 00003253: MSTORE 00003254: PUSH7 0x766572666c6f77 0000325c: PUSH1 0xc8 0000325e: SHL 0000325f: PUSH1 0x60 00003261: DUP3 00003262: ADD 00003263: MSTORE 00003264: PUSH1 0x80 00003266: ADD 00003267: SWAP1 00003268: JUMP 00003269: JUMPDEST 0000326a: PUSH1 0x20 0000326c: DUP1 0000326d: DUP3 0000326e: MSTORE 0000326f: PUSH1 0x0e 00003271: SWAP1 00003272: DUP3 00003273: ADD 00003274: MSTORE 00003275: PUSH14 0x135d5cdd081899481b1bd8dad959 00003284: PUSH1 0x92 00003286: SHL 00003287: PUSH1 0x40 00003289: DUP3 0000328a: ADD 0000328b: MSTORE 0000328c: PUSH1 0x60 0000328e: ADD 0000328f: SWAP1 00003290: JUMP 00003291: JUMPDEST 00003292: PUSH1 0x20 00003294: DUP1 00003295: DUP3 00003296: MSTORE 00003297: PUSH1 0x0d 00003299: SWAP1 0000329a: DUP3 0000329b: ADD 0000329c: MSTORE 0000329d: PUSH13 0x125b9d985b1a59081a5b9c1d5d 000032ab: PUSH1 0x9a 000032ad: SHL 000032ae: PUSH1 0x40 000032b0: DUP3 000032b1: ADD 000032b2: MSTORE 000032b3: PUSH1 0x60 000032b5: ADD 000032b6: SWAP1 000032b7: JUMP 000032b8: JUMPDEST 000032b9: PUSH1 0x20 000032bb: DUP1 000032bc: DUP3 000032bd: MSTORE 000032be: PUSH1 0x21 000032c0: SWAP1 000032c1: DUP3 000032c2: ADD 000032c3: MSTORE 000032c4: PUSH32 0x45524332303a206275726e2066726f6d20746865207a65726f20616464726573 000032e5: PUSH1 0x40 000032e7: DUP3 000032e8: ADD 000032e9: MSTORE 000032ea: PUSH1 0x73 000032ec: PUSH1 0xf8 000032ee: SHL 000032ef: PUSH1 0x60 000032f1: DUP3 000032f2: ADD 000032f3: MSTORE 000032f4: PUSH1 0x80 000032f6: ADD 000032f7: SWAP1 000032f8: JUMP 000032f9: JUMPDEST 000032fa: PUSH1 0x20 000032fc: DUP1 000032fd: DUP3 000032fe: MSTORE 000032ff: PUSH1 0x0e 00003301: SWAP1 00003302: DUP3 00003303: ADD 00003304: MSTORE 00003305: PUSH14 0x26bab9ba103132903637b1b5b2b9 00003314: PUSH1 0x91 00003316: SHL 00003317: PUSH1 0x40 00003319: DUP3 0000331a: ADD 0000331b: MSTORE 0000331c: PUSH1 0x60 0000331e: ADD 0000331f: SWAP1 00003320: JUMP 00003321: JUMPDEST 00003322: PUSH1 0x20 00003324: DUP1 00003325: DUP3 00003326: MSTORE 00003327: PUSH1 0x25 00003329: SWAP1 0000332a: DUP3 0000332b: ADD 0000332c: MSTORE 0000332d: PUSH32 0x45524332303a207472616e736665722066726f6d20746865207a65726f206164 0000334e: PUSH1 0x40 00003350: DUP3 00003351: ADD 00003352: MSTORE 00003353: PUSH5 0x6472657373 00003359: PUSH1 0xd8 0000335b: SHL 0000335c: PUSH1 0x60 0000335e: DUP3 0000335f: ADD 00003360: MSTORE 00003361: PUSH1 0x80 00003363: ADD 00003364: SWAP1 00003365: JUMP 00003366: JUMPDEST 00003367: PUSH1 0x20 00003369: DUP1 0000336a: DUP3 0000336b: MSTORE 0000336c: PUSH1 0x24 0000336e: SWAP1 0000336f: DUP3 00003370: ADD 00003371: MSTORE 00003372: PUSH32 0x45524332303a20617070726f76652066726f6d20746865207a65726f20616464 00003393: PUSH1 0x40 00003395: DUP3 00003396: ADD 00003397: MSTORE 00003398: PUSH4 0x72657373 0000339d: PUSH1 0xe0 0000339f: SHL 000033a0: PUSH1 0x60 000033a2: DUP3 000033a3: ADD 000033a4: MSTORE 000033a5: PUSH1 0x80 000033a7: ADD 000033a8: SWAP1 000033a9: JUMP 000033aa: JUMPDEST 000033ab: PUSH1 0x20 000033ad: DUP1 000033ae: DUP3 000033af: MSTORE 000033b0: PUSH1 0x1d 000033b2: SWAP1 000033b3: DUP3 000033b4: ADD 000033b5: MSTORE 000033b6: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 000033d7: PUSH1 0x40 000033d9: DUP3 000033da: ADD 000033db: MSTORE 000033dc: PUSH1 0x60 000033de: ADD 000033df: SWAP1 000033e0: JUMP 000033e1: JUMPDEST 000033e2: PUSH1 0x20 000033e4: DUP1 000033e5: DUP3 000033e6: MSTORE 000033e7: PUSH1 0x24 000033e9: SWAP1 000033ea: DUP3 000033eb: ADD 000033ec: MSTORE 000033ed: PUSH32 0x4d6f64756c65206d75737420626520656e61626c6564206f6e20636f6e74726f 0000340e: PUSH1 0x40 00003410: DUP3 00003411: ADD 00003412: MSTORE 00003413: PUSH4 0x363632b9 00003418: PUSH1 0xe1 0000341a: SHL 0000341b: PUSH1 0x60 0000341d: DUP3 0000341e: ADD 0000341f: MSTORE 00003420: PUSH1 0x80 00003422: ADD 00003423: SWAP1 00003424: JUMP 00003425: JUMPDEST 00003426: PUSH1 0x20 00003428: DUP1 00003429: DUP3 0000342a: MSTORE 0000342b: PUSH1 0x12 0000342d: SWAP1 0000342e: DUP3 0000342f: ADD 00003430: MSTORE 00003431: PUSH18 0x13db9b1e481dda195b881d5b9b1bd8dad959 00003444: PUSH1 0x72 00003446: SHL 00003447: PUSH1 0x40 00003449: DUP3 0000344a: ADD 0000344b: MSTORE 0000344c: PUSH1 0x60 0000344e: ADD 0000344f: SWAP1 00003450: JUMP 00003451: JUMPDEST 00003452: PUSH1 0x20 00003454: DUP1 00003455: DUP3 00003456: MSTORE 00003457: PUSH1 0x24 00003459: SWAP1 0000345a: DUP3 0000345b: ADD 0000345c: MSTORE 0000345d: PUSH32 0x5369676e6564536166654d6174683a207375627472616374696f6e206f766572 0000347e: PUSH1 0x40 00003480: DUP3 00003481: ADD 00003482: MSTORE 00003483: PUSH4 0x666c6f77 00003488: PUSH1 0xe0 0000348a: SHL 0000348b: PUSH1 0x60 0000348d: DUP3 0000348e: ADD 0000348f: MSTORE 00003490: PUSH1 0x80 00003492: ADD 00003493: SWAP1 00003494: JUMP 00003495: JUMPDEST 00003496: PUSH1 0x20 00003498: DUP1 00003499: DUP3 0000349a: MSTORE 0000349b: PUSH1 0x15 0000349d: SWAP1 0000349e: DUP3 0000349f: ADD 000034a0: MSTORE 000034a1: PUSH21 0x13db9b1e481b585b9859d95c8818d85b8818d85b1b 000034b7: PUSH1 0x5a 000034b9: SHL 000034ba: PUSH1 0x40 000034bc: DUP3 000034bd: ADD 000034be: MSTORE 000034bf: PUSH1 0x60 000034c1: ADD 000034c2: SWAP1 000034c3: JUMP 000034c4: JUMPDEST 000034c5: PUSH1 0x20 000034c7: DUP1 000034c8: DUP3 000034c9: MSTORE 000034ca: DUP2 000034cb: DUP2 000034cc: ADD 000034cd: MSTORE 000034ce: PUSH32 0x5369676e6564536166654d6174683a206469766973696f6e206279207a65726f 000034ef: PUSH1 0x40 000034f1: DUP3 000034f2: ADD 000034f3: MSTORE 000034f4: PUSH1 0x60 000034f6: ADD 000034f7: SWAP1 000034f8: JUMP 000034f9: JUMPDEST 000034fa: PUSH1 0x20 000034fc: DUP1 000034fd: DUP3 000034fe: MSTORE 000034ff: PUSH1 0x16 00003501: SWAP1 00003502: DUP3 00003503: ADD 00003504: MSTORE 00003505: PUSH22 0x4d6f64756c65206d7573742062652070656e64696e67 0000351c: PUSH1 0x50 0000351e: SHL 0000351f: PUSH1 0x40 00003521: DUP3 00003522: ADD 00003523: MSTORE 00003524: PUSH1 0x60 00003526: ADD 00003527: SWAP1 00003528: JUMP 00003529: JUMPDEST 0000352a: PUSH1 0x20 0000352c: DUP1 0000352d: DUP3 0000352e: MSTORE 0000352f: PUSH1 0x1f 00003531: SWAP1 00003532: DUP3 00003533: ADD 00003534: MSTORE 00003535: PUSH32 0x45524332303a206d696e7420746f20746865207a65726f206164647265737300 00003556: PUSH1 0x40 00003558: DUP3 00003559: ADD 0000355a: MSTORE 0000355b: PUSH1 0x60 0000355d: ADD 0000355e: SWAP1 0000355f: JUMP 00003560: JUMPDEST 00003561: PUSH1 0x20 00003563: DUP1 00003564: DUP3 00003565: MSTORE 00003566: PUSH1 0x10 00003568: SWAP1 00003569: DUP3 0000356a: ADD 0000356b: MSTORE 0000356c: PUSH16 0x043616e7420646976696465206279203 0000357d: PUSH1 0x84 0000357f: SHL 00003580: PUSH1 0x40 00003582: DUP3 00003583: ADD 00003584: MSTORE 00003585: PUSH1 0x60 00003587: ADD 00003588: SWAP1 00003589: JUMP 0000358a: JUMPDEST 0000358b: PUSH1 0xff 0000358d: SWAP2 0000358e: SWAP1 0000358f: SWAP2 00003590: AND 00003591: DUP2 00003592: MSTORE 00003593: PUSH1 0x20 00003595: ADD 00003596: SWAP1 00003597: JUMP 00003598: JUMPDEST 00003599: PUSH1 0x00 0000359b: JUMPDEST 0000359c: DUP4 0000359d: DUP2 0000359e: LT 0000359f: ISZERO 000035a0: PUSH2 0x35b3 000035a3: JUMPI 000035a4: DUP2 000035a5: DUP2 000035a6: ADD 000035a7: MLOAD 000035a8: DUP4 000035a9: DUP3 000035aa: ADD 000035ab: MSTORE 000035ac: PUSH1 0x20 000035ae: ADD 000035af: PUSH2 0x359b 000035b2: JUMP 000035b3: JUMPDEST 000035b4: DUP4 000035b5: DUP2 000035b6: GT 000035b7: ISZERO 000035b8: PUSH2 0x35c2 000035bb: JUMPI 000035bc: PUSH1 0x00 000035be: DUP5 000035bf: DUP5 000035c0: ADD 000035c1: MSTORE 000035c2: JUMPDEST 000035c3: POP 000035c4: POP 000035c5: POP 000035c6: POP 000035c7: JUMP 000035c8: JUMPDEST 000035c9: PUSH1 0x01 000035cb: PUSH1 0x01 000035cd: PUSH1 0xa0 000035cf: SHL 000035d0: SUB 000035d1: DUP2 000035d2: AND 000035d3: DUP2 000035d4: EQ 000035d5: PUSH2 0x2a12 000035d8: JUMPI 000035d9: PUSH1 0x00 000035db: DUP1 000035dc: REVERT 000035dd: INVALID 000035de: GASLIMIT 000035df: MSTORE 000035e0: NUMBER 000035e1: ORIGIN 000035e2: ADDRESS 000035e3: GASPRICE 000035e4: KECCAK256 000035e5: PUSH3 0x75726e 000035e9: KECCAK256 000035ea: PUSH2 0x6d6f 000035ed: PUSH22 0x6e7420657863656564732062616c616e636545524332 00003604: ADDRESS 00003605: GASPRICE 00003606: KECCAK256 00003607: PUSH21 0x72616e7366657220616d6f756e7420657863656564 0000361d: PUSH20 0x2062616c616e6365416464726573733a206c6f77 00003632: UNKNOWN(0x2D) 00003633: PUSH13 0x6576656c2063616c6c20776974 00003641: PUSH9 0x2076616c7565206661 0000364b: PUSH10 0x6c656445524332303a20 00003656: PUSH21 0x72616e7366657220616d6f756e7420657863656564 0000366c: PUSH20 0x20616c6c6f77616e636545524332303a20646563 00003681: PUSH19 0x656173656420616c6c6f77616e63652062656c 00003695: PUSH16 0x77207a65726fa2646970667358221220 000036a6: UNKNOWN(0x4D) 000036a7: UNKNOWN(0x28) 000036a8: UNKNOWN(0xBC) 000036a9: DUP1 000036aa: SWAP12 000036ab: TSTORE 000036ac: CHAINID 000036ad: UNKNOWN(0xC9) 000036ae: SWAP2 000036af: UNKNOWN(0xEE) 000036b0: UNKNOWN(0xBF) 000036b1: STOP 000036b2: SWAP2 000036b3: DELEGATECALL 000036b4: UNKNOWN(0xCD) 000036b5: DUP9 000036b6: SWAP7 000036b7: SWAP10 000036b8: RETURN 000036b9: MCOPY 000036ba: LOG1 000036bb: TLOAD 000036bc: UNKNOWN(0xD1) 000036bd: DIV 000036be: UNKNOWN(0xB1) 000036bf: UNKNOWN(0xB9) 000036c0: PUSH0 000036c1: JUMPDEST 000036c2: SWAP13 000036c3: UNKNOWN(0xB5) 000036c4: MOD 000036c5: UNKNOWN(0xAB) 000036c6: PUSH5 0x736f6c6343 000036cc: STOP 000036cd: MOD 000036ce: EXP 000036cf: STOP 000036d0: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | reentrancy | codex | Reentrancy during module removal can permanently lock the SetToken | 85 | no | — |
viewevidence_json{
"evidence": "removeModule performs an external call to _module.removeModule() before clearing module state; the module can reenter lock() while still INITIALIZED. unlock() and other privileged functions require onlyModule, which fails after the module is removed.",
"locations": [
"contracts/Contract.sol:2122",
"contracts/Contract.sol:2126",
"contracts/Contract.sol:2089",
"contracts/Contract.sol:2098",
"contracts/Contract.sol:2346"
],
"recommendation": "Apply checks-effects-interactions or a reentrancy guard around module removal. Consider preventing lock() during module removal, or allow a manager escape hatch to unlock when the locker is no longer an initialized module. Alternatively, split cleanup so the module can\u2019t lock during its removal hook.",
"exploit_scenario": "A manager calls removeModule on a malicious module. While removeModule is executing, the SetToken calls the module\u2019s external removeModule() hook. The module reenters SetToken.lock() (it is still INITIALIZED) and becomes the locker. After returning, SetToken clears the module state and removes it from the modules list. The SetToken remains locked, but the locker is no longer an initialized module, so unlock() (onlyModule) can never be called and manager-only functions are blocked by isLocked\u2014permanent DoS."
}
|
| high | upgradeability | detector | Untrusted DELEGATECALL target reachable | 55 | no | no |
viewtrace_id: 0xc592e6c3d29eb1d7cc5874c4a8bc6620bcf7e2ba8338176ea5f29a1a31b36cd8
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0xc592e6c3d29eb1d7cc5874c4a8bc6620bcf7e2ba8338176ea5f29a1a31b36cd8",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xea0ee559",
"selector": "0xea0ee559",
"calldata_variants": [
"0xea0ee559",
"0xea0ee5590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeaf993e1",
"selector": "0xeaf993e1",
"calldata_variants": [
"0xeaf993e1",
"0xeaf993e10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf77c4791",
"selector": "0xf77c4791",
"calldata_variants": [
"0xf77c4791",
"0xf77c47910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf83d08ba",
"selector": "0xf83d08ba",
"calldata_variants": [
"0xf83d08ba",
"0xf83d08ba0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd7f1b27c",
"selector": "0xd7f1b27c",
"calldata_variants": [
"0xd7f1b27c",
"0xd7f1b27c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf5e9b29",
"selector": "0xdf5e9b29",
"calldata_variants": [
"0xdf5e9b29",
"0xdf5e9b290000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb2494df3",
"selector": "0xb2494df3",
"calldata_variants": [
"0xb2494df3",
"0xb2494df30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 14003,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [
{
"pc": 13793,
"type": "tx_origin_used"
}
],
"delegatecall_count": 1,
"untrusted_delegatecall_count": 1
}
|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xea0ee559",
"selector": "0xea0ee559",
"calldata_variants": [
"0xea0ee559",
"0xea0ee5590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeaf993e1",
"selector": "0xeaf993e1",
"calldata_variants": [
"0xeaf993e1",
"0xeaf993e10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf77c4791",
"selector": "0xf77c4791",
"calldata_variants": [
"0xf77c4791",
"0xf77c47910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf83d08ba",
"selector": "0xf83d08ba",
"calldata_variants": [
"0xf83d08ba",
"0xf83d08ba0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd7f1b27c",
"selector": "0xd7f1b27c",
"calldata_variants": [
"0xd7f1b27c",
"0xd7f1b27c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf5e9b29",
"selector": "0xdf5e9b29",
"calldata_variants": [
"0xdf5e9b29",
"0xdf5e9b290000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb2494df3",
"selector": "0xb2494df3",
"calldata_variants": [
"0xb2494df3",
"0xb2494df30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 13793,
"type": "tx_origin_used"
}
]
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 1
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x7671d20beb5ca38a3aeeb6f11c0484b79bdd66fed2872deff7922bfbbf3271b6
call_targets:
0x07834b06b5756056e065c0bd1639761ab8297513
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x7671d20beb5ca38a3aeeb6f11c0484b79bdd66fed2872deff7922bfbbf3271b6",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x07834b06b5756056e065c0bd1639761ab8297513"
],
"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": "0xea0ee559",
"selector": "0xea0ee559",
"calldata_variants": [
"0xea0ee559",
"0xea0ee5590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeaf993e1",
"selector": "0xeaf993e1",
"calldata_variants": [
"0xeaf993e1",
"0xeaf993e10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf77c4791",
"selector": "0xf77c4791",
"calldata_variants": [
"0xf77c4791",
"0xf77c47910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf83d08ba",
"selector": "0xf83d08ba",
"calldata_variants": [
"0xf83d08ba",
"0xf83d08ba0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd7f1b27c",
"selector": "0xd7f1b27c",
"calldata_variants": [
"0xd7f1b27c",
"0xd7f1b27c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf5e9b29",
"selector": "0xdf5e9b29",
"calldata_variants": [
"0xdf5e9b29",
"0xdf5e9b290000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb2494df3",
"selector": "0xb2494df3",
"calldata_variants": [
"0xb2494df3",
"0xb2494df30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5289,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 10069,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [
{
"pc": 13793,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 2
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x7671d20beb5ca38a3aeeb6f11c0484b79bdd66fed2872deff7922bfbbf3271b6
call_targets:
0x07834b06b5756056e065c0bd1639761ab8297513
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x7671d20beb5ca38a3aeeb6f11c0484b79bdd66fed2872deff7922bfbbf3271b6",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x07834b06b5756056e065c0bd1639761ab8297513"
],
"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": "0xea0ee559",
"selector": "0xea0ee559",
"calldata_variants": [
"0xea0ee559",
"0xea0ee5590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xeaf993e1",
"selector": "0xeaf993e1",
"calldata_variants": [
"0xeaf993e1",
"0xeaf993e10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf77c4791",
"selector": "0xf77c4791",
"calldata_variants": [
"0xf77c4791",
"0xf77c47910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf83d08ba",
"selector": "0xf83d08ba",
"calldata_variants": [
"0xf83d08ba",
"0xf83d08ba0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd7f1b27c",
"selector": "0xd7f1b27c",
"calldata_variants": [
"0xd7f1b27c",
"0xd7f1b27c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf5e9b29",
"selector": "0xdf5e9b29",
"calldata_variants": [
"0xdf5e9b29",
"0xdf5e9b290000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb2494df3",
"selector": "0xb2494df3",
"calldata_variants": [
"0xb2494df3",
"0xb2494df30000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5289,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 10069,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": [
{
"pc": 13793,
"type": "tx_origin_used"
}
]
}
|