019be3d6-84ba-708a-b46d-615fcbb7ed59
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 |
|---|---|---|---|---|
| 41107 | artifact.fetch | complete | 1 / 3 | 2 months ago |
| 41108 | proxy.resolve | complete | 1 / 3 | 2 months ago |
| 41109 | tool.cast_disasm | complete | 1 / 3 | 2 months ago |
| 41110 | analysis.bundle | complete | 1 / 3 | 2 months ago |
| 41111 | capability.graph | complete | 1 / 3 | 2 months ago |
| 41112 | detector.run | complete | 1 / 3 | 2 months ago |
| 41113 | validation.fork | complete | 1 / 3 | 2 months ago |
| 41425 | report.consolidate | complete | 1 / 6 | 2 months ago |
| 41426 | 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-l5vlungx)
'forge config --json' running
'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-l5vlungx)
'forge' returned non-zero exit code 1
Compiling 7 files with Solc 0.8.22
stdout: Solc 0.8.22 finished in 21.01ms
Error: Compiler run failed:
stderr: Error (6275): Source "lib/openzeppelin-contracts/contracts/contracts/access/Ownable.sol" not found: File not found. Searched the following locations: "/tmp/slither-l5vlungx".
stderr: ParserError: Source "lib/openzeppelin-contracts/contracts/contracts/access/Ownable.sol" not found: File not found. Searched the following locations: "/tmp/slither-l5vlungx".
stderr: --> src/fees/AugustusFeeVault.sol:5:1:
stderr: |
stderr: 5 | import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stderr:
stderr: Error (6275): Source "lib/openzeppelin-contracts/contracts/contracts/utils/Pausable.sol" not found: File not found. Searched the following locations: "/tmp/slither-l5vlungx".
stderr: ParserError: Source "lib/openzeppelin-contracts/contracts/contracts/utils/Pausable.sol" not found: File not found. Searched the following locations: "/tmp/slither-l5vlungx".
stderr: --> src/fees/AugustusFeeVault.sol:6:1:
stderr: |
stderr: 6 | import { Pausable } from "@openzeppelin/contracts/utils/Pausable.sol";
stderr: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
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-l5vlungx/out/build-info is not a directory.
{"no_findings":true,"summary":"Reviewed first‑party Solidity sources in AUDIT_BUNDLE.txt (AugustusFeeVault and ERC20Utils) and found no exploitable issues in the requested categories within the provided scope.","findings":[]}
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-c_1hly4f
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019be493-e60d-7db1-86eb-f26d51fbca2d
--------
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
thinking
**Reading audit bundle file**
exec
/bin/bash -lc ls in /tmp/codex-c_1hly4f succeeded in 12ms:
AUDIT_BUNDLE.txt
codex-output-schema.json
lib
src
exec
/bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-c_1hly4f succeeded in 15ms:
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: src/fees/AugustusFeeVault.sol
================================================================================
// SPDX-License-Identifier: MIT
pragma solidity 0.8.22;
// Contracts
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
import { Pausable } from "@openzeppelin/contracts/utils/Pausable.sol";
// Interfaces
import { IAugustusFeeVault } from "../interfaces/IAugustusFeeVault.sol";
import { IERC20 } from "@openzeppelin/token/ERC20/IERC20.sol";
// Libraries
import { ERC20Utils } from "../libraries/ERC20Utils.sol";
thinking
**Analyzing reentrancy and access control**
I assessed reentrancy risks, confirming that state updates precede external calls, mitigating typical reentrancy via token or ETH transfers despite gas limits. Access control appears enforced through approved caller checks for fee registration and withdrawals limited to msg.sender's own fees, avoiding unauthorized fund diversion.
thinking
**Confirming no exploitable vulnerabilities**
Detailed review found no exploitable issues despite deflationary and fee-on-transfer token nuances, reentrancy considerations, and access controls. Minor quirks like blocking ETH from EOAs and safeTransfer gas limits are intentional design choices, not vulnerabilities.
codex
{"no_findings":true,"summary":"Reviewed first‑party Solidity sources in AUDIT_BUNDLE.txt (AugustusFeeVault and ERC20Utils) and found no exploitable issues in the requested categories within the provided scope.","findings":[]}
tokens used
12,860
{
"codex": {
"ran_at": "2026-01-22T07:21:43.538210+00:00",
"returncode": 0
},
"project": {
"mode": "source",
"file_count": 7,
"import_count": 6,
"first_party_contracts_count": 3
},
"summary": "Reviewed first\u2011party Solidity sources in AUDIT_BUNDLE.txt (AugustusFeeVault and ERC20Utils) and found no exploitable issues in the requested categories within the provided scope.",
"raw_final": {
"summary": "Reviewed first\u2011party Solidity sources in AUDIT_BUNDLE.txt (AugustusFeeVault and ERC20Utils) and found no exploitable issues in the requested categories within the provided scope.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: ISZERO 0000000a: PUSH2 0x0022 0000000d: JUMPI 0000000e: JUMPDEST 0000000f: CALLDATASIZE 00000010: ISZERO 00000011: PUSH2 0x0018 00000014: JUMPI 00000015: PUSH0 00000016: DUP1 00000017: REVERT 00000018: JUMPDEST 00000019: PUSH2 0x0020 0000001c: PUSH2 0x1056 0000001f: JUMP 00000020: JUMPDEST 00000021: STOP 00000022: JUMPDEST 00000023: PUSH0 00000024: CALLDATALOAD 00000025: PUSH1 0xe0 00000027: SHR 00000028: DUP1 00000029: PUSH4 0x3ea6f511 0000002e: EQ 0000002f: PUSH2 0x0131 00000032: JUMPI 00000033: DUP1 00000034: PUSH4 0x45f32b0b 00000039: EQ 0000003a: PUSH2 0x012c 0000003d: JUMPI 0000003e: DUP1 0000003f: PUSH4 0x5c975abb 00000044: EQ 00000045: PUSH2 0x0127 00000048: JUMPI 00000049: DUP1 0000004a: PUSH4 0x715018a6 0000004f: EQ 00000050: PUSH2 0x0122 00000053: JUMPI 00000054: DUP1 00000055: PUSH4 0x8da5cb5b 0000005a: EQ 0000005b: PUSH2 0x011d 0000005e: JUMPI 0000005f: DUP1 00000060: PUSH4 0x8f79528c 00000065: EQ 00000066: PUSH2 0x0118 00000069: JUMPI 0000006a: DUP1 0000006b: PUSH4 0x9b9ac2cb 00000070: EQ 00000071: PUSH2 0x0113 00000074: JUMPI 00000075: DUP1 00000076: PUSH4 0xae11c7f8 0000007b: EQ 0000007c: PUSH2 0x010e 0000007f: JUMPI 00000080: DUP1 00000081: PUSH4 0xb0a65b17 00000086: EQ 00000087: PUSH2 0x0109 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0xbbedcc40 00000091: EQ 00000092: PUSH2 0x0104 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0xd2ea29c0 0000009c: EQ 0000009d: PUSH2 0x00ff 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xd4fac45d 000000a7: EQ 000000a8: PUSH2 0x00fa 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xe20b52d9 000000b2: EQ 000000b3: PUSH2 0x00f5 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xe537348b 000000bd: EQ 000000be: PUSH2 0x00f0 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xf2fde38b 000000c8: EQ 000000c9: PUSH2 0x00eb 000000cc: JUMPI 000000cd: DUP1 000000ce: PUSH4 0xf89abe8c 000000d3: EQ 000000d4: PUSH2 0x00e6 000000d7: JUMPI 000000d8: PUSH4 0xffcc41ee 000000dd: SUB 000000de: PUSH2 0x000e 000000e1: JUMPI 000000e2: PUSH2 0x0c1d 000000e5: JUMP 000000e6: JUMPDEST 000000e7: PUSH2 0x0bd0 000000ea: JUMP 000000eb: JUMPDEST 000000ec: PUSH2 0x0aee 000000ef: JUMP 000000f0: JUMPDEST 000000f1: PUSH2 0x0a16 000000f4: JUMP 000000f5: JUMPDEST 000000f6: PUSH2 0x09aa 000000f9: JUMP 000000fa: JUMPDEST 000000fb: PUSH2 0x0951 000000fe: JUMP 000000ff: JUMPDEST 00000100: PUSH2 0x0886 00000103: JUMP 00000104: JUMPDEST 00000105: PUSH2 0x0804 00000108: JUMP 00000109: JUMPDEST 0000010a: PUSH2 0x0723 0000010d: JUMP 0000010e: JUMPDEST 0000010f: PUSH2 0x0647 00000112: JUMP 00000113: JUMPDEST 00000114: PUSH2 0x0568 00000117: JUMP 00000118: JUMPDEST 00000119: PUSH2 0x0508 0000011c: JUMP 0000011d: JUMPDEST 0000011e: PUSH2 0x04b8 00000121: JUMP 00000122: JUMPDEST 00000123: PUSH2 0x041e 00000126: JUMP 00000127: JUMPDEST 00000128: PUSH2 0x03dc 0000012b: JUMP 0000012c: JUMPDEST 0000012d: PUSH2 0x02d5 00000130: JUMP 00000131: JUMPDEST 00000132: PUSH2 0x0165 00000135: JUMP 00000136: JUMPDEST 00000137: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000014c: DUP2 0000014d: AND 0000014e: SUB 0000014f: PUSH2 0x0154 00000152: JUMPI 00000153: JUMP 00000154: JUMPDEST 00000155: PUSH0 00000156: DUP1 00000157: REVERT 00000158: JUMPDEST 00000159: CALLDATALOAD 0000015a: SWAP1 0000015b: PUSH2 0x0163 0000015e: DUP3 0000015f: PUSH2 0x0136 00000162: JUMP 00000163: JUMPDEST 00000164: JUMP 00000165: JUMPDEST 00000166: CALLVALUE 00000167: PUSH2 0x0154 0000016a: JUMPI 0000016b: PUSH1 0x20 0000016d: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 0000018e: CALLDATASIZE 0000018f: ADD 00000190: SLT 00000191: PUSH2 0x0154 00000194: JUMPI 00000195: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001aa: PUSH1 0x04 000001ac: CALLDATALOAD 000001ad: PUSH2 0x01b5 000001b0: DUP2 000001b1: PUSH2 0x0136 000001b4: JUMP 000001b5: JUMPDEST 000001b6: AND 000001b7: PUSH0 000001b8: MSTORE 000001b9: PUSH1 0x03 000001bb: PUSH1 0x20 000001bd: MSTORE 000001be: PUSH1 0x20 000001c0: PUSH1 0x40 000001c2: PUSH0 000001c3: KECCAK256 000001c4: SLOAD 000001c5: PUSH1 0x40 000001c7: MLOAD 000001c8: SWAP1 000001c9: DUP2 000001ca: MSTORE 000001cb: RETURN 000001cc: JUMPDEST 000001cd: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000001ee: PUSH0 000001ef: MSTORE 000001f0: PUSH1 0x41 000001f2: PUSH1 0x04 000001f4: MSTORE 000001f5: PUSH1 0x24 000001f7: PUSH0 000001f8: REVERT 000001f9: JUMPDEST 000001fa: PUSH1 0x40 000001fc: MLOAD 000001fd: SWAP1 000001fe: PUSH1 0x60 00000200: DUP3 00000201: ADD 00000202: DUP3 00000203: DUP2 00000204: LT 00000205: PUSH8 0xffffffffffffffff 0000020e: DUP3 0000020f: GT 00000210: OR 00000211: PUSH2 0x0219 00000214: JUMPI 00000215: PUSH1 0x40 00000217: MSTORE 00000218: JUMP 00000219: JUMPDEST 0000021a: PUSH2 0x01cc 0000021d: JUMP 0000021e: JUMPDEST 0000021f: SWAP1 00000220: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000241: PUSH1 0x1f 00000243: PUSH1 0x40 00000245: MLOAD 00000246: SWAP4 00000247: ADD 00000248: AND 00000249: DUP3 0000024a: ADD 0000024b: DUP3 0000024c: DUP2 0000024d: LT 0000024e: PUSH8 0xffffffffffffffff 00000257: DUP3 00000258: GT 00000259: OR 0000025a: PUSH2 0x0219 0000025d: JUMPI 0000025e: PUSH1 0x40 00000260: MSTORE 00000261: JUMP 00000262: JUMPDEST 00000263: PUSH8 0xffffffffffffffff 0000026c: DUP2 0000026d: GT 0000026e: PUSH2 0x0219 00000271: JUMPI 00000272: PUSH1 0x05 00000274: SHL 00000275: PUSH1 0x20 00000277: ADD 00000278: SWAP1 00000279: JUMP 0000027a: JUMPDEST 0000027b: SWAP1 0000027c: DUP1 0000027d: PUSH1 0x1f 0000027f: DUP4 00000280: ADD 00000281: SLT 00000282: ISZERO 00000283: PUSH2 0x0154 00000286: JUMPI 00000287: PUSH1 0x20 00000289: SWAP1 0000028a: DUP3 0000028b: CALLDATALOAD 0000028c: PUSH2 0x029c 0000028f: PUSH2 0x0297 00000292: DUP3 00000293: PUSH2 0x0262 00000296: JUMP 00000297: JUMPDEST 00000298: PUSH2 0x021e 0000029b: JUMP 0000029c: JUMPDEST 0000029d: SWAP4 0000029e: PUSH1 0x20 000002a0: DUP1 000002a1: DUP7 000002a2: DUP5 000002a3: DUP2 000002a4: MSTORE 000002a5: ADD 000002a6: SWAP3 000002a7: PUSH1 0x05 000002a9: SHL 000002aa: DUP3 000002ab: ADD 000002ac: ADD 000002ad: SWAP3 000002ae: DUP4 000002af: GT 000002b0: PUSH2 0x0154 000002b3: JUMPI 000002b4: PUSH1 0x20 000002b6: ADD 000002b7: SWAP1 000002b8: JUMPDEST 000002b9: DUP3 000002ba: DUP3 000002bb: LT 000002bc: PUSH2 0x02c6 000002bf: JUMPI 000002c0: POP 000002c1: POP 000002c2: POP 000002c3: POP 000002c4: SWAP1 000002c5: JUMP 000002c6: JUMPDEST 000002c7: DUP2 000002c8: CALLDATALOAD 000002c9: DUP2 000002ca: MSTORE 000002cb: SWAP1 000002cc: DUP4 000002cd: ADD 000002ce: SWAP1 000002cf: DUP4 000002d0: ADD 000002d1: PUSH2 0x02b8 000002d4: JUMP 000002d5: JUMPDEST 000002d6: CALLVALUE 000002d7: PUSH2 0x0154 000002da: JUMPI 000002db: PUSH1 0x20 000002dd: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 000002fe: SWAP1 000002ff: PUSH1 0x20 00000301: DUP3 00000302: CALLDATASIZE 00000303: ADD 00000304: SLT 00000305: PUSH2 0x0154 00000308: JUMPI 00000309: PUSH1 0x04 0000030b: CALLDATALOAD 0000030c: SWAP2 0000030d: PUSH8 0xffffffffffffffff 00000316: SWAP1 00000317: DUP2 00000318: DUP5 00000319: GT 0000031a: PUSH2 0x0154 0000031d: JUMPI 0000031e: PUSH1 0x60 00000320: SWAP1 00000321: DUP5 00000322: CALLDATASIZE 00000323: SUB 00000324: ADD 00000325: SLT 00000326: PUSH2 0x0154 00000329: JUMPI 0000032a: PUSH2 0x0331 0000032d: PUSH2 0x01f9 00000330: JUMP 00000331: JUMPDEST 00000332: SWAP2 00000333: DUP4 00000334: PUSH1 0x04 00000336: ADD 00000337: CALLDATALOAD 00000338: DUP3 00000339: DUP2 0000033a: GT 0000033b: PUSH2 0x0154 0000033e: JUMPI 0000033f: DUP5 00000340: ADD 00000341: SWAP1 00000342: CALLDATASIZE 00000343: PUSH1 0x23 00000345: DUP4 00000346: ADD 00000347: SLT 00000348: ISZERO 00000349: PUSH2 0x0154 0000034c: JUMPI 0000034d: PUSH1 0x04 0000034f: DUP3 00000350: ADD 00000351: CALLDATALOAD 00000352: SWAP2 00000353: PUSH2 0x035e 00000356: PUSH2 0x0297 00000359: DUP5 0000035a: PUSH2 0x0262 0000035d: JUMP 0000035e: JUMPDEST 0000035f: SWAP3 00000360: PUSH1 0x24 00000362: PUSH1 0x20 00000364: DUP6 00000365: DUP4 00000366: DUP2 00000367: MSTORE 00000368: ADD 00000369: SWAP2 0000036a: PUSH1 0x05 0000036c: SHL 0000036d: DUP4 0000036e: ADD 0000036f: ADD 00000370: SWAP2 00000371: CALLDATASIZE 00000372: DUP4 00000373: GT 00000374: PUSH2 0x0154 00000377: JUMPI 00000378: PUSH1 0x24 0000037a: ADD 0000037b: SWAP1 0000037c: JUMPDEST 0000037d: DUP3 0000037e: DUP3 0000037f: LT 00000380: PUSH2 0x03c3 00000383: JUMPI 00000384: POP 00000385: POP 00000386: POP 00000387: POP 00000388: DUP3 00000389: MSTORE 0000038a: PUSH2 0x0395 0000038d: PUSH1 0x24 0000038f: DUP5 00000390: ADD 00000391: PUSH2 0x0158 00000394: JUMP 00000395: JUMPDEST 00000396: PUSH1 0x20 00000398: DUP4 00000399: ADD 0000039a: MSTORE 0000039b: PUSH1 0x44 0000039d: DUP4 0000039e: ADD 0000039f: CALLDATALOAD 000003a0: SWAP1 000003a1: DUP2 000003a2: GT 000003a3: PUSH2 0x0154 000003a6: JUMPI 000003a7: PUSH2 0x0020 000003aa: SWAP3 000003ab: PUSH1 0x04 000003ad: PUSH2 0x03b9 000003b0: SWAP3 000003b1: CALLDATASIZE 000003b2: SWAP3 000003b3: ADD 000003b4: ADD 000003b5: PUSH2 0x027a 000003b8: JUMP 000003b9: JUMPDEST 000003ba: PUSH1 0x40 000003bc: DUP3 000003bd: ADD 000003be: MSTORE 000003bf: PUSH2 0x0d4a 000003c2: JUMP 000003c3: JUMPDEST 000003c4: DUP4 000003c5: DUP1 000003c6: SWAP2 000003c7: DUP4 000003c8: CALLDATALOAD 000003c9: PUSH2 0x03d1 000003cc: DUP2 000003cd: PUSH2 0x0136 000003d0: JUMP 000003d1: JUMPDEST 000003d2: DUP2 000003d3: MSTORE 000003d4: ADD 000003d5: SWAP2 000003d6: ADD 000003d7: SWAP1 000003d8: PUSH2 0x037c 000003db: JUMP 000003dc: JUMPDEST 000003dd: CALLVALUE 000003de: PUSH2 0x0154 000003e1: JUMPI 000003e2: PUSH0 000003e3: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000404: CALLDATASIZE 00000405: ADD 00000406: SLT 00000407: PUSH2 0x0154 0000040a: JUMPI 0000040b: PUSH1 0x20 0000040d: PUSH1 0xff 0000040f: PUSH0 00000410: SLOAD 00000411: PUSH1 0xa0 00000413: SHR 00000414: AND 00000415: PUSH1 0x40 00000417: MLOAD 00000418: SWAP1 00000419: ISZERO 0000041a: ISZERO 0000041b: DUP2 0000041c: MSTORE 0000041d: RETURN 0000041e: JUMPDEST 0000041f: CALLVALUE 00000420: PUSH2 0x0154 00000423: JUMPI 00000424: PUSH0 00000425: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000446: CALLDATASIZE 00000447: ADD 00000448: SLT 00000449: PUSH2 0x0154 0000044c: JUMPI 0000044d: PUSH2 0x0454 00000450: PUSH2 0x10ed 00000453: JUMP 00000454: JUMPDEST 00000455: PUSH0 00000456: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000046b: DUP2 0000046c: SLOAD 0000046d: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 0000048e: DUP2 0000048f: AND 00000490: DUP4 00000491: SSTORE 00000492: AND 00000493: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 000004b4: DUP3 000004b5: DUP1 000004b6: LOG3 000004b7: STOP 000004b8: JUMPDEST 000004b9: CALLVALUE 000004ba: PUSH2 0x0154 000004bd: JUMPI 000004be: PUSH0 000004bf: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 000004e0: CALLDATASIZE 000004e1: ADD 000004e2: SLT 000004e3: PUSH2 0x0154 000004e6: JUMPI 000004e7: PUSH1 0x20 000004e9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004fe: PUSH0 000004ff: SLOAD 00000500: AND 00000501: PUSH1 0x40 00000503: MLOAD 00000504: SWAP1 00000505: DUP2 00000506: MSTORE 00000507: RETURN 00000508: JUMPDEST 00000509: CALLVALUE 0000050a: PUSH2 0x0154 0000050d: JUMPI 0000050e: PUSH1 0x60 00000510: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000531: CALLDATASIZE 00000532: ADD 00000533: SLT 00000534: PUSH2 0x0154 00000537: JUMPI 00000538: PUSH1 0x20 0000053a: PUSH2 0x055e 0000053d: PUSH1 0x04 0000053f: CALLDATALOAD 00000540: PUSH2 0x0548 00000543: DUP2 00000544: PUSH2 0x0136 00000547: JUMP 00000548: JUMPDEST 00000549: PUSH1 0x44 0000054b: CALLDATALOAD 0000054c: SWAP1 0000054d: PUSH2 0x0555 00000550: DUP3 00000551: PUSH2 0x0136 00000554: JUMP 00000555: JUMPDEST 00000556: PUSH1 0x24 00000558: CALLDATALOAD 00000559: SWAP1 0000055a: PUSH2 0x0eb1 0000055d: JUMP 0000055e: JUMPDEST 0000055f: PUSH1 0x40 00000561: MLOAD 00000562: SWAP1 00000563: ISZERO 00000564: ISZERO 00000565: DUP2 00000566: MSTORE 00000567: RETURN 00000568: JUMPDEST 00000569: CALLVALUE 0000056a: PUSH2 0x0154 0000056d: JUMPI 0000056e: PUSH1 0x40 00000570: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000591: CALLDATASIZE 00000592: ADD 00000593: SLT 00000594: PUSH2 0x0154 00000597: JUMPI 00000598: PUSH1 0x20 0000059a: PUSH2 0x05f8 0000059d: PUSH1 0x04 0000059f: CALLDATALOAD 000005a0: PUSH2 0x05a8 000005a3: DUP2 000005a4: PUSH2 0x0136 000005a7: JUMP 000005a8: JUMPDEST 000005a9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005be: PUSH1 0x24 000005c0: CALLDATALOAD 000005c1: SWAP2 000005c2: PUSH2 0x05ca 000005c5: DUP4 000005c6: PUSH2 0x0136 000005c9: JUMP 000005ca: JUMPDEST 000005cb: AND 000005cc: PUSH0 000005cd: MSTORE 000005ce: PUSH1 0x02 000005d0: DUP4 000005d1: MSTORE 000005d2: PUSH1 0x40 000005d4: PUSH0 000005d5: KECCAK256 000005d6: SWAP1 000005d7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005ec: AND 000005ed: PUSH0 000005ee: MSTORE 000005ef: PUSH1 0x20 000005f1: MSTORE 000005f2: PUSH1 0x40 000005f4: PUSH0 000005f5: KECCAK256 000005f6: SWAP1 000005f7: JUMP 000005f8: JUMPDEST 000005f9: SLOAD 000005fa: PUSH1 0x40 000005fc: MLOAD 000005fd: SWAP1 000005fe: DUP2 000005ff: MSTORE 00000600: RETURN 00000601: JUMPDEST 00000602: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000623: PUSH1 0x40 00000625: SWAP2 00000626: ADD 00000627: SLT 00000628: PUSH2 0x0154 0000062b: JUMPI 0000062c: PUSH1 0x04 0000062e: CALLDATALOAD 0000062f: PUSH2 0x0637 00000632: DUP2 00000633: PUSH2 0x0136 00000636: JUMP 00000637: JUMPDEST 00000638: SWAP1 00000639: PUSH1 0x24 0000063b: CALLDATALOAD 0000063c: PUSH2 0x0644 0000063f: DUP2 00000640: PUSH2 0x0136 00000643: JUMP 00000644: JUMPDEST 00000645: SWAP1 00000646: JUMP 00000647: JUMPDEST 00000648: CALLVALUE 00000649: PUSH2 0x0154 0000064c: JUMPI 0000064d: PUSH1 0x20 0000064f: PUSH2 0x055e 00000652: PUSH2 0x065a 00000655: CALLDATASIZE 00000656: PUSH2 0x0601 00000659: JUMP 0000065a: JUMPDEST 0000065b: SWAP1 0000065c: PUSH2 0x0f0c 0000065f: JUMP 00000660: JUMPDEST 00000661: SWAP2 00000662: DUP2 00000663: PUSH1 0x1f 00000665: DUP5 00000666: ADD 00000667: SLT 00000668: ISZERO 00000669: PUSH2 0x0154 0000066c: JUMPI 0000066d: DUP3 0000066e: CALLDATALOAD 0000066f: SWAP2 00000670: PUSH8 0xffffffffffffffff 00000679: DUP4 0000067a: GT 0000067b: PUSH2 0x0154 0000067e: JUMPI 0000067f: PUSH1 0x20 00000681: DUP1 00000682: DUP6 00000683: ADD 00000684: SWAP5 00000685: DUP5 00000686: PUSH1 0x05 00000688: SHL 00000689: ADD 0000068a: ADD 0000068b: GT 0000068c: PUSH2 0x0154 0000068f: JUMPI 00000690: JUMP 00000691: JUMPDEST 00000692: PUSH1 0x40 00000694: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 000006b5: DUP3 000006b6: ADD 000006b7: SLT 000006b8: PUSH2 0x0154 000006bb: JUMPI 000006bc: PUSH1 0x04 000006be: CALLDATALOAD 000006bf: SWAP1 000006c0: PUSH8 0xffffffffffffffff 000006c9: DUP3 000006ca: GT 000006cb: PUSH2 0x0154 000006ce: JUMPI 000006cf: PUSH2 0x06da 000006d2: SWAP2 000006d3: PUSH1 0x04 000006d5: ADD 000006d6: PUSH2 0x0660 000006d9: JUMP 000006da: JUMPDEST 000006db: SWAP1 000006dc: SWAP2 000006dd: PUSH1 0x24 000006df: CALLDATALOAD 000006e0: PUSH2 0x0644 000006e3: DUP2 000006e4: PUSH2 0x0136 000006e7: JUMP 000006e8: JUMPDEST 000006e9: PUSH1 0x20 000006eb: SWAP1 000006ec: PUSH1 0x20 000006ee: PUSH1 0x40 000006f0: DUP2 000006f1: DUP4 000006f2: ADD 000006f3: SWAP3 000006f4: DUP3 000006f5: DUP2 000006f6: MSTORE 000006f7: DUP6 000006f8: MLOAD 000006f9: DUP1 000006fa: SWAP5 000006fb: MSTORE 000006fc: ADD 000006fd: SWAP4 000006fe: ADD 000006ff: SWAP2 00000700: PUSH0 00000701: JUMPDEST 00000702: DUP3 00000703: DUP2 00000704: LT 00000705: PUSH2 0x070f 00000708: JUMPI 00000709: POP 0000070a: POP 0000070b: POP 0000070c: POP 0000070d: SWAP1 0000070e: JUMP 0000070f: JUMPDEST 00000710: DUP4 00000711: MLOAD 00000712: DUP6 00000713: MSTORE 00000714: SWAP4 00000715: DUP2 00000716: ADD 00000717: SWAP4 00000718: SWAP3 00000719: DUP2 0000071a: ADD 0000071b: SWAP3 0000071c: PUSH1 0x01 0000071e: ADD 0000071f: PUSH2 0x0701 00000722: JUMP 00000723: JUMPDEST 00000724: CALLVALUE 00000725: PUSH2 0x0154 00000728: JUMPI 00000729: PUSH2 0x0731 0000072c: CALLDATASIZE 0000072d: PUSH2 0x0691 00000730: JUMP 00000731: JUMPDEST 00000732: SWAP1 00000733: SWAP2 00000734: PUSH2 0x073f 00000737: PUSH2 0x0297 0000073a: DUP5 0000073b: PUSH2 0x0262 0000073e: JUMP 0000073f: JUMPDEST 00000740: SWAP3 00000741: DUP1 00000742: DUP5 00000743: MSTORE 00000744: PUSH2 0x074c 00000747: DUP2 00000748: PUSH2 0x0262 0000074b: JUMP 0000074c: JUMPDEST 0000074d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 0000076e: PUSH1 0x20 00000770: SWAP2 00000771: ADD 00000772: CALLDATASIZE 00000773: PUSH1 0x20 00000775: DUP8 00000776: ADD 00000777: CALLDATACOPY 00000778: PUSH0 00000779: JUMPDEST 0000077a: DUP3 0000077b: DUP2 0000077c: LT 0000077d: PUSH2 0x0792 00000780: JUMPI 00000781: PUSH1 0x40 00000783: MLOAD 00000784: DUP1 00000785: PUSH2 0x078e 00000788: DUP9 00000789: DUP3 0000078a: PUSH2 0x06e8 0000078d: JUMP 0000078e: JUMPDEST 0000078f: SUB 00000790: SWAP1 00000791: RETURN 00000792: JUMPDEST 00000793: PUSH1 0x01 00000795: SWAP1 00000796: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007ab: DUP7 000007ac: AND 000007ad: PUSH0 000007ae: MSTORE 000007af: PUSH1 0x02 000007b1: DUP4 000007b2: MSTORE 000007b3: PUSH2 0x07f2 000007b6: PUSH1 0x40 000007b8: PUSH0 000007b9: KECCAK256 000007ba: PUSH2 0x07c4 000007bd: DUP4 000007be: DUP8 000007bf: DUP10 000007c0: PUSH2 0x0f63 000007c3: JUMP 000007c4: JUMPDEST 000007c5: CALLDATALOAD 000007c6: SWAP1 000007c7: PUSH2 0x07cf 000007ca: DUP3 000007cb: PUSH2 0x0136 000007ce: JUMP 000007cf: JUMPDEST 000007d0: SWAP1 000007d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007e6: AND 000007e7: PUSH0 000007e8: MSTORE 000007e9: PUSH1 0x20 000007eb: MSTORE 000007ec: PUSH1 0x40 000007ee: PUSH0 000007ef: KECCAK256 000007f0: SWAP1 000007f1: JUMP 000007f2: JUMPDEST 000007f3: SLOAD 000007f4: PUSH2 0x07fd 000007f7: DUP3 000007f8: DUP10 000007f9: PUSH2 0x0e98 000007fc: JUMP 000007fd: JUMPDEST 000007fe: MSTORE 000007ff: ADD 00000800: PUSH2 0x0779 00000803: JUMP 00000804: JUMPDEST 00000805: CALLVALUE 00000806: PUSH2 0x0154 00000809: JUMPI 0000080a: PUSH2 0x0812 0000080d: CALLDATASIZE 0000080e: PUSH2 0x0691 00000811: JUMP 00000812: JUMPDEST 00000813: PUSH2 0x081d 00000816: SWAP3 00000817: SWAP2 00000818: SWAP3 00000819: PUSH2 0x113d 0000081c: JUMP 0000081d: JUMPDEST 0000081e: PUSH0 0000081f: JUMPDEST 00000820: DUP4 00000821: DUP2 00000822: LT 00000823: PUSH2 0x0831 00000826: JUMPI 00000827: PUSH1 0x20 00000829: PUSH1 0x40 0000082b: MLOAD 0000082c: PUSH1 0x01 0000082e: DUP2 0000082f: MSTORE 00000830: RETURN 00000831: JUMPDEST 00000832: PUSH2 0x084f 00000835: DUP3 00000836: PUSH2 0x0840 00000839: DUP4 0000083a: DUP8 0000083b: DUP8 0000083c: PUSH2 0x0f63 0000083f: JUMP 00000840: JUMPDEST 00000841: CALLDATALOAD 00000842: PUSH2 0x084a 00000845: DUP2 00000846: PUSH2 0x0136 00000849: JUMP 0000084a: JUMPDEST 0000084b: PUSH2 0x0f0c 0000084e: JUMP 0000084f: JUMPDEST 00000850: ISZERO 00000851: PUSH2 0x085c 00000854: JUMPI 00000855: PUSH1 0x01 00000857: ADD 00000858: PUSH2 0x081f 0000085b: JUMP 0000085c: JUMPDEST 0000085d: PUSH1 0x04 0000085f: PUSH1 0x40 00000861: MLOAD 00000862: PUSH32 0x3439313b00000000000000000000000000000000000000000000000000000000 00000883: DUP2 00000884: MSTORE 00000885: REVERT 00000886: JUMPDEST 00000887: CALLVALUE 00000888: PUSH2 0x0154 0000088b: JUMPI 0000088c: PUSH1 0x40 0000088e: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 000008af: CALLDATASIZE 000008b0: ADD 000008b1: SLT 000008b2: PUSH2 0x0154 000008b5: JUMPI 000008b6: PUSH1 0x04 000008b8: CALLDATALOAD 000008b9: PUSH2 0x08c1 000008bc: DUP2 000008bd: PUSH2 0x0136 000008c0: JUMP 000008c1: JUMPDEST 000008c2: PUSH1 0x24 000008c4: CALLDATALOAD 000008c5: SWAP1 000008c6: DUP2 000008c7: ISZERO 000008c8: ISZERO 000008c9: DUP1 000008ca: SWAP3 000008cb: SUB 000008cc: PUSH2 0x0154 000008cf: JUMPI 000008d0: PUSH1 0x20 000008d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008e7: PUSH32 0x6e22534cd7ba9ac690c8291d348b7cd994a6753f153ed57cd0a24dd720ae2d04 00000908: SWAP3 00000909: PUSH2 0x0910 0000090c: PUSH2 0x10ed 0000090f: JUMP 00000910: JUMPDEST 00000911: AND 00000912: SWAP3 00000913: DUP4 00000914: PUSH0 00000915: MSTORE 00000916: PUSH1 0x01 00000918: DUP3 00000919: MSTORE 0000091a: PUSH1 0x40 0000091c: PUSH0 0000091d: KECCAK256 0000091e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 0000093f: DUP2 00000940: SLOAD 00000941: AND 00000942: PUSH1 0xff 00000944: DUP4 00000945: AND 00000946: OR 00000947: SWAP1 00000948: SSTORE 00000949: PUSH1 0x40 0000094b: MLOAD 0000094c: SWAP1 0000094d: DUP2 0000094e: MSTORE 0000094f: LOG2 00000950: STOP 00000951: JUMPDEST 00000952: CALLVALUE 00000953: PUSH2 0x0154 00000956: JUMPI 00000957: PUSH1 0x20 00000959: PUSH2 0x05f8 0000095c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000971: PUSH2 0x0979 00000974: CALLDATASIZE 00000975: PUSH2 0x0601 00000978: JUMP 00000979: JUMPDEST 0000097a: SWAP2 0000097b: SWAP1 0000097c: SWAP2 0000097d: AND 0000097e: PUSH0 0000097f: MSTORE 00000980: PUSH1 0x02 00000982: DUP4 00000983: MSTORE 00000984: PUSH1 0x40 00000986: PUSH0 00000987: KECCAK256 00000988: SWAP1 00000989: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000099e: AND 0000099f: PUSH0 000009a0: MSTORE 000009a1: PUSH1 0x20 000009a3: MSTORE 000009a4: PUSH1 0x40 000009a6: PUSH0 000009a7: KECCAK256 000009a8: SWAP1 000009a9: JUMP 000009aa: JUMPDEST 000009ab: CALLVALUE 000009ac: PUSH2 0x0154 000009af: JUMPI 000009b0: PUSH1 0x20 000009b2: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 000009d3: CALLDATASIZE 000009d4: ADD 000009d5: SLT 000009d6: PUSH2 0x0154 000009d9: JUMPI 000009da: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009ef: PUSH1 0x04 000009f1: CALLDATALOAD 000009f2: PUSH2 0x09fa 000009f5: DUP2 000009f6: PUSH2 0x0136 000009f9: JUMP 000009fa: JUMPDEST 000009fb: AND 000009fc: PUSH0 000009fd: MSTORE 000009fe: PUSH1 0x01 00000a00: PUSH1 0x20 00000a02: MSTORE 00000a03: PUSH1 0x20 00000a05: PUSH1 0xff 00000a07: PUSH1 0x40 00000a09: PUSH0 00000a0a: KECCAK256 00000a0b: SLOAD 00000a0c: AND 00000a0d: PUSH1 0x40 00000a0f: MLOAD 00000a10: SWAP1 00000a11: ISZERO 00000a12: ISZERO 00000a13: DUP2 00000a14: MSTORE 00000a15: RETURN 00000a16: JUMPDEST 00000a17: CALLVALUE 00000a18: PUSH2 0x0154 00000a1b: JUMPI 00000a1c: PUSH1 0x20 00000a1e: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000a3f: CALLDATASIZE 00000a40: ADD 00000a41: SLT 00000a42: PUSH2 0x0154 00000a45: JUMPI 00000a46: PUSH1 0x04 00000a48: CALLDATALOAD 00000a49: DUP1 00000a4a: ISZERO 00000a4b: ISZERO 00000a4c: DUP2 00000a4d: SUB 00000a4e: PUSH2 0x0154 00000a51: JUMPI 00000a52: PUSH2 0x0a59 00000a55: PUSH2 0x10ed 00000a58: JUMP 00000a59: JUMPDEST 00000a5a: ISZERO 00000a5b: PUSH2 0x0a66 00000a5e: JUMPI 00000a5f: PUSH2 0x0020 00000a62: PUSH2 0x1316 00000a65: JUMP 00000a66: JUMPDEST 00000a67: PUSH0 00000a68: SLOAD 00000a69: PUSH1 0xff 00000a6b: DUP2 00000a6c: PUSH1 0xa0 00000a6e: SHR 00000a6f: AND 00000a70: ISZERO 00000a71: PUSH2 0x0ac4 00000a74: JUMPI 00000a75: PUSH32 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff 00000a96: AND 00000a97: PUSH0 00000a98: SSTORE 00000a99: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa 00000aba: PUSH1 0x20 00000abc: PUSH1 0x40 00000abe: MLOAD 00000abf: CALLER 00000ac0: DUP2 00000ac1: MSTORE 00000ac2: LOG1 00000ac3: STOP 00000ac4: JUMPDEST 00000ac5: PUSH1 0x04 00000ac7: PUSH1 0x40 00000ac9: MLOAD 00000aca: PUSH32 0x8dfc202b00000000000000000000000000000000000000000000000000000000 00000aeb: DUP2 00000aec: MSTORE 00000aed: REVERT 00000aee: JUMPDEST 00000aef: CALLVALUE 00000af0: PUSH2 0x0154 00000af3: JUMPI 00000af4: PUSH1 0x20 00000af6: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000b17: CALLDATASIZE 00000b18: ADD 00000b19: SLT 00000b1a: PUSH2 0x0154 00000b1d: JUMPI 00000b1e: PUSH1 0x04 00000b20: CALLDATALOAD 00000b21: PUSH2 0x0b29 00000b24: DUP2 00000b25: PUSH2 0x0136 00000b28: JUMP 00000b29: JUMPDEST 00000b2a: PUSH2 0x0b31 00000b2d: PUSH2 0x10ed 00000b30: JUMP 00000b31: JUMPDEST 00000b32: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b47: DUP1 00000b48: SWAP2 00000b49: AND 00000b4a: SWAP1 00000b4b: DUP2 00000b4c: ISZERO 00000b4d: PUSH2 0x0ba0 00000b50: JUMPI 00000b51: PUSH0 00000b52: SLOAD 00000b53: DUP3 00000b54: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00000b75: DUP3 00000b76: AND 00000b77: OR 00000b78: PUSH0 00000b79: SSTORE 00000b7a: AND 00000b7b: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00000b9c: PUSH0 00000b9d: DUP1 00000b9e: LOG3 00000b9f: STOP 00000ba0: JUMPDEST 00000ba1: PUSH1 0x24 00000ba3: PUSH1 0x40 00000ba5: MLOAD 00000ba6: PUSH32 0x1e4fbdf700000000000000000000000000000000000000000000000000000000 00000bc7: DUP2 00000bc8: MSTORE 00000bc9: PUSH0 00000bca: PUSH1 0x04 00000bcc: DUP3 00000bcd: ADD 00000bce: MSTORE 00000bcf: REVERT 00000bd0: JUMPDEST 00000bd1: CALLVALUE 00000bd2: PUSH2 0x0154 00000bd5: JUMPI 00000bd6: PUSH1 0x20 00000bd8: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000bf9: CALLDATASIZE 00000bfa: ADD 00000bfb: SLT 00000bfc: PUSH2 0x0154 00000bff: JUMPI 00000c00: PUSH1 0x20 00000c02: PUSH2 0x0c15 00000c05: PUSH1 0x04 00000c07: CALLDATALOAD 00000c08: PUSH2 0x0c10 00000c0b: DUP2 00000c0c: PUSH2 0x0136 00000c0f: JUMP 00000c10: JUMPDEST 00000c11: PUSH2 0x0fa0 00000c14: JUMP 00000c15: JUMPDEST 00000c16: PUSH1 0x40 00000c18: MLOAD 00000c19: SWAP1 00000c1a: DUP2 00000c1b: MSTORE 00000c1c: RETURN 00000c1d: JUMPDEST 00000c1e: CALLVALUE 00000c1f: PUSH2 0x0154 00000c22: JUMPI 00000c23: PUSH1 0x60 00000c25: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc 00000c46: CALLDATASIZE 00000c47: ADD 00000c48: SLT 00000c49: PUSH2 0x0154 00000c4c: JUMPI 00000c4d: PUSH1 0x04 00000c4f: PUSH8 0xffffffffffffffff 00000c58: DUP2 00000c59: CALLDATALOAD 00000c5a: DUP2 00000c5b: DUP2 00000c5c: GT 00000c5d: PUSH2 0x0154 00000c60: JUMPI 00000c61: PUSH2 0x0c6e 00000c64: SWAP1 00000c65: CALLDATASIZE 00000c66: SWAP1 00000c67: PUSH1 0x04 00000c69: ADD 00000c6a: PUSH2 0x0660 00000c6d: JUMP 00000c6e: JUMPDEST 00000c6f: SWAP2 00000c70: PUSH1 0x24 00000c72: CALLDATALOAD 00000c73: SWAP1 00000c74: DUP2 00000c75: GT 00000c76: PUSH2 0x0154 00000c79: JUMPI 00000c7a: PUSH2 0x0c87 00000c7d: SWAP1 00000c7e: CALLDATASIZE 00000c7f: SWAP1 00000c80: PUSH1 0x04 00000c82: ADD 00000c83: PUSH2 0x0660 00000c86: JUMP 00000c87: JUMPDEST 00000c88: SWAP1 00000c89: PUSH1 0x44 00000c8b: CALLDATALOAD 00000c8c: SWAP1 00000c8d: PUSH2 0x0c95 00000c90: DUP3 00000c91: PUSH2 0x0136 00000c94: JUMP 00000c95: JUMPDEST 00000c96: PUSH2 0x0c9d 00000c99: PUSH2 0x113d 00000c9c: JUMP 00000c9d: JUMPDEST 00000c9e: DUP3 00000c9f: DUP6 00000ca0: SUB 00000ca1: PUSH2 0x0d20 00000ca4: JUMPI 00000ca5: PUSH0 00000ca6: JUMPDEST 00000ca7: DUP6 00000ca8: DUP2 00000ca9: LT 00000caa: PUSH2 0x0cb9 00000cad: JUMPI 00000cae: PUSH1 0x40 00000cb0: MLOAD 00000cb1: PUSH1 0x01 00000cb3: DUP2 00000cb4: MSTORE 00000cb5: PUSH1 0x20 00000cb7: SWAP1 00000cb8: RETURN 00000cb9: JUMPDEST 00000cba: PUSH2 0x0ceb 00000cbd: PUSH2 0x0ce7 00000cc0: DUP5 00000cc1: PUSH2 0x0ccb 00000cc4: DUP5 00000cc5: DUP11 00000cc6: DUP11 00000cc7: PUSH2 0x0f63 00000cca: JUMP 00000ccb: JUMPDEST 00000ccc: CALLDATALOAD 00000ccd: PUSH2 0x0cd5 00000cd0: DUP2 00000cd1: PUSH2 0x0136 00000cd4: JUMP 00000cd5: JUMPDEST 00000cd6: PUSH2 0x0ce0 00000cd9: DUP6 00000cda: DUP10 00000cdb: DUP9 00000cdc: PUSH2 0x0f63 00000cdf: JUMP 00000ce0: JUMPDEST 00000ce1: CALLDATALOAD 00000ce2: SWAP1 00000ce3: PUSH2 0x0eb1 00000ce6: JUMP 00000ce7: JUMPDEST 00000ce8: ISZERO 00000ce9: SWAP1 00000cea: JUMP 00000ceb: JUMPDEST 00000cec: PUSH2 0x0cf7 00000cef: JUMPI 00000cf0: PUSH1 0x01 00000cf2: ADD 00000cf3: PUSH2 0x0ca6 00000cf6: JUMP 00000cf7: JUMPDEST 00000cf8: DUP7 00000cf9: PUSH1 0x40 00000cfb: MLOAD 00000cfc: PUSH32 0x3439313b00000000000000000000000000000000000000000000000000000000 00000d1d: DUP2 00000d1e: MSTORE 00000d1f: REVERT 00000d20: JUMPDEST 00000d21: PUSH1 0x04 00000d23: PUSH1 0x40 00000d25: MLOAD 00000d26: PUSH32 0xc0375efc00000000000000000000000000000000000000000000000000000000 00000d47: DUP2 00000d48: MSTORE 00000d49: REVERT 00000d4a: JUMPDEST 00000d4b: CALLER 00000d4c: PUSH0 00000d4d: MSTORE 00000d4e: PUSH1 0x01 00000d50: SWAP1 00000d51: PUSH1 0x01 00000d53: PUSH1 0x20 00000d55: MSTORE 00000d56: PUSH1 0xff 00000d58: PUSH1 0x40 00000d5a: PUSH0 00000d5b: KECCAK256 00000d5c: SLOAD 00000d5d: AND 00000d5e: ISZERO 00000d5f: PUSH2 0x0e41 00000d62: JUMPI 00000d63: DUP1 00000d64: MLOAD 00000d65: SWAP1 00000d66: PUSH1 0x40 00000d68: PUSH2 0x0d88 00000d6b: PUSH1 0x20 00000d6d: DUP4 00000d6e: ADD 00000d6f: MLOAD 00000d70: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d85: AND 00000d86: SWAP1 00000d87: JUMP 00000d88: JUMPDEST 00000d89: SWAP2 00000d8a: ADD 00000d8b: MLOAD 00000d8c: SWAP1 00000d8d: DUP3 00000d8e: MLOAD 00000d8f: DUP3 00000d90: MLOAD 00000d91: SUB 00000d92: PUSH2 0x0d20 00000d95: JUMPI 00000d96: PUSH0 00000d97: SWAP3 00000d98: DUP5 00000d99: JUMPDEST 00000d9a: PUSH2 0x0da5 00000d9d: JUMPI 00000d9e: JUMPDEST 00000d9f: POP 00000da0: POP 00000da1: POP 00000da2: POP 00000da3: POP 00000da4: JUMP 00000da5: JUMPDEST 00000da6: DUP1 00000da7: MLOAD 00000da8: DUP5 00000da9: LT 00000daa: ISZERO 00000dab: PUSH2 0x0e3c 00000dae: JUMPI 00000daf: DUP5 00000db0: DUP5 00000db1: PUSH2 0x0dbb 00000db4: DUP3 00000db5: SWAP7 00000db6: DUP7 00000db7: PUSH2 0x0e98 00000dba: JUMP 00000dbb: JUMPDEST 00000dbc: MLOAD 00000dbd: ISZERO 00000dbe: ISZERO 00000dbf: DUP1 00000dc0: PUSH2 0x0e11 00000dc3: JUMPI 00000dc4: JUMPDEST 00000dc5: PUSH2 0x0dd0 00000dc8: JUMPI 00000dc9: JUMPDEST 00000dca: ADD 00000dcb: SWAP4 00000dcc: PUSH2 0x0d99 00000dcf: JUMP 00000dd0: JUMPDEST 00000dd1: PUSH2 0x0e0c 00000dd4: PUSH2 0x0dfa 00000dd7: PUSH2 0x0de0 00000dda: DUP4 00000ddb: DUP7 00000ddc: PUSH2 0x0e98 00000ddf: JUMP 00000de0: JUMPDEST 00000de1: MLOAD 00000de2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000df7: AND 00000df8: SWAP1 00000df9: JUMP 00000dfa: JUMPDEST 00000dfb: DUP6 00000dfc: PUSH2 0x0e05 00000dff: DUP5 00000e00: DUP10 00000e01: PUSH2 0x0e98 00000e04: JUMP 00000e05: JUMPDEST 00000e06: MLOAD 00000e07: SWAP2 00000e08: PUSH2 0x105f 00000e0b: JUMP 00000e0c: JUMPDEST 00000e0d: PUSH2 0x0dc9 00000e10: JUMP 00000e11: JUMPDEST 00000e12: POP 00000e13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e28: PUSH2 0x0e34 00000e2b: PUSH2 0x0de0 00000e2e: DUP4 00000e2f: DUP7 00000e30: PUSH2 0x0e98 00000e33: JUMP 00000e34: JUMPDEST 00000e35: AND 00000e36: ISZERO 00000e37: ISZERO 00000e38: PUSH2 0x0dc4 00000e3b: JUMP 00000e3c: JUMPDEST 00000e3d: PUSH2 0x0d9e 00000e40: JUMP 00000e41: JUMPDEST 00000e42: PUSH1 0x04 00000e44: PUSH1 0x40 00000e46: MLOAD 00000e47: PUSH32 0x5c427cd900000000000000000000000000000000000000000000000000000000 00000e68: DUP2 00000e69: MSTORE 00000e6a: REVERT 00000e6b: JUMPDEST 00000e6c: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00000e8d: PUSH0 00000e8e: MSTORE 00000e8f: PUSH1 0x32 00000e91: PUSH1 0x04 00000e93: MSTORE 00000e94: PUSH1 0x24 00000e96: PUSH0 00000e97: REVERT 00000e98: JUMPDEST 00000e99: DUP1 00000e9a: MLOAD 00000e9b: DUP3 00000e9c: LT 00000e9d: ISZERO 00000e9e: PUSH2 0x0eac 00000ea1: JUMPI 00000ea2: PUSH1 0x20 00000ea4: SWAP2 00000ea5: PUSH1 0x05 00000ea7: SHL 00000ea8: ADD 00000ea9: ADD 00000eaa: SWAP1 00000eab: JUMP 00000eac: JUMPDEST 00000ead: PUSH2 0x0e6b 00000eb0: JUMP 00000eb1: JUMPDEST 00000eb2: DUP2 00000eb3: ISZERO 00000eb4: PUSH2 0x0ee2 00000eb7: JUMPI 00000eb8: PUSH2 0x0ecb 00000ebb: PUSH2 0x0edc 00000ebe: SWAP4 00000ebf: PUSH2 0x0ec6 00000ec2: PUSH2 0x113d 00000ec5: JUMP 00000ec6: JUMPDEST 00000ec7: PUSH2 0x1175 00000eca: JUMP 00000ecb: JUMPDEST 00000ecc: SWAP1 00000ecd: PUSH2 0x0ed7 00000ed0: DUP4 00000ed1: CALLER 00000ed2: DUP4 00000ed3: PUSH2 0x1199 00000ed6: JUMP 00000ed7: JUMPDEST 00000ed8: PUSH2 0x1248 00000edb: JUMP 00000edc: JUMPDEST 00000edd: POP 00000ede: PUSH1 0x01 00000ee0: SWAP1 00000ee1: JUMP 00000ee2: JUMPDEST 00000ee3: PUSH1 0x04 00000ee5: PUSH1 0x40 00000ee7: MLOAD 00000ee8: PUSH32 0xdb73cdf000000000000000000000000000000000000000000000000000000000 00000f09: DUP2 00000f0a: MSTORE 00000f0b: REVERT 00000f0c: JUMPDEST 00000f0d: SWAP1 00000f0e: PUSH2 0x0f19 00000f11: SWAP1 00000f12: PUSH2 0x0ec6 00000f15: PUSH2 0x113d 00000f18: JUMP 00000f19: JUMPDEST 00000f1a: CALLER 00000f1b: PUSH0 00000f1c: MSTORE 00000f1d: PUSH1 0x02 00000f1f: PUSH1 0x20 00000f21: MSTORE 00000f22: PUSH2 0x0f4c 00000f25: DUP3 00000f26: PUSH1 0x40 00000f28: PUSH0 00000f29: KECCAK256 00000f2a: SWAP1 00000f2b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f40: AND 00000f41: PUSH0 00000f42: MSTORE 00000f43: PUSH1 0x20 00000f45: MSTORE 00000f46: PUSH1 0x40 00000f48: PUSH0 00000f49: KECCAK256 00000f4a: SWAP1 00000f4b: JUMP 00000f4c: JUMPDEST 00000f4d: SLOAD 00000f4e: SWAP1 00000f4f: DUP2 00000f50: ISZERO 00000f51: PUSH2 0x0ee2 00000f54: JUMPI 00000f55: PUSH2 0x0edc 00000f58: SWAP3 00000f59: PUSH2 0x0ed7 00000f5c: DUP4 00000f5d: CALLER 00000f5e: DUP4 00000f5f: PUSH2 0x1199 00000f62: JUMP 00000f63: JUMPDEST 00000f64: SWAP2 00000f65: SWAP1 00000f66: DUP2 00000f67: LT 00000f68: ISZERO 00000f69: PUSH2 0x0eac 00000f6c: JUMPI 00000f6d: PUSH1 0x05 00000f6f: SHL 00000f70: ADD 00000f71: SWAP1 00000f72: JUMP 00000f73: JUMPDEST 00000f74: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00000f95: PUSH0 00000f96: MSTORE 00000f97: PUSH1 0x11 00000f99: PUSH1 0x04 00000f9b: MSTORE 00000f9c: PUSH1 0x24 00000f9e: PUSH0 00000f9f: REVERT 00000fa0: JUMPDEST 00000fa1: SWAP1 00000fa2: PUSH0 00000fa3: SWAP2 00000fa4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fb9: DUP2 00000fba: AND 00000fbb: PUSH0 00000fbc: MSTORE 00000fbd: PUSH1 0x03 00000fbf: PUSH1 0x20 00000fc1: MSTORE 00000fc2: PUSH1 0x40 00000fc4: PUSH0 00000fc5: KECCAK256 00000fc6: SLOAD 00000fc7: PUSH0 00000fc8: SWAP2 00000fc9: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee 00000fde: DUP2 00000fdf: EQ 00000fe0: PUSH1 0x01 00000fe2: EQ 00000fe3: PUSH2 0x104d 00000fe6: JUMPI 00000fe7: PUSH1 0x20 00000fe9: PUSH1 0x24 00000feb: SWAP2 00000fec: PUSH1 0x40 00000fee: MLOAD 00000fef: SWAP3 00000ff0: DUP4 00000ff1: DUP1 00000ff2: SWAP3 00000ff3: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 00001014: DUP3 00001015: MSTORE 00001016: ADDRESS 00001017: PUSH1 0x04 00001019: DUP4 0000101a: ADD 0000101b: MSTORE 0000101c: GAS 0000101d: STATICCALL 0000101e: PUSH2 0x1044 00001021: JUMPI 00001022: JUMPDEST 00001023: POP 00001024: JUMPDEST 00001025: DUP1 00001026: DUP3 00001027: GT 00001028: PUSH2 0x102f 0000102b: JUMPI 0000102c: POP 0000102d: POP 0000102e: JUMP 0000102f: JUMPDEST 00001030: SWAP1 00001031: DUP1 00001032: SWAP3 00001033: SWAP4 00001034: POP 00001035: SUB 00001036: SWAP1 00001037: DUP2 00001038: GT 00001039: PUSH2 0x103f 0000103c: JUMPI 0000103d: SWAP1 0000103e: JUMP 0000103f: JUMPDEST 00001040: PUSH2 0x0f73 00001043: JUMP 00001044: JUMPDEST 00001045: MLOAD 00001046: SWAP2 00001047: POP 00001048: PUSH0 00001049: PUSH2 0x1022 0000104c: JUMP 0000104d: JUMPDEST 0000104e: POP 0000104f: SELFBALANCE 00001050: SWAP2 00001051: POP 00001052: PUSH2 0x1024 00001055: JUMP 00001056: JUMPDEST 00001057: CALLER 00001058: EXTCODESIZE 00001059: ISZERO 0000105a: PUSH2 0x0154 0000105d: JUMPI 0000105e: JUMP 0000105f: JUMPDEST 00001060: SWAP1 00001061: PUSH2 0x1069 00001064: DUP2 00001065: PUSH2 0x0fa0 00001068: JUMP 00001069: JUMPDEST 0000106a: DUP1 0000106b: DUP5 0000106c: GT 0000106d: PUSH2 0x10e5 00001070: JUMPI 00001071: JUMPDEST 00001072: POP 00001073: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001088: DUP1 00001089: SWAP3 0000108a: AND 0000108b: PUSH0 0000108c: MSTORE 0000108d: PUSH1 0x02 0000108f: PUSH1 0x20 00001091: MSTORE 00001092: PUSH2 0x10bc 00001095: DUP2 00001096: PUSH1 0x40 00001098: PUSH0 00001099: KECCAK256 0000109a: SWAP1 0000109b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010b0: AND 000010b1: PUSH0 000010b2: MSTORE 000010b3: PUSH1 0x20 000010b5: MSTORE 000010b6: PUSH1 0x40 000010b8: PUSH0 000010b9: KECCAK256 000010ba: SWAP1 000010bb: JUMP 000010bc: JUMPDEST 000010bd: DUP1 000010be: SLOAD 000010bf: SWAP1 000010c0: DUP5 000010c1: DUP3 000010c2: ADD 000010c3: DUP1 000010c4: SWAP3 000010c5: GT 000010c6: PUSH2 0x103f 000010c9: JUMPI 000010ca: SSTORE 000010cb: AND 000010cc: PUSH0 000010cd: MSTORE 000010ce: PUSH1 0x03 000010d0: PUSH1 0x20 000010d2: MSTORE 000010d3: PUSH1 0x40 000010d5: PUSH0 000010d6: KECCAK256 000010d7: DUP1 000010d8: SLOAD 000010d9: SWAP2 000010da: DUP3 000010db: ADD 000010dc: DUP1 000010dd: SWAP3 000010de: GT 000010df: PUSH2 0x103f 000010e2: JUMPI 000010e3: SSTORE 000010e4: JUMP 000010e5: JUMPDEST 000010e6: SWAP3 000010e7: POP 000010e8: PUSH0 000010e9: PUSH2 0x1071 000010ec: JUMP 000010ed: JUMPDEST 000010ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001103: PUSH0 00001104: SLOAD 00001105: AND 00001106: CALLER 00001107: SUB 00001108: PUSH2 0x110d 0000110b: JUMPI 0000110c: JUMP 0000110d: JUMPDEST 0000110e: PUSH1 0x24 00001110: PUSH1 0x40 00001112: MLOAD 00001113: PUSH32 0x118cdaa700000000000000000000000000000000000000000000000000000000 00001134: DUP2 00001135: MSTORE 00001136: CALLER 00001137: PUSH1 0x04 00001139: DUP3 0000113a: ADD 0000113b: MSTORE 0000113c: REVERT 0000113d: JUMPDEST 0000113e: PUSH1 0xff 00001140: PUSH0 00001141: SLOAD 00001142: PUSH1 0xa0 00001144: SHR 00001145: AND 00001146: PUSH2 0x114b 00001149: JUMPI 0000114a: JUMP 0000114b: JUMPDEST 0000114c: PUSH1 0x04 0000114e: PUSH1 0x40 00001150: MLOAD 00001151: PUSH32 0xd93c066500000000000000000000000000000000000000000000000000000000 00001172: DUP2 00001173: MSTORE 00001174: REVERT 00001175: JUMPDEST 00001176: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000118b: DUP2 0000118c: AND 0000118d: ISZERO 0000118e: PUSH2 0x1194 00001191: JUMPI 00001192: SWAP1 00001193: JUMP 00001194: JUMPDEST 00001195: POP 00001196: CALLER 00001197: SWAP1 00001198: JUMP 00001199: JUMPDEST 0000119a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011af: DUP1 000011b0: SWAP3 000011b1: AND 000011b2: SWAP2 000011b3: DUP3 000011b4: PUSH0 000011b5: MSTORE 000011b6: PUSH1 0x02 000011b8: PUSH1 0x20 000011ba: MSTORE 000011bb: PUSH2 0x11e5 000011be: DUP3 000011bf: PUSH1 0x40 000011c1: PUSH0 000011c2: KECCAK256 000011c3: SWAP1 000011c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011d9: AND 000011da: PUSH0 000011db: MSTORE 000011dc: PUSH1 0x20 000011de: MSTORE 000011df: PUSH1 0x40 000011e1: PUSH0 000011e2: KECCAK256 000011e3: SWAP1 000011e4: JUMP 000011e5: JUMPDEST 000011e6: SLOAD 000011e7: DUP5 000011e8: GT 000011e9: PUSH2 0x0ee2 000011ec: JUMPI 000011ed: DUP2 000011ee: AND 000011ef: PUSH0 000011f0: MSTORE 000011f1: PUSH1 0x03 000011f3: PUSH1 0x20 000011f5: MSTORE 000011f6: PUSH1 0x40 000011f8: PUSH0 000011f9: KECCAK256 000011fa: SWAP2 000011fb: DUP3 000011fc: SLOAD 000011fd: DUP5 000011fe: DUP2 000011ff: SUB 00001200: SWAP1 00001201: DUP2 00001202: GT 00001203: PUSH2 0x103f 00001206: JUMPI 00001207: PUSH2 0x1239 0000120a: SWAP4 0000120b: SSTORE 0000120c: PUSH0 0000120d: MSTORE 0000120e: PUSH1 0x02 00001210: PUSH1 0x20 00001212: MSTORE 00001213: PUSH1 0x40 00001215: PUSH0 00001216: KECCAK256 00001217: SWAP1 00001218: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000122d: AND 0000122e: PUSH0 0000122f: MSTORE 00001230: PUSH1 0x20 00001232: MSTORE 00001233: PUSH1 0x40 00001235: PUSH0 00001236: KECCAK256 00001237: SWAP1 00001238: JUMP 00001239: JUMPDEST 0000123a: DUP1 0000123b: SLOAD 0000123c: SWAP2 0000123d: DUP3 0000123e: SUB 0000123f: SWAP2 00001240: DUP3 00001241: GT 00001242: PUSH2 0x103f 00001245: JUMPI 00001246: SSTORE 00001247: JUMP 00001248: JUMPDEST 00001249: SWAP3 0000124a: SWAP2 0000124b: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee 00001260: DUP5 00001261: EQ 00001262: PUSH1 0x01 00001264: EQ 00001265: PUSH2 0x1302 00001268: JUMPI 00001269: PUSH1 0x44 0000126b: PUSH1 0x20 0000126d: SWAP3 0000126e: PUSH0 0000126f: SWAP3 00001270: PUSH1 0x40 00001272: MLOAD 00001273: SWAP2 00001274: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 00001295: DUP4 00001296: MSTORE 00001297: PUSH1 0x04 00001299: DUP4 0000129a: ADD 0000129b: MSTORE 0000129c: PUSH1 0x24 0000129e: DUP3 0000129f: ADD 000012a0: MSTORE 000012a1: DUP3 000012a2: DUP7 000012a3: GAS 000012a4: CALL 000012a5: SWAP2 000012a6: DUP3 000012a7: PUSH2 0x12dd 000012aa: JUMPI 000012ab: JUMPDEST 000012ac: POP 000012ad: JUMPDEST 000012ae: DUP2 000012af: ISZERO 000012b0: PUSH2 0x12b5 000012b3: JUMPI 000012b4: JUMP 000012b5: JUMPDEST 000012b6: PUSH32 0x90b8ec1800000000000000000000000000000000000000000000000000000000 000012d7: PUSH0 000012d8: MSTORE 000012d9: PUSH1 0x04 000012db: PUSH0 000012dc: REVERT 000012dd: JUMPDEST 000012de: SWAP1 000012df: SWAP2 000012e0: POP 000012e1: RETURNDATASIZE 000012e2: ISZERO 000012e3: PUSH2 0x12f9 000012e6: JUMPI 000012e7: POP 000012e8: PUSH1 0x01 000012ea: PUSH0 000012eb: MLOAD 000012ec: EQ 000012ed: PUSH1 0x1f 000012ef: RETURNDATASIZE 000012f0: GT 000012f1: AND 000012f2: SWAP1 000012f3: JUMPDEST 000012f4: PUSH0 000012f5: PUSH2 0x12ab 000012f8: JUMP 000012f9: JUMPDEST 000012fa: EXTCODESIZE 000012fb: ISZERO 000012fc: ISZERO 000012fd: SWAP1 000012fe: PUSH2 0x12f3 00001301: JUMP 00001302: JUMPDEST 00001303: PUSH0 00001304: DUP1 00001305: SWAP4 00001306: SWAP5 00001307: POP 00001308: DUP1 00001309: SWAP3 0000130a: SWAP2 0000130b: DUP2 0000130c: SWAP3 0000130d: PUSH2 0x2710 00001310: CALL 00001311: SWAP1 00001312: PUSH2 0x12ad 00001315: JUMP 00001316: JUMPDEST 00001317: PUSH2 0x131e 0000131a: PUSH2 0x113d 0000131d: JUMP 0000131e: JUMPDEST 0000131f: PUSH21 0x010000000000000000000000000000000000000000 00001335: PUSH32 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff 00001356: PUSH0 00001357: SLOAD 00001358: AND 00001359: OR 0000135a: PUSH0 0000135b: SSTORE 0000135c: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258 0000137d: PUSH1 0x20 0000137f: PUSH1 0x40 00001381: MLOAD 00001382: CALLER 00001383: DUP2 00001384: MSTORE 00001385: LOG1 00001386: JUMP 00001387: INVALID 00001388: LOG1 00001389: PUSH5 0x736f6c6343 0000138f: STOP 00001390: ADDMOD 00001391: AND 00001392: STOP 00001393: EXP
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0xd008c7e7a93957ae1179e43fe2e67347b3d15cbfa4711a6e94faf7e43ca65108
call_targets:
0x00700052c0608f670705380a4900e0a8080010cc
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xd008c7e7a93957ae1179e43fe2e67347b3d15cbfa4711a6e94faf7e43ca65108",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x00700052c0608f670705380a4900e0a8080010cc"
],
"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": "0x3ea6f511",
"selector": "0x3ea6f511",
"calldata_variants": [
"0x3ea6f511",
"0x3ea6f5110000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x45f32b0b",
"selector": "0x45f32b0b",
"calldata_variants": [
"0x45f32b0b",
"0x45f32b0b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x5c975abb",
"selector": "0x5c975abb",
"calldata_variants": [
"0x5c975abb",
"0x5c975abb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x715018a6",
"selector": "0x715018a6",
"calldata_variants": [
"0x715018a6",
"0x715018a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8f79528c",
"selector": "0x8f79528c",
"calldata_variants": [
"0x8f79528c",
"0x8f79528c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9b9ac2cb",
"selector": "0x9b9ac2cb",
"calldata_variants": [
"0x9b9ac2cb",
"0x9b9ac2cb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xae11c7f8",
"selector": "0xae11c7f8",
"calldata_variants": [
"0xae11c7f8",
"0xae11c7f80000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4772,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4880,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [],
"untrusted_call_count": 2
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0xd008c7e7a93957ae1179e43fe2e67347b3d15cbfa4711a6e94faf7e43ca65108
call_targets:
0x00700052c0608f670705380a4900e0a8080010cc
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xd008c7e7a93957ae1179e43fe2e67347b3d15cbfa4711a6e94faf7e43ca65108",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x00700052c0608f670705380a4900e0a8080010cc"
],
"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": "0x3ea6f511",
"selector": "0x3ea6f511",
"calldata_variants": [
"0x3ea6f511",
"0x3ea6f5110000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x45f32b0b",
"selector": "0x45f32b0b",
"calldata_variants": [
"0x45f32b0b",
"0x45f32b0b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x5c975abb",
"selector": "0x5c975abb",
"calldata_variants": [
"0x5c975abb",
"0x5c975abb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x715018a6",
"selector": "0x715018a6",
"calldata_variants": [
"0x715018a6",
"0x715018a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8f79528c",
"selector": "0x8f79528c",
"calldata_variants": [
"0x8f79528c",
"0x8f79528c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9b9ac2cb",
"selector": "0x9b9ac2cb",
"calldata_variants": [
"0x9b9ac2cb",
"0x9b9ac2cb0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xae11c7f8",
"selector": "0xae11c7f8",
"calldata_variants": [
"0xae11c7f8",
"0xae11c7f80000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4772,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 4880,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|