b311a07d-c6d4-4c28-a861-aba1ff258fdb
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 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 |
No slither job recorded yet.
[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":[]}
{
"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
}
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
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_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 |
viewtrace_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 | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 17
}
|