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

Analysis Run

b311a07d-c6d4-4c28-a861-aba1ff258fdb

failed
Chain ID
1
Address
Block Number
Created
Mon, Dec 29, 2025 1:39 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 CALL target/value 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
30496 report.consolidate complete 1 / 1 3 months ago
103835 artifact.fetch failed 1 / 3 1 week ago
103836 tool.cast_disasm complete 1 / 3 1 week ago
103837 analysis.bundle complete 1 / 3 1 week ago
103838 capability.graph complete 1 / 3 1 week ago
103839 detector.run complete 1 / 3 1 week ago
103840 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 the audited first-party contracts. Residual risks/assumptions not validated: trusted Pool/Governor/Operator roles, correct proxy initialization at deployment, and deployment only on chains supporting EIP-1153 for the transient reentrancy guard.
View stderr
[codex:788412] OpenAI Codex v0.77.0 (research preview)
[codex:788412] --------
[codex:788412] workdir: /tmp/codex-multi-ywane5ur
[codex:788412] model: gpt-5.2-codex
[codex:788412] provider: openai
[codex:788412] approval: never
[codex:788412] sandbox: read-only
[codex:788412] reasoning effort: xhigh
[codex:788412] reasoning summaries: auto
[codex:788412] session id: 019b6a53-1050-7583-a7d9-7c0613687438
[codex:788412] --------
[codex:788412] user
[codex:788412] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:788412] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:788412] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:788412] 
[codex:788412] Scope rules:
[codex:788412] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:788412] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:788412] 
[codex:788412] Output MUST be valid JSON matching the provided schema.
[codex:788412] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:788412] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:788412] 
[codex:788412] Output constraints (IMPORTANT):
[codex:788412] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:788412] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:788412] mcp startup: no servers
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Preparing to read AUDIT_BUNDLE.txt**
[codex:788412] exec
[codex:788412] /bin/bash -lc ls in /tmp/codex-multi-ywane5ur succeeded in 6ms:
[codex:788412] AUDIT_BUNDLE.txt
[codex:788412] codex-output-schema.json
[codex:788412] contracts
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Reading AUDIT_BUNDLE.txt**
[codex:788412] exec
[codex:788412] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-ywane5ur succeeded in 5ms:
[codex:788412] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:788412] 
[codex:788412] ================================================================================
[codex:788412] FILE: contracts/contracts/Treasury.sol
[codex:788412] ================================================================================
[codex:788412] // SPDX-License-Identifier: MIT
[codex:788412] 
[codex:788412] pragma solidity 0.8.24;
[codex:788412] 
[codex:788412] import {Initializable} from "./dependencies/openzeppelin-upgradeable/proxy/utils/Initializable.sol";
[codex:788412] import {IERC20} from "./dependencies/openzeppelin/token/ERC20/IERC20.sol";
[codex:788412] import {ReentrancyGuardDeprecated} from "./utils/ReentrancyGuardDeprecated.sol";
[codex:788412] import {ReentrancyGuardTransient} from "./utils/ReentrancyGuardTransient.sol";
[codex:788412] import {SafeERC20} from "./dependencies/openzeppelin/token/ERC20/utils/SafeERC20.sol";
[codex:788412] import {Manageable} from "./access/Manageable.sol";
[codex:788412] import {IVPool} from "./interfaces/external/IVPool.sol";
[codex:788412] import {IPoolRewards} from "./interfaces/external/IPoolRewards.sol";
[codex:788412] import {IDepositToken} from "./interfaces/IDepositToken.sol";
[codex:788412] import {IPool} from "./interfaces/IPool.sol";
[codex:788412] import {TreasuryStorageV1} from "./storage/TreasuryStorage.sol";
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Identifying first-party files for audit**
[codex:788412] 
[codex:788412] I’m focusing on scanning only first-party code in the bundle for vulnerabilities like reentrancy and access control, filtering out third-party dependencies such as OpenZeppelin. I want to confirm which contracts are first-party by scanning the AUDIT_BUNDLE.txt, especially Treasury and Manageable, and I plan to use ripgrep to locate all first-party file paths to audit everything thoroughly.
[codex:788412] exec
[codex:788412] /bin/bash -lc 'rg --no-heading -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-ywane5ur succeeded in 7ms:
[codex:788412] 4:FILE: contracts/contracts/Treasury.sol
[codex:788412] 110:FILE: contracts/contracts/access/Manageable.sol
[codex:788412] 193:FILE: contracts/contracts/dependencies/@layerzerolabs/solidity-examples/contracts-upgradeable/token/oft/IOFTCoreUpgradeable.sol
[codex:788412] 267:FILE: contracts/contracts/dependencies/@layerzerolabs/solidity-examples/contracts-upgradeable/token/oft/composable/IComposableOFTCoreUpgradeable.sol
[codex:788412] 330:FILE: contracts/contracts/dependencies/@layerzerolabs/solidity-examples/contracts-upgradeable/token/oft/composable/IOFTReceiverUpgradeable.sol
[codex:788412] 357:FILE: contracts/contracts/dependencies/openzeppelin/token/ERC20/IERC20.sol
[codex:788412] 442:FILE: contracts/contracts/dependencies/openzeppelin/token/ERC20/extensions/IERC20Metadata.sol
[codex:788412] 473:FILE: contracts/contracts/dependencies/openzeppelin/token/ERC20/utils/SafeERC20.sol
[codex:788412] 575:FILE: contracts/contracts/dependencies/openzeppelin/utils/Address.sol
[codex:788412] 801:FILE: contracts/contracts/dependencies/openzeppelin/utils/Context.sol
[codex:788412] 829:FILE: contracts/contracts/dependencies/openzeppelin/utils/TransientSlot.sol
[codex:788412] 1015:FILE: contracts/contracts/dependencies/openzeppelin-upgradeable/proxy/utils/Initializable.sol
[codex:788412] 1168:FILE: contracts/contracts/dependencies/openzeppelin-upgradeable/utils/AddressUpgradeable.sol
[codex:788412] 1367:FILE: contracts/contracts/dependencies/openzeppelin-upgradeable/utils/introspection/IERC165Upgradeable.sol
[codex:788412] 1396:FILE: contracts/contracts/dependencies/stargate-protocol/interfaces/IStargateComposer.sol
[codex:788412] 1449:FILE: contracts/contracts/dependencies/stargate-protocol/interfaces/IStargateReceiver.sol
[codex:788412] 1467:FILE: contracts/contracts/dependencies/stargate-protocol/interfaces/IStargateRouter.sol
[codex:788412] 1546:FILE: contracts/contracts/interfaces/ICrossChainDispatcher.sol
[codex:788412] 1601:FILE: contracts/contracts/interfaces/IDebtToken.sol
[codex:788412] 1655:FILE: contracts/contracts/interfaces/IDepositToken.sol
[codex:788412] 
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Analyzing first-party contract vulnerabilities**
[codex:788412] 
[codex:788412] I'm carefully reviewing Treasury and related first-party contracts to identify security issues. I'm focusing on permission checks, reentrancy risks, upgradeability patterns, and interactions with trusted tokens. There are nuanced concerns like potential reentrancy between claimFromVesper and pull, plus deployment risks tied to initializer exposure and reliance on an external operator contract for message sender spoofing. Still, many risks rely on trusted components or deployment practices. Overall, I find mostly low-severity or design-level considerations rather than direct exploits.
[codex:788412] thinking
[codex:788412] **Planning full file inspection in segments**
[codex:788412] 
[codex:788412] I'm preparing to read the entire 2322-line file in manageable chunks using commands like sed to ensure no part is missed. Splitting into about five segments of 500 lines each seems reasonable to cover everything methodically without overwhelming the interface. This way, I can confirm there are no hidden or unexamined sections before concluding.
[codex:788412] exec
[codex:788412] /bin/bash -lc "sed -n '1,500p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ywane5ur succeeded in 5ms:
[codex:788412] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:788412] 
[codex:788412] ================================================================================
[codex:788412] FILE: contracts/contracts/Treasury.sol
[codex:788412] ================================================================================
[codex:788412] // SPDX-License-Identifier: MIT
[codex:788412] 
[codex:788412] pragma solidity 0.8.24;
[codex:788412] 
[codex:788412] import {Initializable} from "./dependencies/openzeppelin-upgradeable/proxy/utils/Initializable.sol";
[codex:788412] import {IERC20} from "./dependencies/openzeppelin/token/ERC20/IERC20.sol";
[codex:788412] import {ReentrancyGuardDeprecated} from "./utils/ReentrancyGuardDeprecated.sol";
[codex:788412] import {ReentrancyGuardTransient} from "./utils/ReentrancyGuardTransient.sol";
[codex:788412] import {SafeERC20} from "./dependencies/openzeppelin/token/ERC20/utils/SafeERC20.sol";
[codex:788412] import {Manageable} from "./access/Manageable.sol";
[codex:788412] import {IVPool} from "./interfaces/external/IVPool.sol";
[codex:788412] import {IPoolRewards} from "./interfaces/external/IPoolRewards.sol";
[codex:788412] import {IDepositToken} from "./interfaces/IDepositToken.sol";
[codex:788412] import {IPool} from "./interfaces/IPool.sol";
[codex:788412] import {TreasuryStorageV1} from "./storage/TreasuryStorage.sol";
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Requesting additional content**
[codex:788412] exec
[codex:788412] /bin/bash -lc "sed -n '501,1000p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ywane5ur succeeded in 5ms:
[codex:788412] 
[codex:788412]     function safeTransferFrom(
[codex:788412]         IERC20 token,
[codex:788412]         address from,
[codex:788412]         address to,
[codex:788412]         uint256 value
[codex:788412]     ) internal {
[codex:788412]         _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
[codex:788412]     }
[codex:788412] 
[codex:788412]     /**
[codex:788412]      * @dev Deprecated. This function has issues similar to the ones found in
[codex:788412]      * {IERC20-approve}, and its usage is discouraged.
[codex:788412]      *
[codex:788412]      * Whenever possible, use {safeIncreaseAllowance} and
[codex:788412]      * {safeDecreaseAllowance} instead.
[codex:788412]      */
[codex:788412]     function safeApprove(
[codex:788412]         IERC20 token,
[codex:788412]         address spender,
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Continuing analysis**
[codex:788412] exec
[codex:788412] /bin/bash -lc "sed -n '1001,1500p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ywane5ur succeeded in 6ms:
[codex:788412]         }
[codex:788412]     }
[codex:788412] 
[codex:788412]     /**
[codex:788412]      * @dev Store `value` at location `slot` in transient storage.
[codex:788412]      */
[codex:788412]     function tstore(Int256Slot slot, int256 value) internal {
[codex:788412]         assembly ("memory-safe") {
[codex:788412]             tstore(slot, value)
[codex:788412]         }
[codex:788412]     }
[codex:788412] }
[codex:788412] 
[codex:788412] ================================================================================
[codex:788412] FILE: contracts/contracts/dependencies/openzeppelin-upgradeable/proxy/utils/Initializable.sol
[codex:788412] ================================================================================
[codex:788412] // SPDX-License-Identifier: MIT
[codex:788412] // OpenZeppelin Contracts (last updated v4.6.0) (proxy/utils/Initializable.sol)
[codex:788412] 
[codex:788412] pragma solidity ^0.8.2;
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Continuing process**
[codex:788412] exec
[codex:788412] /bin/bash -lc "sed -n '1501,2000p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ywane5ur succeeded in 6ms:
[codex:788412]         bytes calldata _to,
[codex:788412]         lzTxObj memory _lzTxParams
[codex:788412]     ) external payable;
[codex:788412] 
[codex:788412]     function instantRedeemLocal(uint16 _srcPoolId, uint256 _amountLP, address _to) external returns (uint256);
[codex:788412] 
[codex:788412]     function redeemLocal(
[codex:788412]         uint16 _dstChainId,
[codex:788412]         uint256 _srcPoolId,
[codex:788412]         uint256 _dstPoolId,
[codex:788412]         address payable _refundAddress,
[codex:788412]         uint256 _amountLP,
[codex:788412]         bytes calldata _to,
[codex:788412]         lzTxObj memory _lzTxParams
[codex:788412]     ) external payable;
[codex:788412] 
[codex:788412]     function sendCredits(
[codex:788412]         uint16 _dstChainId,
[codex:788412]         uint256 _srcPoolId,
[codex:788412]         uint256 _dstPoolId,
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Continuing process**
[codex:788412] exec
[codex:788412] /bin/bash -lc "sed -n '2001,2322p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-ywane5ur succeeded in 6ms:
[codex:788412] import {IProxyOFT} from "./IProxyOFT.sol";
[codex:788412] 
[codex:788412] interface IQuoter {
[codex:788412]     function quoteCrossChainFlashRepayNativeFee(
[codex:788412]         IProxyOFT proxyOFT_,
[codex:788412]         bytes calldata lzArgs_
[codex:788412]     ) external view returns (uint256 _nativeFee);
[codex:788412] 
[codex:788412]     function quoteCrossChainLeverageNativeFee(
[codex:788412]         IProxyOFT proxyOFT_,
[codex:788412]         bytes calldata lzArgs_
[codex:788412]     ) external view returns (uint256 _nativeFee);
[codex:788412] 
[codex:788412]     function quoteLeverageCallbackNativeFee(uint16 dstChainId_) external view returns (uint256 _callbackTxNativeFee);
[codex:788412] 
[codex:788412]     function quoteFlashRepayCallbackNativeFee(uint16 dstChainId_) external view returns (uint256 _callbackTxNativeFee);
[codex:788412] 
[codex:788412]     function getFlashRepaySwapAndCallbackLzArgs(
[codex:788412]         uint16 srcChainId_,
[codex:788412]         uint16 dstChainId_
[codex:788412] 
[codex:788412] thinking
[codex:788412] **Summarizing audit results**
[codex:788412] exec
[codex:788412] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-ywane5ur succeeded in 5ms:
[codex:788412] {"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:788412] 
[codex:788412] thinking
[codex:788412] **Preparing final JSON summary**
[codex:788412] codex
[codex:788412] {"no_findings":true,"summary":"No exploitable vulnerabilities found in the audited first-party contracts. Residual risks/assumptions not validated: trusted Pool/Governor/Operator roles, correct proxy initialization at deployment, and deployment only on chains supporting EIP-1153 for the transient reentrancy guard.","findings":[]}
[codex:788412] tokens used
[codex:788412] 64,349
[codex:788412] {"no_findings":true,"summary":"No exploitable vulnerabilities found in the audited first-party contracts. Residual risks/assumptions not validated: trusted Pool/Governor/Operator roles, correct proxy initialization at deployment, and deployment only on chains supporting EIP-1153 for the transient reentrancy guard.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-29T13:39:26.147890+00:00",
        "returncode": 0
    },
    "summary": "No exploitable vulnerabilities found in the audited first-party contracts. Residual risks/assumptions not validated: trusted Pool/Governor/Operator roles, correct proxy initialization at deployment, and deployment only on chains supporting EIP-1153 for the transient reentrancy guard.",
    "raw_final": {
        "summary": "No exploitable vulnerabilities found in the audited first-party contracts. Residual risks/assumptions not validated: trusted Pool/Governor/Operator roles, correct proxy initialization at deployment, and deployment only on chains supporting EIP-1153 for the transient reentrancy guard.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
17
EXT*/BALANCE
4
Total opcodes
3010
Flags
call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLVALUE
00000006: DUP1
00000007: ISZERO
00000008: PUSH2 0x000f
0000000b: JUMPI
0000000c: PUSH0
0000000d: DUP1
0000000e: REVERT
0000000f: JUMPDEST
00000010: POP
00000011: PUSH1 0x04
00000013: CALLDATASIZE
00000014: LT
00000015: PUSH2 0x0085
00000018: JUMPI
00000019: PUSH0
0000001a: CALLDATALOAD
0000001b: PUSH1 0xe0
0000001d: SHR
0000001e: DUP1
0000001f: PUSH4 0xc4d66de8
00000024: GT
00000025: PUSH2 0x0058
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xc4d66de8
0000002f: EQ
00000030: PUSH2 0x00de
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf2d5d56b
0000003a: EQ
0000003b: PUSH2 0x00f1
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf4ef8fcc
00000045: EQ
00000046: PUSH2 0x0104
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xffa1ad74
00000050: EQ
00000051: PUSH2 0x0117
00000054: JUMPI
00000055: PUSH0
00000056: DUP1
00000057: REVERT
00000058: JUMPDEST
00000059: DUP1
0000005a: PUSH4 0x0c340a24
0000005f: EQ
00000060: PUSH2 0x0089
00000063: JUMPI
00000064: DUP1
00000065: PUSH4 0x16f0115b
0000006a: EQ
0000006b: PUSH2 0x00ae
0000006e: JUMPI
0000006f: DUP1
00000070: PUSH4 0x4ddaf8f2
00000075: EQ
00000076: PUSH2 0x00c1
00000079: JUMPI
0000007a: DUP1
0000007b: PUSH4 0xafcff50f
00000080: EQ
00000081: PUSH2 0x00d6
00000084: JUMPI
00000085: JUMPDEST
00000086: PUSH0
00000087: DUP1
00000088: REVERT
00000089: JUMPDEST
0000008a: PUSH2 0x0091
0000008d: PUSH2 0x0148
00000090: JUMP
00000091: JUMPDEST
00000092: PUSH1 0x40
00000094: MLOAD
00000095: PUSH1 0x01
00000097: PUSH1 0x01
00000099: PUSH1 0xa0
0000009b: SHL
0000009c: SUB
0000009d: SWAP1
0000009e: SWAP2
0000009f: AND
000000a0: DUP2
000000a1: MSTORE
000000a2: PUSH1 0x20
000000a4: ADD
000000a5: JUMPDEST
000000a6: PUSH1 0x40
000000a8: MLOAD
000000a9: DUP1
000000aa: SWAP2
000000ab: SUB
000000ac: SWAP1
000000ad: RETURN
000000ae: JUMPDEST
000000af: PUSH1 0x02
000000b1: SLOAD
000000b2: PUSH2 0x0091
000000b5: SWAP1
000000b6: PUSH1 0x01
000000b8: PUSH1 0x01
000000ba: PUSH1 0xa0
000000bc: SHL
000000bd: SUB
000000be: AND
000000bf: DUP2
000000c0: JUMP
000000c1: JUMPDEST
000000c2: PUSH2 0x00d4
000000c5: PUSH2 0x00cf
000000c8: CALLDATASIZE
000000c9: PUSH1 0x04
000000cb: PUSH2 0x0ede
000000ce: JUMP
000000cf: JUMPDEST
000000d0: PUSH2 0x01b8
000000d3: JUMP
000000d4: JUMPDEST
000000d5: STOP
000000d6: JUMPDEST
000000d7: PUSH2 0x0091
000000da: PUSH2 0x03a7
000000dd: JUMP
000000de: JUMPDEST
000000df: PUSH2 0x00d4
000000e2: PUSH2 0x00ec
000000e5: CALLDATASIZE
000000e6: PUSH1 0x04
000000e8: PUSH2 0x0ede
000000eb: JUMP
000000ec: JUMPDEST
000000ed: PUSH2 0x03ee
000000f0: JUMP
000000f1: JUMPDEST
000000f2: PUSH2 0x00d4
000000f5: PUSH2 0x00ff
000000f8: CALLDATASIZE
000000f9: PUSH1 0x04
000000fb: PUSH2 0x0ef9
000000fe: JUMP
000000ff: JUMPDEST
00000100: PUSH2 0x0462
00000103: JUMP
00000104: JUMPDEST
00000105: PUSH2 0x00d4
00000108: PUSH2 0x0112
0000010b: CALLDATASIZE
0000010c: PUSH1 0x04
0000010e: PUSH2 0x0f23
00000111: JUMP
00000112: JUMPDEST
00000113: PUSH2 0x05c3
00000116: JUMP
00000117: JUMPDEST
00000118: PUSH2 0x013b
0000011b: PUSH1 0x40
0000011d: MLOAD
0000011e: DUP1
0000011f: PUSH1 0x40
00000121: ADD
00000122: PUSH1 0x40
00000124: MSTORE
00000125: DUP1
00000126: PUSH1 0x05
00000128: DUP2
00000129: MSTORE
0000012a: PUSH1 0x20
0000012c: ADD
0000012d: PUSH5 0x1897199719
00000133: PUSH1 0xd9
00000135: SHL
00000136: DUP2
00000137: MSTORE
00000138: POP
00000139: DUP2
0000013a: JUMP
0000013b: JUMPDEST
0000013c: PUSH1 0x40
0000013e: MLOAD
0000013f: PUSH2 0x00a5
00000142: SWAP2
00000143: SWAP1
00000144: PUSH2 0x0f7c
00000147: JUMP
00000148: JUMPDEST
00000149: PUSH1 0x02
0000014b: SLOAD
0000014c: PUSH1 0x40
0000014e: DUP1
0000014f: MLOAD
00000150: PUSH4 0x030d0289
00000155: PUSH1 0xe2
00000157: SHL
00000158: DUP2
00000159: MSTORE
0000015a: SWAP1
0000015b: MLOAD
0000015c: PUSH0
0000015d: SWAP3
0000015e: PUSH1 0x01
00000160: PUSH1 0x01
00000162: PUSH1 0xa0
00000164: SHL
00000165: SUB
00000166: AND
00000167: SWAP2
00000168: PUSH4 0x0c340a24
0000016d: SWAP2
0000016e: PUSH1 0x04
00000170: DUP1
00000171: DUP4
00000172: ADD
00000173: SWAP3
00000174: PUSH1 0x20
00000176: SWAP3
00000177: SWAP2
00000178: SWAP1
00000179: DUP3
0000017a: SWAP1
0000017b: SUB
0000017c: ADD
0000017d: DUP2
0000017e: DUP7
0000017f: GAS
00000180: STATICCALL
00000181: ISZERO
00000182: DUP1
00000183: ISZERO
00000184: PUSH2 0x018f
00000187: JUMPI
00000188: RETURNDATASIZE
00000189: PUSH0
0000018a: DUP1
0000018b: RETURNDATACOPY
0000018c: RETURNDATASIZE
0000018d: PUSH0
0000018e: REVERT
0000018f: JUMPDEST
00000190: POP
00000191: POP
00000192: POP
00000193: POP
00000194: PUSH1 0x40
00000196: MLOAD
00000197: RETURNDATASIZE
00000198: PUSH1 0x1f
0000019a: NOT
0000019b: PUSH1 0x1f
0000019d: DUP3
0000019e: ADD
0000019f: AND
000001a0: DUP3
000001a1: ADD
000001a2: DUP1
000001a3: PUSH1 0x40
000001a5: MSTORE
000001a6: POP
000001a7: DUP2
000001a8: ADD
000001a9: SWAP1
000001aa: PUSH2 0x01b3
000001ad: SWAP2
000001ae: SWAP1
000001af: PUSH2 0x0fb9
000001b2: JUMP
000001b3: JUMPDEST
000001b4: SWAP1
000001b5: POP
000001b6: SWAP1
000001b7: JUMP
000001b8: JUMPDEST
000001b9: PUSH1 0x02
000001bb: SLOAD
000001bc: PUSH1 0x01
000001be: PUSH1 0x01
000001c0: PUSH1 0xa0
000001c2: SHL
000001c3: SUB
000001c4: AND
000001c5: PUSH2 0x01cc
000001c8: PUSH2 0x093e
000001cb: JUMP
000001cc: JUMPDEST
000001cd: PUSH1 0x01
000001cf: PUSH1 0x01
000001d1: PUSH1 0xa0
000001d3: SHL
000001d4: SUB
000001d5: AND
000001d6: EQ
000001d7: PUSH2 0x01f3
000001da: JUMPI
000001db: PUSH1 0x40
000001dd: MLOAD
000001de: PUSH4 0x531f2aa9
000001e3: PUSH1 0xe1
000001e5: SHL
000001e6: DUP2
000001e7: MSTORE
000001e8: PUSH1 0x04
000001ea: ADD
000001eb: PUSH1 0x40
000001ed: MLOAD
000001ee: DUP1
000001ef: SWAP2
000001f0: SUB
000001f1: SWAP1
000001f2: REVERT
000001f3: JUMPDEST
000001f4: PUSH1 0x01
000001f6: PUSH1 0x01
000001f8: PUSH1 0xa0
000001fa: SHL
000001fb: SUB
000001fc: DUP2
000001fd: AND
000001fe: PUSH2 0x021a
00000201: JUMPI
00000202: PUSH1 0x40
00000204: MLOAD
00000205: PUSH4 0xfb7566d7
0000020a: PUSH1 0xe0
0000020c: SHL
0000020d: DUP2
0000020e: MSTORE
0000020f: PUSH1 0x04
00000211: ADD
00000212: PUSH1 0x40
00000214: MLOAD
00000215: DUP1
00000216: SWAP2
00000217: SUB
00000218: SWAP1
00000219: REVERT
0000021a: JUMPDEST
0000021b: PUSH1 0x02
0000021d: SLOAD
0000021e: PUSH1 0x40
00000220: DUP1
00000221: MLOAD
00000222: PUSH4 0xfb01600d
00000227: PUSH1 0xe0
00000229: SHL
0000022a: DUP2
0000022b: MSTORE
0000022c: SWAP1
0000022d: MLOAD
0000022e: PUSH0
0000022f: SWAP3
00000230: PUSH1 0x01
00000232: PUSH1 0x01
00000234: PUSH1 0xa0
00000236: SHL
00000237: SUB
00000238: AND
00000239: SWAP2
0000023a: PUSH4 0xfb01600d
0000023f: SWAP2
00000240: PUSH1 0x04
00000242: DUP1
00000243: DUP4
00000244: ADD
00000245: SWAP3
00000246: DUP7
00000247: SWAP3
00000248: SWAP2
00000249: SWAP1
0000024a: DUP3
0000024b: SWAP1
0000024c: SUB
0000024d: ADD
0000024e: DUP2
0000024f: DUP7
00000250: GAS
00000251: STATICCALL
00000252: ISZERO
00000253: DUP1
00000254: ISZERO
00000255: PUSH2 0x0260
00000258: JUMPI
00000259: RETURNDATASIZE
0000025a: PUSH0
0000025b: DUP1
0000025c: RETURNDATACOPY
0000025d: RETURNDATASIZE
0000025e: PUSH0
0000025f: REVERT
00000260: JUMPDEST
00000261: POP
00000262: POP
00000263: POP
00000264: POP
00000265: PUSH1 0x40
00000267: MLOAD
00000268: RETURNDATASIZE
00000269: PUSH0
0000026a: DUP3
0000026b: RETURNDATACOPY
0000026c: PUSH1 0x1f
0000026e: RETURNDATASIZE
0000026f: SWAP1
00000270: DUP2
00000271: ADD
00000272: PUSH1 0x1f
00000274: NOT
00000275: AND
00000276: DUP3
00000277: ADD
00000278: PUSH1 0x40
0000027a: MSTORE
0000027b: PUSH2 0x0287
0000027e: SWAP2
0000027f: SWAP1
00000280: DUP2
00000281: ADD
00000282: SWAP1
00000283: PUSH2 0x0fe8
00000286: JUMP
00000287: JUMPDEST
00000288: DUP1
00000289: MLOAD
0000028a: SWAP1
0000028b: SWAP2
0000028c: POP
0000028d: PUSH0
0000028e: JUMPDEST
0000028f: DUP2
00000290: DUP2
00000291: LT
00000292: ISZERO
00000293: PUSH2 0x03a1
00000296: JUMPI
00000297: PUSH0
00000298: DUP4
00000299: DUP3
0000029a: DUP2
0000029b: MLOAD
0000029c: DUP2
0000029d: LT
0000029e: PUSH2 0x02a9
000002a1: JUMPI
000002a2: PUSH2 0x02a9
000002a5: PUSH2 0x10a8
000002a8: JUMP
000002a9: JUMPDEST
000002aa: PUSH1 0x20
000002ac: MUL
000002ad: PUSH1 0x20
000002af: ADD
000002b0: ADD
000002b1: MLOAD
000002b2: PUSH1 0x01
000002b4: PUSH1 0x01
000002b6: PUSH1 0xa0
000002b8: SHL
000002b9: SUB
000002ba: AND
000002bb: PUSH4 0x6f307dc3
000002c0: PUSH1 0x40
000002c2: MLOAD
000002c3: DUP2
000002c4: PUSH4 0xffffffff
000002c9: AND
000002ca: PUSH1 0xe0
000002cc: SHL
000002cd: DUP2
000002ce: MSTORE
000002cf: PUSH1 0x04
000002d1: ADD
000002d2: PUSH1 0x20
000002d4: PUSH1 0x40
000002d6: MLOAD
000002d7: DUP1
000002d8: DUP4
000002d9: SUB
000002da: DUP2
000002db: DUP7
000002dc: GAS
000002dd: STATICCALL
000002de: ISZERO
000002df: DUP1
000002e0: ISZERO
000002e1: PUSH2 0x02ec
000002e4: JUMPI
000002e5: RETURNDATASIZE
000002e6: PUSH0
000002e7: DUP1
000002e8: RETURNDATACOPY
000002e9: RETURNDATASIZE
000002ea: PUSH0
000002eb: REVERT
000002ec: JUMPDEST
000002ed: POP
000002ee: POP
000002ef: POP
000002f0: POP
000002f1: PUSH1 0x40
000002f3: MLOAD
000002f4: RETURNDATASIZE
000002f5: PUSH1 0x1f
000002f7: NOT
000002f8: PUSH1 0x1f
000002fa: DUP3
000002fb: ADD
000002fc: AND
000002fd: DUP3
000002fe: ADD
000002ff: DUP1
00000300: PUSH1 0x40
00000302: MSTORE
00000303: POP
00000304: DUP2
00000305: ADD
00000306: SWAP1
00000307: PUSH2 0x0310
0000030a: SWAP2
0000030b: SWAP1
0000030c: PUSH2 0x0fb9
0000030f: JUMP
00000310: JUMPDEST
00000311: PUSH1 0x40
00000313: MLOAD
00000314: PUSH4 0x70a08231
00000319: PUSH1 0xe0
0000031b: SHL
0000031c: DUP2
0000031d: MSTORE
0000031e: ADDRESS
0000031f: PUSH1 0x04
00000321: DUP3
00000322: ADD
00000323: MSTORE
00000324: SWAP1
00000325: SWAP2
00000326: POP
00000327: PUSH0
00000328: SWAP1
00000329: PUSH1 0x01
0000032b: PUSH1 0x01
0000032d: PUSH1 0xa0
0000032f: SHL
00000330: SUB
00000331: DUP4
00000332: AND
00000333: SWAP1
00000334: PUSH4 0x70a08231
00000339: SWAP1
0000033a: PUSH1 0x24
0000033c: ADD
0000033d: PUSH1 0x20
0000033f: PUSH1 0x40
00000341: MLOAD
00000342: DUP1
00000343: DUP4
00000344: SUB
00000345: DUP2
00000346: DUP7
00000347: GAS
00000348: STATICCALL
00000349: ISZERO
0000034a: DUP1
0000034b: ISZERO
0000034c: PUSH2 0x0357
0000034f: JUMPI
00000350: RETURNDATASIZE
00000351: PUSH0
00000352: DUP1
00000353: RETURNDATACOPY
00000354: RETURNDATASIZE
00000355: PUSH0
00000356: REVERT
00000357: JUMPDEST
00000358: POP
00000359: POP
0000035a: POP
0000035b: POP
0000035c: PUSH1 0x40
0000035e: MLOAD
0000035f: RETURNDATASIZE
00000360: PUSH1 0x1f
00000362: NOT
00000363: PUSH1 0x1f
00000365: DUP3
00000366: ADD
00000367: AND
00000368: DUP3
00000369: ADD
0000036a: DUP1
0000036b: PUSH1 0x40
0000036d: MSTORE
0000036e: POP
0000036f: DUP2
00000370: ADD
00000371: SWAP1
00000372: PUSH2 0x037b
00000375: SWAP2
00000376: SWAP1
00000377: PUSH2 0x10bc
0000037a: JUMP
0000037b: JUMPDEST
0000037c: SWAP1
0000037d: POP
0000037e: DUP1
0000037f: ISZERO
00000380: PUSH2 0x0397
00000383: JUMPI
00000384: PUSH2 0x0397
00000387: PUSH1 0x01
00000389: PUSH1 0x01
0000038b: PUSH1 0xa0
0000038d: SHL
0000038e: SUB
0000038f: DUP4
00000390: AND
00000391: DUP8
00000392: DUP4
00000393: PUSH2 0x0a3c
00000396: JUMP
00000397: JUMPDEST
00000398: POP
00000399: POP
0000039a: PUSH1 0x01
0000039c: ADD
0000039d: PUSH2 0x028e
000003a0: JUMP
000003a1: JUMPDEST
000003a2: POP
000003a3: POP
000003a4: POP
000003a5: POP
000003a6: JUMP
000003a7: JUMPDEST
000003a8: PUSH1 0x02
000003aa: SLOAD
000003ab: PUSH1 0x40
000003ad: DUP1
000003ae: MLOAD
000003af: PUSH4 0xafcff50f
000003b4: PUSH1 0xe0
000003b6: SHL
000003b7: DUP2
000003b8: MSTORE
000003b9: SWAP1
000003ba: MLOAD
000003bb: PUSH0
000003bc: SWAP3
000003bd: PUSH1 0x01
000003bf: PUSH1 0x01
000003c1: PUSH1 0xa0
000003c3: SHL
000003c4: SUB
000003c5: AND
000003c6: SWAP2
000003c7: PUSH4 0xafcff50f
000003cc: SWAP2
000003cd: PUSH1 0x04
000003cf: DUP1
000003d0: DUP4
000003d1: ADD
000003d2: SWAP3
000003d3: PUSH1 0x20
000003d5: SWAP3
000003d6: SWAP2
000003d7: SWAP1
000003d8: DUP3
000003d9: SWAP1
000003da: SUB
000003db: ADD
000003dc: DUP2
000003dd: DUP7
000003de: GAS
000003df: STATICCALL
000003e0: ISZERO
000003e1: DUP1
000003e2: ISZERO
000003e3: PUSH2 0x018f
000003e6: JUMPI
000003e7: RETURNDATASIZE
000003e8: PUSH0
000003e9: DUP1
000003ea: RETURNDATACOPY
000003eb: RETURNDATASIZE
000003ec: PUSH0
000003ed: REVERT
000003ee: JUMPDEST
000003ef: PUSH0
000003f0: PUSH2 0x03f9
000003f3: PUSH1 0x01
000003f5: PUSH2 0x0a93
000003f8: JUMP
000003f9: JUMPDEST
000003fa: SWAP1
000003fb: POP
000003fc: DUP1
000003fd: ISZERO
000003fe: PUSH2 0x0410
00000401: JUMPI
00000402: PUSH0
00000403: DUP1
00000404: SLOAD
00000405: PUSH2 0xff00
00000408: NOT
00000409: AND
0000040a: PUSH2 0x0100
0000040d: OR
0000040e: SWAP1
0000040f: SSTORE
00000410: JUMPDEST
00000411: PUSH2 0x0419
00000414: DUP3
00000415: PUSH2 0x0b25
00000418: JUMP
00000419: JUMPDEST
0000041a: DUP1
0000041b: ISZERO
0000041c: PUSH2 0x045e
0000041f: JUMPI
00000420: PUSH0
00000421: DUP1
00000422: SLOAD
00000423: PUSH2 0xff00
00000426: NOT
00000427: AND
00000428: SWAP1
00000429: SSTORE
0000042a: PUSH1 0x40
0000042c: MLOAD
0000042d: PUSH1 0x01
0000042f: DUP2
00000430: MSTORE
00000431: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498
00000452: SWAP1
00000453: PUSH1 0x20
00000455: ADD
00000456: PUSH1 0x40
00000458: MLOAD
00000459: DUP1
0000045a: SWAP2
0000045b: SUB
0000045c: SWAP1
0000045d: LOG1
0000045e: JUMPDEST
0000045f: POP
00000460: POP
00000461: JUMP
00000462: JUMPDEST
00000463: PUSH2 0x046a
00000466: PUSH2 0x0bd8
00000469: JUMP
0000046a: JUMPDEST
0000046b: PUSH0
0000046c: PUSH2 0x0473
0000046f: PUSH2 0x093e
00000472: JUMP
00000473: JUMPDEST
00000474: PUSH1 0x02
00000476: SLOAD
00000477: PUSH1 0x40
00000479: MLOAD
0000047a: PUSH4 0x3e25dee1
0000047f: PUSH1 0xe2
00000481: SHL
00000482: DUP2
00000483: MSTORE
00000484: PUSH1 0x01
00000486: PUSH1 0x01
00000488: PUSH1 0xa0
0000048a: SHL
0000048b: SUB
0000048c: DUP1
0000048d: DUP5
0000048e: AND
0000048f: PUSH1 0x04
00000491: DUP4
00000492: ADD
00000493: MSTORE
00000494: SWAP3
00000495: SWAP4
00000496: POP
00000497: SWAP2
00000498: AND
00000499: SWAP1
0000049a: PUSH4 0xf8977b84
0000049f: SWAP1
000004a0: PUSH1 0x24
000004a2: ADD
000004a3: PUSH1 0x20
000004a5: PUSH1 0x40
000004a7: MLOAD
000004a8: DUP1
000004a9: DUP4
000004aa: SUB
000004ab: DUP2
000004ac: DUP7
000004ad: GAS
000004ae: STATICCALL
000004af: ISZERO
000004b0: DUP1
000004b1: ISZERO
000004b2: PUSH2 0x04bd
000004b5: JUMPI
000004b6: RETURNDATASIZE
000004b7: PUSH0
000004b8: DUP1
000004b9: RETURNDATACOPY
000004ba: RETURNDATASIZE
000004bb: PUSH0
000004bc: REVERT
000004bd: JUMPDEST
000004be: POP
000004bf: POP
000004c0: POP
000004c1: POP
000004c2: PUSH1 0x40
000004c4: MLOAD
000004c5: RETURNDATASIZE
000004c6: PUSH1 0x1f
000004c8: NOT
000004c9: PUSH1 0x1f
000004cb: DUP3
000004cc: ADD
000004cd: AND
000004ce: DUP3
000004cf: ADD
000004d0: DUP1
000004d1: PUSH1 0x40
000004d3: MSTORE
000004d4: POP
000004d5: DUP2
000004d6: ADD
000004d7: SWAP1
000004d8: PUSH2 0x04e1
000004db: SWAP2
000004dc: SWAP1
000004dd: PUSH2 0x10d3
000004e0: JUMP
000004e1: JUMPDEST
000004e2: PUSH2 0x04fe
000004e5: JUMPI
000004e6: PUSH1 0x40
000004e8: MLOAD
000004e9: PUSH4 0x26688ebb
000004ee: PUSH1 0xe1
000004f0: SHL
000004f1: DUP2
000004f2: MSTORE
000004f3: PUSH1 0x04
000004f5: ADD
000004f6: PUSH1 0x40
000004f8: MLOAD
000004f9: DUP1
000004fa: SWAP2
000004fb: SUB
000004fc: SWAP1
000004fd: REVERT
000004fe: JUMPDEST
000004ff: PUSH1 0x01
00000501: PUSH1 0x01
00000503: PUSH1 0xa0
00000505: SHL
00000506: SUB
00000507: DUP4
00000508: AND
00000509: PUSH2 0x0525
0000050c: JUMPI
0000050d: PUSH1 0x40
0000050f: MLOAD
00000510: PUSH4 0x4c96446b
00000515: PUSH1 0xe0
00000517: SHL
00000518: DUP2
00000519: MSTORE
0000051a: PUSH1 0x04
0000051c: ADD
0000051d: PUSH1 0x40
0000051f: MLOAD
00000520: DUP1
00000521: SWAP2
00000522: SUB
00000523: SWAP1
00000524: REVERT
00000525: JUMPDEST
00000526: DUP2
00000527: PUSH0
00000528: SUB
00000529: PUSH2 0x0545
0000052c: JUMPI
0000052d: PUSH1 0x40
0000052f: MLOAD
00000530: PUSH4 0x10eb483f
00000535: PUSH1 0xe2
00000537: SHL
00000538: DUP2
00000539: MSTORE
0000053a: PUSH1 0x04
0000053c: ADD
0000053d: PUSH1 0x40
0000053f: MLOAD
00000540: DUP1
00000541: SWAP2
00000542: SUB
00000543: SWAP1
00000544: REVERT
00000545: JUMPDEST
00000546: PUSH2 0x05ba
00000549: DUP4
0000054a: DUP4
0000054b: DUP4
0000054c: PUSH1 0x01
0000054e: PUSH1 0x01
00000550: PUSH1 0xa0
00000552: SHL
00000553: SUB
00000554: AND
00000555: PUSH4 0x6f307dc3
0000055a: PUSH1 0x40
0000055c: MLOAD
0000055d: DUP2
0000055e: PUSH4 0xffffffff
00000563: AND
00000564: PUSH1 0xe0
00000566: SHL
00000567: DUP2
00000568: MSTORE
00000569: PUSH1 0x04
0000056b: ADD
0000056c: PUSH1 0x20
0000056e: PUSH1 0x40
00000570: MLOAD
00000571: DUP1
00000572: DUP4
00000573: SUB
00000574: DUP2
00000575: DUP7
00000576: GAS
00000577: STATICCALL
00000578: ISZERO
00000579: DUP1
0000057a: ISZERO
0000057b: PUSH2 0x0586
0000057e: JUMPI
0000057f: RETURNDATASIZE
00000580: PUSH0
00000581: DUP1
00000582: RETURNDATACOPY
00000583: RETURNDATASIZE
00000584: PUSH0
00000585: REVERT
00000586: JUMPDEST
00000587: POP
00000588: POP
00000589: POP
0000058a: POP
0000058b: PUSH1 0x40
0000058d: MLOAD
0000058e: RETURNDATASIZE
0000058f: PUSH1 0x1f
00000591: NOT
00000592: PUSH1 0x1f
00000594: DUP3
00000595: ADD
00000596: AND
00000597: DUP3
00000598: ADD
00000599: DUP1
0000059a: PUSH1 0x40
0000059c: MSTORE
0000059d: POP
0000059e: DUP2
0000059f: ADD
000005a0: SWAP1
000005a1: PUSH2 0x05aa
000005a4: SWAP2
000005a5: SWAP1
000005a6: PUSH2 0x0fb9
000005a9: JUMP
000005aa: JUMPDEST
000005ab: PUSH1 0x01
000005ad: PUSH1 0x01
000005af: PUSH1 0xa0
000005b1: SHL
000005b2: SUB
000005b3: AND
000005b4: SWAP2
000005b5: SWAP1
000005b6: PUSH2 0x0a3c
000005b9: JUMP
000005ba: JUMPDEST
000005bb: POP
000005bc: PUSH2 0x045e
000005bf: PUSH2 0x0c47
000005c2: JUMP
000005c3: JUMPDEST
000005c4: PUSH2 0x05cb
000005c7: PUSH2 0x0148
000005ca: JUMP
000005cb: JUMPDEST
000005cc: PUSH1 0x01
000005ce: PUSH1 0x01
000005d0: PUSH1 0xa0
000005d2: SHL
000005d3: SUB
000005d4: AND
000005d5: PUSH2 0x05dc
000005d8: PUSH2 0x093e
000005db: JUMP
000005dc: JUMPDEST
000005dd: PUSH1 0x01
000005df: PUSH1 0x01
000005e1: PUSH1 0xa0
000005e3: SHL
000005e4: SUB
000005e5: AND
000005e6: EQ
000005e7: PUSH2 0x0603
000005ea: JUMPI
000005eb: PUSH1 0x40
000005ed: MLOAD
000005ee: PUSH4 0x4b984491
000005f3: PUSH1 0xe1
000005f5: SHL
000005f6: DUP2
000005f7: MSTORE
000005f8: PUSH1 0x04
000005fa: ADD
000005fb: PUSH1 0x40
000005fd: MLOAD
000005fe: DUP1
000005ff: SWAP2
00000600: SUB
00000601: SWAP1
00000602: REVERT
00000603: JUMPDEST
00000604: PUSH0
00000605: DUP3
00000606: PUSH1 0x01
00000608: PUSH1 0x01
0000060a: PUSH1 0xa0
0000060c: SHL
0000060d: SUB
0000060e: AND
0000060f: PUSH4 0x8bc6beb2
00000614: PUSH1 0x40
00000616: MLOAD
00000617: DUP2
00000618: PUSH4 0xffffffff
0000061d: AND
0000061e: PUSH1 0xe0
00000620: SHL
00000621: DUP2
00000622: MSTORE
00000623: PUSH1 0x04
00000625: ADD
00000626: PUSH1 0x20
00000628: PUSH1 0x40
0000062a: MLOAD
0000062b: DUP1
0000062c: DUP4
0000062d: SUB
0000062e: DUP2
0000062f: DUP7
00000630: GAS
00000631: STATICCALL
00000632: ISZERO
00000633: DUP1
00000634: ISZERO
00000635: PUSH2 0x0640
00000638: JUMPI
00000639: RETURNDATASIZE
0000063a: PUSH0
0000063b: DUP1
0000063c: RETURNDATACOPY
0000063d: RETURNDATASIZE
0000063e: PUSH0
0000063f: REVERT
00000640: JUMPDEST
00000641: POP
00000642: POP
00000643: POP
00000644: POP
00000645: PUSH1 0x40
00000647: MLOAD
00000648: RETURNDATASIZE
00000649: PUSH1 0x1f
0000064b: NOT
0000064c: PUSH1 0x1f
0000064e: DUP3
0000064f: ADD
00000650: AND
00000651: DUP3
00000652: ADD
00000653: DUP1
00000654: PUSH1 0x40
00000656: MSTORE
00000657: POP
00000658: DUP2
00000659: ADD
0000065a: SWAP1
0000065b: PUSH2 0x0664
0000065e: SWAP2
0000065f: SWAP1
00000660: PUSH2 0x0fb9
00000663: JUMP
00000664: JUMPDEST
00000665: PUSH1 0x40
00000667: MLOAD
00000668: PUSH4 0x632447c9
0000066d: PUSH1 0xe0
0000066f: SHL
00000670: DUP2
00000671: MSTORE
00000672: ADDRESS
00000673: PUSH1 0x04
00000675: DUP3
00000676: ADD
00000677: MSTORE
00000678: SWAP1
00000679: SWAP2
0000067a: POP
0000067b: PUSH1 0x01
0000067d: PUSH1 0x01
0000067f: PUSH1 0xa0
00000681: SHL
00000682: SUB
00000683: DUP3
00000684: AND
00000685: SWAP1
00000686: PUSH4 0x632447c9
0000068b: SWAP1
0000068c: PUSH1 0x24
0000068e: ADD
0000068f: PUSH0
00000690: PUSH1 0x40
00000692: MLOAD
00000693: DUP1
00000694: DUP4
00000695: SUB
00000696: DUP2
00000697: PUSH0
00000698: DUP8
00000699: DUP1
0000069a: EXTCODESIZE
0000069b: ISZERO
0000069c: DUP1
0000069d: ISZERO
0000069e: PUSH2 0x06a5
000006a1: JUMPI
000006a2: PUSH0
000006a3: DUP1
000006a4: REVERT
000006a5: JUMPDEST
000006a6: POP
000006a7: GAS
000006a8: CALL
000006a9: ISZERO
000006aa: DUP1
000006ab: ISZERO
000006ac: PUSH2 0x06b7
000006af: JUMPI
000006b0: RETURNDATASIZE
000006b1: PUSH0
000006b2: DUP1
000006b3: RETURNDATACOPY
000006b4: RETURNDATASIZE
000006b5: PUSH0
000006b6: REVERT
000006b7: JUMPDEST
000006b8: POP
000006b9: POP
000006ba: PUSH1 0x40
000006bc: MLOAD
000006bd: PUSH4 0xd279c191
000006c2: PUSH1 0xe0
000006c4: SHL
000006c5: DUP2
000006c6: MSTORE
000006c7: ADDRESS
000006c8: PUSH1 0x04
000006ca: DUP3
000006cb: ADD
000006cc: MSTORE
000006cd: PUSH1 0x01
000006cf: PUSH1 0x01
000006d1: PUSH1 0xa0
000006d3: SHL
000006d4: SUB
000006d5: DUP5
000006d6: AND
000006d7: SWAP3
000006d8: POP
000006d9: PUSH4 0xd279c191
000006de: SWAP2
000006df: POP
000006e0: PUSH1 0x24
000006e2: ADD
000006e3: PUSH0
000006e4: PUSH1 0x40
000006e6: MLOAD
000006e7: DUP1
000006e8: DUP4
000006e9: SUB
000006ea: DUP2
000006eb: PUSH0
000006ec: DUP8
000006ed: DUP1
000006ee: EXTCODESIZE
000006ef: ISZERO
000006f0: DUP1
000006f1: ISZERO
000006f2: PUSH2 0x06f9
000006f5: JUMPI
000006f6: PUSH0
000006f7: DUP1
000006f8: REVERT
000006f9: JUMPDEST
000006fa: POP
000006fb: GAS
000006fc: CALL
000006fd: ISZERO
000006fe: DUP1
000006ff: ISZERO
00000700: PUSH2 0x070b
00000703: JUMPI
00000704: RETURNDATASIZE
00000705: PUSH0
00000706: DUP1
00000707: RETURNDATACOPY
00000708: RETURNDATASIZE
00000709: PUSH0
0000070a: REVERT
0000070b: JUMPDEST
0000070c: POP
0000070d: POP
0000070e: POP
0000070f: POP
00000710: PUSH0
00000711: PUSH1 0x02
00000713: PUSH0
00000714: SWAP1
00000715: SLOAD
00000716: SWAP1
00000717: PUSH2 0x0100
0000071a: EXP
0000071b: SWAP1
0000071c: DIV
0000071d: PUSH1 0x01
0000071f: PUSH1 0x01
00000721: PUSH1 0xa0
00000723: SHL
00000724: SUB
00000725: AND
00000726: SWAP1
00000727: POP
00000728: PUSH0
00000729: DUP3
0000072a: PUSH1 0x01
0000072c: PUSH1 0x01
0000072e: PUSH1 0xa0
00000730: SHL
00000731: SUB
00000732: AND
00000733: PUSH4 0xc4f59f9b
00000738: PUSH1 0x40
0000073a: MLOAD
0000073b: DUP2
0000073c: PUSH4 0xffffffff
00000741: AND
00000742: PUSH1 0xe0
00000744: SHL
00000745: DUP2
00000746: MSTORE
00000747: PUSH1 0x04
00000749: ADD
0000074a: PUSH0
0000074b: PUSH1 0x40
0000074d: MLOAD
0000074e: DUP1
0000074f: DUP4
00000750: SUB
00000751: DUP2
00000752: DUP7
00000753: GAS
00000754: STATICCALL
00000755: ISZERO
00000756: DUP1
00000757: ISZERO
00000758: PUSH2 0x0763
0000075b: JUMPI
0000075c: RETURNDATASIZE
0000075d: PUSH0
0000075e: DUP1
0000075f: RETURNDATACOPY
00000760: RETURNDATASIZE
00000761: PUSH0
00000762: REVERT
00000763: JUMPDEST
00000764: POP
00000765: POP
00000766: POP
00000767: POP
00000768: PUSH1 0x40
0000076a: MLOAD
0000076b: RETURNDATASIZE
0000076c: PUSH0
0000076d: DUP3
0000076e: RETURNDATACOPY
0000076f: PUSH1 0x1f
00000771: RETURNDATASIZE
00000772: SWAP1
00000773: DUP2
00000774: ADD
00000775: PUSH1 0x1f
00000777: NOT
00000778: AND
00000779: DUP3
0000077a: ADD
0000077b: PUSH1 0x40
0000077d: MSTORE
0000077e: PUSH2 0x078a
00000781: SWAP2
00000782: SWAP1
00000783: DUP2
00000784: ADD
00000785: SWAP1
00000786: PUSH2 0x0fe8
00000789: JUMP
0000078a: JUMPDEST
0000078b: DUP1
0000078c: MLOAD
0000078d: SWAP1
0000078e: SWAP2
0000078f: POP
00000790: PUSH0
00000791: JUMPDEST
00000792: DUP2
00000793: DUP2
00000794: LT
00000795: ISZERO
00000796: PUSH2 0x0935
00000799: JUMPI
0000079a: PUSH0
0000079b: DUP4
0000079c: DUP3
0000079d: DUP2
0000079e: MLOAD
0000079f: DUP2
000007a0: LT
000007a1: PUSH2 0x07ac
000007a4: JUMPI
000007a5: PUSH2 0x07ac
000007a8: PUSH2 0x10a8
000007ab: JUMP
000007ac: JUMPDEST
000007ad: PUSH1 0x20
000007af: SWAP1
000007b0: DUP2
000007b1: MUL
000007b2: SWAP2
000007b3: SWAP1
000007b4: SWAP2
000007b5: ADD
000007b6: ADD
000007b7: MLOAD
000007b8: PUSH1 0x40
000007ba: MLOAD
000007bb: PUSH4 0x70a08231
000007c0: PUSH1 0xe0
000007c2: SHL
000007c3: DUP2
000007c4: MSTORE
000007c5: ADDRESS
000007c6: PUSH1 0x04
000007c8: DUP3
000007c9: ADD
000007ca: MSTORE
000007cb: SWAP1
000007cc: SWAP2
000007cd: POP
000007ce: PUSH0
000007cf: SWAP1
000007d0: PUSH1 0x01
000007d2: PUSH1 0x01
000007d4: PUSH1 0xa0
000007d6: SHL
000007d7: SUB
000007d8: DUP4
000007d9: AND
000007da: SWAP1
000007db: PUSH4 0x70a08231
000007e0: SWAP1
000007e1: PUSH1 0x24
000007e3: ADD
000007e4: PUSH1 0x20
000007e6: PUSH1 0x40
000007e8: MLOAD
000007e9: DUP1
000007ea: DUP4
000007eb: SUB
000007ec: DUP2
000007ed: DUP7
000007ee: GAS
000007ef: STATICCALL
000007f0: ISZERO
000007f1: DUP1
000007f2: ISZERO
000007f3: PUSH2 0x07fe
000007f6: JUMPI
000007f7: RETURNDATASIZE
000007f8: PUSH0
000007f9: DUP1
000007fa: RETURNDATACOPY
000007fb: RETURNDATASIZE
000007fc: PUSH0
000007fd: REVERT
000007fe: JUMPDEST
000007ff: POP
00000800: POP
00000801: POP
00000802: POP
00000803: PUSH1 0x40
00000805: MLOAD
00000806: RETURNDATASIZE
00000807: PUSH1 0x1f
00000809: NOT
0000080a: PUSH1 0x1f
0000080c: DUP3
0000080d: ADD
0000080e: AND
0000080f: DUP3
00000810: ADD
00000811: DUP1
00000812: PUSH1 0x40
00000814: MSTORE
00000815: POP
00000816: DUP2
00000817: ADD
00000818: SWAP1
00000819: PUSH2 0x0822
0000081c: SWAP2
0000081d: SWAP1
0000081e: PUSH2 0x10bc
00000821: JUMP
00000822: JUMPDEST
00000823: PUSH1 0x40
00000825: MLOAD
00000826: PUSH4 0x43e6ee43
0000082b: PUSH1 0xe1
0000082d: SHL
0000082e: DUP2
0000082f: MSTORE
00000830: PUSH1 0x01
00000832: PUSH1 0x01
00000834: PUSH1 0xa0
00000836: SHL
00000837: SUB
00000838: DUP5
00000839: DUP2
0000083a: AND
0000083b: PUSH1 0x04
0000083d: DUP4
0000083e: ADD
0000083f: MSTORE
00000840: SWAP2
00000841: SWAP3
00000842: POP
00000843: PUSH0
00000844: SWAP2
00000845: DUP9
00000846: AND
00000847: SWAP1
00000848: PUSH4 0x87cddc86
0000084d: SWAP1
0000084e: PUSH1 0x24
00000850: ADD
00000851: PUSH1 0x20
00000853: PUSH1 0x40
00000855: MLOAD
00000856: DUP1
00000857: DUP4
00000858: SUB
00000859: DUP2
0000085a: DUP7
0000085b: GAS
0000085c: STATICCALL
0000085d: ISZERO
0000085e: DUP1
0000085f: ISZERO
00000860: PUSH2 0x086b
00000863: JUMPI
00000864: RETURNDATASIZE
00000865: PUSH0
00000866: DUP1
00000867: RETURNDATACOPY
00000868: RETURNDATASIZE
00000869: PUSH0
0000086a: REVERT
0000086b: JUMPDEST
0000086c: POP
0000086d: POP
0000086e: POP
0000086f: POP
00000870: PUSH1 0x40
00000872: MLOAD
00000873: RETURNDATASIZE
00000874: PUSH1 0x1f
00000876: NOT
00000877: PUSH1 0x1f
00000879: DUP3
0000087a: ADD
0000087b: AND
0000087c: DUP3
0000087d: ADD
0000087e: DUP1
0000087f: PUSH1 0x40
00000881: MSTORE
00000882: POP
00000883: DUP2
00000884: ADD
00000885: SWAP1
00000886: PUSH2 0x088f
00000889: SWAP2
0000088a: SWAP1
0000088b: PUSH2 0x0fb9
0000088e: JUMP
0000088f: JUMPDEST
00000890: SWAP1
00000891: POP
00000892: PUSH1 0x01
00000894: PUSH1 0x01
00000896: PUSH1 0xa0
00000898: SHL
00000899: SUB
0000089a: DUP2
0000089b: AND
0000089c: ISZERO
0000089d: PUSH2 0x090d
000008a0: JUMPI
000008a1: DUP1
000008a2: PUSH1 0x01
000008a4: PUSH1 0x01
000008a6: PUSH1 0xa0
000008a8: SHL
000008a9: SUB
000008aa: AND
000008ab: PUSH4 0x18160ddd
000008b0: PUSH1 0x40
000008b2: MLOAD
000008b3: DUP2
000008b4: PUSH4 0xffffffff
000008b9: AND
000008ba: PUSH1 0xe0
000008bc: SHL
000008bd: DUP2
000008be: MSTORE
000008bf: PUSH1 0x04
000008c1: ADD
000008c2: PUSH1 0x20
000008c4: PUSH1 0x40
000008c6: MLOAD
000008c7: DUP1
000008c8: DUP4
000008c9: SUB
000008ca: DUP2
000008cb: DUP7
000008cc: GAS
000008cd: STATICCALL
000008ce: ISZERO
000008cf: DUP1
000008d0: ISZERO
000008d1: PUSH2 0x08dc
000008d4: JUMPI
000008d5: RETURNDATASIZE
000008d6: PUSH0
000008d7: DUP1
000008d8: RETURNDATACOPY
000008d9: RETURNDATASIZE
000008da: PUSH0
000008db: REVERT
000008dc: JUMPDEST
000008dd: POP
000008de: POP
000008df: POP
000008e0: POP
000008e1: PUSH1 0x40
000008e3: MLOAD
000008e4: RETURNDATASIZE
000008e5: PUSH1 0x1f
000008e7: NOT
000008e8: PUSH1 0x1f
000008ea: DUP3
000008eb: ADD
000008ec: AND
000008ed: DUP3
000008ee: ADD
000008ef: DUP1
000008f0: PUSH1 0x40
000008f2: MSTORE
000008f3: POP
000008f4: DUP2
000008f5: ADD
000008f6: SWAP1
000008f7: PUSH2 0x0900
000008fa: SWAP2
000008fb: SWAP1
000008fc: PUSH2 0x10bc
000008ff: JUMP
00000900: JUMPDEST
00000901: PUSH2 0x090a
00000904: SWAP1
00000905: DUP4
00000906: PUSH2 0x10f2
00000909: JUMP
0000090a: JUMPDEST
0000090b: SWAP2
0000090c: POP
0000090d: JUMPDEST
0000090e: DUP2
0000090f: ISZERO
00000910: PUSH2 0x0927
00000913: JUMPI
00000914: PUSH2 0x0927
00000917: PUSH1 0x01
00000919: PUSH1 0x01
0000091b: PUSH1 0xa0
0000091d: SHL
0000091e: SUB
0000091f: DUP5
00000920: AND
00000921: DUP11
00000922: DUP5
00000923: PUSH2 0x0a3c
00000926: JUMP
00000927: JUMPDEST
00000928: POP
00000929: POP
0000092a: POP
0000092b: DUP1
0000092c: PUSH1 0x01
0000092e: ADD
0000092f: SWAP1
00000930: POP
00000931: PUSH2 0x0791
00000934: JUMP
00000935: JUMPDEST
00000936: POP
00000937: POP
00000938: POP
00000939: POP
0000093a: POP
0000093b: POP
0000093c: POP
0000093d: JUMP
0000093e: JUMPDEST
0000093f: PUSH0
00000940: DUP1
00000941: PUSH2 0x0948
00000944: PUSH2 0x03a7
00000947: JUMP
00000948: JUMPDEST
00000949: SWAP1
0000094a: POP
0000094b: PUSH1 0x01
0000094d: PUSH1 0x01
0000094f: PUSH1 0xa0
00000951: SHL
00000952: SUB
00000953: DUP2
00000954: AND
00000955: ISZERO
00000956: PUSH2 0x0a35
00000959: JUMPI
0000095a: PUSH0
0000095b: DUP2
0000095c: PUSH1 0x01
0000095e: PUSH1 0x01
00000960: PUSH1 0xa0
00000962: SHL
00000963: SUB
00000964: AND
00000965: PUSH4 0x570ca735
0000096a: PUSH1 0x40
0000096c: MLOAD
0000096d: DUP2
0000096e: PUSH4 0xffffffff
00000973: AND
00000974: PUSH1 0xe0
00000976: SHL
00000977: DUP2
00000978: MSTORE
00000979: PUSH1 0x04
0000097b: ADD
0000097c: PUSH1 0x20
0000097e: PUSH1 0x40
00000980: MLOAD
00000981: DUP1
00000982: DUP4
00000983: SUB
00000984: DUP2
00000985: DUP7
00000986: GAS
00000987: STATICCALL
00000988: ISZERO
00000989: DUP1
0000098a: ISZERO
0000098b: PUSH2 0x0996
0000098e: JUMPI
0000098f: RETURNDATASIZE
00000990: PUSH0
00000991: DUP1
00000992: RETURNDATACOPY
00000993: RETURNDATASIZE
00000994: PUSH0
00000995: REVERT
00000996: JUMPDEST
00000997: POP
00000998: POP
00000999: POP
0000099a: POP
0000099b: PUSH1 0x40
0000099d: MLOAD
0000099e: RETURNDATASIZE
0000099f: PUSH1 0x1f
000009a1: NOT
000009a2: PUSH1 0x1f
000009a4: DUP3
000009a5: ADD
000009a6: AND
000009a7: DUP3
000009a8: ADD
000009a9: DUP1
000009aa: PUSH1 0x40
000009ac: MSTORE
000009ad: POP
000009ae: DUP2
000009af: ADD
000009b0: SWAP1
000009b1: PUSH2 0x09ba
000009b4: SWAP2
000009b5: SWAP1
000009b6: PUSH2 0x0fb9
000009b9: JUMP
000009ba: JUMPDEST
000009bb: SWAP1
000009bc: POP
000009bd: PUSH1 0x01
000009bf: PUSH1 0x01
000009c1: PUSH1 0xa0
000009c3: SHL
000009c4: SUB
000009c5: DUP2
000009c6: AND
000009c7: CALLER
000009c8: SUB
000009c9: PUSH2 0x0a33
000009cc: JUMPI
000009cd: DUP1
000009ce: PUSH1 0x01
000009d0: PUSH1 0x01
000009d2: PUSH1 0xa0
000009d4: SHL
000009d5: SUB
000009d6: AND
000009d7: PUSH4 0xd2c869a4
000009dc: PUSH1 0x40
000009de: MLOAD
000009df: DUP2
000009e0: PUSH4 0xffffffff
000009e5: AND
000009e6: PUSH1 0xe0
000009e8: SHL
000009e9: DUP2
000009ea: MSTORE
000009eb: PUSH1 0x04
000009ed: ADD
000009ee: PUSH1 0x20
000009f0: PUSH1 0x40
000009f2: MLOAD
000009f3: DUP1
000009f4: DUP4
000009f5: SUB
000009f6: DUP2
000009f7: DUP7
000009f8: GAS
000009f9: STATICCALL
000009fa: ISZERO
000009fb: DUP1
000009fc: ISZERO
000009fd: PUSH2 0x0a08
00000a00: JUMPI
00000a01: RETURNDATASIZE
00000a02: PUSH0
00000a03: DUP1
00000a04: RETURNDATACOPY
00000a05: RETURNDATASIZE
00000a06: PUSH0
00000a07: REVERT
00000a08: JUMPDEST
00000a09: POP
00000a0a: POP
00000a0b: POP
00000a0c: POP
00000a0d: PUSH1 0x40
00000a0f: MLOAD
00000a10: RETURNDATASIZE
00000a11: PUSH1 0x1f
00000a13: NOT
00000a14: PUSH1 0x1f
00000a16: DUP3
00000a17: ADD
00000a18: AND
00000a19: DUP3
00000a1a: ADD
00000a1b: DUP1
00000a1c: PUSH1 0x40
00000a1e: MSTORE
00000a1f: POP
00000a20: DUP2
00000a21: ADD
00000a22: SWAP1
00000a23: PUSH2 0x0a2c
00000a26: SWAP2
00000a27: SWAP1
00000a28: PUSH2 0x0fb9
00000a2b: JUMP
00000a2c: JUMPDEST
00000a2d: SWAP3
00000a2e: POP
00000a2f: POP
00000a30: POP
00000a31: SWAP1
00000a32: JUMP
00000a33: JUMPDEST
00000a34: POP
00000a35: JUMPDEST
00000a36: CALLER
00000a37: SWAP2
00000a38: POP
00000a39: POP
00000a3a: SWAP1
00000a3b: JUMP
00000a3c: JUMPDEST
00000a3d: PUSH1 0x40
00000a3f: DUP1
00000a40: MLOAD
00000a41: PUSH1 0x01
00000a43: PUSH1 0x01
00000a45: PUSH1 0xa0
00000a47: SHL
00000a48: SUB
00000a49: DUP5
00000a4a: AND
00000a4b: PUSH1 0x24
00000a4d: DUP3
00000a4e: ADD
00000a4f: MSTORE
00000a50: PUSH1 0x44
00000a52: DUP1
00000a53: DUP3
00000a54: ADD
00000a55: DUP5
00000a56: SWAP1
00000a57: MSTORE
00000a58: DUP3
00000a59: MLOAD
00000a5a: DUP1
00000a5b: DUP4
00000a5c: SUB
00000a5d: SWAP1
00000a5e: SWAP2
00000a5f: ADD
00000a60: DUP2
00000a61: MSTORE
00000a62: PUSH1 0x64
00000a64: SWAP1
00000a65: SWAP2
00000a66: ADD
00000a67: SWAP1
00000a68: SWAP2
00000a69: MSTORE
00000a6a: PUSH1 0x20
00000a6c: DUP2
00000a6d: ADD
00000a6e: DUP1
00000a6f: MLOAD
00000a70: PUSH1 0x01
00000a72: PUSH1 0x01
00000a74: PUSH1 0xe0
00000a76: SHL
00000a77: SUB
00000a78: AND
00000a79: PUSH4 0xa9059cbb
00000a7e: PUSH1 0xe0
00000a80: SHL
00000a81: OR
00000a82: SWAP1
00000a83: MSTORE
00000a84: PUSH2 0x0a8e
00000a87: SWAP1
00000a88: DUP5
00000a89: SWAP1
00000a8a: PUSH2 0x0c71
00000a8d: JUMP
00000a8e: JUMPDEST
00000a8f: POP
00000a90: POP
00000a91: POP
00000a92: JUMP
00000a93: JUMPDEST
00000a94: PUSH0
00000a95: DUP1
00000a96: SLOAD
00000a97: PUSH2 0x0100
00000a9a: SWAP1
00000a9b: DIV
00000a9c: PUSH1 0xff
00000a9e: AND
00000a9f: ISZERO
00000aa0: PUSH2 0x0ae1
00000aa3: JUMPI
00000aa4: DUP2
00000aa5: PUSH1 0xff
00000aa7: AND
00000aa8: PUSH1 0x01
00000aaa: EQ
00000aab: DUP1
00000aac: ISZERO
00000aad: PUSH2 0x0ab5
00000ab0: JUMPI
00000ab1: POP
00000ab2: ADDRESS
00000ab3: EXTCODESIZE
00000ab4: ISZERO
00000ab5: JUMPDEST
00000ab6: PUSH2 0x0ada
00000ab9: JUMPI
00000aba: PUSH1 0x40
00000abc: MLOAD
00000abd: PUSH3 0x461bcd
00000ac1: PUSH1 0xe5
00000ac3: SHL
00000ac4: DUP2
00000ac5: MSTORE
00000ac6: PUSH1 0x04
00000ac8: ADD
00000ac9: PUSH2 0x0ad1
00000acc: SWAP1
00000acd: PUSH2 0x1117
00000ad0: JUMP
00000ad1: JUMPDEST
00000ad2: PUSH1 0x40
00000ad4: MLOAD
00000ad5: DUP1
00000ad6: SWAP2
00000ad7: SUB
00000ad8: SWAP1
00000ad9: REVERT
00000ada: JUMPDEST
00000adb: POP
00000adc: PUSH0
00000add: SWAP2
00000ade: SWAP1
00000adf: POP
00000ae0: JUMP
00000ae1: JUMPDEST
00000ae2: PUSH0
00000ae3: SLOAD
00000ae4: PUSH1 0xff
00000ae6: DUP1
00000ae7: DUP5
00000ae8: AND
00000ae9: SWAP2
00000aea: AND
00000aeb: LT
00000aec: PUSH2 0x0b07
00000aef: JUMPI
00000af0: PUSH1 0x40
00000af2: MLOAD
00000af3: PUSH3 0x461bcd
00000af7: PUSH1 0xe5
00000af9: SHL
00000afa: DUP2
00000afb: MSTORE
00000afc: PUSH1 0x04
00000afe: ADD
00000aff: PUSH2 0x0ad1
00000b02: SWAP1
00000b03: PUSH2 0x1117
00000b06: JUMP
00000b07: JUMPDEST
00000b08: POP
00000b09: PUSH0
00000b0a: DUP1
00000b0b: SLOAD
00000b0c: PUSH1 0xff
00000b0e: NOT
00000b0f: AND
00000b10: PUSH1 0xff
00000b12: SWAP3
00000b13: SWAP1
00000b14: SWAP3
00000b15: AND
00000b16: SWAP2
00000b17: SWAP1
00000b18: SWAP2
00000b19: OR
00000b1a: SWAP1
00000b1b: SSTORE
00000b1c: PUSH1 0x01
00000b1e: SWAP1
00000b1f: JUMP
00000b20: JUMPDEST
00000b21: SWAP2
00000b22: SWAP1
00000b23: POP
00000b24: JUMP
00000b25: JUMPDEST
00000b26: PUSH0
00000b27: SLOAD
00000b28: PUSH2 0x0100
00000b2b: SWAP1
00000b2c: DIV
00000b2d: PUSH1 0xff
00000b2f: AND
00000b30: PUSH2 0x0b8f
00000b33: JUMPI
00000b34: PUSH1 0x40
00000b36: MLOAD
00000b37: PUSH3 0x461bcd
00000b3b: PUSH1 0xe5
00000b3d: SHL
00000b3e: DUP2
00000b3f: MSTORE
00000b40: PUSH1 0x20
00000b42: PUSH1 0x04
00000b44: DUP3
00000b45: ADD
00000b46: MSTORE
00000b47: PUSH1 0x2b
00000b49: PUSH1 0x24
00000b4b: DUP3
00000b4c: ADD
00000b4d: MSTORE
00000b4e: PUSH32 0x496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069
00000b6f: PUSH1 0x44
00000b71: DUP3
00000b72: ADD
00000b73: MSTORE
00000b74: PUSH11 0x6e697469616c697a696e67
00000b80: PUSH1 0xa8
00000b82: SHL
00000b83: PUSH1 0x64
00000b85: DUP3
00000b86: ADD
00000b87: MSTORE
00000b88: PUSH1 0x84
00000b8a: ADD
00000b8b: PUSH2 0x0ad1
00000b8e: JUMP
00000b8f: JUMPDEST
00000b90: PUSH1 0x01
00000b92: PUSH1 0x01
00000b94: PUSH1 0xa0
00000b96: SHL
00000b97: SUB
00000b98: DUP2
00000b99: AND
00000b9a: PUSH2 0x0bb6
00000b9d: JUMPI
00000b9e: PUSH1 0x40
00000ba0: MLOAD
00000ba1: PUSH4 0x724f5009
00000ba6: PUSH1 0xe0
00000ba8: SHL
00000ba9: DUP2
00000baa: MSTORE
00000bab: PUSH1 0x04
00000bad: ADD
00000bae: PUSH1 0x40
00000bb0: MLOAD
00000bb1: DUP1
00000bb2: SWAP2
00000bb3: SUB
00000bb4: SWAP1
00000bb5: REVERT
00000bb6: JUMPDEST
00000bb7: PUSH1 0x02
00000bb9: DUP1
00000bba: SLOAD
00000bbb: PUSH1 0x01
00000bbd: PUSH1 0x01
00000bbf: PUSH1 0xa0
00000bc1: SHL
00000bc2: SUB
00000bc3: NOT
00000bc4: AND
00000bc5: PUSH1 0x01
00000bc7: PUSH1 0x01
00000bc9: PUSH1 0xa0
00000bcb: SHL
00000bcc: SUB
00000bcd: SWAP3
00000bce: SWAP1
00000bcf: SWAP3
00000bd0: AND
00000bd1: SWAP2
00000bd2: SWAP1
00000bd3: SWAP2
00000bd4: OR
00000bd5: SWAP1
00000bd6: SSTORE
00000bd7: JUMP
00000bd8: JUMPDEST
00000bd9: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00
00000bfa: TLOAD
00000bfb: ISZERO
00000bfc: PUSH2 0x0c18
00000bff: JUMPI
00000c00: PUSH1 0x40
00000c02: MLOAD
00000c03: PUSH4 0x3ee5aeb5
00000c08: PUSH1 0xe0
00000c0a: SHL
00000c0b: DUP2
00000c0c: MSTORE
00000c0d: PUSH1 0x04
00000c0f: ADD
00000c10: PUSH1 0x40
00000c12: MLOAD
00000c13: DUP1
00000c14: SWAP2
00000c15: SUB
00000c16: SWAP1
00000c17: REVERT
00000c18: JUMPDEST
00000c19: PUSH2 0x0c45
00000c1c: PUSH1 0x01
00000c1e: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00
00000c3f: JUMPDEST
00000c40: SWAP1
00000c41: PUSH2 0x0d42
00000c44: JUMP
00000c45: JUMPDEST
00000c46: JUMP
00000c47: JUMPDEST
00000c48: PUSH2 0x0c45
00000c4b: PUSH0
00000c4c: PUSH32 0x9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00
00000c6d: PUSH2 0x0c3f
00000c70: JUMP
00000c71: JUMPDEST
00000c72: PUSH0
00000c73: PUSH2 0x0cc5
00000c76: DUP3
00000c77: PUSH1 0x40
00000c79: MLOAD
00000c7a: DUP1
00000c7b: PUSH1 0x40
00000c7d: ADD
00000c7e: PUSH1 0x40
00000c80: MSTORE
00000c81: DUP1
00000c82: PUSH1 0x20
00000c84: DUP2
00000c85: MSTORE
00000c86: PUSH1 0x20
00000c88: ADD
00000c89: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
00000caa: DUP2
00000cab: MSTORE
00000cac: POP
00000cad: DUP6
00000cae: PUSH1 0x01
00000cb0: PUSH1 0x01
00000cb2: PUSH1 0xa0
00000cb4: SHL
00000cb5: SUB
00000cb6: AND
00000cb7: PUSH2 0x0d49
00000cba: SWAP1
00000cbb: SWAP3
00000cbc: SWAP2
00000cbd: SWAP1
00000cbe: PUSH4 0xffffffff
00000cc3: AND
00000cc4: JUMP
00000cc5: JUMPDEST
00000cc6: DUP1
00000cc7: MLOAD
00000cc8: SWAP1
00000cc9: SWAP2
00000cca: POP
00000ccb: ISZERO
00000ccc: PUSH2 0x0a8e
00000ccf: JUMPI
00000cd0: DUP1
00000cd1: DUP1
00000cd2: PUSH1 0x20
00000cd4: ADD
00000cd5: SWAP1
00000cd6: MLOAD
00000cd7: DUP2
00000cd8: ADD
00000cd9: SWAP1
00000cda: PUSH2 0x0ce3
00000cdd: SWAP2
00000cde: SWAP1
00000cdf: PUSH2 0x10d3
00000ce2: JUMP
00000ce3: JUMPDEST
00000ce4: PUSH2 0x0a8e
00000ce7: JUMPI
00000ce8: PUSH1 0x40
00000cea: MLOAD
00000ceb: PUSH3 0x461bcd
00000cef: PUSH1 0xe5
00000cf1: SHL
00000cf2: DUP2
00000cf3: MSTORE
00000cf4: PUSH1 0x20
00000cf6: PUSH1 0x04
00000cf8: DUP3
00000cf9: ADD
00000cfa: MSTORE
00000cfb: PUSH1 0x2a
00000cfd: PUSH1 0x24
00000cff: DUP3
00000d00: ADD
00000d01: MSTORE
00000d02: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e
00000d23: PUSH1 0x44
00000d25: DUP3
00000d26: ADD
00000d27: MSTORE
00000d28: PUSH10 0x1bdd081cdd58d8d95959
00000d33: PUSH1 0xb2
00000d35: SHL
00000d36: PUSH1 0x64
00000d38: DUP3
00000d39: ADD
00000d3a: MSTORE
00000d3b: PUSH1 0x84
00000d3d: ADD
00000d3e: PUSH2 0x0ad1
00000d41: JUMP
00000d42: JUMPDEST
00000d43: DUP1
00000d44: DUP3
00000d45: TSTORE
00000d46: POP
00000d47: POP
00000d48: JUMP
00000d49: JUMPDEST
00000d4a: PUSH1 0x60
00000d4c: PUSH2 0x0d57
00000d4f: DUP5
00000d50: DUP5
00000d51: PUSH0
00000d52: DUP6
00000d53: PUSH2 0x0d61
00000d56: JUMP
00000d57: JUMPDEST
00000d58: SWAP1
00000d59: POP
00000d5a: JUMPDEST
00000d5b: SWAP4
00000d5c: SWAP3
00000d5d: POP
00000d5e: POP
00000d5f: POP
00000d60: JUMP
00000d61: JUMPDEST
00000d62: PUSH1 0x60
00000d64: DUP3
00000d65: SELFBALANCE
00000d66: LT
00000d67: ISZERO
00000d68: PUSH2 0x0dc2
00000d6b: JUMPI
00000d6c: PUSH1 0x40
00000d6e: MLOAD
00000d6f: PUSH3 0x461bcd
00000d73: PUSH1 0xe5
00000d75: SHL
00000d76: DUP2
00000d77: MSTORE
00000d78: PUSH1 0x20
00000d7a: PUSH1 0x04
00000d7c: DUP3
00000d7d: ADD
00000d7e: MSTORE
00000d7f: PUSH1 0x26
00000d81: PUSH1 0x24
00000d83: DUP3
00000d84: ADD
00000d85: MSTORE
00000d86: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f
00000da7: PUSH1 0x44
00000da9: DUP3
00000daa: ADD
00000dab: MSTORE
00000dac: PUSH6 0x1c8818d85b1b
00000db3: PUSH1 0xd2
00000db5: SHL
00000db6: PUSH1 0x64
00000db8: DUP3
00000db9: ADD
00000dba: MSTORE
00000dbb: PUSH1 0x84
00000dbd: ADD
00000dbe: PUSH2 0x0ad1
00000dc1: JUMP
00000dc2: JUMPDEST
00000dc3: PUSH1 0x01
00000dc5: PUSH1 0x01
00000dc7: PUSH1 0xa0
00000dc9: SHL
00000dca: SUB
00000dcb: DUP6
00000dcc: AND
00000dcd: EXTCODESIZE
00000dce: PUSH2 0x0e19
00000dd1: JUMPI
00000dd2: PUSH1 0x40
00000dd4: MLOAD
00000dd5: PUSH3 0x461bcd
00000dd9: PUSH1 0xe5
00000ddb: SHL
00000ddc: DUP2
00000ddd: MSTORE
00000dde: PUSH1 0x20
00000de0: PUSH1 0x04
00000de2: DUP3
00000de3: ADD
00000de4: MSTORE
00000de5: PUSH1 0x1d
00000de7: PUSH1 0x24
00000de9: DUP3
00000dea: ADD
00000deb: MSTORE
00000dec: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000
00000e0d: PUSH1 0x44
00000e0f: DUP3
00000e10: ADD
00000e11: MSTORE
00000e12: PUSH1 0x64
00000e14: ADD
00000e15: PUSH2 0x0ad1
00000e18: JUMP
00000e19: JUMPDEST
00000e1a: PUSH0
00000e1b: DUP1
00000e1c: DUP7
00000e1d: PUSH1 0x01
00000e1f: PUSH1 0x01
00000e21: PUSH1 0xa0
00000e23: SHL
00000e24: SUB
00000e25: AND
00000e26: DUP6
00000e27: DUP8
00000e28: PUSH1 0x40
00000e2a: MLOAD
00000e2b: PUSH2 0x0e34
00000e2e: SWAP2
00000e2f: SWAP1
00000e30: PUSH2 0x1165
00000e33: JUMP
00000e34: JUMPDEST
00000e35: PUSH0
00000e36: PUSH1 0x40
00000e38: MLOAD
00000e39: DUP1
00000e3a: DUP4
00000e3b: SUB
00000e3c: DUP2
00000e3d: DUP6
00000e3e: DUP8
00000e3f: GAS
00000e40: CALL
00000e41: SWAP3
00000e42: POP
00000e43: POP
00000e44: POP
00000e45: RETURNDATASIZE
00000e46: DUP1
00000e47: PUSH0
00000e48: DUP2
00000e49: EQ
00000e4a: PUSH2 0x0e6e
00000e4d: JUMPI
00000e4e: PUSH1 0x40
00000e50: MLOAD
00000e51: SWAP2
00000e52: POP
00000e53: PUSH1 0x1f
00000e55: NOT
00000e56: PUSH1 0x3f
00000e58: RETURNDATASIZE
00000e59: ADD
00000e5a: AND
00000e5b: DUP3
00000e5c: ADD
00000e5d: PUSH1 0x40
00000e5f: MSTORE
00000e60: RETURNDATASIZE
00000e61: DUP3
00000e62: MSTORE
00000e63: RETURNDATASIZE
00000e64: PUSH0
00000e65: PUSH1 0x20
00000e67: DUP5
00000e68: ADD
00000e69: RETURNDATACOPY
00000e6a: PUSH2 0x0e73
00000e6d: JUMP
00000e6e: JUMPDEST
00000e6f: PUSH1 0x60
00000e71: SWAP2
00000e72: POP
00000e73: JUMPDEST
00000e74: POP
00000e75: SWAP2
00000e76: POP
00000e77: SWAP2
00000e78: POP
00000e79: PUSH2 0x0e83
00000e7c: DUP3
00000e7d: DUP3
00000e7e: DUP7
00000e7f: PUSH2 0x0e8e
00000e82: JUMP
00000e83: JUMPDEST
00000e84: SWAP8
00000e85: SWAP7
00000e86: POP
00000e87: POP
00000e88: POP
00000e89: POP
00000e8a: POP
00000e8b: POP
00000e8c: POP
00000e8d: JUMP
00000e8e: JUMPDEST
00000e8f: PUSH1 0x60
00000e91: DUP4
00000e92: ISZERO
00000e93: PUSH2 0x0e9d
00000e96: JUMPI
00000e97: POP
00000e98: DUP2
00000e99: PUSH2 0x0d5a
00000e9c: JUMP
00000e9d: JUMPDEST
00000e9e: DUP3
00000e9f: MLOAD
00000ea0: ISZERO
00000ea1: PUSH2 0x0ead
00000ea4: JUMPI
00000ea5: DUP3
00000ea6: MLOAD
00000ea7: DUP1
00000ea8: DUP5
00000ea9: PUSH1 0x20
00000eab: ADD
00000eac: REVERT
00000ead: JUMPDEST
00000eae: DUP2
00000eaf: PUSH1 0x40
00000eb1: MLOAD
00000eb2: PUSH3 0x461bcd
00000eb6: PUSH1 0xe5
00000eb8: SHL
00000eb9: DUP2
00000eba: MSTORE
00000ebb: PUSH1 0x04
00000ebd: ADD
00000ebe: PUSH2 0x0ad1
00000ec1: SWAP2
00000ec2: SWAP1
00000ec3: PUSH2 0x0f7c
00000ec6: JUMP
00000ec7: JUMPDEST
00000ec8: PUSH1 0x01
00000eca: PUSH1 0x01
00000ecc: PUSH1 0xa0
00000ece: SHL
00000ecf: SUB
00000ed0: DUP2
00000ed1: AND
00000ed2: DUP2
00000ed3: EQ
00000ed4: PUSH2 0x0edb
00000ed7: JUMPI
00000ed8: PUSH0
00000ed9: DUP1
00000eda: REVERT
00000edb: JUMPDEST
00000edc: POP
00000edd: JUMP
00000ede: JUMPDEST
00000edf: PUSH0
00000ee0: PUSH1 0x20
00000ee2: DUP3
00000ee3: DUP5
00000ee4: SUB
00000ee5: SLT
00000ee6: ISZERO
00000ee7: PUSH2 0x0eee
00000eea: JUMPI
00000eeb: PUSH0
00000eec: DUP1
00000eed: REVERT
00000eee: JUMPDEST
00000eef: DUP2
00000ef0: CALLDATALOAD
00000ef1: PUSH2 0x0d5a
00000ef4: DUP2
00000ef5: PUSH2 0x0ec7
00000ef8: JUMP
00000ef9: JUMPDEST
00000efa: PUSH0
00000efb: DUP1
00000efc: PUSH1 0x40
00000efe: DUP4
00000eff: DUP6
00000f00: SUB
00000f01: SLT
00000f02: ISZERO
00000f03: PUSH2 0x0f0a
00000f06: JUMPI
00000f07: PUSH0
00000f08: DUP1
00000f09: REVERT
00000f0a: JUMPDEST
00000f0b: DUP3
00000f0c: CALLDATALOAD
00000f0d: PUSH2 0x0f15
00000f10: DUP2
00000f11: PUSH2 0x0ec7
00000f14: JUMP
00000f15: JUMPDEST
00000f16: SWAP5
00000f17: PUSH1 0x20
00000f19: SWAP4
00000f1a: SWAP1
00000f1b: SWAP4
00000f1c: ADD
00000f1d: CALLDATALOAD
00000f1e: SWAP4
00000f1f: POP
00000f20: POP
00000f21: POP
00000f22: JUMP
00000f23: JUMPDEST
00000f24: PUSH0
00000f25: DUP1
00000f26: PUSH1 0x40
00000f28: DUP4
00000f29: DUP6
00000f2a: SUB
00000f2b: SLT
00000f2c: ISZERO
00000f2d: PUSH2 0x0f34
00000f30: JUMPI
00000f31: PUSH0
00000f32: DUP1
00000f33: REVERT
00000f34: JUMPDEST
00000f35: DUP3
00000f36: CALLDATALOAD
00000f37: PUSH2 0x0f3f
00000f3a: DUP2
00000f3b: PUSH2 0x0ec7
00000f3e: JUMP
00000f3f: JUMPDEST
00000f40: SWAP2
00000f41: POP
00000f42: PUSH1 0x20
00000f44: DUP4
00000f45: ADD
00000f46: CALLDATALOAD
00000f47: PUSH2 0x0f4f
00000f4a: DUP2
00000f4b: PUSH2 0x0ec7
00000f4e: JUMP
00000f4f: JUMPDEST
00000f50: DUP1
00000f51: SWAP2
00000f52: POP
00000f53: POP
00000f54: SWAP3
00000f55: POP
00000f56: SWAP3
00000f57: SWAP1
00000f58: POP
00000f59: JUMP
00000f5a: JUMPDEST
00000f5b: PUSH0
00000f5c: JUMPDEST
00000f5d: DUP4
00000f5e: DUP2
00000f5f: LT
00000f60: ISZERO
00000f61: PUSH2 0x0f74
00000f64: JUMPI
00000f65: DUP2
00000f66: DUP2
00000f67: ADD
00000f68: MLOAD
00000f69: DUP4
00000f6a: DUP3
00000f6b: ADD
00000f6c: MSTORE
00000f6d: PUSH1 0x20
00000f6f: ADD
00000f70: PUSH2 0x0f5c
00000f73: JUMP
00000f74: JUMPDEST
00000f75: POP
00000f76: POP
00000f77: PUSH0
00000f78: SWAP2
00000f79: ADD
00000f7a: MSTORE
00000f7b: JUMP
00000f7c: JUMPDEST
00000f7d: PUSH1 0x20
00000f7f: DUP2
00000f80: MSTORE
00000f81: PUSH0
00000f82: DUP3
00000f83: MLOAD
00000f84: DUP1
00000f85: PUSH1 0x20
00000f87: DUP5
00000f88: ADD
00000f89: MSTORE
00000f8a: PUSH2 0x0f9a
00000f8d: DUP2
00000f8e: PUSH1 0x40
00000f90: DUP6
00000f91: ADD
00000f92: PUSH1 0x20
00000f94: DUP8
00000f95: ADD
00000f96: PUSH2 0x0f5a
00000f99: JUMP
00000f9a: JUMPDEST
00000f9b: PUSH1 0x1f
00000f9d: ADD
00000f9e: PUSH1 0x1f
00000fa0: NOT
00000fa1: AND
00000fa2: SWAP2
00000fa3: SWAP1
00000fa4: SWAP2
00000fa5: ADD
00000fa6: PUSH1 0x40
00000fa8: ADD
00000fa9: SWAP3
00000faa: SWAP2
00000fab: POP
00000fac: POP
00000fad: JUMP
00000fae: JUMPDEST
00000faf: DUP1
00000fb0: MLOAD
00000fb1: PUSH2 0x0b20
00000fb4: DUP2
00000fb5: PUSH2 0x0ec7
00000fb8: JUMP
00000fb9: JUMPDEST
00000fba: PUSH0
00000fbb: PUSH1 0x20
00000fbd: DUP3
00000fbe: DUP5
00000fbf: SUB
00000fc0: SLT
00000fc1: ISZERO
00000fc2: PUSH2 0x0fc9
00000fc5: JUMPI
00000fc6: PUSH0
00000fc7: DUP1
00000fc8: REVERT
00000fc9: JUMPDEST
00000fca: DUP2
00000fcb: MLOAD
00000fcc: PUSH2 0x0d5a
00000fcf: DUP2
00000fd0: PUSH2 0x0ec7
00000fd3: JUMP
00000fd4: JUMPDEST
00000fd5: PUSH4 0x4e487b71
00000fda: PUSH1 0xe0
00000fdc: SHL
00000fdd: PUSH0
00000fde: MSTORE
00000fdf: PUSH1 0x41
00000fe1: PUSH1 0x04
00000fe3: MSTORE
00000fe4: PUSH1 0x24
00000fe6: PUSH0
00000fe7: REVERT
00000fe8: JUMPDEST
00000fe9: PUSH0
00000fea: PUSH1 0x20
00000fec: DUP1
00000fed: DUP4
00000fee: DUP6
00000fef: SUB
00000ff0: SLT
00000ff1: ISZERO
00000ff2: PUSH2 0x0ff9
00000ff5: JUMPI
00000ff6: PUSH0
00000ff7: DUP1
00000ff8: REVERT
00000ff9: JUMPDEST
00000ffa: DUP3
00000ffb: MLOAD
00000ffc: PUSH8 0xffffffffffffffff
00001005: DUP1
00001006: DUP3
00001007: GT
00001008: ISZERO
00001009: PUSH2 0x1010
0000100c: JUMPI
0000100d: PUSH0
0000100e: DUP1
0000100f: REVERT
00001010: JUMPDEST
00001011: DUP2
00001012: DUP6
00001013: ADD
00001014: SWAP2
00001015: POP
00001016: DUP6
00001017: PUSH1 0x1f
00001019: DUP4
0000101a: ADD
0000101b: SLT
0000101c: PUSH2 0x1023
0000101f: JUMPI
00001020: PUSH0
00001021: DUP1
00001022: REVERT
00001023: JUMPDEST
00001024: DUP2
00001025: MLOAD
00001026: DUP2
00001027: DUP2
00001028: GT
00001029: ISZERO
0000102a: PUSH2 0x1035
0000102d: JUMPI
0000102e: PUSH2 0x1035
00001031: PUSH2 0x0fd4
00001034: JUMP
00001035: JUMPDEST
00001036: DUP1
00001037: PUSH1 0x05
00001039: SHL
0000103a: PUSH1 0x40
0000103c: MLOAD
0000103d: PUSH1 0x1f
0000103f: NOT
00001040: PUSH1 0x3f
00001042: DUP4
00001043: ADD
00001044: AND
00001045: DUP2
00001046: ADD
00001047: DUP2
00001048: DUP2
00001049: LT
0000104a: DUP6
0000104b: DUP3
0000104c: GT
0000104d: OR
0000104e: ISZERO
0000104f: PUSH2 0x105a
00001052: JUMPI
00001053: PUSH2 0x105a
00001056: PUSH2 0x0fd4
00001059: JUMP
0000105a: JUMPDEST
0000105b: PUSH1 0x40
0000105d: MSTORE
0000105e: SWAP2
0000105f: DUP3
00001060: MSTORE
00001061: DUP5
00001062: DUP3
00001063: ADD
00001064: SWAP3
00001065: POP
00001066: DUP4
00001067: DUP2
00001068: ADD
00001069: DUP6
0000106a: ADD
0000106b: SWAP2
0000106c: DUP9
0000106d: DUP4
0000106e: GT
0000106f: ISZERO
00001070: PUSH2 0x1077
00001073: JUMPI
00001074: PUSH0
00001075: DUP1
00001076: REVERT
00001077: JUMPDEST
00001078: SWAP4
00001079: DUP6
0000107a: ADD
0000107b: SWAP4
0000107c: JUMPDEST
0000107d: DUP3
0000107e: DUP6
0000107f: LT
00001080: ISZERO
00001081: PUSH2 0x109c
00001084: JUMPI
00001085: PUSH2 0x108d
00001088: DUP6
00001089: PUSH2 0x0fae
0000108c: JUMP
0000108d: JUMPDEST
0000108e: DUP5
0000108f: MSTORE
00001090: SWAP4
00001091: DUP6
00001092: ADD
00001093: SWAP4
00001094: SWAP3
00001095: DUP6
00001096: ADD
00001097: SWAP3
00001098: PUSH2 0x107c
0000109b: JUMP
0000109c: JUMPDEST
0000109d: SWAP9
0000109e: SWAP8
0000109f: POP
000010a0: POP
000010a1: POP
000010a2: POP
000010a3: POP
000010a4: POP
000010a5: POP
000010a6: POP
000010a7: JUMP
000010a8: JUMPDEST
000010a9: PUSH4 0x4e487b71
000010ae: PUSH1 0xe0
000010b0: SHL
000010b1: PUSH0
000010b2: MSTORE
000010b3: PUSH1 0x32
000010b5: PUSH1 0x04
000010b7: MSTORE
000010b8: PUSH1 0x24
000010ba: PUSH0
000010bb: REVERT
000010bc: JUMPDEST
000010bd: PUSH0
000010be: PUSH1 0x20
000010c0: DUP3
000010c1: DUP5
000010c2: SUB
000010c3: SLT
000010c4: ISZERO
000010c5: PUSH2 0x10cc
000010c8: JUMPI
000010c9: PUSH0
000010ca: DUP1
000010cb: REVERT
000010cc: JUMPDEST
000010cd: POP
000010ce: MLOAD
000010cf: SWAP2
000010d0: SWAP1
000010d1: POP
000010d2: JUMP
000010d3: JUMPDEST
000010d4: PUSH0
000010d5: PUSH1 0x20
000010d7: DUP3
000010d8: DUP5
000010d9: SUB
000010da: SLT
000010db: ISZERO
000010dc: PUSH2 0x10e3
000010df: JUMPI
000010e0: PUSH0
000010e1: DUP1
000010e2: REVERT
000010e3: JUMPDEST
000010e4: DUP2
000010e5: MLOAD
000010e6: DUP1
000010e7: ISZERO
000010e8: ISZERO
000010e9: DUP2
000010ea: EQ
000010eb: PUSH2 0x0d5a
000010ee: JUMPI
000010ef: PUSH0
000010f0: DUP1
000010f1: REVERT
000010f2: JUMPDEST
000010f3: DUP2
000010f4: DUP2
000010f5: SUB
000010f6: DUP2
000010f7: DUP2
000010f8: GT
000010f9: ISZERO
000010fa: PUSH2 0x1111
000010fd: JUMPI
000010fe: PUSH4 0x4e487b71
00001103: PUSH1 0xe0
00001105: SHL
00001106: PUSH0
00001107: MSTORE
00001108: PUSH1 0x11
0000110a: PUSH1 0x04
0000110c: MSTORE
0000110d: PUSH1 0x24
0000110f: PUSH0
00001110: REVERT
00001111: JUMPDEST
00001112: SWAP3
00001113: SWAP2
00001114: POP
00001115: POP
00001116: JUMP
00001117: JUMPDEST
00001118: PUSH1 0x20
0000111a: DUP1
0000111b: DUP3
0000111c: MSTORE
0000111d: PUSH1 0x2e
0000111f: SWAP1
00001120: DUP3
00001121: ADD
00001122: MSTORE
00001123: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561
00001144: PUSH1 0x40
00001146: DUP3
00001147: ADD
00001148: MSTORE
00001149: PUSH14 0x191e481a5b9a5d1a585b1a5e9959
00001158: PUSH1 0x92
0000115a: SHL
0000115b: PUSH1 0x60
0000115d: DUP3
0000115e: ADD
0000115f: MSTORE
00001160: PUSH1 0x80
00001162: ADD
00001163: SWAP1
00001164: JUMP
00001165: JUMPDEST
00001166: PUSH0
00001167: DUP3
00001168: MLOAD
00001169: PUSH2 0x1176
0000116c: DUP2
0000116d: DUP5
0000116e: PUSH1 0x20
00001170: DUP8
00001171: ADD
00001172: PUSH2 0x0f5a
00001175: JUMP
00001176: JUMPDEST
00001177: SWAP2
00001178: SWAP1
00001179: SWAP2
0000117a: ADD
0000117b: SWAP3
0000117c: SWAP2
0000117d: POP
0000117e: POP
0000117f: JUMP
00001180: INVALID
00001181: LOG2
00001182: PUSH5 0x6970667358
00001188: UNKNOWN(0x22)
00001189: SLT
0000118a: KECCAK256
0000118b: EQ
0000118c: SWAP14
0000118d: SLT
0000118e: AND
0000118f: DUP10
00001190: BASEFEE
00001191: PUSH32 0xbf57a61d14a2ba5fc966b5690a0f40ef9e877f8931aee9df7864736f6c634300
000011b2: ADDMOD
000011b3: XOR
000011b4: STOP
000011b5: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x2c183da19d5bdc69369ccb978aaee4fb799ed5132bc889139f79d60349d8a4b2
call_targets: 0x1425188a9c286ad3cce85eef40d93ad1259bea5d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x2c183da19d5bdc69369ccb978aaee4fb799ed5132bc889139f79d60349d8a4b2",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1425188a9c286ad3cce85eef40d93ad1259bea5d"
    ],
    "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": "0xc4d66de8",
            "selector": "0xc4d66de8",
            "calldata_variants": [
                "0xc4d66de8",
                "0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2d5d56b",
            "selector": "0xf2d5d56b",
            "calldata_variants": [
                "0xf2d5d56b",
                "0xf2d5d56b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf4ef8fcc",
            "selector": "0xf4ef8fcc",
            "calldata_variants": [
                "0xf4ef8fcc",
                "0xf4ef8fcc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xffa1ad74",
            "selector": "0xffa1ad74",
            "calldata_variants": [
                "0xffa1ad74",
                "0xffa1ad740000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0c340a24",
            "selector": "0x0c340a24",
            "calldata_variants": [
                "0x0c340a24",
                "0x0c340a240000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x16f0115b",
            "selector": "0x16f0115b",
            "calldata_variants": [
                "0x16f0115b",
                "0x16f0115b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4ddaf8f2",
            "selector": "0x4ddaf8f2",
            "calldata_variants": [
                "0x4ddaf8f2",
                "0x4ddaf8f20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xafcff50f",
            "selector": "0xafcff50f",
            "calldata_variants": [
                "0xafcff50f",
                "0xafcff50f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1704,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1788,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3648,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 3,
    "guards_detected": [],
    "untrusted_call_count": 3
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x2c183da19d5bdc69369ccb978aaee4fb799ed5132bc889139f79d60349d8a4b2
call_targets: 0x1425188a9c286ad3cce85eef40d93ad1259bea5d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x2c183da19d5bdc69369ccb978aaee4fb799ed5132bc889139f79d60349d8a4b2",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1425188a9c286ad3cce85eef40d93ad1259bea5d"
    ],
    "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": "0xc4d66de8",
            "selector": "0xc4d66de8",
            "calldata_variants": [
                "0xc4d66de8",
                "0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2d5d56b",
            "selector": "0xf2d5d56b",
            "calldata_variants": [
                "0xf2d5d56b",
                "0xf2d5d56b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf4ef8fcc",
            "selector": "0xf4ef8fcc",
            "calldata_variants": [
                "0xf4ef8fcc",
                "0xf4ef8fcc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xffa1ad74",
            "selector": "0xffa1ad74",
            "calldata_variants": [
                "0xffa1ad74",
                "0xffa1ad740000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0c340a24",
            "selector": "0x0c340a24",
            "calldata_variants": [
                "0x0c340a24",
                "0x0c340a240000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x16f0115b",
            "selector": "0x16f0115b",
            "calldata_variants": [
                "0x16f0115b",
                "0x16f0115b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4ddaf8f2",
            "selector": "0x4ddaf8f2",
            "calldata_variants": [
                "0x4ddaf8f2",
                "0x4ddaf8f20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xafcff50f",
            "selector": "0xafcff50f",
            "calldata_variants": [
                "0xafcff50f",
                "0xafcff50f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1704,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1788,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3648,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 3,
    "guards_detected": []
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 17
}