5fa05d5d-69a8-4d97-8321-649ae9181295
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 |
|---|---|---|---|---|
| 30498 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 103847 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 103848 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 103849 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 103850 | capability.graph | complete | 1 / 3 | 1 week ago |
| 103851 | detector.run | complete | 1 / 3 | 1 week ago |
| 103852 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1399398] OpenAI Codex v0.77.0 (research preview)
[codex:1399398] --------
[codex:1399398] workdir: /tmp/codex-multi-zclpyqbi
[codex:1399398] model: gpt-5.2-codex
[codex:1399398] provider: openai
[codex:1399398] approval: never
[codex:1399398] sandbox: read-only
[codex:1399398] reasoning effort: xhigh
[codex:1399398] reasoning summaries: auto
[codex:1399398] session id: 019b6a61-525d-7723-b96c-bb8150c0b4d8
[codex:1399398] --------
[codex:1399398] user
[codex:1399398] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1399398] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1399398] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1399398]
[codex:1399398] Scope rules:
[codex:1399398] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1399398] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1399398]
[codex:1399398] Output MUST be valid JSON matching the provided schema.
[codex:1399398] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1399398] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1399398]
[codex:1399398] Output constraints (IMPORTANT):
[codex:1399398] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1399398] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1399398] mcp startup: no servers
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Preparing to read AUDIT_BUNDLE.txt**
[codex:1399398] exec
[codex:1399398] /bin/bash -lc ls in /tmp/codex-multi-zclpyqbi succeeded in 5ms:
[codex:1399398] AUDIT_BUNDLE.txt
[codex:1399398] codex-output-schema.json
[codex:1399398] contracts
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Reading AUDIT_BUNDLE.txt contents**
[codex:1399398] exec
[codex:1399398] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-zclpyqbi succeeded in 6ms:
[codex:1399398] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1399398]
[codex:1399398] ================================================================================
[codex:1399398] FILE: contracts/@openzeppelin/contracts/access/AccessControl.sol
[codex:1399398] ================================================================================
[codex:1399398] // SPDX-License-Identifier: MIT
[codex:1399398] // OpenZeppelin Contracts (last updated v5.0.0) (access/AccessControl.sol)
[codex:1399398]
[codex:1399398] pragma solidity ^0.8.20;
[codex:1399398]
[codex:1399398] import {IAccessControl} from "./IAccessControl.sol";
[codex:1399398] import {Context} from "../utils/Context.sol";
[codex:1399398] import {ERC165} from "../utils/introspection/ERC165.sol";
[codex:1399398]
[codex:1399398] /**
[codex:1399398] * @dev Contract module that allows children to implement role-based access
[codex:1399398] * control mechanisms. This is a lightweight version that doesn't allow enumerating role
[codex:1399398] * members except through off-chain means by accessing the contract event logs. Some
[codex:1399398] * applications may benefit from on-chain enumerability, for those cases see
[codex:1399398] * {AccessControlEnumerable}.
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Scanning first-party contract files**
[codex:1399398] exec
[codex:1399398] /bin/bash -lc 'rg -n "''^FILE: contracts/contracts" AUDIT_BUNDLE.txt' in /tmp/codex-multi-zclpyqbi succeeded in 7ms:
[codex:1399398] 2285:FILE: contracts/contracts/MultiSigSmartAccount.sol
[codex:1399398] 2495:FILE: contracts/contracts/erc4337/core/BaseAccount.sol
[codex:1399398] 2610:FILE: contracts/contracts/erc4337/core/UserOperation.sol
[codex:1399398] 2711:FILE: contracts/contracts/erc4337/interfaces/IAccount.sol
[codex:1399398] 2751:FILE: contracts/contracts/erc4337/interfaces/IAggregator.sol
[codex:1399398] 2791:FILE: contracts/contracts/erc4337/interfaces/IEntryPoint.sol
[codex:1399398] 3019:FILE: contracts/contracts/erc4337/interfaces/INonceManager.sol
[codex:1399398] 3048:FILE: contracts/contracts/erc4337/interfaces/IStakeManager.sol
[codex:1399398] 3137:FILE: contracts/contracts/erc4337/utils/Helpers.sol
[codex:1399398] 3164:FILE: contracts/contracts/erc4337/utils/TokenCallbackHandler.sol
[codex:1399398] 3216:FILE: contracts/contracts/interfaces/IMultiSigSmartAccount.sol
[codex:1399398] 3233:FILE: contracts/contracts/schnorr/Schnorr.sol
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Reviewing MultiSigSmartAccount.sol in audit bundle**
[codex:1399398] exec
[codex:1399398] /bin/bash -lc "sed -n '2285,2495p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-zclpyqbi succeeded in 5ms:
[codex:1399398] FILE: contracts/contracts/MultiSigSmartAccount.sol
[codex:1399398] ================================================================================
[codex:1399398] // SPDX-License-Identifier: MIT
[codex:1399398] pragma solidity ^0.8.12;
[codex:1399398]
[codex:1399398] import {IERC1271} from "@openzeppelin/contracts/interfaces/IERC1271.sol";
[codex:1399398] import {ECDSA} from "@openzeppelin/contracts/utils/cryptography/ECDSA.sol";
[codex:1399398] import {AccessControl} from "@openzeppelin/contracts/access/AccessControl.sol";
[codex:1399398] import {Initializable} from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1399398] import {UUPSUpgradeable} from "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
[codex:1399398] import {MessageHashUtils} from "@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol";
[codex:1399398]
[codex:1399398] import {IEntryPoint} from "./erc4337/interfaces/IEntryPoint.sol";
[codex:1399398] import {BaseAccount} from "./erc4337/core/BaseAccount.sol";
[codex:1399398] import {UserOperation, UserOperationLib} from "./erc4337/core/UserOperation.sol";
[codex:1399398] import {TokenCallbackHandler} from "./erc4337/utils/TokenCallbackHandler.sol";
[codex:1399398] import {Schnorr} from "./schnorr/Schnorr.sol";
[codex:1399398] import {IMultiSigSmartAccount} from "./interfaces/IMultiSigSmartAccount.sol";
[codex:1399398]
[codex:1399398] /**
[codex:1399398] exec
[codex:1399398] /bin/bash -lc "sed -n '2495,2610p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-zclpyqbi succeeded in 6ms:
[codex:1399398] FILE: contracts/contracts/erc4337/core/BaseAccount.sol
[codex:1399398] ================================================================================
[codex:1399398] // SPDX-License-Identifier: GPL-3.0
[codex:1399398] pragma solidity ^0.8.12;
[codex:1399398]
[codex:1399398] /* solhint-disable avoid-low-level-calls */
[codex:1399398] /* solhint-disable no-empty-blocks */
[codex:1399398]
[codex:1399398] import {IAccount} from "../interfaces/IAccount.sol";
[codex:1399398] import {IEntryPoint} from "../interfaces/IEntryPoint.sol";
[codex:1399398] import {UserOperation, UserOperationLib} from "./UserOperation.sol";
[codex:1399398]
[codex:1399398] /**
[codex:1399398] * Basic account implementation.
[codex:1399398] * this contract provides the basic logic for implementing the IAccount interface - validateUserOp
[codex:1399398] * specific account implementation should inherit it and provide the account-specific logic
[codex:1399398] */
[codex:1399398] abstract contract BaseAccount is IAccount {
[codex:1399398] using UserOperationLib for UserOperation;
[codex:1399398]
[codex:1399398] exec
[codex:1399398] /bin/bash -lc "sed -n '2610,2711p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-zclpyqbi succeeded in 5ms:
[codex:1399398] FILE: contracts/contracts/erc4337/core/UserOperation.sol
[codex:1399398] ================================================================================
[codex:1399398] // SPDX-License-Identifier: GPL-3.0
[codex:1399398] pragma solidity ^0.8.12;
[codex:1399398]
[codex:1399398] /* solhint-disable no-inline-assembly */
[codex:1399398]
[codex:1399398] import {Helper} from "../utils/Helpers.sol";
[codex:1399398]
[codex:1399398] /**
[codex:1399398] * User Operation struct
[codex:1399398] * @param sender the sender account of this request.
[codex:1399398] * @param nonce unique value the sender uses to verify it is not a replay.
[codex:1399398] * @param initCode if set, the account contract will be created by this constructor/
[codex:1399398] * @param callData the method call to execute on this account.
[codex:1399398] * @param callGasLimit the gas limit passed to the callData method call.
[codex:1399398] * @param verificationGasLimit gas used for validateUserOp and validatePaymasterUserOp.
[codex:1399398] * @param preVerificationGas gas not calculated by the handleOps method, but added to the gas paid. Covers batch overhead.
[codex:1399398] * @param maxFeePerGas same as EIP-1559 gas parameter.
[codex:1399398] * @param maxPriorityFeePerGas same as EIP-1559 gas parameter.
[codex:1399398] exec
[codex:1399398] /bin/bash -lc "sed -n '2711,2791p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-zclpyqbi succeeded in 5ms:
[codex:1399398] FILE: contracts/contracts/erc4337/interfaces/IAccount.sol
[codex:1399398] ================================================================================
[codex:1399398] // SPDX-License-Identifier: GPL-3.0
[codex:1399398] pragma solidity ^0.8.12;
[codex:1399398]
[codex:1399398] import {UserOperation} from "../core/UserOperation.sol";
[codex:1399398]
[codex:1399398] interface IAccount {
[codex:1399398] /**
[codex:1399398] * Validate user's signature and nonce
[codex:1399398] * the entryPoint will make the call to the recipient only if this validation call returns successfully.
[codex:1399398] * signature failure should be reported by returning SIG_VALIDATION_FAILED (1).
[codex:1399398] * This allows making a "simulation call" without a valid signature
[codex:1399398] * Other failures (e.g. nonce mismatch, or invalid signature format) should still revert to signal failure.
[codex:1399398] *
[codex:1399398] * @dev Must validate caller is the entryPoint.
[codex:1399398] * Must validate the signature and nonce
[codex:1399398] * @param userOp the operation that is about to be executed.
[codex:1399398] * @param userOpHash hash of the user's request data. can be used as the basis for signature.
[codex:1399398] * @param missingAccountFunds missing funds on the account's deposit in the entrypoint.
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Analyzing MultiSigSmartAccount security aspects**
[codex:1399398] exec
[codex:1399398] /bin/bash -lc "python - <<'PY'
[codex:1399398] hexstr='fffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c'
[codex:1399398] print(len(hexstr))
[codex:1399398] print(len(hexstr)//2)
[codex:1399398] PY" in /tmp/codex-multi-zclpyqbi succeeded in 30ms:
[codex:1399398] 130
[codex:1399398] 65
[codex:1399398]
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Analyzing signature validation and access control risks**
[codex:1399398] thinking
[codex:1399398] **Examining signature verification and upgrade patterns**
[codex:1399398]
[codex:1399398] This is a deep look at how signature verification might revert unexpectedly and how upgrade and initialization functions interact with access control. I’m carefully considering whether invalid Schnorr signatures cause reverts versus proper failure returns, and whether the `initialize` and upgrade logic properly restrict who can call them, while noting implications for signature malleability and public key handling.
[codex:1399398] exec
[codex:1399398] /bin/bash -lc "python - <<'PY'
[codex:1399398] P = int('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F',16)
[codex:1399398] N = int('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141',16)
[codex:1399398] print(hex(P-N))
[codex:1399398] print((P-N).bit_length())
[codex:1399398] PY" in /tmp/codex-multi-zclpyqbi succeeded in 17ms:
[codex:1399398] 0x14551231950b75fc4402da1722fc9baee
[codex:1399398] 129
[codex:1399398]
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Analyzing signature and upgrade security nuances**
[codex:1399398]
[codex:1399398] I’m carefully evaluating signature length, verification steps, access control, and upgrade logic for subtle issues or vulnerabilities, focusing on edge cases, reentrancy, delegation, and compatibility with standards; overall, I see no clear exploitable flaws but note some low-severity observations and rare edge conditions.
[codex:1399398] thinking
[codex:1399398] **Examining address derivation and upgrade patterns**
[codex:1399398]
[codex:1399398] I'm reviewing how the signature uses the address derived from the public key for role checks and considering contract upgrade patterns, especially around AccessControl usage with proxy and immutable variables, while checking potential edge cases in initialization and call contexts.
[codex:1399398] exec
[codex:1399398] /bin/bash -lc 'rg -n "delegatecall" AUDIT_BUNDLE.txt' in /tmp/codex-multi-zclpyqbi succeeded in 7ms:
[codex:1399398] 858: * @dev Check that the execution is being performed through a delegatecall call and that the execution context is
[codex:1399398] 898: * @custom:oz-upgrades-unsafe-allow-reachable delegatecall
[codex:1399398] 906: * @dev Reverts if the execution is not performed via delegatecall or the execution
[codex:1399398] 912: address(this) == __self || // Must be called through delegatecall
[codex:1399398] 920: * @dev Reverts if the execution is performed via delegatecall.
[codex:1399398] 925: // Must not be called through delegatecall
[codex:1399398] 1165: (bool success, bytes memory returndata) = target.delegatecall(data);
[codex:1399398]
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Evaluating potential security concerns**
[codex:1399398] thinking
[codex:1399398] **Analyzing cryptographic verification details**
[codex:1399398]
[codex:1399398] I'm examining the Schnorr signature verification logic to check for subtle vulnerabilities related to signature parameters and edge cases with ecrecover. I want to ensure the approach securely prevents forgery and that no circular dependency or range issues can be exploited. Additionally, I'm considering potential reentrancy in execute calls and the implications of using non-upgradeable AccessControl in an upgradeable contract context. After going through these aspects carefully, I still find no exploitable issues to report.
[codex:1399398] exec
[codex:1399398] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-zclpyqbi succeeded in 6ms:
[codex:1399398] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:1399398]
[codex:1399398] thinking
[codex:1399398] **Summarizing security assessment**
[codex:1399398]
[codex:1399398] I'm carefully reviewing potential vulnerabilities in MultiSigSmartAccount, considering initialization risks, signature verification details, and access control nuances, but finding no outright exploitable issues; I’ll prepare a final JSON with no findings but include a thorough summary showing the reasoning behind the conclusion.
[codex:1399398] codex
[codex:1399398] {"no_findings":true,"summary":"No exploitable vulnerabilities found in first-party contracts within the requested focus areas.","findings":[]}
[codex:1399398] tokens used
[codex:1399398] 55,471
[codex:1399398] {"no_findings":true,"summary":"No exploitable vulnerabilities found in first-party contracts within the requested focus areas.","findings":[]}
{
"codex": {
"ran_at": "2025-12-29T13:58:36.679122+00:00",
"returncode": 0
},
"summary": "No exploitable vulnerabilities found in first-party contracts within the requested focus areas.",
"raw_final": {
"summary": "No exploitable vulnerabilities found in first-party contracts within the requested focus areas.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0169 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x52d1902d 00000019: GT 0000001a: PUSH2 0x00d1 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xb61d27f6 00000024: GT 00000025: PUSH2 0x008a 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xd087d288 0000002f: GT 00000030: PUSH2 0x0064 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xd087d288 0000003a: EQ 0000003b: PUSH2 0x047f 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xd547741f 00000045: EQ 00000046: PUSH2 0x0494 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xe58378bb 00000050: EQ 00000051: PUSH2 0x04b4 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf23a6e61 0000005b: EQ 0000005c: PUSH2 0x04d6 0000005f: JUMPI 00000060: PUSH1 0x00 00000062: DUP1 00000063: REVERT 00000064: JUMPDEST 00000065: DUP1 00000066: PUSH4 0xb61d27f6 0000006b: EQ 0000006c: PUSH2 0x041b 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xbc197c81 00000076: EQ 00000077: PUSH2 0x043b 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xc399ec88 00000081: EQ 00000082: PUSH2 0x046a 00000085: JUMPI 00000086: PUSH1 0x00 00000088: DUP1 00000089: REVERT 0000008a: JUMPDEST 0000008b: DUP1 0000008c: PUSH4 0x52d1902d 00000091: EQ 00000092: PUSH2 0x032f 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0x91d14854 0000009c: EQ 0000009d: PUSH2 0x0344 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xa217fddf 000000a7: EQ 000000a8: PUSH2 0x0364 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xa224cee7 000000b2: EQ 000000b3: PUSH2 0x0379 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xad3cb1cc 000000bd: EQ 000000be: PUSH2 0x0399 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xb0d691fe 000000c8: EQ 000000c9: PUSH2 0x03d7 000000cc: JUMPI 000000cd: PUSH1 0x00 000000cf: DUP1 000000d0: REVERT 000000d1: JUMPDEST 000000d2: DUP1 000000d3: PUSH4 0x2f2ff15d 000000d8: GT 000000d9: PUSH2 0x0123 000000dc: JUMPI 000000dd: DUP1 000000de: PUSH4 0x2f2ff15d 000000e3: EQ 000000e4: PUSH2 0x0294 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0x36568abe 000000ee: EQ 000000ef: PUSH2 0x02b4 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0x3a871cdd 000000f9: EQ 000000fa: PUSH2 0x02d4 000000fd: JUMPI 000000fe: DUP1 000000ff: PUSH4 0x4a58db19 00000104: EQ 00000105: PUSH2 0x02f4 00000108: JUMPI 00000109: DUP1 0000010a: PUSH4 0x4d44560d 0000010f: EQ 00000110: PUSH2 0x02fc 00000113: JUMPI 00000114: DUP1 00000115: PUSH4 0x4f1ef286 0000011a: EQ 0000011b: PUSH2 0x031c 0000011e: JUMPI 0000011f: PUSH1 0x00 00000121: DUP1 00000122: REVERT 00000123: JUMPDEST 00000124: DUP1 00000125: PUSH3 0x23de29 00000129: EQ 0000012a: PUSH2 0x0175 0000012d: JUMPI 0000012e: DUP1 0000012f: PUSH4 0x01ffc9a7 00000134: EQ 00000135: PUSH2 0x019c 00000138: JUMPI 00000139: DUP1 0000013a: PUSH4 0x150b7a02 0000013f: EQ 00000140: PUSH2 0x01d1 00000143: JUMPI 00000144: DUP1 00000145: PUSH4 0x1626ba7e 0000014a: EQ 0000014b: PUSH2 0x0216 0000014e: JUMPI 0000014f: DUP1 00000150: PUSH4 0x18dfb3c7 00000155: EQ 00000156: PUSH2 0x0236 00000159: JUMPI 0000015a: DUP1 0000015b: PUSH4 0x248a9ca3 00000160: EQ 00000161: PUSH2 0x0256 00000164: JUMPI 00000165: PUSH1 0x00 00000167: DUP1 00000168: REVERT 00000169: JUMPDEST 0000016a: CALLDATASIZE 0000016b: PUSH2 0x0170 0000016e: JUMPI 0000016f: STOP 00000170: JUMPDEST 00000171: PUSH1 0x00 00000173: DUP1 00000174: REVERT 00000175: JUMPDEST 00000176: CALLVALUE 00000177: DUP1 00000178: ISZERO 00000179: PUSH2 0x0181 0000017c: JUMPI 0000017d: PUSH1 0x00 0000017f: DUP1 00000180: REVERT 00000181: JUMPDEST 00000182: POP 00000183: PUSH2 0x019a 00000186: PUSH2 0x0190 00000189: CALLDATASIZE 0000018a: PUSH1 0x04 0000018c: PUSH2 0x1617 0000018f: JUMP 00000190: JUMPDEST 00000191: POP 00000192: POP 00000193: POP 00000194: POP 00000195: POP 00000196: POP 00000197: POP 00000198: POP 00000199: JUMP 0000019a: JUMPDEST 0000019b: STOP 0000019c: JUMPDEST 0000019d: CALLVALUE 0000019e: DUP1 0000019f: ISZERO 000001a0: PUSH2 0x01a8 000001a3: JUMPI 000001a4: PUSH1 0x00 000001a6: DUP1 000001a7: REVERT 000001a8: JUMPDEST 000001a9: POP 000001aa: PUSH2 0x01bc 000001ad: PUSH2 0x01b7 000001b0: CALLDATASIZE 000001b1: PUSH1 0x04 000001b3: PUSH2 0x16c7 000001b6: JUMP 000001b7: JUMPDEST 000001b8: PUSH2 0x0503 000001bb: JUMP 000001bc: JUMPDEST 000001bd: PUSH1 0x40 000001bf: MLOAD 000001c0: SWAP1 000001c1: ISZERO 000001c2: ISZERO 000001c3: DUP2 000001c4: MSTORE 000001c5: PUSH1 0x20 000001c7: ADD 000001c8: JUMPDEST 000001c9: PUSH1 0x40 000001cb: MLOAD 000001cc: DUP1 000001cd: SWAP2 000001ce: SUB 000001cf: SWAP1 000001d0: RETURN 000001d1: JUMPDEST 000001d2: CALLVALUE 000001d3: DUP1 000001d4: ISZERO 000001d5: PUSH2 0x01dd 000001d8: JUMPI 000001d9: PUSH1 0x00 000001db: DUP1 000001dc: REVERT 000001dd: JUMPDEST 000001de: POP 000001df: PUSH2 0x01fd 000001e2: PUSH2 0x01ec 000001e5: CALLDATASIZE 000001e6: PUSH1 0x04 000001e8: PUSH2 0x16f1 000001eb: JUMP 000001ec: JUMPDEST 000001ed: PUSH4 0x0a85bd01 000001f2: PUSH1 0xe1 000001f4: SHL 000001f5: SWAP6 000001f6: SWAP5 000001f7: POP 000001f8: POP 000001f9: POP 000001fa: POP 000001fb: POP 000001fc: JUMP 000001fd: JUMPDEST 000001fe: PUSH1 0x40 00000200: MLOAD 00000201: PUSH1 0x01 00000203: PUSH1 0x01 00000205: PUSH1 0xe0 00000207: SHL 00000208: SUB 00000209: NOT 0000020a: SWAP1 0000020b: SWAP2 0000020c: AND 0000020d: DUP2 0000020e: MSTORE 0000020f: PUSH1 0x20 00000211: ADD 00000212: PUSH2 0x01c8 00000215: JUMP 00000216: JUMPDEST 00000217: CALLVALUE 00000218: DUP1 00000219: ISZERO 0000021a: PUSH2 0x0222 0000021d: JUMPI 0000021e: PUSH1 0x00 00000220: DUP1 00000221: REVERT 00000222: JUMPDEST 00000223: POP 00000224: PUSH2 0x01fd 00000227: PUSH2 0x0231 0000022a: CALLDATASIZE 0000022b: PUSH1 0x04 0000022d: PUSH2 0x1818 00000230: JUMP 00000231: JUMPDEST 00000232: PUSH2 0x052e 00000235: JUMP 00000236: JUMPDEST 00000237: CALLVALUE 00000238: DUP1 00000239: ISZERO 0000023a: PUSH2 0x0242 0000023d: JUMPI 0000023e: PUSH1 0x00 00000240: DUP1 00000241: REVERT 00000242: JUMPDEST 00000243: POP 00000244: PUSH2 0x019a 00000247: PUSH2 0x0251 0000024a: CALLDATASIZE 0000024b: PUSH1 0x04 0000024d: PUSH2 0x18a2 00000250: JUMP 00000251: JUMPDEST 00000252: PUSH2 0x05a6 00000255: JUMP 00000256: JUMPDEST 00000257: CALLVALUE 00000258: DUP1 00000259: ISZERO 0000025a: PUSH2 0x0262 0000025d: JUMPI 0000025e: PUSH1 0x00 00000260: DUP1 00000261: REVERT 00000262: JUMPDEST 00000263: POP 00000264: PUSH2 0x0286 00000267: PUSH2 0x0271 0000026a: CALLDATASIZE 0000026b: PUSH1 0x04 0000026d: PUSH2 0x190d 00000270: JUMP 00000271: JUMPDEST 00000272: PUSH1 0x00 00000274: SWAP1 00000275: DUP2 00000276: MSTORE 00000277: PUSH1 0x20 00000279: DUP2 0000027a: SWAP1 0000027b: MSTORE 0000027c: PUSH1 0x40 0000027e: SWAP1 0000027f: KECCAK256 00000280: PUSH1 0x01 00000282: ADD 00000283: SLOAD 00000284: SWAP1 00000285: JUMP 00000286: JUMPDEST 00000287: PUSH1 0x40 00000289: MLOAD 0000028a: SWAP1 0000028b: DUP2 0000028c: MSTORE 0000028d: PUSH1 0x20 0000028f: ADD 00000290: PUSH2 0x01c8 00000293: JUMP 00000294: JUMPDEST 00000295: CALLVALUE 00000296: DUP1 00000297: ISZERO 00000298: PUSH2 0x02a0 0000029b: JUMPI 0000029c: PUSH1 0x00 0000029e: DUP1 0000029f: REVERT 000002a0: JUMPDEST 000002a1: POP 000002a2: PUSH2 0x019a 000002a5: PUSH2 0x02af 000002a8: CALLDATASIZE 000002a9: PUSH1 0x04 000002ab: PUSH2 0x1926 000002ae: JUMP 000002af: JUMPDEST 000002b0: PUSH2 0x06a1 000002b3: JUMP 000002b4: JUMPDEST 000002b5: CALLVALUE 000002b6: DUP1 000002b7: ISZERO 000002b8: PUSH2 0x02c0 000002bb: JUMPI 000002bc: PUSH1 0x00 000002be: DUP1 000002bf: REVERT 000002c0: JUMPDEST 000002c1: POP 000002c2: PUSH2 0x019a 000002c5: PUSH2 0x02cf 000002c8: CALLDATASIZE 000002c9: PUSH1 0x04 000002cb: PUSH2 0x1926 000002ce: JUMP 000002cf: JUMPDEST 000002d0: PUSH2 0x06cc 000002d3: JUMP 000002d4: JUMPDEST 000002d5: CALLVALUE 000002d6: DUP1 000002d7: ISZERO 000002d8: PUSH2 0x02e0 000002db: JUMPI 000002dc: PUSH1 0x00 000002de: DUP1 000002df: REVERT 000002e0: JUMPDEST 000002e1: POP 000002e2: PUSH2 0x0286 000002e5: PUSH2 0x02ef 000002e8: CALLDATASIZE 000002e9: PUSH1 0x04 000002eb: PUSH2 0x1956 000002ee: JUMP 000002ef: JUMPDEST 000002f0: PUSH2 0x0704 000002f3: JUMP 000002f4: JUMPDEST 000002f5: PUSH2 0x019a 000002f8: PUSH2 0x072a 000002fb: JUMP 000002fc: JUMPDEST 000002fd: CALLVALUE 000002fe: DUP1 000002ff: ISZERO 00000300: PUSH2 0x0308 00000303: JUMPI 00000304: PUSH1 0x00 00000306: DUP1 00000307: REVERT 00000308: JUMPDEST 00000309: POP 0000030a: PUSH2 0x019a 0000030d: PUSH2 0x0317 00000310: CALLDATASIZE 00000311: PUSH1 0x04 00000313: PUSH2 0x19a9 00000316: JUMP 00000317: JUMPDEST 00000318: PUSH2 0x07a3 0000031b: JUMP 0000031c: JUMPDEST 0000031d: PUSH2 0x019a 00000320: PUSH2 0x032a 00000323: CALLDATASIZE 00000324: PUSH1 0x04 00000326: PUSH2 0x19d5 00000329: JUMP 0000032a: JUMPDEST 0000032b: PUSH2 0x0834 0000032e: JUMP 0000032f: JUMPDEST 00000330: CALLVALUE 00000331: DUP1 00000332: ISZERO 00000333: PUSH2 0x033b 00000336: JUMPI 00000337: PUSH1 0x00 00000339: DUP1 0000033a: REVERT 0000033b: JUMPDEST 0000033c: POP 0000033d: PUSH2 0x0286 00000340: PUSH2 0x0853 00000343: JUMP 00000344: JUMPDEST 00000345: CALLVALUE 00000346: DUP1 00000347: ISZERO 00000348: PUSH2 0x0350 0000034b: JUMPI 0000034c: PUSH1 0x00 0000034e: DUP1 0000034f: REVERT 00000350: JUMPDEST 00000351: POP 00000352: PUSH2 0x01bc 00000355: PUSH2 0x035f 00000358: CALLDATASIZE 00000359: PUSH1 0x04 0000035b: PUSH2 0x1926 0000035e: JUMP 0000035f: JUMPDEST 00000360: PUSH2 0x0870 00000363: JUMP 00000364: JUMPDEST 00000365: CALLVALUE 00000366: DUP1 00000367: ISZERO 00000368: PUSH2 0x0370 0000036b: JUMPI 0000036c: PUSH1 0x00 0000036e: DUP1 0000036f: REVERT 00000370: JUMPDEST 00000371: POP 00000372: PUSH2 0x0286 00000375: PUSH1 0x00 00000377: DUP2 00000378: JUMP 00000379: JUMPDEST 0000037a: CALLVALUE 0000037b: DUP1 0000037c: ISZERO 0000037d: PUSH2 0x0385 00000380: JUMPI 00000381: PUSH1 0x00 00000383: DUP1 00000384: REVERT 00000385: JUMPDEST 00000386: POP 00000387: PUSH2 0x019a 0000038a: PUSH2 0x0394 0000038d: CALLDATASIZE 0000038e: PUSH1 0x04 00000390: PUSH2 0x1a0e 00000393: JUMP 00000394: JUMPDEST 00000395: PUSH2 0x0899 00000398: JUMP 00000399: JUMPDEST 0000039a: CALLVALUE 0000039b: DUP1 0000039c: ISZERO 0000039d: PUSH2 0x03a5 000003a0: JUMPI 000003a1: PUSH1 0x00 000003a3: DUP1 000003a4: REVERT 000003a5: JUMPDEST 000003a6: POP 000003a7: PUSH2 0x03ca 000003aa: PUSH1 0x40 000003ac: MLOAD 000003ad: DUP1 000003ae: PUSH1 0x40 000003b0: ADD 000003b1: PUSH1 0x40 000003b3: MSTORE 000003b4: DUP1 000003b5: PUSH1 0x05 000003b7: DUP2 000003b8: MSTORE 000003b9: PUSH1 0x20 000003bb: ADD 000003bc: PUSH5 0x0352e302e3 000003c2: PUSH1 0xdc 000003c4: SHL 000003c5: DUP2 000003c6: MSTORE 000003c7: POP 000003c8: DUP2 000003c9: JUMP 000003ca: JUMPDEST 000003cb: PUSH1 0x40 000003cd: MLOAD 000003ce: PUSH2 0x01c8 000003d1: SWAP2 000003d2: SWAP1 000003d3: PUSH2 0x1ae3 000003d6: JUMP 000003d7: JUMPDEST 000003d8: CALLVALUE 000003d9: DUP1 000003da: ISZERO 000003db: PUSH2 0x03e3 000003de: JUMPI 000003df: PUSH1 0x00 000003e1: DUP1 000003e2: REVERT 000003e3: JUMPDEST 000003e4: POP 000003e5: PUSH1 0x40 000003e7: MLOAD 000003e8: PUSH1 0x01 000003ea: PUSH1 0x01 000003ec: PUSH1 0xa0 000003ee: SHL 000003ef: SUB 000003f0: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789 00000411: AND 00000412: DUP2 00000413: MSTORE 00000414: PUSH1 0x20 00000416: ADD 00000417: PUSH2 0x01c8 0000041a: JUMP 0000041b: JUMPDEST 0000041c: CALLVALUE 0000041d: DUP1 0000041e: ISZERO 0000041f: PUSH2 0x0427 00000422: JUMPI 00000423: PUSH1 0x00 00000425: DUP1 00000426: REVERT 00000427: JUMPDEST 00000428: POP 00000429: PUSH2 0x019a 0000042c: PUSH2 0x0436 0000042f: CALLDATASIZE 00000430: PUSH1 0x04 00000432: PUSH2 0x1b16 00000435: JUMP 00000436: JUMPDEST 00000437: PUSH2 0x0a99 0000043a: JUMP 0000043b: JUMPDEST 0000043c: CALLVALUE 0000043d: DUP1 0000043e: ISZERO 0000043f: PUSH2 0x0447 00000442: JUMPI 00000443: PUSH1 0x00 00000445: DUP1 00000446: REVERT 00000447: JUMPDEST 00000448: POP 00000449: PUSH2 0x01fd 0000044c: PUSH2 0x0456 0000044f: CALLDATASIZE 00000450: PUSH1 0x04 00000452: PUSH2 0x1b65 00000455: JUMP 00000456: JUMPDEST 00000457: PUSH4 0xbc197c81 0000045c: PUSH1 0xe0 0000045e: SHL 0000045f: SWAP9 00000460: SWAP8 00000461: POP 00000462: POP 00000463: POP 00000464: POP 00000465: POP 00000466: POP 00000467: POP 00000468: POP 00000469: JUMP 0000046a: JUMPDEST 0000046b: CALLVALUE 0000046c: DUP1 0000046d: ISZERO 0000046e: PUSH2 0x0476 00000471: JUMPI 00000472: PUSH1 0x00 00000474: DUP1 00000475: REVERT 00000476: JUMPDEST 00000477: POP 00000478: PUSH2 0x0286 0000047b: PUSH2 0x0ae2 0000047e: JUMP 0000047f: JUMPDEST 00000480: CALLVALUE 00000481: DUP1 00000482: ISZERO 00000483: PUSH2 0x048b 00000486: JUMPI 00000487: PUSH1 0x00 00000489: DUP1 0000048a: REVERT 0000048b: JUMPDEST 0000048c: POP 0000048d: PUSH2 0x0286 00000490: PUSH2 0x0b73 00000493: JUMP 00000494: JUMPDEST 00000495: CALLVALUE 00000496: DUP1 00000497: ISZERO 00000498: PUSH2 0x04a0 0000049b: JUMPI 0000049c: PUSH1 0x00 0000049e: DUP1 0000049f: REVERT 000004a0: JUMPDEST 000004a1: POP 000004a2: PUSH2 0x019a 000004a5: PUSH2 0x04af 000004a8: CALLDATASIZE 000004a9: PUSH1 0x04 000004ab: PUSH2 0x1926 000004ae: JUMP 000004af: JUMPDEST 000004b0: PUSH2 0x0bc9 000004b3: JUMP 000004b4: JUMPDEST 000004b5: CALLVALUE 000004b6: DUP1 000004b7: ISZERO 000004b8: PUSH2 0x04c0 000004bb: JUMPI 000004bc: PUSH1 0x00 000004be: DUP1 000004bf: REVERT 000004c0: JUMPDEST 000004c1: POP 000004c2: PUSH2 0x0286 000004c5: PUSH1 0x00 000004c7: DUP1 000004c8: MLOAD 000004c9: PUSH1 0x20 000004cb: PUSH2 0x1e38 000004ce: DUP4 000004cf: CODECOPY 000004d0: DUP2 000004d1: MLOAD 000004d2: SWAP2 000004d3: MSTORE 000004d4: DUP2 000004d5: JUMP 000004d6: JUMPDEST 000004d7: CALLVALUE 000004d8: DUP1 000004d9: ISZERO 000004da: PUSH2 0x04e2 000004dd: JUMPI 000004de: PUSH1 0x00 000004e0: DUP1 000004e1: REVERT 000004e2: JUMPDEST 000004e3: POP 000004e4: PUSH2 0x01fd 000004e7: PUSH2 0x04f1 000004ea: CALLDATASIZE 000004eb: PUSH1 0x04 000004ed: PUSH2 0x1c02 000004f0: JUMP 000004f1: JUMPDEST 000004f2: PUSH4 0xf23a6e61 000004f7: PUSH1 0xe0 000004f9: SHL 000004fa: SWAP7 000004fb: SWAP6 000004fc: POP 000004fd: POP 000004fe: POP 000004ff: POP 00000500: POP 00000501: POP 00000502: JUMP 00000503: JUMPDEST 00000504: PUSH1 0x00 00000506: PUSH1 0x01 00000508: PUSH1 0x01 0000050a: PUSH1 0xe0 0000050c: SHL 0000050d: SUB 0000050e: NOT 0000050f: DUP3 00000510: AND 00000511: PUSH4 0xda8def73 00000516: PUSH1 0xe0 00000518: SHL 00000519: EQ 0000051a: DUP1 0000051b: PUSH2 0x0528 0000051e: JUMPI 0000051f: POP 00000520: PUSH2 0x0528 00000523: DUP3 00000524: PUSH2 0x0bee 00000527: JUMP 00000528: JUMPDEST 00000529: SWAP3 0000052a: SWAP2 0000052b: POP 0000052c: POP 0000052d: JUMP 0000052e: JUMPDEST 0000052f: PUSH1 0x00 00000531: DUP2 00000532: MLOAD 00000533: PUSH1 0x80 00000535: EQ 00000536: PUSH2 0x055a 00000539: JUMPI 0000053a: PUSH1 0x40 0000053c: MLOAD 0000053d: PUSH3 0x461bcd 00000541: PUSH1 0xe5 00000543: SHL 00000544: DUP2 00000545: MSTORE 00000546: PUSH1 0x04 00000548: ADD 00000549: PUSH2 0x0551 0000054c: SWAP1 0000054d: PUSH2 0x1c7d 00000550: JUMP 00000551: JUMPDEST 00000552: PUSH1 0x40 00000554: MLOAD 00000555: DUP1 00000556: SWAP2 00000557: SUB 00000558: SWAP1 00000559: REVERT 0000055a: JUMPDEST 0000055b: PUSH1 0x00 0000055d: PUSH2 0x0566 00000560: DUP5 00000561: DUP5 00000562: PUSH2 0x0c23 00000565: JUMP 00000566: JUMPDEST 00000567: SWAP1 00000568: POP 00000569: PUSH2 0x0580 0000056c: PUSH1 0x00 0000056e: DUP1 0000056f: MLOAD 00000570: PUSH1 0x20 00000572: PUSH2 0x1e38 00000575: DUP4 00000576: CODECOPY 00000577: DUP2 00000578: MLOAD 00000579: SWAP2 0000057a: MSTORE 0000057b: DUP3 0000057c: PUSH2 0x0870 0000057f: JUMP 00000580: JUMPDEST 00000581: ISZERO 00000582: PUSH2 0x0595 00000585: JUMPI 00000586: POP 00000587: PUSH4 0x0b135d3f 0000058c: PUSH1 0xe1 0000058e: SHL 0000058f: SWAP1 00000590: POP 00000591: PUSH2 0x0528 00000594: JUMP 00000595: JUMPDEST 00000596: POP 00000597: PUSH1 0x01 00000599: PUSH1 0x01 0000059b: PUSH1 0xe0 0000059d: SHL 0000059e: SUB 0000059f: NOT 000005a0: SWAP4 000005a1: SWAP3 000005a2: POP 000005a3: POP 000005a4: POP 000005a5: JUMP 000005a6: JUMPDEST 000005a7: PUSH2 0x05ae 000005aa: PUSH2 0x0dfb 000005ad: JUMP 000005ae: JUMPDEST 000005af: DUP3 000005b0: DUP2 000005b1: EQ 000005b2: PUSH2 0x05f3 000005b5: JUMPI 000005b6: PUSH1 0x40 000005b8: MLOAD 000005b9: PUSH3 0x461bcd 000005bd: PUSH1 0xe5 000005bf: SHL 000005c0: DUP2 000005c1: MSTORE 000005c2: PUSH1 0x20 000005c4: PUSH1 0x04 000005c6: DUP3 000005c7: ADD 000005c8: MSTORE 000005c9: PUSH1 0x13 000005cb: PUSH1 0x24 000005cd: DUP3 000005ce: ADD 000005cf: MSTORE 000005d0: PUSH19 0x77726f6e67206172726179206c656e67746873 000005e4: PUSH1 0x68 000005e6: SHL 000005e7: PUSH1 0x44 000005e9: DUP3 000005ea: ADD 000005eb: MSTORE 000005ec: PUSH1 0x64 000005ee: ADD 000005ef: PUSH2 0x0551 000005f2: JUMP 000005f3: JUMPDEST 000005f4: PUSH1 0x00 000005f6: JUMPDEST 000005f7: DUP4 000005f8: DUP2 000005f9: LT 000005fa: ISZERO 000005fb: PUSH2 0x069a 000005fe: JUMPI 000005ff: PUSH2 0x0688 00000602: DUP6 00000603: DUP6 00000604: DUP4 00000605: DUP2 00000606: DUP2 00000607: LT 00000608: PUSH2 0x0613 0000060b: JUMPI 0000060c: PUSH2 0x0613 0000060f: PUSH2 0x1ccb 00000612: JUMP 00000613: JUMPDEST 00000614: SWAP1 00000615: POP 00000616: PUSH1 0x20 00000618: MUL 00000619: ADD 0000061a: PUSH1 0x20 0000061c: DUP2 0000061d: ADD 0000061e: SWAP1 0000061f: PUSH2 0x0628 00000622: SWAP2 00000623: SWAP1 00000624: PUSH2 0x1ce1 00000627: JUMP 00000628: JUMPDEST 00000629: PUSH1 0x00 0000062b: DUP6 0000062c: DUP6 0000062d: DUP6 0000062e: DUP2 0000062f: DUP2 00000630: LT 00000631: PUSH2 0x063c 00000634: JUMPI 00000635: PUSH2 0x063c 00000638: PUSH2 0x1ccb 0000063b: JUMP 0000063c: JUMPDEST 0000063d: SWAP1 0000063e: POP 0000063f: PUSH1 0x20 00000641: MUL 00000642: DUP2 00000643: ADD 00000644: SWAP1 00000645: PUSH2 0x064e 00000648: SWAP2 00000649: SWAP1 0000064a: PUSH2 0x1cfe 0000064d: JUMP 0000064e: JUMPDEST 0000064f: DUP1 00000650: DUP1 00000651: PUSH1 0x1f 00000653: ADD 00000654: PUSH1 0x20 00000656: DUP1 00000657: SWAP2 00000658: DIV 00000659: MUL 0000065a: PUSH1 0x20 0000065c: ADD 0000065d: PUSH1 0x40 0000065f: MLOAD 00000660: SWAP1 00000661: DUP2 00000662: ADD 00000663: PUSH1 0x40 00000665: MSTORE 00000666: DUP1 00000667: SWAP4 00000668: SWAP3 00000669: SWAP2 0000066a: SWAP1 0000066b: DUP2 0000066c: DUP2 0000066d: MSTORE 0000066e: PUSH1 0x20 00000670: ADD 00000671: DUP4 00000672: DUP4 00000673: DUP1 00000674: DUP3 00000675: DUP5 00000676: CALLDATACOPY 00000677: PUSH1 0x00 00000679: SWAP3 0000067a: ADD 0000067b: SWAP2 0000067c: SWAP1 0000067d: SWAP2 0000067e: MSTORE 0000067f: POP 00000680: PUSH2 0x0e66 00000683: SWAP3 00000684: POP 00000685: POP 00000686: POP 00000687: JUMP 00000688: JUMPDEST 00000689: DUP1 0000068a: PUSH2 0x0692 0000068d: DUP2 0000068e: PUSH2 0x1d5a 00000691: JUMP 00000692: JUMPDEST 00000693: SWAP2 00000694: POP 00000695: POP 00000696: PUSH2 0x05f6 00000699: JUMP 0000069a: JUMPDEST 0000069b: POP 0000069c: POP 0000069d: POP 0000069e: POP 0000069f: POP 000006a0: JUMP 000006a1: JUMPDEST 000006a2: PUSH1 0x00 000006a4: DUP3 000006a5: DUP2 000006a6: MSTORE 000006a7: PUSH1 0x20 000006a9: DUP2 000006aa: SWAP1 000006ab: MSTORE 000006ac: PUSH1 0x40 000006ae: SWAP1 000006af: KECCAK256 000006b0: PUSH1 0x01 000006b2: ADD 000006b3: SLOAD 000006b4: PUSH2 0x06bc 000006b7: DUP2 000006b8: PUSH2 0x0ed6 000006bb: JUMP 000006bc: JUMPDEST 000006bd: PUSH2 0x06c6 000006c0: DUP4 000006c1: DUP4 000006c2: PUSH2 0x0ee3 000006c5: JUMP 000006c6: JUMPDEST 000006c7: POP 000006c8: POP 000006c9: POP 000006ca: POP 000006cb: JUMP 000006cc: JUMPDEST 000006cd: PUSH1 0x01 000006cf: PUSH1 0x01 000006d1: PUSH1 0xa0 000006d3: SHL 000006d4: SUB 000006d5: DUP2 000006d6: AND 000006d7: CALLER 000006d8: EQ 000006d9: PUSH2 0x06f5 000006dc: JUMPI 000006dd: PUSH1 0x40 000006df: MLOAD 000006e0: PUSH4 0x334bd919 000006e5: PUSH1 0xe1 000006e7: SHL 000006e8: DUP2 000006e9: MSTORE 000006ea: PUSH1 0x04 000006ec: ADD 000006ed: PUSH1 0x40 000006ef: MLOAD 000006f0: DUP1 000006f1: SWAP2 000006f2: SUB 000006f3: SWAP1 000006f4: REVERT 000006f5: JUMPDEST 000006f6: PUSH2 0x06ff 000006f9: DUP3 000006fa: DUP3 000006fb: PUSH2 0x0f75 000006fe: JUMP 000006ff: JUMPDEST 00000700: POP 00000701: POP 00000702: POP 00000703: JUMP 00000704: JUMPDEST 00000705: PUSH1 0x00 00000707: PUSH2 0x070e 0000070a: PUSH2 0x0fe0 0000070d: JUMP 0000070e: JUMPDEST 0000070f: PUSH2 0x0718 00000712: DUP5 00000713: DUP5 00000714: PUSH2 0x1058 00000717: JUMP 00000718: JUMPDEST 00000719: SWAP1 0000071a: POP 0000071b: PUSH2 0x0723 0000071e: DUP3 0000071f: PUSH2 0x118a 00000722: JUMP 00000723: JUMPDEST 00000724: SWAP4 00000725: SWAP3 00000726: POP 00000727: POP 00000728: POP 00000729: JUMP 0000072a: JUMPDEST 0000072b: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789 0000074c: PUSH1 0x40 0000074e: MLOAD 0000074f: PUSH4 0xb760faf9 00000754: PUSH1 0xe0 00000756: SHL 00000757: DUP2 00000758: MSTORE 00000759: ADDRESS 0000075a: PUSH1 0x04 0000075c: DUP3 0000075d: ADD 0000075e: MSTORE 0000075f: PUSH1 0x01 00000761: PUSH1 0x01 00000763: PUSH1 0xa0 00000765: SHL 00000766: SUB 00000767: SWAP2 00000768: SWAP1 00000769: SWAP2 0000076a: AND 0000076b: SWAP1 0000076c: PUSH4 0xb760faf9 00000771: SWAP1 00000772: CALLVALUE 00000773: SWAP1 00000774: PUSH1 0x24 00000776: ADD 00000777: PUSH1 0x00 00000779: PUSH1 0x40 0000077b: MLOAD 0000077c: DUP1 0000077d: DUP4 0000077e: SUB 0000077f: DUP2 00000780: DUP6 00000781: DUP9 00000782: DUP1 00000783: EXTCODESIZE 00000784: ISZERO 00000785: DUP1 00000786: ISZERO 00000787: PUSH2 0x078f 0000078a: JUMPI 0000078b: PUSH1 0x00 0000078d: DUP1 0000078e: REVERT 0000078f: JUMPDEST 00000790: POP 00000791: GAS 00000792: CALL 00000793: ISZERO 00000794: DUP1 00000795: ISZERO 00000796: PUSH2 0x069a 00000799: JUMPI 0000079a: RETURNDATASIZE 0000079b: PUSH1 0x00 0000079d: DUP1 0000079e: RETURNDATACOPY 0000079f: RETURNDATASIZE 000007a0: PUSH1 0x00 000007a2: REVERT 000007a3: JUMPDEST 000007a4: PUSH2 0x07ab 000007a7: PUSH2 0x11d7 000007aa: JUMP 000007ab: JUMPDEST 000007ac: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789 000007cd: PUSH1 0x40 000007cf: MLOAD 000007d0: PUSH4 0x040b850f 000007d5: PUSH1 0xe3 000007d7: SHL 000007d8: DUP2 000007d9: MSTORE 000007da: PUSH1 0x01 000007dc: PUSH1 0x01 000007de: PUSH1 0xa0 000007e0: SHL 000007e1: SUB 000007e2: DUP5 000007e3: DUP2 000007e4: AND 000007e5: PUSH1 0x04 000007e7: DUP4 000007e8: ADD 000007e9: MSTORE 000007ea: PUSH1 0x24 000007ec: DUP3 000007ed: ADD 000007ee: DUP5 000007ef: SWAP1 000007f0: MSTORE 000007f1: SWAP2 000007f2: SWAP1 000007f3: SWAP2 000007f4: AND 000007f5: SWAP1 000007f6: PUSH4 0x205c2878 000007fb: SWAP1 000007fc: PUSH1 0x44 000007fe: ADD 000007ff: PUSH1 0x00 00000801: PUSH1 0x40 00000803: MLOAD 00000804: DUP1 00000805: DUP4 00000806: SUB 00000807: DUP2 00000808: PUSH1 0x00 0000080a: DUP8 0000080b: DUP1 0000080c: EXTCODESIZE 0000080d: ISZERO 0000080e: DUP1 0000080f: ISZERO 00000810: PUSH2 0x0818 00000813: JUMPI 00000814: PUSH1 0x00 00000816: DUP1 00000817: REVERT 00000818: JUMPDEST 00000819: POP 0000081a: GAS 0000081b: CALL 0000081c: ISZERO 0000081d: DUP1 0000081e: ISZERO 0000081f: PUSH2 0x082c 00000822: JUMPI 00000823: RETURNDATASIZE 00000824: PUSH1 0x00 00000826: DUP1 00000827: RETURNDATACOPY 00000828: RETURNDATASIZE 00000829: PUSH1 0x00 0000082b: REVERT 0000082c: JUMPDEST 0000082d: POP 0000082e: POP 0000082f: POP 00000830: POP 00000831: POP 00000832: POP 00000833: JUMP 00000834: JUMPDEST 00000835: PUSH2 0x083c 00000838: PUSH2 0x11f9 0000083b: JUMP 0000083c: JUMPDEST 0000083d: PUSH2 0x0845 00000840: DUP3 00000841: PUSH2 0x129e 00000844: JUMP 00000845: JUMPDEST 00000846: PUSH2 0x084f 00000849: DUP3 0000084a: DUP3 0000084b: PUSH2 0x12a6 0000084e: JUMP 0000084f: JUMPDEST 00000850: POP 00000851: POP 00000852: JUMP 00000853: JUMPDEST 00000854: PUSH1 0x00 00000856: PUSH2 0x085d 00000859: PUSH2 0x1363 0000085c: JUMP 0000085d: JUMPDEST 0000085e: POP 0000085f: PUSH1 0x00 00000861: DUP1 00000862: MLOAD 00000863: PUSH1 0x20 00000865: PUSH2 0x1e99 00000868: DUP4 00000869: CODECOPY 0000086a: DUP2 0000086b: MLOAD 0000086c: SWAP2 0000086d: MSTORE 0000086e: SWAP1 0000086f: JUMP 00000870: JUMPDEST 00000871: PUSH1 0x00 00000873: SWAP2 00000874: DUP3 00000875: MSTORE 00000876: PUSH1 0x20 00000878: DUP3 00000879: DUP2 0000087a: MSTORE 0000087b: PUSH1 0x40 0000087d: DUP1 0000087e: DUP5 0000087f: KECCAK256 00000880: PUSH1 0x01 00000882: PUSH1 0x01 00000884: PUSH1 0xa0 00000886: SHL 00000887: SUB 00000888: SWAP4 00000889: SWAP1 0000088a: SWAP4 0000088b: AND 0000088c: DUP5 0000088d: MSTORE 0000088e: SWAP2 0000088f: SWAP1 00000890: MSTORE 00000891: SWAP1 00000892: KECCAK256 00000893: SLOAD 00000894: PUSH1 0xff 00000896: AND 00000897: SWAP1 00000898: JUMP 00000899: JUMPDEST 0000089a: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 000008bb: DUP1 000008bc: SLOAD 000008bd: PUSH1 0x01 000008bf: PUSH1 0x40 000008c1: SHL 000008c2: DUP2 000008c3: DIV 000008c4: PUSH1 0xff 000008c6: AND 000008c7: ISZERO 000008c8: SWAP1 000008c9: PUSH1 0x01 000008cb: PUSH1 0x01 000008cd: PUSH1 0x40 000008cf: SHL 000008d0: SUB 000008d1: AND 000008d2: PUSH1 0x00 000008d4: DUP2 000008d5: ISZERO 000008d6: DUP1 000008d7: ISZERO 000008d8: PUSH2 0x08de 000008db: JUMPI 000008dc: POP 000008dd: DUP3 000008de: JUMPDEST 000008df: SWAP1 000008e0: POP 000008e1: PUSH1 0x00 000008e3: DUP3 000008e4: PUSH1 0x01 000008e6: PUSH1 0x01 000008e8: PUSH1 0x40 000008ea: SHL 000008eb: SUB 000008ec: AND 000008ed: PUSH1 0x01 000008ef: EQ 000008f0: DUP1 000008f1: ISZERO 000008f2: PUSH2 0x08fa 000008f5: JUMPI 000008f6: POP 000008f7: ADDRESS 000008f8: EXTCODESIZE 000008f9: ISZERO 000008fa: JUMPDEST 000008fb: SWAP1 000008fc: POP 000008fd: DUP2 000008fe: ISZERO 000008ff: DUP1 00000900: ISZERO 00000901: PUSH2 0x0908 00000904: JUMPI 00000905: POP 00000906: DUP1 00000907: ISZERO 00000908: JUMPDEST 00000909: ISZERO 0000090a: PUSH2 0x0926 0000090d: JUMPI 0000090e: PUSH1 0x40 00000910: MLOAD 00000911: PUSH4 0xf92ee8a9 00000916: PUSH1 0xe0 00000918: SHL 00000919: DUP2 0000091a: MSTORE 0000091b: PUSH1 0x04 0000091d: ADD 0000091e: PUSH1 0x40 00000920: MLOAD 00000921: DUP1 00000922: SWAP2 00000923: SUB 00000924: SWAP1 00000925: REVERT 00000926: JUMPDEST 00000927: DUP5 00000928: SLOAD 00000929: PUSH8 0xffffffffffffffff 00000932: NOT 00000933: AND 00000934: PUSH1 0x01 00000936: OR 00000937: DUP6 00000938: SSTORE 00000939: DUP4 0000093a: ISZERO 0000093b: PUSH2 0x0950 0000093e: JUMPI 0000093f: DUP5 00000940: SLOAD 00000941: PUSH1 0xff 00000943: PUSH1 0x40 00000945: SHL 00000946: NOT 00000947: AND 00000948: PUSH1 0x01 0000094a: PUSH1 0x40 0000094c: SHL 0000094d: OR 0000094e: DUP6 0000094f: SSTORE 00000950: JUMPDEST 00000951: DUP6 00000952: MLOAD 00000953: PUSH1 0x00 00000955: DUP2 00000956: SWAP1 00000957: SUB 00000958: PUSH2 0x0973 0000095b: JUMPI 0000095c: PUSH1 0x40 0000095e: MLOAD 0000095f: PUSH3 0xf30415 00000963: PUSH1 0xe0 00000965: SHL 00000966: DUP2 00000967: MSTORE 00000968: PUSH1 0x04 0000096a: ADD 0000096b: PUSH1 0x40 0000096d: MLOAD 0000096e: DUP1 0000096f: SWAP2 00000970: SUB 00000971: SWAP1 00000972: REVERT 00000973: JUMPDEST 00000974: PUSH1 0x00 00000976: JUMPDEST 00000977: DUP2 00000978: DUP2 00000979: PUSH1 0xff 0000097b: AND 0000097c: LT 0000097d: ISZERO 0000097e: PUSH2 0x09e5 00000981: JUMPI 00000982: PUSH2 0x09aa 00000985: PUSH1 0x00 00000987: DUP1 00000988: SHL 00000989: DUP10 0000098a: DUP4 0000098b: PUSH1 0xff 0000098d: AND 0000098e: DUP2 0000098f: MLOAD 00000990: DUP2 00000991: LT 00000992: PUSH2 0x099d 00000995: JUMPI 00000996: PUSH2 0x099d 00000999: PUSH2 0x1ccb 0000099c: JUMP 0000099d: JUMPDEST 0000099e: PUSH1 0x20 000009a0: MUL 000009a1: PUSH1 0x20 000009a3: ADD 000009a4: ADD 000009a5: MLOAD 000009a6: PUSH2 0x0ee3 000009a9: JUMP 000009aa: JUMPDEST 000009ab: POP 000009ac: PUSH2 0x09d2 000009af: PUSH1 0x00 000009b1: DUP1 000009b2: MLOAD 000009b3: PUSH1 0x20 000009b5: PUSH2 0x1e38 000009b8: DUP4 000009b9: CODECOPY 000009ba: DUP2 000009bb: MLOAD 000009bc: SWAP2 000009bd: MSTORE 000009be: DUP10 000009bf: DUP4 000009c0: PUSH1 0xff 000009c2: AND 000009c3: DUP2 000009c4: MLOAD 000009c5: DUP2 000009c6: LT 000009c7: PUSH2 0x099d 000009ca: JUMPI 000009cb: PUSH2 0x099d 000009ce: PUSH2 0x1ccb 000009d1: JUMP 000009d2: JUMPDEST 000009d3: POP 000009d4: DUP1 000009d5: PUSH2 0x09dd 000009d8: DUP2 000009d9: PUSH2 0x1d73 000009dc: JUMP 000009dd: JUMPDEST 000009de: SWAP2 000009df: POP 000009e0: POP 000009e1: PUSH2 0x0976 000009e4: JUMP 000009e5: JUMPDEST 000009e6: POP 000009e7: DUP7 000009e8: MLOAD 000009e9: PUSH1 0x40 000009eb: DUP1 000009ec: MLOAD 000009ed: PUSH1 0x01 000009ef: PUSH1 0x01 000009f1: PUSH1 0xa0 000009f3: SHL 000009f4: SUB 000009f5: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789 00000a16: AND 00000a17: DUP2 00000a18: MSTORE 00000a19: PUSH1 0x20 00000a1b: DUP2 00000a1c: ADD 00000a1d: SWAP3 00000a1e: SWAP1 00000a1f: SWAP3 00000a20: MSTORE 00000a21: PUSH32 0xf254ba336d4ee22021c9669762cbc1dc666c532a01bd503441728c63c543ac02 00000a42: SWAP2 00000a43: ADD 00000a44: PUSH1 0x40 00000a46: MLOAD 00000a47: DUP1 00000a48: SWAP2 00000a49: SUB 00000a4a: SWAP1 00000a4b: LOG1 00000a4c: POP 00000a4d: DUP4 00000a4e: ISZERO 00000a4f: PUSH2 0x082c 00000a52: JUMPI 00000a53: DUP5 00000a54: SLOAD 00000a55: PUSH1 0xff 00000a57: PUSH1 0x40 00000a59: SHL 00000a5a: NOT 00000a5b: AND 00000a5c: DUP6 00000a5d: SSTORE 00000a5e: PUSH1 0x40 00000a60: MLOAD 00000a61: PUSH1 0x01 00000a63: DUP2 00000a64: MSTORE 00000a65: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2 00000a86: SWAP1 00000a87: PUSH1 0x20 00000a89: ADD 00000a8a: PUSH1 0x40 00000a8c: MLOAD 00000a8d: DUP1 00000a8e: SWAP2 00000a8f: SUB 00000a90: SWAP1 00000a91: LOG1 00000a92: POP 00000a93: POP 00000a94: POP 00000a95: POP 00000a96: POP 00000a97: POP 00000a98: JUMP 00000a99: JUMPDEST 00000a9a: PUSH2 0x0aa1 00000a9d: PUSH2 0x0dfb 00000aa0: JUMP 00000aa1: JUMPDEST 00000aa2: PUSH2 0x06c6 00000aa5: DUP5 00000aa6: DUP5 00000aa7: DUP5 00000aa8: DUP5 00000aa9: DUP1 00000aaa: DUP1 00000aab: PUSH1 0x1f 00000aad: ADD 00000aae: PUSH1 0x20 00000ab0: DUP1 00000ab1: SWAP2 00000ab2: DIV 00000ab3: MUL 00000ab4: PUSH1 0x20 00000ab6: ADD 00000ab7: PUSH1 0x40 00000ab9: MLOAD 00000aba: SWAP1 00000abb: DUP2 00000abc: ADD 00000abd: PUSH1 0x40 00000abf: MSTORE 00000ac0: DUP1 00000ac1: SWAP4 00000ac2: SWAP3 00000ac3: SWAP2 00000ac4: SWAP1 00000ac5: DUP2 00000ac6: DUP2 00000ac7: MSTORE 00000ac8: PUSH1 0x20 00000aca: ADD 00000acb: DUP4 00000acc: DUP4 00000acd: DUP1 00000ace: DUP3 00000acf: DUP5 00000ad0: CALLDATACOPY 00000ad1: PUSH1 0x00 00000ad3: SWAP3 00000ad4: ADD 00000ad5: SWAP2 00000ad6: SWAP1 00000ad7: SWAP2 00000ad8: MSTORE 00000ad9: POP 00000ada: PUSH2 0x0e66 00000add: SWAP3 00000ade: POP 00000adf: POP 00000ae0: POP 00000ae1: JUMP 00000ae2: JUMPDEST 00000ae3: PUSH1 0x40 00000ae5: MLOAD 00000ae6: PUSH4 0x70a08231 00000aeb: PUSH1 0xe0 00000aed: SHL 00000aee: DUP2 00000aef: MSTORE 00000af0: ADDRESS 00000af1: PUSH1 0x04 00000af3: DUP3 00000af4: ADD 00000af5: MSTORE 00000af6: PUSH1 0x00 00000af8: SWAP1 00000af9: PUSH1 0x01 00000afb: PUSH1 0x01 00000afd: PUSH1 0xa0 00000aff: SHL 00000b00: SUB 00000b01: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789 00000b22: AND 00000b23: SWAP1 00000b24: PUSH4 0x70a08231 00000b29: SWAP1 00000b2a: PUSH1 0x24 00000b2c: ADD 00000b2d: JUMPDEST 00000b2e: PUSH1 0x20 00000b30: PUSH1 0x40 00000b32: MLOAD 00000b33: DUP1 00000b34: DUP4 00000b35: SUB 00000b36: DUP2 00000b37: DUP7 00000b38: GAS 00000b39: STATICCALL 00000b3a: ISZERO 00000b3b: DUP1 00000b3c: ISZERO 00000b3d: PUSH2 0x0b4a 00000b40: JUMPI 00000b41: RETURNDATASIZE 00000b42: PUSH1 0x00 00000b44: DUP1 00000b45: RETURNDATACOPY 00000b46: RETURNDATASIZE 00000b47: PUSH1 0x00 00000b49: REVERT 00000b4a: JUMPDEST 00000b4b: POP 00000b4c: POP 00000b4d: POP 00000b4e: POP 00000b4f: PUSH1 0x40 00000b51: MLOAD 00000b52: RETURNDATASIZE 00000b53: PUSH1 0x1f 00000b55: NOT 00000b56: PUSH1 0x1f 00000b58: DUP3 00000b59: ADD 00000b5a: AND 00000b5b: DUP3 00000b5c: ADD 00000b5d: DUP1 00000b5e: PUSH1 0x40 00000b60: MSTORE 00000b61: POP 00000b62: DUP2 00000b63: ADD 00000b64: SWAP1 00000b65: PUSH2 0x0b6e 00000b68: SWAP2 00000b69: SWAP1 00000b6a: PUSH2 0x1d92 00000b6d: JUMP 00000b6e: JUMPDEST 00000b6f: SWAP1 00000b70: POP 00000b71: SWAP1 00000b72: JUMP 00000b73: JUMPDEST 00000b74: PUSH1 0x40 00000b76: MLOAD 00000b77: PUSH4 0x1aab3f0d 00000b7c: PUSH1 0xe1 00000b7e: SHL 00000b7f: DUP2 00000b80: MSTORE 00000b81: ADDRESS 00000b82: PUSH1 0x04 00000b84: DUP3 00000b85: ADD 00000b86: MSTORE 00000b87: PUSH1 0x00 00000b89: PUSH1 0x24 00000b8b: DUP3 00000b8c: ADD 00000b8d: DUP2 00000b8e: SWAP1 00000b8f: MSTORE 00000b90: SWAP1 00000b91: PUSH1 0x01 00000b93: PUSH1 0x01 00000b95: PUSH1 0xa0 00000b97: SHL 00000b98: SUB 00000b99: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789 00000bba: AND 00000bbb: SWAP1 00000bbc: PUSH4 0x35567e1a 00000bc1: SWAP1 00000bc2: PUSH1 0x44 00000bc4: ADD 00000bc5: PUSH2 0x0b2d 00000bc8: JUMP 00000bc9: JUMPDEST 00000bca: PUSH1 0x00 00000bcc: DUP3 00000bcd: DUP2 00000bce: MSTORE 00000bcf: PUSH1 0x20 00000bd1: DUP2 00000bd2: SWAP1 00000bd3: MSTORE 00000bd4: PUSH1 0x40 00000bd6: SWAP1 00000bd7: KECCAK256 00000bd8: PUSH1 0x01 00000bda: ADD 00000bdb: SLOAD 00000bdc: PUSH2 0x0be4 00000bdf: DUP2 00000be0: PUSH2 0x0ed6 00000be3: JUMP 00000be4: JUMPDEST 00000be5: PUSH2 0x06c6 00000be8: DUP4 00000be9: DUP4 00000bea: PUSH2 0x0f75 00000bed: JUMP 00000bee: JUMPDEST 00000bef: PUSH1 0x00 00000bf1: PUSH1 0x01 00000bf3: PUSH1 0x01 00000bf5: PUSH1 0xe0 00000bf7: SHL 00000bf8: SUB 00000bf9: NOT 00000bfa: DUP3 00000bfb: AND 00000bfc: PUSH4 0x7965db0b 00000c01: PUSH1 0xe0 00000c03: SHL 00000c04: EQ 00000c05: DUP1 00000c06: PUSH2 0x0528 00000c09: JUMPI 00000c0a: POP 00000c0b: PUSH4 0x01ffc9a7 00000c10: PUSH1 0xe0 00000c12: SHL 00000c13: PUSH1 0x01 00000c15: PUSH1 0x01 00000c17: PUSH1 0xe0 00000c19: SHL 00000c1a: SUB 00000c1b: NOT 00000c1c: DUP4 00000c1d: AND 00000c1e: EQ 00000c1f: PUSH2 0x0528 00000c22: JUMP 00000c23: JUMPDEST 00000c24: PUSH1 0x00 00000c26: DUP1 00000c27: PUSH1 0x00 00000c29: DUP1 00000c2a: PUSH1 0x00 00000c2c: DUP6 00000c2d: DUP1 00000c2e: PUSH1 0x20 00000c30: ADD 00000c31: SWAP1 00000c32: MLOAD 00000c33: DUP2 00000c34: ADD 00000c35: SWAP1 00000c36: PUSH2 0x0c3f 00000c39: SWAP2 00000c3a: SWAP1 00000c3b: PUSH2 0x1dab 00000c3e: JUMP 00000c3f: JUMPDEST 00000c40: SWAP4 00000c41: POP 00000c42: SWAP4 00000c43: POP 00000c44: SWAP4 00000c45: POP 00000c46: SWAP4 00000c47: POP 00000c48: PUSH1 0x00 00000c4a: PUSH17 0x014551231950b75fc4402da1732fc9bebe 00000c5c: NOT 00000c5d: DUP1 00000c5e: PUSH2 0x0c69 00000c61: JUMPI 00000c62: PUSH2 0x0c69 00000c65: PUSH2 0x1df2 00000c68: JUMP 00000c69: JUMPDEST 00000c6a: DUP6 00000c6b: DUP5 00000c6c: MULMOD 00000c6d: PUSH2 0x0c88 00000c70: SWAP1 00000c71: PUSH17 0x014551231950b75fc4402da1732fc9bebe 00000c83: NOT 00000c84: PUSH2 0x1e08 00000c87: JUMP 00000c88: JUMPDEST 00000c89: SWAP1 00000c8a: POP 00000c8b: PUSH1 0x00 00000c8d: PUSH17 0x014551231950b75fc4402da1732fc9bebe 00000c9f: NOT 00000ca0: DUP7 00000ca1: DUP7 00000ca2: MULMOD 00000ca3: PUSH2 0x0cbe 00000ca6: SWAP1 00000ca7: PUSH17 0x014551231950b75fc4402da1732fc9bebe 00000cb9: NOT 00000cba: PUSH2 0x1e08 00000cbd: JUMP 00000cbe: JUMPDEST 00000cbf: SWAP1 00000cc0: POP 00000cc1: PUSH17 0x014551231950b75fc4402da1732fc9bebf 00000cd3: DUP3 00000cd4: ADD 00000cd5: PUSH2 0x0cdd 00000cd8: JUMPI 00000cd9: PUSH1 0x00 00000cdb: DUP1 00000cdc: REVERT 00000cdd: JUMPDEST 00000cde: PUSH1 0x40 00000ce0: DUP1 00000ce1: MLOAD 00000ce2: PUSH1 0x00 00000ce4: DUP1 00000ce5: DUP3 00000ce6: MSTORE 00000ce7: PUSH1 0x20 00000ce9: DUP3 00000cea: ADD 00000ceb: DUP1 00000cec: DUP5 00000ced: MSTORE 00000cee: DUP6 00000cef: SWAP1 00000cf0: MSTORE 00000cf1: PUSH1 0xff 00000cf3: DUP7 00000cf4: AND 00000cf5: SWAP3 00000cf6: DUP3 00000cf7: ADD 00000cf8: SWAP3 00000cf9: SWAP1 00000cfa: SWAP3 00000cfb: MSTORE 00000cfc: PUSH1 0x60 00000cfe: DUP2 00000cff: ADD 00000d00: DUP9 00000d01: SWAP1 00000d02: MSTORE 00000d03: PUSH1 0x80 00000d05: DUP2 00000d06: ADD 00000d07: DUP4 00000d08: SWAP1 00000d09: MSTORE 00000d0a: PUSH1 0x01 00000d0c: SWAP1 00000d0d: PUSH1 0xa0 00000d0f: ADD 00000d10: PUSH1 0x20 00000d12: PUSH1 0x40 00000d14: MLOAD 00000d15: PUSH1 0x20 00000d17: DUP2 00000d18: SUB 00000d19: SWAP1 00000d1a: DUP1 00000d1b: DUP5 00000d1c: SUB 00000d1d: SWAP1 00000d1e: DUP6 00000d1f: GAS 00000d20: STATICCALL 00000d21: ISZERO 00000d22: DUP1 00000d23: ISZERO 00000d24: PUSH2 0x0d31 00000d27: JUMPI 00000d28: RETURNDATASIZE 00000d29: PUSH1 0x00 00000d2b: DUP1 00000d2c: RETURNDATACOPY 00000d2d: RETURNDATASIZE 00000d2e: PUSH1 0x00 00000d30: REVERT 00000d31: JUMPDEST 00000d32: POP 00000d33: POP 00000d34: PUSH1 0x40 00000d36: MLOAD 00000d37: PUSH1 0x1f 00000d39: NOT 00000d3a: ADD 00000d3b: MLOAD 00000d3c: SWAP2 00000d3d: POP 00000d3e: POP 00000d3f: PUSH1 0x01 00000d41: PUSH1 0x01 00000d43: PUSH1 0xa0 00000d45: SHL 00000d46: SUB 00000d47: DUP2 00000d48: AND 00000d49: PUSH2 0x0d87 00000d4c: JUMPI 00000d4d: PUSH1 0x40 00000d4f: MLOAD 00000d50: PUSH3 0x461bcd 00000d54: PUSH1 0xe5 00000d56: SHL 00000d57: DUP2 00000d58: MSTORE 00000d59: PUSH1 0x20 00000d5b: PUSH1 0x04 00000d5d: DUP3 00000d5e: ADD 00000d5f: MSTORE 00000d60: PUSH1 0x10 00000d62: PUSH1 0x24 00000d64: DUP3 00000d65: ADD 00000d66: MSTORE 00000d67: PUSH16 0x1958dc9958dbdd995c8819985a5b1959 00000d78: PUSH1 0x82 00000d7a: SHL 00000d7b: PUSH1 0x44 00000d7d: DUP3 00000d7e: ADD 00000d7f: MSTORE 00000d80: PUSH1 0x64 00000d82: ADD 00000d83: PUSH2 0x0551 00000d86: JUMP 00000d87: JUMPDEST 00000d88: PUSH1 0x40 00000d8a: MLOAD 00000d8b: PUSH12 0xffffffffffffffffffffffff 00000d98: NOT 00000d99: PUSH1 0x60 00000d9b: DUP4 00000d9c: SWAP1 00000d9d: SHL 00000d9e: AND 00000d9f: PUSH1 0x20 00000da1: DUP3 00000da2: ADD 00000da3: MSTORE 00000da4: PUSH1 0x01 00000da6: PUSH1 0x01 00000da8: PUSH1 0xf8 00000daa: SHL 00000dab: SUB 00000dac: NOT 00000dad: PUSH1 0xf8 00000daf: DUP7 00000db0: SWAP1 00000db1: SHL 00000db2: AND 00000db3: PUSH1 0x34 00000db5: DUP3 00000db6: ADD 00000db7: MSTORE 00000db8: PUSH1 0x35 00000dba: DUP2 00000dbb: ADD 00000dbc: DUP9 00000dbd: SWAP1 00000dbe: MSTORE 00000dbf: PUSH1 0x55 00000dc1: DUP2 00000dc2: ADD 00000dc3: DUP12 00000dc4: SWAP1 00000dc5: MSTORE 00000dc6: PUSH1 0x75 00000dc8: ADD 00000dc9: PUSH1 0x40 00000dcb: MLOAD 00000dcc: PUSH1 0x20 00000dce: DUP2 00000dcf: DUP4 00000dd0: SUB 00000dd1: SUB 00000dd2: DUP2 00000dd3: MSTORE 00000dd4: SWAP1 00000dd5: PUSH1 0x40 00000dd7: MSTORE 00000dd8: DUP1 00000dd9: MLOAD 00000dda: SWAP1 00000ddb: PUSH1 0x20 00000ddd: ADD 00000dde: KECCAK256 00000ddf: DUP7 00000de0: EQ 00000de1: PUSH2 0x0deb 00000de4: JUMPI 00000de5: PUSH1 0x00 00000de7: PUSH2 0x0ded 00000dea: JUMP 00000deb: JUMPDEST 00000dec: DUP7 00000ded: JUMPDEST 00000dee: SWAP11 00000def: SWAP10 00000df0: POP 00000df1: POP 00000df2: POP 00000df3: POP 00000df4: POP 00000df5: POP 00000df6: POP 00000df7: POP 00000df8: POP 00000df9: POP 00000dfa: JUMP 00000dfb: JUMPDEST 00000dfc: CALLER 00000dfd: PUSH1 0x01 00000dff: PUSH1 0x01 00000e01: PUSH1 0xa0 00000e03: SHL 00000e04: SUB 00000e05: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789 00000e26: AND 00000e27: EQ 00000e28: DUP1 00000e29: PUSH2 0x0e45 00000e2c: JUMPI 00000e2d: POP 00000e2e: PUSH2 0x0e45 00000e31: PUSH1 0x00 00000e33: DUP1 00000e34: MLOAD 00000e35: PUSH1 0x20 00000e37: PUSH2 0x1e38 00000e3a: DUP4 00000e3b: CODECOPY 00000e3c: DUP2 00000e3d: MLOAD 00000e3e: SWAP2 00000e3f: MSTORE 00000e40: CALLER 00000e41: PUSH2 0x0870 00000e44: JUMP 00000e45: JUMPDEST 00000e46: PUSH2 0x0e64 00000e49: JUMPI 00000e4a: PUSH1 0x40 00000e4c: MLOAD 00000e4d: PUSH4 0x55bd2c4d 00000e52: PUSH1 0xe0 00000e54: SHL 00000e55: DUP2 00000e56: MSTORE 00000e57: CALLER 00000e58: PUSH1 0x04 00000e5a: DUP3 00000e5b: ADD 00000e5c: MSTORE 00000e5d: PUSH1 0x24 00000e5f: ADD 00000e60: PUSH2 0x0551 00000e63: JUMP 00000e64: JUMPDEST 00000e65: JUMP 00000e66: JUMPDEST 00000e67: PUSH1 0x00 00000e69: DUP1 00000e6a: DUP5 00000e6b: PUSH1 0x01 00000e6d: PUSH1 0x01 00000e6f: PUSH1 0xa0 00000e71: SHL 00000e72: SUB 00000e73: AND 00000e74: DUP5 00000e75: DUP5 00000e76: PUSH1 0x40 00000e78: MLOAD 00000e79: PUSH2 0x0e82 00000e7c: SWAP2 00000e7d: SWAP1 00000e7e: PUSH2 0x1e1b 00000e81: JUMP 00000e82: JUMPDEST 00000e83: PUSH1 0x00 00000e85: PUSH1 0x40 00000e87: MLOAD 00000e88: DUP1 00000e89: DUP4 00000e8a: SUB 00000e8b: DUP2 00000e8c: DUP6 00000e8d: DUP8 00000e8e: GAS 00000e8f: CALL 00000e90: SWAP3 00000e91: POP 00000e92: POP 00000e93: POP 00000e94: RETURNDATASIZE 00000e95: DUP1 00000e96: PUSH1 0x00 00000e98: DUP2 00000e99: EQ 00000e9a: PUSH2 0x0ebf 00000e9d: JUMPI 00000e9e: PUSH1 0x40 00000ea0: MLOAD 00000ea1: SWAP2 00000ea2: POP 00000ea3: PUSH1 0x1f 00000ea5: NOT 00000ea6: PUSH1 0x3f 00000ea8: RETURNDATASIZE 00000ea9: ADD 00000eaa: AND 00000eab: DUP3 00000eac: ADD 00000ead: PUSH1 0x40 00000eaf: MSTORE 00000eb0: RETURNDATASIZE 00000eb1: DUP3 00000eb2: MSTORE 00000eb3: RETURNDATASIZE 00000eb4: PUSH1 0x00 00000eb6: PUSH1 0x20 00000eb8: DUP5 00000eb9: ADD 00000eba: RETURNDATACOPY 00000ebb: PUSH2 0x0ec4 00000ebe: JUMP 00000ebf: JUMPDEST 00000ec0: PUSH1 0x60 00000ec2: SWAP2 00000ec3: POP 00000ec4: JUMPDEST 00000ec5: POP 00000ec6: SWAP2 00000ec7: POP 00000ec8: SWAP2 00000ec9: POP 00000eca: DUP2 00000ecb: PUSH2 0x069a 00000ece: JUMPI 00000ecf: DUP1 00000ed0: MLOAD 00000ed1: PUSH1 0x20 00000ed3: DUP3 00000ed4: ADD 00000ed5: REVERT 00000ed6: JUMPDEST 00000ed7: PUSH2 0x0ee0 00000eda: DUP2 00000edb: CALLER 00000edc: PUSH2 0x13ac 00000edf: JUMP 00000ee0: JUMPDEST 00000ee1: POP 00000ee2: JUMP 00000ee3: JUMPDEST 00000ee4: PUSH1 0x00 00000ee6: PUSH2 0x0eef 00000ee9: DUP4 00000eea: DUP4 00000eeb: PUSH2 0x0870 00000eee: JUMP 00000eef: JUMPDEST 00000ef0: PUSH2 0x0f6d 00000ef3: JUMPI 00000ef4: PUSH1 0x00 00000ef6: DUP4 00000ef7: DUP2 00000ef8: MSTORE 00000ef9: PUSH1 0x20 00000efb: DUP2 00000efc: DUP2 00000efd: MSTORE 00000efe: PUSH1 0x40 00000f00: DUP1 00000f01: DUP4 00000f02: KECCAK256 00000f03: PUSH1 0x01 00000f05: PUSH1 0x01 00000f07: PUSH1 0xa0 00000f09: SHL 00000f0a: SUB 00000f0b: DUP7 00000f0c: AND 00000f0d: DUP5 00000f0e: MSTORE 00000f0f: SWAP1 00000f10: SWAP2 00000f11: MSTORE 00000f12: SWAP1 00000f13: KECCAK256 00000f14: DUP1 00000f15: SLOAD 00000f16: PUSH1 0xff 00000f18: NOT 00000f19: AND 00000f1a: PUSH1 0x01 00000f1c: OR 00000f1d: SWAP1 00000f1e: SSTORE 00000f1f: PUSH2 0x0f25 00000f22: CALLER 00000f23: SWAP1 00000f24: JUMP 00000f25: JUMPDEST 00000f26: PUSH1 0x01 00000f28: PUSH1 0x01 00000f2a: PUSH1 0xa0 00000f2c: SHL 00000f2d: SUB 00000f2e: AND 00000f2f: DUP3 00000f30: PUSH1 0x01 00000f32: PUSH1 0x01 00000f34: PUSH1 0xa0 00000f36: SHL 00000f37: SUB 00000f38: AND 00000f39: DUP5 00000f3a: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d 00000f5b: PUSH1 0x40 00000f5d: MLOAD 00000f5e: PUSH1 0x40 00000f60: MLOAD 00000f61: DUP1 00000f62: SWAP2 00000f63: SUB 00000f64: SWAP1 00000f65: LOG4 00000f66: POP 00000f67: PUSH1 0x01 00000f69: PUSH2 0x0528 00000f6c: JUMP 00000f6d: JUMPDEST 00000f6e: POP 00000f6f: PUSH1 0x00 00000f71: PUSH2 0x0528 00000f74: JUMP 00000f75: JUMPDEST 00000f76: PUSH1 0x00 00000f78: PUSH2 0x0f81 00000f7b: DUP4 00000f7c: DUP4 00000f7d: PUSH2 0x0870 00000f80: JUMP 00000f81: JUMPDEST 00000f82: ISZERO 00000f83: PUSH2 0x0f6d 00000f86: JUMPI 00000f87: PUSH1 0x00 00000f89: DUP4 00000f8a: DUP2 00000f8b: MSTORE 00000f8c: PUSH1 0x20 00000f8e: DUP2 00000f8f: DUP2 00000f90: MSTORE 00000f91: PUSH1 0x40 00000f93: DUP1 00000f94: DUP4 00000f95: KECCAK256 00000f96: PUSH1 0x01 00000f98: PUSH1 0x01 00000f9a: PUSH1 0xa0 00000f9c: SHL 00000f9d: SUB 00000f9e: DUP7 00000f9f: AND 00000fa0: DUP1 00000fa1: DUP6 00000fa2: MSTORE 00000fa3: SWAP3 00000fa4: MSTORE 00000fa5: DUP1 00000fa6: DUP4 00000fa7: KECCAK256 00000fa8: DUP1 00000fa9: SLOAD 00000faa: PUSH1 0xff 00000fac: NOT 00000fad: AND 00000fae: SWAP1 00000faf: SSTORE 00000fb0: MLOAD 00000fb1: CALLER 00000fb2: SWAP3 00000fb3: DUP7 00000fb4: SWAP2 00000fb5: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b 00000fd6: SWAP2 00000fd7: SWAP1 00000fd8: LOG4 00000fd9: POP 00000fda: PUSH1 0x01 00000fdc: PUSH2 0x0528 00000fdf: JUMP 00000fe0: JUMPDEST 00000fe1: CALLER 00000fe2: PUSH1 0x01 00000fe4: PUSH1 0x01 00000fe6: PUSH1 0xa0 00000fe8: SHL 00000fe9: SUB 00000fea: PUSH32 0x0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d2789 0000100b: AND 0000100c: EQ 0000100d: PUSH2 0x0e64 00001010: JUMPI 00001011: PUSH1 0x40 00001013: MLOAD 00001014: PUSH3 0x461bcd 00001018: PUSH1 0xe5 0000101a: SHL 0000101b: DUP2 0000101c: MSTORE 0000101d: PUSH1 0x20 0000101f: PUSH1 0x04 00001021: DUP3 00001022: ADD 00001023: MSTORE 00001024: PUSH1 0x1c 00001026: PUSH1 0x24 00001028: DUP3 00001029: ADD 0000102a: MSTORE 0000102b: PUSH32 0x6163636f756e743a206e6f742066726f6d20456e747279506f696e7400000000 0000104c: PUSH1 0x44 0000104e: DUP3 0000104f: ADD 00001050: MSTORE 00001051: PUSH1 0x64 00001053: ADD 00001054: PUSH2 0x0551 00001057: JUMP 00001058: JUMPDEST 00001059: PUSH1 0x00 0000105b: DUP1 0000105c: PUSH2 0x1069 0000105f: PUSH2 0x0140 00001062: DUP6 00001063: ADD 00001064: DUP6 00001065: PUSH2 0x1cfe 00001068: JUMP 00001069: JUMPDEST 0000106a: DUP1 0000106b: DUP1 0000106c: PUSH1 0x1f 0000106e: ADD 0000106f: PUSH1 0x20 00001071: DUP1 00001072: SWAP2 00001073: DIV 00001074: MUL 00001075: PUSH1 0x20 00001077: ADD 00001078: PUSH1 0x40 0000107a: MLOAD 0000107b: SWAP1 0000107c: DUP2 0000107d: ADD 0000107e: PUSH1 0x40 00001080: MSTORE 00001081: DUP1 00001082: SWAP4 00001083: SWAP3 00001084: SWAP2 00001085: SWAP1 00001086: DUP2 00001087: DUP2 00001088: MSTORE 00001089: PUSH1 0x20 0000108b: ADD 0000108c: DUP4 0000108d: DUP4 0000108e: DUP1 0000108f: DUP3 00001090: DUP5 00001091: CALLDATACOPY 00001092: PUSH1 0x00 00001094: SWAP3 00001095: ADD 00001096: SWAP2 00001097: SWAP1 00001098: SWAP2 00001099: MSTORE 0000109a: POP 0000109b: POP 0000109c: PUSH1 0x40 0000109e: DUP1 0000109f: MLOAD 000010a0: PUSH1 0x80 000010a2: DUP2 000010a3: ADD 000010a4: SWAP1 000010a5: SWAP2 000010a6: MSTORE 000010a7: PUSH1 0x41 000010a9: DUP1 000010aa: DUP3 000010ab: MSTORE 000010ac: SWAP4 000010ad: SWAP5 000010ae: POP 000010af: SWAP3 000010b0: SWAP2 000010b1: POP 000010b2: PUSH2 0x1e58 000010b5: SWAP1 000010b6: POP 000010b7: PUSH1 0x20 000010b9: DUP4 000010ba: ADD 000010bb: CODECOPY 000010bc: DUP1 000010bd: MLOAD 000010be: SWAP1 000010bf: PUSH1 0x20 000010c1: ADD 000010c2: KECCAK256 000010c3: DUP2 000010c4: DUP1 000010c5: MLOAD 000010c6: SWAP1 000010c7: PUSH1 0x20 000010c9: ADD 000010ca: KECCAK256 000010cb: SUB 000010cc: PUSH2 0x10d9 000010cf: JUMPI 000010d0: PUSH1 0x01 000010d2: SWAP2 000010d3: POP 000010d4: POP 000010d5: PUSH2 0x0528 000010d8: JUMP 000010d9: JUMPDEST 000010da: PUSH2 0x10e7 000010dd: PUSH2 0x0140 000010e0: DUP6 000010e1: ADD 000010e2: DUP6 000010e3: PUSH2 0x1cfe 000010e6: JUMP 000010e7: JUMPDEST 000010e8: SWAP1 000010e9: POP 000010ea: PUSH1 0x80 000010ec: EQ 000010ed: PUSH2 0x1108 000010f0: JUMPI 000010f1: PUSH1 0x40 000010f3: MLOAD 000010f4: PUSH3 0x461bcd 000010f8: PUSH1 0xe5 000010fa: SHL 000010fb: DUP2 000010fc: MSTORE 000010fd: PUSH1 0x04 000010ff: ADD 00001100: PUSH2 0x0551 00001103: SWAP1 00001104: PUSH2 0x1c7d 00001107: JUMP 00001108: JUMPDEST 00001109: PUSH1 0x00 0000110b: PUSH2 0x1156 0000110e: DUP5 0000110f: PUSH2 0x111c 00001112: PUSH2 0x0140 00001115: DUP9 00001116: ADD 00001117: DUP9 00001118: PUSH2 0x1cfe 0000111b: JUMP 0000111c: JUMPDEST 0000111d: DUP1 0000111e: DUP1 0000111f: PUSH1 0x1f 00001121: ADD 00001122: PUSH1 0x20 00001124: DUP1 00001125: SWAP2 00001126: DIV 00001127: MUL 00001128: PUSH1 0x20 0000112a: ADD 0000112b: PUSH1 0x40 0000112d: MLOAD 0000112e: SWAP1 0000112f: DUP2 00001130: ADD 00001131: PUSH1 0x40 00001133: MSTORE 00001134: DUP1 00001135: SWAP4 00001136: SWAP3 00001137: SWAP2 00001138: SWAP1 00001139: DUP2 0000113a: DUP2 0000113b: MSTORE 0000113c: PUSH1 0x20 0000113e: ADD 0000113f: DUP4 00001140: DUP4 00001141: DUP1 00001142: DUP3 00001143: DUP5 00001144: CALLDATACOPY 00001145: PUSH1 0x00 00001147: SWAP3 00001148: ADD 00001149: SWAP2 0000114a: SWAP1 0000114b: SWAP2 0000114c: MSTORE 0000114d: POP 0000114e: PUSH2 0x0c23 00001151: SWAP3 00001152: POP 00001153: POP 00001154: POP 00001155: JUMP 00001156: JUMPDEST 00001157: SWAP1 00001158: POP 00001159: PUSH2 0x1170 0000115c: PUSH1 0x00 0000115e: DUP1 0000115f: MLOAD 00001160: PUSH1 0x20 00001162: PUSH2 0x1e38 00001165: DUP4 00001166: CODECOPY 00001167: DUP2 00001168: MLOAD 00001169: SWAP2 0000116a: MSTORE 0000116b: DUP3 0000116c: PUSH2 0x0870 0000116f: JUMP 00001170: JUMPDEST 00001171: PUSH2 0x117f 00001174: JUMPI 00001175: PUSH1 0x01 00001177: SWAP3 00001178: POP 00001179: POP 0000117a: POP 0000117b: PUSH2 0x0528 0000117e: JUMP 0000117f: JUMPDEST 00001180: POP 00001181: PUSH1 0x00 00001183: SWAP5 00001184: SWAP4 00001185: POP 00001186: POP 00001187: POP 00001188: POP 00001189: JUMP 0000118a: JUMPDEST 0000118b: DUP1 0000118c: ISZERO 0000118d: PUSH2 0x0ee0 00001190: JUMPI 00001191: PUSH1 0x40 00001193: MLOAD 00001194: PUSH1 0x00 00001196: SWAP1 00001197: CALLER 00001198: SWAP1 00001199: PUSH1 0x00 0000119b: NOT 0000119c: SWAP1 0000119d: DUP5 0000119e: SWAP1 0000119f: DUP5 000011a0: DUP2 000011a1: DUP2 000011a2: DUP2 000011a3: DUP6 000011a4: DUP9 000011a5: DUP9 000011a6: CALL 000011a7: SWAP4 000011a8: POP 000011a9: POP 000011aa: POP 000011ab: POP 000011ac: RETURNDATASIZE 000011ad: DUP1 000011ae: PUSH1 0x00 000011b0: DUP2 000011b1: EQ 000011b2: PUSH2 0x069a 000011b5: JUMPI 000011b6: PUSH1 0x40 000011b8: MLOAD 000011b9: SWAP2 000011ba: POP 000011bb: PUSH1 0x1f 000011bd: NOT 000011be: PUSH1 0x3f 000011c0: RETURNDATASIZE 000011c1: ADD 000011c2: AND 000011c3: DUP3 000011c4: ADD 000011c5: PUSH1 0x40 000011c7: MSTORE 000011c8: RETURNDATASIZE 000011c9: DUP3 000011ca: MSTORE 000011cb: RETURNDATASIZE 000011cc: PUSH1 0x00 000011ce: PUSH1 0x20 000011d0: DUP5 000011d1: ADD 000011d2: RETURNDATACOPY 000011d3: PUSH2 0x069a 000011d6: JUMP 000011d7: JUMPDEST 000011d8: CALLER 000011d9: ADDRESS 000011da: EQ 000011db: PUSH2 0x0e64 000011de: JUMPI 000011df: PUSH1 0x40 000011e1: MLOAD 000011e2: PUSH4 0xbbe0361b 000011e7: PUSH1 0xe0 000011e9: SHL 000011ea: DUP2 000011eb: MSTORE 000011ec: CALLER 000011ed: PUSH1 0x04 000011ef: DUP3 000011f0: ADD 000011f1: MSTORE 000011f2: PUSH1 0x24 000011f4: ADD 000011f5: PUSH2 0x0551 000011f8: JUMP 000011f9: JUMPDEST 000011fa: ADDRESS 000011fb: PUSH1 0x01 000011fd: PUSH1 0x01 000011ff: PUSH1 0xa0 00001201: SHL 00001202: SUB 00001203: PUSH32 0x000000000000000000000000379d71f6e7d0df0095bd76ef662724cb0138f6ee 00001224: AND 00001225: EQ 00001226: DUP1 00001227: PUSH2 0x1280 0000122a: JUMPI 0000122b: POP 0000122c: PUSH32 0x000000000000000000000000379d71f6e7d0df0095bd76ef662724cb0138f6ee 0000124d: PUSH1 0x01 0000124f: PUSH1 0x01 00001251: PUSH1 0xa0 00001253: SHL 00001254: SUB 00001255: AND 00001256: PUSH2 0x1274 00001259: PUSH1 0x00 0000125b: DUP1 0000125c: MLOAD 0000125d: PUSH1 0x20 0000125f: PUSH2 0x1e99 00001262: DUP4 00001263: CODECOPY 00001264: DUP2 00001265: MLOAD 00001266: SWAP2 00001267: MSTORE 00001268: SLOAD 00001269: PUSH1 0x01 0000126b: PUSH1 0x01 0000126d: PUSH1 0xa0 0000126f: SHL 00001270: SUB 00001271: AND 00001272: SWAP1 00001273: JUMP 00001274: JUMPDEST 00001275: PUSH1 0x01 00001277: PUSH1 0x01 00001279: PUSH1 0xa0 0000127b: SHL 0000127c: SUB 0000127d: AND 0000127e: EQ 0000127f: ISZERO 00001280: JUMPDEST 00001281: ISZERO 00001282: PUSH2 0x0e64 00001285: JUMPI 00001286: PUSH1 0x40 00001288: MLOAD 00001289: PUSH4 0x703e46dd 0000128e: PUSH1 0xe1 00001290: SHL 00001291: DUP2 00001292: MSTORE 00001293: PUSH1 0x04 00001295: ADD 00001296: PUSH1 0x40 00001298: MLOAD 00001299: DUP1 0000129a: SWAP2 0000129b: SUB 0000129c: SWAP1 0000129d: REVERT 0000129e: JUMPDEST 0000129f: PUSH2 0x0ee0 000012a2: PUSH2 0x11d7 000012a5: JUMP 000012a6: JUMPDEST 000012a7: DUP2 000012a8: PUSH1 0x01 000012aa: PUSH1 0x01 000012ac: PUSH1 0xa0 000012ae: SHL 000012af: SUB 000012b0: AND 000012b1: PUSH4 0x52d1902d 000012b6: PUSH1 0x40 000012b8: MLOAD 000012b9: DUP2 000012ba: PUSH4 0xffffffff 000012bf: AND 000012c0: PUSH1 0xe0 000012c2: SHL 000012c3: DUP2 000012c4: MSTORE 000012c5: PUSH1 0x04 000012c7: ADD 000012c8: PUSH1 0x20 000012ca: PUSH1 0x40 000012cc: MLOAD 000012cd: DUP1 000012ce: DUP4 000012cf: SUB 000012d0: DUP2 000012d1: DUP7 000012d2: GAS 000012d3: STATICCALL 000012d4: SWAP3 000012d5: POP 000012d6: POP 000012d7: POP 000012d8: DUP1 000012d9: ISZERO 000012da: PUSH2 0x1300 000012dd: JUMPI 000012de: POP 000012df: PUSH1 0x40 000012e1: DUP1 000012e2: MLOAD 000012e3: PUSH1 0x1f 000012e5: RETURNDATASIZE 000012e6: SWAP1 000012e7: DUP2 000012e8: ADD 000012e9: PUSH1 0x1f 000012eb: NOT 000012ec: AND 000012ed: DUP3 000012ee: ADD 000012ef: SWAP1 000012f0: SWAP3 000012f1: MSTORE 000012f2: PUSH2 0x12fd 000012f5: SWAP2 000012f6: DUP2 000012f7: ADD 000012f8: SWAP1 000012f9: PUSH2 0x1d92 000012fc: JUMP 000012fd: JUMPDEST 000012fe: PUSH1 0x01 00001300: JUMPDEST 00001301: PUSH2 0x1328 00001304: JUMPI 00001305: PUSH1 0x40 00001307: MLOAD 00001308: PUSH4 0x4c9c8ce3 0000130d: PUSH1 0xe0 0000130f: SHL 00001310: DUP2 00001311: MSTORE 00001312: PUSH1 0x01 00001314: PUSH1 0x01 00001316: PUSH1 0xa0 00001318: SHL 00001319: SUB 0000131a: DUP4 0000131b: AND 0000131c: PUSH1 0x04 0000131e: DUP3 0000131f: ADD 00001320: MSTORE 00001321: PUSH1 0x24 00001323: ADD 00001324: PUSH2 0x0551 00001327: JUMP 00001328: JUMPDEST 00001329: PUSH1 0x00 0000132b: DUP1 0000132c: MLOAD 0000132d: PUSH1 0x20 0000132f: PUSH2 0x1e99 00001332: DUP4 00001333: CODECOPY 00001334: DUP2 00001335: MLOAD 00001336: SWAP2 00001337: MSTORE 00001338: DUP2 00001339: EQ 0000133a: PUSH2 0x1359 0000133d: JUMPI 0000133e: PUSH1 0x40 00001340: MLOAD 00001341: PUSH4 0x2a875269 00001346: PUSH1 0xe2 00001348: SHL 00001349: DUP2 0000134a: MSTORE 0000134b: PUSH1 0x04 0000134d: DUP2 0000134e: ADD 0000134f: DUP3 00001350: SWAP1 00001351: MSTORE 00001352: PUSH1 0x24 00001354: ADD 00001355: PUSH2 0x0551 00001358: JUMP 00001359: JUMPDEST 0000135a: PUSH2 0x06ff 0000135d: DUP4 0000135e: DUP4 0000135f: PUSH2 0x13e5 00001362: JUMP 00001363: JUMPDEST 00001364: ADDRESS 00001365: PUSH1 0x01 00001367: PUSH1 0x01 00001369: PUSH1 0xa0 0000136b: SHL 0000136c: SUB 0000136d: PUSH32 0x000000000000000000000000379d71f6e7d0df0095bd76ef662724cb0138f6ee 0000138e: AND 0000138f: EQ 00001390: PUSH2 0x0e64 00001393: JUMPI 00001394: PUSH1 0x40 00001396: MLOAD 00001397: PUSH4 0x703e46dd 0000139c: PUSH1 0xe1 0000139e: SHL 0000139f: DUP2 000013a0: MSTORE 000013a1: PUSH1 0x04 000013a3: ADD 000013a4: PUSH1 0x40 000013a6: MLOAD 000013a7: DUP1 000013a8: SWAP2 000013a9: SUB 000013aa: SWAP1 000013ab: REVERT 000013ac: JUMPDEST 000013ad: PUSH2 0x13b6 000013b0: DUP3 000013b1: DUP3 000013b2: PUSH2 0x0870 000013b5: JUMP 000013b6: JUMPDEST 000013b7: PUSH2 0x084f 000013ba: JUMPI 000013bb: PUSH1 0x40 000013bd: MLOAD 000013be: PUSH4 0xe2517d3f 000013c3: PUSH1 0xe0 000013c5: SHL 000013c6: DUP2 000013c7: MSTORE 000013c8: PUSH1 0x01 000013ca: PUSH1 0x01 000013cc: PUSH1 0xa0 000013ce: SHL 000013cf: SUB 000013d0: DUP3 000013d1: AND 000013d2: PUSH1 0x04 000013d4: DUP3 000013d5: ADD 000013d6: MSTORE 000013d7: PUSH1 0x24 000013d9: DUP2 000013da: ADD 000013db: DUP4 000013dc: SWAP1 000013dd: MSTORE 000013de: PUSH1 0x44 000013e0: ADD 000013e1: PUSH2 0x0551 000013e4: JUMP 000013e5: JUMPDEST 000013e6: PUSH2 0x13ee 000013e9: DUP3 000013ea: PUSH2 0x143b 000013ed: JUMP 000013ee: JUMPDEST 000013ef: PUSH1 0x40 000013f1: MLOAD 000013f2: PUSH1 0x01 000013f4: PUSH1 0x01 000013f6: PUSH1 0xa0 000013f8: SHL 000013f9: SUB 000013fa: DUP4 000013fb: AND 000013fc: SWAP1 000013fd: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 0000141e: SWAP1 0000141f: PUSH1 0x00 00001421: SWAP1 00001422: LOG2 00001423: DUP1 00001424: MLOAD 00001425: ISZERO 00001426: PUSH2 0x1433 00001429: JUMPI 0000142a: PUSH2 0x06ff 0000142d: DUP3 0000142e: DUP3 0000142f: PUSH2 0x14a0 00001432: JUMP 00001433: JUMPDEST 00001434: PUSH2 0x084f 00001437: PUSH2 0x1516 0000143a: JUMP 0000143b: JUMPDEST 0000143c: DUP1 0000143d: PUSH1 0x01 0000143f: PUSH1 0x01 00001441: PUSH1 0xa0 00001443: SHL 00001444: SUB 00001445: AND 00001446: EXTCODESIZE 00001447: PUSH1 0x00 00001449: SUB 0000144a: PUSH2 0x1471 0000144d: JUMPI 0000144e: PUSH1 0x40 00001450: MLOAD 00001451: PUSH4 0x4c9c8ce3 00001456: PUSH1 0xe0 00001458: SHL 00001459: DUP2 0000145a: MSTORE 0000145b: PUSH1 0x01 0000145d: PUSH1 0x01 0000145f: PUSH1 0xa0 00001461: SHL 00001462: SUB 00001463: DUP3 00001464: AND 00001465: PUSH1 0x04 00001467: DUP3 00001468: ADD 00001469: MSTORE 0000146a: PUSH1 0x24 0000146c: ADD 0000146d: PUSH2 0x0551 00001470: JUMP 00001471: JUMPDEST 00001472: PUSH1 0x00 00001474: DUP1 00001475: MLOAD 00001476: PUSH1 0x20 00001478: PUSH2 0x1e99 0000147b: DUP4 0000147c: CODECOPY 0000147d: DUP2 0000147e: MLOAD 0000147f: SWAP2 00001480: MSTORE 00001481: DUP1 00001482: SLOAD 00001483: PUSH1 0x01 00001485: PUSH1 0x01 00001487: PUSH1 0xa0 00001489: SHL 0000148a: SUB 0000148b: NOT 0000148c: AND 0000148d: PUSH1 0x01 0000148f: PUSH1 0x01 00001491: PUSH1 0xa0 00001493: SHL 00001494: SUB 00001495: SWAP3 00001496: SWAP1 00001497: SWAP3 00001498: AND 00001499: SWAP2 0000149a: SWAP1 0000149b: SWAP2 0000149c: OR 0000149d: SWAP1 0000149e: SSTORE 0000149f: JUMP 000014a0: JUMPDEST 000014a1: PUSH1 0x60 000014a3: PUSH1 0x00 000014a5: DUP1 000014a6: DUP5 000014a7: PUSH1 0x01 000014a9: PUSH1 0x01 000014ab: PUSH1 0xa0 000014ad: SHL 000014ae: SUB 000014af: AND 000014b0: DUP5 000014b1: PUSH1 0x40 000014b3: MLOAD 000014b4: PUSH2 0x14bd 000014b7: SWAP2 000014b8: SWAP1 000014b9: PUSH2 0x1e1b 000014bc: JUMP 000014bd: JUMPDEST 000014be: PUSH1 0x00 000014c0: PUSH1 0x40 000014c2: MLOAD 000014c3: DUP1 000014c4: DUP4 000014c5: SUB 000014c6: DUP2 000014c7: DUP6 000014c8: GAS 000014c9: DELEGATECALL 000014ca: SWAP2 000014cb: POP 000014cc: POP 000014cd: RETURNDATASIZE 000014ce: DUP1 000014cf: PUSH1 0x00 000014d1: DUP2 000014d2: EQ 000014d3: PUSH2 0x14f8 000014d6: JUMPI 000014d7: PUSH1 0x40 000014d9: MLOAD 000014da: SWAP2 000014db: POP 000014dc: PUSH1 0x1f 000014de: NOT 000014df: PUSH1 0x3f 000014e1: RETURNDATASIZE 000014e2: ADD 000014e3: AND 000014e4: DUP3 000014e5: ADD 000014e6: PUSH1 0x40 000014e8: MSTORE 000014e9: RETURNDATASIZE 000014ea: DUP3 000014eb: MSTORE 000014ec: RETURNDATASIZE 000014ed: PUSH1 0x00 000014ef: PUSH1 0x20 000014f1: DUP5 000014f2: ADD 000014f3: RETURNDATACOPY 000014f4: PUSH2 0x14fd 000014f7: JUMP 000014f8: JUMPDEST 000014f9: PUSH1 0x60 000014fb: SWAP2 000014fc: POP 000014fd: JUMPDEST 000014fe: POP 000014ff: SWAP2 00001500: POP 00001501: SWAP2 00001502: POP 00001503: PUSH2 0x150d 00001506: DUP6 00001507: DUP4 00001508: DUP4 00001509: PUSH2 0x1535 0000150c: JUMP 0000150d: JUMPDEST 0000150e: SWAP6 0000150f: SWAP5 00001510: POP 00001511: POP 00001512: POP 00001513: POP 00001514: POP 00001515: JUMP 00001516: JUMPDEST 00001517: CALLVALUE 00001518: ISZERO 00001519: PUSH2 0x0e64 0000151c: JUMPI 0000151d: PUSH1 0x40 0000151f: MLOAD 00001520: PUSH4 0xb398979f 00001525: PUSH1 0xe0 00001527: SHL 00001528: DUP2 00001529: MSTORE 0000152a: PUSH1 0x04 0000152c: ADD 0000152d: PUSH1 0x40 0000152f: MLOAD 00001530: DUP1 00001531: SWAP2 00001532: SUB 00001533: SWAP1 00001534: REVERT 00001535: JUMPDEST 00001536: PUSH1 0x60 00001538: DUP3 00001539: PUSH2 0x154a 0000153c: JUMPI 0000153d: PUSH2 0x1545 00001540: DUP3 00001541: PUSH2 0x1591 00001544: JUMP 00001545: JUMPDEST 00001546: PUSH2 0x0723 00001549: JUMP 0000154a: JUMPDEST 0000154b: DUP2 0000154c: MLOAD 0000154d: ISZERO 0000154e: DUP1 0000154f: ISZERO 00001550: PUSH2 0x1561 00001553: JUMPI 00001554: POP 00001555: PUSH1 0x01 00001557: PUSH1 0x01 00001559: PUSH1 0xa0 0000155b: SHL 0000155c: SUB 0000155d: DUP5 0000155e: AND 0000155f: EXTCODESIZE 00001560: ISZERO 00001561: JUMPDEST 00001562: ISZERO 00001563: PUSH2 0x158a 00001566: JUMPI 00001567: PUSH1 0x40 00001569: MLOAD 0000156a: PUSH4 0x9996b315 0000156f: PUSH1 0xe0 00001571: SHL 00001572: DUP2 00001573: MSTORE 00001574: PUSH1 0x01 00001576: PUSH1 0x01 00001578: PUSH1 0xa0 0000157a: SHL 0000157b: SUB 0000157c: DUP6 0000157d: AND 0000157e: PUSH1 0x04 00001580: DUP3 00001581: ADD 00001582: MSTORE 00001583: PUSH1 0x24 00001585: ADD 00001586: PUSH2 0x0551 00001589: JUMP 0000158a: JUMPDEST 0000158b: POP 0000158c: DUP1 0000158d: PUSH2 0x0723 00001590: JUMP 00001591: JUMPDEST 00001592: DUP1 00001593: MLOAD 00001594: ISZERO 00001595: PUSH2 0x15a1 00001598: JUMPI 00001599: DUP1 0000159a: MLOAD 0000159b: DUP1 0000159c: DUP3 0000159d: PUSH1 0x20 0000159f: ADD 000015a0: REVERT 000015a1: JUMPDEST 000015a2: PUSH1 0x40 000015a4: MLOAD 000015a5: PUSH4 0x0a12f521 000015aa: PUSH1 0xe1 000015ac: SHL 000015ad: DUP2 000015ae: MSTORE 000015af: PUSH1 0x04 000015b1: ADD 000015b2: PUSH1 0x40 000015b4: MLOAD 000015b5: DUP1 000015b6: SWAP2 000015b7: SUB 000015b8: SWAP1 000015b9: REVERT 000015ba: JUMPDEST 000015bb: PUSH1 0x01 000015bd: PUSH1 0x01 000015bf: PUSH1 0xa0 000015c1: SHL 000015c2: SUB 000015c3: DUP2 000015c4: AND 000015c5: DUP2 000015c6: EQ 000015c7: PUSH2 0x0ee0 000015ca: JUMPI 000015cb: PUSH1 0x00 000015cd: DUP1 000015ce: REVERT 000015cf: JUMPDEST 000015d0: PUSH1 0x00 000015d2: DUP1 000015d3: DUP4 000015d4: PUSH1 0x1f 000015d6: DUP5 000015d7: ADD 000015d8: SLT 000015d9: PUSH2 0x15e1 000015dc: JUMPI 000015dd: PUSH1 0x00 000015df: DUP1 000015e0: REVERT 000015e1: JUMPDEST 000015e2: POP 000015e3: DUP2 000015e4: CALLDATALOAD 000015e5: PUSH1 0x01 000015e7: PUSH1 0x01 000015e9: PUSH1 0x40 000015eb: SHL 000015ec: SUB 000015ed: DUP2 000015ee: GT 000015ef: ISZERO 000015f0: PUSH2 0x15f8 000015f3: JUMPI 000015f4: PUSH1 0x00 000015f6: DUP1 000015f7: REVERT 000015f8: JUMPDEST 000015f9: PUSH1 0x20 000015fb: DUP4 000015fc: ADD 000015fd: SWAP2 000015fe: POP 000015ff: DUP4 00001600: PUSH1 0x20 00001602: DUP3 00001603: DUP6 00001604: ADD 00001605: ADD 00001606: GT 00001607: ISZERO 00001608: PUSH2 0x1610 0000160b: JUMPI 0000160c: PUSH1 0x00 0000160e: DUP1 0000160f: REVERT 00001610: JUMPDEST 00001611: SWAP3 00001612: POP 00001613: SWAP3 00001614: SWAP1 00001615: POP 00001616: JUMP 00001617: JUMPDEST 00001618: PUSH1 0x00 0000161a: DUP1 0000161b: PUSH1 0x00 0000161d: DUP1 0000161e: PUSH1 0x00 00001620: DUP1 00001621: PUSH1 0x00 00001623: DUP1 00001624: PUSH1 0xc0 00001626: DUP10 00001627: DUP12 00001628: SUB 00001629: SLT 0000162a: ISZERO 0000162b: PUSH2 0x1633 0000162e: JUMPI 0000162f: PUSH1 0x00 00001631: DUP1 00001632: REVERT 00001633: JUMPDEST 00001634: DUP9 00001635: CALLDATALOAD 00001636: PUSH2 0x163e 00001639: DUP2 0000163a: PUSH2 0x15ba 0000163d: JUMP 0000163e: JUMPDEST 0000163f: SWAP8 00001640: POP 00001641: PUSH1 0x20 00001643: DUP10 00001644: ADD 00001645: CALLDATALOAD 00001646: PUSH2 0x164e 00001649: DUP2 0000164a: PUSH2 0x15ba 0000164d: JUMP 0000164e: JUMPDEST 0000164f: SWAP7 00001650: POP 00001651: PUSH1 0x40 00001653: DUP10 00001654: ADD 00001655: CALLDATALOAD 00001656: PUSH2 0x165e 00001659: DUP2 0000165a: PUSH2 0x15ba 0000165d: JUMP 0000165e: JUMPDEST 0000165f: SWAP6 00001660: POP 00001661: PUSH1 0x60 00001663: DUP10 00001664: ADD 00001665: CALLDATALOAD 00001666: SWAP5 00001667: POP 00001668: PUSH1 0x80 0000166a: DUP10 0000166b: ADD 0000166c: CALLDATALOAD 0000166d: PUSH1 0x01 0000166f: PUSH1 0x01 00001671: PUSH1 0x40 00001673: SHL 00001674: SUB 00001675: DUP1 00001676: DUP3 00001677: GT 00001678: ISZERO 00001679: PUSH2 0x1681 0000167c: JUMPI 0000167d: PUSH1 0x00 0000167f: DUP1 00001680: REVERT 00001681: JUMPDEST 00001682: PUSH2 0x168d 00001685: DUP13 00001686: DUP4 00001687: DUP14 00001688: ADD 00001689: PUSH2 0x15cf 0000168c: JUMP 0000168d: JUMPDEST 0000168e: SWAP1 0000168f: SWAP7 00001690: POP 00001691: SWAP5 00001692: POP 00001693: PUSH1 0xa0 00001695: DUP12 00001696: ADD 00001697: CALLDATALOAD 00001698: SWAP2 00001699: POP 0000169a: DUP1 0000169b: DUP3 0000169c: GT 0000169d: ISZERO 0000169e: PUSH2 0x16a6 000016a1: JUMPI 000016a2: PUSH1 0x00 000016a4: DUP1 000016a5: REVERT 000016a6: JUMPDEST 000016a7: POP 000016a8: PUSH2 0x16b3 000016ab: DUP12 000016ac: DUP3 000016ad: DUP13 000016ae: ADD 000016af: PUSH2 0x15cf 000016b2: JUMP 000016b3: JUMPDEST 000016b4: SWAP10 000016b5: SWAP13 000016b6: SWAP9 000016b7: SWAP12 000016b8: POP 000016b9: SWAP7 000016ba: SWAP10 000016bb: POP 000016bc: SWAP5 000016bd: SWAP8 000016be: SWAP4 000016bf: SWAP7 000016c0: SWAP3 000016c1: SWAP6 000016c2: SWAP5 000016c3: POP 000016c4: POP 000016c5: POP 000016c6: JUMP 000016c7: JUMPDEST 000016c8: PUSH1 0x00 000016ca: PUSH1 0x20 000016cc: DUP3 000016cd: DUP5 000016ce: SUB 000016cf: SLT 000016d0: ISZERO 000016d1: PUSH2 0x16d9 000016d4: JUMPI 000016d5: PUSH1 0x00 000016d7: DUP1 000016d8: REVERT 000016d9: JUMPDEST 000016da: DUP2 000016db: CALLDATALOAD 000016dc: PUSH1 0x01 000016de: PUSH1 0x01 000016e0: PUSH1 0xe0 000016e2: SHL 000016e3: SUB 000016e4: NOT 000016e5: DUP2 000016e6: AND 000016e7: DUP2 000016e8: EQ 000016e9: PUSH2 0x0723 000016ec: JUMPI 000016ed: PUSH1 0x00 000016ef: DUP1 000016f0: REVERT 000016f1: JUMPDEST 000016f2: PUSH1 0x00 000016f4: DUP1 000016f5: PUSH1 0x00 000016f7: DUP1 000016f8: PUSH1 0x00 000016fa: PUSH1 0x80 000016fc: DUP7 000016fd: DUP9 000016fe: SUB 000016ff: SLT 00001700: ISZERO 00001701: PUSH2 0x1709 00001704: JUMPI 00001705: PUSH1 0x00 00001707: DUP1 00001708: REVERT 00001709: JUMPDEST 0000170a: DUP6 0000170b: CALLDATALOAD 0000170c: PUSH2 0x1714 0000170f: DUP2 00001710: PUSH2 0x15ba 00001713: JUMP 00001714: JUMPDEST 00001715: SWAP5 00001716: POP 00001717: PUSH1 0x20 00001719: DUP7 0000171a: ADD 0000171b: CALLDATALOAD 0000171c: PUSH2 0x1724 0000171f: DUP2 00001720: PUSH2 0x15ba 00001723: JUMP 00001724: JUMPDEST 00001725: SWAP4 00001726: POP 00001727: PUSH1 0x40 00001729: DUP7 0000172a: ADD 0000172b: CALLDATALOAD 0000172c: SWAP3 0000172d: POP 0000172e: PUSH1 0x60 00001730: DUP7 00001731: ADD 00001732: CALLDATALOAD 00001733: PUSH1 0x01 00001735: PUSH1 0x01 00001737: PUSH1 0x40 00001739: SHL 0000173a: SUB 0000173b: DUP2 0000173c: GT 0000173d: ISZERO 0000173e: PUSH2 0x1746 00001741: JUMPI 00001742: PUSH1 0x00 00001744: DUP1 00001745: REVERT 00001746: JUMPDEST 00001747: PUSH2 0x1752 0000174a: DUP9 0000174b: DUP3 0000174c: DUP10 0000174d: ADD 0000174e: PUSH2 0x15cf 00001751: JUMP 00001752: JUMPDEST 00001753: SWAP7 00001754: SWAP10 00001755: SWAP6 00001756: SWAP9 00001757: POP 00001758: SWAP4 00001759: SWAP7 0000175a: POP 0000175b: SWAP3 0000175c: SWAP5 0000175d: SWAP4 0000175e: SWAP3 0000175f: POP 00001760: POP 00001761: POP 00001762: JUMP 00001763: JUMPDEST 00001764: PUSH4 0x4e487b71 00001769: PUSH1 0xe0 0000176b: SHL 0000176c: PUSH1 0x00 0000176e: MSTORE 0000176f: PUSH1 0x41 00001771: PUSH1 0x04 00001773: MSTORE 00001774: PUSH1 0x24 00001776: PUSH1 0x00 00001778: REVERT 00001779: JUMPDEST 0000177a: PUSH1 0x40 0000177c: MLOAD 0000177d: PUSH1 0x1f 0000177f: DUP3 00001780: ADD 00001781: PUSH1 0x1f 00001783: NOT 00001784: AND 00001785: DUP2 00001786: ADD 00001787: PUSH1 0x01 00001789: PUSH1 0x01 0000178b: PUSH1 0x40 0000178d: SHL 0000178e: SUB 0000178f: DUP2 00001790: GT 00001791: DUP3 00001792: DUP3 00001793: LT 00001794: OR 00001795: ISZERO 00001796: PUSH2 0x17a1 00001799: JUMPI 0000179a: PUSH2 0x17a1 0000179d: PUSH2 0x1763 000017a0: JUMP 000017a1: JUMPDEST 000017a2: PUSH1 0x40 000017a4: MSTORE 000017a5: SWAP2 000017a6: SWAP1 000017a7: POP 000017a8: JUMP 000017a9: JUMPDEST 000017aa: PUSH1 0x00 000017ac: DUP3 000017ad: PUSH1 0x1f 000017af: DUP4 000017b0: ADD 000017b1: SLT 000017b2: PUSH2 0x17ba 000017b5: JUMPI 000017b6: PUSH1 0x00 000017b8: DUP1 000017b9: REVERT 000017ba: JUMPDEST 000017bb: DUP2 000017bc: CALLDATALOAD 000017bd: PUSH1 0x01 000017bf: PUSH1 0x01 000017c1: PUSH1 0x40 000017c3: SHL 000017c4: SUB 000017c5: DUP2 000017c6: GT 000017c7: ISZERO 000017c8: PUSH2 0x17d3 000017cb: JUMPI 000017cc: PUSH2 0x17d3 000017cf: PUSH2 0x1763 000017d2: JUMP 000017d3: JUMPDEST 000017d4: PUSH2 0x17e6 000017d7: PUSH1 0x1f 000017d9: DUP3 000017da: ADD 000017db: PUSH1 0x1f 000017dd: NOT 000017de: AND 000017df: PUSH1 0x20 000017e1: ADD 000017e2: PUSH2 0x1779 000017e5: JUMP 000017e6: JUMPDEST 000017e7: DUP2 000017e8: DUP2 000017e9: MSTORE 000017ea: DUP5 000017eb: PUSH1 0x20 000017ed: DUP4 000017ee: DUP7 000017ef: ADD 000017f0: ADD 000017f1: GT 000017f2: ISZERO 000017f3: PUSH2 0x17fb 000017f6: JUMPI 000017f7: PUSH1 0x00 000017f9: DUP1 000017fa: REVERT 000017fb: JUMPDEST 000017fc: DUP2 000017fd: PUSH1 0x20 000017ff: DUP6 00001800: ADD 00001801: PUSH1 0x20 00001803: DUP4 00001804: ADD 00001805: CALLDATACOPY 00001806: PUSH1 0x00 00001808: SWAP2 00001809: DUP2 0000180a: ADD 0000180b: PUSH1 0x20 0000180d: ADD 0000180e: SWAP2 0000180f: SWAP1 00001810: SWAP2 00001811: MSTORE 00001812: SWAP4 00001813: SWAP3 00001814: POP 00001815: POP 00001816: POP 00001817: JUMP 00001818: JUMPDEST 00001819: PUSH1 0x00 0000181b: DUP1 0000181c: PUSH1 0x40 0000181e: DUP4 0000181f: DUP6 00001820: SUB 00001821: SLT 00001822: ISZERO 00001823: PUSH2 0x182b 00001826: JUMPI 00001827: PUSH1 0x00 00001829: DUP1 0000182a: REVERT 0000182b: JUMPDEST 0000182c: DUP3 0000182d: CALLDATALOAD 0000182e: SWAP2 0000182f: POP 00001830: PUSH1 0x20 00001832: DUP4 00001833: ADD 00001834: CALLDATALOAD 00001835: PUSH1 0x01 00001837: PUSH1 0x01 00001839: PUSH1 0x40 0000183b: SHL 0000183c: SUB 0000183d: DUP2 0000183e: GT 0000183f: ISZERO 00001840: PUSH2 0x1848 00001843: JUMPI 00001844: PUSH1 0x00 00001846: DUP1 00001847: REVERT 00001848: JUMPDEST 00001849: PUSH2 0x1854 0000184c: DUP6 0000184d: DUP3 0000184e: DUP7 0000184f: ADD 00001850: PUSH2 0x17a9 00001853: JUMP 00001854: JUMPDEST 00001855: SWAP2 00001856: POP 00001857: POP 00001858: SWAP3 00001859: POP 0000185a: SWAP3 0000185b: SWAP1 0000185c: POP 0000185d: JUMP 0000185e: JUMPDEST 0000185f: PUSH1 0x00 00001861: DUP1 00001862: DUP4 00001863: PUSH1 0x1f 00001865: DUP5 00001866: ADD 00001867: SLT 00001868: PUSH2 0x1870 0000186b: JUMPI 0000186c: PUSH1 0x00 0000186e: DUP1 0000186f: REVERT 00001870: JUMPDEST 00001871: POP 00001872: DUP2 00001873: CALLDATALOAD 00001874: PUSH1 0x01 00001876: PUSH1 0x01 00001878: PUSH1 0x40 0000187a: SHL 0000187b: SUB 0000187c: DUP2 0000187d: GT 0000187e: ISZERO 0000187f: PUSH2 0x1887 00001882: JUMPI 00001883: PUSH1 0x00 00001885: DUP1 00001886: REVERT 00001887: JUMPDEST 00001888: PUSH1 0x20 0000188a: DUP4 0000188b: ADD 0000188c: SWAP2 0000188d: POP 0000188e: DUP4 0000188f: PUSH1 0x20 00001891: DUP3 00001892: PUSH1 0x05 00001894: SHL 00001895: DUP6 00001896: ADD 00001897: ADD 00001898: GT 00001899: ISZERO 0000189a: PUSH2 0x1610 0000189d: JUMPI 0000189e: PUSH1 0x00 000018a0: DUP1 000018a1: REVERT 000018a2: JUMPDEST 000018a3: PUSH1 0x00 000018a5: DUP1 000018a6: PUSH1 0x00 000018a8: DUP1 000018a9: PUSH1 0x40 000018ab: DUP6 000018ac: DUP8 000018ad: SUB 000018ae: SLT 000018af: ISZERO 000018b0: PUSH2 0x18b8 000018b3: JUMPI 000018b4: PUSH1 0x00 000018b6: DUP1 000018b7: REVERT 000018b8: JUMPDEST 000018b9: DUP5 000018ba: CALLDATALOAD 000018bb: PUSH1 0x01 000018bd: PUSH1 0x01 000018bf: PUSH1 0x40 000018c1: SHL 000018c2: SUB 000018c3: DUP1 000018c4: DUP3 000018c5: GT 000018c6: ISZERO 000018c7: PUSH2 0x18cf 000018ca: JUMPI 000018cb: PUSH1 0x00 000018cd: DUP1 000018ce: REVERT 000018cf: JUMPDEST 000018d0: PUSH2 0x18db 000018d3: DUP9 000018d4: DUP4 000018d5: DUP10 000018d6: ADD 000018d7: PUSH2 0x185e 000018da: JUMP 000018db: JUMPDEST 000018dc: SWAP1 000018dd: SWAP7 000018de: POP 000018df: SWAP5 000018e0: POP 000018e1: PUSH1 0x20 000018e3: DUP8 000018e4: ADD 000018e5: CALLDATALOAD 000018e6: SWAP2 000018e7: POP 000018e8: DUP1 000018e9: DUP3 000018ea: GT 000018eb: ISZERO 000018ec: PUSH2 0x18f4 000018ef: JUMPI 000018f0: PUSH1 0x00 000018f2: DUP1 000018f3: REVERT 000018f4: JUMPDEST 000018f5: POP 000018f6: PUSH2 0x1901 000018f9: DUP8 000018fa: DUP3 000018fb: DUP9 000018fc: ADD 000018fd: PUSH2 0x185e 00001900: JUMP 00001901: JUMPDEST 00001902: SWAP6 00001903: SWAP9 00001904: SWAP5 00001905: SWAP8 00001906: POP 00001907: SWAP6 00001908: POP 00001909: POP 0000190a: POP 0000190b: POP 0000190c: JUMP 0000190d: JUMPDEST 0000190e: PUSH1 0x00 00001910: PUSH1 0x20 00001912: DUP3 00001913: DUP5 00001914: SUB 00001915: SLT 00001916: ISZERO 00001917: PUSH2 0x191f 0000191a: JUMPI 0000191b: PUSH1 0x00 0000191d: DUP1 0000191e: REVERT 0000191f: JUMPDEST 00001920: POP 00001921: CALLDATALOAD 00001922: SWAP2 00001923: SWAP1 00001924: POP 00001925: JUMP 00001926: JUMPDEST 00001927: PUSH1 0x00 00001929: DUP1 0000192a: PUSH1 0x40 0000192c: DUP4 0000192d: DUP6 0000192e: SUB 0000192f: SLT 00001930: ISZERO 00001931: PUSH2 0x1939 00001934: JUMPI 00001935: PUSH1 0x00 00001937: DUP1 00001938: REVERT 00001939: JUMPDEST 0000193a: DUP3 0000193b: CALLDATALOAD 0000193c: SWAP2 0000193d: POP 0000193e: PUSH1 0x20 00001940: DUP4 00001941: ADD 00001942: CALLDATALOAD 00001943: PUSH2 0x194b 00001946: DUP2 00001947: PUSH2 0x15ba 0000194a: JUMP 0000194b: JUMPDEST 0000194c: DUP1 0000194d: SWAP2 0000194e: POP 0000194f: POP 00001950: SWAP3 00001951: POP 00001952: SWAP3 00001953: SWAP1 00001954: POP 00001955: JUMP 00001956: JUMPDEST 00001957: PUSH1 0x00 00001959: DUP1 0000195a: PUSH1 0x00 0000195c: PUSH1 0x60 0000195e: DUP5 0000195f: DUP7 00001960: SUB 00001961: SLT 00001962: ISZERO 00001963: PUSH2 0x196b 00001966: JUMPI 00001967: PUSH1 0x00 00001969: DUP1 0000196a: REVERT 0000196b: JUMPDEST 0000196c: DUP4 0000196d: CALLDATALOAD 0000196e: PUSH1 0x01 00001970: PUSH1 0x01 00001972: PUSH1 0x40 00001974: SHL 00001975: SUB 00001976: DUP2 00001977: GT 00001978: ISZERO 00001979: PUSH2 0x1981 0000197c: JUMPI 0000197d: PUSH1 0x00 0000197f: DUP1 00001980: REVERT 00001981: JUMPDEST 00001982: DUP5 00001983: ADD 00001984: PUSH2 0x0160 00001987: DUP2 00001988: DUP8 00001989: SUB 0000198a: SLT 0000198b: ISZERO 0000198c: PUSH2 0x1994 0000198f: JUMPI 00001990: PUSH1 0x00 00001992: DUP1 00001993: REVERT 00001994: JUMPDEST 00001995: SWAP6 00001996: PUSH1 0x20 00001998: DUP6 00001999: ADD 0000199a: CALLDATALOAD 0000199b: SWAP6 0000199c: POP 0000199d: PUSH1 0x40 0000199f: SWAP1 000019a0: SWAP5 000019a1: ADD 000019a2: CALLDATALOAD 000019a3: SWAP4 000019a4: SWAP3 000019a5: POP 000019a6: POP 000019a7: POP 000019a8: JUMP 000019a9: JUMPDEST 000019aa: PUSH1 0x00 000019ac: DUP1 000019ad: PUSH1 0x40 000019af: DUP4 000019b0: DUP6 000019b1: SUB 000019b2: SLT 000019b3: ISZERO 000019b4: PUSH2 0x19bc 000019b7: JUMPI 000019b8: PUSH1 0x00 000019ba: DUP1 000019bb: REVERT 000019bc: JUMPDEST 000019bd: DUP3 000019be: CALLDATALOAD 000019bf: PUSH2 0x19c7 000019c2: DUP2 000019c3: PUSH2 0x15ba 000019c6: JUMP 000019c7: JUMPDEST 000019c8: SWAP5 000019c9: PUSH1 0x20 000019cb: SWAP4 000019cc: SWAP1 000019cd: SWAP4 000019ce: ADD 000019cf: CALLDATALOAD 000019d0: SWAP4 000019d1: POP 000019d2: POP 000019d3: POP 000019d4: JUMP 000019d5: JUMPDEST 000019d6: PUSH1 0x00 000019d8: DUP1 000019d9: PUSH1 0x40 000019db: DUP4 000019dc: DUP6 000019dd: SUB 000019de: SLT 000019df: ISZERO 000019e0: PUSH2 0x19e8 000019e3: JUMPI 000019e4: PUSH1 0x00 000019e6: DUP1 000019e7: REVERT 000019e8: JUMPDEST 000019e9: DUP3 000019ea: CALLDATALOAD 000019eb: PUSH2 0x19f3 000019ee: DUP2 000019ef: PUSH2 0x15ba 000019f2: JUMP 000019f3: JUMPDEST 000019f4: SWAP2 000019f5: POP 000019f6: PUSH1 0x20 000019f8: DUP4 000019f9: ADD 000019fa: CALLDATALOAD 000019fb: PUSH1 0x01 000019fd: PUSH1 0x01 000019ff: PUSH1 0x40 00001a01: SHL 00001a02: SUB 00001a03: DUP2 00001a04: GT 00001a05: ISZERO 00001a06: PUSH2 0x1848 00001a09: JUMPI 00001a0a: PUSH1 0x00 00001a0c: DUP1 00001a0d: REVERT 00001a0e: JUMPDEST 00001a0f: PUSH1 0x00 00001a11: PUSH1 0x20 00001a13: DUP1 00001a14: DUP4 00001a15: DUP6 00001a16: SUB 00001a17: SLT 00001a18: ISZERO 00001a19: PUSH2 0x1a21 00001a1c: JUMPI 00001a1d: PUSH1 0x00 00001a1f: DUP1 00001a20: REVERT 00001a21: JUMPDEST 00001a22: DUP3 00001a23: CALLDATALOAD 00001a24: PUSH1 0x01 00001a26: PUSH1 0x01 00001a28: PUSH1 0x40 00001a2a: SHL 00001a2b: SUB 00001a2c: DUP1 00001a2d: DUP3 00001a2e: GT 00001a2f: ISZERO 00001a30: PUSH2 0x1a38 00001a33: JUMPI 00001a34: PUSH1 0x00 00001a36: DUP1 00001a37: REVERT 00001a38: JUMPDEST 00001a39: DUP2 00001a3a: DUP6 00001a3b: ADD 00001a3c: SWAP2 00001a3d: POP 00001a3e: DUP6 00001a3f: PUSH1 0x1f 00001a41: DUP4 00001a42: ADD 00001a43: SLT 00001a44: PUSH2 0x1a4c 00001a47: JUMPI 00001a48: PUSH1 0x00 00001a4a: DUP1 00001a4b: REVERT 00001a4c: JUMPDEST 00001a4d: DUP2 00001a4e: CALLDATALOAD 00001a4f: DUP2 00001a50: DUP2 00001a51: GT 00001a52: ISZERO 00001a53: PUSH2 0x1a5e 00001a56: JUMPI 00001a57: PUSH2 0x1a5e 00001a5a: PUSH2 0x1763 00001a5d: JUMP 00001a5e: JUMPDEST 00001a5f: DUP1 00001a60: PUSH1 0x05 00001a62: SHL 00001a63: SWAP2 00001a64: POP 00001a65: PUSH2 0x1a6f 00001a68: DUP5 00001a69: DUP4 00001a6a: ADD 00001a6b: PUSH2 0x1779 00001a6e: JUMP 00001a6f: JUMPDEST 00001a70: DUP2 00001a71: DUP2 00001a72: MSTORE 00001a73: SWAP2 00001a74: DUP4 00001a75: ADD 00001a76: DUP5 00001a77: ADD 00001a78: SWAP2 00001a79: DUP5 00001a7a: DUP2 00001a7b: ADD 00001a7c: SWAP1 00001a7d: DUP9 00001a7e: DUP5 00001a7f: GT 00001a80: ISZERO 00001a81: PUSH2 0x1a89 00001a84: JUMPI 00001a85: PUSH1 0x00 00001a87: DUP1 00001a88: REVERT 00001a89: JUMPDEST 00001a8a: SWAP4 00001a8b: DUP6 00001a8c: ADD 00001a8d: SWAP4 00001a8e: JUMPDEST 00001a8f: DUP4 00001a90: DUP6 00001a91: LT 00001a92: ISZERO 00001a93: PUSH2 0x1ab3 00001a96: JUMPI 00001a97: DUP5 00001a98: CALLDATALOAD 00001a99: SWAP3 00001a9a: POP 00001a9b: PUSH2 0x1aa3 00001a9e: DUP4 00001a9f: PUSH2 0x15ba 00001aa2: JUMP 00001aa3: JUMPDEST 00001aa4: DUP3 00001aa5: DUP3 00001aa6: MSTORE 00001aa7: SWAP4 00001aa8: DUP6 00001aa9: ADD 00001aaa: SWAP4 00001aab: SWAP1 00001aac: DUP6 00001aad: ADD 00001aae: SWAP1 00001aaf: PUSH2 0x1a8e 00001ab2: JUMP 00001ab3: JUMPDEST 00001ab4: SWAP9 00001ab5: SWAP8 00001ab6: POP 00001ab7: POP 00001ab8: POP 00001ab9: POP 00001aba: POP 00001abb: POP 00001abc: POP 00001abd: POP 00001abe: JUMP 00001abf: JUMPDEST 00001ac0: PUSH1 0x00 00001ac2: JUMPDEST 00001ac3: DUP4 00001ac4: DUP2 00001ac5: LT 00001ac6: ISZERO 00001ac7: PUSH2 0x1ada 00001aca: JUMPI 00001acb: DUP2 00001acc: DUP2 00001acd: ADD 00001ace: MLOAD 00001acf: DUP4 00001ad0: DUP3 00001ad1: ADD 00001ad2: MSTORE 00001ad3: PUSH1 0x20 00001ad5: ADD 00001ad6: PUSH2 0x1ac2 00001ad9: JUMP 00001ada: JUMPDEST 00001adb: POP 00001adc: POP 00001add: PUSH1 0x00 00001adf: SWAP2 00001ae0: ADD 00001ae1: MSTORE 00001ae2: JUMP 00001ae3: JUMPDEST 00001ae4: PUSH1 0x20 00001ae6: DUP2 00001ae7: MSTORE 00001ae8: PUSH1 0x00 00001aea: DUP3 00001aeb: MLOAD 00001aec: DUP1 00001aed: PUSH1 0x20 00001aef: DUP5 00001af0: ADD 00001af1: MSTORE 00001af2: PUSH2 0x1b02 00001af5: DUP2 00001af6: PUSH1 0x40 00001af8: DUP6 00001af9: ADD 00001afa: PUSH1 0x20 00001afc: DUP8 00001afd: ADD 00001afe: PUSH2 0x1abf 00001b01: JUMP 00001b02: JUMPDEST 00001b03: PUSH1 0x1f 00001b05: ADD 00001b06: PUSH1 0x1f 00001b08: NOT 00001b09: AND 00001b0a: SWAP2 00001b0b: SWAP1 00001b0c: SWAP2 00001b0d: ADD 00001b0e: PUSH1 0x40 00001b10: ADD 00001b11: SWAP3 00001b12: SWAP2 00001b13: POP 00001b14: POP 00001b15: JUMP 00001b16: JUMPDEST 00001b17: PUSH1 0x00 00001b19: DUP1 00001b1a: PUSH1 0x00 00001b1c: DUP1 00001b1d: PUSH1 0x60 00001b1f: DUP6 00001b20: DUP8 00001b21: SUB 00001b22: SLT 00001b23: ISZERO 00001b24: PUSH2 0x1b2c 00001b27: JUMPI 00001b28: PUSH1 0x00 00001b2a: DUP1 00001b2b: REVERT 00001b2c: JUMPDEST 00001b2d: DUP5 00001b2e: CALLDATALOAD 00001b2f: PUSH2 0x1b37 00001b32: DUP2 00001b33: PUSH2 0x15ba 00001b36: JUMP 00001b37: JUMPDEST 00001b38: SWAP4 00001b39: POP 00001b3a: PUSH1 0x20 00001b3c: DUP6 00001b3d: ADD 00001b3e: CALLDATALOAD 00001b3f: SWAP3 00001b40: POP 00001b41: PUSH1 0x40 00001b43: DUP6 00001b44: ADD 00001b45: CALLDATALOAD 00001b46: PUSH1 0x01 00001b48: PUSH1 0x01 00001b4a: PUSH1 0x40 00001b4c: SHL 00001b4d: SUB 00001b4e: DUP2 00001b4f: GT 00001b50: ISZERO 00001b51: PUSH2 0x1b59 00001b54: JUMPI 00001b55: PUSH1 0x00 00001b57: DUP1 00001b58: REVERT 00001b59: JUMPDEST 00001b5a: PUSH2 0x1901 00001b5d: DUP8 00001b5e: DUP3 00001b5f: DUP9 00001b60: ADD 00001b61: PUSH2 0x15cf 00001b64: JUMP 00001b65: JUMPDEST 00001b66: PUSH1 0x00 00001b68: DUP1 00001b69: PUSH1 0x00 00001b6b: DUP1 00001b6c: PUSH1 0x00 00001b6e: DUP1 00001b6f: PUSH1 0x00 00001b71: DUP1 00001b72: PUSH1 0xa0 00001b74: DUP10 00001b75: DUP12 00001b76: SUB 00001b77: SLT 00001b78: ISZERO 00001b79: PUSH2 0x1b81 00001b7c: JUMPI 00001b7d: PUSH1 0x00 00001b7f: DUP1 00001b80: REVERT 00001b81: JUMPDEST 00001b82: DUP9 00001b83: CALLDATALOAD 00001b84: PUSH2 0x1b8c 00001b87: DUP2 00001b88: PUSH2 0x15ba 00001b8b: JUMP 00001b8c: JUMPDEST 00001b8d: SWAP8 00001b8e: POP 00001b8f: PUSH1 0x20 00001b91: DUP10 00001b92: ADD 00001b93: CALLDATALOAD 00001b94: PUSH2 0x1b9c 00001b97: DUP2 00001b98: PUSH2 0x15ba 00001b9b: JUMP 00001b9c: JUMPDEST 00001b9d: SWAP7 00001b9e: POP 00001b9f: PUSH1 0x40 00001ba1: DUP10 00001ba2: ADD 00001ba3: CALLDATALOAD 00001ba4: PUSH1 0x01 00001ba6: PUSH1 0x01 00001ba8: PUSH1 0x40 00001baa: SHL 00001bab: SUB 00001bac: DUP1 00001bad: DUP3 00001bae: GT 00001baf: ISZERO 00001bb0: PUSH2 0x1bb8 00001bb3: JUMPI 00001bb4: PUSH1 0x00 00001bb6: DUP1 00001bb7: REVERT 00001bb8: JUMPDEST 00001bb9: PUSH2 0x1bc4 00001bbc: DUP13 00001bbd: DUP4 00001bbe: DUP14 00001bbf: ADD 00001bc0: PUSH2 0x185e 00001bc3: JUMP 00001bc4: JUMPDEST 00001bc5: SWAP1 00001bc6: SWAP9 00001bc7: POP 00001bc8: SWAP7 00001bc9: POP 00001bca: PUSH1 0x60 00001bcc: DUP12 00001bcd: ADD 00001bce: CALLDATALOAD 00001bcf: SWAP2 00001bd0: POP 00001bd1: DUP1 00001bd2: DUP3 00001bd3: GT 00001bd4: ISZERO 00001bd5: PUSH2 0x1bdd 00001bd8: JUMPI 00001bd9: PUSH1 0x00 00001bdb: DUP1 00001bdc: REVERT 00001bdd: JUMPDEST 00001bde: PUSH2 0x1be9 00001be1: DUP13 00001be2: DUP4 00001be3: DUP14 00001be4: ADD 00001be5: PUSH2 0x185e 00001be8: JUMP 00001be9: JUMPDEST 00001bea: SWAP1 00001beb: SWAP7 00001bec: POP 00001bed: SWAP5 00001bee: POP 00001bef: PUSH1 0x80 00001bf1: DUP12 00001bf2: ADD 00001bf3: CALLDATALOAD 00001bf4: SWAP2 00001bf5: POP 00001bf6: DUP1 00001bf7: DUP3 00001bf8: GT 00001bf9: ISZERO 00001bfa: PUSH2 0x16a6 00001bfd: JUMPI 00001bfe: PUSH1 0x00 00001c00: DUP1 00001c01: REVERT 00001c02: JUMPDEST 00001c03: PUSH1 0x00 00001c05: DUP1 00001c06: PUSH1 0x00 00001c08: DUP1 00001c09: PUSH1 0x00 00001c0b: DUP1 00001c0c: PUSH1 0xa0 00001c0e: DUP8 00001c0f: DUP10 00001c10: SUB 00001c11: SLT 00001c12: ISZERO 00001c13: PUSH2 0x1c1b 00001c16: JUMPI 00001c17: PUSH1 0x00 00001c19: DUP1 00001c1a: REVERT 00001c1b: JUMPDEST 00001c1c: DUP7 00001c1d: CALLDATALOAD 00001c1e: PUSH2 0x1c26 00001c21: DUP2 00001c22: PUSH2 0x15ba 00001c25: JUMP 00001c26: JUMPDEST 00001c27: SWAP6 00001c28: POP 00001c29: PUSH1 0x20 00001c2b: DUP8 00001c2c: ADD 00001c2d: CALLDATALOAD 00001c2e: PUSH2 0x1c36 00001c31: DUP2 00001c32: PUSH2 0x15ba 00001c35: JUMP 00001c36: JUMPDEST 00001c37: SWAP5 00001c38: POP 00001c39: PUSH1 0x40 00001c3b: DUP8 00001c3c: ADD 00001c3d: CALLDATALOAD 00001c3e: SWAP4 00001c3f: POP 00001c40: PUSH1 0x60 00001c42: DUP8 00001c43: ADD 00001c44: CALLDATALOAD 00001c45: SWAP3 00001c46: POP 00001c47: PUSH1 0x80 00001c49: DUP8 00001c4a: ADD 00001c4b: CALLDATALOAD 00001c4c: PUSH1 0x01 00001c4e: PUSH1 0x01 00001c50: PUSH1 0x40 00001c52: SHL 00001c53: SUB 00001c54: DUP2 00001c55: GT 00001c56: ISZERO 00001c57: PUSH2 0x1c5f 00001c5a: JUMPI 00001c5b: PUSH1 0x00 00001c5d: DUP1 00001c5e: REVERT 00001c5f: JUMPDEST 00001c60: PUSH2 0x1c6b 00001c63: DUP10 00001c64: DUP3 00001c65: DUP11 00001c66: ADD 00001c67: PUSH2 0x15cf 00001c6a: JUMP 00001c6b: JUMPDEST 00001c6c: SWAP8 00001c6d: SWAP11 00001c6e: SWAP7 00001c6f: SWAP10 00001c70: POP 00001c71: SWAP5 00001c72: SWAP8 00001c73: POP 00001c74: SWAP3 00001c75: SWAP6 00001c76: SWAP4 00001c77: SWAP5 00001c78: SWAP3 00001c79: POP 00001c7a: POP 00001c7b: POP 00001c7c: JUMP 00001c7d: JUMPDEST 00001c7e: PUSH1 0x20 00001c80: DUP1 00001c81: DUP3 00001c82: MSTORE 00001c83: PUSH1 0x2e 00001c85: SWAP1 00001c86: DUP3 00001c87: ADD 00001c88: MSTORE 00001c89: PUSH32 0x4d756c7469536967536d6172744163636f756e743a20696e76616c6964207369 00001caa: PUSH1 0x40 00001cac: DUP3 00001cad: ADD 00001cae: MSTORE 00001caf: PUSH14 0x0cedcc2e8eae4ca40d8cadccee8d 00001cbe: PUSH1 0x93 00001cc0: SHL 00001cc1: PUSH1 0x60 00001cc3: DUP3 00001cc4: ADD 00001cc5: MSTORE 00001cc6: PUSH1 0x80 00001cc8: ADD 00001cc9: SWAP1 00001cca: JUMP 00001ccb: JUMPDEST 00001ccc: PUSH4 0x4e487b71 00001cd1: PUSH1 0xe0 00001cd3: SHL 00001cd4: PUSH1 0x00 00001cd6: MSTORE 00001cd7: PUSH1 0x32 00001cd9: PUSH1 0x04 00001cdb: MSTORE 00001cdc: PUSH1 0x24 00001cde: PUSH1 0x00 00001ce0: REVERT 00001ce1: JUMPDEST 00001ce2: PUSH1 0x00 00001ce4: PUSH1 0x20 00001ce6: DUP3 00001ce7: DUP5 00001ce8: SUB 00001ce9: SLT 00001cea: ISZERO 00001ceb: PUSH2 0x1cf3 00001cee: JUMPI 00001cef: PUSH1 0x00 00001cf1: DUP1 00001cf2: REVERT 00001cf3: JUMPDEST 00001cf4: DUP2 00001cf5: CALLDATALOAD 00001cf6: PUSH2 0x0723 00001cf9: DUP2 00001cfa: PUSH2 0x15ba 00001cfd: JUMP 00001cfe: JUMPDEST 00001cff: PUSH1 0x00 00001d01: DUP1 00001d02: DUP4 00001d03: CALLDATALOAD 00001d04: PUSH1 0x1e 00001d06: NOT 00001d07: DUP5 00001d08: CALLDATASIZE 00001d09: SUB 00001d0a: ADD 00001d0b: DUP2 00001d0c: SLT 00001d0d: PUSH2 0x1d15 00001d10: JUMPI 00001d11: PUSH1 0x00 00001d13: DUP1 00001d14: REVERT 00001d15: JUMPDEST 00001d16: DUP4 00001d17: ADD 00001d18: DUP1 00001d19: CALLDATALOAD 00001d1a: SWAP2 00001d1b: POP 00001d1c: PUSH1 0x01 00001d1e: PUSH1 0x01 00001d20: PUSH1 0x40 00001d22: SHL 00001d23: SUB 00001d24: DUP3 00001d25: GT 00001d26: ISZERO 00001d27: PUSH2 0x1d2f 00001d2a: JUMPI 00001d2b: PUSH1 0x00 00001d2d: DUP1 00001d2e: REVERT 00001d2f: JUMPDEST 00001d30: PUSH1 0x20 00001d32: ADD 00001d33: SWAP2 00001d34: POP 00001d35: CALLDATASIZE 00001d36: DUP2 00001d37: SWAP1 00001d38: SUB 00001d39: DUP3 00001d3a: SGT 00001d3b: ISZERO 00001d3c: PUSH2 0x1610 00001d3f: JUMPI 00001d40: PUSH1 0x00 00001d42: DUP1 00001d43: REVERT 00001d44: JUMPDEST 00001d45: PUSH4 0x4e487b71 00001d4a: PUSH1 0xe0 00001d4c: SHL 00001d4d: PUSH1 0x00 00001d4f: MSTORE 00001d50: PUSH1 0x11 00001d52: PUSH1 0x04 00001d54: MSTORE 00001d55: PUSH1 0x24 00001d57: PUSH1 0x00 00001d59: REVERT 00001d5a: JUMPDEST 00001d5b: PUSH1 0x00 00001d5d: PUSH1 0x01 00001d5f: DUP3 00001d60: ADD 00001d61: PUSH2 0x1d6c 00001d64: JUMPI 00001d65: PUSH2 0x1d6c 00001d68: PUSH2 0x1d44 00001d6b: JUMP 00001d6c: JUMPDEST 00001d6d: POP 00001d6e: PUSH1 0x01 00001d70: ADD 00001d71: SWAP1 00001d72: JUMP 00001d73: JUMPDEST 00001d74: PUSH1 0x00 00001d76: PUSH1 0xff 00001d78: DUP3 00001d79: AND 00001d7a: PUSH1 0xff 00001d7c: DUP2 00001d7d: SUB 00001d7e: PUSH2 0x1d89 00001d81: JUMPI 00001d82: PUSH2 0x1d89 00001d85: PUSH2 0x1d44 00001d88: JUMP 00001d89: JUMPDEST 00001d8a: PUSH1 0x01 00001d8c: ADD 00001d8d: SWAP3 00001d8e: SWAP2 00001d8f: POP 00001d90: POP 00001d91: JUMP 00001d92: JUMPDEST 00001d93: PUSH1 0x00 00001d95: PUSH1 0x20 00001d97: DUP3 00001d98: DUP5 00001d99: SUB 00001d9a: SLT 00001d9b: ISZERO 00001d9c: PUSH2 0x1da4 00001d9f: JUMPI 00001da0: PUSH1 0x00 00001da2: DUP1 00001da3: REVERT 00001da4: JUMPDEST 00001da5: POP 00001da6: MLOAD 00001da7: SWAP2 00001da8: SWAP1 00001da9: POP 00001daa: JUMP 00001dab: JUMPDEST 00001dac: PUSH1 0x00 00001dae: DUP1 00001daf: PUSH1 0x00 00001db1: DUP1 00001db2: PUSH1 0x80 00001db4: DUP6 00001db5: DUP8 00001db6: SUB 00001db7: SLT 00001db8: ISZERO 00001db9: PUSH2 0x1dc1 00001dbc: JUMPI 00001dbd: PUSH1 0x00 00001dbf: DUP1 00001dc0: REVERT 00001dc1: JUMPDEST 00001dc2: DUP5 00001dc3: MLOAD 00001dc4: SWAP4 00001dc5: POP 00001dc6: PUSH1 0x20 00001dc8: DUP6 00001dc9: ADD 00001dca: MLOAD 00001dcb: SWAP3 00001dcc: POP 00001dcd: PUSH1 0x40 00001dcf: DUP6 00001dd0: ADD 00001dd1: MLOAD 00001dd2: SWAP2 00001dd3: POP 00001dd4: PUSH1 0x60 00001dd6: DUP6 00001dd7: ADD 00001dd8: MLOAD 00001dd9: PUSH1 0xff 00001ddb: DUP2 00001ddc: AND 00001ddd: DUP2 00001dde: EQ 00001ddf: PUSH2 0x1de7 00001de2: JUMPI 00001de3: PUSH1 0x00 00001de5: DUP1 00001de6: REVERT 00001de7: JUMPDEST 00001de8: SWAP4 00001de9: SWAP7 00001dea: SWAP3 00001deb: SWAP6 00001dec: POP 00001ded: SWAP1 00001dee: SWAP4 00001def: POP 00001df0: POP 00001df1: JUMP 00001df2: JUMPDEST 00001df3: PUSH4 0x4e487b71 00001df8: PUSH1 0xe0 00001dfa: SHL 00001dfb: PUSH1 0x00 00001dfd: MSTORE 00001dfe: PUSH1 0x12 00001e00: PUSH1 0x04 00001e02: MSTORE 00001e03: PUSH1 0x24 00001e05: PUSH1 0x00 00001e07: REVERT 00001e08: JUMPDEST 00001e09: DUP2 00001e0a: DUP2 00001e0b: SUB 00001e0c: DUP2 00001e0d: DUP2 00001e0e: GT 00001e0f: ISZERO 00001e10: PUSH2 0x0528 00001e13: JUMPI 00001e14: PUSH2 0x0528 00001e17: PUSH2 0x1d44 00001e1a: JUMP 00001e1b: JUMPDEST 00001e1c: PUSH1 0x00 00001e1e: DUP3 00001e1f: MLOAD 00001e20: PUSH2 0x1e2d 00001e23: DUP2 00001e24: DUP5 00001e25: PUSH1 0x20 00001e27: DUP8 00001e28: ADD 00001e29: PUSH2 0x1abf 00001e2c: JUMP 00001e2d: JUMPDEST 00001e2e: SWAP2 00001e2f: SWAP1 00001e30: SWAP2 00001e31: ADD 00001e32: SWAP3 00001e33: SWAP2 00001e34: POP 00001e35: POP 00001e36: JUMP 00001e37: INVALID 00001e38: UNKNOWN(0xB1) 00001e39: SWAP6 00001e3a: CHAINID 00001e3b: UNKNOWN(0xDF) 00001e3c: CREATE 00001e3d: CLZ 00001e3e: DUP6 00001e3f: PUSH16 0xb3f010c267a7b1c60363cf8a4664e21c 00001e50: UNKNOWN(0xC8) 00001e51: SWAP13 00001e52: UNKNOWN(0x26) 00001e53: UNKNOWN(0x22) 00001e54: CHAINID 00001e55: KECCAK256 00001e56: UNKNOWN(0x21) 00001e57: UNKNOWN(0x4E) 00001e58: SELFDESTRUCT 00001e59: SELFDESTRUCT 00001e5a: SELFDESTRUCT 00001e5b: SELFDESTRUCT 00001e5c: SELFDESTRUCT 00001e5d: SELFDESTRUCT 00001e5e: SELFDESTRUCT 00001e5f: SELFDESTRUCT 00001e60: SELFDESTRUCT 00001e61: SELFDESTRUCT 00001e62: SELFDESTRUCT 00001e63: SELFDESTRUCT 00001e64: SELFDESTRUCT 00001e65: SELFDESTRUCT 00001e66: SELFDESTRUCT 00001e67: CREATE 00001e68: STOP 00001e69: STOP 00001e6a: STOP 00001e6b: STOP 00001e6c: STOP 00001e6d: STOP 00001e6e: STOP 00001e6f: STOP 00001e70: STOP 00001e71: STOP 00001e72: STOP 00001e73: STOP 00001e74: STOP 00001e75: STOP 00001e76: STOP 00001e77: STOP 00001e78: PUSH27 0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 00001e94: UNKNOWN(0xAA) 00001e95: UNKNOWN(0xAA) 00001e96: UNKNOWN(0xAA) 00001e97: UNKNOWN(0xAA) 00001e98: SHR 00001e99: CALLDATASIZE 00001e9a: ADDMOD 00001e9b: SWAP5 00001e9c: LOG1 00001e9d: EXTCODESIZE 00001e9e: LOG1 00001e9f: LOG3 00001ea0: UNKNOWN(0x21) 00001ea1: MOD 00001ea2: PUSH8 0xc828492db98dca3e 00001eab: KECCAK256 00001eac: PUSH23 0xcc3735a920a3ca505d382bbca2646970667358221220dd 00001ec4: UNKNOWN(0xDA) 00001ec5: DUP2 00001ec6: DELEGATECALL 00001ec7: PUSH16 0xc184e5a3a1eaa7902c5ea493b79bad43 00001ed8: PC 00001ed9: UNKNOWN(0xDE) 00001eda: DUP7 00001edb: UNKNOWN(0x4F) 00001edc: CHAINID 00001edd: UNKNOWN(0xEF) 00001ede: BYTE 00001edf: UNKNOWN(0x2A) 00001ee0: NOT 00001ee1: UNKNOWN(0xC3) 00001ee2: PUSH20
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_id: 0x28eac9457e8f8ff64af516ef190b7116aff90f41cc08acc2e12b118a090f0838
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0x28eac9457e8f8ff64af516ef190b7116aff90f41cc08acc2e12b118a090f0838",
"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": "0xd087d288",
"selector": "0xd087d288",
"calldata_variants": [
"0xd087d288",
"0xd087d2880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe58378bb",
"selector": "0xe58378bb",
"calldata_variants": [
"0xe58378bb",
"0xe58378bb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf23a6e61",
"selector": "0xf23a6e61",
"calldata_variants": [
"0xf23a6e61",
"0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb61d27f6",
"selector": "0xb61d27f6",
"calldata_variants": [
"0xb61d27f6",
"0xb61d27f60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbc197c81",
"selector": "0xbc197c81",
"calldata_variants": [
"0xbc197c81",
"0xbc197c810000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc399ec88",
"selector": "0xc399ec88",
"calldata_variants": [
"0xc399ec88",
"0xc399ec880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52d1902d",
"selector": "0x52d1902d",
"calldata_variants": [
"0x52d1902d",
"0x52d1902d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5321,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 7878,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 2,
"untrusted_delegatecall_count": 2
}
|
| high | other | cast | SELFDESTRUCT present | 85 | no | — |
viewevidence_json{
"notes": "selfdestruct can remove contract code and send funds; review reachability",
"selfdestruct_count": 15
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x8ac049fb0bdfe592a0772b0b8f3318df0b708edf375f3c529f14623dc04c67bc
call_targets:
0x379d71f6e7d0df0095bd76ef662724cb0138f6ee
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8ac049fb0bdfe592a0772b0b8f3318df0b708edf375f3c529f14623dc04c67bc",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x379d71f6e7d0df0095bd76ef662724cb0138f6ee"
],
"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": "0xd087d288",
"selector": "0xd087d288",
"calldata_variants": [
"0xd087d288",
"0xd087d2880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe58378bb",
"selector": "0xe58378bb",
"calldata_variants": [
"0xe58378bb",
"0xe58378bb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf23a6e61",
"selector": "0xf23a6e61",
"calldata_variants": [
"0xf23a6e61",
"0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb61d27f6",
"selector": "0xb61d27f6",
"calldata_variants": [
"0xb61d27f6",
"0xb61d27f60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbc197c81",
"selector": "0xbc197c81",
"calldata_variants": [
"0xbc197c81",
"0xbc197c810000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc399ec88",
"selector": "0xc399ec88",
"calldata_variants": [
"0xc399ec88",
"0xc399ec880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52d1902d",
"selector": "0x52d1902d",
"calldata_variants": [
"0x52d1902d",
"0x52d1902d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1938,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2075,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 3727,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 4,
"guards_detected": [],
"untrusted_call_count": 4
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x8ac049fb0bdfe592a0772b0b8f3318df0b708edf375f3c529f14623dc04c67bc
call_targets:
0x379d71f6e7d0df0095bd76ef662724cb0138f6ee
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8ac049fb0bdfe592a0772b0b8f3318df0b708edf375f3c529f14623dc04c67bc",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x379d71f6e7d0df0095bd76ef662724cb0138f6ee"
],
"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": "0xd087d288",
"selector": "0xd087d288",
"calldata_variants": [
"0xd087d288",
"0xd087d2880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe58378bb",
"selector": "0xe58378bb",
"calldata_variants": [
"0xe58378bb",
"0xe58378bb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf23a6e61",
"selector": "0xf23a6e61",
"calldata_variants": [
"0xf23a6e61",
"0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb61d27f6",
"selector": "0xb61d27f6",
"calldata_variants": [
"0xb61d27f6",
"0xb61d27f60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbc197c81",
"selector": "0xbc197c81",
"calldata_variants": [
"0xbc197c81",
"0xbc197c810000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc399ec88",
"selector": "0xc399ec88",
"calldata_variants": [
"0xc399ec88",
"0xc399ec880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52d1902d",
"selector": "0x52d1902d",
"calldata_variants": [
"0x52d1902d",
"0x52d1902d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1938,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2075,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 3727,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 4,
"guards_detected": []
}
|
| high | other | detector | SELFDESTRUCT reachable | 65 | no | no |
viewtrace_id: 0xd9bfc9aed6570b55d7c8f15fd59f3f4d302f08a35104fc504db9abd45b4348a0
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xd9bfc9aed6570b55d7c8f15fd59f3f4d302f08a35104fc504db9abd45b4348a0",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xd087d288",
"selector": "0xd087d288",
"calldata_variants": [
"0xd087d288",
"0xd087d2880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe58378bb",
"selector": "0xe58378bb",
"calldata_variants": [
"0xe58378bb",
"0xe58378bb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf23a6e61",
"selector": "0xf23a6e61",
"calldata_variants": [
"0xf23a6e61",
"0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb61d27f6",
"selector": "0xb61d27f6",
"calldata_variants": [
"0xb61d27f6",
"0xb61d27f60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbc197c81",
"selector": "0xbc197c81",
"calldata_variants": [
"0xbc197c81",
"0xbc197c810000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc399ec88",
"selector": "0xc399ec88",
"calldata_variants": [
"0xc399ec88",
"0xc399ec880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52d1902d",
"selector": "0x52d1902d",
"calldata_variants": [
"0x52d1902d",
"0x52d1902d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [],
"selfdestruct_count": 15
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 2
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xd9bfc9aed6570b55d7c8f15fd59f3f4d302f08a35104fc504db9abd45b4348a0
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xd9bfc9aed6570b55d7c8f15fd59f3f4d302f08a35104fc504db9abd45b4348a0",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xd087d288",
"selector": "0xd087d288",
"calldata_variants": [
"0xd087d288",
"0xd087d2880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd547741f",
"selector": "0xd547741f",
"calldata_variants": [
"0xd547741f",
"0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe58378bb",
"selector": "0xe58378bb",
"calldata_variants": [
"0xe58378bb",
"0xe58378bb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf23a6e61",
"selector": "0xf23a6e61",
"calldata_variants": [
"0xf23a6e61",
"0xf23a6e610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb61d27f6",
"selector": "0xb61d27f6",
"calldata_variants": [
"0xb61d27f6",
"0xb61d27f60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbc197c81",
"selector": "0xbc197c81",
"calldata_variants": [
"0xbc197c81",
"0xbc197c810000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc399ec88",
"selector": "0xc399ec88",
"calldata_variants": [
"0xc399ec88",
"0xc399ec880000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52d1902d",
"selector": "0x52d1902d",
"calldata_variants": [
"0x52d1902d",
"0x52d1902d0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 2,
"create2_count": 0
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 2,
"create2_count": 0
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 6
}
|