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

Analysis Run

d70fc0c5-dc10-4c77-ae63-8958c3596fbc

failed
Chain ID
1
Address
Block Number
Created
Wed, Dec 31, 2025 3:17 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
ETH value transfer possible
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
30843 report.consolidate complete 1 / 1 3 months ago
94069 artifact.fetch failed 1 / 3 1 week ago
94070 tool.cast_disasm complete 1 / 3 1 week ago
94071 analysis.bundle complete 1 / 3 1 week ago
94072 capability.graph complete 1 / 3 1 week ago
94073 detector.run complete 1 / 3 1 week ago
94074 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 concrete, exploitable profit path found in the provided contracts.
View stderr
[codex:1372711] OpenAI Codex v0.77.0 (research preview)
[codex:1372711] --------
[codex:1372711] workdir: /tmp/codex-multi-fecz3ttf
[codex:1372711] model: gpt-5.2-codex
[codex:1372711] provider: openai
[codex:1372711] approval: never
[codex:1372711] sandbox: read-only
[codex:1372711] reasoning effort: xhigh
[codex:1372711] reasoning summaries: auto
[codex:1372711] session id: 019b74fb-26d1-7820-80b4-9eeb4ebc9bf4
[codex:1372711] --------
[codex:1372711] user
[codex:1372711] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1372711] 
[codex:1372711] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1372711] 
[codex:1372711] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1372711] - Gas inefficiency, code quality, naming, or best practices
[codex:1372711] - Theoretical vulnerabilities without a clear extraction path
[codex:1372711] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1372711] - Front-running unless it enables theft beyond MEV
[codex:1372711] - DoS, griefing, or issues that don't result in attacker profit
[codex:1372711] - Missing events, view function issues, or informational findings
[codex:1372711] 
[codex:1372711] HIGH-VALUE PATTERNS TO HUNT:
[codex:1372711] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1372711] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1372711] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1372711] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1372711] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1372711] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1372711] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1372711] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1372711] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1372711] 
[codex:1372711] For each finding, you MUST provide:
[codex:1372711] 1. Exact file and line numbers of vulnerable code
[codex:1372711] 2. Step-by-step exploit transaction sequence
[codex:1372711] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1372711] 
[codex:1372711] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1372711] 
[codex:1372711] Output MUST be valid JSON matching the provided schema.
[codex:1372711] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1372711] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1372711] mcp startup: no servers
[codex:1372711] 
[codex:1372711] thinking
[codex:1372711] **Preparing to audit instructions**
[codex:1372711] exec
[codex:1372711] /bin/bash -lc ls in /tmp/codex-multi-fecz3ttf succeeded in 8ms:
[codex:1372711] AUDIT_BUNDLE.txt
[codex:1372711] codex-output-schema.json
[codex:1372711] contracts
[codex:1372711] exec
[codex:1372711] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-fecz3ttf succeeded in 7ms:
[codex:1372711] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1372711] 
[codex:1372711] ================================================================================
[codex:1372711] FILE: contracts/@lib-keccak/LibKeccak.sol
[codex:1372711] ================================================================================
[codex:1372711] // SPDX-License-Identifier: MIT
[codex:1372711] pragma solidity ^0.8.0;
[codex:1372711] 
[codex:1372711] /// @title LibKeccak
[codex:1372711] /// @notice An EVM implementation of the Keccak-f[1600] permutation.
[codex:1372711] /// @author clabby <https://github.com/clabby>
[codex:1372711] /// @custom:attribution geohot <https://github.com/geohot>
[codex:1372711] library LibKeccak {
[codex:1372711]     /// @notice The block size of the Keccak-f[1600] permutation, 1088 bits (136 bytes).
[codex:1372711]     uint256 internal constant BLOCK_SIZE_BYTES = 136;
[codex:1372711] 
[codex:1372711]     /// @notice The round constants for the keccak256 hash function. Packed in memory for efficient reading during the
[codex:1372711]     ///         permutation.
[codex:1372711]     bytes internal constant ROUND_CONSTANTS = abi.encode(
[codex:1372711]         0x00000000000000010000000000008082800000000000808a8000000080008000, // r1,r2,r3,r4
[codex:1372711] 
[codex:1372711] thinking
[codex:1372711] **Searching for contract functions**
[codex:1372711] exec
[codex:1372711] /bin/bash -lc 'rg -n "contract|library" contracts/src contracts/interfaces | head' in /tmp/codex-multi-fecz3ttf succeeded in 20ms:
[codex:1372711] contracts/interfaces/universal/ISemver.sol:5:/// @notice ISemver is a simple contract for ensuring that contracts are
[codex:1372711] contracts/interfaces/universal/ISemver.sol:8:    /// @notice Getter for the semantic version of the contract. This is not
[codex:1372711] contracts/interfaces/universal/ISemver.sol:11:    /// @return Semver contract version as a string.
[codex:1372711] contracts/src/L1/ProxyAdminOwnedBase.sol:12:/// @notice Base contract for ProxyAdmin-owned contracts. This contract is used to introspect
[codex:1372711] contracts/src/L1/ProxyAdminOwnedBase.sol:13:///         compatible Proxy contracts so that their ProxyAdmin and ProxyAdmin owner addresses can
[codex:1372711] contracts/src/L1/ProxyAdminOwnedBase.sol:14:///         be retrieved onchain. Existing Proxy contracts don't have these getters, so we need a
[codex:1372711] contracts/src/L1/ProxyAdminOwnedBase.sol:15:///         base contract instead.
[codex:1372711] contracts/src/L1/ProxyAdminOwnedBase.sol:16:/// @dev WARNING: This contract is ONLY designed to be used with either the Optimism Proxy
[codex:1372711] contracts/src/L1/ProxyAdminOwnedBase.sol:18:///      this contract with any other proxy implementation.
[codex:1372711] contracts/src/L1/ProxyAdminOwnedBase.sol:20:abstract contract ProxyAdminOwnedBase {
[codex:1372711] 
[codex:1372711] thinking
[codex:1372711] **Searching for sensitive functions**
[codex:1372711] exec
[codex:1372711] /bin/bash -lc 'rg -n "withdraw|unlock|lock|mint|transfer|deposit|bridge|portal|lockbox" contracts/src contracts/interfaces | head -n 200' in /tmp/codex-multi-fecz3ttf succeeded in 19ms:
[codex:1372711] contracts/src/cannon/libraries/CannonTypes.sol:13:/// │ [128, 160)  │ Blocks Processed (Inclusive of Padding)    │
[codex:1372711] contracts/src/cannon/libraries/CannonTypes.sol:42:    function setBlocksProcessed(LPPMetaData _self, uint32 _blocksProcessed) internal pure returns (LPPMetaData self_) {
[codex:1372711] contracts/src/cannon/libraries/CannonTypes.sol:44:            self_ := or(shl(96, _blocksProcessed), and(_self, not(shl(96, U32_MASK))))
[codex:1372711] contracts/src/cannon/libraries/CannonTypes.sol:78:    function blocksProcessed(LPPMetaData _self) internal pure returns (uint32 blocksProcessed_) {
[codex:1372711] contracts/src/cannon/libraries/CannonTypes.sol:80:            blocksProcessed_ := and(shr(96, _self), U32_MASK)
[codex:1372711] contracts/interfaces/cannon/IPreimageOracle.sol:29:    error WrongStartingBlock();
[codex:1372711] contracts/interfaces/cannon/IPreimageOracle.sol:37:        uint256 _inputStartBlock,
[codex:1372711] contracts/interfaces/cannon/IPreimageOracle.sol:93:    function proposalBlocks(address, uint256, uint256) external view returns (uint64);
[codex:1372711] contracts/interfaces/cannon/IPreimageOracle.sol:94:    function proposalBlocksLen(address _claimant, uint256 _uuid) external view returns (uint256 len_);
[codex:1372711] contracts/src/libraries/Types.sol:11:    /// @custom:field timestamp     Timestamp of the L1 block that the output root was submitted in.
[codex:1372711] contracts/src/libraries/Types.sol:12:    /// @custom:field l2BlockNumber L2 block number that the output corresponds to.
[codex:1372711] contracts/src/libraries/Types.sol:16:        uint128 l2BlockNumber;
[codex:1372711] contracts/src/libraries/Types.sol:22:    /// @custom:field stateRoot                Root of the state trie at the block of this output.
[codex:1372711] contracts/src/libraries/Types.sol:24:    /// @custom:field latestBlockhash          Hash of the block this output was generated from.
[codex:1372711] contracts/src/libraries/Types.sol:29:        bytes32 latestBlockhash;
[codex:1372711] contracts/src/libraries/Types.sol:50:    /// @notice Struct representing a deposit transaction (L1 => L2 transaction) created by an end
[codex:1372711] contracts/src/libraries/Types.sol:51:    ///         user (as opposed to a system deposit transaction generated by the system).
[codex:1372711] contracts/src/libraries/Types.sol:56:    /// @custom:field mint        Amount of ETH to mint.
[codex:1372711] contracts/src/libraries/Types.sol:59:    /// @custom:field l1BlockHash Hash of the block the transaction was submitted in.
[codex:1372711] contracts/src/libraries/Types.sol:60:    /// @custom:field logIndex    Index of the log in the block the transaction was submitted in.
[codex:1372711] 
[codex:1372711] thinking
[codex:1372711] **Inspecting main contract ETHLockbox**
[codex:1372711] exec
[codex:1372711] /bin/bash -lc "sed -n '1,260p' contracts/src/L1/ETHLockbox.sol" in /tmp/codex-multi-fecz3ttf succeeded in 11ms:
[codex:1372711] // SPDX-License-Identifier: MIT
[codex:1372711] pragma solidity 0.8.15;
[codex:1372711] 
[codex:1372711] // Contracts
[codex:1372711] import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
[codex:1372711] import { ProxyAdminOwnedBase } from "src/L1/ProxyAdminOwnedBase.sol";
[codex:1372711] import { ReinitializableBase } from "src/universal/ReinitializableBase.sol";
[codex:1372711] 
[codex:1372711] // Libraries
[codex:1372711] import { Constants } from "src/libraries/Constants.sol";
[codex:1372711] 
[codex:1372711] // Interfaces
[codex:1372711] import { ISemver } from "interfaces/universal/ISemver.sol";
[codex:1372711] import { IOptimismPortal2 as IOptimismPortal } from "interfaces/L1/IOptimismPortal2.sol";
[codex:1372711] import { ISuperchainConfig } from "interfaces/L1/ISuperchainConfig.sol";
[codex:1372711] import { IETHLockbox } from "interfaces/L1/IETHLockbox.sol";
[codex:1372711] import { ISystemConfig } from "interfaces/L1/ISystemConfig.sol";
[codex:1372711] 
[codex:1372711] /// @custom:proxied true
[codex:1372711] /// @title ETHLockbox
[codex:1372711] 
[codex:1372711] thinking
[codex:1372711] **Examining potential contract vulnerabilities**
[codex:1372711] exec
[codex:1372711] /bin/bash -lc 'rg --files contracts/src | sort' in /tmp/codex-multi-fecz3ttf succeeded in 24ms:
[codex:1372711] contracts/src/cannon/libraries/CannonTypes.sol
[codex:1372711] contracts/src/dispute/lib/LibPosition.sol
[codex:1372711] contracts/src/dispute/lib/LibUDT.sol
[codex:1372711] contracts/src/dispute/lib/Types.sol
[codex:1372711] contracts/src/L1/ETHLockbox.sol
[codex:1372711] contracts/src/L1/ProxyAdminOwnedBase.sol
[codex:1372711] contracts/src/libraries/Constants.sol
[codex:1372711] contracts/src/libraries/Storage.sol
[codex:1372711] contracts/src/libraries/Types.sol
[codex:1372711] contracts/src/universal/ReinitializableBase.sol
[codex:1372711] 
[codex:1372711] thinking
[codex:1372711] **Reviewing source files for vulnerabilities**
[codex:1372711] exec
[codex:1372711] /bin/bash -lc "sed -n '1,260p' contracts/src/L1/ProxyAdminOwnedBase.sol" in /tmp/codex-multi-fecz3ttf succeeded in 11ms:
[codex:1372711] // SPDX-License-Identifier: MIT
[codex:1372711] pragma solidity ^0.8.15;
[codex:1372711] 
[codex:1372711] // Libraries
[codex:1372711] import { Storage } from "src/libraries/Storage.sol";
[codex:1372711] import { Constants } from "src/libraries/Constants.sol";
[codex:1372711] 
[codex:1372711] // Interfaces
[codex:1372711] import { IProxyAdmin } from "interfaces/universal/IProxyAdmin.sol";
[codex:1372711] import { IAddressManager } from "interfaces/legacy/IAddressManager.sol";
[codex:1372711] 
[codex:1372711] /// @notice Base contract for ProxyAdmin-owned contracts. This contract is used to introspect
[codex:1372711] ///         compatible Proxy contracts so that their ProxyAdmin and ProxyAdmin owner addresses can
[codex:1372711] ///         be retrieved onchain. Existing Proxy contracts don't have these getters, so we need a
[codex:1372711] ///         base contract instead.
[codex:1372711] /// @dev WARNING: This contract is ONLY designed to be used with either the Optimism Proxy
[codex:1372711] ///      implementation or the Optimism ResolvedDelegateProxy implementation. It is not safe to use
[codex:1372711] ///      this contract with any other proxy implementation.
[codex:1372711] ///      WARNING: Multiple OP Stack chains may share the same ProxyAdmin owner address.
[codex:1372711] abstract contract ProxyAdminOwnedBase {
[codex:1372711] 
[codex:1372711] thinking
[codex:1372711] **Confirming security and finalizing JSON output**
[codex:1372711] codex
[codex:1372711] {"no_findings":true,"summary":"No concrete, exploitable profit path found in the provided contracts.","findings":[]}
[codex:1372711] tokens used
[codex:1372711] 31,830
[codex:1372711] {"no_findings":true,"summary":"No concrete, exploitable profit path found in the provided contracts.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-31T15:17:14.789463+00:00",
        "returncode": 0
    },
    "summary": "No concrete, exploitable profit path found in the provided contracts.",
    "raw_final": {
        "summary": "No concrete, exploitable profit path found in the provided contracts.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
9
EXT*/BALANCE
2
Total opcodes
2192
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x00f3
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x438ab5ac
00000019: GT
0000001a: PUSH2 0x008a
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0x8d445bd0
00000024: GT
00000025: PUSH2 0x0059
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0x8d445bd0
0000002f: EQ
00000030: PUSH2 0x02e0
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0x946d9204
0000003a: EQ
0000003b: PUSH2 0x0300
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xb2db82f5
00000045: EQ
00000046: PUSH2 0x0320
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xdad544e0
00000050: EQ
00000051: PUSH2 0x0340
00000054: JUMPI
00000055: PUSH1 0x00
00000057: DUP1
00000058: REVERT
00000059: JUMPDEST
0000005a: DUP1
0000005b: PUSH4 0x438ab5ac
00000060: EQ
00000061: PUSH2 0x023f
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0x54fd4d50
0000006b: EQ
0000006c: PUSH2 0x025f
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0x5c975abb
00000076: EQ
00000077: PUSH2 0x02ab
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0x5ec15d89
00000081: EQ
00000082: PUSH2 0x02c0
00000085: JUMPI
00000086: PUSH1 0x00
00000088: DUP1
00000089: REVERT
0000008a: JUMPDEST
0000008b: DUP1
0000008c: PUSH4 0x33d7e2bd
00000091: GT
00000092: PUSH2 0x00c6
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0x33d7e2bd
0000009c: EQ
0000009d: PUSH2 0x017f
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0x35e80ab3
000000a7: EQ
000000a8: PUSH2 0x01d7
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0x38d38c97
000000b2: EQ
000000b3: PUSH2 0x01ec
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0x3e47158c
000000bd: EQ
000000be: PUSH2 0x022a
000000c1: JUMPI
000000c2: PUSH1 0x00
000000c4: DUP1
000000c5: REVERT
000000c6: JUMPDEST
000000c7: DUP1
000000c8: PUSH4 0x0fd11077
000000cd: EQ
000000ce: PUSH2 0x00f8
000000d1: JUMPI
000000d2: DUP1
000000d3: PUSH4 0x1ee116bf
000000d8: EQ
000000d9: PUSH2 0x013d
000000dc: JUMPI
000000dd: DUP1
000000de: PUSH4 0x225ce176
000000e3: EQ
000000e4: PUSH2 0x0147
000000e7: JUMPI
000000e8: DUP1
000000e9: PUSH4 0x30f9765d
000000ee: EQ
000000ef: PUSH2 0x0177
000000f2: JUMPI
000000f3: JUMPDEST
000000f4: PUSH1 0x00
000000f6: DUP1
000000f7: REVERT
000000f8: JUMPDEST
000000f9: CALLVALUE
000000fa: DUP1
000000fb: ISZERO
000000fc: PUSH2 0x0104
000000ff: JUMPI
00000100: PUSH1 0x00
00000102: DUP1
00000103: REVERT
00000104: JUMPDEST
00000105: POP
00000106: PUSH2 0x0128
00000109: PUSH2 0x0113
0000010c: CALLDATASIZE
0000010d: PUSH1 0x04
0000010f: PUSH2 0x10e0
00000112: JUMP
00000113: JUMPDEST
00000114: PUSH1 0x01
00000116: PUSH1 0x20
00000118: MSTORE
00000119: PUSH1 0x00
0000011b: SWAP1
0000011c: DUP2
0000011d: MSTORE
0000011e: PUSH1 0x40
00000120: SWAP1
00000121: KECCAK256
00000122: SLOAD
00000123: PUSH1 0xff
00000125: AND
00000126: DUP2
00000127: JUMP
00000128: JUMPDEST
00000129: PUSH1 0x40
0000012b: MLOAD
0000012c: SWAP1
0000012d: ISZERO
0000012e: ISZERO
0000012f: DUP2
00000130: MSTORE
00000131: PUSH1 0x20
00000133: ADD
00000134: JUMPDEST
00000135: PUSH1 0x40
00000137: MLOAD
00000138: DUP1
00000139: SWAP2
0000013a: SUB
0000013b: SWAP1
0000013c: RETURN
0000013d: JUMPDEST
0000013e: PUSH2 0x0145
00000141: PUSH2 0x0355
00000144: JUMP
00000145: JUMPDEST
00000146: STOP
00000147: JUMPDEST
00000148: CALLVALUE
00000149: DUP1
0000014a: ISZERO
0000014b: PUSH2 0x0153
0000014e: JUMPI
0000014f: PUSH1 0x00
00000151: DUP1
00000152: REVERT
00000153: JUMPDEST
00000154: POP
00000155: PUSH2 0x0128
00000158: PUSH2 0x0162
0000015b: CALLDATASIZE
0000015c: PUSH1 0x04
0000015e: PUSH2 0x10e0
00000161: JUMP
00000162: JUMPDEST
00000163: PUSH1 0x02
00000165: PUSH1 0x20
00000167: MSTORE
00000168: PUSH1 0x00
0000016a: SWAP1
0000016b: DUP2
0000016c: MSTORE
0000016d: PUSH1 0x40
0000016f: SWAP1
00000170: KECCAK256
00000171: SLOAD
00000172: PUSH1 0xff
00000174: AND
00000175: DUP2
00000176: JUMP
00000177: JUMPDEST
00000178: PUSH2 0x0145
0000017b: PUSH2 0x03f1
0000017e: JUMP
0000017f: JUMPDEST
00000180: CALLVALUE
00000181: DUP1
00000182: ISZERO
00000183: PUSH2 0x018b
00000186: JUMPI
00000187: PUSH1 0x00
00000189: DUP1
0000018a: REVERT
0000018b: JUMPDEST
0000018c: POP
0000018d: PUSH1 0x00
0000018f: SLOAD
00000190: PUSH2 0x01b2
00000193: SWAP1
00000194: PUSH3 0x010000
00000198: SWAP1
00000199: DIV
0000019a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001af: AND
000001b0: DUP2
000001b1: JUMP
000001b2: JUMPDEST
000001b3: PUSH1 0x40
000001b5: MLOAD
000001b6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001cb: SWAP1
000001cc: SWAP2
000001cd: AND
000001ce: DUP2
000001cf: MSTORE
000001d0: PUSH1 0x20
000001d2: ADD
000001d3: PUSH2 0x0134
000001d6: JUMP
000001d7: JUMPDEST
000001d8: CALLVALUE
000001d9: DUP1
000001da: ISZERO
000001db: PUSH2 0x01e3
000001de: JUMPI
000001df: PUSH1 0x00
000001e1: DUP1
000001e2: REVERT
000001e3: JUMPDEST
000001e4: POP
000001e5: PUSH2 0x01b2
000001e8: PUSH2 0x0482
000001eb: JUMP
000001ec: JUMPDEST
000001ed: CALLVALUE
000001ee: DUP1
000001ef: ISZERO
000001f0: PUSH2 0x01f8
000001f3: JUMPI
000001f4: PUSH1 0x00
000001f6: DUP1
000001f7: REVERT
000001f8: JUMPDEST
000001f9: POP
000001fa: PUSH1 0x40
000001fc: MLOAD
000001fd: PUSH1 0xff
000001ff: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001
00000220: AND
00000221: DUP2
00000222: MSTORE
00000223: PUSH1 0x20
00000225: ADD
00000226: PUSH2 0x0134
00000229: JUMP
0000022a: JUMPDEST
0000022b: CALLVALUE
0000022c: DUP1
0000022d: ISZERO
0000022e: PUSH2 0x0236
00000231: JUMPI
00000232: PUSH1 0x00
00000234: DUP1
00000235: REVERT
00000236: JUMPDEST
00000237: POP
00000238: PUSH2 0x01b2
0000023b: PUSH2 0x0519
0000023e: JUMP
0000023f: JUMPDEST
00000240: CALLVALUE
00000241: DUP1
00000242: ISZERO
00000243: PUSH2 0x024b
00000246: JUMPI
00000247: PUSH1 0x00
00000249: DUP1
0000024a: REVERT
0000024b: JUMPDEST
0000024c: POP
0000024d: PUSH2 0x0145
00000250: PUSH2 0x025a
00000253: CALLDATASIZE
00000254: PUSH1 0x04
00000256: PUSH2 0x10e0
00000259: JUMP
0000025a: JUMPDEST
0000025b: PUSH2 0x0724
0000025e: JUMP
0000025f: JUMPDEST
00000260: CALLVALUE
00000261: DUP1
00000262: ISZERO
00000263: PUSH2 0x026b
00000266: JUMPI
00000267: PUSH1 0x00
00000269: DUP1
0000026a: REVERT
0000026b: JUMPDEST
0000026c: POP
0000026d: PUSH1 0x40
0000026f: DUP1
00000270: MLOAD
00000271: DUP1
00000272: DUP3
00000273: ADD
00000274: DUP3
00000275: MSTORE
00000276: PUSH1 0x05
00000278: DUP2
00000279: MSTORE
0000027a: PUSH32 0x312e322e30000000000000000000000000000000000000000000000000000000
0000029b: PUSH1 0x20
0000029d: DUP3
0000029e: ADD
0000029f: MSTORE
000002a0: SWAP1
000002a1: MLOAD
000002a2: PUSH2 0x0134
000002a5: SWAP2
000002a6: SWAP1
000002a7: PUSH2 0x1104
000002aa: JUMP
000002ab: JUMPDEST
000002ac: CALLVALUE
000002ad: DUP1
000002ae: ISZERO
000002af: PUSH2 0x02b7
000002b2: JUMPI
000002b3: PUSH1 0x00
000002b5: DUP1
000002b6: REVERT
000002b7: JUMPDEST
000002b8: POP
000002b9: PUSH2 0x0128
000002bc: PUSH2 0x07ef
000002bf: JUMP
000002c0: JUMPDEST
000002c1: CALLVALUE
000002c2: DUP1
000002c3: ISZERO
000002c4: PUSH2 0x02cc
000002c7: JUMPI
000002c8: PUSH1 0x00
000002ca: DUP1
000002cb: REVERT
000002cc: JUMPDEST
000002cd: POP
000002ce: PUSH2 0x0145
000002d1: PUSH2 0x02db
000002d4: CALLDATASIZE
000002d5: PUSH1 0x04
000002d7: PUSH2 0x10e0
000002da: JUMP
000002db: JUMPDEST
000002dc: PUSH2 0x0881
000002df: JUMP
000002e0: JUMPDEST
000002e1: CALLVALUE
000002e2: DUP1
000002e3: ISZERO
000002e4: PUSH2 0x02ec
000002e7: JUMPI
000002e8: PUSH1 0x00
000002ea: DUP1
000002eb: REVERT
000002ec: JUMPDEST
000002ed: POP
000002ee: PUSH2 0x0145
000002f1: PUSH2 0x02fb
000002f4: CALLDATASIZE
000002f5: PUSH1 0x04
000002f7: PUSH2 0x1177
000002fa: JUMP
000002fb: JUMPDEST
000002fc: PUSH2 0x0909
000002ff: JUMP
00000300: JUMPDEST
00000301: CALLVALUE
00000302: DUP1
00000303: ISZERO
00000304: PUSH2 0x030c
00000307: JUMPI
00000308: PUSH1 0x00
0000030a: DUP1
0000030b: REVERT
0000030c: JUMPDEST
0000030d: POP
0000030e: PUSH2 0x0145
00000311: PUSH2 0x031b
00000314: CALLDATASIZE
00000315: PUSH1 0x04
00000317: PUSH2 0x1190
0000031a: JUMP
0000031b: JUMPDEST
0000031c: PUSH2 0x0b49
0000031f: JUMP
00000320: JUMPDEST
00000321: CALLVALUE
00000322: DUP1
00000323: ISZERO
00000324: PUSH2 0x032c
00000327: JUMPI
00000328: PUSH1 0x00
0000032a: DUP1
0000032b: REVERT
0000032c: JUMPDEST
0000032d: POP
0000032e: PUSH2 0x0145
00000331: PUSH2 0x033b
00000334: CALLDATASIZE
00000335: PUSH1 0x04
00000337: PUSH2 0x10e0
0000033a: JUMP
0000033b: JUMPDEST
0000033c: PUSH2 0x0d46
0000033f: JUMP
00000340: JUMPDEST
00000341: CALLVALUE
00000342: DUP1
00000343: ISZERO
00000344: PUSH2 0x034c
00000347: JUMPI
00000348: PUSH1 0x00
0000034a: DUP1
0000034b: REVERT
0000034c: JUMPDEST
0000034d: POP
0000034e: PUSH2 0x01b2
00000351: PUSH2 0x0d5a
00000354: JUMP
00000355: JUMPDEST
00000356: CALLER
00000357: PUSH1 0x00
00000359: DUP2
0000035a: DUP2
0000035b: MSTORE
0000035c: PUSH1 0x01
0000035e: PUSH1 0x20
00000360: MSTORE
00000361: PUSH1 0x40
00000363: SWAP1
00000364: KECCAK256
00000365: SLOAD
00000366: PUSH1 0xff
00000368: AND
00000369: PUSH2 0x039e
0000036c: JUMPI
0000036d: PUSH1 0x40
0000036f: MLOAD
00000370: PUSH32 0x665a1d1c00000000000000000000000000000000000000000000000000000000
00000391: DUP2
00000392: MSTORE
00000393: PUSH1 0x04
00000395: ADD
00000396: PUSH1 0x40
00000398: MLOAD
00000399: DUP1
0000039a: SWAP2
0000039b: SUB
0000039c: SWAP1
0000039d: REVERT
0000039e: JUMPDEST
0000039f: DUP1
000003a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003b5: AND
000003b6: PUSH32 0x97efc519b9020a140ffe13878e03d340b976676090bc7fe3e33191192df7c72c
000003d7: CALLVALUE
000003d8: PUSH1 0x40
000003da: MLOAD
000003db: PUSH2 0x03e6
000003de: SWAP2
000003df: DUP2
000003e0: MSTORE
000003e1: PUSH1 0x20
000003e3: ADD
000003e4: SWAP1
000003e5: JUMP
000003e6: JUMPDEST
000003e7: PUSH1 0x40
000003e9: MLOAD
000003ea: DUP1
000003eb: SWAP2
000003ec: SUB
000003ed: SWAP1
000003ee: LOG2
000003ef: POP
000003f0: JUMP
000003f1: JUMPDEST
000003f2: CALLER
000003f3: PUSH1 0x00
000003f5: DUP2
000003f6: DUP2
000003f7: MSTORE
000003f8: PUSH1 0x02
000003fa: PUSH1 0x20
000003fc: MSTORE
000003fd: PUSH1 0x40
000003ff: SWAP1
00000400: KECCAK256
00000401: SLOAD
00000402: PUSH1 0xff
00000404: AND
00000405: PUSH2 0x043a
00000408: JUMPI
00000409: PUSH1 0x40
0000040b: MLOAD
0000040c: PUSH32 0x665a1d1c00000000000000000000000000000000000000000000000000000000
0000042d: DUP2
0000042e: MSTORE
0000042f: PUSH1 0x04
00000431: ADD
00000432: PUSH1 0x40
00000434: MLOAD
00000435: DUP1
00000436: SWAP2
00000437: SUB
00000438: SWAP1
00000439: REVERT
0000043a: JUMPDEST
0000043b: DUP1
0000043c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000451: AND
00000452: PUSH32 0xb58278ed56aa79ad2e243963b44b165a8f76d629f61c01dd3649d658e0eacca4
00000473: CALLVALUE
00000474: PUSH1 0x40
00000476: MLOAD
00000477: PUSH2 0x03e6
0000047a: SWAP2
0000047b: DUP2
0000047c: MSTORE
0000047d: PUSH1 0x20
0000047f: ADD
00000480: SWAP1
00000481: JUMP
00000482: JUMPDEST
00000483: PUSH1 0x00
00000485: DUP1
00000486: PUSH1 0x02
00000488: SWAP1
00000489: SLOAD
0000048a: SWAP1
0000048b: PUSH2 0x0100
0000048e: EXP
0000048f: SWAP1
00000490: DIV
00000491: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004a6: AND
000004a7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004bc: AND
000004bd: PUSH4 0x35e80ab3
000004c2: PUSH1 0x40
000004c4: MLOAD
000004c5: DUP2
000004c6: PUSH4 0xffffffff
000004cb: AND
000004cc: PUSH1 0xe0
000004ce: SHL
000004cf: DUP2
000004d0: MSTORE
000004d1: PUSH1 0x04
000004d3: ADD
000004d4: PUSH1 0x20
000004d6: PUSH1 0x40
000004d8: MLOAD
000004d9: DUP1
000004da: DUP4
000004db: SUB
000004dc: DUP2
000004dd: DUP7
000004de: GAS
000004df: STATICCALL
000004e0: ISZERO
000004e1: DUP1
000004e2: ISZERO
000004e3: PUSH2 0x04f0
000004e6: JUMPI
000004e7: RETURNDATASIZE
000004e8: PUSH1 0x00
000004ea: DUP1
000004eb: RETURNDATACOPY
000004ec: RETURNDATASIZE
000004ed: PUSH1 0x00
000004ef: REVERT
000004f0: JUMPDEST
000004f1: POP
000004f2: POP
000004f3: POP
000004f4: POP
000004f5: PUSH1 0x40
000004f7: MLOAD
000004f8: RETURNDATASIZE
000004f9: PUSH1 0x1f
000004fb: NOT
000004fc: PUSH1 0x1f
000004fe: DUP3
000004ff: ADD
00000500: AND
00000501: DUP3
00000502: ADD
00000503: DUP1
00000504: PUSH1 0x40
00000506: MSTORE
00000507: POP
00000508: DUP2
00000509: ADD
0000050a: SWAP1
0000050b: PUSH2 0x0514
0000050e: SWAP2
0000050f: SWAP1
00000510: PUSH2 0x1218
00000513: JUMP
00000514: JUMPDEST
00000515: SWAP1
00000516: POP
00000517: SWAP1
00000518: JUMP
00000519: JUMPDEST
0000051a: PUSH1 0x00
0000051c: DUP1
0000051d: PUSH2 0x0544
00000520: PUSH32 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103
00000541: SLOAD
00000542: SWAP1
00000543: JUMP
00000544: JUMPDEST
00000545: SWAP1
00000546: POP
00000547: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000055c: DUP2
0000055d: AND
0000055e: ISZERO
0000055f: PUSH2 0x0567
00000562: JUMPI
00000563: SWAP2
00000564: SWAP1
00000565: POP
00000566: JUMP
00000567: JUMPDEST
00000568: PUSH1 0x40
0000056a: MLOAD
0000056b: DUP1
0000056c: PUSH1 0x40
0000056e: ADD
0000056f: PUSH1 0x40
00000571: MSTORE
00000572: DUP1
00000573: PUSH1 0x1a
00000575: DUP2
00000576: MSTORE
00000577: PUSH1 0x20
00000579: ADD
0000057a: PUSH32 0x4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000
0000059b: DUP2
0000059c: MSTORE
0000059d: POP
0000059e: MLOAD
0000059f: PUSH1 0x02
000005a1: PUSH2 0x05aa
000005a4: SWAP2
000005a5: SWAP1
000005a6: PUSH2 0x1264
000005a9: JUMP
000005aa: JUMPDEST
000005ab: PUSH1 0x40
000005ad: DUP1
000005ae: MLOAD
000005af: ADDRESS
000005b0: PUSH1 0x20
000005b2: DUP3
000005b3: ADD
000005b4: MSTORE
000005b5: PUSH1 0x00
000005b7: SWAP2
000005b8: DUP2
000005b9: ADD
000005ba: SWAP2
000005bb: SWAP1
000005bc: SWAP2
000005bd: MSTORE
000005be: PUSH32 0x4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000
000005df: SWAP2
000005e0: SWAP1
000005e1: SWAP2
000005e2: OR
000005e3: SWAP1
000005e4: PUSH2 0x0605
000005e7: SWAP1
000005e8: PUSH1 0x60
000005ea: ADD
000005eb: JUMPDEST
000005ec: PUSH1 0x40
000005ee: MLOAD
000005ef: PUSH1 0x20
000005f1: DUP2
000005f2: DUP4
000005f3: SUB
000005f4: SUB
000005f5: DUP2
000005f6: MSTORE
000005f7: SWAP1
000005f8: PUSH1 0x40
000005fa: MSTORE
000005fb: DUP1
000005fc: MLOAD
000005fd: SWAP1
000005fe: PUSH1 0x20
00000600: ADD
00000601: KECCAK256
00000602: SLOAD
00000603: SWAP1
00000604: JUMP
00000605: JUMPDEST
00000606: EQ
00000607: PUSH2 0x063c
0000060a: JUMPI
0000060b: PUSH1 0x40
0000060d: MLOAD
0000060e: PUSH32 0x54e433cd00000000000000000000000000000000000000000000000000000000
0000062f: DUP2
00000630: MSTORE
00000631: PUSH1 0x04
00000633: ADD
00000634: PUSH1 0x40
00000636: MLOAD
00000637: DUP1
00000638: SWAP2
00000639: SUB
0000063a: SWAP1
0000063b: REVERT
0000063c: JUMPDEST
0000063d: PUSH1 0x40
0000063f: DUP1
00000640: MLOAD
00000641: ADDRESS
00000642: PUSH1 0x20
00000644: DUP3
00000645: ADD
00000646: MSTORE
00000647: PUSH1 0x01
00000649: SWAP2
0000064a: DUP2
0000064b: ADD
0000064c: SWAP2
0000064d: SWAP1
0000064e: SWAP2
0000064f: MSTORE
00000650: PUSH1 0x00
00000652: SWAP1
00000653: PUSH2 0x065e
00000656: SWAP1
00000657: PUSH1 0x60
00000659: ADD
0000065a: PUSH2 0x05eb
0000065d: JUMP
0000065e: JUMPDEST
0000065f: SWAP1
00000660: POP
00000661: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000676: DUP2
00000677: AND
00000678: ISZERO
00000679: PUSH2 0x06f2
0000067c: JUMPI
0000067d: DUP1
0000067e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000693: AND
00000694: PUSH4 0x8da5cb5b
00000699: PUSH1 0x40
0000069b: MLOAD
0000069c: DUP2
0000069d: PUSH4 0xffffffff
000006a2: AND
000006a3: PUSH1 0xe0
000006a5: SHL
000006a6: DUP2
000006a7: MSTORE
000006a8: PUSH1 0x04
000006aa: ADD
000006ab: PUSH1 0x20
000006ad: PUSH1 0x40
000006af: MLOAD
000006b0: DUP1
000006b1: DUP4
000006b2: SUB
000006b3: DUP2
000006b4: DUP7
000006b5: GAS
000006b6: STATICCALL
000006b7: ISZERO
000006b8: DUP1
000006b9: ISZERO
000006ba: PUSH2 0x06c7
000006bd: JUMPI
000006be: RETURNDATASIZE
000006bf: PUSH1 0x00
000006c1: DUP1
000006c2: RETURNDATACOPY
000006c3: RETURNDATASIZE
000006c4: PUSH1 0x00
000006c6: REVERT
000006c7: JUMPDEST
000006c8: POP
000006c9: POP
000006ca: POP
000006cb: POP
000006cc: PUSH1 0x40
000006ce: MLOAD
000006cf: RETURNDATASIZE
000006d0: PUSH1 0x1f
000006d2: NOT
000006d3: PUSH1 0x1f
000006d5: DUP3
000006d6: ADD
000006d7: AND
000006d8: DUP3
000006d9: ADD
000006da: DUP1
000006db: PUSH1 0x40
000006dd: MSTORE
000006de: POP
000006df: DUP2
000006e0: ADD
000006e1: SWAP1
000006e2: PUSH2 0x06eb
000006e5: SWAP2
000006e6: SWAP1
000006e7: PUSH2 0x1218
000006ea: JUMP
000006eb: JUMPDEST
000006ec: SWAP3
000006ed: POP
000006ee: POP
000006ef: POP
000006f0: SWAP1
000006f1: JUMP
000006f2: JUMPDEST
000006f3: PUSH1 0x40
000006f5: MLOAD
000006f6: PUSH32 0x332144db00000000000000000000000000000000000000000000000000000000
00000717: DUP2
00000718: MSTORE
00000719: PUSH1 0x04
0000071b: ADD
0000071c: PUSH1 0x40
0000071e: MLOAD
0000071f: DUP1
00000720: SWAP2
00000721: SUB
00000722: SWAP1
00000723: REVERT
00000724: JUMPDEST
00000725: PUSH2 0x072c
00000728: PUSH2 0x0dae
0000072b: JUMP
0000072c: JUMPDEST
0000072d: PUSH2 0x0735
00000730: DUP2
00000731: PUSH2 0x0e06
00000734: JUMP
00000735: JUMPDEST
00000736: PUSH1 0x00
00000738: SELFBALANCE
00000739: SWAP1
0000073a: POP
0000073b: DUP2
0000073c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000751: AND
00000752: PUSH4 0x30f9765d
00000757: DUP3
00000758: PUSH1 0x40
0000075a: MLOAD
0000075b: DUP3
0000075c: PUSH4 0xffffffff
00000761: AND
00000762: PUSH1 0xe0
00000764: SHL
00000765: DUP2
00000766: MSTORE
00000767: PUSH1 0x04
00000769: ADD
0000076a: PUSH1 0x00
0000076c: PUSH1 0x40
0000076e: MLOAD
0000076f: DUP1
00000770: DUP4
00000771: SUB
00000772: DUP2
00000773: DUP6
00000774: DUP9
00000775: DUP1
00000776: EXTCODESIZE
00000777: ISZERO
00000778: DUP1
00000779: ISZERO
0000077a: PUSH2 0x0782
0000077d: JUMPI
0000077e: PUSH1 0x00
00000780: DUP1
00000781: REVERT
00000782: JUMPDEST
00000783: POP
00000784: GAS
00000785: CALL
00000786: ISZERO
00000787: DUP1
00000788: ISZERO
00000789: PUSH2 0x0796
0000078c: JUMPI
0000078d: RETURNDATASIZE
0000078e: PUSH1 0x00
00000790: DUP1
00000791: RETURNDATACOPY
00000792: RETURNDATASIZE
00000793: PUSH1 0x00
00000795: REVERT
00000796: JUMPDEST
00000797: POP
00000798: POP
00000799: POP
0000079a: POP
0000079b: POP
0000079c: DUP2
0000079d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007b2: AND
000007b3: PUSH32 0x87eb4064140fbec95a8de570e01b4c650c00ecd677560af9f298a975b636c22d
000007d4: DUP3
000007d5: PUSH1 0x40
000007d7: MLOAD
000007d8: PUSH2 0x07e3
000007db: SWAP2
000007dc: DUP2
000007dd: MSTORE
000007de: PUSH1 0x20
000007e0: ADD
000007e1: SWAP1
000007e2: JUMP
000007e3: JUMPDEST
000007e4: PUSH1 0x40
000007e6: MLOAD
000007e7: DUP1
000007e8: SWAP2
000007e9: SUB
000007ea: SWAP1
000007eb: LOG2
000007ec: POP
000007ed: POP
000007ee: JUMP
000007ef: JUMPDEST
000007f0: PUSH1 0x00
000007f2: DUP1
000007f3: PUSH1 0x02
000007f5: SWAP1
000007f6: SLOAD
000007f7: SWAP1
000007f8: PUSH2 0x0100
000007fb: EXP
000007fc: SWAP1
000007fd: DIV
000007fe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000813: AND
00000814: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000829: AND
0000082a: PUSH4 0x5c975abb
0000082f: PUSH1 0x40
00000831: MLOAD
00000832: DUP2
00000833: PUSH4 0xffffffff
00000838: AND
00000839: PUSH1 0xe0
0000083b: SHL
0000083c: DUP2
0000083d: MSTORE
0000083e: PUSH1 0x04
00000840: ADD
00000841: PUSH1 0x20
00000843: PUSH1 0x40
00000845: MLOAD
00000846: DUP1
00000847: DUP4
00000848: SUB
00000849: DUP2
0000084a: DUP7
0000084b: GAS
0000084c: STATICCALL
0000084d: ISZERO
0000084e: DUP1
0000084f: ISZERO
00000850: PUSH2 0x085d
00000853: JUMPI
00000854: RETURNDATASIZE
00000855: PUSH1 0x00
00000857: DUP1
00000858: RETURNDATACOPY
00000859: RETURNDATASIZE
0000085a: PUSH1 0x00
0000085c: REVERT
0000085d: JUMPDEST
0000085e: POP
0000085f: POP
00000860: POP
00000861: POP
00000862: PUSH1 0x40
00000864: MLOAD
00000865: RETURNDATASIZE
00000866: PUSH1 0x1f
00000868: NOT
00000869: PUSH1 0x1f
0000086b: DUP3
0000086c: ADD
0000086d: AND
0000086e: DUP3
0000086f: ADD
00000870: DUP1
00000871: PUSH1 0x40
00000873: MSTORE
00000874: POP
00000875: DUP2
00000876: ADD
00000877: SWAP1
00000878: PUSH2 0x0514
0000087b: SWAP2
0000087c: SWAP1
0000087d: PUSH2 0x12a1
00000880: JUMP
00000881: JUMPDEST
00000882: PUSH2 0x0889
00000885: PUSH2 0x0dae
00000888: JUMP
00000889: JUMPDEST
0000088a: PUSH2 0x0892
0000088d: DUP2
0000088e: PUSH2 0x0e06
00000891: JUMP
00000892: JUMPDEST
00000893: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008a8: DUP2
000008a9: AND
000008aa: PUSH1 0x00
000008ac: DUP2
000008ad: DUP2
000008ae: MSTORE
000008af: PUSH1 0x02
000008b1: PUSH1 0x20
000008b3: MSTORE
000008b4: PUSH1 0x40
000008b6: DUP1
000008b7: DUP3
000008b8: KECCAK256
000008b9: DUP1
000008ba: SLOAD
000008bb: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
000008dc: AND
000008dd: PUSH1 0x01
000008df: OR
000008e0: SWAP1
000008e1: SSTORE
000008e2: MLOAD
000008e3: PUSH32 0x5d2682e700a2146c8e2381e0b407003576a54e96dd08f40f3ea0d2b8706db106
00000904: SWAP2
00000905: SWAP1
00000906: LOG2
00000907: POP
00000908: JUMP
00000909: JUMPDEST
0000090a: PUSH2 0x0911
0000090d: PUSH2 0x07ef
00000910: JUMP
00000911: JUMPDEST
00000912: ISZERO
00000913: PUSH2 0x0948
00000916: JUMPI
00000917: PUSH1 0x40
00000919: MLOAD
0000091a: PUSH32 0x9e72994200000000000000000000000000000000000000000000000000000000
0000093b: DUP2
0000093c: MSTORE
0000093d: PUSH1 0x04
0000093f: ADD
00000940: PUSH1 0x40
00000942: MLOAD
00000943: DUP1
00000944: SWAP2
00000945: SUB
00000946: SWAP1
00000947: REVERT
00000948: JUMPDEST
00000949: CALLER
0000094a: PUSH1 0x00
0000094c: DUP2
0000094d: DUP2
0000094e: MSTORE
0000094f: PUSH1 0x01
00000951: PUSH1 0x20
00000953: MSTORE
00000954: PUSH1 0x40
00000956: SWAP1
00000957: KECCAK256
00000958: SLOAD
00000959: PUSH1 0xff
0000095b: AND
0000095c: PUSH2 0x0991
0000095f: JUMPI
00000960: PUSH1 0x40
00000962: MLOAD
00000963: PUSH32 0x665a1d1c00000000000000000000000000000000000000000000000000000000
00000984: DUP2
00000985: MSTORE
00000986: PUSH1 0x04
00000988: ADD
00000989: PUSH1 0x40
0000098b: MLOAD
0000098c: DUP1
0000098d: SWAP2
0000098e: SUB
0000098f: SWAP1
00000990: REVERT
00000991: JUMPDEST
00000992: SELFBALANCE
00000993: DUP3
00000994: GT
00000995: ISZERO
00000996: PUSH2 0x09cb
00000999: JUMPI
0000099a: PUSH1 0x40
0000099c: MLOAD
0000099d: PUSH32 0xe1ba922700000000000000000000000000000000000000000000000000000000
000009be: DUP2
000009bf: MSTORE
000009c0: PUSH1 0x04
000009c2: ADD
000009c3: PUSH1 0x40
000009c5: MLOAD
000009c6: DUP1
000009c7: SWAP2
000009c8: SUB
000009c9: SWAP1
000009ca: REVERT
000009cb: JUMPDEST
000009cc: PUSH2 0xdead
000009cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009e4: AND
000009e5: DUP2
000009e6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009fb: AND
000009fc: PUSH4 0x9bf62d82
00000a01: PUSH1 0x40
00000a03: MLOAD
00000a04: DUP2
00000a05: PUSH4 0xffffffff
00000a0a: AND
00000a0b: PUSH1 0xe0
00000a0d: SHL
00000a0e: DUP2
00000a0f: MSTORE
00000a10: PUSH1 0x04
00000a12: ADD
00000a13: PUSH1 0x20
00000a15: PUSH1 0x40
00000a17: MLOAD
00000a18: DUP1
00000a19: DUP4
00000a1a: SUB
00000a1b: DUP2
00000a1c: DUP7
00000a1d: GAS
00000a1e: STATICCALL
00000a1f: ISZERO
00000a20: DUP1
00000a21: ISZERO
00000a22: PUSH2 0x0a2f
00000a25: JUMPI
00000a26: RETURNDATASIZE
00000a27: PUSH1 0x00
00000a29: DUP1
00000a2a: RETURNDATACOPY
00000a2b: RETURNDATASIZE
00000a2c: PUSH1 0x00
00000a2e: REVERT
00000a2f: JUMPDEST
00000a30: POP
00000a31: POP
00000a32: POP
00000a33: POP
00000a34: PUSH1 0x40
00000a36: MLOAD
00000a37: RETURNDATASIZE
00000a38: PUSH1 0x1f
00000a3a: NOT
00000a3b: PUSH1 0x1f
00000a3d: DUP3
00000a3e: ADD
00000a3f: AND
00000a40: DUP3
00000a41: ADD
00000a42: DUP1
00000a43: PUSH1 0x40
00000a45: MSTORE
00000a46: POP
00000a47: DUP2
00000a48: ADD
00000a49: SWAP1
00000a4a: PUSH2 0x0a53
00000a4d: SWAP2
00000a4e: SWAP1
00000a4f: PUSH2 0x1218
00000a52: JUMP
00000a53: JUMPDEST
00000a54: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a69: AND
00000a6a: EQ
00000a6b: PUSH2 0x0aa0
00000a6e: JUMPI
00000a6f: PUSH1 0x40
00000a71: MLOAD
00000a72: PUSH32 0xd6cbd5f900000000000000000000000000000000000000000000000000000000
00000a93: DUP2
00000a94: MSTORE
00000a95: PUSH1 0x04
00000a97: ADD
00000a98: PUSH1 0x40
00000a9a: MLOAD
00000a9b: DUP1
00000a9c: SWAP2
00000a9d: SUB
00000a9e: SWAP1
00000a9f: REVERT
00000aa0: JUMPDEST
00000aa1: DUP1
00000aa2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ab7: AND
00000ab8: PUSH4 0x8b4c40b0
00000abd: DUP4
00000abe: PUSH1 0x40
00000ac0: MLOAD
00000ac1: DUP3
00000ac2: PUSH4 0xffffffff
00000ac7: AND
00000ac8: PUSH1 0xe0
00000aca: SHL
00000acb: DUP2
00000acc: MSTORE
00000acd: PUSH1 0x04
00000acf: ADD
00000ad0: PUSH1 0x00
00000ad2: PUSH1 0x40
00000ad4: MLOAD
00000ad5: DUP1
00000ad6: DUP4
00000ad7: SUB
00000ad8: DUP2
00000ad9: DUP6
00000ada: DUP9
00000adb: DUP1
00000adc: EXTCODESIZE
00000add: ISZERO
00000ade: DUP1
00000adf: ISZERO
00000ae0: PUSH2 0x0ae8
00000ae3: JUMPI
00000ae4: PUSH1 0x00
00000ae6: DUP1
00000ae7: REVERT
00000ae8: JUMPDEST
00000ae9: POP
00000aea: GAS
00000aeb: CALL
00000aec: ISZERO
00000aed: DUP1
00000aee: ISZERO
00000aef: PUSH2 0x0afc
00000af2: JUMPI
00000af3: RETURNDATASIZE
00000af4: PUSH1 0x00
00000af6: DUP1
00000af7: RETURNDATACOPY
00000af8: RETURNDATASIZE
00000af9: PUSH1 0x00
00000afb: REVERT
00000afc: JUMPDEST
00000afd: POP
00000afe: POP
00000aff: POP
00000b00: POP
00000b01: POP
00000b02: DUP1
00000b03: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b18: AND
00000b19: PUSH32 0xe9512d49448b580f3d29031e9243ee81bc8789a93d6f04ec8f03b694d623637b
00000b3a: DUP4
00000b3b: PUSH1 0x40
00000b3d: MLOAD
00000b3e: PUSH2 0x07e3
00000b41: SWAP2
00000b42: DUP2
00000b43: MSTORE
00000b44: PUSH1 0x20
00000b46: ADD
00000b47: SWAP1
00000b48: JUMP
00000b49: JUMPDEST
00000b4a: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000001
00000b6b: PUSH1 0x00
00000b6d: SLOAD
00000b6e: PUSH2 0x0100
00000b71: SWAP1
00000b72: DIV
00000b73: PUSH1 0xff
00000b75: AND
00000b76: ISZERO
00000b77: DUP1
00000b78: ISZERO
00000b79: PUSH2 0x0b89
00000b7c: JUMPI
00000b7d: POP
00000b7e: PUSH1 0x00
00000b80: SLOAD
00000b81: PUSH1 0xff
00000b83: DUP1
00000b84: DUP4
00000b85: AND
00000b86: SWAP2
00000b87: AND
00000b88: LT
00000b89: JUMPDEST
00000b8a: PUSH2 0x0c19
00000b8d: JUMPI
00000b8e: PUSH1 0x40
00000b90: MLOAD
00000b91: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000bb2: DUP2
00000bb3: MSTORE
00000bb4: PUSH1 0x20
00000bb6: PUSH1 0x04
00000bb8: DUP3
00000bb9: ADD
00000bba: MSTORE
00000bbb: PUSH1 0x2e
00000bbd: PUSH1 0x24
00000bbf: DUP3
00000bc0: ADD
00000bc1: MSTORE
00000bc2: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561
00000be3: PUSH1 0x44
00000be5: DUP3
00000be6: ADD
00000be7: MSTORE
00000be8: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000
00000c09: PUSH1 0x64
00000c0b: DUP3
00000c0c: ADD
00000c0d: MSTORE
00000c0e: PUSH1 0x84
00000c10: ADD
00000c11: PUSH1 0x40
00000c13: MLOAD
00000c14: DUP1
00000c15: SWAP2
00000c16: SUB
00000c17: SWAP1
00000c18: REVERT
00000c19: JUMPDEST
00000c1a: PUSH1 0x00
00000c1c: DUP1
00000c1d: SLOAD
00000c1e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
00000c3f: AND
00000c40: PUSH1 0xff
00000c42: DUP4
00000c43: AND
00000c44: OR
00000c45: PUSH2 0x0100
00000c48: OR
00000c49: SWAP1
00000c4a: SSTORE
00000c4b: PUSH2 0x0c52
00000c4e: PUSH2 0x0ee0
00000c51: JUMP
00000c52: JUMPDEST
00000c53: PUSH1 0x00
00000c55: DUP1
00000c56: SLOAD
00000c57: PUSH32 0xffffffffffffffffffff0000000000000000000000000000000000000000ffff
00000c78: AND
00000c79: PUSH3 0x010000
00000c7d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c92: DUP8
00000c93: AND
00000c94: MUL
00000c95: OR
00000c96: DUP2
00000c97: SSTORE
00000c98: JUMPDEST
00000c99: DUP3
00000c9a: DUP2
00000c9b: LT
00000c9c: ISZERO
00000c9d: PUSH2 0x0ce1
00000ca0: JUMPI
00000ca1: PUSH2 0x0ccf
00000ca4: DUP5
00000ca5: DUP5
00000ca6: DUP4
00000ca7: DUP2
00000ca8: DUP2
00000ca9: LT
00000caa: PUSH2 0x0cb5
00000cad: JUMPI
00000cae: PUSH2 0x0cb5
00000cb1: PUSH2 0x12c3
00000cb4: JUMP
00000cb5: JUMPDEST
00000cb6: SWAP1
00000cb7: POP
00000cb8: PUSH1 0x20
00000cba: MUL
00000cbb: ADD
00000cbc: PUSH1 0x20
00000cbe: DUP2
00000cbf: ADD
00000cc0: SWAP1
00000cc1: PUSH2 0x0cca
00000cc4: SWAP2
00000cc5: SWAP1
00000cc6: PUSH2 0x10e0
00000cc9: JUMP
00000cca: JUMPDEST
00000ccb: PUSH2 0x0f61
00000cce: JUMP
00000ccf: JUMPDEST
00000cd0: DUP1
00000cd1: PUSH2 0x0cd9
00000cd4: DUP2
00000cd5: PUSH2 0x12f2
00000cd8: JUMP
00000cd9: JUMPDEST
00000cda: SWAP2
00000cdb: POP
00000cdc: POP
00000cdd: PUSH2 0x0c98
00000ce0: JUMP
00000ce1: JUMPDEST
00000ce2: POP
00000ce3: PUSH1 0x00
00000ce5: DUP1
00000ce6: SLOAD
00000ce7: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
00000d08: AND
00000d09: SWAP1
00000d0a: SSTORE
00000d0b: PUSH1 0x40
00000d0d: MLOAD
00000d0e: PUSH1 0xff
00000d10: DUP3
00000d11: AND
00000d12: DUP2
00000d13: MSTORE
00000d14: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498
00000d35: SWAP1
00000d36: PUSH1 0x20
00000d38: ADD
00000d39: PUSH1 0x40
00000d3b: MLOAD
00000d3c: DUP1
00000d3d: SWAP2
00000d3e: SUB
00000d3f: SWAP1
00000d40: LOG1
00000d41: POP
00000d42: POP
00000d43: POP
00000d44: POP
00000d45: JUMP
00000d46: JUMPDEST
00000d47: PUSH2 0x0d4e
00000d4a: PUSH2 0x0dae
00000d4d: JUMP
00000d4e: JUMPDEST
00000d4f: PUSH2 0x0d57
00000d52: DUP2
00000d53: PUSH2 0x0f61
00000d56: JUMP
00000d57: JUMPDEST
00000d58: POP
00000d59: JUMP
00000d5a: JUMPDEST
00000d5b: PUSH1 0x00
00000d5d: PUSH2 0x0d64
00000d60: PUSH2 0x0519
00000d63: JUMP
00000d64: JUMPDEST
00000d65: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d7a: AND
00000d7b: PUSH4 0x8da5cb5b
00000d80: PUSH1 0x40
00000d82: MLOAD
00000d83: DUP2
00000d84: PUSH4 0xffffffff
00000d89: AND
00000d8a: PUSH1 0xe0
00000d8c: SHL
00000d8d: DUP2
00000d8e: MSTORE
00000d8f: PUSH1 0x04
00000d91: ADD
00000d92: PUSH1 0x20
00000d94: PUSH1 0x40
00000d96: MLOAD
00000d97: DUP1
00000d98: DUP4
00000d99: SUB
00000d9a: DUP2
00000d9b: DUP7
00000d9c: GAS
00000d9d: STATICCALL
00000d9e: ISZERO
00000d9f: DUP1
00000da0: ISZERO
00000da1: PUSH2 0x04f0
00000da4: JUMPI
00000da5: RETURNDATASIZE
00000da6: PUSH1 0x00
00000da8: DUP1
00000da9: RETURNDATACOPY
00000daa: RETURNDATASIZE
00000dab: PUSH1 0x00
00000dad: REVERT
00000dae: JUMPDEST
00000daf: CALLER
00000db0: PUSH2 0x0db7
00000db3: PUSH2 0x0d5a
00000db6: JUMP
00000db7: JUMPDEST
00000db8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dcd: AND
00000dce: EQ
00000dcf: PUSH2 0x0e04
00000dd2: JUMPI
00000dd3: PUSH1 0x40
00000dd5: MLOAD
00000dd6: PUSH32 0x7f12c64b00000000000000000000000000000000000000000000000000000000
00000df7: DUP2
00000df8: MSTORE
00000df9: PUSH1 0x04
00000dfb: ADD
00000dfc: PUSH1 0x40
00000dfe: MLOAD
00000dff: DUP1
00000e00: SWAP2
00000e01: SUB
00000e02: SWAP1
00000e03: REVERT
00000e04: JUMPDEST
00000e05: JUMP
00000e06: JUMPDEST
00000e07: DUP1
00000e08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e1d: AND
00000e1e: PUSH4 0xdad544e0
00000e23: PUSH1 0x40
00000e25: MLOAD
00000e26: DUP2
00000e27: PUSH4 0xffffffff
00000e2c: AND
00000e2d: PUSH1 0xe0
00000e2f: SHL
00000e30: DUP2
00000e31: MSTORE
00000e32: PUSH1 0x04
00000e34: ADD
00000e35: PUSH1 0x20
00000e37: PUSH1 0x40
00000e39: MLOAD
00000e3a: DUP1
00000e3b: DUP4
00000e3c: SUB
00000e3d: DUP2
00000e3e: DUP7
00000e3f: GAS
00000e40: STATICCALL
00000e41: ISZERO
00000e42: DUP1
00000e43: ISZERO
00000e44: PUSH2 0x0e51
00000e47: JUMPI
00000e48: RETURNDATASIZE
00000e49: PUSH1 0x00
00000e4b: DUP1
00000e4c: RETURNDATACOPY
00000e4d: RETURNDATASIZE
00000e4e: PUSH1 0x00
00000e50: REVERT
00000e51: JUMPDEST
00000e52: POP
00000e53: POP
00000e54: POP
00000e55: POP
00000e56: PUSH1 0x40
00000e58: MLOAD
00000e59: RETURNDATASIZE
00000e5a: PUSH1 0x1f
00000e5c: NOT
00000e5d: PUSH1 0x1f
00000e5f: DUP3
00000e60: ADD
00000e61: AND
00000e62: DUP3
00000e63: ADD
00000e64: DUP1
00000e65: PUSH1 0x40
00000e67: MSTORE
00000e68: POP
00000e69: DUP2
00000e6a: ADD
00000e6b: SWAP1
00000e6c: PUSH2 0x0e75
00000e6f: SWAP2
00000e70: SWAP1
00000e71: PUSH2 0x1218
00000e74: JUMP
00000e75: JUMPDEST
00000e76: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e8b: AND
00000e8c: PUSH2 0x0e93
00000e8f: PUSH2 0x0d5a
00000e92: JUMP
00000e93: JUMPDEST
00000e94: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ea9: AND
00000eaa: EQ
00000eab: PUSH2 0x0d57
00000eae: JUMPI
00000eaf: PUSH1 0x40
00000eb1: MLOAD
00000eb2: PUSH32 0x075c431400000000000000000000000000000000000000000000000000000000
00000ed3: DUP2
00000ed4: MSTORE
00000ed5: PUSH1 0x04
00000ed7: ADD
00000ed8: PUSH1 0x40
00000eda: MLOAD
00000edb: DUP1
00000edc: SWAP2
00000edd: SUB
00000ede: SWAP1
00000edf: REVERT
00000ee0: JUMPDEST
00000ee1: CALLER
00000ee2: PUSH2 0x0ee9
00000ee5: PUSH2 0x0519
00000ee8: JUMP
00000ee9: JUMPDEST
00000eea: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000eff: AND
00000f00: EQ
00000f01: ISZERO
00000f02: DUP1
00000f03: ISZERO
00000f04: PUSH2 0x0f2a
00000f07: JUMPI
00000f08: POP
00000f09: CALLER
00000f0a: PUSH2 0x0f11
00000f0d: PUSH2 0x0d5a
00000f10: JUMP
00000f11: JUMPDEST
00000f12: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f27: AND
00000f28: EQ
00000f29: ISZERO
00000f2a: JUMPDEST
00000f2b: ISZERO
00000f2c: PUSH2 0x0e04
00000f2f: JUMPI
00000f30: PUSH1 0x40
00000f32: MLOAD
00000f33: PUSH32 0xc4050a2600000000000000000000000000000000000000000000000000000000
00000f54: DUP2
00000f55: MSTORE
00000f56: PUSH1 0x04
00000f58: ADD
00000f59: PUSH1 0x40
00000f5b: MLOAD
00000f5c: DUP1
00000f5d: SWAP2
00000f5e: SUB
00000f5f: SWAP1
00000f60: REVERT
00000f61: JUMPDEST
00000f62: PUSH2 0x0f6a
00000f65: DUP2
00000f66: PUSH2 0x0e06
00000f69: JUMP
00000f6a: JUMPDEST
00000f6b: PUSH2 0x0f72
00000f6e: PUSH2 0x0482
00000f71: JUMP
00000f72: JUMPDEST
00000f73: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f88: AND
00000f89: DUP2
00000f8a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f9f: AND
00000fa0: PUSH4 0x35e80ab3
00000fa5: PUSH1 0x40
00000fa7: MLOAD
00000fa8: DUP2
00000fa9: PUSH4 0xffffffff
00000fae: AND
00000faf: PUSH1 0xe0
00000fb1: SHL
00000fb2: DUP2
00000fb3: MSTORE
00000fb4: PUSH1 0x04
00000fb6: ADD
00000fb7: PUSH1 0x20
00000fb9: PUSH1 0x40
00000fbb: MLOAD
00000fbc: DUP1
00000fbd: DUP4
00000fbe: SUB
00000fbf: DUP2
00000fc0: DUP7
00000fc1: GAS
00000fc2: STATICCALL
00000fc3: ISZERO
00000fc4: DUP1
00000fc5: ISZERO
00000fc6: PUSH2 0x0fd3
00000fc9: JUMPI
00000fca: RETURNDATASIZE
00000fcb: PUSH1 0x00
00000fcd: DUP1
00000fce: RETURNDATACOPY
00000fcf: RETURNDATASIZE
00000fd0: PUSH1 0x00
00000fd2: REVERT
00000fd3: JUMPDEST
00000fd4: POP
00000fd5: POP
00000fd6: POP
00000fd7: POP
00000fd8: PUSH1 0x40
00000fda: MLOAD
00000fdb: RETURNDATASIZE
00000fdc: PUSH1 0x1f
00000fde: NOT
00000fdf: PUSH1 0x1f
00000fe1: DUP3
00000fe2: ADD
00000fe3: AND
00000fe4: DUP3
00000fe5: ADD
00000fe6: DUP1
00000fe7: PUSH1 0x40
00000fe9: MSTORE
00000fea: POP
00000feb: DUP2
00000fec: ADD
00000fed: SWAP1
00000fee: PUSH2 0x0ff7
00000ff1: SWAP2
00000ff2: SWAP1
00000ff3: PUSH2 0x1218
00000ff6: JUMP
00000ff7: JUMPDEST
00000ff8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000100d: AND
0000100e: EQ
0000100f: PUSH2 0x1044
00001012: JUMPI
00001013: PUSH1 0x40
00001015: MLOAD
00001016: PUSH32 0x84ab551500000000000000000000000000000000000000000000000000000000
00001037: DUP2
00001038: MSTORE
00001039: PUSH1 0x04
0000103b: ADD
0000103c: PUSH1 0x40
0000103e: MLOAD
0000103f: DUP1
00001040: SWAP2
00001041: SUB
00001042: SWAP1
00001043: REVERT
00001044: JUMPDEST
00001045: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000105a: DUP2
0000105b: AND
0000105c: PUSH1 0x00
0000105e: DUP2
0000105f: DUP2
00001060: MSTORE
00001061: PUSH1 0x01
00001063: PUSH1 0x20
00001065: DUP2
00001066: SWAP1
00001067: MSTORE
00001068: PUSH1 0x40
0000106a: DUP1
0000106b: DUP4
0000106c: KECCAK256
0000106d: DUP1
0000106e: SLOAD
0000106f: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00001090: AND
00001091: SWAP1
00001092: SWAP3
00001093: OR
00001094: SWAP1
00001095: SWAP2
00001096: SSTORE
00001097: MLOAD
00001098: PUSH32 0x90a7fac2e56aebe4889351fb04eda5efb28b19dedf288bdbfd3cfd817c79630f
000010b9: SWAP2
000010ba: SWAP1
000010bb: LOG2
000010bc: POP
000010bd: JUMP
000010be: JUMPDEST
000010bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010d4: DUP2
000010d5: AND
000010d6: DUP2
000010d7: EQ
000010d8: PUSH2 0x0d57
000010db: JUMPI
000010dc: PUSH1 0x00
000010de: DUP1
000010df: REVERT
000010e0: JUMPDEST
000010e1: PUSH1 0x00
000010e3: PUSH1 0x20
000010e5: DUP3
000010e6: DUP5
000010e7: SUB
000010e8: SLT
000010e9: ISZERO
000010ea: PUSH2 0x10f2
000010ed: JUMPI
000010ee: PUSH1 0x00
000010f0: DUP1
000010f1: REVERT
000010f2: JUMPDEST
000010f3: DUP2
000010f4: CALLDATALOAD
000010f5: PUSH2 0x10fd
000010f8: DUP2
000010f9: PUSH2 0x10be
000010fc: JUMP
000010fd: JUMPDEST
000010fe: SWAP4
000010ff: SWAP3
00001100: POP
00001101: POP
00001102: POP
00001103: JUMP
00001104: JUMPDEST
00001105: PUSH1 0x00
00001107: PUSH1 0x20
00001109: DUP1
0000110a: DUP4
0000110b: MSTORE
0000110c: DUP4
0000110d: MLOAD
0000110e: DUP1
0000110f: DUP3
00001110: DUP6
00001111: ADD
00001112: MSTORE
00001113: PUSH1 0x00
00001115: JUMPDEST
00001116: DUP2
00001117: DUP2
00001118: LT
00001119: ISZERO
0000111a: PUSH2 0x1131
0000111d: JUMPI
0000111e: DUP6
0000111f: DUP2
00001120: ADD
00001121: DUP4
00001122: ADD
00001123: MLOAD
00001124: DUP6
00001125: DUP3
00001126: ADD
00001127: PUSH1 0x40
00001129: ADD
0000112a: MSTORE
0000112b: DUP3
0000112c: ADD
0000112d: PUSH2 0x1115
00001130: JUMP
00001131: JUMPDEST
00001132: DUP2
00001133: DUP2
00001134: GT
00001135: ISZERO
00001136: PUSH2 0x1143
00001139: JUMPI
0000113a: PUSH1 0x00
0000113c: PUSH1 0x40
0000113e: DUP4
0000113f: DUP8
00001140: ADD
00001141: ADD
00001142: MSTORE
00001143: JUMPDEST
00001144: POP
00001145: PUSH1 0x1f
00001147: ADD
00001148: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00001169: AND
0000116a: SWAP3
0000116b: SWAP1
0000116c: SWAP3
0000116d: ADD
0000116e: PUSH1 0x40
00001170: ADD
00001171: SWAP4
00001172: SWAP3
00001173: POP
00001174: POP
00001175: POP
00001176: JUMP
00001177: JUMPDEST
00001178: PUSH1 0x00
0000117a: PUSH1 0x20
0000117c: DUP3
0000117d: DUP5
0000117e: SUB
0000117f: SLT
00001180: ISZERO
00001181: PUSH2 0x1189
00001184: JUMPI
00001185: PUSH1 0x00
00001187: DUP1
00001188: REVERT
00001189: JUMPDEST
0000118a: POP
0000118b: CALLDATALOAD
0000118c: SWAP2
0000118d: SWAP1
0000118e: POP
0000118f: JUMP
00001190: JUMPDEST
00001191: PUSH1 0x00
00001193: DUP1
00001194: PUSH1 0x00
00001196: PUSH1 0x40
00001198: DUP5
00001199: DUP7
0000119a: SUB
0000119b: SLT
0000119c: ISZERO
0000119d: PUSH2 0x11a5
000011a0: JUMPI
000011a1: PUSH1 0x00
000011a3: DUP1
000011a4: REVERT
000011a5: JUMPDEST
000011a6: DUP4
000011a7: CALLDATALOAD
000011a8: PUSH2 0x11b0
000011ab: DUP2
000011ac: PUSH2 0x10be
000011af: JUMP
000011b0: JUMPDEST
000011b1: SWAP3
000011b2: POP
000011b3: PUSH1 0x20
000011b5: DUP5
000011b6: ADD
000011b7: CALLDATALOAD
000011b8: PUSH8 0xffffffffffffffff
000011c1: DUP1
000011c2: DUP3
000011c3: GT
000011c4: ISZERO
000011c5: PUSH2 0x11cd
000011c8: JUMPI
000011c9: PUSH1 0x00
000011cb: DUP1
000011cc: REVERT
000011cd: JUMPDEST
000011ce: DUP2
000011cf: DUP7
000011d0: ADD
000011d1: SWAP2
000011d2: POP
000011d3: DUP7
000011d4: PUSH1 0x1f
000011d6: DUP4
000011d7: ADD
000011d8: SLT
000011d9: PUSH2 0x11e1
000011dc: JUMPI
000011dd: PUSH1 0x00
000011df: DUP1
000011e0: REVERT
000011e1: JUMPDEST
000011e2: DUP2
000011e3: CALLDATALOAD
000011e4: DUP2
000011e5: DUP2
000011e6: GT
000011e7: ISZERO
000011e8: PUSH2 0x11f0
000011eb: JUMPI
000011ec: PUSH1 0x00
000011ee: DUP1
000011ef: REVERT
000011f0: JUMPDEST
000011f1: DUP8
000011f2: PUSH1 0x20
000011f4: DUP3
000011f5: PUSH1 0x05
000011f7: SHL
000011f8: DUP6
000011f9: ADD
000011fa: ADD
000011fb: GT
000011fc: ISZERO
000011fd: PUSH2 0x1205
00001200: JUMPI
00001201: PUSH1 0x00
00001203: DUP1
00001204: REVERT
00001205: JUMPDEST
00001206: PUSH1 0x20
00001208: DUP4
00001209: ADD
0000120a: SWAP5
0000120b: POP
0000120c: DUP1
0000120d: SWAP4
0000120e: POP
0000120f: POP
00001210: POP
00001211: POP
00001212: SWAP3
00001213: POP
00001214: SWAP3
00001215: POP
00001216: SWAP3
00001217: JUMP
00001218: JUMPDEST
00001219: PUSH1 0x00
0000121b: PUSH1 0x20
0000121d: DUP3
0000121e: DUP5
0000121f: SUB
00001220: SLT
00001221: ISZERO
00001222: PUSH2 0x122a
00001225: JUMPI
00001226: PUSH1 0x00
00001228: DUP1
00001229: REVERT
0000122a: JUMPDEST
0000122b: DUP2
0000122c: MLOAD
0000122d: PUSH2 0x10fd
00001230: DUP2
00001231: PUSH2 0x10be
00001234: JUMP
00001235: JUMPDEST
00001236: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00001257: PUSH1 0x00
00001259: MSTORE
0000125a: PUSH1 0x11
0000125c: PUSH1 0x04
0000125e: MSTORE
0000125f: PUSH1 0x24
00001261: PUSH1 0x00
00001263: REVERT
00001264: JUMPDEST
00001265: PUSH1 0x00
00001267: DUP2
00001268: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00001289: DIV
0000128a: DUP4
0000128b: GT
0000128c: DUP3
0000128d: ISZERO
0000128e: ISZERO
0000128f: AND
00001290: ISZERO
00001291: PUSH2 0x129c
00001294: JUMPI
00001295: PUSH2 0x129c
00001298: PUSH2 0x1235
0000129b: JUMP
0000129c: JUMPDEST
0000129d: POP
0000129e: MUL
0000129f: SWAP1
000012a0: JUMP
000012a1: JUMPDEST
000012a2: PUSH1 0x00
000012a4: PUSH1 0x20
000012a6: DUP3
000012a7: DUP5
000012a8: SUB
000012a9: SLT
000012aa: ISZERO
000012ab: PUSH2 0x12b3
000012ae: JUMPI
000012af: PUSH1 0x00
000012b1: DUP1
000012b2: REVERT
000012b3: JUMPDEST
000012b4: DUP2
000012b5: MLOAD
000012b6: DUP1
000012b7: ISZERO
000012b8: ISZERO
000012b9: DUP2
000012ba: EQ
000012bb: PUSH2 0x10fd
000012be: JUMPI
000012bf: PUSH1 0x00
000012c1: DUP1
000012c2: REVERT
000012c3: JUMPDEST
000012c4: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
000012e5: PUSH1 0x00
000012e7: MSTORE
000012e8: PUSH1 0x32
000012ea: PUSH1 0x04
000012ec: MSTORE
000012ed: PUSH1 0x24
000012ef: PUSH1 0x00
000012f1: REVERT
000012f2: JUMPDEST
000012f3: PUSH1 0x00
000012f5: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00001316: DUP3
00001317: SUB
00001318: PUSH2 0x1323
0000131b: JUMPI
0000131c: PUSH2 0x1323
0000131f: PUSH2 0x1235
00001322: JUMP
00001323: JUMPDEST
00001324: POP
00001325: PUSH1 0x01
00001327: ADD
00001328: SWAP1
00001329: JUMP
0000132a: INVALID
0000132b: LOG1
0000132c: PUSH5 0x736f6c6343
00001332: STOP
00001333: ADDMOD
00001334: UNKNOWN(0x0F)
00001335: STOP
00001336: EXP

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x022428b7974397728c1775c511e7b98d1c556c69df0f387c83d1be1a956c1826
call_targets: 0x784d2f03593a42a6e4676a012762f18775ecbbe6
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x022428b7974397728c1775c511e7b98d1c556c69df0f387c83d1be1a956c1826",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x784d2f03593a42a6e4676a012762f18775ecbbe6"
    ],
    "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": "0x8d445bd0",
            "selector": "0x8d445bd0",
            "calldata_variants": [
                "0x8d445bd0",
                "0x8d445bd00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x946d9204",
            "selector": "0x946d9204",
            "calldata_variants": [
                "0x946d9204",
                "0x946d92040000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb2db82f5",
            "selector": "0xb2db82f5",
            "calldata_variants": [
                "0xb2db82f5",
                "0xb2db82f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdad544e0",
            "selector": "0xdad544e0",
            "calldata_variants": [
                "0xdad544e0",
                "0xdad544e00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x438ab5ac",
            "selector": "0x438ab5ac",
            "calldata_variants": [
                "0x438ab5ac",
                "0x438ab5ac0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54fd4d50",
            "selector": "0x54fd4d50",
            "calldata_variants": [
                "0x54fd4d50",
                "0x54fd4d500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c975abb",
            "selector": "0x5c975abb",
            "calldata_variants": [
                "0x5c975abb",
                "0x5c975abb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5ec15d89",
            "selector": "0x5ec15d89",
            "calldata_variants": [
                "0x5ec15d89",
                "0x5ec15d890000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1925,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2795,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": []
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x022428b7974397728c1775c511e7b98d1c556c69df0f387c83d1be1a956c1826
call_targets: 0x784d2f03593a42a6e4676a012762f18775ecbbe6
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x022428b7974397728c1775c511e7b98d1c556c69df0f387c83d1be1a956c1826",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x784d2f03593a42a6e4676a012762f18775ecbbe6"
    ],
    "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": "0x8d445bd0",
            "selector": "0x8d445bd0",
            "calldata_variants": [
                "0x8d445bd0",
                "0x8d445bd00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x946d9204",
            "selector": "0x946d9204",
            "calldata_variants": [
                "0x946d9204",
                "0x946d92040000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb2db82f5",
            "selector": "0xb2db82f5",
            "calldata_variants": [
                "0xb2db82f5",
                "0xb2db82f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdad544e0",
            "selector": "0xdad544e0",
            "calldata_variants": [
                "0xdad544e0",
                "0xdad544e00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x438ab5ac",
            "selector": "0x438ab5ac",
            "calldata_variants": [
                "0x438ab5ac",
                "0x438ab5ac0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54fd4d50",
            "selector": "0x54fd4d50",
            "calldata_variants": [
                "0x54fd4d50",
                "0x54fd4d500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c975abb",
            "selector": "0x5c975abb",
            "calldata_variants": [
                "0x5c975abb",
                "0x5c975abb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5ec15d89",
            "selector": "0x5ec15d89",
            "calldata_variants": [
                "0x5ec15d89",
                "0x5ec15d890000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1925,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2795,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [],
    "untrusted_call_count": 2
}