019c0ea9-c986-7300-a119-1cc3848d4c55
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 |
|---|---|---|---|---|
| 42235 | artifact.fetch | complete | 1 / 3 | 2 months ago |
| 42236 | proxy.resolve | complete | 1 / 3 | 2 months ago |
| 42237 | tool.cast_disasm | complete | 1 / 3 | 2 months ago |
| 42238 | analysis.bundle | complete | 1 / 3 | 2 months ago |
| 42239 | capability.graph | complete | 1 / 3 | 2 months ago |
| 42240 | detector.run | complete | 1 / 3 | 2 months ago |
| 42241 | validation.fork | complete | 1 / 3 | 2 months ago |
| 42482 | report.consolidate | complete | 1 / 6 | 2 months ago |
| 42483 | tool.slither | failed | 2 / 2 | 2 months ago |
{
"status": "not_proxy"
}
Traceback (most recent call last):
File "/var/www/tripwire/worker/worker.py", line 198, in main
payload = dispatch_job(job_type, job_id, job_meta, run_data, config, laravel_client)
File "/var/www/tripwire/worker/worker.py", line 114, in dispatch_job
return slither_run.run(job_id, job_meta, run_data, config, log, laravel_client)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/worker/jobs/slither_run.py", line 1084, in run
stdout_text, stderr_text, result_json = _run_slither(
~~~~~~~~~~~~^
workspace,
^^^^^^^^^^
...<4 lines>...
target_path=target_path,
^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/var/www/tripwire/worker/jobs/slither_run.py", line 958, in _run_slither
raise RuntimeError(f"slither failed (exit {result.returncode}): {stderr_text or stdout_text}")
RuntimeError: slither failed (exit 1): 'forge clean' running (wd: /tmp/slither-vcd167jp)
'forge config --json' running
'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-vcd167jp)
'forge' returned non-zero exit code 1
Error: Encountered invalid solc version in lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol: No solc version exists that matches the version requirement: ^0.8.20
Traceback (most recent call last):
File "/var/www/tripwire/.venv/bin/slither", line 10, in <module>
sys.exit(main())
~~~~^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 776, in main
main_impl(all_detector_classes=detectors, all_printer_classes=printers)
~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 882, in main_impl
) = process_all(filename, args, detector_classes, printer_classes)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/slither/__main__.py", line 96, in process_all
compilations = compile_all(target, **vars(args))
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 722, in compile_all
compilations.append(CryticCompile(target, **kwargs))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 211, in __init__
self._compile(**kwargs)
~~~~~~~~~~~~~^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/crytic_compile.py", line 633, in _compile
self._platform.compile(self, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/platform/foundry.py", line 102, in compile
hardhat_like_parsing(
~~~~~~~~~~~~~~~~~~~~^
crytic_compile, str(self._target), build_directory, str(self._project_root)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/var/www/tripwire/.venv/lib/python3.13/site-packages/crytic_compile/platform/hardhat.py", line 52, in hardhat_like_parsing
raise InvalidCompilation(txt)
crytic_compile.platform.exceptions.InvalidCompilation: Compilation failed. Can you run build command?
/tmp/slither-vcd167jp/out/build-info is not a directory.
{"no_findings":false,"summary":"Unprotected initializer allows any first caller to configure L2 bridge/governor on a proxy deployment, which can be used to take over the bridge if initialization is not atomic.","findings":[{"severity":"high","category":"upgradeability","title":"Initializer callable by anyone enables hostile bridge configuration","exploit_scenario":"If the proxy is deployed without immediately calling initialize in the same transaction, an attacker can front‑run and call initialize first. They choose their own _governor, _l2TokenBeacon, and L2 bridge bytecode hashes, resulting in an L2 bridge they control. With control of the L2 bridge, they can craft L2->L1 withdrawal messages that pass inclusion proofs and drain ERC20 balances held by the L1 bridge.","recommendation":"Restrict initialize to a trusted deployer/admin (e.g., onlyOwner/onlyProxyAdmin) or ensure the proxy is deployed with atomic initialization data. Consider using OpenZeppelin’s initializer pattern with an admin check or deploying via a factory that immediately initializes.","evidence":"initialize is external and only gated by reentrancyGuardInitializer; there is no access control on who can call it.","locations":["contracts/zksync/l1-contracts/bridge/L1ERC20Bridge.sol:82"]}]}
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-3ajag4d7
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019c0f9d-9dfc-7e30-bbfb-e44a443e1b59
--------
user
You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
Scope rules:
- You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party Solidity sources in this workspace.
- Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
- If there are only dependency files and no first-party sources, set no_findings=true and explain in summary.
Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
Output constraints (IMPORTANT):
- severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
- category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
Keep summary short and concrete.
mcp startup: no servers
exec
/bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-3ajag4d7 succeeded in 6ms:
This file concatenates the full contents of first-party Solidity sources for auditing.
Do not treat dependency code under lib/ or @openzeppelin/ as first-party.
================================================================================
FILE: contracts/zksync/l1-contracts/bridge/L1ERC20Bridge.sol
================================================================================
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import {IL1BridgeLegacy} from "./interfaces/IL1BridgeLegacy.sol";
import {IL1Bridge} from "./interfaces/IL1Bridge.sol";
import {IL2Bridge} from "./interfaces/IL2Bridge.sol";
import {IL2ERC20Bridge} from "./interfaces/IL2ERC20Bridge.sol";
import {BridgeInitializationHelper} from "./libraries/BridgeInitializationHelper.sol";
exec
/bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-3ajag4d7 succeeded in 13ms:
5:FILE: contracts/zksync/l1-contracts/bridge/L1ERC20Bridge.sol
436:FILE: contracts/zksync/l1-contracts/bridge/interfaces/IL1Bridge.sol
511:FILE: contracts/zksync/l1-contracts/bridge/interfaces/IL1BridgeLegacy.sol
531:FILE: contracts/zksync/l1-contracts/bridge/interfaces/IL2Bridge.sol
565:FILE: contracts/zksync/l1-contracts/bridge/interfaces/IL2ERC20Bridge.sol
577:FILE: contracts/zksync/l1-contracts/bridge/libraries/BridgeInitializationHelper.sol
640:FILE: contracts/zksync/l1-contracts/common/L2ContractAddresses.sol
674:FILE: contracts/zksync/l1-contracts/common/ReentrancyGuard.sol
768:FILE: contracts/zksync/l1-contracts/common/interfaces/IL2ContractDeployer.sol
804:FILE: contracts/zksync/l1-contracts/common/libraries/L2ContractHelper.sol
885:FILE: contracts/zksync/l1-contracts/common/libraries/UnsafeBytes.sol
963:FILE: contracts/zksync/l1-contracts/vendor/AddressAliasHelper.sol
1010:FILE: contracts/zksync/l1-contracts/zksync/Storage.sol
1080:FILE: contracts/zksync/l1-contracts/zksync/interfaces/IMailbox.sol
exec
/bin/bash -lc "sed -n '1,220p' AUDIT_BUNDLE.txt" in /tmp/codex-3ajag4d7 succeeded in 6ms:
This file concatenates the full contents of first-party Solidity sources for auditing.
Do not treat dependency code under lib/ or @openzeppelin/ as first-party.
================================================================================
FILE: contracts/zksync/l1-contracts/bridge/L1ERC20Bridge.sol
================================================================================
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import {IL1BridgeLegacy} from "./interfaces/IL1BridgeLegacy.sol";
import {IL1Bridge} from "./interfaces/IL1Bridge.sol";
import {IL2Bridge} from "./interfaces/IL2Bridge.sol";
import {IL2ERC20Bridge} from "./interfaces/IL2ERC20Bridge.sol";
import {BridgeInitializationHelper} from "./libraries/BridgeInitializationHelper.sol";
exec
/bin/bash -lc "sed -n '220,520p' AUDIT_BUNDLE.txt" in /tmp/codex-3ajag4d7 succeeded in 6ms:
/// @param _amount The total amount of tokens to be bridged
/// @param _l2TxGasLimit The L2 gas limit to be used in the corresponding L2 transaction
/// @param _l2TxGasPerPubdataByte The gasPerPubdataByteLimit to be used in the corresponding L2 transaction
/// @param _refundRecipient The address on L2 that will receive the refund for the transaction.
/// @dev If the L2 deposit finalization transaction fails, the `_refundRecipient` will receive the `_l2Value`.
/// Please note, the contract may change the refund recipient's address to eliminate sending funds to addresses
/// out of control.
/// - If `_refundRecipient` is a contract on L1, the refund will be sent to the aliased `_refundRecipient`.
/// - If `_refundRecipient` is set to `address(0)` and the sender has NO deployed bytecode on L1, the refund will
/// be sent to the `msg.sender` address.
/// - If `_refundRecipient` is set to `address(0)` and the sender has deployed bytecode on L1, the refund will be
/// sent to the aliased `msg.sender` address.
/// @dev The address aliasing of L1 contracts as refund recipient on L2 is necessary to guarantee that the funds
/// are controllable through the Mailbox, since the Mailbox applies address aliasing to the from address for the
/// L2 tx if the L1 msg.sender is a contract. Without address aliasing for L1 contracts as refund recipients they
/// would not be able to make proper L2 tx requests through the Mailbox to use or withdraw the funds from L2, and
/// the funds would be lost.
/// @return l2TxHash The L2 transaction hash of depositToMerge finalization
function depositToMerge(
address _l2Receiver,
exec
/bin/bash -lc "sed -n '520,900p' AUDIT_BUNDLE.txt" in /tmp/codex-3ajag4d7 succeeded in 6ms:
interface IL1BridgeLegacy {
function deposit(
address _l2Receiver,
address _l1Token,
uint256 _amount,
uint256 _l2TxGasLimit,
uint256 _l2TxGasPerPubdataByte
) external payable returns (bytes32 txHash);
}
================================================================================
FILE: contracts/zksync/l1-contracts/bridge/interfaces/IL2Bridge.sol
================================================================================
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
/// @author Matter Labs
interface IL2Bridge {
function finalizeDeposit(
exec
/bin/bash -lc "sed -n '900,1258p' AUDIT_BUNDLE.txt" in /tmp/codex-3ajag4d7 succeeded in 6ms:
*
* 2) Read variables are not cleaned up - https://docs.soliditylang.org/en/v0.8.16/internals/variable_cleanup.html.
* Using data in inline assembly can lead to unexpected behavior!
*/
library UnsafeBytes {
function readUint32(bytes memory _bytes, uint256 _start) internal pure returns (uint32 result, uint256 offset) {
assembly {
offset := add(_start, 4)
result := mload(add(_bytes, offset))
}
}
function readAddress(bytes memory _bytes, uint256 _start) internal pure returns (address result, uint256 offset) {
assembly {
offset := add(_start, 20)
result := mload(add(_bytes, offset))
}
}
function readUint256(bytes memory _bytes, uint256 _start) internal pure returns (uint256 result, uint256 offset) {
exec
/bin/bash -lc "nl -ba contracts/zksync/l1-contracts/bridge/L1ERC20Bridge.sol | sed -n '40,140p'" in /tmp/codex-3ajag4d7 succeeded in 7ms:
40 /// @dev Used for saving the number of deposited funds, to claim them in case the deposit transaction will fail
41 mapping(address account => mapping(address l1Token => mapping(bytes32 depositL2TxHash => uint256 amount)))
42 internal depositAmount;
43
44 /// @dev The address of deployed L2 bridge counterpart
45 address public l2Bridge;
46
47 /// @dev The address that acts as a beacon for L2 tokens
48 address public l2TokenBeacon;
49
50 /// @dev The bytecode hash of the L2 token contract
51 bytes32 public l2TokenProxyBytecodeHash;
52
53 mapping(address => uint256) private __DEPRECATED_lastWithdrawalLimitReset;
54
55 /// @dev A mapping L1 token address => the accumulated withdrawn amount during the withdrawal limit window
56 mapping(address => uint256) private __DEPRECATED_withdrawnAmountInWindow;
57
58 /// @dev The accumulated deposited amount per user.
59 /// @dev A mapping L1 token address => user address => the total deposited amount by the user
codex
{"no_findings":false,"summary":"Unprotected initializer allows any first caller to configure L2 bridge/governor on a proxy deployment, which can be used to take over the bridge if initialization is not atomic.","findings":[{"severity":"high","category":"upgradeability","title":"Initializer callable by anyone enables hostile bridge configuration","exploit_scenario":"If the proxy is deployed without immediately calling initialize in the same transaction, an attacker can front‑run and call initialize first. They choose their own _governor, _l2TokenBeacon, and L2 bridge bytecode hashes, resulting in an L2 bridge they control. With control of the L2 bridge, they can craft L2->L1 withdrawal messages that pass inclusion proofs and drain ERC20 balances held by the L1 bridge.","recommendation":"Restrict initialize to a trusted deployer/admin (e.g., onlyOwner/onlyProxyAdmin) or ensure the proxy is deployed with atomic initialization data. Consider using OpenZeppelin’s initializer pattern with an admin check or deploying via a factory that immediately initializes.","evidence":"initialize is external and only gated by reentrancyGuardInitializer; there is no access control on who can call it.","locations":["contracts/zksync/l1-contracts/bridge/L1ERC20Bridge.sol:82"]}]}
tokens used
39,216
{
"codex": {
"ran_at": "2026-01-30T15:57:41.327368+00:00",
"returncode": 0
},
"project": {
"mode": "source",
"file_count": 19,
"import_count": 23,
"first_party_contracts_count": 14
},
"summary": "Unprotected initializer allows any first caller to configure L2 bridge/governor on a proxy deployment, which can be used to take over the bridge if initialization is not atomic.",
"raw_final": {
"summary": "Unprotected initializer allows any first caller to configure L2 bridge/governor on a proxy deployment, which can be used to take over the bridge if initialization is not atomic.",
"findings": [
{
"title": "Initializer callable by anyone enables hostile bridge configuration",
"category": "upgradeability",
"evidence": "initialize is external and only gated by reentrancyGuardInitializer; there is no access control on who can call it.",
"severity": "high",
"locations": [
"contracts/zksync/l1-contracts/bridge/L1ERC20Bridge.sol:82"
],
"recommendation": "Restrict initialize to a trusted deployer/admin (e.g., onlyOwner/onlyProxyAdmin) or ensure the proxy is deployed with atomic initialization data. Consider using OpenZeppelin\u2019s initializer pattern with an admin check or deploying via a factory that immediately initializes.",
"exploit_scenario": "If the proxy is deployed without immediately calling initialize in the same transaction, an attacker can front\u2011run and call initialize first. They choose their own _governor, _l2TokenBeacon, and L2 bridge bytecode hashes, resulting in an L2 bridge they control. With control of the L2 bridge, they can craft L2->L1 withdrawal messages that pass inclusion proofs and drain ERC20 balances held by the L1 bridge."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: ISZERO 0000000a: PUSH2 0x0012 0000000d: JUMPI 0000000e: PUSH1 0x00 00000010: DUP1 00000011: REVERT 00000012: JUMPDEST 00000013: PUSH1 0x00 00000015: CALLDATALOAD 00000016: PUSH1 0xe0 00000018: SHR 00000019: DUP1 0000001a: PUSH4 0x11a2ccc1 0000001f: EQ 00000020: PUSH2 0x00c7 00000023: JUMPI 00000024: DUP1 00000025: PUSH4 0x14490720 0000002a: EQ 0000002b: PUSH2 0x00c2 0000002e: JUMPI 0000002f: DUP1 00000030: PUSH4 0x19fa7f62 00000035: EQ 00000036: PUSH2 0x00bd 00000039: JUMPI 0000003a: DUP1 0000003b: PUSH4 0x4bed8212 00000040: EQ 00000041: PUSH2 0x00b8 00000044: JUMPI 00000045: DUP1 00000046: PUSH4 0x66550c4e 0000004b: EQ 0000004c: PUSH2 0x00b3 0000004f: JUMPI 00000050: DUP1 00000051: PUSH4 0x6dde7209 00000056: EQ 00000057: PUSH2 0x00ae 0000005a: JUMPI 0000005b: DUP1 0000005c: PUSH4 0x823f1d96 00000061: EQ 00000062: PUSH2 0x00a9 00000065: JUMPI 00000066: DUP1 00000067: PUSH4 0x933999fb 0000006c: EQ 0000006d: PUSH2 0x00a4 00000070: JUMPI 00000071: DUP1 00000072: PUSH4 0xae1f6aaf 00000077: EQ 00000078: PUSH2 0x009f 0000007b: JUMPI 0000007c: DUP1 0000007d: PUSH4 0xe8b99b1b 00000082: EQ 00000083: PUSH2 0x009a 00000086: JUMPI 00000087: PUSH4 0xf5f15168 0000008c: EQ 0000008d: PUSH2 0x0095 00000090: JUMPI 00000091: PUSH1 0x00 00000093: DUP1 00000094: REVERT 00000095: JUMPDEST 00000096: PUSH2 0x0b70 00000099: JUMP 0000009a: JUMPDEST 0000009b: PUSH2 0x0ac5 0000009e: JUMP 0000009f: JUMPDEST 000000a0: PUSH2 0x0a9c 000000a3: JUMP 000000a4: JUMPDEST 000000a5: PUSH2 0x08d4 000000a8: JUMP 000000a9: JUMPDEST 000000aa: PUSH2 0x08b6 000000ad: JUMP 000000ae: JUMPDEST 000000af: PUSH2 0x088d 000000b2: JUMP 000000b3: JUMPDEST 000000b4: PUSH2 0x06a6 000000b7: JUMP 000000b8: JUMPDEST 000000b9: PUSH2 0x061d 000000bc: JUMP 000000bd: JUMPDEST 000000be: PUSH2 0x0442 000000c1: JUMP 000000c2: JUMPDEST 000000c3: PUSH2 0x01e8 000000c6: JUMP 000000c7: JUMPDEST 000000c8: PUSH2 0x0112 000000cb: JUMP 000000cc: JUMPDEST 000000cd: PUSH1 0x44 000000cf: CALLDATALOAD 000000d0: SWAP1 000000d1: PUSH2 0xffff 000000d4: DUP3 000000d5: AND 000000d6: DUP3 000000d7: SUB 000000d8: PUSH2 0x00dd 000000db: JUMPI 000000dc: JUMP 000000dd: JUMPDEST 000000de: PUSH1 0x00 000000e0: DUP1 000000e1: REVERT 000000e2: JUMPDEST 000000e3: SWAP2 000000e4: DUP2 000000e5: PUSH1 0x1f 000000e7: DUP5 000000e8: ADD 000000e9: SLT 000000ea: ISZERO 000000eb: PUSH2 0x00dd 000000ee: JUMPI 000000ef: DUP3 000000f0: CALLDATALOAD 000000f1: SWAP2 000000f2: PUSH1 0x01 000000f4: PUSH1 0x01 000000f6: PUSH1 0x40 000000f8: SHL 000000f9: SUB 000000fa: DUP4 000000fb: GT 000000fc: PUSH2 0x00dd 000000ff: JUMPI 00000100: PUSH1 0x20 00000102: DUP1 00000103: DUP6 00000104: ADD 00000105: SWAP5 00000106: DUP5 00000107: PUSH1 0x05 00000109: SHL 0000010a: ADD 0000010b: ADD 0000010c: GT 0000010d: PUSH2 0x00dd 00000110: JUMPI 00000111: JUMP 00000112: JUMPDEST 00000113: CALLVALUE 00000114: PUSH2 0x00dd 00000117: JUMPI 00000118: PUSH1 0xa0 0000011a: CALLDATASIZE 0000011b: PUSH1 0x03 0000011d: NOT 0000011e: ADD 0000011f: SLT 00000120: PUSH2 0x00dd 00000123: JUMPI 00000124: PUSH2 0x012b 00000127: PUSH2 0x00cc 0000012a: JUMP 0000012b: JUMPDEST 0000012c: PUSH1 0x01 0000012e: PUSH1 0x01 00000130: PUSH1 0x40 00000132: SHL 00000133: SUB 00000134: PUSH1 0x64 00000136: CALLDATALOAD 00000137: DUP2 00000138: DUP2 00000139: GT 0000013a: PUSH2 0x00dd 0000013d: JUMPI 0000013e: CALLDATASIZE 0000013f: PUSH1 0x23 00000141: DUP3 00000142: ADD 00000143: SLT 00000144: ISZERO 00000145: PUSH2 0x00dd 00000148: JUMPI 00000149: DUP1 0000014a: PUSH1 0x04 0000014c: ADD 0000014d: CALLDATALOAD 0000014e: DUP3 0000014f: DUP2 00000150: GT 00000151: PUSH2 0x00dd 00000154: JUMPI 00000155: CALLDATASIZE 00000156: PUSH1 0x24 00000158: DUP3 00000159: DUP5 0000015a: ADD 0000015b: ADD 0000015c: GT 0000015d: PUSH2 0x00dd 00000160: JUMPI 00000161: PUSH1 0x84 00000163: CALLDATALOAD 00000164: SWAP3 00000165: DUP4 00000166: GT 00000167: PUSH2 0x00dd 0000016a: JUMPI 0000016b: PUSH2 0x018e 0000016e: SWAP4 0000016f: PUSH2 0x017e 00000172: PUSH1 0x24 00000174: SWAP5 00000175: CALLDATASIZE 00000176: SWAP1 00000177: PUSH1 0x04 00000179: ADD 0000017a: PUSH2 0x00e2 0000017d: JUMP 0000017e: JUMPDEST 0000017f: SWAP5 00000180: SWAP1 00000181: SWAP4 00000182: ADD 00000183: SWAP1 00000184: PUSH1 0x24 00000186: CALLDATALOAD 00000187: PUSH1 0x04 00000189: CALLDATALOAD 0000018a: PUSH2 0x189d 0000018d: JUMP 0000018e: JUMPDEST 0000018f: STOP 00000190: JUMPDEST 00000191: PUSH1 0x44 00000193: CALLDATALOAD 00000194: SWAP1 00000195: PUSH1 0x01 00000197: PUSH1 0x01 00000199: PUSH1 0xa0 0000019b: SHL 0000019c: SUB 0000019d: DUP3 0000019e: AND 0000019f: DUP3 000001a0: SUB 000001a1: PUSH2 0x00dd 000001a4: JUMPI 000001a5: JUMP 000001a6: JUMPDEST 000001a7: PUSH1 0x64 000001a9: CALLDATALOAD 000001aa: SWAP1 000001ab: PUSH1 0x01 000001ad: PUSH1 0x01 000001af: PUSH1 0xa0 000001b1: SHL 000001b2: SUB 000001b3: DUP3 000001b4: AND 000001b5: DUP3 000001b6: SUB 000001b7: PUSH2 0x00dd 000001ba: JUMPI 000001bb: JUMP 000001bc: JUMPDEST 000001bd: PUSH1 0x04 000001bf: CALLDATALOAD 000001c0: SWAP1 000001c1: PUSH1 0x01 000001c3: PUSH1 0x01 000001c5: PUSH1 0xa0 000001c7: SHL 000001c8: SUB 000001c9: DUP3 000001ca: AND 000001cb: DUP3 000001cc: SUB 000001cd: PUSH2 0x00dd 000001d0: JUMPI 000001d1: JUMP 000001d2: JUMPDEST 000001d3: PUSH1 0x24 000001d5: CALLDATALOAD 000001d6: SWAP1 000001d7: PUSH1 0x01 000001d9: PUSH1 0x01 000001db: PUSH1 0xa0 000001dd: SHL 000001de: SUB 000001df: DUP3 000001e0: AND 000001e1: DUP3 000001e2: SUB 000001e3: PUSH2 0x00dd 000001e6: JUMPI 000001e7: JUMP 000001e8: JUMPDEST 000001e9: PUSH1 0xc0 000001eb: CALLDATASIZE 000001ec: PUSH1 0x03 000001ee: NOT 000001ef: ADD 000001f0: SLT 000001f1: PUSH2 0x00dd 000001f4: JUMPI 000001f5: PUSH1 0x01 000001f7: PUSH1 0x01 000001f9: PUSH1 0x40 000001fb: SHL 000001fc: SUB 000001fd: PUSH1 0x04 000001ff: CALLDATALOAD 00000200: DUP2 00000201: DUP2 00000202: GT 00000203: PUSH2 0x00dd 00000206: JUMPI 00000207: PUSH2 0x0214 0000020a: SWAP1 0000020b: CALLDATASIZE 0000020c: SWAP1 0000020d: PUSH1 0x04 0000020f: ADD 00000210: PUSH2 0x00e2 00000213: JUMP 00000214: JUMPDEST 00000215: SWAP2 00000216: PUSH1 0x24 00000218: CALLDATALOAD 00000219: SWAP1 0000021a: DUP2 0000021b: GT 0000021c: PUSH2 0x00dd 0000021f: JUMPI 00000220: PUSH2 0x022d 00000223: SWAP1 00000224: CALLDATASIZE 00000225: SWAP1 00000226: PUSH1 0x04 00000228: ADD 00000229: PUSH2 0x00e2 0000022c: JUMP 0000022d: JUMPDEST 0000022e: SWAP2 0000022f: SWAP1 00000230: PUSH2 0x0237 00000233: PUSH2 0x0190 00000236: JUMP 00000237: JUMPDEST 00000238: SWAP4 00000239: PUSH2 0x0240 0000023c: PUSH2 0x01a6 0000023f: JUMP 00000240: JUMPDEST 00000241: SWAP2 00000242: PUSH1 0x84 00000244: CALLDATALOAD 00000245: SWAP5 00000246: PUSH1 0xa4 00000248: CALLDATALOAD 00000249: SWAP2 0000024a: PUSH1 0x00 0000024c: DUP1 0000024d: MLOAD 0000024e: PUSH1 0x20 00000250: PUSH2 0x1dad 00000253: DUP4 00000254: CODECOPY 00000255: DUP2 00000256: MLOAD 00000257: SWAP2 00000258: MSTORE 00000259: PUSH1 0x01 0000025b: DUP2 0000025c: SLOAD 0000025d: SWAP2 0000025e: SSTORE 0000025f: PUSH2 0x0418 00000262: JUMPI 00000263: PUSH2 0x0382 00000266: DUP8 00000267: DUP6 00000268: PUSH2 0x0345 0000026b: DUP9 0000026c: SWAP5 0000026d: PUSH2 0x02f8 00000270: PUSH2 0x03e8 00000273: SWAP8 00000274: PUSH2 0x033d 00000277: PUSH2 0x018e 0000027a: SWAP16 0000027b: SWAP12 0000027c: PUSH2 0x03f6 0000027f: SWAP16 00000280: DUP16 00000281: SWAP14 00000282: DUP3 00000283: DUP16 00000284: DUP16 00000285: PUSH2 0x032b 00000288: SWAP4 00000289: DUP16 0000028a: PUSH2 0x02d4 0000028d: PUSH2 0x0326 00000290: SWAP4 00000291: PUSH2 0x0337 00000294: SWAP9 00000295: PUSH2 0x02b8 00000298: PUSH2 0x02db 0000029b: SWAP5 0000029c: PUSH1 0x01 0000029e: DUP1 0000029f: PUSH1 0xa0 000002a1: SHL 000002a2: SUB 000002a3: SWAP1 000002a4: PUSH2 0x02b0 000002a7: DUP3 000002a8: DUP10 000002a9: AND 000002aa: ISZERO 000002ab: ISZERO 000002ac: PUSH2 0x0c38 000002af: JUMP 000002b0: JUMPDEST 000002b1: AND 000002b2: ISZERO 000002b3: ISZERO 000002b4: PUSH2 0x0c69 000002b7: JUMP 000002b8: JUMPDEST 000002b9: PUSH2 0x02c4 000002bc: PUSH1 0x03 000002be: DUP10 000002bf: EQ 000002c0: PUSH2 0x0c9a 000002c3: JUMP 000002c4: JUMPDEST 000002c5: PUSH2 0x02cf 000002c8: DUP14 000002c9: DUP10 000002ca: EQ 000002cb: PUSH2 0x0ccb 000002ce: JUMP 000002cf: JUMPDEST 000002d0: PUSH2 0x0d12 000002d3: JUMP 000002d4: JUMPDEST 000002d5: CALLVALUE 000002d6: EQ 000002d7: PUSH2 0x0d24 000002da: JUMP 000002db: JUMPDEST 000002dc: PUSH2 0x0304 000002df: PUSH2 0x02ff 000002e2: DUP13 000002e3: PUSH2 0x02f8 000002e6: DUP13 000002e7: PUSH2 0x02f0 000002ea: DUP10 000002eb: DUP10 000002ec: PUSH2 0x0d6c 000002ef: JUMP 000002f0: JUMPDEST 000002f1: SWAP4 000002f2: SWAP1 000002f3: POP 000002f4: PUSH2 0x0e2b 000002f7: JUMP 000002f8: JUMPDEST 000002f9: CALLDATALOAD 000002fa: SWAP1 000002fb: PUSH2 0x1cae 000002fe: JUMP 000002ff: JUMPDEST 00000300: PUSH1 0x04 00000302: SSTORE 00000303: JUMP 00000304: JUMPDEST 00000305: PUSH1 0x01 00000307: DUP1 00000308: PUSH1 0xa0 0000030a: SHL 0000030b: SUB 0000030c: AND 0000030d: PUSH12 0xffffffffffffffffffffffff 0000031a: PUSH1 0xa0 0000031c: SHL 0000031d: PUSH1 0x03 0000031f: SLOAD 00000320: AND 00000321: OR 00000322: PUSH1 0x03 00000324: SSTORE 00000325: JUMP 00000326: JUMPDEST 00000327: PUSH2 0x0db1 0000032a: JUMP 0000032b: JUMPDEST 0000032c: SWAP1 0000032d: POP 0000032e: PUSH2 0x02f8 00000331: DUP6 00000332: DUP9 00000333: PUSH2 0x0e3a 00000336: JUMP 00000337: JUMPDEST 00000338: SWAP13 00000339: PUSH2 0x0deb 0000033c: JUMP 0000033d: JUMPDEST 0000033e: SWAP4 0000033f: SWAP1 00000340: POP 00000341: PUSH2 0x0e43 00000344: JUMP 00000345: JUMPDEST 00000346: SWAP7 00000347: PUSH2 0x037b 0000034a: PUSH32 0x0000000000000000000000005fd9f73286b7e8683bab45019c94553b93e015cf 0000036b: SWAP11 0000036c: PUSH2 0x0373 0000036f: PUSH2 0x0f34 00000372: JUMP 00000373: JUMPDEST 00000374: SWAP4 00000375: CALLDATASIZE 00000376: SWAP2 00000377: PUSH2 0x0f7e 0000037a: JUMP 0000037b: JUMPDEST 0000037c: SWAP3 0000037d: DUP11 0000037e: PUSH2 0x1bcb 00000381: JUMP 00000382: JUMPDEST 00000383: PUSH1 0x04 00000385: SLOAD 00000386: PUSH1 0x40 00000388: MLOAD 00000389: PUSH4 0x69359f37 0000038e: PUSH1 0xe1 00000390: SHL 00000391: PUSH1 0x20 00000393: DUP3 00000394: ADD 00000395: MSTORE 00000396: ADDRESS 00000397: PUSH1 0x24 00000399: DUP3 0000039a: ADD 0000039b: MSTORE 0000039c: PUSH1 0x44 0000039e: DUP2 0000039f: ADD 000003a0: SWAP2 000003a1: SWAP1 000003a2: SWAP2 000003a3: MSTORE 000003a4: PUSH1 0x01 000003a6: PUSH1 0x01 000003a8: PUSH1 0xa0 000003aa: SHL 000003ab: SUB 000003ac: SWAP3 000003ad: SWAP1 000003ae: SWAP3 000003af: AND 000003b0: PUSH1 0x64 000003b2: DUP1 000003b3: DUP5 000003b4: ADD 000003b5: SWAP2 000003b6: SWAP1 000003b7: SWAP2 000003b8: MSTORE 000003b9: DUP3 000003ba: MSTORE 000003bb: PUSH1 0x1f 000003bd: NOT 000003be: SWAP2 000003bf: PUSH2 0x03dc 000003c2: SWAP1 000003c3: PUSH2 0x03cd 000003c6: PUSH1 0x84 000003c8: DUP3 000003c9: PUSH2 0x0ed9 000003cc: JUMP 000003cd: JUMPDEST 000003ce: PUSH1 0x40 000003d0: MLOAD 000003d1: SWAP8 000003d2: DUP9 000003d3: SWAP4 000003d4: PUSH1 0x20 000003d6: DUP6 000003d7: ADD 000003d8: PUSH2 0x1040 000003db: JUMP 000003dc: JUMPDEST 000003dd: SUB 000003de: SWAP1 000003df: DUP2 000003e0: ADD 000003e1: DUP6 000003e2: MSTORE 000003e3: DUP5 000003e4: PUSH2 0x0ed9 000003e7: JUMP 000003e8: JUMPDEST 000003e9: PUSH2 0x03f0 000003ec: PUSH2 0x106c 000003ef: JUMP 000003f0: JUMPDEST 000003f1: SWAP4 000003f2: PUSH2 0x1bcb 000003f5: JUMP 000003f6: JUMPDEST 000003f7: PUSH1 0x01 000003f9: DUP1 000003fa: PUSH1 0xa0 000003fc: SHL 000003fd: SUB 000003fe: AND 000003ff: PUSH12 0xffffffffffffffffffffffff 0000040c: PUSH1 0xa0 0000040e: SHL 0000040f: PUSH1 0x02 00000411: SLOAD 00000412: AND 00000413: OR 00000414: PUSH1 0x02 00000416: SSTORE 00000417: JUMP 00000418: JUMPDEST 00000419: PUSH1 0x40 0000041b: MLOAD 0000041c: PUSH3 0x461bcd 00000420: PUSH1 0xe5 00000422: SHL 00000423: DUP2 00000424: MSTORE 00000425: PUSH1 0x20 00000427: PUSH1 0x04 00000429: DUP3 0000042a: ADD 0000042b: MSTORE 0000042c: PUSH1 0x02 0000042e: PUSH1 0x24 00000430: DUP3 00000431: ADD 00000432: MSTORE 00000433: PUSH2 0x18a1 00000436: PUSH1 0xf1 00000438: SHL 00000439: PUSH1 0x44 0000043b: DUP3 0000043c: ADD 0000043d: MSTORE 0000043e: PUSH1 0x64 00000440: SWAP1 00000441: REVERT 00000442: JUMPDEST 00000443: CALLVALUE 00000444: PUSH2 0x00dd 00000447: JUMPI 00000448: PUSH1 0xe0 0000044a: CALLDATASIZE 0000044b: PUSH1 0x03 0000044d: NOT 0000044e: ADD 0000044f: SLT 00000450: PUSH2 0x00dd 00000453: JUMPI 00000454: PUSH2 0x045b 00000457: PUSH2 0x01bc 0000045a: JUMP 0000045b: JUMPDEST 0000045c: PUSH2 0x0463 0000045f: PUSH2 0x01d2 00000462: JUMP 00000463: JUMPDEST 00000464: SWAP1 00000465: PUSH1 0xa4 00000467: CALLDATALOAD 00000468: SWAP1 00000469: PUSH1 0x44 0000046b: CALLDATALOAD 0000046c: PUSH2 0xffff 0000046f: DUP4 00000470: AND 00000471: DUP4 00000472: SUB 00000473: PUSH2 0x00dd 00000476: JUMPI 00000477: PUSH1 0xc4 00000479: CALLDATALOAD 0000047a: PUSH1 0x01 0000047c: PUSH1 0x01 0000047e: PUSH1 0x40 00000480: SHL 00000481: SUB 00000482: DUP2 00000483: GT 00000484: PUSH2 0x00dd 00000487: JUMPI 00000488: PUSH2 0x0495 0000048b: SWAP1 0000048c: CALLDATASIZE 0000048d: SWAP1 0000048e: PUSH1 0x04 00000490: ADD 00000491: PUSH2 0x00e2 00000494: JUMP 00000495: JUMPDEST 00000496: SWAP4 00000497: PUSH2 0x04da 0000049a: PUSH1 0x00 0000049c: DUP1 0000049d: MLOAD 0000049e: PUSH1 0x20 000004a0: PUSH2 0x1dad 000004a3: DUP4 000004a4: CODECOPY 000004a5: DUP2 000004a6: MLOAD 000004a7: SWAP2 000004a8: MSTORE 000004a9: SWAP6 000004aa: PUSH2 0x04b6 000004ad: PUSH1 0x01 000004af: DUP9 000004b0: SLOAD 000004b1: EQ 000004b2: PUSH2 0x107f 000004b5: JUMP 000004b6: JUMPDEST 000004b7: PUSH1 0x02 000004b9: DUP8 000004ba: SSTORE 000004bb: PUSH1 0x40 000004bd: MLOAD 000004be: PUSH4 0x042901c7 000004c3: PUSH1 0xe0 000004c5: SHL 000004c6: DUP2 000004c7: MSTORE 000004c8: SWAP4 000004c9: DUP5 000004ca: SWAP4 000004cb: PUSH1 0x84 000004cd: CALLDATALOAD 000004ce: PUSH1 0x64 000004d0: CALLDATALOAD 000004d1: DUP9 000004d2: PUSH1 0x04 000004d4: DUP9 000004d5: ADD 000004d6: PUSH2 0x17c0 000004d9: JUMP 000004da: JUMPDEST 000004db: PUSH1 0x01 000004dd: PUSH1 0x01 000004df: PUSH1 0xa0 000004e1: SHL 000004e2: SUB 000004e3: SWAP2 000004e4: PUSH1 0x20 000004e6: SWAP2 000004e7: DUP5 000004e8: SWAP2 000004e9: SWAP1 000004ea: SUB 000004eb: DUP2 000004ec: PUSH32 0x0000000000000000000000005fd9f73286b7e8683bab45019c94553b93e015cf 0000050d: DUP6 0000050e: AND 0000050f: GAS 00000510: STATICCALL 00000511: DUP1 00000512: ISZERO 00000513: PUSH2 0x0618 00000516: JUMPI 00000517: PUSH1 0x01 00000519: SWAP7 0000051a: PUSH2 0x054e 0000051d: DUP4 0000051e: SWAP3 0000051f: PUSH32 0xbe066dc591f4a444f75176d387c3e6c775e5706d9ea9a91d11eb49030c66cf60 00000540: SWAP6 00000541: PUSH1 0x00 00000543: SWAP2 00000544: PUSH2 0x05ea 00000547: JUMPI 00000548: JUMPDEST 00000549: POP 0000054a: PUSH2 0x17fa 0000054d: JUMP 0000054e: JUMPDEST 0000054f: PUSH1 0x00 00000551: PUSH2 0x05cd 00000554: PUSH2 0x059d 00000557: DUP8 00000558: PUSH2 0x058e 0000055b: DUP6 0000055c: PUSH2 0x0577 0000055f: DUP13 00000560: PUSH1 0x01 00000562: DUP1 00000563: PUSH1 0xa0 00000565: SHL 00000566: SUB 00000567: AND 00000568: PUSH1 0x00 0000056a: MSTORE 0000056b: PUSH1 0x01 0000056d: PUSH1 0x20 0000056f: MSTORE 00000570: PUSH1 0x40 00000572: PUSH1 0x00 00000574: KECCAK256 00000575: SWAP1 00000576: JUMP 00000577: JUMPDEST 00000578: SWAP1 00000579: PUSH1 0x01 0000057b: DUP1 0000057c: PUSH1 0xa0 0000057e: SHL 0000057f: SUB 00000580: AND 00000581: PUSH1 0x00 00000583: MSTORE 00000584: PUSH1 0x20 00000586: MSTORE 00000587: PUSH1 0x40 00000589: PUSH1 0x00 0000058b: KECCAK256 0000058c: SWAP1 0000058d: JUMP 0000058e: JUMPDEST 0000058f: SWAP1 00000590: PUSH1 0x00 00000592: MSTORE 00000593: PUSH1 0x20 00000595: MSTORE 00000596: PUSH1 0x40 00000598: PUSH1 0x00 0000059a: KECCAK256 0000059b: SWAP1 0000059c: JUMP 0000059d: JUMPDEST 0000059e: SLOAD 0000059f: SWAP7 000005a0: PUSH2 0x05aa 000005a3: DUP9 000005a4: ISZERO 000005a5: ISZERO 000005a6: PUSH2 0x182b 000005a9: JUMP 000005aa: JUMPDEST 000005ab: PUSH1 0x01 000005ad: PUSH1 0x01 000005af: PUSH1 0xa0 000005b1: SHL 000005b2: SUB 000005b3: DUP10 000005b4: AND 000005b5: PUSH1 0x00 000005b7: SWAP1 000005b8: DUP2 000005b9: MSTORE 000005ba: PUSH1 0x01 000005bc: PUSH1 0x20 000005be: MSTORE 000005bf: PUSH1 0x40 000005c1: SWAP1 000005c2: KECCAK256 000005c3: PUSH2 0x058e 000005c6: SWAP1 000005c7: DUP6 000005c8: SWAP1 000005c9: PUSH2 0x0577 000005cc: JUMP 000005cd: JUMPDEST 000005ce: SSTORE 000005cf: AND 000005d0: SWAP4 000005d1: PUSH2 0x05db 000005d4: DUP5 000005d5: DUP3 000005d6: DUP8 000005d7: PUSH2 0x185c 000005da: JUMP 000005db: JUMPDEST 000005dc: PUSH1 0x40 000005de: MLOAD 000005df: SWAP4 000005e0: DUP5 000005e1: MSTORE 000005e2: AND 000005e3: SWAP2 000005e4: PUSH1 0x20 000005e6: SWAP1 000005e7: LOG3 000005e8: SSTORE 000005e9: STOP 000005ea: JUMPDEST 000005eb: PUSH2 0x060b 000005ee: SWAP2 000005ef: POP 000005f0: PUSH1 0x20 000005f2: RETURNDATASIZE 000005f3: DUP2 000005f4: GT 000005f5: PUSH2 0x0611 000005f8: JUMPI 000005f9: JUMPDEST 000005fa: PUSH2 0x0603 000005fd: DUP2 000005fe: DUP4 000005ff: PUSH2 0x0ed9 00000602: JUMP 00000603: JUMPDEST 00000604: DUP2 00000605: ADD 00000606: SWAP1 00000607: PUSH2 0x13a9 0000060a: JUMP 0000060b: JUMPDEST 0000060c: CODESIZE 0000060d: PUSH2 0x0548 00000610: JUMP 00000611: JUMPDEST 00000612: POP 00000613: RETURNDATASIZE 00000614: PUSH2 0x05f9 00000617: JUMP 00000618: JUMPDEST 00000619: PUSH2 0x1278 0000061c: JUMP 0000061d: JUMPDEST 0000061e: CALLVALUE 0000061f: PUSH2 0x00dd 00000622: JUMPI 00000623: PUSH1 0x40 00000625: CALLDATASIZE 00000626: PUSH1 0x03 00000628: NOT 00000629: ADD 0000062a: SLT 0000062b: PUSH2 0x00dd 0000062e: JUMPI 0000062f: PUSH1 0x04 00000631: CALLDATALOAD 00000632: PUSH1 0x00 00000634: MSTORE 00000635: PUSH1 0x00 00000637: PUSH1 0x20 00000639: MSTORE 0000063a: PUSH1 0x40 0000063c: PUSH1 0x00 0000063e: KECCAK256 0000063f: PUSH1 0x24 00000641: CALLDATALOAD 00000642: PUSH1 0x00 00000644: MSTORE 00000645: PUSH1 0x20 00000647: MSTORE 00000648: PUSH1 0x20 0000064a: PUSH1 0xff 0000064c: PUSH1 0x40 0000064e: PUSH1 0x00 00000650: KECCAK256 00000651: SLOAD 00000652: AND 00000653: PUSH1 0x40 00000655: MLOAD 00000656: SWAP1 00000657: ISZERO 00000658: ISZERO 00000659: DUP2 0000065a: MSTORE 0000065b: RETURN 0000065c: JUMPDEST 0000065d: PUSH1 0xc0 0000065f: SWAP1 00000660: PUSH1 0x03 00000662: NOT 00000663: ADD 00000664: SLT 00000665: PUSH2 0x00dd 00000668: JUMPI 00000669: PUSH1 0x01 0000066b: PUSH1 0x01 0000066d: PUSH1 0xa0 0000066f: SHL 00000670: SUB 00000671: SWAP1 00000672: PUSH1 0x04 00000674: CALLDATALOAD 00000675: DUP3 00000676: DUP2 00000677: AND 00000678: DUP2 00000679: SUB 0000067a: PUSH2 0x00dd 0000067d: JUMPI 0000067e: SWAP2 0000067f: PUSH1 0x24 00000681: CALLDATALOAD 00000682: DUP2 00000683: DUP2 00000684: AND 00000685: DUP2 00000686: SUB 00000687: PUSH2 0x00dd 0000068a: JUMPI 0000068b: SWAP2 0000068c: PUSH1 0x44 0000068e: CALLDATALOAD 0000068f: SWAP2 00000690: PUSH1 0x64 00000692: CALLDATALOAD 00000693: SWAP2 00000694: PUSH1 0x84 00000696: CALLDATALOAD 00000697: SWAP2 00000698: PUSH1 0xa4 0000069a: CALLDATALOAD 0000069b: SWAP1 0000069c: DUP2 0000069d: AND 0000069e: DUP2 0000069f: SUB 000006a0: PUSH2 0x00dd 000006a3: JUMPI 000006a4: SWAP1 000006a5: JUMP 000006a6: JUMPDEST 000006a7: PUSH2 0x06af 000006aa: CALLDATASIZE 000006ab: PUSH2 0x065c 000006ae: JUMP 000006af: JUMPDEST 000006b0: SWAP2 000006b1: SWAP5 000006b2: SWAP3 000006b3: SWAP1 000006b4: SWAP4 000006b5: PUSH1 0x20 000006b7: PUSH1 0x00 000006b9: DUP1 000006ba: MLOAD 000006bb: PUSH1 0x20 000006bd: PUSH2 0x1dad 000006c0: DUP4 000006c1: CODECOPY 000006c2: DUP2 000006c3: MLOAD 000006c4: SWAP2 000006c5: MSTORE 000006c6: SWAP4 000006c7: PUSH2 0x06d3 000006ca: PUSH1 0x01 000006cc: DUP7 000006cd: SLOAD 000006ce: EQ 000006cf: PUSH2 0x107f 000006d2: JUMP 000006d3: JUMPDEST 000006d4: PUSH1 0x02 000006d6: DUP6 000006d7: SSTORE 000006d8: PUSH2 0x06e2 000006db: DUP5 000006dc: ISZERO 000006dd: ISZERO 000006de: PUSH2 0x10b0 000006e1: JUMP 000006e2: JUMPDEST 000006e3: PUSH1 0x01 000006e5: PUSH1 0x01 000006e7: PUSH1 0xa0 000006e9: SHL 000006ea: SUB 000006eb: SWAP7 000006ec: PUSH2 0x0703 000006ef: PUSH2 0x06fb 000006f2: DUP7 000006f3: DUP7 000006f4: DUP12 000006f5: AND 000006f6: CALLER 000006f7: PUSH2 0x1291 000006fa: JUMP 000006fb: JUMPDEST 000006fc: SWAP6 000006fd: DUP7 000006fe: EQ 000006ff: PUSH2 0x10e1 00000702: JUMP 00000703: JUMPDEST 00000704: PUSH2 0x070f 00000707: DUP6 00000708: DUP6 00000709: DUP10 0000070a: CALLER 0000070b: PUSH2 0x15ae 0000070e: JUMP 0000070f: JUMPDEST 00000710: SWAP2 00000711: DUP9 00000712: DUP2 00000713: AND 00000714: ISZERO 00000715: PUSH2 0x0863 00000718: JUMPI 00000719: JUMPDEST 0000071a: PUSH1 0x02 0000071c: SLOAD 0000071d: PUSH2 0x0750 00000720: SWAP2 00000721: SWAP1 00000722: PUSH1 0x01 00000724: PUSH1 0x01 00000726: PUSH1 0xa0 00000728: SHL 00000729: SUB 0000072a: AND 0000072b: JUMPDEST 0000072c: SWAP3 0000072d: PUSH2 0x0734 00000730: PUSH2 0x106c 00000733: JUMP 00000734: JUMPDEST 00000735: SWAP1 00000736: PUSH1 0x40 00000738: MLOAD 00000739: SWAP13 0000073a: DUP14 0000073b: SWAP7 0000073c: DUP8 0000073d: SWAP7 0000073e: PUSH4 0xeb672419 00000743: PUSH1 0xe0 00000745: SHL 00000746: DUP9 00000747: MSTORE 00000748: PUSH1 0x04 0000074a: DUP9 0000074b: ADD 0000074c: PUSH2 0x1121 0000074f: JUMP 00000750: JUMPDEST 00000751: SUB 00000752: DUP2 00000753: CALLVALUE 00000754: DUP10 00000755: PUSH32 0x0000000000000000000000005fd9f73286b7e8683bab45019c94553b93e015cf 00000776: AND 00000777: GAS 00000778: CALL 00000779: SWAP4 0000077a: DUP5 0000077b: ISZERO 0000077c: PUSH2 0x0618 0000077f: JUMPI 00000780: PUSH1 0x20 00000782: SWAP7 00000783: PUSH1 0x00 00000785: SWAP6 00000786: PUSH2 0x0811 00000789: JUMPI 0000078a: JUMPDEST 0000078b: POP 0000078c: SWAP4 0000078d: PUSH32 0x46825fb1efbc2ac58f7529d18b84230c9818ca01aa51e874715a59f68c7fd6c5 000007ae: DUP2 000007af: SWAP7 000007b0: PUSH1 0x01 000007b2: SWAP7 000007b3: DUP6 000007b4: PUSH2 0x07d7 000007b7: DUP6 000007b8: PUSH2 0x058e 000007bb: DUP9 000007bc: PUSH2 0x0577 000007bf: CALLER 000007c0: PUSH1 0x01 000007c2: DUP1 000007c3: PUSH1 0xa0 000007c5: SHL 000007c6: SUB 000007c7: AND 000007c8: PUSH1 0x00 000007ca: MSTORE 000007cb: PUSH1 0x01 000007cd: PUSH1 0x20 000007cf: MSTORE 000007d0: PUSH1 0x40 000007d2: PUSH1 0x00 000007d4: KECCAK256 000007d5: SWAP1 000007d6: JUMP 000007d7: JUMPDEST 000007d8: SSTORE 000007d9: PUSH2 0x0805 000007dc: PUSH1 0x40 000007de: MLOAD 000007df: SWAP3 000007e0: DUP4 000007e1: SWAP3 000007e2: AND 000007e3: SWAP7 000007e4: CALLER 000007e5: SWAP7 000007e6: DUP4 000007e7: PUSH1 0x40 000007e9: SWAP1 000007ea: PUSH1 0x01 000007ec: SWAP3 000007ed: SWAP5 000007ee: SWAP4 000007ef: PUSH1 0x60 000007f1: DUP3 000007f2: ADD 000007f3: SWAP6 000007f4: DUP5 000007f5: DUP1 000007f6: PUSH1 0xa0 000007f8: SHL 000007f9: SUB 000007fa: AND 000007fb: DUP3 000007fc: MSTORE 000007fd: PUSH1 0x20 000007ff: DUP3 00000800: ADD 00000801: MSTORE 00000802: ADD 00000803: MSTORE 00000804: JUMP 00000805: JUMPDEST 00000806: SUB 00000807: SWAP1 00000808: LOG4 00000809: SSTORE 0000080a: PUSH1 0x40 0000080c: MLOAD 0000080d: SWAP1 0000080e: DUP2 0000080f: MSTORE 00000810: RETURN 00000811: JUMPDEST 00000812: PUSH1 0x01 00000814: SWAP6 00000815: POP 00000816: PUSH2 0x0855 00000819: PUSH32 0x46825fb1efbc2ac58f7529d18b84230c9818ca01aa51e874715a59f68c7fd6c5 0000083a: SWAP2 0000083b: DUP10 0000083c: RETURNDATASIZE 0000083d: DUP2 0000083e: GT 0000083f: PUSH2 0x085c 00000842: JUMPI 00000843: JUMPDEST 00000844: PUSH2 0x084d 00000847: DUP2 00000848: DUP4 00000849: PUSH2 0x0ed9 0000084c: JUMP 0000084d: JUMPDEST 0000084e: DUP2 0000084f: ADD 00000850: SWAP1 00000851: PUSH2 0x1112 00000854: JUMP 00000855: JUMPDEST 00000856: SWAP6 00000857: POP 00000858: PUSH2 0x078a 0000085b: JUMP 0000085c: JUMPDEST 0000085d: POP 0000085e: RETURNDATASIZE 0000085f: PUSH2 0x0843 00000862: JUMP 00000863: JUMPDEST 00000864: POP 00000865: CALLER 00000866: ORIGIN 00000867: EQ 00000868: PUSH2 0x0884 0000086b: JUMPI 0000086c: PUSH2 0x0750 0000086f: DUP9 00000870: PUSH2 0x1111 00000873: PUSH2 0x1111 00000876: PUSH1 0x90 00000878: SHL 00000879: ADD 0000087a: CALLER 0000087b: ADD 0000087c: AND 0000087d: JUMPDEST 0000087e: SWAP1 0000087f: POP 00000880: PUSH2 0x0719 00000883: JUMP 00000884: JUMPDEST 00000885: PUSH2 0x0750 00000888: CALLER 00000889: PUSH2 0x087d 0000088c: JUMP 0000088d: JUMPDEST 0000088e: CALLVALUE 0000088f: PUSH2 0x00dd 00000892: JUMPI 00000893: PUSH1 0x00 00000895: CALLDATASIZE 00000896: PUSH1 0x03 00000898: NOT 00000899: ADD 0000089a: SLT 0000089b: PUSH2 0x00dd 0000089e: JUMPI 0000089f: PUSH1 0x03 000008a1: SLOAD 000008a2: PUSH1 0x40 000008a4: MLOAD 000008a5: PUSH1 0x01 000008a7: PUSH1 0x01 000008a9: PUSH1 0xa0 000008ab: SHL 000008ac: SUB 000008ad: SWAP1 000008ae: SWAP2 000008af: AND 000008b0: DUP2 000008b1: MSTORE 000008b2: PUSH1 0x20 000008b4: SWAP1 000008b5: RETURN 000008b6: JUMPDEST 000008b7: CALLVALUE 000008b8: PUSH2 0x00dd 000008bb: JUMPI 000008bc: PUSH1 0x00 000008be: CALLDATASIZE 000008bf: PUSH1 0x03 000008c1: NOT 000008c2: ADD 000008c3: SLT 000008c4: PUSH2 0x00dd 000008c7: JUMPI 000008c8: PUSH1 0x20 000008ca: PUSH1 0x04 000008cc: SLOAD 000008cd: PUSH1 0x40 000008cf: MLOAD 000008d0: SWAP1 000008d1: DUP2 000008d2: MSTORE 000008d3: RETURN 000008d4: JUMPDEST 000008d5: PUSH1 0xa0 000008d7: CALLDATASIZE 000008d8: PUSH1 0x03 000008da: NOT 000008db: ADD 000008dc: SLT 000008dd: PUSH2 0x00dd 000008e0: JUMPI 000008e1: PUSH2 0x08e8 000008e4: PUSH2 0x01bc 000008e7: JUMP 000008e8: JUMPDEST 000008e9: PUSH2 0x08f0 000008ec: PUSH2 0x01d2 000008ef: JUMP 000008f0: JUMPDEST 000008f1: SWAP1 000008f2: PUSH1 0x44 000008f4: CALLDATALOAD 000008f5: SWAP1 000008f6: PUSH1 0x00 000008f8: DUP1 000008f9: MLOAD 000008fa: PUSH1 0x20 000008fc: PUSH2 0x1dad 000008ff: DUP4 00000900: CODECOPY 00000901: DUP2 00000902: MLOAD 00000903: SWAP2 00000904: MSTORE 00000905: PUSH2 0x0911 00000908: PUSH1 0x01 0000090a: DUP3 0000090b: SLOAD 0000090c: EQ 0000090d: PUSH2 0x107f 00000910: JUMP 00000911: JUMPDEST 00000912: PUSH1 0x02 00000914: DUP2 00000915: SSTORE 00000916: PUSH2 0x0920 00000919: DUP4 0000091a: ISZERO 0000091b: ISZERO 0000091c: PUSH2 0x10b0 0000091f: JUMP 00000920: JUMPDEST 00000921: PUSH1 0x01 00000923: PUSH1 0x01 00000925: PUSH1 0xa0 00000927: SHL 00000928: SUB 00000929: SWAP3 0000092a: PUSH2 0x0941 0000092d: PUSH2 0x0939 00000930: DUP3 00000931: DUP8 00000932: DUP8 00000933: AND 00000934: CALLER 00000935: PUSH2 0x1291 00000938: JUMP 00000939: JUMPDEST 0000093a: SWAP2 0000093b: DUP3 0000093c: EQ 0000093d: PUSH2 0x10e1 00000940: JUMP 00000941: JUMPDEST 00000942: PUSH2 0x094d 00000945: DUP2 00000946: DUP7 00000947: DUP6 00000948: CALLER 00000949: PUSH2 0x1697 0000094c: JUMP 0000094d: JUMPDEST 0000094e: SWAP5 0000094f: CALLER 00000950: ORIGIN 00000951: EQ 00000952: PUSH2 0x0a93 00000955: JUMPI 00000956: PUSH1 0x20 00000958: DUP6 00000959: PUSH2 0x1111 0000095c: PUSH2 0x1111 0000095f: PUSH1 0x90 00000961: SHL 00000962: ADD 00000963: CALLER 00000964: ADD 00000965: AND 00000966: SWAP7 00000967: JUMPDEST 00000968: PUSH1 0x02 0000096a: SLOAD 0000096b: PUSH1 0x01 0000096d: PUSH1 0x01 0000096f: PUSH1 0xa0 00000971: SHL 00000972: SUB 00000973: AND 00000974: PUSH2 0x09a2 00000977: PUSH2 0x097e 0000097a: PUSH2 0x106c 0000097d: JUMP 0000097e: JUMPDEST 0000097f: SWAP10 00000980: PUSH1 0x40 00000982: MLOAD 00000983: SWAP11 00000984: DUP12 00000985: SWAP5 00000986: DUP6 00000987: SWAP5 00000988: PUSH4 0xeb672419 0000098d: PUSH1 0xe0 0000098f: SHL 00000990: DUP7 00000991: MSTORE 00000992: PUSH1 0x84 00000994: CALLDATALOAD 00000995: SWAP2 00000996: PUSH1 0x64 00000998: CALLDATALOAD 00000999: SWAP2 0000099a: PUSH1 0x04 0000099c: DUP9 0000099d: ADD 0000099e: PUSH2 0x1121 000009a1: JUMP 000009a2: JUMPDEST 000009a3: SUB 000009a4: DUP2 000009a5: CALLVALUE 000009a6: DUP10 000009a7: PUSH32 0x0000000000000000000000005fd9f73286b7e8683bab45019c94553b93e015cf 000009c8: AND 000009c9: GAS 000009ca: CALL 000009cb: SWAP4 000009cc: DUP5 000009cd: ISZERO 000009ce: PUSH2 0x0618 000009d1: JUMPI 000009d2: PUSH1 0x20 000009d4: SWAP7 000009d5: PUSH1 0x00 000009d7: SWAP6 000009d8: PUSH2 0x0a51 000009db: JUMPI 000009dc: JUMPDEST 000009dd: POP 000009de: SWAP4 000009df: PUSH32 0xdd341179f4edc78148d894d0213a96d212af2cbaf223d19ef6d483bdd47ab81d 00000a00: DUP2 00000a01: SWAP7 00000a02: PUSH1 0x01 00000a04: SWAP7 00000a05: DUP6 00000a06: PUSH2 0x0a29 00000a09: DUP6 00000a0a: PUSH2 0x058e 00000a0d: DUP9 00000a0e: PUSH2 0x0577 00000a11: CALLER 00000a12: PUSH1 0x01 00000a14: DUP1 00000a15: PUSH1 0xa0 00000a17: SHL 00000a18: SUB 00000a19: AND 00000a1a: PUSH1 0x00 00000a1c: MSTORE 00000a1d: PUSH1 0x01 00000a1f: PUSH1 0x20 00000a21: MSTORE 00000a22: PUSH1 0x40 00000a24: PUSH1 0x00 00000a26: KECCAK256 00000a27: SWAP1 00000a28: JUMP 00000a29: JUMPDEST 00000a2a: SSTORE 00000a2b: PUSH1 0x40 00000a2d: DUP1 00000a2e: MLOAD 00000a2f: PUSH1 0x01 00000a31: PUSH1 0x01 00000a33: PUSH1 0xa0 00000a35: SHL 00000a36: SUB 00000a37: SWAP1 00000a38: SWAP7 00000a39: AND 00000a3a: DUP7 00000a3b: MSTORE 00000a3c: PUSH1 0x20 00000a3e: DUP7 00000a3f: ADD 00000a40: SWAP7 00000a41: SWAP1 00000a42: SWAP7 00000a43: MSTORE 00000a44: AND 00000a45: SWAP4 00000a46: CALLER 00000a47: SWAP4 00000a48: SWAP1 00000a49: DUP2 00000a4a: SWAP1 00000a4b: DUP2 00000a4c: ADD 00000a4d: PUSH2 0x0805 00000a50: JUMP 00000a51: JUMPDEST 00000a52: PUSH1 0x01 00000a54: SWAP6 00000a55: POP 00000a56: PUSH2 0x0a8c 00000a59: PUSH32 0xdd341179f4edc78148d894d0213a96d212af2cbaf223d19ef6d483bdd47ab81d 00000a7a: SWAP2 00000a7b: DUP10 00000a7c: RETURNDATASIZE 00000a7d: DUP2 00000a7e: GT 00000a7f: PUSH2 0x085c 00000a82: JUMPI 00000a83: PUSH2 0x084d 00000a86: DUP2 00000a87: DUP4 00000a88: PUSH2 0x0ed9 00000a8b: JUMP 00000a8c: JUMPDEST 00000a8d: SWAP6 00000a8e: POP 00000a8f: PUSH2 0x09dc 00000a92: JUMP 00000a93: JUMPDEST 00000a94: PUSH1 0x20 00000a96: CALLER 00000a97: SWAP7 00000a98: PUSH2 0x0967 00000a9b: JUMP 00000a9c: JUMPDEST 00000a9d: CALLVALUE 00000a9e: PUSH2 0x00dd 00000aa1: JUMPI 00000aa2: PUSH1 0x00 00000aa4: CALLDATASIZE 00000aa5: PUSH1 0x03 00000aa7: NOT 00000aa8: ADD 00000aa9: SLT 00000aaa: PUSH2 0x00dd 00000aad: JUMPI 00000aae: PUSH1 0x02 00000ab0: SLOAD 00000ab1: PUSH1 0x40 00000ab3: MLOAD 00000ab4: PUSH1 0x01 00000ab6: PUSH1 0x01 00000ab8: PUSH1 0xa0 00000aba: SHL 00000abb: SUB 00000abc: SWAP1 00000abd: SWAP2 00000abe: AND 00000abf: DUP2 00000ac0: MSTORE 00000ac1: PUSH1 0x20 00000ac3: SWAP1 00000ac4: RETURN 00000ac5: JUMPDEST 00000ac6: PUSH2 0x0ace 00000ac9: CALLDATASIZE 00000aca: PUSH2 0x065c 00000acd: JUMP 00000ace: JUMPDEST 00000acf: SWAP2 00000ad0: SWAP5 00000ad1: SWAP3 00000ad2: SWAP1 00000ad3: SWAP4 00000ad4: PUSH1 0x20 00000ad6: PUSH1 0x00 00000ad8: DUP1 00000ad9: MLOAD 00000ada: PUSH1 0x20 00000adc: PUSH2 0x1dad 00000adf: DUP4 00000ae0: CODECOPY 00000ae1: DUP2 00000ae2: MLOAD 00000ae3: SWAP2 00000ae4: MSTORE 00000ae5: SWAP4 00000ae6: PUSH2 0x0af2 00000ae9: PUSH1 0x01 00000aeb: DUP7 00000aec: SLOAD 00000aed: EQ 00000aee: PUSH2 0x107f 00000af1: JUMP 00000af2: JUMPDEST 00000af3: PUSH1 0x02 00000af5: DUP6 00000af6: SSTORE 00000af7: PUSH2 0x0b01 00000afa: DUP5 00000afb: ISZERO 00000afc: ISZERO 00000afd: PUSH2 0x10b0 00000b00: JUMP 00000b01: JUMPDEST 00000b02: PUSH1 0x01 00000b04: PUSH1 0x01 00000b06: PUSH1 0xa0 00000b08: SHL 00000b09: SUB 00000b0a: SWAP7 00000b0b: PUSH2 0x0b1a 00000b0e: PUSH2 0x06fb 00000b11: DUP7 00000b12: DUP7 00000b13: DUP12 00000b14: AND 00000b15: CALLER 00000b16: PUSH2 0x1291 00000b19: JUMP 00000b1a: JUMPDEST 00000b1b: PUSH2 0x0b26 00000b1e: DUP6 00000b1f: DUP6 00000b20: DUP10 00000b21: CALLER 00000b22: PUSH2 0x1697 00000b25: JUMP 00000b26: JUMPDEST 00000b27: SWAP2 00000b28: DUP9 00000b29: DUP2 00000b2a: AND 00000b2b: ISZERO 00000b2c: PUSH2 0x0b46 00000b2f: JUMPI 00000b30: JUMPDEST 00000b31: PUSH1 0x02 00000b33: SLOAD 00000b34: PUSH2 0x09a2 00000b37: SWAP2 00000b38: SWAP1 00000b39: PUSH1 0x01 00000b3b: PUSH1 0x01 00000b3d: PUSH1 0xa0 00000b3f: SHL 00000b40: SUB 00000b41: AND 00000b42: PUSH2 0x072b 00000b45: JUMP 00000b46: JUMPDEST 00000b47: POP 00000b48: CALLER 00000b49: ORIGIN 00000b4a: EQ 00000b4b: PUSH2 0x0b67 00000b4e: JUMPI 00000b4f: PUSH2 0x09a2 00000b52: DUP9 00000b53: PUSH2 0x1111 00000b56: PUSH2 0x1111 00000b59: PUSH1 0x90 00000b5b: SHL 00000b5c: ADD 00000b5d: CALLER 00000b5e: ADD 00000b5f: AND 00000b60: JUMPDEST 00000b61: SWAP1 00000b62: POP 00000b63: PUSH2 0x0b30 00000b66: JUMP 00000b67: JUMPDEST 00000b68: PUSH2 0x09a2 00000b6b: CALLER 00000b6c: PUSH2 0x0b60 00000b6f: JUMP 00000b70: JUMPDEST 00000b71: CALLVALUE 00000b72: PUSH2 0x00dd 00000b75: JUMPI 00000b76: PUSH1 0x20 00000b78: CALLDATASIZE 00000b79: PUSH1 0x03 00000b7b: NOT 00000b7c: ADD 00000b7d: SLT 00000b7e: PUSH2 0x00dd 00000b81: JUMPI 00000b82: PUSH2 0x0c34 00000b85: PUSH2 0x0b8c 00000b88: PUSH2 0x01bc 00000b8b: JUMP 00000b8c: JUMPDEST 00000b8d: PUSH1 0x01 00000b8f: DUP1 00000b90: PUSH1 0xa0 00000b92: SHL 00000b93: SUB 00000b94: DUP1 00000b95: PUSH1 0x03 00000b97: SLOAD 00000b98: AND 00000b99: SWAP2 00000b9a: PUSH1 0x40 00000b9c: SWAP3 00000b9d: DUP4 00000b9e: MLOAD 00000b9f: PUSH1 0x20 00000ba1: DUP2 00000ba2: ADD 00000ba3: SWAP2 00000ba4: DUP3 00000ba5: MSTORE 00000ba6: DUP5 00000ba7: DUP1 00000ba8: DUP3 00000ba9: ADD 00000baa: MSTORE 00000bab: PUSH1 0x00 00000bad: PUSH1 0x60 00000baf: DUP3 00000bb0: ADD 00000bb1: MSTORE 00000bb2: PUSH1 0x60 00000bb4: DUP2 00000bb5: MSTORE 00000bb6: PUSH2 0x0bbe 00000bb9: DUP2 00000bba: PUSH2 0x0e68 00000bbd: JUMP 00000bbe: JUMPDEST 00000bbf: MLOAD 00000bc0: SWAP1 00000bc1: KECCAK256 00000bc2: SWAP1 00000bc3: DUP3 00000bc4: PUSH1 0x02 00000bc6: SLOAD 00000bc7: AND 00000bc8: SWAP2 00000bc9: PUSH1 0x04 00000bcb: SLOAD 00000bcc: DUP5 00000bcd: DUP7 00000bce: MLOAD 00000bcf: SWAP4 00000bd0: PUSH1 0x20 00000bd2: DUP6 00000bd3: ADD 00000bd4: SWAP6 00000bd5: PUSH32 0x2020dba91b30cc0006188af794c2fb30dd8520db7e2c088b7fc7c103c00ca494 00000bf6: DUP8 00000bf7: MSTORE 00000bf8: DUP9 00000bf9: DUP7 00000bfa: ADD 00000bfb: MSTORE 00000bfc: AND 00000bfd: PUSH1 0x60 00000bff: DUP5 00000c00: ADD 00000c01: MSTORE 00000c02: PUSH1 0x80 00000c04: DUP4 00000c05: ADD 00000c06: MSTORE 00000c07: PUSH1 0xa0 00000c09: DUP3 00000c0a: ADD 00000c0b: MSTORE 00000c0c: PUSH1 0xa0 00000c0e: DUP2 00000c0f: MSTORE 00000c10: PUSH2 0x0c18 00000c13: DUP2 00000c14: PUSH2 0x0e88 00000c17: JUMP 00000c18: JUMPDEST 00000c19: MLOAD 00000c1a: SWAP1 00000c1b: KECCAK256 00000c1c: SWAP2 00000c1d: MLOAD 00000c1e: SWAP2 00000c1f: AND 00000c20: PUSH1 0x01 00000c22: PUSH1 0x01 00000c24: PUSH1 0xa0 00000c26: SHL 00000c27: SUB 00000c28: AND 00000c29: DUP2 00000c2a: MSTORE 00000c2b: SWAP1 00000c2c: DUP2 00000c2d: SWAP1 00000c2e: PUSH1 0x20 00000c30: DUP3 00000c31: ADD 00000c32: SWAP1 00000c33: JUMP 00000c34: JUMPDEST 00000c35: SUB 00000c36: SWAP1 00000c37: RETURN 00000c38: JUMPDEST 00000c39: ISZERO 00000c3a: PUSH2 0x0c3f 00000c3d: JUMPI 00000c3e: JUMP 00000c3f: JUMPDEST 00000c40: PUSH1 0x40 00000c42: MLOAD 00000c43: PUSH3 0x461bcd 00000c47: PUSH1 0xe5 00000c49: SHL 00000c4a: DUP2 00000c4b: MSTORE 00000c4c: PUSH1 0x20 00000c4e: PUSH1 0x04 00000c50: DUP3 00000c51: ADD 00000c52: MSTORE 00000c53: PUSH1 0x02 00000c55: PUSH1 0x24 00000c57: DUP3 00000c58: ADD 00000c59: MSTORE 00000c5a: PUSH2 0x3733 00000c5d: PUSH1 0xf1 00000c5f: SHL 00000c60: PUSH1 0x44 00000c62: DUP3 00000c63: ADD 00000c64: MSTORE 00000c65: PUSH1 0x64 00000c67: SWAP1 00000c68: REVERT 00000c69: JUMPDEST 00000c6a: ISZERO 00000c6b: PUSH2 0x0c70 00000c6e: JUMPI 00000c6f: JUMP 00000c70: JUMPDEST 00000c71: PUSH1 0x40 00000c73: MLOAD 00000c74: PUSH3 0x461bcd 00000c78: PUSH1 0xe5 00000c7a: SHL 00000c7b: DUP2 00000c7c: MSTORE 00000c7d: PUSH1 0x20 00000c7f: PUSH1 0x04 00000c81: DUP3 00000c82: ADD 00000c83: MSTORE 00000c84: PUSH1 0x02 00000c86: PUSH1 0x24 00000c88: DUP3 00000c89: ADD 00000c8a: MSTORE 00000c8b: PUSH2 0x0dcd 00000c8e: PUSH1 0xf3 00000c90: SHL 00000c91: PUSH1 0x44 00000c93: DUP3 00000c94: ADD 00000c95: MSTORE 00000c96: PUSH1 0x64 00000c98: SWAP1 00000c99: REVERT 00000c9a: JUMPDEST 00000c9b: ISZERO 00000c9c: PUSH2 0x0ca1 00000c9f: JUMPI 00000ca0: JUMP 00000ca1: JUMPDEST 00000ca2: PUSH1 0x40 00000ca4: MLOAD 00000ca5: PUSH3 0x461bcd 00000ca9: PUSH1 0xe5 00000cab: SHL 00000cac: DUP2 00000cad: MSTORE 00000cae: PUSH1 0x20 00000cb0: PUSH1 0x04 00000cb2: DUP3 00000cb3: ADD 00000cb4: MSTORE 00000cb5: PUSH1 0x02 00000cb7: PUSH1 0x24 00000cb9: DUP3 00000cba: ADD 00000cbb: MSTORE 00000cbc: PUSH2 0x6d6b 00000cbf: PUSH1 0xf0 00000cc1: SHL 00000cc2: PUSH1 0x44 00000cc4: DUP3 00000cc5: ADD 00000cc6: MSTORE 00000cc7: PUSH1 0x64 00000cc9: SWAP1 00000cca: REVERT 00000ccb: JUMPDEST 00000ccc: ISZERO 00000ccd: PUSH2 0x0cd2 00000cd0: JUMPI 00000cd1: JUMP 00000cd2: JUMPDEST 00000cd3: PUSH1 0x40 00000cd5: MLOAD 00000cd6: PUSH3 0x461bcd 00000cda: PUSH1 0xe5 00000cdc: SHL 00000cdd: DUP2 00000cde: MSTORE 00000cdf: PUSH1 0x20 00000ce1: PUSH1 0x04 00000ce3: DUP3 00000ce4: ADD 00000ce5: MSTORE 00000ce6: PUSH1 0x02 00000ce8: PUSH1 0x24 00000cea: DUP3 00000ceb: ADD 00000cec: MSTORE 00000ced: PUSH2 0x6d67 00000cf0: PUSH1 0xf0 00000cf2: SHL 00000cf3: PUSH1 0x44 00000cf5: DUP3 00000cf6: ADD 00000cf7: MSTORE 00000cf8: PUSH1 0x64 00000cfa: SWAP1 00000cfb: REVERT 00000cfc: JUMPDEST 00000cfd: PUSH4 0x4e487b71 00000d02: PUSH1 0xe0 00000d04: SHL 00000d05: PUSH1 0x00 00000d07: MSTORE 00000d08: PUSH1 0x11 00000d0a: PUSH1 0x04 00000d0c: MSTORE 00000d0d: PUSH1 0x24 00000d0f: PUSH1 0x00 00000d11: REVERT 00000d12: JUMPDEST 00000d13: SWAP2 00000d14: SWAP1 00000d15: DUP3 00000d16: ADD 00000d17: DUP1 00000d18: SWAP3 00000d19: GT 00000d1a: PUSH2 0x0d1f 00000d1d: JUMPI 00000d1e: JUMP 00000d1f: JUMPDEST 00000d20: PUSH2 0x0cfc 00000d23: JUMP 00000d24: JUMPDEST 00000d25: ISZERO 00000d26: PUSH2 0x0d2b 00000d29: JUMPI 00000d2a: JUMP 00000d2b: JUMPDEST 00000d2c: PUSH1 0x40 00000d2e: MLOAD 00000d2f: PUSH3 0x461bcd 00000d33: PUSH1 0xe5 00000d35: SHL 00000d36: DUP2 00000d37: MSTORE 00000d38: PUSH1 0x20 00000d3a: PUSH1 0x04 00000d3c: DUP3 00000d3d: ADD 00000d3e: MSTORE 00000d3f: PUSH1 0x03 00000d41: PUSH1 0x24 00000d43: DUP3 00000d44: ADD 00000d45: MSTORE 00000d46: PUSH3 0x666565 00000d4a: PUSH1 0xe8 00000d4c: SHL 00000d4d: PUSH1 0x44 00000d4f: DUP3 00000d50: ADD 00000d51: MSTORE 00000d52: PUSH1 0x64 00000d54: SWAP1 00000d55: REVERT 00000d56: JUMPDEST 00000d57: PUSH4 0x4e487b71 00000d5c: PUSH1 0xe0 00000d5e: SHL 00000d5f: PUSH1 0x00 00000d61: MSTORE 00000d62: PUSH1 0x32 00000d64: PUSH1 0x04 00000d66: MSTORE 00000d67: PUSH1 0x24 00000d69: PUSH1 0x00 00000d6b: REVERT 00000d6c: JUMPDEST 00000d6d: SWAP1 00000d6e: PUSH1 0x02 00000d70: LT 00000d71: ISZERO 00000d72: PUSH2 0x0dac 00000d75: JUMPI 00000d76: PUSH1 0x40 00000d78: DUP2 00000d79: ADD 00000d7a: CALLDATALOAD 00000d7b: SWAP1 00000d7c: PUSH1 0x1e 00000d7e: NOT 00000d7f: DUP2 00000d80: CALLDATASIZE 00000d81: SUB 00000d82: ADD 00000d83: DUP3 00000d84: SLT 00000d85: ISZERO 00000d86: PUSH2 0x00dd 00000d89: JUMPI 00000d8a: ADD 00000d8b: SWAP1 00000d8c: DUP2 00000d8d: CALLDATALOAD 00000d8e: SWAP2 00000d8f: PUSH1 0x01 00000d91: PUSH1 0x01 00000d93: PUSH1 0x40 00000d95: SHL 00000d96: SUB 00000d97: DUP4 00000d98: GT 00000d99: PUSH2 0x00dd 00000d9c: JUMPI 00000d9d: PUSH1 0x20 00000d9f: ADD 00000da0: DUP3 00000da1: CALLDATASIZE 00000da2: SUB 00000da3: DUP2 00000da4: SGT 00000da5: PUSH2 0x00dd 00000da8: JUMPI 00000da9: SWAP2 00000daa: SWAP1 00000dab: JUMP 00000dac: JUMPDEST 00000dad: PUSH2 0x0d56 00000db0: JUMP 00000db1: JUMPDEST 00000db2: SWAP1 00000db3: ISZERO 00000db4: PUSH2 0x0dac 00000db7: JUMPI 00000db8: DUP1 00000db9: CALLDATALOAD 00000dba: SWAP1 00000dbb: PUSH1 0x1e 00000dbd: NOT 00000dbe: DUP2 00000dbf: CALLDATASIZE 00000dc0: SUB 00000dc1: ADD 00000dc2: DUP3 00000dc3: SLT 00000dc4: ISZERO 00000dc5: PUSH2 0x00dd 00000dc8: JUMPI 00000dc9: ADD 00000dca: SWAP1 00000dcb: DUP2 00000dcc: CALLDATALOAD 00000dcd: SWAP2 00000dce: PUSH1 0x01 00000dd0: PUSH1 0x01 00000dd2: PUSH1 0x40 00000dd4: SHL 00000dd5: SUB 00000dd6: DUP4 00000dd7: GT 00000dd8: PUSH2 0x00dd 00000ddb: JUMPI 00000ddc: PUSH1 0x20 00000dde: ADD 00000ddf: DUP3 00000de0: CALLDATASIZE 00000de1: SUB 00000de2: DUP2 00000de3: SGT 00000de4: PUSH2 0x00dd 00000de7: JUMPI 00000de8: SWAP2 00000de9: SWAP1 00000dea: JUMP 00000deb: JUMPDEST 00000dec: SWAP1 00000ded: PUSH1 0x01 00000def: LT 00000df0: ISZERO 00000df1: PUSH2 0x0dac 00000df4: JUMPI 00000df5: PUSH1 0x20 00000df7: DUP2 00000df8: ADD 00000df9: CALLDATALOAD 00000dfa: SWAP1 00000dfb: PUSH1 0x1e 00000dfd: NOT 00000dfe: DUP2 00000dff: CALLDATASIZE 00000e00: SUB 00000e01: ADD 00000e02: DUP3 00000e03: SLT 00000e04: ISZERO 00000e05: PUSH2 0x00dd 00000e08: JUMPI 00000e09: ADD 00000e0a: SWAP1 00000e0b: DUP2 00000e0c: CALLDATALOAD 00000e0d: SWAP2 00000e0e: PUSH1 0x01 00000e10: PUSH1 0x01 00000e12: PUSH1 0x40 00000e14: SHL 00000e15: SUB 00000e16: DUP4 00000e17: GT 00000e18: PUSH2 0x00dd 00000e1b: JUMPI 00000e1c: PUSH1 0x20 00000e1e: ADD 00000e1f: DUP3 00000e20: CALLDATASIZE 00000e21: SUB 00000e22: DUP2 00000e23: SGT 00000e24: PUSH2 0x00dd 00000e27: JUMPI 00000e28: SWAP2 00000e29: SWAP1 00000e2a: JUMP 00000e2b: JUMPDEST 00000e2c: SWAP1 00000e2d: PUSH1 0x02 00000e2f: LT 00000e30: ISZERO 00000e31: PUSH2 0x0dac 00000e34: JUMPI 00000e35: PUSH1 0x40 00000e37: ADD 00000e38: SWAP1 00000e39: JUMP 00000e3a: JUMPDEST 00000e3b: SWAP1 00000e3c: ISZERO 00000e3d: PUSH2 0x0dac 00000e40: JUMPI 00000e41: SWAP1 00000e42: JUMP 00000e43: JUMPDEST 00000e44: SWAP1 00000e45: PUSH1 0x01 00000e47: LT 00000e48: ISZERO 00000e49: PUSH2 0x0dac 00000e4c: JUMPI 00000e4d: PUSH1 0x20 00000e4f: ADD 00000e50: SWAP1 00000e51: JUMP 00000e52: JUMPDEST 00000e53: PUSH4 0x4e487b71 00000e58: PUSH1 0xe0 00000e5a: SHL 00000e5b: PUSH1 0x00 00000e5d: MSTORE 00000e5e: PUSH1 0x41 00000e60: PUSH1 0x04 00000e62: MSTORE 00000e63: PUSH1 0x24 00000e65: PUSH1 0x00 00000e67: REVERT 00000e68: JUMPDEST 00000e69: PUSH1 0x80 00000e6b: DUP2 00000e6c: ADD 00000e6d: SWAP1 00000e6e: DUP2 00000e6f: LT 00000e70: PUSH1 0x01 00000e72: PUSH1 0x01 00000e74: PUSH1 0x40 00000e76: SHL 00000e77: SUB 00000e78: DUP3 00000e79: GT 00000e7a: OR 00000e7b: PUSH2 0x0e83 00000e7e: JUMPI 00000e7f: PUSH1 0x40 00000e81: MSTORE 00000e82: JUMP 00000e83: JUMPDEST 00000e84: PUSH2 0x0e52 00000e87: JUMP 00000e88: JUMPDEST 00000e89: PUSH1 0xc0 00000e8b: DUP2 00000e8c: ADD 00000e8d: SWAP1 00000e8e: DUP2 00000e8f: LT 00000e90: PUSH1 0x01 00000e92: PUSH1 0x01 00000e94: PUSH1 0x40 00000e96: SHL 00000e97: SUB 00000e98: DUP3 00000e99: GT 00000e9a: OR 00000e9b: PUSH2 0x0e83 00000e9e: JUMPI 00000e9f: PUSH1 0x40 00000ea1: MSTORE 00000ea2: JUMP 00000ea3: JUMPDEST 00000ea4: PUSH1 0x20 00000ea6: DUP2 00000ea7: ADD 00000ea8: SWAP1 00000ea9: DUP2 00000eaa: LT 00000eab: PUSH1 0x01 00000ead: PUSH1 0x01 00000eaf: PUSH1 0x40 00000eb1: SHL 00000eb2: SUB 00000eb3: DUP3 00000eb4: GT 00000eb5: OR 00000eb6: PUSH2 0x0e83 00000eb9: JUMPI 00000eba: PUSH1 0x40 00000ebc: MSTORE 00000ebd: JUMP 00000ebe: JUMPDEST 00000ebf: PUSH1 0x40 00000ec1: DUP2 00000ec2: ADD 00000ec3: SWAP1 00000ec4: DUP2 00000ec5: LT 00000ec6: PUSH1 0x01 00000ec8: PUSH1 0x01 00000eca: PUSH1 0x40 00000ecc: SHL 00000ecd: SUB 00000ece: DUP3 00000ecf: GT 00000ed0: OR 00000ed1: PUSH2 0x0e83 00000ed4: JUMPI 00000ed5: PUSH1 0x40 00000ed7: MSTORE 00000ed8: JUMP 00000ed9: JUMPDEST 00000eda: SWAP1 00000edb: PUSH1 0x1f 00000edd: DUP1 00000ede: NOT 00000edf: SWAP2 00000ee0: ADD 00000ee1: AND 00000ee2: DUP2 00000ee3: ADD 00000ee4: SWAP1 00000ee5: DUP2 00000ee6: LT 00000ee7: PUSH1 0x01 00000ee9: PUSH1 0x01 00000eeb: PUSH1 0x40 00000eed: SHL 00000eee: SUB 00000eef: DUP3 00000ef0: GT 00000ef1: OR 00000ef2: PUSH2 0x0e83 00000ef5: JUMPI 00000ef6: PUSH1 0x40 00000ef8: MSTORE 00000ef9: JUMP 00000efa: JUMPDEST 00000efb: PUSH1 0x40 00000efd: MLOAD 00000efe: SWAP1 00000eff: PUSH1 0x60 00000f01: DUP3 00000f02: ADD 00000f03: DUP3 00000f04: DUP2 00000f05: LT 00000f06: PUSH1 0x01 00000f08: PUSH1 0x01 00000f0a: PUSH1 0x40 00000f0c: SHL 00000f0d: SUB 00000f0e: DUP3 00000f0f: GT 00000f10: OR 00000f11: PUSH2 0x0e83 00000f14: JUMPI 00000f15: PUSH1 0x40 00000f17: MSTORE 00000f18: JUMP 00000f19: JUMPDEST 00000f1a: PUSH1 0x01 00000f1c: PUSH1 0x01 00000f1e: PUSH1 0x40 00000f20: SHL 00000f21: SUB 00000f22: DUP2 00000f23: GT 00000f24: PUSH2 0x0e83 00000f27: JUMPI 00000f28: PUSH1 0x1f 00000f2a: ADD 00000f2b: PUSH1 0x1f 00000f2d: NOT 00000f2e: AND 00000f2f: PUSH1 0x20 00000f31: ADD 00000f32: SWAP1 00000f33: JUMP 00000f34: JUMPDEST 00000f35: PUSH1 0x40 00000f37: MLOAD 00000f38: SWAP1 00000f39: PUSH2 0x0f41 00000f3c: DUP3 00000f3d: PUSH2 0x0ea3 00000f40: JUMP 00000f41: JUMPDEST 00000f42: PUSH1 0x00 00000f44: DUP3 00000f45: MSTORE 00000f46: JUMP 00000f47: JUMPDEST 00000f48: SWAP3 00000f49: SWAP2 00000f4a: SWAP3 00000f4b: PUSH2 0x0f53 00000f4e: DUP3 00000f4f: PUSH2 0x0f19 00000f52: JUMP 00000f53: JUMPDEST 00000f54: SWAP2 00000f55: PUSH2 0x0f61 00000f58: PUSH1 0x40 00000f5a: MLOAD 00000f5b: SWAP4 00000f5c: DUP5 00000f5d: PUSH2 0x0ed9 00000f60: JUMP 00000f61: JUMPDEST 00000f62: DUP3 00000f63: SWAP5 00000f64: DUP2 00000f65: DUP5 00000f66: MSTORE 00000f67: DUP2 00000f68: DUP4 00000f69: ADD 00000f6a: GT 00000f6b: PUSH2 0x00dd 00000f6e: JUMPI 00000f6f: DUP3 00000f70: DUP2 00000f71: PUSH1 0x20 00000f73: SWAP4 00000f74: DUP5 00000f75: PUSH1 0x00 00000f77: SWAP7 00000f78: ADD 00000f79: CALLDATACOPY 00000f7a: ADD 00000f7b: ADD 00000f7c: MSTORE 00000f7d: JUMP 00000f7e: JUMPDEST 00000f7f: SWAP3 00000f80: SWAP2 00000f81: SWAP1 00000f82: SWAP3 00000f83: PUSH1 0x01 00000f85: PUSH1 0x01 00000f87: PUSH1 0x40 00000f89: SHL 00000f8a: SUB 00000f8b: SWAP2 00000f8c: DUP3 00000f8d: DUP6 00000f8e: GT 00000f8f: PUSH2 0x0e83 00000f92: JUMPI 00000f93: DUP5 00000f94: PUSH1 0x05 00000f96: SHL 00000f97: PUSH1 0x40 00000f99: MLOAD 00000f9a: SWAP4 00000f9b: PUSH1 0x20 00000f9d: DUP1 00000f9e: SWAP6 00000f9f: PUSH2 0x0faa 00000fa2: DUP3 00000fa3: DUP6 00000fa4: ADD 00000fa5: DUP3 00000fa6: PUSH2 0x0ed9 00000fa9: JUMP 00000faa: JUMPDEST 00000fab: DUP1 00000fac: SWAP9 00000fad: DUP2 00000fae: MSTORE 00000faf: ADD 00000fb0: SWAP2 00000fb1: DUP5 00000fb2: ADD 00000fb3: SWAP4 00000fb4: DUP4 00000fb5: DUP6 00000fb6: GT 00000fb7: PUSH2 0x00dd 00000fba: JUMPI 00000fbb: DUP1 00000fbc: SWAP3 00000fbd: JUMPDEST 00000fbe: DUP6 00000fbf: DUP5 00000fc0: LT 00000fc1: PUSH2 0x0fcd 00000fc4: JUMPI 00000fc5: POP 00000fc6: POP 00000fc7: POP 00000fc8: POP 00000fc9: POP 00000fca: POP 00000fcb: POP 00000fcc: JUMP 00000fcd: JUMPDEST 00000fce: DUP4 00000fcf: CALLDATALOAD 00000fd0: DUP4 00000fd1: DUP2 00000fd2: GT 00000fd3: PUSH2 0x00dd 00000fd6: JUMPI 00000fd7: DUP3 00000fd8: ADD 00000fd9: DUP6 00000fda: PUSH1 0x1f 00000fdc: DUP3 00000fdd: ADD 00000fde: SLT 00000fdf: ISZERO 00000fe0: PUSH2 0x00dd 00000fe3: JUMPI 00000fe4: DUP8 00000fe5: SWAP2 00000fe6: PUSH2 0x0ff5 00000fe9: DUP8 00000fea: DUP4 00000feb: DUP6 00000fec: DUP1 00000fed: SWAP6 00000fee: CALLDATALOAD 00000fef: SWAP2 00000ff0: ADD 00000ff1: PUSH2 0x0f47 00000ff4: JUMP 00000ff5: JUMPDEST 00000ff6: DUP2 00000ff7: MSTORE 00000ff8: ADD 00000ff9: SWAP4 00000ffa: ADD 00000ffb: SWAP3 00000ffc: PUSH2 0x0fbd 00000fff: JUMP 00001000: JUMPDEST 00001001: SWAP2 00001002: SWAP1 00001003: DUP3 00001004: MLOAD 00001005: SWAP3 00001006: DUP4 00001007: DUP3 00001008: MSTORE 00001009: PUSH1 0x00 0000100b: JUMPDEST 0000100c: DUP5 0000100d: DUP2 0000100e: LT 0000100f: PUSH2 0x102c 00001012: JUMPI 00001013: POP 00001014: POP 00001015: DUP3 00001016: PUSH1 0x00 00001018: PUSH1 0x20 0000101a: DUP1 0000101b: SWAP5 0000101c: SWAP6 0000101d: DUP5 0000101e: ADD 0000101f: ADD 00001020: MSTORE 00001021: PUSH1 0x1f 00001023: DUP1 00001024: NOT 00001025: SWAP2 00001026: ADD 00001027: AND 00001028: ADD 00001029: ADD 0000102a: SWAP1 0000102b: JUMP 0000102c: JUMPDEST 0000102d: PUSH1 0x20 0000102f: DUP2 00001030: DUP4 00001031: ADD 00001032: DUP2 00001033: ADD 00001034: MLOAD 00001035: DUP5 00001036: DUP4 00001037: ADD 00001038: DUP3 00001039: ADD 0000103a: MSTORE 0000103b: ADD 0000103c: PUSH2 0x100b 0000103f: JUMP 00001040: JUMPDEST 00001041: PUSH1 0x01 00001043: PUSH1 0x01 00001045: PUSH1 0xa0 00001047: SHL 00001048: SUB 00001049: SWAP2 0000104a: DUP3 0000104b: AND 0000104c: DUP2 0000104d: MSTORE 0000104e: SWAP2 0000104f: AND 00001050: PUSH1 0x20 00001052: DUP3 00001053: ADD 00001054: MSTORE 00001055: PUSH1 0x60 00001057: PUSH1 0x40 00001059: DUP3 0000105a: ADD 0000105b: DUP2 0000105c: SWAP1 0000105d: MSTORE 0000105e: PUSH2 0x1069 00001061: SWAP3 00001062: SWAP2 00001063: ADD 00001064: SWAP1 00001065: PUSH2 0x1000 00001068: JUMP 00001069: JUMPDEST 0000106a: SWAP1 0000106b: JUMP 0000106c: JUMPDEST 0000106d: PUSH1 0x40 0000106f: MLOAD 00001070: PUSH2 0x1078 00001073: DUP2 00001074: PUSH2 0x0ea3 00001077: JUMP 00001078: JUMPDEST 00001079: PUSH1 0x00 0000107b: DUP2 0000107c: MSTORE 0000107d: SWAP1 0000107e: JUMP 0000107f: JUMPDEST 00001080: ISZERO 00001081: PUSH2 0x1086 00001084: JUMPI 00001085: JUMP 00001086: JUMPDEST 00001087: PUSH1 0x40 00001089: MLOAD 0000108a: PUSH3 0x461bcd 0000108e: PUSH1 0xe5 00001090: SHL 00001091: DUP2 00001092: MSTORE 00001093: PUSH1 0x20 00001095: PUSH1 0x04 00001097: DUP3 00001098: ADD 00001099: MSTORE 0000109a: PUSH1 0x02 0000109c: PUSH1 0x24 0000109e: DUP3 0000109f: ADD 000010a0: MSTORE 000010a1: PUSH2 0x7231 000010a4: PUSH1 0xf0 000010a6: SHL 000010a7: PUSH1 0x44 000010a9: DUP3 000010aa: ADD 000010ab: MSTORE 000010ac: PUSH1 0x64 000010ae: SWAP1 000010af: REVERT 000010b0: JUMPDEST 000010b1: ISZERO 000010b2: PUSH2 0x10b7 000010b5: JUMPI 000010b6: JUMP 000010b7: JUMPDEST 000010b8: PUSH1 0x40 000010ba: MLOAD 000010bb: PUSH3 0x461bcd 000010bf: PUSH1 0xe5 000010c1: SHL 000010c2: DUP2 000010c3: MSTORE 000010c4: PUSH1 0x20 000010c6: PUSH1 0x04 000010c8: DUP3 000010c9: ADD 000010ca: MSTORE 000010cb: PUSH1 0x02 000010cd: PUSH1 0x24 000010cf: DUP3 000010d0: ADD 000010d1: MSTORE 000010d2: PUSH2 0x0c95 000010d5: PUSH1 0xf2 000010d7: SHL 000010d8: PUSH1 0x44 000010da: DUP3 000010db: ADD 000010dc: MSTORE 000010dd: PUSH1 0x64 000010df: SWAP1 000010e0: REVERT 000010e1: JUMPDEST 000010e2: ISZERO 000010e3: PUSH2 0x10e8 000010e6: JUMPI 000010e7: JUMP 000010e8: JUMPDEST 000010e9: PUSH1 0x40 000010eb: MLOAD 000010ec: PUSH3 0x461bcd 000010f0: PUSH1 0xe5 000010f2: SHL 000010f3: DUP2 000010f4: MSTORE 000010f5: PUSH1 0x20 000010f7: PUSH1 0x04 000010f9: DUP3 000010fa: ADD 000010fb: MSTORE 000010fc: PUSH1 0x02 000010fe: PUSH1 0x24 00001100: DUP3 00001101: ADD 00001102: MSTORE 00001103: PUSH2 0x0c55 00001106: PUSH1 0xf2 00001108: SHL 00001109: PUSH1 0x44 0000110b: DUP3 0000110c: ADD 0000110d: MSTORE 0000110e: PUSH1 0x64 00001110: SWAP1 00001111: REVERT 00001112: JUMPDEST 00001113: SWAP1 00001114: DUP2 00001115: PUSH1 0x20 00001117: SWAP2 00001118: SUB 00001119: SLT 0000111a: PUSH2 0x00dd 0000111d: JUMPI 0000111e: MLOAD 0000111f: SWAP1 00001120: JUMP 00001121: JUMPDEST 00001122: SWAP7 00001123: SWAP6 00001124: SWAP5 00001125: SWAP4 00001126: SWAP1 00001127: PUSH1 0x01 00001129: DUP1 0000112a: PUSH1 0xa0 0000112c: SHL 0000112d: SUB 0000112e: AND 0000112f: DUP8 00001130: MSTORE 00001131: PUSH2 0x114d 00001134: PUSH1 0x20 00001136: SWAP3 00001137: PUSH1 0x00 00001139: DUP5 0000113a: DUP11 0000113b: ADD 0000113c: MSTORE 0000113d: PUSH1 0xe0 0000113f: PUSH1 0x40 00001141: DUP11 00001142: ADD 00001143: MSTORE 00001144: PUSH1 0xe0 00001146: DUP10 00001147: ADD 00001148: SWAP1 00001149: PUSH2 0x1000 0000114c: JUMP 0000114d: JUMPDEST 0000114e: SWAP3 0000114f: PUSH1 0x60 00001151: DUP9 00001152: ADD 00001153: MSTORE 00001154: PUSH1 0x80 00001156: DUP8 00001157: ADD 00001158: MSTORE 00001159: DUP6 0000115a: DUP3 0000115b: SUB 0000115c: PUSH1 0xa0 0000115e: DUP8 0000115f: ADD 00001160: MSTORE 00001161: DUP3 00001162: MLOAD 00001163: SWAP1 00001164: DUP2 00001165: DUP4 00001166: MSTORE 00001167: DUP1 00001168: DUP4 00001169: ADD 0000116a: SWAP3 0000116b: DUP2 0000116c: DUP1 0000116d: DUP5 0000116e: PUSH1 0x05 00001170: SHL 00001171: DUP4 00001172: ADD 00001173: ADD 00001174: SWAP6 00001175: ADD 00001176: SWAP4 00001177: PUSH1 0x00 00001179: SWAP2 0000117a: JUMPDEST 0000117b: DUP5 0000117c: DUP4 0000117d: LT 0000117e: PUSH2 0x119f 00001181: JUMPI 00001182: POP 00001183: POP 00001184: POP 00001185: POP 00001186: POP 00001187: POP 00001188: SWAP1 00001189: PUSH1 0xc0 0000118b: PUSH2 0x119d 0000118e: SWAP3 0000118f: SWAP5 00001190: ADD 00001191: SWAP1 00001192: PUSH1 0x01 00001194: DUP1 00001195: PUSH1 0xa0 00001197: SHL 00001198: SUB 00001199: AND 0000119a: SWAP1 0000119b: MSTORE 0000119c: JUMP 0000119d: JUMPDEST 0000119e: JUMP 0000119f: JUMPDEST 000011a0: SWAP1 000011a1: SWAP2 000011a2: SWAP3 000011a3: SWAP4 000011a4: SWAP5 000011a5: SWAP6 000011a6: DUP5 000011a7: DUP1 000011a8: PUSH2 0x11bd 000011ab: PUSH1 0x01 000011ad: SWAP4 000011ae: PUSH1 0x1f 000011b0: NOT 000011b1: DUP7 000011b2: DUP3 000011b3: SUB 000011b4: ADD 000011b5: DUP8 000011b6: MSTORE 000011b7: DUP11 000011b8: MLOAD 000011b9: PUSH2 0x1000 000011bc: JUMP 000011bd: JUMPDEST 000011be: SWAP9 000011bf: ADD 000011c0: SWAP4 000011c1: ADD 000011c2: SWAP4 000011c3: ADD 000011c4: SWAP2 000011c5: SWAP5 000011c6: SWAP4 000011c7: SWAP3 000011c8: SWAP1 000011c9: PUSH2 0x117a 000011cc: JUMP 000011cd: JUMPDEST 000011ce: SWAP4 000011cf: SWAP3 000011d0: SWAP2 000011d1: SWAP1 000011d2: PUSH2 0x8006 000011d5: DUP6 000011d6: MSTORE 000011d7: PUSH2 0x11f3 000011da: PUSH1 0x20 000011dc: SWAP2 000011dd: PUSH1 0x00 000011df: DUP4 000011e0: DUP9 000011e1: ADD 000011e2: MSTORE 000011e3: PUSH1 0xe0 000011e5: PUSH1 0x40 000011e7: DUP9 000011e8: ADD 000011e9: MSTORE 000011ea: PUSH1 0xe0 000011ec: DUP8 000011ed: ADD 000011ee: SWAP1 000011ef: PUSH2 0x1000 000011f2: JUMP 000011f3: JUMPDEST 000011f4: SWAP1 000011f5: PUSH3 0x989680 000011f9: PUSH1 0x60 000011fb: DUP8 000011fc: ADD 000011fd: MSTORE 000011fe: PUSH2 0x0320 00001201: PUSH1 0x80 00001203: DUP8 00001204: ADD 00001205: MSTORE 00001206: DUP6 00001207: DUP3 00001208: SUB 00001209: PUSH1 0xa0 0000120b: DUP8 0000120c: ADD 0000120d: MSTORE 0000120e: DUP3 0000120f: MLOAD 00001210: SWAP1 00001211: DUP2 00001212: DUP4 00001213: MSTORE 00001214: DUP1 00001215: DUP4 00001216: ADD 00001217: SWAP3 00001218: DUP2 00001219: DUP1 0000121a: DUP5 0000121b: PUSH1 0x05 0000121d: SHL 0000121e: DUP4 0000121f: ADD 00001220: ADD 00001221: SWAP6 00001222: ADD 00001223: SWAP4 00001224: PUSH1 0x00 00001226: SWAP2 00001227: JUMPDEST 00001228: DUP5 00001229: DUP4 0000122a: LT 0000122b: PUSH2 0x124a 0000122e: JUMPI 0000122f: POP 00001230: POP 00001231: POP 00001232: POP 00001233: POP 00001234: POP 00001235: SWAP1 00001236: PUSH1 0xc0 00001238: PUSH2 0x119d 0000123b: SWAP3 0000123c: SWAP5 0000123d: ADD 0000123e: SWAP1 0000123f: PUSH1 0x01 00001241: DUP1 00001242: PUSH1 0xa0 00001244: SHL 00001245: SUB 00001246: AND 00001247: SWAP1 00001248: MSTORE 00001249: JUMP 0000124a: JUMPDEST 0000124b: SWAP1 0000124c: SWAP2 0000124d: SWAP3 0000124e: SWAP4 0000124f: SWAP5 00001250: SWAP6 00001251: DUP5 00001252: DUP1 00001253: PUSH2 0x1268 00001256: PUSH1 0x01 00001258: SWAP4 00001259: PUSH1 0x1f 0000125b: NOT 0000125c: DUP7 0000125d: DUP3 0000125e: SUB 0000125f: ADD 00001260: DUP8 00001261: MSTORE 00001262: DUP11 00001263: MLOAD 00001264: PUSH2 0x1000 00001267: JUMP 00001268: JUMPDEST 00001269: SWAP9 0000126a: ADD 0000126b: SWAP4 0000126c: ADD 0000126d: SWAP4 0000126e: ADD 0000126f: SWAP2 00001270: SWAP5 00001271: SWAP4 00001272: SWAP3 00001273: SWAP1 00001274: PUSH2 0x1227 00001277: JUMP 00001278: JUMPDEST 00001279: PUSH1 0x40 0000127b: MLOAD 0000127c: RETURNDATASIZE 0000127d: PUSH1 0x00 0000127f: DUP3 00001280: RETURNDATACOPY 00001281: RETURNDATASIZE 00001282: SWAP1 00001283: REVERT 00001284: JUMPDEST 00001285: SWAP2 00001286: SWAP1 00001287: DUP3 00001288: SUB 00001289: SWAP2 0000128a: DUP3 0000128b: GT 0000128c: PUSH2 0x0d1f 0000128f: JUMPI 00001290: JUMP 00001291: JUMPDEST 00001292: PUSH1 0x40 00001294: MLOAD 00001295: PUSH4 0x70a08231 0000129a: PUSH1 0xe0 0000129c: SHL 0000129d: DUP1 0000129e: DUP3 0000129f: MSTORE 000012a0: ADDRESS 000012a1: PUSH1 0x04 000012a3: DUP4 000012a4: ADD 000012a5: MSTORE 000012a6: PUSH1 0x20 000012a8: SWAP5 000012a9: SWAP3 000012aa: SWAP4 000012ab: PUSH1 0x01 000012ad: PUSH1 0x01 000012af: PUSH1 0xa0 000012b1: SHL 000012b2: SUB 000012b3: DUP2 000012b4: AND 000012b5: SWAP4 000012b6: SWAP1 000012b7: DUP7 000012b8: DUP5 000012b9: PUSH1 0x24 000012bb: DUP2 000012bc: DUP9 000012bd: GAS 000012be: STATICCALL 000012bf: SWAP6 000012c0: DUP7 000012c1: ISZERO 000012c2: PUSH2 0x0618 000012c5: JUMPI 000012c6: DUP8 000012c7: SWAP5 000012c8: PUSH1 0x00 000012ca: SWAP8 000012cb: PUSH2 0x132a 000012ce: JUMPI 000012cf: JUMPDEST 000012d0: POP 000012d1: SWAP1 000012d2: PUSH2 0x12dd 000012d5: SWAP3 000012d6: SWAP2 000012d7: ADDRESS 000012d8: SWAP2 000012d9: PUSH2 0x1351 000012dc: JUMP 000012dd: JUMPDEST 000012de: PUSH1 0x40 000012e0: MLOAD 000012e1: SWAP1 000012e2: DUP2 000012e3: MSTORE 000012e4: ADDRESS 000012e5: PUSH1 0x04 000012e7: DUP3 000012e8: ADD 000012e9: MSTORE 000012ea: SWAP2 000012eb: DUP3 000012ec: SWAP1 000012ed: PUSH1 0x24 000012ef: SWAP1 000012f0: DUP3 000012f1: SWAP1 000012f2: GAS 000012f3: STATICCALL 000012f4: SWAP1 000012f5: DUP2 000012f6: ISZERO 000012f7: PUSH2 0x0618 000012fa: JUMPI 000012fb: PUSH2 0x1069 000012fe: SWAP4 000012ff: PUSH1 0x00 00001301: SWAP3 00001302: PUSH2 0x130d 00001305: JUMPI 00001306: JUMPDEST 00001307: POP 00001308: POP 00001309: PUSH2 0x1284 0000130c: JUMP 0000130d: JUMPDEST 0000130e: PUSH2 0x1323 00001311: SWAP3 00001312: POP 00001313: DUP1 00001314: RETURNDATASIZE 00001315: LT 00001316: PUSH2 0x085c 00001319: JUMPI 0000131a: PUSH2 0x084d 0000131d: DUP2 0000131e: DUP4 0000131f: PUSH2 0x0ed9 00001322: JUMP 00001323: JUMPDEST 00001324: CODESIZE 00001325: DUP1 00001326: PUSH2 0x1306 00001329: JUMP 0000132a: JUMPDEST 0000132b: PUSH2 0x12dd 0000132e: SWAP4 0000132f: SWAP3 00001330: SWAP2 00001331: SWAP8 00001332: POP 00001333: PUSH2 0x1348 00001336: SWAP1 00001337: DUP7 00001338: RETURNDATASIZE 00001339: DUP9 0000133a: GT 0000133b: PUSH2 0x085c 0000133e: JUMPI 0000133f: PUSH2 0x084d 00001342: DUP2 00001343: DUP4 00001344: PUSH2 0x0ed9 00001347: JUMP 00001348: JUMPDEST 00001349: SWAP7 0000134a: SWAP1 0000134b: SWAP2 0000134c: SWAP3 0000134d: PUSH2 0x12cf 00001350: JUMP 00001351: JUMPDEST 00001352: PUSH1 0x40 00001354: MLOAD 00001355: PUSH4 0x23b872dd 0000135a: PUSH1 0xe0 0000135c: SHL 0000135d: PUSH1 0x20 0000135f: DUP3 00001360: ADD 00001361: MSTORE 00001362: PUSH1 0x01 00001364: PUSH1 0x01 00001366: PUSH1 0xa0 00001368: SHL 00001369: SUB 0000136a: SWAP3 0000136b: DUP4 0000136c: AND 0000136d: PUSH1 0x24 0000136f: DUP3 00001370: ADD 00001371: MSTORE 00001372: SWAP3 00001373: SWAP1 00001374: SWAP2 00001375: AND 00001376: PUSH1 0x44 00001378: DUP4 00001379: ADD 0000137a: MSTORE 0000137b: PUSH1 0x64 0000137d: DUP1 0000137e: DUP4 0000137f: ADD 00001380: SWAP4 00001381: SWAP1 00001382: SWAP4 00001383: MSTORE 00001384: SWAP2 00001385: DUP2 00001386: MSTORE 00001387: PUSH1 0xa0 00001389: DUP2 0000138a: ADD 0000138b: SWAP2 0000138c: DUP2 0000138d: DUP4 0000138e: LT 0000138f: PUSH1 0x01 00001391: PUSH1 0x01 00001393: PUSH1 0x40 00001395: SHL 00001396: SUB 00001397: DUP5 00001398: GT 00001399: OR 0000139a: PUSH2 0x0e83 0000139d: JUMPI 0000139e: PUSH2 0x119d 000013a1: SWAP3 000013a2: PUSH1 0x40 000013a4: MSTORE 000013a5: PUSH2 0x13c1 000013a8: JUMP 000013a9: JUMPDEST 000013aa: SWAP1 000013ab: DUP2 000013ac: PUSH1 0x20 000013ae: SWAP2 000013af: SUB 000013b0: SLT 000013b1: PUSH2 0x00dd 000013b4: JUMPI 000013b5: MLOAD 000013b6: DUP1 000013b7: ISZERO 000013b8: ISZERO 000013b9: DUP2 000013ba: SUB 000013bb: PUSH2 0x00dd 000013be: JUMPI 000013bf: SWAP1 000013c0: JUMP 000013c1: JUMPDEST 000013c2: PUSH1 0x40 000013c4: MLOAD 000013c5: PUSH2 0x141f 000013c8: SWAP2 000013c9: PUSH1 0x01 000013cb: PUSH1 0x01 000013cd: PUSH1 0xa0 000013cf: SHL 000013d0: SUB 000013d1: AND 000013d2: PUSH2 0x13da 000013d5: DUP3 000013d6: PUSH2 0x0ebe 000013d9: JUMP 000013da: JUMPDEST 000013db: PUSH1 0x00 000013dd: DUP1 000013de: PUSH1 0x20 000013e0: SWAP6 000013e1: DUP7 000013e2: DUP6 000013e3: MSTORE 000013e4: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00001405: DUP8 00001406: DUP7 00001407: ADD 00001408: MSTORE 00001409: DUP7 0000140a: DUP2 0000140b: MLOAD 0000140c: SWAP2 0000140d: ADD 0000140e: DUP3 0000140f: DUP6 00001410: GAS 00001411: CALL 00001412: PUSH2 0x1419 00001415: PUSH2 0x14a7 00001418: JUMP 00001419: JUMPDEST 0000141a: SWAP2 0000141b: PUSH2 0x14d7 0000141e: JUMP 0000141f: JUMPDEST 00001420: DUP1 00001421: MLOAD 00001422: SWAP1 00001423: DUP3 00001424: DUP3 00001425: ISZERO 00001426: SWAP3 00001427: DUP4 00001428: ISZERO 00001429: PUSH2 0x148f 0000142c: JUMPI 0000142d: JUMPDEST 0000142e: POP 0000142f: POP 00001430: POP 00001431: ISZERO 00001432: PUSH2 0x1438 00001435: JUMPI 00001436: POP 00001437: JUMP 00001438: JUMPDEST 00001439: PUSH1 0x84 0000143b: SWAP1 0000143c: PUSH1 0x40 0000143e: MLOAD 0000143f: SWAP1 00001440: PUSH3 0x461bcd 00001444: PUSH1 0xe5 00001446: SHL 00001447: DUP3 00001448: MSTORE 00001449: PUSH1 0x04 0000144b: DUP3 0000144c: ADD 0000144d: MSTORE 0000144e: PUSH1 0x2a 00001450: PUSH1 0x24 00001452: DUP3 00001453: ADD 00001454: MSTORE 00001455: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 00001476: PUSH1 0x44 00001478: DUP3 00001479: ADD 0000147a: MSTORE 0000147b: PUSH10 0x1bdd081cdd58d8d95959 00001486: PUSH1 0xb2 00001488: SHL 00001489: PUSH1 0x64 0000148b: DUP3 0000148c: ADD 0000148d: MSTORE 0000148e: REVERT 0000148f: JUMPDEST 00001490: PUSH2 0x149f 00001493: SWAP4 00001494: POP 00001495: DUP3 00001496: ADD 00001497: DUP2 00001498: ADD 00001499: SWAP2 0000149a: ADD 0000149b: PUSH2 0x13a9 0000149e: JUMP 0000149f: JUMPDEST 000014a0: CODESIZE 000014a1: DUP3 000014a2: DUP2 000014a3: PUSH2 0x142d 000014a6: JUMP 000014a7: JUMPDEST 000014a8: RETURNDATASIZE 000014a9: ISZERO 000014aa: PUSH2 0x14d2 000014ad: JUMPI 000014ae: RETURNDATASIZE 000014af: SWAP1 000014b0: PUSH2 0x14b8 000014b3: DUP3 000014b4: PUSH2 0x0f19 000014b7: JUMP 000014b8: JUMPDEST 000014b9: SWAP2 000014ba: PUSH2 0x14c6 000014bd: PUSH1 0x40 000014bf: MLOAD 000014c0: SWAP4 000014c1: DUP5 000014c2: PUSH2 0x0ed9 000014c5: JUMP 000014c6: JUMPDEST 000014c7: DUP3 000014c8: MSTORE 000014c9: RETURNDATASIZE 000014ca: PUSH1 0x00 000014cc: PUSH1 0x20 000014ce: DUP5 000014cf: ADD 000014d0: RETURNDATACOPY 000014d1: JUMP 000014d2: JUMPDEST 000014d3: PUSH1 0x60 000014d5: SWAP1 000014d6: JUMP 000014d7: JUMPDEST 000014d8: SWAP2 000014d9: SWAP3 000014da: SWAP1 000014db: ISZERO 000014dc: PUSH2 0x1539 000014df: JUMPI 000014e0: POP 000014e1: DUP2 000014e2: MLOAD 000014e3: ISZERO 000014e4: PUSH2 0x14eb 000014e7: JUMPI 000014e8: POP 000014e9: SWAP1 000014ea: JUMP 000014eb: JUMPDEST 000014ec: EXTCODESIZE 000014ed: ISZERO 000014ee: PUSH2 0x14f4 000014f1: JUMPI 000014f2: SWAP1 000014f3: JUMP 000014f4: JUMPDEST 000014f5: PUSH1 0x40 000014f7: MLOAD 000014f8: PUSH3 0x461bcd 000014fc: PUSH1 0xe5 000014fe: SHL 000014ff: DUP2 00001500: MSTORE 00001501: PUSH1 0x20 00001503: PUSH1 0x04 00001505: DUP3 00001506: ADD 00001507: MSTORE 00001508: PUSH1 0x1d 0000150a: PUSH1 0x24 0000150c: DUP3 0000150d: ADD 0000150e: MSTORE 0000150f: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 00001530: PUSH1 0x44 00001532: DUP3 00001533: ADD 00001534: MSTORE 00001535: PUSH1 0x64 00001537: SWAP1 00001538: REVERT 00001539: JUMPDEST 0000153a: DUP3 0000153b: MLOAD 0000153c: SWAP1 0000153d: SWAP2 0000153e: POP 0000153f: ISZERO 00001540: PUSH2 0x154c 00001543: JUMPI 00001544: POP 00001545: DUP1 00001546: MLOAD 00001547: SWAP1 00001548: PUSH1 0x20 0000154a: ADD 0000154b: REVERT 0000154c: JUMPDEST 0000154d: PUSH1 0x40 0000154f: MLOAD 00001550: PUSH3 0x461bcd 00001554: PUSH1 0xe5 00001556: SHL 00001557: DUP2 00001558: MSTORE 00001559: PUSH1 0x20 0000155b: PUSH1 0x04 0000155d: DUP3 0000155e: ADD 0000155f: MSTORE 00001560: SWAP1 00001561: DUP2 00001562: SWAP1 00001563: PUSH2 0x1570 00001566: SWAP1 00001567: PUSH1 0x24 00001569: DUP4 0000156a: ADD 0000156b: SWAP1 0000156c: PUSH2 0x1000 0000156f: JUMP 00001570: JUMPDEST 00001571: SUB 00001572: SWAP1 00001573: REVERT 00001574: JUMPDEST 00001575: PUSH1 0x01 00001577: PUSH1 0x01 00001579: PUSH1 0xa0 0000157b: SHL 0000157c: SUB 0000157d: SWAP2 0000157e: DUP3 0000157f: AND 00001580: DUP2 00001581: MSTORE 00001582: SWAP2 00001583: DUP2 00001584: AND 00001585: PUSH1 0x20 00001587: DUP4 00001588: ADD 00001589: MSTORE 0000158a: SWAP1 0000158b: SWAP2 0000158c: AND 0000158d: PUSH1 0x40 0000158f: DUP3 00001590: ADD 00001591: MSTORE 00001592: PUSH1 0x60 00001594: DUP2 00001595: ADD 00001596: SWAP2 00001597: SWAP1 00001598: SWAP2 00001599: MSTORE 0000159a: PUSH1 0xa0 0000159c: PUSH1 0x80 0000159e: DUP3 0000159f: ADD 000015a0: DUP2 000015a1: SWAP1 000015a2: MSTORE 000015a3: PUSH2 0x1069 000015a6: SWAP3 000015a7: SWAP2 000015a8: ADD 000015a9: SWAP1 000015aa: PUSH2 0x1000 000015ad: JUMP 000015ae: JUMPDEST 000015af: PUSH2 0x168b 000015b2: PUSH2 0x1069 000015b5: SWAP4 000015b6: SWAP3 000015b7: SWAP5 000015b8: PUSH1 0x40 000015ba: MLOAD 000015bb: SWAP1 000015bc: PUSH1 0x20 000015be: DUP3 000015bf: ADD 000015c0: SWAP2 000015c1: PUSH4 0x06fdde03 000015c6: PUSH1 0xe0 000015c8: SHL 000015c9: DUP4 000015ca: MSTORE 000015cb: PUSH1 0x04 000015cd: DUP2 000015ce: MSTORE 000015cf: PUSH2 0x15d7 000015d2: DUP2 000015d3: PUSH2 0x0ebe 000015d6: JUMP 000015d7: JUMPDEST 000015d8: PUSH1 0x00 000015da: DUP1 000015db: SWAP4 000015dc: DUP2 000015dd: SWAP3 000015de: MLOAD 000015df: SWAP1 000015e0: DUP9 000015e1: GAS 000015e2: STATICCALL 000015e3: POP 000015e4: PUSH2 0x15eb 000015e7: PUSH2 0x14a7 000015ea: JUMP 000015eb: JUMPDEST 000015ec: DUP3 000015ed: DUP1 000015ee: PUSH1 0x40 000015f0: MLOAD 000015f1: PUSH1 0x20 000015f3: DUP2 000015f4: ADD 000015f5: SWAP1 000015f6: PUSH4 0x95d89b41 000015fb: PUSH1 0xe0 000015fd: SHL 000015fe: DUP3 000015ff: MSTORE 00001600: PUSH1 0x04 00001602: DUP2 00001603: MSTORE 00001604: PUSH2 0x160c 00001607: DUP2 00001608: PUSH2 0x0ebe 0000160b: JUMP 0000160c: JUMPDEST 0000160d: MLOAD 0000160e: SWAP1 0000160f: DUP10 00001610: GAS 00001611: STATICCALL 00001612: POP 00001613: PUSH2 0x161a 00001616: PUSH2 0x14a7 00001619: JUMP 0000161a: JUMPDEST 0000161b: SWAP3 0000161c: DUP1 0000161d: PUSH1 0x40 0000161f: MLOAD 00001620: PUSH1 0x20 00001622: DUP2 00001623: ADD 00001624: SWAP1 00001625: PUSH4 0x313ce567 0000162a: PUSH1 0xe0 0000162c: SHL 0000162d: DUP3 0000162e: MSTORE 0000162f: PUSH1 0x04 00001631: DUP2 00001632: MSTORE 00001633: PUSH2 0x163b 00001636: DUP2 00001637: PUSH2 0x0ebe 0000163a: JUMP 0000163b: JUMPDEST 0000163c: MLOAD 0000163d: SWAP1 0000163e: DUP10 0000163f: GAS 00001640: STATICCALL 00001641: POP 00001642: PUSH2 0x165b 00001645: PUSH2 0x164c 00001648: PUSH2 0x14a7 0000164b: JUMP 0000164c: JUMPDEST 0000164d: PUSH1 0x40 0000164f: MLOAD 00001650: SWAP5 00001651: DUP6 00001652: SWAP4 00001653: PUSH1 0x20 00001655: DUP6 00001656: ADD 00001657: PUSH2 0x1765 0000165a: JUMP 0000165b: JUMPDEST 0000165c: SUB 0000165d: SWAP5 0000165e: PUSH2 0x166f 00001661: PUSH1 0x1f 00001663: NOT 00001664: SWAP7 00001665: DUP8 00001666: DUP2 00001667: ADD 00001668: DUP6 00001669: MSTORE 0000166a: DUP5 0000166b: PUSH2 0x0ed9 0000166e: JUMP 0000166f: JUMPDEST 00001670: PUSH1 0x40 00001672: MLOAD 00001673: PUSH4 0x67bf0625 00001678: PUSH1 0xe0 0000167a: SHL 0000167b: PUSH1 0x20 0000167d: DUP3 0000167e: ADD 0000167f: MSTORE 00001680: SWAP8 00001681: DUP9 00001682: SWAP6 00001683: PUSH1 0x24 00001685: DUP8 00001686: ADD 00001687: PUSH2 0x1574 0000168a: JUMP 0000168b: JUMPDEST 0000168c: SUB 0000168d: SWAP1 0000168e: DUP2 0000168f: ADD 00001690: DUP4 00001691: MSTORE 00001692: DUP3 00001693: PUSH2 0x0ed9 00001696: JUMP 00001697: JUMPDEST 00001698: PUSH2 0x168b 0000169b: PUSH2 0x1069 0000169e: SWAP4 0000169f: SWAP3 000016a0: SWAP5 000016a1: PUSH1 0x40 000016a3: MLOAD 000016a4: SWAP1 000016a5: PUSH1 0x20 000016a7: DUP3 000016a8: ADD 000016a9: SWAP2 000016aa: PUSH4 0x06fdde03 000016af: PUSH1 0xe0 000016b1: SHL 000016b2: DUP4 000016b3: MSTORE 000016b4: PUSH1 0x04 000016b6: DUP2 000016b7: MSTORE 000016b8: PUSH2 0x16c0 000016bb: DUP2 000016bc: PUSH2 0x0ebe 000016bf: JUMP 000016c0: JUMPDEST 000016c1: PUSH1 0x00 000016c3: DUP1 000016c4: SWAP4 000016c5: DUP2 000016c6: SWAP3 000016c7: MLOAD 000016c8: SWAP1 000016c9: DUP9 000016ca: GAS 000016cb: STATICCALL 000016cc: POP 000016cd: PUSH2 0x16d4 000016d0: PUSH2 0x14a7 000016d3: JUMP 000016d4: JUMPDEST 000016d5: DUP3 000016d6: DUP1 000016d7: PUSH1 0x40 000016d9: MLOAD 000016da: PUSH1 0x20 000016dc: DUP2 000016dd: ADD 000016de: SWAP1 000016df: PUSH4 0x95d89b41 000016e4: PUSH1 0xe0 000016e6: SHL 000016e7: DUP3 000016e8: MSTORE 000016e9: PUSH1 0x04 000016eb: DUP2 000016ec: MSTORE 000016ed: PUSH2 0x16f5 000016f0: DUP2 000016f1: PUSH2 0x0ebe 000016f4: JUMP 000016f5: JUMPDEST 000016f6: MLOAD 000016f7: SWAP1 000016f8: DUP10 000016f9: GAS 000016fa: STATICCALL 000016fb: POP 000016fc: PUSH2 0x1703 000016ff: PUSH2 0x14a7 00001702: JUMP 00001703: JUMPDEST 00001704: SWAP3 00001705: DUP1 00001706: PUSH1 0x40 00001708: MLOAD 00001709: PUSH1 0x20 0000170b: DUP2 0000170c: ADD 0000170d: SWAP1 0000170e: PUSH4 0x313ce567 00001713: PUSH1 0xe0 00001715: SHL 00001716: DUP3 00001717: MSTORE 00001718: PUSH1 0x04 0000171a: DUP2 0000171b: MSTORE 0000171c: PUSH2 0x1724 0000171f: DUP2 00001720: PUSH2 0x0ebe 00001723: JUMP 00001724: JUMPDEST 00001725: MLOAD 00001726: SWAP1 00001727: DUP10 00001728: GAS 00001729: STATICCALL 0000172a: POP 0000172b: PUSH2 0x1735 0000172e: PUSH2 0x164c 00001731: PUSH2 0x14a7 00001734: JUMP 00001735: JUMPDEST 00001736: SUB 00001737: SWAP5 00001738: PUSH2 0x1749 0000173b: PUSH1 0x1f 0000173d: NOT 0000173e: SWAP7 0000173f: DUP8 00001740: DUP2 00001741: ADD 00001742: DUP6 00001743: MSTORE 00001744: DUP5 00001745: PUSH2 0x0ed9 00001748: JUMP 00001749: JUMPDEST 0000174a: PUSH1 0x40 0000174c: MLOAD 0000174d: PUSH4 0x33f9ebdf 00001752: PUSH1 0xe2 00001754: SHL 00001755: PUSH1 0x20 00001757: DUP3 00001758: ADD 00001759: MSTORE 0000175a: SWAP8 0000175b: DUP9 0000175c: SWAP6 0000175d: PUSH1 0x24 0000175f: DUP8 00001760: ADD 00001761: PUSH2 0x1574 00001764: JUMP 00001765: JUMPDEST 00001766: SWAP2 00001767: PUSH2 0x178e 0000176a: SWAP1 0000176b: PUSH2 0x1780 0000176e: PUSH2 0x1069 00001771: SWAP6 00001772: SWAP4 00001773: PUSH1 0x60 00001775: DUP7 00001776: MSTORE 00001777: PUSH1 0x60 00001779: DUP7 0000177a: ADD 0000177b: SWAP1 0000177c: PUSH2 0x1000 0000177f: JUMP 00001780: JUMPDEST 00001781: SWAP1 00001782: DUP5 00001783: DUP3 00001784: SUB 00001785: PUSH1 0x20 00001787: DUP7 00001788: ADD 00001789: MSTORE 0000178a: PUSH2 0x1000 0000178d: JUMP 0000178e: JUMPDEST 0000178f: SWAP2 00001790: PUSH1 0x40 00001792: DUP2 00001793: DUP5 00001794: SUB 00001795: SWAP2 00001796: ADD 00001797: MSTORE 00001798: PUSH2 0x1000 0000179b: JUMP 0000179c: JUMPDEST 0000179d: DUP2 0000179e: DUP4 0000179f: MSTORE 000017a0: SWAP1 000017a1: SWAP2 000017a2: PUSH1 0x01 000017a4: PUSH1 0x01 000017a6: PUSH1 0xfb 000017a8: SHL 000017a9: SUB 000017aa: DUP4 000017ab: GT 000017ac: PUSH2 0x00dd 000017af: JUMPI 000017b0: PUSH1 0x20 000017b2: SWAP3 000017b3: PUSH1 0x05 000017b5: SHL 000017b6: DUP1 000017b7: SWAP3 000017b8: DUP5 000017b9: DUP4 000017ba: ADD 000017bb: CALLDATACOPY 000017bc: ADD 000017bd: ADD 000017be: SWAP1 000017bf: JUMP 000017c0: JUMPDEST 000017c1: SWAP7 000017c2: SWAP6 000017c3: SWAP1 000017c4: PUSH1 0xa0 000017c6: SWAP5 000017c7: PUSH2 0x17f5 000017ca: SWAP5 000017cb: PUSH1 0x00 000017cd: SWAP8 000017ce: SWAP5 000017cf: PUSH2 0xffff 000017d2: SWAP4 000017d3: DUP12 000017d4: MSTORE 000017d5: PUSH1 0x20 000017d7: DUP12 000017d8: ADD 000017d9: MSTORE 000017da: PUSH1 0x40 000017dc: DUP11 000017dd: ADD 000017de: MSTORE 000017df: AND 000017e0: PUSH1 0x60 000017e2: DUP9 000017e3: ADD 000017e4: MSTORE 000017e5: PUSH1 0xc0 000017e7: PUSH1 0x80 000017e9: DUP9 000017ea: ADD 000017eb: MSTORE 000017ec: PUSH1 0xc0 000017ee: DUP8 000017ef: ADD 000017f0: SWAP2 000017f1: PUSH2 0x179c 000017f4: JUMP 000017f5: JUMPDEST 000017f6: SWAP4 000017f7: ADD 000017f8: MSTORE 000017f9: JUMP 000017fa: JUMPDEST 000017fb: ISZERO 000017fc: PUSH2 0x1801 000017ff: JUMPI 00001800: JUMP 00001801: JUMPDEST 00001802: PUSH1 0x40 00001804: MLOAD 00001805: PUSH3 0x461bcd 00001809: PUSH1 0xe5 0000180b: SHL 0000180c: DUP2 0000180d: MSTORE 0000180e: PUSH1 0x20 00001810: PUSH1 0x04 00001812: DUP3 00001813: ADD 00001814: MSTORE 00001815: PUSH1 0x02 00001817: PUSH1 0x24 00001819: DUP3 0000181a: ADD 0000181b: MSTORE 0000181c: PUSH2 0x3cb7 0000181f: PUSH1 0xf1 00001821: SHL 00001822: PUSH1 0x44 00001824: DUP3 00001825: ADD 00001826: MSTORE 00001827: PUSH1 0x64 00001829: SWAP1 0000182a: REVERT 0000182b: JUMPDEST 0000182c: ISZERO 0000182d: PUSH2 0x1832 00001830: JUMPI 00001831: JUMP 00001832: JUMPDEST 00001833: PUSH1 0x40 00001835: MLOAD 00001836: PUSH3 0x461bcd 0000183a: PUSH1 0xe5 0000183c: SHL 0000183d: DUP2 0000183e: MSTORE 0000183f: PUSH1 0x20 00001841: PUSH1 0x04 00001843: DUP3 00001844: ADD 00001845: MSTORE 00001846: PUSH1 0x02 00001848: PUSH1 0x24 0000184a: DUP3 0000184b: ADD 0000184c: MSTORE 0000184d: PUSH2 0x7931 00001850: PUSH1 0xf0 00001852: SHL 00001853: PUSH1 0x44 00001855: DUP3 00001856: ADD 00001857: MSTORE 00001858: PUSH1 0x64 0000185a: SWAP1 0000185b: REVERT 0000185c: JUMPDEST 0000185d: PUSH1 0x40 0000185f: MLOAD 00001860: PUSH4 0xa9059cbb 00001865: PUSH1 0xe0 00001867: SHL 00001868: PUSH1 0x20 0000186a: DUP3 0000186b: ADD 0000186c: MSTORE 0000186d: PUSH1 0x01 0000186f: PUSH1 0x01 00001871: PUSH1 0xa0 00001873: SHL 00001874: SUB 00001875: SWAP3 00001876: SWAP1 00001877: SWAP3 00001878: AND 00001879: PUSH1 0x24 0000187b: DUP4 0000187c: ADD 0000187d: MSTORE 0000187e: PUSH1 0x44 00001880: DUP1 00001881: DUP4 00001882: ADD 00001883: SWAP4 00001884: SWAP1 00001885: SWAP4 00001886: MSTORE 00001887: SWAP2 00001888: DUP2 00001889: MSTORE 0000188a: PUSH2 0x119d 0000188d: SWAP2 0000188e: PUSH2 0x1898 00001891: PUSH1 0x64 00001893: DUP4 00001894: PUSH2 0x0ed9 00001897: JUMP 00001898: JUMPDEST 00001899: PUSH2 0x13c1 0000189c: JUMP 0000189d: JUMPDEST 0000189e: PUSH2 0x1945 000018a1: PUSH2 0x193a 000018a4: PUSH2 0x1965 000018a7: SWAP7 000018a8: SWAP8 000018a9: SWAP9 000018aa: SWAP4 000018ab: SWAP5 000018ac: SWAP6 000018ad: PUSH1 0x00 000018af: DUP1 000018b0: MLOAD 000018b1: PUSH1 0x20 000018b3: PUSH2 0x1dad 000018b6: DUP4 000018b7: CODECOPY 000018b8: DUP2 000018b9: MLOAD 000018ba: SWAP2 000018bb: MSTORE 000018bc: SWAP9 000018bd: PUSH2 0x18c9 000018c0: PUSH1 0x01 000018c2: DUP12 000018c3: SLOAD 000018c4: EQ 000018c5: PUSH2 0x107f 000018c8: JUMP 000018c9: JUMPDEST 000018ca: PUSH1 0x02 000018cc: DUP11 000018cd: SSTORE 000018ce: PUSH2 0x18fe 000018d1: PUSH2 0x18f9 000018d4: PUSH2 0x18f5 000018d7: PUSH2 0x18ee 000018da: DUP11 000018db: PUSH2 0x058e 000018de: DUP11 000018df: PUSH1 0x00 000018e1: MSTORE 000018e2: PUSH1 0x00 000018e4: PUSH1 0x20 000018e6: MSTORE 000018e7: PUSH1 0x40 000018e9: PUSH1 0x00 000018eb: KECCAK256 000018ec: SWAP1 000018ed: JUMP 000018ee: JUMPDEST 000018ef: SLOAD 000018f0: PUSH1 0xff 000018f2: AND 000018f3: SWAP1 000018f4: JUMP 000018f5: JUMPDEST 000018f6: ISZERO 000018f7: SWAP1 000018f8: JUMP 000018f9: JUMPDEST 000018fa: PUSH2 0x1a3c 000018fd: JUMP 000018fe: JUMPDEST 000018ff: PUSH1 0x02 00001901: SLOAD 00001902: PUSH2 0x1933 00001905: SWAP1 00001906: PUSH1 0x01 00001908: PUSH1 0x01 0000190a: PUSH1 0xa0 0000190c: SHL 0000190d: SUB 0000190e: AND 0000190f: PUSH2 0x1923 00001912: PUSH2 0x1919 00001915: PUSH2 0x0efa 00001918: JUMP 00001919: JUMPDEST 0000191a: PUSH2 0xffff 0000191d: SWAP1 0000191e: SWAP12 0000191f: AND 00001920: DUP12 00001921: MSTORE 00001922: JUMP 00001923: JUMPDEST 00001924: PUSH1 0x01 00001926: PUSH1 0x01 00001928: PUSH1 0xa0 0000192a: SHL 0000192b: SUB 0000192c: AND 0000192d: PUSH1 0x20 0000192f: DUP11 00001930: ADD 00001931: MSTORE 00001932: JUMP 00001933: JUMPDEST 00001934: CALLDATASIZE 00001935: SWAP2 00001936: PUSH2 0x0f47 00001939: JUMP 0000193a: JUMPDEST 0000193b: DUP1 0000193c: PUSH1 0x40 0000193e: DUP8 0000193f: ADD 00001940: MSTORE 00001941: PUSH2 0x1af7 00001944: JUMP 00001945: JUMPDEST 00001946: SWAP6 00001947: SWAP2 00001948: SWAP7 00001949: SWAP1 0000194a: SWAP4 0000194b: PUSH1 0x40 0000194d: MLOAD 0000194e: SWAP10 0000194f: DUP11 00001950: SWAP4 00001951: PUSH4 0xe4948f43 00001956: PUSH1 0xe0 00001958: SHL 00001959: DUP6 0000195a: MSTORE 0000195b: DUP8 0000195c: DUP7 0000195d: PUSH1 0x04 0000195f: DUP8 00001960: ADD 00001961: PUSH2 0x1a6d 00001964: JUMP 00001965: JUMPDEST 00001966: PUSH1 0x01 00001968: PUSH1 0x01 0000196a: PUSH1 0xa0 0000196c: SHL 0000196d: SUB 0000196e: SWAP4 0000196f: SWAP2 00001970: PUSH1 0x20 00001972: SWAP2 00001973: DUP11 00001974: SWAP2 00001975: SWAP1 00001976: SUB 00001977: DUP2 00001978: PUSH32 0x0000000000000000000000005fd9f73286b7e8683bab45019c94553b93e015cf 00001999: DUP8 0000199a: AND 0000199b: GAS 0000199c: STATICCALL 0000199d: SWAP2 0000199e: DUP3 0000199f: ISZERO 000019a0: PUSH2 0x0618 000019a3: JUMPI 000019a4: PUSH2 0x19f5 000019a7: PUSH32 0xac1b18083978656d557d6e91c88203585cfda1031bdb14538327121ef140d383 000019c8: SWAP6 000019c9: PUSH2 0x058e 000019cc: PUSH2 0x1a02 000019cf: SWAP4 000019d0: PUSH2 0x19e5 000019d3: DUP9 000019d4: SWAP8 000019d5: PUSH1 0x01 000019d7: SWAP15 000019d8: PUSH1 0x00 000019da: SWAP2 000019db: PUSH2 0x1a1e 000019de: JUMPI 000019df: JUMPDEST 000019e0: POP 000019e1: PUSH2 0x1ac6 000019e4: JUMP 000019e5: JUMPDEST 000019e6: PUSH1 0x00 000019e8: MSTORE 000019e9: PUSH1 0x00 000019eb: PUSH1 0x20 000019ed: MSTORE 000019ee: PUSH1 0x40 000019f0: PUSH1 0x00 000019f2: KECCAK256 000019f3: SWAP1 000019f4: JUMP 000019f5: JUMPDEST 000019f6: DUP1 000019f7: SLOAD 000019f8: PUSH1 0xff 000019fa: NOT 000019fb: AND 000019fc: PUSH1 0x01 000019fe: OR 000019ff: SWAP1 00001a00: SSTORE 00001a01: JUMP 00001a02: JUMPDEST 00001a03: AND 00001a04: SWAP4 00001a05: PUSH2 0x1a0f 00001a08: DUP5 00001a09: DUP3 00001a0a: DUP8 00001a0b: PUSH2 0x185c 00001a0e: JUMP 00001a0f: JUMPDEST 00001a10: PUSH1 0x40 00001a12: MLOAD 00001a13: SWAP4 00001a14: DUP5 00001a15: MSTORE 00001a16: AND 00001a17: SWAP2 00001a18: PUSH1 0x20 00001a1a: SWAP1 00001a1b: LOG3 00001a1c: SSTORE 00001a1d: JUMP 00001a1e: JUMPDEST 00001a1f: PUSH2 0x1a36 00001a22: SWAP2 00001a23: POP 00001a24: PUSH1 0x20 00001a26: RETURNDATASIZE 00001a27: DUP2 00001a28: GT 00001a29: PUSH2 0x0611 00001a2c: JUMPI 00001a2d: PUSH2 0x0603 00001a30: DUP2 00001a31: DUP4 00001a32: PUSH2 0x0ed9 00001a35: JUMP 00001a36: JUMPDEST 00001a37: CODESIZE 00001a38: PUSH2 0x19df 00001a3b: JUMP 00001a3c: JUMPDEST 00001a3d: ISZERO 00001a3e: PUSH2 0x1a43 00001a41: JUMPI 00001a42: JUMP 00001a43: JUMPDEST 00001a44: PUSH1 0x40 00001a46: MLOAD 00001a47: PUSH3 0x461bcd 00001a4b: PUSH1 0xe5 00001a4d: SHL 00001a4e: DUP2 00001a4f: MSTORE 00001a50: PUSH1 0x20 00001a52: PUSH1 0x04 00001a54: DUP3 00001a55: ADD 00001a56: MSTORE 00001a57: PUSH1 0x02 00001a59: PUSH1 0x24 00001a5b: DUP3 00001a5c: ADD 00001a5d: MSTORE 00001a5e: PUSH2 0x7077 00001a61: PUSH1 0xf0 00001a63: SHL 00001a64: PUSH1 0x44 00001a66: DUP3 00001a67: ADD 00001a68: MSTORE 00001a69: PUSH1 0x64 00001a6b: SWAP1 00001a6c: REVERT 00001a6d: JUMPDEST 00001a6e: SWAP4 00001a6f: SWAP2 00001a70: PUSH2 0x1069 00001a73: SWAP6 00001a74: SWAP4 00001a75: PUSH1 0x40 00001a77: SWAP2 00001a78: PUSH2 0x1ab8 00001a7b: SWAP4 00001a7c: DUP8 00001a7d: MSTORE 00001a7e: PUSH1 0x20 00001a80: DUP8 00001a81: ADD 00001a82: MSTORE 00001a83: PUSH1 0x80 00001a85: DUP3 00001a86: DUP8 00001a87: ADD 00001a88: MSTORE 00001a89: PUSH2 0xffff 00001a8c: DUP2 00001a8d: MLOAD 00001a8e: AND 00001a8f: PUSH1 0x80 00001a91: DUP8 00001a92: ADD 00001a93: MSTORE 00001a94: PUSH1 0x01 00001a96: DUP1 00001a97: PUSH1 0xa0 00001a99: SHL 00001a9a: SUB 00001a9b: PUSH1 0x20 00001a9d: DUP3 00001a9e: ADD 00001a9f: MLOAD 00001aa0: AND 00001aa1: PUSH1 0xa0 00001aa3: DUP8 00001aa4: ADD 00001aa5: MSTORE 00001aa6: ADD 00001aa7: MLOAD 00001aa8: PUSH1 0x60 00001aaa: PUSH1 0xc0 00001aac: DUP7 00001aad: ADD 00001aae: MSTORE 00001aaf: PUSH1 0xe0 00001ab1: DUP6 00001ab2: ADD 00001ab3: SWAP1 00001ab4: PUSH2 0x1000 00001ab7: JUMP 00001ab8: JUMPDEST 00001ab9: SWAP3 00001aba: PUSH1 0x60 00001abc: DUP2 00001abd: DUP6 00001abe: SUB 00001abf: SWAP2 00001ac0: ADD 00001ac1: MSTORE 00001ac2: PUSH2 0x179c 00001ac5: JUMP 00001ac6: JUMPDEST 00001ac7: ISZERO 00001ac8: PUSH2 0x1acd 00001acb: JUMPI 00001acc: JUMP 00001acd: JUMPDEST 00001ace: PUSH1 0x40 00001ad0: MLOAD 00001ad1: PUSH3 0x461bcd 00001ad5: PUSH1 0xe5 00001ad7: SHL 00001ad8: DUP2 00001ad9: MSTORE 00001ada: PUSH1 0x20 00001adc: PUSH1 0x04 00001ade: DUP3 00001adf: ADD 00001ae0: MSTORE 00001ae1: PUSH1 0x02 00001ae3: PUSH1 0x24 00001ae5: DUP3 00001ae6: ADD 00001ae7: MSTORE 00001ae8: PUSH2 0x6e71 00001aeb: PUSH1 0xf0 00001aed: SHL 00001aee: PUSH1 0x44 00001af0: DUP3 00001af1: ADD 00001af2: MSTORE 00001af3: PUSH1 0x64 00001af5: SWAP1 00001af6: REVERT 00001af7: JUMPDEST 00001af8: PUSH1 0x4c 00001afa: DUP2 00001afb: MLOAD 00001afc: SUB 00001afd: PUSH2 0x1b83 00001b00: JUMPI 00001b01: PUSH1 0x04 00001b03: DUP2 00001b04: ADD 00001b05: MLOAD 00001b06: PUSH4 0xee5d333f 00001b0b: PUSH1 0xe0 00001b0d: SHL 00001b0e: PUSH1 0xe0 00001b10: SWAP2 00001b11: SWAP1 00001b12: SWAP2 00001b13: SHL 00001b14: PUSH1 0x01 00001b16: PUSH1 0x01 00001b18: PUSH1 0xe0 00001b1a: SHL 00001b1b: SUB 00001b1c: NOT 00001b1d: AND 00001b1e: ADD 00001b1f: PUSH2 0x1b59 00001b22: JUMPI 00001b23: PUSH2 0x1b45 00001b26: SWAP2 00001b27: PUSH2 0x1b55 00001b2a: PUSH2 0x1b36 00001b2d: DUP4 00001b2e: PUSH1 0x18 00001b30: DUP1 00001b31: SWAP2 00001b32: ADD 00001b33: MLOAD 00001b34: SWAP2 00001b35: JUMP 00001b36: JUMPDEST 00001b37: PUSH1 0x14 00001b39: DUP2 00001b3a: DUP7 00001b3b: ADD 00001b3c: DUP2 00001b3d: ADD 00001b3e: MLOAD 00001b3f: SWAP3 00001b40: SWAP7 00001b41: SWAP2 00001b42: ADD 00001b43: SWAP1 00001b44: JUMP 00001b45: JUMPDEST 00001b46: SWAP1 00001b47: SWAP4 00001b48: SWAP1 00001b49: PUSH1 0x20 00001b4b: SWAP1 00001b4c: DUP2 00001b4d: DUP2 00001b4e: ADD 00001b4f: SWAP3 00001b50: ADD 00001b51: ADD 00001b52: MLOAD 00001b53: SWAP2 00001b54: JUMP 00001b55: JUMPDEST 00001b56: POP 00001b57: SWAP1 00001b58: JUMP 00001b59: JUMPDEST 00001b5a: PUSH1 0x40 00001b5c: MLOAD 00001b5d: PUSH3 0x461bcd 00001b61: PUSH1 0xe5 00001b63: SHL 00001b64: DUP2 00001b65: MSTORE 00001b66: PUSH1 0x20 00001b68: PUSH1 0x04 00001b6a: DUP3 00001b6b: ADD 00001b6c: MSTORE 00001b6d: PUSH1 0x02 00001b6f: PUSH1 0x24 00001b71: DUP3 00001b72: ADD 00001b73: MSTORE 00001b74: PUSH2 0x1b9d 00001b77: PUSH1 0xf2 00001b79: SHL 00001b7a: PUSH1 0x44 00001b7c: DUP3 00001b7d: ADD 00001b7e: MSTORE 00001b7f: PUSH1 0x64 00001b81: SWAP1 00001b82: REVERT 00001b83: JUMPDEST 00001b84: PUSH1 0x40 00001b86: MLOAD 00001b87: PUSH3 0x461bcd 00001b8b: PUSH1 0xe5 00001b8d: SHL 00001b8e: DUP2 00001b8f: MSTORE 00001b90: PUSH1 0x20 00001b92: PUSH1 0x04 00001b94: DUP3 00001b95: ADD 00001b96: MSTORE 00001b97: PUSH1 0x02 00001b99: PUSH1 0x24 00001b9b: DUP3 00001b9c: ADD 00001b9d: MSTORE 00001b9e: PUSH2 0x6b6b 00001ba1: PUSH1 0xf0 00001ba3: SHL 00001ba4: PUSH1 0x44 00001ba6: DUP3 00001ba7: ADD 00001ba8: MSTORE 00001ba9: PUSH1 0x64 00001bab: SWAP1 00001bac: REVERT 00001bad: JUMPDEST 00001bae: PUSH1 0x60 00001bb0: SWAP1 00001bb1: PUSH2 0x1069 00001bb4: SWAP4 00001bb5: SWAP3 00001bb6: PUSH1 0x00 00001bb8: DUP3 00001bb9: MSTORE 00001bba: PUSH1 0x20 00001bbc: DUP3 00001bbd: ADD 00001bbe: MSTORE 00001bbf: DUP2 00001bc0: PUSH1 0x40 00001bc2: DUP3 00001bc3: ADD 00001bc4: MSTORE 00001bc5: ADD 00001bc6: SWAP1 00001bc7: PUSH2 0x1000 00001bca: JUMP 00001bcb: JUMPDEST 00001bcc: SWAP3 00001bcd: SWAP1 00001bce: PUSH2 0x1c22 00001bd1: SWAP5 00001bd2: PUSH1 0x20 00001bd4: SWAP2 00001bd5: PUSH1 0x40 00001bd7: MLOAD 00001bd8: SWAP2 00001bd9: PUSH4 0x3cda3351 00001bde: PUSH1 0xe0 00001be0: SHL 00001be1: DUP5 00001be2: DUP5 00001be3: ADD 00001be4: MSTORE 00001be5: PUSH2 0x1c04 00001be8: DUP4 00001be9: PUSH2 0x1bf6 00001bec: DUP8 00001bed: DUP10 00001bee: PUSH1 0x24 00001bf0: DUP5 00001bf1: ADD 00001bf2: PUSH2 0x1bad 00001bf5: JUMP 00001bf6: JUMPDEST 00001bf7: SUB 00001bf8: PUSH1 0x1f 00001bfa: NOT 00001bfb: DUP2 00001bfc: ADD 00001bfd: DUP6 00001bfe: MSTORE 00001bff: DUP5 00001c00: PUSH2 0x0ed9 00001c03: JUMP 00001c04: JUMPDEST 00001c05: PUSH1 0x40 00001c07: MLOAD 00001c08: DUP1 00001c09: SWAP9 00001c0a: DUP2 00001c0b: SWAP5 00001c0c: DUP3 00001c0d: SWAP4 00001c0e: PUSH4 0xeb672419 00001c13: PUSH1 0xe0 00001c15: SHL 00001c16: DUP5 00001c17: MSTORE 00001c18: CALLER 00001c19: SWAP2 00001c1a: PUSH1 0x04 00001c1c: DUP6 00001c1d: ADD 00001c1e: PUSH2 0x11cd 00001c21: JUMP 00001c22: JUMPDEST 00001c23: PUSH1 0x01 00001c25: PUSH1 0x01 00001c27: PUSH1 0xa0 00001c29: SHL 00001c2a: SUB 00001c2b: SWAP9 00001c2c: SWAP2 00001c2d: SWAP1 00001c2e: SUB 00001c2f: SWAP3 00001c30: SWAP1 00001c31: DUP9 00001c32: AND 00001c33: GAS 00001c34: CALL 00001c35: SWAP4 00001c36: DUP5 00001c37: ISZERO 00001c38: PUSH2 0x0618 00001c3b: JUMPI 00001c3c: PUSH2 0x1069 00001c3f: SWAP5 00001c40: PUSH2 0x1c5f 00001c43: JUMPI 00001c44: JUMPDEST 00001c45: POP 00001c46: PUSH1 0x20 00001c48: DUP2 00001c49: MLOAD 00001c4a: SWAP2 00001c4b: ADD 00001c4c: KECCAK256 00001c4d: SWAP2 00001c4e: PUSH2 0x1111 00001c51: PUSH2 0x1111 00001c54: PUSH1 0x90 00001c56: SHL 00001c57: ADD 00001c58: ADDRESS 00001c59: ADD 00001c5a: AND 00001c5b: PUSH2 0x1d4b 00001c5e: JUMP 00001c5f: JUMPDEST 00001c60: PUSH2 0x1c76 00001c63: SWAP1 00001c64: PUSH1 0x20 00001c66: RETURNDATASIZE 00001c67: DUP2 00001c68: GT 00001c69: PUSH2 0x085c 00001c6c: JUMPI 00001c6d: PUSH2 0x084d 00001c70: DUP2 00001c71: DUP4 00001c72: PUSH2 0x0ed9 00001c75: JUMP 00001c76: JUMPDEST 00001c77: POP 00001c78: CODESIZE 00001c79: PUSH2 0x1c44 00001c7c: JUMP 00001c7d: JUMPDEST 00001c7e: ISZERO 00001c7f: PUSH2 0x1c84 00001c82: JUMPI 00001c83: JUMP 00001c84: JUMPDEST 00001c85: PUSH1 0x40 00001c87: MLOAD 00001c88: PUSH3 0x461bcd 00001c8c: PUSH1 0xe5 00001c8e: SHL 00001c8f: DUP2 00001c90: MSTORE 00001c91: PUSH1 0x20 00001c93: PUSH1 0x04 00001c95: DUP3 00001c96: ADD 00001c97: MSTORE 00001c98: PUSH1 0x02 00001c9a: PUSH1 0x24 00001c9c: DUP3 00001c9d: ADD 00001c9e: MSTORE 00001c9f: PUSH2 0x7073 00001ca2: PUSH1 0xf0 00001ca4: SHL 00001ca5: PUSH1 0x44 00001ca7: DUP3 00001ca8: ADD 00001ca9: MSTORE 00001caa: PUSH1 0x64 00001cac: SWAP1 00001cad: REVERT 00001cae: JUMPDEST 00001caf: SWAP1 00001cb0: PUSH1 0x1f 00001cb2: DUP3 00001cb3: AND 00001cb4: PUSH2 0x1d21 00001cb7: JUMPI 00001cb8: DUP2 00001cb9: PUSH1 0x05 00001cbb: SHR 00001cbc: PUSH3 0x010000 00001cc0: DUP2 00001cc1: LT 00001cc2: ISZERO 00001cc3: PUSH2 0x1cf7 00001cc6: JUMPI 00001cc7: PUSH1 0x01 00001cc9: DUP1 00001cca: PUSH2 0x1cd4 00001ccd: SWAP3 00001cce: AND 00001ccf: EQ 00001cd0: PUSH2 0x1c7d 00001cd3: JUMP 00001cd4: JUMPDEST 00001cd5: PUSH1 0x01 00001cd7: PUSH1 0x01 00001cd9: PUSH1 0xe0 00001cdb: SHL 00001cdc: SUB 00001cdd: AND 00001cde: PUSH1 0xdb 00001ce0: SWAP2 00001ce1: SWAP1 00001ce2: SWAP2 00001ce3: SHL 00001ce4: PUSH1 0x01 00001ce6: PUSH1 0x01 00001ce8: PUSH1 0xe0 00001cea: SHL 00001ceb: SUB 00001cec: NOT 00001ced: AND 00001cee: OR 00001cef: PUSH1 0x01 00001cf1: PUSH1 0xf8 00001cf3: SHL 00001cf4: OR 00001cf5: SWAP1 00001cf6: JUMP 00001cf7: JUMPDEST 00001cf8: PUSH1 0x40 00001cfa: MLOAD 00001cfb: PUSH3 0x461bcd 00001cff: PUSH1 0xe5 00001d01: SHL 00001d02: DUP2 00001d03: MSTORE 00001d04: PUSH1 0x20 00001d06: PUSH1 0x04 00001d08: DUP3 00001d09: ADD 00001d0a: MSTORE 00001d0b: PUSH1 0x02 00001d0d: PUSH1 0x24 00001d0f: DUP3 00001d10: ADD 00001d11: MSTORE 00001d12: PUSH2 0x0707 00001d15: PUSH1 0xf4 00001d17: SHL 00001d18: PUSH1 0x44 00001d1a: DUP3 00001d1b: ADD 00001d1c: MSTORE 00001d1d: PUSH1 0x64 00001d1f: SWAP1 00001d20: REVERT 00001d21: JUMPDEST 00001d22: PUSH1 0x40 00001d24: MLOAD 00001d25: PUSH3 0x461bcd 00001d29: PUSH1 0xe5 00001d2b: SHL 00001d2c: DUP2 00001d2d: MSTORE 00001d2e: PUSH1 0x20 00001d30: PUSH1 0x04 00001d32: DUP3 00001d33: ADD 00001d34: MSTORE 00001d35: PUSH1 0x02 00001d37: PUSH1 0x24 00001d39: DUP3 00001d3a: ADD 00001d3b: MSTORE 00001d3c: PUSH2 0x7071 00001d3f: PUSH1 0xf0 00001d41: SHL 00001d42: PUSH1 0x44 00001d44: DUP3 00001d45: ADD 00001d46: MSTORE 00001d47: PUSH1 0x64 00001d49: SWAP1 00001d4a: REVERT 00001d4b: JUMPDEST 00001d4c: SWAP2 00001d4d: PUSH1 0x40 00001d4f: MLOAD 00001d50: SWAP1 00001d51: PUSH1 0x20 00001d53: DUP3 00001d54: ADD 00001d55: SWAP3 00001d56: PUSH32 0x2020dba91b30cc0006188af794c2fb30dd8520db7e2c088b7fc7c103c00ca494 00001d77: DUP5 00001d78: MSTORE 00001d79: PUSH1 0x01 00001d7b: DUP1 00001d7c: PUSH1 0xa0 00001d7e: SHL 00001d7f: SUB 00001d80: DUP1 00001d81: SWAP6 00001d82: AND 00001d83: PUSH1 0x40 00001d85: DUP5 00001d86: ADD 00001d87: MSTORE 00001d88: PUSH1 0x00 00001d8a: PUSH1 0x60 00001d8c: DUP5 00001d8d: ADD 00001d8e: MSTORE 00001d8f: PUSH1 0x80 00001d91: DUP4 00001d92: ADD 00001d93: MSTORE 00001d94: PUSH1 0xa0 00001d96: DUP3 00001d97: ADD 00001d98: MSTORE 00001d99: PUSH1 0xa0 00001d9b: DUP2 00001d9c: MSTORE 00001d9d: PUSH2 0x1da5 00001da0: DUP2 00001da1: PUSH2 0x0e88 00001da4: JUMP 00001da5: JUMPDEST 00001da6: MLOAD 00001da7: SWAP1 00001da8: KECCAK256 00001da9: AND 00001daa: SWAP1 00001dab: JUMP 00001dac: INVALID 00001dad: DUP15 00001dae: SWAP5 00001daf: INVALID 00001db0: UNKNOWN(0xD4) 00001db1: TIMESTAMP 00001db2: CODECOPY 00001db3: UNKNOWN(0xEB) 00001db4: UNKNOWN(0x23) 00001db5: EQ 00001db6: UNKNOWN(0xAB) 00001db7: PUSH27 0x406345e6c5a8f0ccedf3b600de3d004e672c33abf4a26469706673 00001dd3: PC 00001dd4: UNKNOWN(0x22) 00001dd5: SLT 00001dd6: KECCAK256 00001dd7: UNKNOWN(0x2F) 00001dd8: CHAINID 00001dd9: UNKNOWN(0x2C) 00001dda: UNKNOWN(0xA6) 00001ddb: UNKNOWN(0xBB) 00001ddc: PUSH14 0x2916d94ed94802fd9edb4d039c72 00001deb: UNKNOWN(0xD4) 00001dec: CLZ 00001ded: DUP7 00001dee: PUSH28
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x11a2ccc1",
"selector": "0x11a2ccc1",
"calldata_variants": [
"0x11a2ccc1",
"0x11a2ccc10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x14490720",
"selector": "0x14490720",
"calldata_variants": [
"0x14490720",
"0x144907200000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x19fa7f62",
"selector": "0x19fa7f62",
"calldata_variants": [
"0x19fa7f62",
"0x19fa7f620000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4bed8212",
"selector": "0x4bed8212",
"calldata_variants": [
"0x4bed8212",
"0x4bed82120000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x66550c4e",
"selector": "0x66550c4e",
"calldata_variants": [
"0x66550c4e",
"0x66550c4e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6dde7209",
"selector": "0x6dde7209",
"calldata_variants": [
"0x6dde7209",
"0x6dde72090000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x823f1d96",
"selector": "0x823f1d96",
"calldata_variants": [
"0x823f1d96",
"0x823f1d960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x933999fb",
"selector": "0x933999fb",
"calldata_variants": [
"0x933999fb",
"0x933999fb0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 2151,
"type": "tx_origin_used"
},
{
"pc": 2385,
"type": "tx_origin_used"
},
{
"pc": 2890,
"type": "tx_origin_used"
},
{
"pc": 2150,
"type": "tx_origin_used"
},
{
"pc": 2384,
"type": "tx_origin_used"
},
{
"pc": 2889,
"type": "tx_origin_used"
}
]
}
|
| high | upgradeability | codex | Initializer callable by anyone enables hostile bridge configuration | 85 | no | — |
viewevidence_json{
"evidence": "initialize is external and only gated by reentrancyGuardInitializer; there is no access control on who can call it.",
"locations": [
"contracts/zksync/l1-contracts/bridge/L1ERC20Bridge.sol:82"
],
"recommendation": "Restrict initialize to a trusted deployer/admin (e.g., onlyOwner/onlyProxyAdmin) or ensure the proxy is deployed with atomic initialization data. Consider using OpenZeppelin\u2019s initializer pattern with an admin check or deploying via a factory that immediately initializes.",
"exploit_scenario": "If the proxy is deployed without immediately calling initialize in the same transaction, an attacker can front\u2011run and call initialize first. They choose their own _governor, _l2TokenBeacon, and L2 bridge bytecode hashes, resulting in an L2 bridge they control. With control of the L2 bridge, they can craft L2->L1 withdrawal messages that pass inclusion proofs and drain ERC20 balances held by the L1 bridge."
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x36e268c6ffd6bc086eb84252875241521d71bb5a9b9cadb92e2b428885ec5829
call_targets:
0x3203e813930bd710043c1d899fe38dd359307352
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x36e268c6ffd6bc086eb84252875241521d71bb5a9b9cadb92e2b428885ec5829",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x3203e813930bd710043c1d899fe38dd359307352"
],
"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": "0x11a2ccc1",
"selector": "0x11a2ccc1",
"calldata_variants": [
"0x11a2ccc1",
"0x11a2ccc10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x14490720",
"selector": "0x14490720",
"calldata_variants": [
"0x14490720",
"0x144907200000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x19fa7f62",
"selector": "0x19fa7f62",
"calldata_variants": [
"0x19fa7f62",
"0x19fa7f620000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4bed8212",
"selector": "0x4bed8212",
"calldata_variants": [
"0x4bed8212",
"0x4bed82120000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x66550c4e",
"selector": "0x66550c4e",
"calldata_variants": [
"0x66550c4e",
"0x66550c4e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6dde7209",
"selector": "0x6dde7209",
"calldata_variants": [
"0x6dde7209",
"0x6dde72090000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x823f1d96",
"selector": "0x823f1d96",
"calldata_variants": [
"0x823f1d96",
"0x823f1d960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x933999fb",
"selector": "0x933999fb",
"calldata_variants": [
"0x933999fb",
"0x933999fb0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1912,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2506,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5137,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 4,
"guards_detected": [
{
"pc": 2151,
"type": "tx_origin_used"
},
{
"pc": 2385,
"type": "tx_origin_used"
},
{
"pc": 2890,
"type": "tx_origin_used"
},
{
"pc": 2150,
"type": "tx_origin_used"
},
{
"pc": 2384,
"type": "tx_origin_used"
},
{
"pc": 2889,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 4
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x36e268c6ffd6bc086eb84252875241521d71bb5a9b9cadb92e2b428885ec5829
call_targets:
0x3203e813930bd710043c1d899fe38dd359307352
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x36e268c6ffd6bc086eb84252875241521d71bb5a9b9cadb92e2b428885ec5829",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x3203e813930bd710043c1d899fe38dd359307352"
],
"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": "0x11a2ccc1",
"selector": "0x11a2ccc1",
"calldata_variants": [
"0x11a2ccc1",
"0x11a2ccc10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x14490720",
"selector": "0x14490720",
"calldata_variants": [
"0x14490720",
"0x144907200000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x19fa7f62",
"selector": "0x19fa7f62",
"calldata_variants": [
"0x19fa7f62",
"0x19fa7f620000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4bed8212",
"selector": "0x4bed8212",
"calldata_variants": [
"0x4bed8212",
"0x4bed82120000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x66550c4e",
"selector": "0x66550c4e",
"calldata_variants": [
"0x66550c4e",
"0x66550c4e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6dde7209",
"selector": "0x6dde7209",
"calldata_variants": [
"0x6dde7209",
"0x6dde72090000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x823f1d96",
"selector": "0x823f1d96",
"calldata_variants": [
"0x823f1d96",
"0x823f1d960000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x933999fb",
"selector": "0x933999fb",
"calldata_variants": [
"0x933999fb",
"0x933999fb0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1912,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2506,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5137,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 4,
"guards_detected": [
{
"pc": 2151,
"type": "tx_origin_used"
},
{
"pc": 2385,
"type": "tx_origin_used"
},
{
"pc": 2890,
"type": "tx_origin_used"
},
{
"pc": 2150,
"type": "tx_origin_used"
},
{
"pc": 2384,
"type": "tx_origin_used"
},
{
"pc": 2889,
"type": "tx_origin_used"
}
]
}
|
| 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": 14
}
|