TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

5fa05d5d-69a8-4d97-8321-649ae9181295

failed
Chain ID
1
Address
Block Number
Created
Mon, Dec 29, 2025 1:58 PM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
Untrusted DELEGATECALL target reachable
crit 0 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
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

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
No exploitable vulnerabilities found in first-party contracts within the requested focus areas.
View stderr
[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":[]}
Metadata
{
    "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
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
2
Selfdestruct
15
CREATE2
0
CALL-family (heavy)
7
EXT*/BALANCE
6
Total opcodes
5042
Flags
delegatecall_present selfdestruct_present create_opcodes_present heavy_ext_balance_usage
View cast disassembly output
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

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_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
view
evidence_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
view
trace_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
view
trace_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
view
trace_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
view
evidence_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
view
trace_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
view
evidence_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
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 6
}