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

Analysis Run

bda9f9dc-1008-4ba4-9734-24de3e36a576

complete
Chain ID
1
Address
Block Number
Created
Mon, Dec 29, 2025 11:57 PM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
ETH value transfer possible
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
30622 report.consolidate complete 1 / 1 3 months ago
74728 artifact.fetch complete 1 / 3 1 week ago
74729 tool.cast_disasm complete 1 / 3 1 week ago
74730 analysis.bundle complete 1 / 3 1 week ago
74731 capability.graph complete 1 / 3 1 week ago
74732 detector.run complete 1 / 3 1 week ago
74733 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
1
No findings?
no
Summary
Found 1 medium-severity issue: unchecked ERC20 return values can cause silent failures and potential loss on redeem.
View stderr
[codex:1154073] OpenAI Codex v0.77.0 (research preview)
[codex:1154073] --------
[codex:1154073] workdir: /tmp/codex-multi-e8hvso6b
[codex:1154073] model: gpt-5.2-codex
[codex:1154073] provider: openai
[codex:1154073] approval: never
[codex:1154073] sandbox: read-only
[codex:1154073] reasoning effort: xhigh
[codex:1154073] reasoning summaries: auto
[codex:1154073] session id: 019b6c89-4672-70a0-939f-ebea1b2fa6c1
[codex:1154073] --------
[codex:1154073] user
[codex:1154073] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1154073] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1154073] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1154073] 
[codex:1154073] Scope rules:
[codex:1154073] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1154073] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1154073] 
[codex:1154073] Output MUST be valid JSON matching the provided schema.
[codex:1154073] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1154073] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1154073] 
[codex:1154073] Output constraints (IMPORTANT):
[codex:1154073] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1154073] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1154073] mcp startup: no servers
[codex:1154073] 
[codex:1154073] thinking
[codex:1154073] **Reading AUDIT_BUNDLE.txt instructions**
[codex:1154073] exec
[codex:1154073] /bin/bash -lc ls in /tmp/codex-multi-e8hvso6b succeeded in 5ms:
[codex:1154073] AUDIT_BUNDLE.txt
[codex:1154073] codex-output-schema.json
[codex:1154073] contracts
[codex:1154073] exec
[codex:1154073] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-e8hvso6b succeeded in 6ms:
[codex:1154073] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1154073] 
[codex:1154073] ================================================================================
[codex:1154073] FILE: contracts/lib/openzeppelin-contracts/contracts/access/AccessControl.sol
[codex:1154073] ================================================================================
[codex:1154073] // SPDX-License-Identifier: MIT
[codex:1154073] // OpenZeppelin Contracts (last updated v4.8.0) (access/AccessControl.sol)
[codex:1154073] 
[codex:1154073] pragma solidity ^0.8.0;
[codex:1154073] 
[codex:1154073] import "./IAccessControl.sol";
[codex:1154073] import "../utils/Context.sol";
[codex:1154073] import "../utils/Strings.sol";
[codex:1154073] import "../utils/introspection/ERC165.sol";
[codex:1154073] 
[codex:1154073] /**
[codex:1154073]  * @dev Contract module that allows children to implement role-based access
[codex:1154073]  * control mechanisms. This is a lightweight version that doesn't allow enumerating role
[codex:1154073]  * members except through off-chain means by accessing the contract event logs. Some
[codex:1154073]  * applications may benefit from on-chain enumerability, for those cases see
[codex:1154073] 
[codex:1154073] thinking
[codex:1154073] **Evaluating PegStabilityModule vulnerabilities**
[codex:1154073] 
[codex:1154073] I'm analyzing PegStabilityModule.sol focusing on access control, unchecked ERC20 return values, reentrancy risks, and potential decimal and oracle price handling issues. I'm prioritizing significant problems like unchecked token transfer returns during allocate, withdraw, and redeem, and possible accounting mismatches due to fee-on-transfer tokens or decimals assumptions. I'll also prepare a JSON report summarizing findings with severity and evidence lines.
[codex:1154073] exec
[codex:1154073] /bin/bash -lc 'nl -ba contracts/src/PegStabilityModule.sol' in /tmp/codex-multi-e8hvso6b succeeded in 5ms:
[codex:1154073]      1	// SPDX-License-Identifier: MIT
[codex:1154073]      2	
[codex:1154073]      3	pragma solidity ^0.8.24;
[codex:1154073]      4	
[codex:1154073]      5	import {AccessControl} from "openzeppelin-contracts/contracts/access/AccessControl.sol";
[codex:1154073]      6	
[codex:1154073]      7	import {IPegStabilityModule} from "src/interfaces/IPegStabilityModule.sol";
[codex:1154073]      8	
[codex:1154073]      9	import {Pausable} from "openzeppelin-contracts/contracts/security/Pausable.sol";
[codex:1154073]     10	
[codex:1154073]     11	import {IERC20} from "openzeppelin-contracts/contracts/token/ERC20/IERC20.sol";
[codex:1154073]     12	import {IERC20Metadata} from "openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol";
[codex:1154073]     13	
[codex:1154073]     14	import {IToken} from "src/interfaces/IToken.sol";
[codex:1154073]     15	import {IOracle} from "src/interfaces/IOracle.sol";
[codex:1154073]     16	
[codex:1154073]     17	contract PegStabilityModule is AccessControl, Pausable, IPegStabilityModule {
[codex:1154073]     18	    bytes32 public constant MANAGER =
[codex:1154073]     19	        keccak256(abi.encode("peg.stability.module.manager"));
[codex:1154073]     20	
[codex:1154073] 
[codex:1154073] 
[codex:1154073] thinking
[codex:1154073] **Summarizing audit findings and issues**
[codex:1154073] 
[codex:1154073] I'm gathering key security and design issues: chiefly unchecked ERC20 return values risking silent failures and potential fund loss in redeem, plus oracle and decimal mismatches causing mispricing or misleading risk metrics. These findings focus on vulnerabilities and configuration risks, balancing severity with practical exploit scenarios. I'll prepare structured details next.
[codex:1154073] thinking
[codex:1154073] **Detailing audit considerations and finalizing report**
[codex:1154073] 
[codex:1154073] I'm weighing subtle issues like event misreporting due to parameter use, decimal scaling assumptions, and oracle validation gaps, but focusing on the main exploitable finding: unchecked ERC20 return values that risk silent failures and token loss. I'll prepare the final structured JSON output with clear evidence and recommendations based on these insights.
[codex:1154073] exec
[codex:1154073] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-e8hvso6b succeeded in 6ms:
[codex:1154073] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:1154073] 
[codex:1154073] thinking
[codex:1154073] **Preparing final issue JSON**
[codex:1154073] codex
[codex:1154073] {"no_findings":false,"summary":"Found 1 medium-severity issue: unchecked ERC20 return values can cause silent failures and potential loss on redeem.","findings":[{"severity":"medium","category":"other","title":"Unchecked ERC20 return values allow silent failures and loss on redeem","exploit_scenario":"If the underlying token returns false instead of reverting on failed transfers (or is malicious), `redeem` burns RUSD and then `underlying.transfer` can fail without reverting, leaving the user with burned RUSD and no underlying. Similar unchecked calls in `allocate`, `withdraw`, and `mint` can emit events and continue even when transfers fail, leading to inconsistent accounting and misleading logs.","recommendation":"Use OpenZeppelin `SafeERC20` (safeTransfer/safeTransferFrom) or explicitly require the boolean return value to be true. Ensure failures revert so burns and events are rolled back.","evidence":"ERC20 transfer/transferFrom return values are ignored in allocate/withdraw/mint/redeem.","locations":["contracts/src/PegStabilityModule.sol:55","contracts/src/PegStabilityModule.sol:63","contracts/src/PegStabilityModule.sol:85","contracts/src/PegStabilityModule.sol:112"]}]}
[codex:1154073] tokens used
[codex:1154073] 32,563
[codex:1154073] {"no_findings":false,"summary":"Found 1 medium-severity issue: unchecked ERC20 return values can cause silent failures and potential loss on redeem.","findings":[{"severity":"medium","category":"other","title":"Unchecked ERC20 return values allow silent failures and loss on redeem","exploit_scenario":"If the underlying token returns false instead of reverting on failed transfers (or is malicious), `redeem` burns RUSD and then `underlying.transfer` can fail without reverting, leaving the user with burned RUSD and no underlying. Similar unchecked calls in `allocate`, `withdraw`, and `mint` can emit events and continue even when transfers fail, leading to inconsistent accounting and misleading logs.","recommendation":"Use OpenZeppelin `SafeERC20` (safeTransfer/safeTransferFrom) or explicitly require the boolean return value to be true. Ensure failures revert so burns and events are rolled back.","evidence":"ERC20 transfer/transferFrom return values are ignored in allocate/withdraw/mint/redeem.","locations":["contracts/src/PegStabilityModule.sol:55","contracts/src/PegStabilityModule.sol:63","contracts/src/PegStabilityModule.sol:85","contracts/src/PegStabilityModule.sol:112"]}]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-29T23:57:53.330328+00:00",
        "returncode": 0
    },
    "summary": "Found 1 medium-severity issue: unchecked ERC20 return values can cause silent failures and potential loss on redeem.",
    "raw_final": {
        "summary": "Found 1 medium-severity issue: unchecked ERC20 return values can cause silent failures and potential loss on redeem.",
        "findings": [
            {
                "title": "Unchecked ERC20 return values allow silent failures and loss on redeem",
                "category": "other",
                "evidence": "ERC20 transfer/transferFrom return values are ignored in allocate/withdraw/mint/redeem.",
                "severity": "medium",
                "locations": [
                    "contracts/src/PegStabilityModule.sol:55",
                    "contracts/src/PegStabilityModule.sol:63",
                    "contracts/src/PegStabilityModule.sol:85",
                    "contracts/src/PegStabilityModule.sol:112"
                ],
                "recommendation": "Use OpenZeppelin `SafeERC20` (safeTransfer/safeTransferFrom) or explicitly require the boolean return value to be true. Ensure failures revert so burns and events are rolled back.",
                "exploit_scenario": "If the underlying token returns false instead of reverting on failed transfers (or is malicious), `redeem` burns RUSD and then `underlying.transfer` can fail without reverting, leaving the user with burned RUSD and no underlying. Similar unchecked calls in `allocate`, `withdraw`, and `mint` can emit events and continue even when transfers fail, leading to inconsistent accounting and misleading logs."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
1
CALL-family (heavy)
10
EXT*/BALANCE
3
Total opcodes
3516
Flags
create_opcodes_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLVALUE
00000006: DUP1
00000007: ISZERO
00000008: PUSH2 0x0010
0000000b: JUMPI
0000000c: PUSH1 0x00
0000000e: DUP1
0000000f: REVERT
00000010: JUMPDEST
00000011: POP
00000012: PUSH1 0x04
00000014: CALLDATASIZE
00000015: LT
00000016: PUSH2 0x01e5
00000019: JUMPI
0000001a: PUSH1 0x00
0000001c: CALLDATALOAD
0000001d: PUSH1 0xe0
0000001f: SHR
00000020: DUP1
00000021: PUSH4 0x8456cb59
00000026: GT
00000027: PUSH2 0x010f
0000002a: JUMPI
0000002b: DUP1
0000002c: PUSH4 0xd547741f
00000031: GT
00000032: PUSH2 0x00a2
00000035: JUMPI
00000036: DUP1
00000037: PUSH4 0xe5118d1a
0000003c: GT
0000003d: PUSH2 0x0071
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0xe5118d1a
00000047: EQ
00000048: PUSH2 0x0414
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0xe68eb989
00000052: EQ
00000053: PUSH2 0x0427
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0xee0ded62
0000005d: EQ
0000005e: PUSH2 0x0430
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0xee0fc121
00000068: EQ
00000069: PUSH2 0x0443
0000006c: JUMPI
0000006d: PUSH1 0x00
0000006f: DUP1
00000070: REVERT
00000071: JUMPDEST
00000072: DUP1
00000073: PUSH4 0xd547741f
00000078: EQ
00000079: PUSH2 0x03db
0000007c: JUMPI
0000007d: DUP1
0000007e: PUSH4 0xd82933ee
00000083: EQ
00000084: PUSH2 0x029f
00000087: JUMPI
00000088: DUP1
00000089: PUSH4 0xda842cb7
0000008e: EQ
0000008f: PUSH2 0x03ee
00000092: JUMPI
00000093: DUP1
00000094: PUSH4 0xdb006a75
00000099: EQ
0000009a: PUSH2 0x0401
0000009d: JUMPI
0000009e: PUSH1 0x00
000000a0: DUP1
000000a1: REVERT
000000a2: JUMPDEST
000000a3: DUP1
000000a4: PUSH4 0xa5a4dcf7
000000a9: GT
000000aa: PUSH2 0x00de
000000ad: JUMPI
000000ae: DUP1
000000af: PUSH4 0xa5a4dcf7
000000b4: EQ
000000b5: PUSH2 0x0399
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0xc6c3bbe6
000000bf: EQ
000000c0: PUSH2 0x03c0
000000c3: JUMPI
000000c4: DUP1
000000c5: PUSH4 0xd4c3eea0
000000ca: EQ
000000cb: PUSH2 0x03d3
000000ce: JUMPI
000000cf: DUP1
000000d0: PUSH4 0xd522af4e
000000d5: EQ
000000d6: PUSH2 0x03d3
000000d9: JUMPI
000000da: PUSH1 0x00
000000dc: DUP1
000000dd: REVERT
000000de: JUMPDEST
000000df: DUP1
000000e0: PUSH4 0x8456cb59
000000e5: EQ
000000e6: PUSH2 0x0363
000000e9: JUMPI
000000ea: DUP1
000000eb: PUSH4 0x90ca796b
000000f0: EQ
000000f1: PUSH2 0x036b
000000f4: JUMPI
000000f5: DUP1
000000f6: PUSH4 0x91d14854
000000fb: EQ
000000fc: PUSH2 0x037e
000000ff: JUMPI
00000100: DUP1
00000101: PUSH4 0xa217fddf
00000106: EQ
00000107: PUSH2 0x0391
0000010a: JUMPI
0000010b: PUSH1 0x00
0000010d: DUP1
0000010e: REVERT
0000010f: JUMPDEST
00000110: DUP1
00000111: PUSH4 0x2f2ff15d
00000116: GT
00000117: PUSH2 0x0187
0000011a: JUMPI
0000011b: DUP1
0000011c: PUSH4 0x59356c5c
00000121: GT
00000122: PUSH2 0x0156
00000125: JUMPI
00000126: DUP1
00000127: PUSH4 0x59356c5c
0000012c: EQ
0000012d: PUSH2 0x0321
00000130: JUMPI
00000131: DUP1
00000132: PUSH4 0x5c975abb
00000137: EQ
00000138: PUSH2 0x0329
0000013b: JUMPI
0000013c: DUP1
0000013d: PUSH4 0x6f307dc3
00000142: EQ
00000143: PUSH2 0x0334
00000146: JUMPI
00000147: DUP1
00000148: PUSH4 0x7b3ba717
0000014d: EQ
0000014e: PUSH2 0x035b
00000151: JUMPI
00000152: PUSH1 0x00
00000154: DUP1
00000155: REVERT
00000156: JUMPDEST
00000157: DUP1
00000158: PUSH4 0x2f2ff15d
0000015d: EQ
0000015e: PUSH2 0x02ba
00000161: JUMPI
00000162: DUP1
00000163: PUSH4 0x33fdbbe5
00000168: EQ
00000169: PUSH2 0x02cd
0000016c: JUMPI
0000016d: DUP1
0000016e: PUSH4 0x36568abe
00000173: EQ
00000174: PUSH2 0x0306
00000177: JUMPI
00000178: DUP1
00000179: PUSH4 0x3f4ba83a
0000017e: EQ
0000017f: PUSH2 0x0319
00000182: JUMPI
00000183: PUSH1 0x00
00000185: DUP1
00000186: REVERT
00000187: JUMPDEST
00000188: DUP1
00000189: PUSH4 0x1e9a6950
0000018e: GT
0000018f: PUSH2 0x01c3
00000192: JUMPI
00000193: DUP1
00000194: PUSH4 0x1e9a6950
00000199: EQ
0000019a: PUSH2 0x0267
0000019d: JUMPI
0000019e: DUP1
0000019f: PUSH4 0x248a9ca3
000001a4: EQ
000001a5: PUSH2 0x027c
000001a8: JUMPI
000001a9: DUP1
000001aa: PUSH4 0x265a3a2a
000001af: EQ
000001b0: PUSH2 0x029f
000001b3: JUMPI
000001b4: DUP1
000001b5: PUSH4 0x2e1a7d4d
000001ba: EQ
000001bb: PUSH2 0x02a7
000001be: JUMPI
000001bf: PUSH1 0x00
000001c1: DUP1
000001c2: REVERT
000001c3: JUMPDEST
000001c4: DUP1
000001c5: PUSH4 0x01ffc9a7
000001ca: EQ
000001cb: PUSH2 0x01ea
000001ce: JUMPI
000001cf: DUP1
000001d0: PUSH4 0x07285dc6
000001d5: EQ
000001d6: PUSH2 0x0212
000001d9: JUMPI
000001da: DUP1
000001db: PUSH4 0x1b2df850
000001e0: EQ
000001e1: PUSH2 0x0251
000001e4: JUMPI
000001e5: JUMPDEST
000001e6: PUSH1 0x00
000001e8: DUP1
000001e9: REVERT
000001ea: JUMPDEST
000001eb: PUSH2 0x01fd
000001ee: PUSH2 0x01f8
000001f1: CALLDATASIZE
000001f2: PUSH1 0x04
000001f4: PUSH2 0x1461
000001f7: JUMP
000001f8: JUMPDEST
000001f9: PUSH2 0x044b
000001fc: JUMP
000001fd: JUMPDEST
000001fe: PUSH1 0x40
00000200: MLOAD
00000201: SWAP1
00000202: ISZERO
00000203: ISZERO
00000204: DUP2
00000205: MSTORE
00000206: PUSH1 0x20
00000208: ADD
00000209: JUMPDEST
0000020a: PUSH1 0x40
0000020c: MLOAD
0000020d: DUP1
0000020e: SWAP2
0000020f: SUB
00000210: SWAP1
00000211: RETURN
00000212: JUMPDEST
00000213: PUSH2 0x0239
00000216: PUSH32 0x0000000000000000000000008fffffd4afb6115b954bd326cbe7b4ba576818f6
00000237: DUP2
00000238: JUMP
00000239: JUMPDEST
0000023a: PUSH1 0x40
0000023c: MLOAD
0000023d: PUSH1 0x01
0000023f: PUSH1 0x01
00000241: PUSH1 0xa0
00000243: SHL
00000244: SUB
00000245: SWAP1
00000246: SWAP2
00000247: AND
00000248: DUP2
00000249: MSTORE
0000024a: PUSH1 0x20
0000024c: ADD
0000024d: PUSH2 0x0209
00000250: JUMP
00000251: JUMPDEST
00000252: PUSH2 0x0259
00000255: PUSH2 0x0482
00000258: JUMP
00000259: JUMPDEST
0000025a: PUSH1 0x40
0000025c: MLOAD
0000025d: SWAP1
0000025e: DUP2
0000025f: MSTORE
00000260: PUSH1 0x20
00000262: ADD
00000263: PUSH2 0x0209
00000266: JUMP
00000267: JUMPDEST
00000268: PUSH2 0x027a
0000026b: PUSH2 0x0275
0000026e: CALLDATASIZE
0000026f: PUSH1 0x04
00000271: PUSH2 0x14a7
00000274: JUMP
00000275: JUMPDEST
00000276: PUSH2 0x04dc
00000279: JUMP
0000027a: JUMPDEST
0000027b: STOP
0000027c: JUMPDEST
0000027d: PUSH2 0x0259
00000280: PUSH2 0x028a
00000283: CALLDATASIZE
00000284: PUSH1 0x04
00000286: PUSH2 0x14d1
00000289: JUMP
0000028a: JUMPDEST
0000028b: PUSH1 0x00
0000028d: SWAP1
0000028e: DUP2
0000028f: MSTORE
00000290: PUSH1 0x20
00000292: DUP2
00000293: SWAP1
00000294: MSTORE
00000295: PUSH1 0x40
00000297: SWAP1
00000298: KECCAK256
00000299: PUSH1 0x01
0000029b: ADD
0000029c: SLOAD
0000029d: SWAP1
0000029e: JUMP
0000029f: JUMPDEST
000002a0: PUSH2 0x0259
000002a3: PUSH2 0x0538
000002a6: JUMP
000002a7: JUMPDEST
000002a8: PUSH2 0x027a
000002ab: PUSH2 0x02b5
000002ae: CALLDATASIZE
000002af: PUSH1 0x04
000002b1: PUSH2 0x14d1
000002b4: JUMP
000002b5: JUMPDEST
000002b6: PUSH2 0x0547
000002b9: JUMP
000002ba: JUMPDEST
000002bb: PUSH2 0x027a
000002be: PUSH2 0x02c8
000002c1: CALLDATASIZE
000002c2: PUSH1 0x04
000002c4: PUSH2 0x14ea
000002c7: JUMP
000002c8: JUMPDEST
000002c9: PUSH2 0x0645
000002cc: JUMP
000002cd: JUMPDEST
000002ce: PUSH2 0x02f4
000002d1: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000006
000002f2: DUP2
000002f3: JUMP
000002f4: JUMPDEST
000002f5: PUSH1 0x40
000002f7: MLOAD
000002f8: PUSH1 0xff
000002fa: SWAP1
000002fb: SWAP2
000002fc: AND
000002fd: DUP2
000002fe: MSTORE
000002ff: PUSH1 0x20
00000301: ADD
00000302: PUSH2 0x0209
00000305: JUMP
00000306: JUMPDEST
00000307: PUSH2 0x027a
0000030a: PUSH2 0x0314
0000030d: CALLDATASIZE
0000030e: PUSH1 0x04
00000310: PUSH2 0x14ea
00000313: JUMP
00000314: JUMPDEST
00000315: PUSH2 0x066f
00000318: JUMP
00000319: JUMPDEST
0000031a: PUSH2 0x027a
0000031d: PUSH2 0x06f2
00000320: JUMP
00000321: JUMPDEST
00000322: PUSH2 0x0259
00000325: PUSH2 0x072b
00000328: JUMP
00000329: JUMPDEST
0000032a: PUSH1 0x01
0000032c: SLOAD
0000032d: PUSH1 0xff
0000032f: AND
00000330: PUSH2 0x01fd
00000333: JUMP
00000334: JUMPDEST
00000335: PUSH2 0x0239
00000338: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00000359: DUP2
0000035a: JUMP
0000035b: JUMPDEST
0000035c: PUSH2 0x0259
0000035f: PUSH2 0x0735
00000362: JUMP
00000363: JUMPDEST
00000364: PUSH2 0x027a
00000367: PUSH2 0x0744
0000036a: JUMP
0000036b: JUMPDEST
0000036c: PUSH2 0x027a
0000036f: PUSH2 0x0379
00000372: CALLDATASIZE
00000373: PUSH1 0x04
00000375: PUSH2 0x14d1
00000378: JUMP
00000379: JUMPDEST
0000037a: PUSH2 0x077a
0000037d: JUMP
0000037e: JUMPDEST
0000037f: PUSH2 0x01fd
00000382: PUSH2 0x038c
00000385: CALLDATASIZE
00000386: PUSH1 0x04
00000388: PUSH2 0x14ea
0000038b: JUMP
0000038c: JUMPDEST
0000038d: PUSH2 0x084f
00000390: JUMP
00000391: JUMPDEST
00000392: PUSH2 0x0259
00000395: PUSH1 0x00
00000397: DUP2
00000398: JUMP
00000399: JUMPDEST
0000039a: PUSH2 0x0239
0000039d: PUSH32 0x00000000000000000000000009d4214c03d01f49544c0448dbe3a27f768f2b34
000003be: DUP2
000003bf: JUMP
000003c0: JUMPDEST
000003c1: PUSH2 0x027a
000003c4: PUSH2 0x03ce
000003c7: CALLDATASIZE
000003c8: PUSH1 0x04
000003ca: PUSH2 0x1516
000003cd: JUMP
000003ce: JUMPDEST
000003cf: PUSH2 0x0878
000003d2: JUMP
000003d3: JUMPDEST
000003d4: PUSH2 0x0259
000003d7: PUSH2 0x08ff
000003da: JUMP
000003db: JUMPDEST
000003dc: PUSH2 0x027a
000003df: PUSH2 0x03e9
000003e2: CALLDATASIZE
000003e3: PUSH1 0x04
000003e5: PUSH2 0x14ea
000003e8: JUMP
000003e9: JUMPDEST
000003ea: PUSH2 0x0909
000003ed: JUMP
000003ee: JUMPDEST
000003ef: PUSH2 0x0259
000003f2: PUSH2 0x03fc
000003f5: CALLDATASIZE
000003f6: PUSH1 0x04
000003f8: PUSH2 0x14d1
000003fb: JUMP
000003fc: JUMPDEST
000003fd: PUSH2 0x092e
00000400: JUMP
00000401: JUMPDEST
00000402: PUSH2 0x027a
00000405: PUSH2 0x040f
00000408: CALLDATASIZE
00000409: PUSH1 0x04
0000040b: PUSH2 0x14d1
0000040e: JUMP
0000040f: JUMPDEST
00000410: PUSH2 0x0939
00000413: JUMP
00000414: JUMPDEST
00000415: PUSH2 0x027a
00000418: PUSH2 0x0422
0000041b: CALLDATASIZE
0000041c: PUSH1 0x04
0000041e: PUSH2 0x14d1
00000421: JUMP
00000422: JUMPDEST
00000423: PUSH2 0x098b
00000426: JUMP
00000427: JUMPDEST
00000428: PUSH2 0x0259
0000042b: PUSH1 0x02
0000042d: SLOAD
0000042e: DUP2
0000042f: JUMP
00000430: JUMPDEST
00000431: PUSH2 0x0259
00000434: PUSH2 0x043e
00000437: CALLDATASIZE
00000438: PUSH1 0x04
0000043a: PUSH2 0x14d1
0000043d: JUMP
0000043e: JUMPDEST
0000043f: PUSH2 0x0a8d
00000442: JUMP
00000443: JUMPDEST
00000444: PUSH2 0x0259
00000447: PUSH2 0x0a98
0000044a: JUMP
0000044b: JUMPDEST
0000044c: PUSH1 0x00
0000044e: PUSH1 0x01
00000450: PUSH1 0x01
00000452: PUSH1 0xe0
00000454: SHL
00000455: SUB
00000456: NOT
00000457: DUP3
00000458: AND
00000459: PUSH4 0x7965db0b
0000045e: PUSH1 0xe0
00000460: SHL
00000461: EQ
00000462: DUP1
00000463: PUSH2 0x047c
00000466: JUMPI
00000467: POP
00000468: PUSH4 0x01ffc9a7
0000046d: PUSH1 0xe0
0000046f: SHL
00000470: PUSH1 0x01
00000472: PUSH1 0x01
00000474: PUSH1 0xe0
00000476: SHL
00000477: SUB
00000478: NOT
00000479: DUP4
0000047a: AND
0000047b: EQ
0000047c: JUMPDEST
0000047d: SWAP3
0000047e: SWAP2
0000047f: POP
00000480: POP
00000481: JUMP
00000482: JUMPDEST
00000483: PUSH1 0x40
00000485: MLOAD
00000486: PUSH1 0x20
00000488: ADD
00000489: PUSH2 0x04c3
0000048c: SWAP1
0000048d: PUSH1 0x20
0000048f: DUP1
00000490: DUP3
00000491: MSTORE
00000492: PUSH1 0x1c
00000494: SWAP1
00000495: DUP3
00000496: ADD
00000497: MSTORE
00000498: PUSH32 0x7065672e73746162696c6974792e6d6f64756c652e6d616e6167657200000000
000004b9: PUSH1 0x40
000004bb: DUP3
000004bc: ADD
000004bd: MSTORE
000004be: PUSH1 0x60
000004c0: ADD
000004c1: SWAP1
000004c2: JUMP
000004c3: JUMPDEST
000004c4: PUSH1 0x40
000004c6: MLOAD
000004c7: PUSH1 0x20
000004c9: DUP2
000004ca: DUP4
000004cb: SUB
000004cc: SUB
000004cd: DUP2
000004ce: MSTORE
000004cf: SWAP1
000004d0: PUSH1 0x40
000004d2: MSTORE
000004d3: DUP1
000004d4: MLOAD
000004d5: SWAP1
000004d6: PUSH1 0x20
000004d8: ADD
000004d9: KECCAK256
000004da: DUP2
000004db: JUMP
000004dc: JUMPDEST
000004dd: PUSH2 0x04e4
000004e0: PUSH2 0x0aa7
000004e3: JUMP
000004e4: JUMPDEST
000004e5: PUSH2 0x04ef
000004e8: CALLER
000004e9: DUP4
000004ea: DUP4
000004eb: PUSH2 0x0aef
000004ee: JUMP
000004ef: JUMPDEST
000004f0: PUSH1 0x40
000004f2: DUP1
000004f3: MLOAD
000004f4: DUP3
000004f5: DUP2
000004f6: MSTORE
000004f7: TIMESTAMP
000004f8: PUSH1 0x20
000004fa: DUP3
000004fb: ADD
000004fc: MSTORE
000004fd: PUSH1 0x01
000004ff: PUSH1 0x01
00000501: PUSH1 0xa0
00000503: SHL
00000504: SUB
00000505: DUP5
00000506: AND
00000507: SWAP2
00000508: CALLER
00000509: SWAP2
0000050a: PUSH32 0x3f693fff038bb8a046aa76d9516190ac7444f7d69cf952c4cbdc086fdef2d6fc
0000052b: SWAP2
0000052c: ADD
0000052d: PUSH1 0x40
0000052f: MLOAD
00000530: DUP1
00000531: SWAP2
00000532: SUB
00000533: SWAP1
00000534: LOG3
00000535: POP
00000536: POP
00000537: JUMP
00000538: JUMPDEST
00000539: PUSH1 0x00
0000053b: PUSH2 0x0542
0000053e: PUSH2 0x0c56
00000541: JUMP
00000542: JUMPDEST
00000543: SWAP1
00000544: POP
00000545: SWAP1
00000546: JUMP
00000547: JUMPDEST
00000548: PUSH1 0x40
0000054a: MLOAD
0000054b: PUSH1 0x20
0000054d: ADD
0000054e: PUSH2 0x0556
00000551: SWAP1
00000552: PUSH2 0x1552
00000555: JUMP
00000556: JUMPDEST
00000557: PUSH1 0x40
00000559: MLOAD
0000055a: PUSH1 0x20
0000055c: DUP2
0000055d: DUP4
0000055e: SUB
0000055f: SUB
00000560: DUP2
00000561: MSTORE
00000562: SWAP1
00000563: PUSH1 0x40
00000565: MSTORE
00000566: DUP1
00000567: MLOAD
00000568: SWAP1
00000569: PUSH1 0x20
0000056b: ADD
0000056c: KECCAK256
0000056d: PUSH2 0x0575
00000570: DUP2
00000571: PUSH2 0x0c68
00000574: JUMP
00000575: JUMPDEST
00000576: PUSH1 0x40
00000578: MLOAD
00000579: PUSH4 0xa9059cbb
0000057e: PUSH1 0xe0
00000580: SHL
00000581: DUP2
00000582: MSTORE
00000583: CALLER
00000584: PUSH1 0x04
00000586: DUP3
00000587: ADD
00000588: MSTORE
00000589: PUSH1 0x24
0000058b: DUP2
0000058c: ADD
0000058d: DUP4
0000058e: SWAP1
0000058f: MSTORE
00000590: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
000005b1: PUSH1 0x01
000005b3: PUSH1 0x01
000005b5: PUSH1 0xa0
000005b7: SHL
000005b8: SUB
000005b9: AND
000005ba: SWAP1
000005bb: PUSH4 0xa9059cbb
000005c0: SWAP1
000005c1: PUSH1 0x44
000005c3: ADD
000005c4: PUSH1 0x20
000005c6: PUSH1 0x40
000005c8: MLOAD
000005c9: DUP1
000005ca: DUP4
000005cb: SUB
000005cc: DUP2
000005cd: PUSH1 0x00
000005cf: DUP8
000005d0: GAS
000005d1: CALL
000005d2: ISZERO
000005d3: DUP1
000005d4: ISZERO
000005d5: PUSH2 0x05e2
000005d8: JUMPI
000005d9: RETURNDATASIZE
000005da: PUSH1 0x00
000005dc: DUP1
000005dd: RETURNDATACOPY
000005de: RETURNDATASIZE
000005df: PUSH1 0x00
000005e1: REVERT
000005e2: JUMPDEST
000005e3: POP
000005e4: POP
000005e5: POP
000005e6: POP
000005e7: PUSH1 0x40
000005e9: MLOAD
000005ea: RETURNDATASIZE
000005eb: PUSH1 0x1f
000005ed: NOT
000005ee: PUSH1 0x1f
000005f0: DUP3
000005f1: ADD
000005f2: AND
000005f3: DUP3
000005f4: ADD
000005f5: DUP1
000005f6: PUSH1 0x40
000005f8: MSTORE
000005f9: POP
000005fa: DUP2
000005fb: ADD
000005fc: SWAP1
000005fd: PUSH2 0x0606
00000600: SWAP2
00000601: SWAP1
00000602: PUSH2 0x1589
00000605: JUMP
00000606: JUMPDEST
00000607: POP
00000608: PUSH1 0x40
0000060a: DUP1
0000060b: MLOAD
0000060c: DUP4
0000060d: DUP2
0000060e: MSTORE
0000060f: TIMESTAMP
00000610: PUSH1 0x20
00000612: DUP3
00000613: ADD
00000614: MSTORE
00000615: CALLER
00000616: SWAP2
00000617: PUSH32 0xf279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b568
00000638: SWAP2
00000639: ADD
0000063a: PUSH1 0x40
0000063c: MLOAD
0000063d: DUP1
0000063e: SWAP2
0000063f: SUB
00000640: SWAP1
00000641: LOG2
00000642: POP
00000643: POP
00000644: JUMP
00000645: JUMPDEST
00000646: PUSH1 0x00
00000648: DUP3
00000649: DUP2
0000064a: MSTORE
0000064b: PUSH1 0x20
0000064d: DUP2
0000064e: SWAP1
0000064f: MSTORE
00000650: PUSH1 0x40
00000652: SWAP1
00000653: KECCAK256
00000654: PUSH1 0x01
00000656: ADD
00000657: SLOAD
00000658: PUSH2 0x0660
0000065b: DUP2
0000065c: PUSH2 0x0c68
0000065f: JUMP
00000660: JUMPDEST
00000661: PUSH2 0x066a
00000664: DUP4
00000665: DUP4
00000666: PUSH2 0x0c72
00000669: JUMP
0000066a: JUMPDEST
0000066b: POP
0000066c: POP
0000066d: POP
0000066e: JUMP
0000066f: JUMPDEST
00000670: PUSH1 0x01
00000672: PUSH1 0x01
00000674: PUSH1 0xa0
00000676: SHL
00000677: SUB
00000678: DUP2
00000679: AND
0000067a: CALLER
0000067b: EQ
0000067c: PUSH2 0x06e4
0000067f: JUMPI
00000680: PUSH1 0x40
00000682: MLOAD
00000683: PUSH3 0x461bcd
00000687: PUSH1 0xe5
00000689: SHL
0000068a: DUP2
0000068b: MSTORE
0000068c: PUSH1 0x20
0000068e: PUSH1 0x04
00000690: DUP3
00000691: ADD
00000692: MSTORE
00000693: PUSH1 0x2f
00000695: PUSH1 0x24
00000697: DUP3
00000698: ADD
00000699: MSTORE
0000069a: PUSH32 0x416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e6365
000006bb: PUSH1 0x44
000006bd: DUP3
000006be: ADD
000006bf: MSTORE
000006c0: PUSH15 0x103937b632b9903337b91039b2b633
000006d0: PUSH1 0x89
000006d2: SHL
000006d3: PUSH1 0x64
000006d5: DUP3
000006d6: ADD
000006d7: MSTORE
000006d8: PUSH1 0x84
000006da: ADD
000006db: JUMPDEST
000006dc: PUSH1 0x40
000006de: MLOAD
000006df: DUP1
000006e0: SWAP2
000006e1: SUB
000006e2: SWAP1
000006e3: REVERT
000006e4: JUMPDEST
000006e5: PUSH2 0x06ee
000006e8: DUP3
000006e9: DUP3
000006ea: PUSH2 0x0cf6
000006ed: JUMP
000006ee: JUMPDEST
000006ef: POP
000006f0: POP
000006f1: JUMP
000006f2: JUMPDEST
000006f3: PUSH1 0x40
000006f5: MLOAD
000006f6: PUSH1 0x20
000006f8: ADD
000006f9: PUSH2 0x0701
000006fc: SWAP1
000006fd: PUSH2 0x15ab
00000700: JUMP
00000701: JUMPDEST
00000702: PUSH1 0x40
00000704: MLOAD
00000705: PUSH1 0x20
00000707: DUP2
00000708: DUP4
00000709: SUB
0000070a: SUB
0000070b: DUP2
0000070c: MSTORE
0000070d: SWAP1
0000070e: PUSH1 0x40
00000710: MSTORE
00000711: DUP1
00000712: MLOAD
00000713: SWAP1
00000714: PUSH1 0x20
00000716: ADD
00000717: KECCAK256
00000718: PUSH2 0x0720
0000071b: DUP2
0000071c: PUSH2 0x0c68
0000071f: JUMP
00000720: JUMPDEST
00000721: PUSH2 0x0728
00000724: PUSH2 0x0d5b
00000727: JUMP
00000728: JUMPDEST
00000729: POP
0000072a: JUMP
0000072b: JUMPDEST
0000072c: PUSH1 0x00
0000072e: PUSH2 0x0542
00000731: PUSH2 0x0dad
00000734: JUMP
00000735: JUMPDEST
00000736: PUSH1 0x40
00000738: MLOAD
00000739: PUSH1 0x20
0000073b: ADD
0000073c: PUSH2 0x04c3
0000073f: SWAP1
00000740: PUSH2 0x15ab
00000743: JUMP
00000744: JUMPDEST
00000745: PUSH1 0x40
00000747: MLOAD
00000748: PUSH1 0x20
0000074a: ADD
0000074b: PUSH2 0x0753
0000074e: SWAP1
0000074f: PUSH2 0x15ab
00000752: JUMP
00000753: JUMPDEST
00000754: PUSH1 0x40
00000756: MLOAD
00000757: PUSH1 0x20
00000759: DUP2
0000075a: DUP4
0000075b: SUB
0000075c: SUB
0000075d: DUP2
0000075e: MSTORE
0000075f: SWAP1
00000760: PUSH1 0x40
00000762: MSTORE
00000763: DUP1
00000764: MLOAD
00000765: SWAP1
00000766: PUSH1 0x20
00000768: ADD
00000769: KECCAK256
0000076a: PUSH2 0x0772
0000076d: DUP2
0000076e: PUSH2 0x0c68
00000771: JUMP
00000772: JUMPDEST
00000773: PUSH2 0x0728
00000776: PUSH2 0x0e38
00000779: JUMP
0000077a: JUMPDEST
0000077b: PUSH1 0x40
0000077d: MLOAD
0000077e: PUSH4 0x23b872dd
00000783: PUSH1 0xe0
00000785: SHL
00000786: DUP2
00000787: MSTORE
00000788: CALLER
00000789: PUSH1 0x04
0000078b: DUP3
0000078c: ADD
0000078d: MSTORE
0000078e: ADDRESS
0000078f: PUSH1 0x24
00000791: DUP3
00000792: ADD
00000793: MSTORE
00000794: PUSH1 0x44
00000796: DUP2
00000797: ADD
00000798: DUP3
00000799: SWAP1
0000079a: MSTORE
0000079b: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
000007bc: PUSH1 0x01
000007be: PUSH1 0x01
000007c0: PUSH1 0xa0
000007c2: SHL
000007c3: SUB
000007c4: AND
000007c5: SWAP1
000007c6: PUSH4 0x23b872dd
000007cb: SWAP1
000007cc: PUSH1 0x64
000007ce: ADD
000007cf: PUSH1 0x20
000007d1: PUSH1 0x40
000007d3: MLOAD
000007d4: DUP1
000007d5: DUP4
000007d6: SUB
000007d7: DUP2
000007d8: PUSH1 0x00
000007da: DUP8
000007db: GAS
000007dc: CALL
000007dd: ISZERO
000007de: DUP1
000007df: ISZERO
000007e0: PUSH2 0x07ed
000007e3: JUMPI
000007e4: RETURNDATASIZE
000007e5: PUSH1 0x00
000007e7: DUP1
000007e8: RETURNDATACOPY
000007e9: RETURNDATASIZE
000007ea: PUSH1 0x00
000007ec: REVERT
000007ed: JUMPDEST
000007ee: POP
000007ef: POP
000007f0: POP
000007f1: POP
000007f2: PUSH1 0x40
000007f4: MLOAD
000007f5: RETURNDATASIZE
000007f6: PUSH1 0x1f
000007f8: NOT
000007f9: PUSH1 0x1f
000007fb: DUP3
000007fc: ADD
000007fd: AND
000007fe: DUP3
000007ff: ADD
00000800: DUP1
00000801: PUSH1 0x40
00000803: MSTORE
00000804: POP
00000805: DUP2
00000806: ADD
00000807: SWAP1
00000808: PUSH2 0x0811
0000080b: SWAP2
0000080c: SWAP1
0000080d: PUSH2 0x1589
00000810: JUMP
00000811: JUMPDEST
00000812: POP
00000813: PUSH1 0x40
00000815: DUP1
00000816: MLOAD
00000817: DUP3
00000818: DUP2
00000819: MSTORE
0000081a: TIMESTAMP
0000081b: PUSH1 0x20
0000081d: DUP3
0000081e: ADD
0000081f: MSTORE
00000820: CALLER
00000821: SWAP2
00000822: PUSH32 0xe2a6fbb55be829f7f41ce6980e5fc3057544b2788af2e168fbf7a3db02284e7b
00000843: SWAP2
00000844: ADD
00000845: PUSH1 0x40
00000847: MLOAD
00000848: DUP1
00000849: SWAP2
0000084a: SUB
0000084b: SWAP1
0000084c: LOG2
0000084d: POP
0000084e: JUMP
0000084f: JUMPDEST
00000850: PUSH1 0x00
00000852: SWAP2
00000853: DUP3
00000854: MSTORE
00000855: PUSH1 0x20
00000857: DUP3
00000858: DUP2
00000859: MSTORE
0000085a: PUSH1 0x40
0000085c: DUP1
0000085d: DUP5
0000085e: KECCAK256
0000085f: PUSH1 0x01
00000861: PUSH1 0x01
00000863: PUSH1 0xa0
00000865: SHL
00000866: SUB
00000867: SWAP4
00000868: SWAP1
00000869: SWAP4
0000086a: AND
0000086b: DUP5
0000086c: MSTORE
0000086d: SWAP2
0000086e: SWAP1
0000086f: MSTORE
00000870: SWAP1
00000871: KECCAK256
00000872: SLOAD
00000873: PUSH1 0xff
00000875: AND
00000876: SWAP1
00000877: JUMP
00000878: JUMPDEST
00000879: PUSH1 0x40
0000087b: MLOAD
0000087c: PUSH1 0x20
0000087e: ADD
0000087f: PUSH2 0x0887
00000882: SWAP1
00000883: PUSH2 0x1552
00000886: JUMP
00000887: JUMPDEST
00000888: PUSH1 0x40
0000088a: MLOAD
0000088b: PUSH1 0x20
0000088d: DUP2
0000088e: DUP4
0000088f: SUB
00000890: SUB
00000891: DUP2
00000892: MSTORE
00000893: SWAP1
00000894: PUSH1 0x40
00000896: MSTORE
00000897: DUP1
00000898: MLOAD
00000899: SWAP1
0000089a: PUSH1 0x20
0000089c: ADD
0000089d: KECCAK256
0000089e: PUSH2 0x08a6
000008a1: DUP2
000008a2: PUSH2 0x0c68
000008a5: JUMP
000008a6: JUMPDEST
000008a7: PUSH2 0x08b1
000008aa: DUP5
000008ab: DUP5
000008ac: DUP5
000008ad: PUSH2 0x0e73
000008b0: JUMP
000008b1: JUMPDEST
000008b2: PUSH1 0x40
000008b4: DUP1
000008b5: MLOAD
000008b6: DUP4
000008b7: DUP2
000008b8: MSTORE
000008b9: TIMESTAMP
000008ba: PUSH1 0x20
000008bc: DUP3
000008bd: ADD
000008be: MSTORE
000008bf: PUSH1 0x01
000008c1: PUSH1 0x01
000008c3: PUSH1 0xa0
000008c5: SHL
000008c6: SUB
000008c7: DUP1
000008c8: DUP7
000008c9: AND
000008ca: SWAP3
000008cb: SWAP1
000008cc: DUP8
000008cd: AND
000008ce: SWAP2
000008cf: PUSH32 0x2f00e3cdd69a77be7ed215ec7b2a36784dd158f921fca79ac29deffa353fe6ee
000008f0: SWAP2
000008f1: ADD
000008f2: PUSH1 0x40
000008f4: MLOAD
000008f5: DUP1
000008f6: SWAP2
000008f7: SUB
000008f8: SWAP1
000008f9: LOG3
000008fa: POP
000008fb: POP
000008fc: POP
000008fd: POP
000008fe: JUMP
000008ff: JUMPDEST
00000900: PUSH1 0x00
00000902: PUSH2 0x0542
00000905: PUSH2 0x110b
00000908: JUMP
00000909: JUMPDEST
0000090a: PUSH1 0x00
0000090c: DUP3
0000090d: DUP2
0000090e: MSTORE
0000090f: PUSH1 0x20
00000911: DUP2
00000912: SWAP1
00000913: MSTORE
00000914: PUSH1 0x40
00000916: SWAP1
00000917: KECCAK256
00000918: PUSH1 0x01
0000091a: ADD
0000091b: SLOAD
0000091c: PUSH2 0x0924
0000091f: DUP2
00000920: PUSH2 0x0c68
00000923: JUMP
00000924: JUMPDEST
00000925: PUSH2 0x066a
00000928: DUP4
00000929: DUP4
0000092a: PUSH2 0x0cf6
0000092d: JUMP
0000092e: JUMPDEST
0000092f: PUSH1 0x00
00000931: PUSH2 0x047c
00000934: DUP3
00000935: PUSH2 0x111d
00000938: JUMP
00000939: JUMPDEST
0000093a: PUSH2 0x0941
0000093d: PUSH2 0x0aa7
00000940: JUMP
00000941: JUMPDEST
00000942: PUSH2 0x094c
00000945: CALLER
00000946: CALLER
00000947: DUP4
00000948: PUSH2 0x0aef
0000094b: JUMP
0000094c: JUMPDEST
0000094d: PUSH1 0x40
0000094f: DUP1
00000950: MLOAD
00000951: DUP3
00000952: DUP2
00000953: MSTORE
00000954: TIMESTAMP
00000955: PUSH1 0x20
00000957: DUP3
00000958: ADD
00000959: MSTORE
0000095a: CALLER
0000095b: SWAP2
0000095c: DUP3
0000095d: SWAP2
0000095e: PUSH32 0x3f693fff038bb8a046aa76d9516190ac7444f7d69cf952c4cbdc086fdef2d6fc
0000097f: SWAP2
00000980: ADD
00000981: PUSH1 0x40
00000983: MLOAD
00000984: DUP1
00000985: SWAP2
00000986: SUB
00000987: SWAP1
00000988: LOG3
00000989: POP
0000098a: JUMP
0000098b: JUMPDEST
0000098c: PUSH1 0x40
0000098e: MLOAD
0000098f: PUSH1 0x20
00000991: ADD
00000992: PUSH2 0x09cc
00000995: SWAP1
00000996: PUSH1 0x20
00000998: DUP1
00000999: DUP3
0000099a: MSTORE
0000099b: PUSH1 0x1c
0000099d: SWAP1
0000099e: DUP3
0000099f: ADD
000009a0: MSTORE
000009a1: PUSH32 0x7065672e73746162696c6974792e6d6f64756c652e6d616e6167657200000000
000009c2: PUSH1 0x40
000009c4: DUP3
000009c5: ADD
000009c6: MSTORE
000009c7: PUSH1 0x60
000009c9: ADD
000009ca: SWAP1
000009cb: JUMP
000009cc: JUMPDEST
000009cd: PUSH1 0x40
000009cf: MLOAD
000009d0: PUSH1 0x20
000009d2: DUP2
000009d3: DUP4
000009d4: SUB
000009d5: SUB
000009d6: DUP2
000009d7: MSTORE
000009d8: SWAP1
000009d9: PUSH1 0x40
000009db: MSTORE
000009dc: DUP1
000009dd: MLOAD
000009de: SWAP1
000009df: PUSH1 0x20
000009e1: ADD
000009e2: KECCAK256
000009e3: PUSH2 0x09eb
000009e6: DUP2
000009e7: PUSH2 0x0c68
000009ea: JUMP
000009eb: JUMPDEST
000009ec: DUP2
000009ed: PUSH3 0x0f4240
000009f1: GT
000009f2: PUSH2 0x0a4c
000009f5: JUMPI
000009f6: PUSH1 0x40
000009f8: MLOAD
000009f9: PUSH3 0x461bcd
000009fd: PUSH1 0xe5
000009ff: SHL
00000a00: DUP2
00000a01: MSTORE
00000a02: PUSH1 0x20
00000a04: PUSH1 0x04
00000a06: DUP3
00000a07: ADD
00000a08: MSTORE
00000a09: PUSH1 0x26
00000a0b: PUSH1 0x24
00000a0d: DUP3
00000a0e: ADD
00000a0f: MSTORE
00000a10: PUSH32 0x50534d3a205269736b205765696768742063616e206e6f742062652061626f76
00000a31: PUSH1 0x44
00000a33: DUP3
00000a34: ADD
00000a35: MSTORE
00000a36: PUSH6 0x652031303025
00000a3d: PUSH1 0xd0
00000a3f: SHL
00000a40: PUSH1 0x64
00000a42: DUP3
00000a43: ADD
00000a44: MSTORE
00000a45: PUSH1 0x84
00000a47: ADD
00000a48: PUSH2 0x06db
00000a4b: JUMP
00000a4c: JUMPDEST
00000a4d: PUSH1 0x02
00000a4f: DUP3
00000a50: SWAP1
00000a51: SSTORE
00000a52: PUSH1 0x40
00000a54: DUP1
00000a55: MLOAD
00000a56: DUP4
00000a57: DUP2
00000a58: MSTORE
00000a59: TIMESTAMP
00000a5a: PUSH1 0x20
00000a5c: DUP3
00000a5d: ADD
00000a5e: MSTORE
00000a5f: PUSH32 0xb0234275d06a5d9055875d8c18951c51d6e449058d44424be5986ba5fb00ae04
00000a80: SWAP2
00000a81: ADD
00000a82: PUSH1 0x40
00000a84: MLOAD
00000a85: DUP1
00000a86: SWAP2
00000a87: SUB
00000a88: SWAP1
00000a89: LOG1
00000a8a: POP
00000a8b: POP
00000a8c: JUMP
00000a8d: JUMPDEST
00000a8e: PUSH1 0x00
00000a90: PUSH2 0x047c
00000a93: DUP3
00000a94: PUSH2 0x1143
00000a97: JUMP
00000a98: JUMPDEST
00000a99: PUSH1 0x40
00000a9b: MLOAD
00000a9c: PUSH1 0x20
00000a9e: ADD
00000a9f: PUSH2 0x04c3
00000aa2: SWAP1
00000aa3: PUSH2 0x1552
00000aa6: JUMP
00000aa7: JUMPDEST
00000aa8: PUSH1 0x01
00000aaa: SLOAD
00000aab: PUSH1 0xff
00000aad: AND
00000aae: ISZERO
00000aaf: PUSH2 0x0aed
00000ab2: JUMPI
00000ab3: PUSH1 0x40
00000ab5: MLOAD
00000ab6: PUSH3 0x461bcd
00000aba: PUSH1 0xe5
00000abc: SHL
00000abd: DUP2
00000abe: MSTORE
00000abf: PUSH1 0x20
00000ac1: PUSH1 0x04
00000ac3: DUP3
00000ac4: ADD
00000ac5: MSTORE
00000ac6: PUSH1 0x10
00000ac8: PUSH1 0x24
00000aca: DUP3
00000acb: ADD
00000acc: MSTORE
00000acd: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00000ade: PUSH1 0x82
00000ae0: SHL
00000ae1: PUSH1 0x44
00000ae3: DUP3
00000ae4: ADD
00000ae5: MSTORE
00000ae6: PUSH1 0x64
00000ae8: ADD
00000ae9: PUSH2 0x06db
00000aec: JUMP
00000aed: JUMPDEST
00000aee: JUMP
00000aef: JUMPDEST
00000af0: PUSH1 0x01
00000af2: PUSH1 0x01
00000af4: PUSH1 0xa0
00000af6: SHL
00000af7: SUB
00000af8: PUSH32 0x00000000000000000000000009d4214c03d01f49544c0448dbe3a27f768f2b34
00000b19: AND
00000b1a: PUSH4 0x79cc6790
00000b1f: DUP5
00000b20: PUSH2 0x0b4a
00000b23: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000006
00000b44: PUSH1 0x12
00000b46: PUSH2 0x15f8
00000b49: JUMP
00000b4a: JUMPDEST
00000b4b: PUSH2 0x0b55
00000b4e: SWAP1
00000b4f: PUSH1 0x0a
00000b51: PUSH2 0x16f5
00000b54: JUMP
00000b55: JUMPDEST
00000b56: PUSH2 0x0b5f
00000b59: SWAP1
00000b5a: DUP6
00000b5b: PUSH2 0x1704
00000b5e: JUMP
00000b5f: JUMPDEST
00000b60: PUSH1 0x40
00000b62: MLOAD
00000b63: PUSH1 0x01
00000b65: PUSH1 0x01
00000b67: PUSH1 0xe0
00000b69: SHL
00000b6a: SUB
00000b6b: NOT
00000b6c: PUSH1 0xe0
00000b6e: DUP6
00000b6f: SWAP1
00000b70: SHL
00000b71: AND
00000b72: DUP2
00000b73: MSTORE
00000b74: PUSH1 0x01
00000b76: PUSH1 0x01
00000b78: PUSH1 0xa0
00000b7a: SHL
00000b7b: SUB
00000b7c: SWAP1
00000b7d: SWAP3
00000b7e: AND
00000b7f: PUSH1 0x04
00000b81: DUP4
00000b82: ADD
00000b83: MSTORE
00000b84: PUSH1 0x24
00000b86: DUP3
00000b87: ADD
00000b88: MSTORE
00000b89: PUSH1 0x44
00000b8b: ADD
00000b8c: PUSH1 0x00
00000b8e: PUSH1 0x40
00000b90: MLOAD
00000b91: DUP1
00000b92: DUP4
00000b93: SUB
00000b94: DUP2
00000b95: PUSH1 0x00
00000b97: DUP8
00000b98: DUP1
00000b99: EXTCODESIZE
00000b9a: ISZERO
00000b9b: DUP1
00000b9c: ISZERO
00000b9d: PUSH2 0x0ba5
00000ba0: JUMPI
00000ba1: PUSH1 0x00
00000ba3: DUP1
00000ba4: REVERT
00000ba5: JUMPDEST
00000ba6: POP
00000ba7: GAS
00000ba8: CALL
00000ba9: ISZERO
00000baa: DUP1
00000bab: ISZERO
00000bac: PUSH2 0x0bb9
00000baf: JUMPI
00000bb0: RETURNDATASIZE
00000bb1: PUSH1 0x00
00000bb3: DUP1
00000bb4: RETURNDATACOPY
00000bb5: RETURNDATASIZE
00000bb6: PUSH1 0x00
00000bb8: REVERT
00000bb9: JUMPDEST
00000bba: POP
00000bbb: POP
00000bbc: PUSH1 0x40
00000bbe: MLOAD
00000bbf: PUSH4 0xa9059cbb
00000bc4: PUSH1 0xe0
00000bc6: SHL
00000bc7: DUP2
00000bc8: MSTORE
00000bc9: PUSH1 0x01
00000bcb: PUSH1 0x01
00000bcd: PUSH1 0xa0
00000bcf: SHL
00000bd0: SUB
00000bd1: DUP6
00000bd2: DUP2
00000bd3: AND
00000bd4: PUSH1 0x04
00000bd6: DUP4
00000bd7: ADD
00000bd8: MSTORE
00000bd9: PUSH1 0x24
00000bdb: DUP3
00000bdc: ADD
00000bdd: DUP6
00000bde: SWAP1
00000bdf: MSTORE
00000be0: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00000c01: AND
00000c02: SWAP3
00000c03: POP
00000c04: PUSH4 0xa9059cbb
00000c09: SWAP2
00000c0a: POP
00000c0b: PUSH1 0x44
00000c0d: ADD
00000c0e: PUSH1 0x20
00000c10: PUSH1 0x40
00000c12: MLOAD
00000c13: DUP1
00000c14: DUP4
00000c15: SUB
00000c16: DUP2
00000c17: PUSH1 0x00
00000c19: DUP8
00000c1a: GAS
00000c1b: CALL
00000c1c: ISZERO
00000c1d: DUP1
00000c1e: ISZERO
00000c1f: PUSH2 0x0c2c
00000c22: JUMPI
00000c23: RETURNDATASIZE
00000c24: PUSH1 0x00
00000c26: DUP1
00000c27: RETURNDATACOPY
00000c28: RETURNDATASIZE
00000c29: PUSH1 0x00
00000c2b: REVERT
00000c2c: JUMPDEST
00000c2d: POP
00000c2e: POP
00000c2f: POP
00000c30: POP
00000c31: PUSH1 0x40
00000c33: MLOAD
00000c34: RETURNDATASIZE
00000c35: PUSH1 0x1f
00000c37: NOT
00000c38: PUSH1 0x1f
00000c3a: DUP3
00000c3b: ADD
00000c3c: AND
00000c3d: DUP3
00000c3e: ADD
00000c3f: DUP1
00000c40: PUSH1 0x40
00000c42: MSTORE
00000c43: POP
00000c44: DUP2
00000c45: ADD
00000c46: SWAP1
00000c47: PUSH2 0x0c50
00000c4a: SWAP2
00000c4b: SWAP1
00000c4c: PUSH2 0x1589
00000c4f: JUMP
00000c50: JUMPDEST
00000c51: POP
00000c52: POP
00000c53: POP
00000c54: POP
00000c55: JUMP
00000c56: JUMPDEST
00000c57: PUSH1 0x00
00000c59: PUSH2 0x0542
00000c5c: PUSH2 0x0c63
00000c5f: PUSH2 0x0dad
00000c62: JUMP
00000c63: JUMPDEST
00000c64: PUSH2 0x111d
00000c67: JUMP
00000c68: JUMPDEST
00000c69: PUSH2 0x0728
00000c6c: DUP2
00000c6d: CALLER
00000c6e: PUSH2 0x116c
00000c71: JUMP
00000c72: JUMPDEST
00000c73: PUSH2 0x0c7c
00000c76: DUP3
00000c77: DUP3
00000c78: PUSH2 0x084f
00000c7b: JUMP
00000c7c: JUMPDEST
00000c7d: PUSH2 0x06ee
00000c80: JUMPI
00000c81: PUSH1 0x00
00000c83: DUP3
00000c84: DUP2
00000c85: MSTORE
00000c86: PUSH1 0x20
00000c88: DUP2
00000c89: DUP2
00000c8a: MSTORE
00000c8b: PUSH1 0x40
00000c8d: DUP1
00000c8e: DUP4
00000c8f: KECCAK256
00000c90: PUSH1 0x01
00000c92: PUSH1 0x01
00000c94: PUSH1 0xa0
00000c96: SHL
00000c97: SUB
00000c98: DUP6
00000c99: AND
00000c9a: DUP5
00000c9b: MSTORE
00000c9c: SWAP1
00000c9d: SWAP2
00000c9e: MSTORE
00000c9f: SWAP1
00000ca0: KECCAK256
00000ca1: DUP1
00000ca2: SLOAD
00000ca3: PUSH1 0xff
00000ca5: NOT
00000ca6: AND
00000ca7: PUSH1 0x01
00000ca9: OR
00000caa: SWAP1
00000cab: SSTORE
00000cac: PUSH2 0x0cb2
00000caf: CALLER
00000cb0: SWAP1
00000cb1: JUMP
00000cb2: JUMPDEST
00000cb3: PUSH1 0x01
00000cb5: PUSH1 0x01
00000cb7: PUSH1 0xa0
00000cb9: SHL
00000cba: SUB
00000cbb: AND
00000cbc: DUP2
00000cbd: PUSH1 0x01
00000cbf: PUSH1 0x01
00000cc1: PUSH1 0xa0
00000cc3: SHL
00000cc4: SUB
00000cc5: AND
00000cc6: DUP4
00000cc7: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d
00000ce8: PUSH1 0x40
00000cea: MLOAD
00000ceb: PUSH1 0x40
00000ced: MLOAD
00000cee: DUP1
00000cef: SWAP2
00000cf0: SUB
00000cf1: SWAP1
00000cf2: LOG4
00000cf3: POP
00000cf4: POP
00000cf5: JUMP
00000cf6: JUMPDEST
00000cf7: PUSH2 0x0d00
00000cfa: DUP3
00000cfb: DUP3
00000cfc: PUSH2 0x084f
00000cff: JUMP
00000d00: JUMPDEST
00000d01: ISZERO
00000d02: PUSH2 0x06ee
00000d05: JUMPI
00000d06: PUSH1 0x00
00000d08: DUP3
00000d09: DUP2
00000d0a: MSTORE
00000d0b: PUSH1 0x20
00000d0d: DUP2
00000d0e: DUP2
00000d0f: MSTORE
00000d10: PUSH1 0x40
00000d12: DUP1
00000d13: DUP4
00000d14: KECCAK256
00000d15: PUSH1 0x01
00000d17: PUSH1 0x01
00000d19: PUSH1 0xa0
00000d1b: SHL
00000d1c: SUB
00000d1d: DUP6
00000d1e: AND
00000d1f: DUP1
00000d20: DUP6
00000d21: MSTORE
00000d22: SWAP3
00000d23: MSTORE
00000d24: DUP1
00000d25: DUP4
00000d26: KECCAK256
00000d27: DUP1
00000d28: SLOAD
00000d29: PUSH1 0xff
00000d2b: NOT
00000d2c: AND
00000d2d: SWAP1
00000d2e: SSTORE
00000d2f: MLOAD
00000d30: CALLER
00000d31: SWAP3
00000d32: DUP6
00000d33: SWAP2
00000d34: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b
00000d55: SWAP2
00000d56: SWAP1
00000d57: LOG4
00000d58: POP
00000d59: POP
00000d5a: JUMP
00000d5b: JUMPDEST
00000d5c: PUSH2 0x0d63
00000d5f: PUSH2 0x11c5
00000d62: JUMP
00000d63: JUMPDEST
00000d64: PUSH1 0x01
00000d66: DUP1
00000d67: SLOAD
00000d68: PUSH1 0xff
00000d6a: NOT
00000d6b: AND
00000d6c: SWAP1
00000d6d: SSTORE
00000d6e: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa
00000d8f: CALLER
00000d90: JUMPDEST
00000d91: PUSH1 0x40
00000d93: MLOAD
00000d94: PUSH1 0x01
00000d96: PUSH1 0x01
00000d98: PUSH1 0xa0
00000d9a: SHL
00000d9b: SUB
00000d9c: SWAP1
00000d9d: SWAP2
00000d9e: AND
00000d9f: DUP2
00000da0: MSTORE
00000da1: PUSH1 0x20
00000da3: ADD
00000da4: PUSH1 0x40
00000da6: MLOAD
00000da7: DUP1
00000da8: SWAP2
00000da9: SUB
00000daa: SWAP1
00000dab: LOG1
00000dac: JUMP
00000dad: JUMPDEST
00000dae: PUSH1 0x40
00000db0: MLOAD
00000db1: PUSH4 0x70a08231
00000db6: PUSH1 0xe0
00000db8: SHL
00000db9: DUP2
00000dba: MSTORE
00000dbb: ADDRESS
00000dbc: PUSH1 0x04
00000dbe: DUP3
00000dbf: ADD
00000dc0: MSTORE
00000dc1: PUSH1 0x00
00000dc3: SWAP1
00000dc4: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00000de5: PUSH1 0x01
00000de7: PUSH1 0x01
00000de9: PUSH1 0xa0
00000deb: SHL
00000dec: SUB
00000ded: AND
00000dee: SWAP1
00000def: PUSH4 0x70a08231
00000df4: SWAP1
00000df5: PUSH1 0x24
00000df7: ADD
00000df8: PUSH1 0x20
00000dfa: PUSH1 0x40
00000dfc: MLOAD
00000dfd: DUP1
00000dfe: DUP4
00000dff: SUB
00000e00: DUP2
00000e01: DUP7
00000e02: GAS
00000e03: STATICCALL
00000e04: ISZERO
00000e05: DUP1
00000e06: ISZERO
00000e07: PUSH2 0x0e14
00000e0a: JUMPI
00000e0b: RETURNDATASIZE
00000e0c: PUSH1 0x00
00000e0e: DUP1
00000e0f: RETURNDATACOPY
00000e10: RETURNDATASIZE
00000e11: PUSH1 0x00
00000e13: REVERT
00000e14: JUMPDEST
00000e15: POP
00000e16: POP
00000e17: POP
00000e18: POP
00000e19: PUSH1 0x40
00000e1b: MLOAD
00000e1c: RETURNDATASIZE
00000e1d: PUSH1 0x1f
00000e1f: NOT
00000e20: PUSH1 0x1f
00000e22: DUP3
00000e23: ADD
00000e24: AND
00000e25: DUP3
00000e26: ADD
00000e27: DUP1
00000e28: PUSH1 0x40
00000e2a: MSTORE
00000e2b: POP
00000e2c: DUP2
00000e2d: ADD
00000e2e: SWAP1
00000e2f: PUSH2 0x0542
00000e32: SWAP2
00000e33: SWAP1
00000e34: PUSH2 0x171b
00000e37: JUMP
00000e38: JUMPDEST
00000e39: PUSH2 0x0e40
00000e3c: PUSH2 0x0aa7
00000e3f: JUMP
00000e40: JUMPDEST
00000e41: PUSH1 0x01
00000e43: DUP1
00000e44: SLOAD
00000e45: PUSH1 0xff
00000e47: NOT
00000e48: AND
00000e49: DUP2
00000e4a: OR
00000e4b: SWAP1
00000e4c: SSTORE
00000e4d: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258
00000e6e: CALLER
00000e6f: PUSH2 0x0d90
00000e72: JUMP
00000e73: JUMPDEST
00000e74: PUSH1 0x40
00000e76: MLOAD
00000e77: PUSH4 0x70a08231
00000e7c: PUSH1 0xe0
00000e7e: SHL
00000e7f: DUP2
00000e80: MSTORE
00000e81: ADDRESS
00000e82: PUSH1 0x04
00000e84: DUP3
00000e85: ADD
00000e86: MSTORE
00000e87: PUSH1 0x00
00000e89: SWAP1
00000e8a: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00000eab: PUSH1 0x01
00000ead: PUSH1 0x01
00000eaf: PUSH1 0xa0
00000eb1: SHL
00000eb2: SUB
00000eb3: AND
00000eb4: SWAP1
00000eb5: PUSH4 0x70a08231
00000eba: SWAP1
00000ebb: PUSH1 0x24
00000ebd: ADD
00000ebe: PUSH1 0x20
00000ec0: PUSH1 0x40
00000ec2: MLOAD
00000ec3: DUP1
00000ec4: DUP4
00000ec5: SUB
00000ec6: DUP2
00000ec7: DUP7
00000ec8: GAS
00000ec9: STATICCALL
00000eca: ISZERO
00000ecb: DUP1
00000ecc: ISZERO
00000ecd: PUSH2 0x0eda
00000ed0: JUMPI
00000ed1: RETURNDATASIZE
00000ed2: PUSH1 0x00
00000ed4: DUP1
00000ed5: RETURNDATACOPY
00000ed6: RETURNDATASIZE
00000ed7: PUSH1 0x00
00000ed9: REVERT
00000eda: JUMPDEST
00000edb: POP
00000edc: POP
00000edd: POP
00000ede: POP
00000edf: PUSH1 0x40
00000ee1: MLOAD
00000ee2: RETURNDATASIZE
00000ee3: PUSH1 0x1f
00000ee5: NOT
00000ee6: PUSH1 0x1f
00000ee8: DUP3
00000ee9: ADD
00000eea: AND
00000eeb: DUP3
00000eec: ADD
00000eed: DUP1
00000eee: PUSH1 0x40
00000ef0: MSTORE
00000ef1: POP
00000ef2: DUP2
00000ef3: ADD
00000ef4: SWAP1
00000ef5: PUSH2 0x0efe
00000ef8: SWAP2
00000ef9: SWAP1
00000efa: PUSH2 0x171b
00000efd: JUMP
00000efe: JUMPDEST
00000eff: PUSH1 0x40
00000f01: MLOAD
00000f02: PUSH4 0x23b872dd
00000f07: PUSH1 0xe0
00000f09: SHL
00000f0a: DUP2
00000f0b: MSTORE
00000f0c: PUSH1 0x01
00000f0e: PUSH1 0x01
00000f10: PUSH1 0xa0
00000f12: SHL
00000f13: SUB
00000f14: DUP7
00000f15: DUP2
00000f16: AND
00000f17: PUSH1 0x04
00000f19: DUP4
00000f1a: ADD
00000f1b: MSTORE
00000f1c: ADDRESS
00000f1d: PUSH1 0x24
00000f1f: DUP4
00000f20: ADD
00000f21: MSTORE
00000f22: PUSH1 0x44
00000f24: DUP3
00000f25: ADD
00000f26: DUP6
00000f27: SWAP1
00000f28: MSTORE
00000f29: SWAP2
00000f2a: SWAP3
00000f2b: POP
00000f2c: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00000f4d: SWAP1
00000f4e: SWAP2
00000f4f: AND
00000f50: SWAP1
00000f51: PUSH4 0x23b872dd
00000f56: SWAP1
00000f57: PUSH1 0x64
00000f59: ADD
00000f5a: PUSH1 0x20
00000f5c: PUSH1 0x40
00000f5e: MLOAD
00000f5f: DUP1
00000f60: DUP4
00000f61: SUB
00000f62: DUP2
00000f63: PUSH1 0x00
00000f65: DUP8
00000f66: GAS
00000f67: CALL
00000f68: ISZERO
00000f69: DUP1
00000f6a: ISZERO
00000f6b: PUSH2 0x0f78
00000f6e: JUMPI
00000f6f: RETURNDATASIZE
00000f70: PUSH1 0x00
00000f72: DUP1
00000f73: RETURNDATACOPY
00000f74: RETURNDATASIZE
00000f75: PUSH1 0x00
00000f77: REVERT
00000f78: JUMPDEST
00000f79: POP
00000f7a: POP
00000f7b: POP
00000f7c: POP
00000f7d: PUSH1 0x40
00000f7f: MLOAD
00000f80: RETURNDATASIZE
00000f81: PUSH1 0x1f
00000f83: NOT
00000f84: PUSH1 0x1f
00000f86: DUP3
00000f87: ADD
00000f88: AND
00000f89: DUP3
00000f8a: ADD
00000f8b: DUP1
00000f8c: PUSH1 0x40
00000f8e: MSTORE
00000f8f: POP
00000f90: DUP2
00000f91: ADD
00000f92: SWAP1
00000f93: PUSH2 0x0f9c
00000f96: SWAP2
00000f97: SWAP1
00000f98: PUSH2 0x1589
00000f9b: JUMP
00000f9c: JUMPDEST
00000f9d: POP
00000f9e: PUSH1 0x40
00000fa0: MLOAD
00000fa1: PUSH4 0x70a08231
00000fa6: PUSH1 0xe0
00000fa8: SHL
00000fa9: DUP2
00000faa: MSTORE
00000fab: ADDRESS
00000fac: PUSH1 0x04
00000fae: DUP3
00000faf: ADD
00000fb0: MSTORE
00000fb1: PUSH1 0x00
00000fb3: SWAP1
00000fb4: DUP3
00000fb5: SWAP1
00000fb6: PUSH1 0x01
00000fb8: PUSH1 0x01
00000fba: PUSH1 0xa0
00000fbc: SHL
00000fbd: SUB
00000fbe: PUSH32 0x000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
00000fdf: AND
00000fe0: SWAP1
00000fe1: PUSH4 0x70a08231
00000fe6: SWAP1
00000fe7: PUSH1 0x24
00000fe9: ADD
00000fea: PUSH1 0x20
00000fec: PUSH1 0x40
00000fee: MLOAD
00000fef: DUP1
00000ff0: DUP4
00000ff1: SUB
00000ff2: DUP2
00000ff3: DUP7
00000ff4: GAS
00000ff5: STATICCALL
00000ff6: ISZERO
00000ff7: DUP1
00000ff8: ISZERO
00000ff9: PUSH2 0x1006
00000ffc: JUMPI
00000ffd: RETURNDATASIZE
00000ffe: PUSH1 0x00
00001000: DUP1
00001001: RETURNDATACOPY
00001002: RETURNDATASIZE
00001003: PUSH1 0x00
00001005: REVERT
00001006: JUMPDEST
00001007: POP
00001008: POP
00001009: POP
0000100a: POP
0000100b: PUSH1 0x40
0000100d: MLOAD
0000100e: RETURNDATASIZE
0000100f: PUSH1 0x1f
00001011: NOT
00001012: PUSH1 0x1f
00001014: DUP3
00001015: ADD
00001016: AND
00001017: DUP3
00001018: ADD
00001019: DUP1
0000101a: PUSH1 0x40
0000101c: MSTORE
0000101d: POP
0000101e: DUP2
0000101f: ADD
00001020: SWAP1
00001021: PUSH2 0x102a
00001024: SWAP2
00001025: SWAP1
00001026: PUSH2 0x171b
00001029: JUMP
0000102a: JUMPDEST
0000102b: PUSH2 0x1034
0000102e: SWAP2
0000102f: SWAP1
00001030: PUSH2 0x1734
00001033: JUMP
00001034: JUMPDEST
00001035: SWAP1
00001036: POP
00001037: PUSH1 0x01
00001039: PUSH1 0x01
0000103b: PUSH1 0xa0
0000103d: SHL
0000103e: SUB
0000103f: PUSH32 0x00000000000000000000000009d4214c03d01f49544c0448dbe3a27f768f2b34
00001060: AND
00001061: PUSH4 0x40c10f19
00001066: DUP6
00001067: PUSH2 0x1091
0000106a: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000006
0000108b: PUSH1 0x12
0000108d: PUSH2 0x15f8
00001090: JUMP
00001091: JUMPDEST
00001092: PUSH2 0x109c
00001095: SWAP1
00001096: PUSH1 0x0a
00001098: PUSH2 0x16f5
0000109b: JUMP
0000109c: JUMPDEST
0000109d: PUSH2 0x10a6
000010a0: SWAP1
000010a1: DUP6
000010a2: PUSH2 0x1704
000010a5: JUMP
000010a6: JUMPDEST
000010a7: PUSH1 0x40
000010a9: MLOAD
000010aa: PUSH1 0x01
000010ac: PUSH1 0x01
000010ae: PUSH1 0xe0
000010b0: SHL
000010b1: SUB
000010b2: NOT
000010b3: PUSH1 0xe0
000010b5: DUP6
000010b6: SWAP1
000010b7: SHL
000010b8: AND
000010b9: DUP2
000010ba: MSTORE
000010bb: PUSH1 0x01
000010bd: PUSH1 0x01
000010bf: PUSH1 0xa0
000010c1: SHL
000010c2: SUB
000010c3: SWAP1
000010c4: SWAP3
000010c5: AND
000010c6: PUSH1 0x04
000010c8: DUP4
000010c9: ADD
000010ca: MSTORE
000010cb: PUSH1 0x24
000010cd: DUP3
000010ce: ADD
000010cf: MSTORE
000010d0: PUSH1 0x44
000010d2: ADD
000010d3: PUSH1 0x00
000010d5: PUSH1 0x40
000010d7: MLOAD
000010d8: DUP1
000010d9: DUP4
000010da: SUB
000010db: DUP2
000010dc: PUSH1 0x00
000010de: DUP8
000010df: DUP1
000010e0: EXTCODESIZE
000010e1: ISZERO
000010e2: DUP1
000010e3: ISZERO
000010e4: PUSH2 0x10ec
000010e7: JUMPI
000010e8: PUSH1 0x00
000010ea: DUP1
000010eb: REVERT
000010ec: JUMPDEST
000010ed: POP
000010ee: GAS
000010ef: CALL
000010f0: ISZERO
000010f1: DUP1
000010f2: ISZERO
000010f3: PUSH2 0x1100
000010f6: JUMPI
000010f7: RETURNDATASIZE
000010f8: PUSH1 0x00
000010fa: DUP1
000010fb: RETURNDATACOPY
000010fc: RETURNDATASIZE
000010fd: PUSH1 0x00
000010ff: REVERT
00001100: JUMPDEST
00001101: POP
00001102: POP
00001103: POP
00001104: POP
00001105: POP
00001106: POP
00001107: POP
00001108: POP
00001109: POP
0000110a: JUMP
0000110b: JUMPDEST
0000110c: PUSH1 0x00
0000110e: PUSH2 0x0542
00001111: PUSH2 0x1118
00001114: PUSH2 0x0dad
00001117: JUMP
00001118: JUMPDEST
00001119: PUSH2 0x1143
0000111c: JUMP
0000111d: JUMPDEST
0000111e: PUSH1 0x00
00001120: PUSH3 0x0f4240
00001124: PUSH2 0x112c
00001127: DUP4
00001128: PUSH2 0x1143
0000112b: JUMP
0000112c: JUMPDEST
0000112d: PUSH1 0x02
0000112f: SLOAD
00001130: PUSH2 0x1139
00001133: SWAP2
00001134: SWAP1
00001135: PUSH2 0x1704
00001138: JUMP
00001139: JUMPDEST
0000113a: PUSH2 0x047c
0000113d: SWAP2
0000113e: SWAP1
0000113f: PUSH2 0x1747
00001142: JUMP
00001143: JUMPDEST
00001144: PUSH1 0x00
00001146: PUSH4 0x05f5e100
0000114b: DUP3
0000114c: PUSH2 0x1153
0000114f: PUSH2 0x120e
00001152: JUMP
00001153: JUMPDEST
00001154: PUSH2 0x115d
00001157: SWAP2
00001158: SWAP1
00001159: PUSH2 0x1704
0000115c: JUMP
0000115d: JUMPDEST
0000115e: PUSH2 0x1139
00001161: SWAP1
00001162: PUSH5 0xe8d4a51000
00001168: PUSH2 0x1704
0000116b: JUMP
0000116c: JUMPDEST
0000116d: PUSH2 0x1176
00001170: DUP3
00001171: DUP3
00001172: PUSH2 0x084f
00001175: JUMP
00001176: JUMPDEST
00001177: PUSH2 0x06ee
0000117a: JUMPI
0000117b: PUSH2 0x1183
0000117e: DUP2
0000117f: PUSH2 0x12ac
00001182: JUMP
00001183: JUMPDEST
00001184: PUSH2 0x118e
00001187: DUP4
00001188: PUSH1 0x20
0000118a: PUSH2 0x12be
0000118d: JUMP
0000118e: JUMPDEST
0000118f: PUSH1 0x40
00001191: MLOAD
00001192: PUSH1 0x20
00001194: ADD
00001195: PUSH2 0x119f
00001198: SWAP3
00001199: SWAP2
0000119a: SWAP1
0000119b: PUSH2 0x178d
0000119e: JUMP
0000119f: JUMPDEST
000011a0: PUSH1 0x40
000011a2: DUP1
000011a3: MLOAD
000011a4: PUSH1 0x1f
000011a6: NOT
000011a7: DUP2
000011a8: DUP5
000011a9: SUB
000011aa: ADD
000011ab: DUP2
000011ac: MSTORE
000011ad: SWAP1
000011ae: DUP3
000011af: SWAP1
000011b0: MSTORE
000011b1: PUSH3 0x461bcd
000011b5: PUSH1 0xe5
000011b7: SHL
000011b8: DUP3
000011b9: MSTORE
000011ba: PUSH2 0x06db
000011bd: SWAP2
000011be: PUSH1 0x04
000011c0: ADD
000011c1: PUSH2 0x1802
000011c4: JUMP
000011c5: JUMPDEST
000011c6: PUSH1 0x01
000011c8: SLOAD
000011c9: PUSH1 0xff
000011cb: AND
000011cc: PUSH2 0x0aed
000011cf: JUMPI
000011d0: PUSH1 0x40
000011d2: MLOAD
000011d3: PUSH3 0x461bcd
000011d7: PUSH1 0xe5
000011d9: SHL
000011da: DUP2
000011db: MSTORE
000011dc: PUSH1 0x20
000011de: PUSH1 0x04
000011e0: DUP3
000011e1: ADD
000011e2: MSTORE
000011e3: PUSH1 0x14
000011e5: PUSH1 0x24
000011e7: DUP3
000011e8: ADD
000011e9: MSTORE
000011ea: PUSH20 0x14185d5cd8589b194e881b9bdd081c185d5cd959
000011ff: PUSH1 0x62
00001201: SHL
00001202: PUSH1 0x44
00001204: DUP3
00001205: ADD
00001206: MSTORE
00001207: PUSH1 0x64
00001209: ADD
0000120a: PUSH2 0x06db
0000120d: JUMP
0000120e: JUMPDEST
0000120f: PUSH1 0x00
00001211: DUP1
00001212: PUSH32 0x0000000000000000000000008fffffd4afb6115b954bd326cbe7b4ba576818f6
00001233: PUSH1 0x01
00001235: PUSH1 0x01
00001237: PUSH1 0xa0
00001239: SHL
0000123a: SUB
0000123b: AND
0000123c: PUSH4 0x50d25bcd
00001241: PUSH1 0x40
00001243: MLOAD
00001244: DUP2
00001245: PUSH4 0xffffffff
0000124a: AND
0000124b: PUSH1 0xe0
0000124d: SHL
0000124e: DUP2
0000124f: MSTORE
00001250: PUSH1 0x04
00001252: ADD
00001253: PUSH1 0x20
00001255: PUSH1 0x40
00001257: MLOAD
00001258: DUP1
00001259: DUP4
0000125a: SUB
0000125b: DUP2
0000125c: DUP7
0000125d: GAS
0000125e: STATICCALL
0000125f: ISZERO
00001260: DUP1
00001261: ISZERO
00001262: PUSH2 0x126f
00001265: JUMPI
00001266: RETURNDATASIZE
00001267: PUSH1 0x00
00001269: DUP1
0000126a: RETURNDATACOPY
0000126b: RETURNDATASIZE
0000126c: PUSH1 0x00
0000126e: REVERT
0000126f: JUMPDEST
00001270: POP
00001271: POP
00001272: POP
00001273: POP
00001274: PUSH1 0x40
00001276: MLOAD
00001277: RETURNDATASIZE
00001278: PUSH1 0x1f
0000127a: NOT
0000127b: PUSH1 0x1f
0000127d: DUP3
0000127e: ADD
0000127f: AND
00001280: DUP3
00001281: ADD
00001282: DUP1
00001283: PUSH1 0x40
00001285: MSTORE
00001286: POP
00001287: DUP2
00001288: ADD
00001289: SWAP1
0000128a: PUSH2 0x1293
0000128d: SWAP2
0000128e: SWAP1
0000128f: PUSH2 0x171b
00001292: JUMP
00001293: JUMPDEST
00001294: SWAP1
00001295: POP
00001296: PUSH1 0x00
00001298: DUP2
00001299: SGT
0000129a: PUSH2 0x12a4
0000129d: JUMPI
0000129e: PUSH1 0x00
000012a0: PUSH2 0x12a6
000012a3: JUMP
000012a4: JUMPDEST
000012a5: DUP1
000012a6: JUMPDEST
000012a7: SWAP2
000012a8: POP
000012a9: POP
000012aa: SWAP1
000012ab: JUMP
000012ac: JUMPDEST
000012ad: PUSH1 0x60
000012af: PUSH2 0x047c
000012b2: PUSH1 0x01
000012b4: PUSH1 0x01
000012b6: PUSH1 0xa0
000012b8: SHL
000012b9: SUB
000012ba: DUP4
000012bb: AND
000012bc: PUSH1 0x14
000012be: JUMPDEST
000012bf: PUSH1 0x60
000012c1: PUSH1 0x00
000012c3: PUSH2 0x12cd
000012c6: DUP4
000012c7: PUSH1 0x02
000012c9: PUSH2 0x1704
000012cc: JUMP
000012cd: JUMPDEST
000012ce: PUSH2 0x12d8
000012d1: SWAP1
000012d2: PUSH1 0x02
000012d4: PUSH2 0x1835
000012d7: JUMP
000012d8: JUMPDEST
000012d9: PUSH8 0xffffffffffffffff
000012e2: DUP2
000012e3: GT
000012e4: ISZERO
000012e5: PUSH2 0x12f0
000012e8: JUMPI
000012e9: PUSH2 0x12f0
000012ec: PUSH2 0x1848
000012ef: JUMP
000012f0: JUMPDEST
000012f1: PUSH1 0x40
000012f3: MLOAD
000012f4: SWAP1
000012f5: DUP1
000012f6: DUP3
000012f7: MSTORE
000012f8: DUP1
000012f9: PUSH1 0x1f
000012fb: ADD
000012fc: PUSH1 0x1f
000012fe: NOT
000012ff: AND
00001300: PUSH1 0x20
00001302: ADD
00001303: DUP3
00001304: ADD
00001305: PUSH1 0x40
00001307: MSTORE
00001308: DUP1
00001309: ISZERO
0000130a: PUSH2 0x131a
0000130d: JUMPI
0000130e: PUSH1 0x20
00001310: DUP3
00001311: ADD
00001312: DUP2
00001313: DUP1
00001314: CALLDATASIZE
00001315: DUP4
00001316: CALLDATACOPY
00001317: ADD
00001318: SWAP1
00001319: POP
0000131a: JUMPDEST
0000131b: POP
0000131c: SWAP1
0000131d: POP
0000131e: PUSH1 0x03
00001320: PUSH1 0xfc
00001322: SHL
00001323: DUP2
00001324: PUSH1 0x00
00001326: DUP2
00001327: MLOAD
00001328: DUP2
00001329: LT
0000132a: PUSH2 0x1335
0000132d: JUMPI
0000132e: PUSH2 0x1335
00001331: PUSH2 0x185e
00001334: JUMP
00001335: JUMPDEST
00001336: PUSH1 0x20
00001338: ADD
00001339: ADD
0000133a: SWAP1
0000133b: PUSH1 0x01
0000133d: PUSH1 0x01
0000133f: PUSH1 0xf8
00001341: SHL
00001342: SUB
00001343: NOT
00001344: AND
00001345: SWAP1
00001346: DUP2
00001347: PUSH1 0x00
00001349: BYTE
0000134a: SWAP1
0000134b: MSTORE8
0000134c: POP
0000134d: PUSH1 0x0f
0000134f: PUSH1 0xfb
00001351: SHL
00001352: DUP2
00001353: PUSH1 0x01
00001355: DUP2
00001356: MLOAD
00001357: DUP2
00001358: LT
00001359: PUSH2 0x1364
0000135c: JUMPI
0000135d: PUSH2 0x1364
00001360: PUSH2 0x185e
00001363: JUMP
00001364: JUMPDEST
00001365: PUSH1 0x20
00001367: ADD
00001368: ADD
00001369: SWAP1
0000136a: PUSH1 0x01
0000136c: PUSH1 0x01
0000136e: PUSH1 0xf8
00001370: SHL
00001371: SUB
00001372: NOT
00001373: AND
00001374: SWAP1
00001375: DUP2
00001376: PUSH1 0x00
00001378: BYTE
00001379: SWAP1
0000137a: MSTORE8
0000137b: POP
0000137c: PUSH1 0x00
0000137e: PUSH2 0x1388
00001381: DUP5
00001382: PUSH1 0x02
00001384: PUSH2 0x1704
00001387: JUMP
00001388: JUMPDEST
00001389: PUSH2 0x1393
0000138c: SWAP1
0000138d: PUSH1 0x01
0000138f: PUSH2 0x1835
00001392: JUMP
00001393: JUMPDEST
00001394: SWAP1
00001395: POP
00001396: JUMPDEST
00001397: PUSH1 0x01
00001399: DUP2
0000139a: GT
0000139b: ISZERO
0000139c: PUSH2 0x140b
0000139f: JUMPI
000013a0: PUSH16 0x181899199a1a9b1b9c1cb0b131b232b3
000013b1: PUSH1 0x81
000013b3: SHL
000013b4: DUP6
000013b5: PUSH1 0x0f
000013b7: AND
000013b8: PUSH1 0x10
000013ba: DUP2
000013bb: LT
000013bc: PUSH2 0x13c7
000013bf: JUMPI
000013c0: PUSH2 0x13c7
000013c3: PUSH2 0x185e
000013c6: JUMP
000013c7: JUMPDEST
000013c8: BYTE
000013c9: PUSH1 0xf8
000013cb: SHL
000013cc: DUP3
000013cd: DUP3
000013ce: DUP2
000013cf: MLOAD
000013d0: DUP2
000013d1: LT
000013d2: PUSH2 0x13dd
000013d5: JUMPI
000013d6: PUSH2 0x13dd
000013d9: PUSH2 0x185e
000013dc: JUMP
000013dd: JUMPDEST
000013de: PUSH1 0x20
000013e0: ADD
000013e1: ADD
000013e2: SWAP1
000013e3: PUSH1 0x01
000013e5: PUSH1 0x01
000013e7: PUSH1 0xf8
000013e9: SHL
000013ea: SUB
000013eb: NOT
000013ec: AND
000013ed: SWAP1
000013ee: DUP2
000013ef: PUSH1 0x00
000013f1: BYTE
000013f2: SWAP1
000013f3: MSTORE8
000013f4: POP
000013f5: PUSH1 0x04
000013f7: SWAP5
000013f8: SWAP1
000013f9: SWAP5
000013fa: SHR
000013fb: SWAP4
000013fc: PUSH2 0x1404
000013ff: DUP2
00001400: PUSH2 0x1874
00001403: JUMP
00001404: JUMPDEST
00001405: SWAP1
00001406: POP
00001407: PUSH2 0x1396
0000140a: JUMP
0000140b: JUMPDEST
0000140c: POP
0000140d: DUP4
0000140e: ISZERO
0000140f: PUSH2 0x145a
00001412: JUMPI
00001413: PUSH1 0x40
00001415: MLOAD
00001416: PUSH3 0x461bcd
0000141a: PUSH1 0xe5
0000141c: SHL
0000141d: DUP2
0000141e: MSTORE
0000141f: PUSH1 0x20
00001421: PUSH1 0x04
00001423: DUP3
00001424: ADD
00001425: DUP2
00001426: SWAP1
00001427: MSTORE
00001428: PUSH1 0x24
0000142a: DUP3
0000142b: ADD
0000142c: MSTORE
0000142d: PUSH32 0x537472696e67733a20686578206c656e67746820696e73756666696369656e74
0000144e: PUSH1 0x44
00001450: DUP3
00001451: ADD
00001452: MSTORE
00001453: PUSH1 0x64
00001455: ADD
00001456: PUSH2 0x06db
00001459: JUMP
0000145a: JUMPDEST
0000145b: SWAP4
0000145c: SWAP3
0000145d: POP
0000145e: POP
0000145f: POP
00001460: JUMP
00001461: JUMPDEST
00001462: PUSH1 0x00
00001464: PUSH1 0x20
00001466: DUP3
00001467: DUP5
00001468: SUB
00001469: SLT
0000146a: ISZERO
0000146b: PUSH2 0x1473
0000146e: JUMPI
0000146f: PUSH1 0x00
00001471: DUP1
00001472: REVERT
00001473: JUMPDEST
00001474: DUP2
00001475: CALLDATALOAD
00001476: PUSH1 0x01
00001478: PUSH1 0x01
0000147a: PUSH1 0xe0
0000147c: SHL
0000147d: SUB
0000147e: NOT
0000147f: DUP2
00001480: AND
00001481: DUP2
00001482: EQ
00001483: PUSH2 0x145a
00001486: JUMPI
00001487: PUSH1 0x00
00001489: DUP1
0000148a: REVERT
0000148b: JUMPDEST
0000148c: DUP1
0000148d: CALLDATALOAD
0000148e: PUSH1 0x01
00001490: PUSH1 0x01
00001492: PUSH1 0xa0
00001494: SHL
00001495: SUB
00001496: DUP2
00001497: AND
00001498: DUP2
00001499: EQ
0000149a: PUSH2 0x14a2
0000149d: JUMPI
0000149e: PUSH1 0x00
000014a0: DUP1
000014a1: REVERT
000014a2: JUMPDEST
000014a3: SWAP2
000014a4: SWAP1
000014a5: POP
000014a6: JUMP
000014a7: JUMPDEST
000014a8: PUSH1 0x00
000014aa: DUP1
000014ab: PUSH1 0x40
000014ad: DUP4
000014ae: DUP6
000014af: SUB
000014b0: SLT
000014b1: ISZERO
000014b2: PUSH2 0x14ba
000014b5: JUMPI
000014b6: PUSH1 0x00
000014b8: DUP1
000014b9: REVERT
000014ba: JUMPDEST
000014bb: PUSH2 0x14c3
000014be: DUP4
000014bf: PUSH2 0x148b
000014c2: JUMP
000014c3: JUMPDEST
000014c4: SWAP5
000014c5: PUSH1 0x20
000014c7: SWAP4
000014c8: SWAP1
000014c9: SWAP4
000014ca: ADD
000014cb: CALLDATALOAD
000014cc: SWAP4
000014cd: POP
000014ce: POP
000014cf: POP
000014d0: JUMP
000014d1: JUMPDEST
000014d2: PUSH1 0x00
000014d4: PUSH1 0x20
000014d6: DUP3
000014d7: DUP5
000014d8: SUB
000014d9: SLT
000014da: ISZERO
000014db: PUSH2 0x14e3
000014de: JUMPI
000014df: PUSH1 0x00
000014e1: DUP1
000014e2: REVERT
000014e3: JUMPDEST
000014e4: POP
000014e5: CALLDATALOAD
000014e6: SWAP2
000014e7: SWAP1
000014e8: POP
000014e9: JUMP
000014ea: JUMPDEST
000014eb: PUSH1 0x00
000014ed: DUP1
000014ee: PUSH1 0x40
000014f0: DUP4
000014f1: DUP6
000014f2: SUB
000014f3: SLT
000014f4: ISZERO
000014f5: PUSH2 0x14fd
000014f8: JUMPI
000014f9: PUSH1 0x00
000014fb: DUP1
000014fc: REVERT
000014fd: JUMPDEST
000014fe: DUP3
000014ff: CALLDATALOAD
00001500: SWAP2
00001501: POP
00001502: PUSH2 0x150d
00001505: PUSH1 0x20
00001507: DUP5
00001508: ADD
00001509: PUSH2 0x148b
0000150c: JUMP
0000150d: JUMPDEST
0000150e: SWAP1
0000150f: POP
00001510: SWAP3
00001511: POP
00001512: SWAP3
00001513: SWAP1
00001514: POP
00001515: JUMP
00001516: JUMPDEST
00001517: PUSH1 0x00
00001519: DUP1
0000151a: PUSH1 0x00
0000151c: PUSH1 0x60
0000151e: DUP5
0000151f: DUP7
00001520: SUB
00001521: SLT
00001522: ISZERO
00001523: PUSH2 0x152b
00001526: JUMPI
00001527: PUSH1 0x00
00001529: DUP1
0000152a: REVERT
0000152b: JUMPDEST
0000152c: PUSH2 0x1534
0000152f: DUP5
00001530: PUSH2 0x148b
00001533: JUMP
00001534: JUMPDEST
00001535: SWAP3
00001536: POP
00001537: PUSH2 0x1542
0000153a: PUSH1 0x20
0000153c: DUP6
0000153d: ADD
0000153e: PUSH2 0x148b
00001541: JUMP
00001542: JUMPDEST
00001543: SWAP2
00001544: POP
00001545: PUSH1 0x40
00001547: DUP5
00001548: ADD
00001549: CALLDATALOAD
0000154a: SWAP1
0000154b: POP
0000154c: SWAP3
0000154d: POP
0000154e: SWAP3
0000154f: POP
00001550: SWAP3
00001551: JUMP
00001552: JUMPDEST
00001553: PUSH1 0x20
00001555: DUP1
00001556: DUP3
00001557: MSTORE
00001558: PUSH1 0x1f
0000155a: SWAP1
0000155b: DUP3
0000155c: ADD
0000155d: MSTORE
0000155e: PUSH32 0x7065672e73746162696c6974792e6d6f64756c652e636f6e74726f6c6c657200
0000157f: PUSH1 0x40
00001581: DUP3
00001582: ADD
00001583: MSTORE
00001584: PUSH1 0x60
00001586: ADD
00001587: SWAP1
00001588: JUMP
00001589: JUMPDEST
0000158a: PUSH1 0x00
0000158c: PUSH1 0x20
0000158e: DUP3
0000158f: DUP5
00001590: SUB
00001591: SLT
00001592: ISZERO
00001593: PUSH2 0x159b
00001596: JUMPI
00001597: PUSH1 0x00
00001599: DUP1
0000159a: REVERT
0000159b: JUMPDEST
0000159c: DUP2
0000159d: MLOAD
0000159e: DUP1
0000159f: ISZERO
000015a0: ISZERO
000015a1: DUP2
000015a2: EQ
000015a3: PUSH2 0x145a
000015a6: JUMPI
000015a7: PUSH1 0x00
000015a9: DUP1
000015aa: REVERT
000015ab: JUMPDEST
000015ac: PUSH1 0x20
000015ae: DUP1
000015af: DUP3
000015b0: MSTORE
000015b1: PUSH1 0x1f
000015b3: SWAP1
000015b4: DUP3
000015b5: ADD
000015b6: MSTORE
000015b7: PUSH32 0x7065672e73746162696c6974792e6d6f64756c652e73757065727669736f7200
000015d8: PUSH1 0x40
000015da: DUP3
000015db: ADD
000015dc: MSTORE
000015dd: PUSH1 0x60
000015df: ADD
000015e0: SWAP1
000015e1: JUMP
000015e2: JUMPDEST
000015e3: PUSH4 0x4e487b71
000015e8: PUSH1 0xe0
000015ea: SHL
000015eb: PUSH1 0x00
000015ed: MSTORE
000015ee: PUSH1 0x11
000015f0: PUSH1 0x04
000015f2: MSTORE
000015f3: PUSH1 0x24
000015f5: PUSH1 0x00
000015f7: REVERT
000015f8: JUMPDEST
000015f9: PUSH1 0xff
000015fb: DUP3
000015fc: DUP2
000015fd: AND
000015fe: DUP3
000015ff: DUP3
00001600: AND
00001601: SUB
00001602: SWAP1
00001603: DUP2
00001604: GT
00001605: ISZERO
00001606: PUSH2 0x047c
00001609: JUMPI
0000160a: PUSH2 0x047c
0000160d: PUSH2 0x15e2
00001610: JUMP
00001611: JUMPDEST
00001612: PUSH1 0x01
00001614: DUP2
00001615: DUP2
00001616: JUMPDEST
00001617: DUP1
00001618: DUP6
00001619: GT
0000161a: ISZERO
0000161b: PUSH2 0x164c
0000161e: JUMPI
0000161f: DUP2
00001620: PUSH1 0x00
00001622: NOT
00001623: DIV
00001624: DUP3
00001625: GT
00001626: ISZERO
00001627: PUSH2 0x1632
0000162a: JUMPI
0000162b: PUSH2 0x1632
0000162e: PUSH2 0x15e2
00001631: JUMP
00001632: JUMPDEST
00001633: DUP1
00001634: DUP6
00001635: AND
00001636: ISZERO
00001637: PUSH2 0x163f
0000163a: JUMPI
0000163b: SWAP2
0000163c: DUP2
0000163d: MUL
0000163e: SWAP2
0000163f: JUMPDEST
00001640: SWAP4
00001641: DUP5
00001642: SHR
00001643: SWAP4
00001644: SWAP1
00001645: DUP1
00001646: MUL
00001647: SWAP1
00001648: PUSH2 0x1616
0000164b: JUMP
0000164c: JUMPDEST
0000164d: POP
0000164e: SWAP3
0000164f: POP
00001650: SWAP3
00001651: SWAP1
00001652: POP
00001653: JUMP
00001654: JUMPDEST
00001655: PUSH1 0x00
00001657: DUP3
00001658: PUSH2 0x1663
0000165b: JUMPI
0000165c: POP
0000165d: PUSH1 0x01
0000165f: PUSH2 0x047c
00001662: JUMP
00001663: JUMPDEST
00001664: DUP2
00001665: PUSH2 0x1670
00001668: JUMPI
00001669: POP
0000166a: PUSH1 0x00
0000166c: PUSH2 0x047c
0000166f: JUMP
00001670: JUMPDEST
00001671: DUP2
00001672: PUSH1 0x01
00001674: DUP2
00001675: EQ
00001676: PUSH2 0x1686
00001679: JUMPI
0000167a: PUSH1 0x02
0000167c: DUP2
0000167d: EQ
0000167e: PUSH2 0x1690
00001681: JUMPI
00001682: PUSH2 0x16ac
00001685: JUMP
00001686: JUMPDEST
00001687: PUSH1 0x01
00001689: SWAP2
0000168a: POP
0000168b: POP
0000168c: PUSH2 0x047c
0000168f: JUMP
00001690: JUMPDEST
00001691: PUSH1 0xff
00001693: DUP5
00001694: GT
00001695: ISZERO
00001696: PUSH2 0x16a1
00001699: JUMPI
0000169a: PUSH2 0x16a1
0000169d: PUSH2 0x15e2
000016a0: JUMP
000016a1: JUMPDEST
000016a2: POP
000016a3: POP
000016a4: PUSH1 0x01
000016a6: DUP3
000016a7: SHL
000016a8: PUSH2 0x047c
000016ab: JUMP
000016ac: JUMPDEST
000016ad: POP
000016ae: PUSH1 0x20
000016b0: DUP4
000016b1: LT
000016b2: PUSH2 0x0133
000016b5: DUP4
000016b6: LT
000016b7: AND
000016b8: PUSH1 0x4e
000016ba: DUP5
000016bb: LT
000016bc: PUSH1 0x0b
000016be: DUP5
000016bf: LT
000016c0: AND
000016c1: OR
000016c2: ISZERO
000016c3: PUSH2 0x16cf
000016c6: JUMPI
000016c7: POP
000016c8: DUP2
000016c9: DUP2
000016ca: EXP
000016cb: PUSH2 0x047c
000016ce: JUMP
000016cf: JUMPDEST
000016d0: PUSH2 0x16d9
000016d3: DUP4
000016d4: DUP4
000016d5: PUSH2 0x1611
000016d8: JUMP
000016d9: JUMPDEST
000016da: DUP1
000016db: PUSH1 0x00
000016dd: NOT
000016de: DIV
000016df: DUP3
000016e0: GT
000016e1: ISZERO
000016e2: PUSH2 0x16ed
000016e5: JUMPI
000016e6: PUSH2 0x16ed
000016e9: PUSH2 0x15e2
000016ec: JUMP
000016ed: JUMPDEST
000016ee: MUL
000016ef: SWAP4
000016f0: SWAP3
000016f1: POP
000016f2: POP
000016f3: POP
000016f4: JUMP
000016f5: JUMPDEST
000016f6: PUSH1 0x00
000016f8: PUSH2 0x145a
000016fb: PUSH1 0xff
000016fd: DUP5
000016fe: AND
000016ff: DUP4
00001700: PUSH2 0x1654
00001703: JUMP
00001704: JUMPDEST
00001705: DUP1
00001706: DUP3
00001707: MUL
00001708: DUP2
00001709: ISZERO
0000170a: DUP3
0000170b: DUP3
0000170c: DIV
0000170d: DUP5
0000170e: EQ
0000170f: OR
00001710: PUSH2 0x047c
00001713: JUMPI
00001714: PUSH2 0x047c
00001717: PUSH2 0x15e2
0000171a: JUMP
0000171b: JUMPDEST
0000171c: PUSH1 0x00
0000171e: PUSH1 0x20
00001720: DUP3
00001721: DUP5
00001722: SUB
00001723: SLT
00001724: ISZERO
00001725: PUSH2 0x172d
00001728: JUMPI
00001729: PUSH1 0x00
0000172b: DUP1
0000172c: REVERT
0000172d: JUMPDEST
0000172e: POP
0000172f: MLOAD
00001730: SWAP2
00001731: SWAP1
00001732: POP
00001733: JUMP
00001734: JUMPDEST
00001735: DUP2
00001736: DUP2
00001737: SUB
00001738: DUP2
00001739: DUP2
0000173a: GT
0000173b: ISZERO
0000173c: PUSH2 0x047c
0000173f: JUMPI
00001740: PUSH2 0x047c
00001743: PUSH2 0x15e2
00001746: JUMP
00001747: JUMPDEST
00001748: PUSH1 0x00
0000174a: DUP3
0000174b: PUSH2 0x1764
0000174e: JUMPI
0000174f: PUSH4 0x4e487b71
00001754: PUSH1 0xe0
00001756: SHL
00001757: PUSH1 0x00
00001759: MSTORE
0000175a: PUSH1 0x12
0000175c: PUSH1 0x04
0000175e: MSTORE
0000175f: PUSH1 0x24
00001761: PUSH1 0x00
00001763: REVERT
00001764: JUMPDEST
00001765: POP
00001766: DIV
00001767: SWAP1
00001768: JUMP
00001769: JUMPDEST
0000176a: PUSH1 0x00
0000176c: JUMPDEST
0000176d: DUP4
0000176e: DUP2
0000176f: LT
00001770: ISZERO
00001771: PUSH2 0x1784
00001774: JUMPI
00001775: DUP2
00001776: DUP2
00001777: ADD
00001778: MLOAD
00001779: DUP4
0000177a: DUP3
0000177b: ADD
0000177c: MSTORE
0000177d: PUSH1 0x20
0000177f: ADD
00001780: PUSH2 0x176c
00001783: JUMP
00001784: JUMPDEST
00001785: POP
00001786: POP
00001787: PUSH1 0x00
00001789: SWAP2
0000178a: ADD
0000178b: MSTORE
0000178c: JUMP
0000178d: JUMPDEST
0000178e: PUSH32 0x416363657373436f6e74726f6c3a206163636f756e7420000000000000000000
000017af: DUP2
000017b0: MSTORE
000017b1: PUSH1 0x00
000017b3: DUP4
000017b4: MLOAD
000017b5: PUSH2 0x17c5
000017b8: DUP2
000017b9: PUSH1 0x17
000017bb: DUP6
000017bc: ADD
000017bd: PUSH1 0x20
000017bf: DUP9
000017c0: ADD
000017c1: PUSH2 0x1769
000017c4: JUMP
000017c5: JUMPDEST
000017c6: PUSH17 0x01034b99036b4b9b9b4b733903937b6329
000017d8: PUSH1 0x7d
000017da: SHL
000017db: PUSH1 0x17
000017dd: SWAP2
000017de: DUP5
000017df: ADD
000017e0: SWAP2
000017e1: DUP3
000017e2: ADD
000017e3: MSTORE
000017e4: DUP4
000017e5: MLOAD
000017e6: PUSH2 0x17f6
000017e9: DUP2
000017ea: PUSH1 0x28
000017ec: DUP5
000017ed: ADD
000017ee: PUSH1 0x20
000017f0: DUP9
000017f1: ADD
000017f2: PUSH2 0x1769
000017f5: JUMP
000017f6: JUMPDEST
000017f7: ADD
000017f8: PUSH1 0x28
000017fa: ADD
000017fb: SWAP5
000017fc: SWAP4
000017fd: POP
000017fe: POP
000017ff: POP
00001800: POP
00001801: JUMP
00001802: JUMPDEST
00001803: PUSH1 0x20
00001805: DUP2
00001806: MSTORE
00001807: PUSH1 0x00
00001809: DUP3
0000180a: MLOAD
0000180b: DUP1
0000180c: PUSH1 0x20
0000180e: DUP5
0000180f: ADD
00001810: MSTORE
00001811: PUSH2 0x1821
00001814: DUP2
00001815: PUSH1 0x40
00001817: DUP6
00001818: ADD
00001819: PUSH1 0x20
0000181b: DUP8
0000181c: ADD
0000181d: PUSH2 0x1769
00001820: JUMP
00001821: JUMPDEST
00001822: PUSH1 0x1f
00001824: ADD
00001825: PUSH1 0x1f
00001827: NOT
00001828: AND
00001829: SWAP2
0000182a: SWAP1
0000182b: SWAP2
0000182c: ADD
0000182d: PUSH1 0x40
0000182f: ADD
00001830: SWAP3
00001831: SWAP2
00001832: POP
00001833: POP
00001834: JUMP
00001835: JUMPDEST
00001836: DUP1
00001837: DUP3
00001838: ADD
00001839: DUP1
0000183a: DUP3
0000183b: GT
0000183c: ISZERO
0000183d: PUSH2 0x047c
00001840: JUMPI
00001841: PUSH2 0x047c
00001844: PUSH2 0x15e2
00001847: JUMP
00001848: JUMPDEST
00001849: PUSH4 0x4e487b71
0000184e: PUSH1 0xe0
00001850: SHL
00001851: PUSH1 0x00
00001853: MSTORE
00001854: PUSH1 0x41
00001856: PUSH1 0x04
00001858: MSTORE
00001859: PUSH1 0x24
0000185b: PUSH1 0x00
0000185d: REVERT
0000185e: JUMPDEST
0000185f: PUSH4 0x4e487b71
00001864: PUSH1 0xe0
00001866: SHL
00001867: PUSH1 0x00
00001869: MSTORE
0000186a: PUSH1 0x32
0000186c: PUSH1 0x04
0000186e: MSTORE
0000186f: PUSH1 0x24
00001871: PUSH1 0x00
00001873: REVERT
00001874: JUMPDEST
00001875: PUSH1 0x00
00001877: DUP2
00001878: PUSH2 0x1883
0000187b: JUMPI
0000187c: PUSH2 0x1883
0000187f: PUSH2 0x15e2
00001882: JUMP
00001883: JUMPDEST
00001884: POP
00001885: PUSH1 0x00
00001887: NOT
00001888: ADD
00001889: SWAP1
0000188a: JUMP
0000188b: INVALID
0000188c: LOG2
0000188d: PUSH5 0x6970667358
00001893: UNKNOWN(0x22)
00001894: SLT
00001895: KECCAK256
00001896: UNKNOWN(0xB7)
00001897: UNKNOWN(0x29)
00001898: CREATE2
00001899: UNKNOWN(0xC9)
0000189a: CODECOPY
0000189b: SLOAD
0000189c: UNKNOWN(0xF7)
0000189d: UNKNOWN(0xEF)
0000189e: UNKNOWN(0x2C)
0000189f: PUSH4 0x72ccea30
000018a4: UNKNOWN(0xE0)
000018a5: XOR
000018a6: UNKNOWN(0x25)
000018a7: UNKNOWN(0xB8)
000018a8: TSTORE
000018a9: BLOBBASEFEE
000018aa: UNKNOWN(0xB1)
000018ab: UNKNOWN(0x29)
000018ac: UNKNOWN(0xA5)
000018ad: UNKNOWN(0x1F)
000018ae: UNKNOWN(0x4E)
000018af: EXTCODECOPY
000018b0: UNKNOWN(0xAD)
000018b1: SHL
000018b2: UNKNOWN(0xDF)
000018b3: PUSH12 0x612364736f6c634300081800
000018c0: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x8a4e42c145ecbcbc958e0ca7bb31e82fc3e1e353a26858f51c8169a231f1ce6e
call_targets: 0x4809010926aec940b550d34a46a52739f996d75d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x8a4e42c145ecbcbc958e0ca7bb31e82fc3e1e353a26858f51c8169a231f1ce6e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x4809010926aec940b550d34a46a52739f996d75d"
    ],
    "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": "0xe5118d1a",
            "selector": "0xe5118d1a",
            "calldata_variants": [
                "0xe5118d1a",
                "0xe5118d1a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe68eb989",
            "selector": "0xe68eb989",
            "calldata_variants": [
                "0xe68eb989",
                "0xe68eb9890000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee0ded62",
            "selector": "0xee0ded62",
            "calldata_variants": [
                "0xee0ded62",
                "0xee0ded620000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee0fc121",
            "selector": "0xee0fc121",
            "calldata_variants": [
                "0xee0fc121",
                "0xee0fc1210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd82933ee",
            "selector": "0xd82933ee",
            "calldata_variants": [
                "0xd82933ee",
                "0xd82933ee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xda842cb7",
            "selector": "0xda842cb7",
            "calldata_variants": [
                "0xda842cb7",
                "0xda842cb70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb006a75",
            "selector": "0xdb006a75",
            "calldata_variants": [
                "0xdb006a75",
                "0xdb006a750000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1489,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2012,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2984,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 6,
    "guards_detected": []
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x8a4e42c145ecbcbc958e0ca7bb31e82fc3e1e353a26858f51c8169a231f1ce6e
call_targets: 0x4809010926aec940b550d34a46a52739f996d75d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x8a4e42c145ecbcbc958e0ca7bb31e82fc3e1e353a26858f51c8169a231f1ce6e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x4809010926aec940b550d34a46a52739f996d75d"
    ],
    "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": "0xe5118d1a",
            "selector": "0xe5118d1a",
            "calldata_variants": [
                "0xe5118d1a",
                "0xe5118d1a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe68eb989",
            "selector": "0xe68eb989",
            "calldata_variants": [
                "0xe68eb989",
                "0xe68eb9890000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee0ded62",
            "selector": "0xee0ded62",
            "calldata_variants": [
                "0xee0ded62",
                "0xee0ded620000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee0fc121",
            "selector": "0xee0fc121",
            "calldata_variants": [
                "0xee0fc121",
                "0xee0fc1210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd82933ee",
            "selector": "0xd82933ee",
            "calldata_variants": [
                "0xd82933ee",
                "0xd82933ee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xda842cb7",
            "selector": "0xda842cb7",
            "calldata_variants": [
                "0xda842cb7",
                "0xda842cb70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb006a75",
            "selector": "0xdb006a75",
            "calldata_variants": [
                "0xdb006a75",
                "0xdb006a750000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1489,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2012,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2984,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 6,
    "guards_detected": [],
    "untrusted_call_count": 6
}
medium other codex Unchecked ERC20 return values allow silent failures and loss on redeem 75 no
view
evidence_json
{
    "evidence": "ERC20 transfer/transferFrom return values are ignored in allocate/withdraw/mint/redeem.",
    "locations": [
        "contracts/src/PegStabilityModule.sol:55",
        "contracts/src/PegStabilityModule.sol:63",
        "contracts/src/PegStabilityModule.sol:85",
        "contracts/src/PegStabilityModule.sol:112"
    ],
    "recommendation": "Use OpenZeppelin `SafeERC20` (safeTransfer/safeTransferFrom) or explicitly require the boolean return value to be true. Ensure failures revert so burns and events are rolled back.",
    "exploit_scenario": "If the underlying token returns false instead of reverting on failed transfers (or is malicious), `redeem` burns RUSD and then `underlying.transfer` can fail without reverting, leaving the user with burned RUSD and no underlying. Similar unchecked calls in `allocate`, `withdraw`, and `mint` can emit events and continue even when transfers fail, leading to inconsistent accounting and misleading logs."
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0xc533b5163aad2c3f0f0c4f8d0875ad64257d8013b140f5d605cebca559b2f875
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0xc533b5163aad2c3f0f0c4f8d0875ad64257d8013b140f5d605cebca559b2f875",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xe5118d1a",
            "selector": "0xe5118d1a",
            "calldata_variants": [
                "0xe5118d1a",
                "0xe5118d1a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe68eb989",
            "selector": "0xe68eb989",
            "calldata_variants": [
                "0xe68eb989",
                "0xe68eb9890000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee0ded62",
            "selector": "0xee0ded62",
            "calldata_variants": [
                "0xee0ded62",
                "0xee0ded620000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee0fc121",
            "selector": "0xee0fc121",
            "calldata_variants": [
                "0xee0fc121",
                "0xee0fc1210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd547741f",
            "selector": "0xd547741f",
            "calldata_variants": [
                "0xd547741f",
                "0xd547741f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd82933ee",
            "selector": "0xd82933ee",
            "calldata_variants": [
                "0xd82933ee",
                "0xd82933ee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xda842cb7",
            "selector": "0xda842cb7",
            "calldata_variants": [
                "0xda842cb7",
                "0xda842cb70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdb006a75",
            "selector": "0xdb006a75",
            "calldata_variants": [
                "0xdb006a75",
                "0xdb006a750000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 0,
    "create2_count": 1
}
low other cast Contract creation opcode present 60 no
view
evidence_json
{
    "notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
    "create_count": 0,
    "create2_count": 1
}