bda9f9dc-1008-4ba4-9734-24de3e36a576
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 |
|---|---|---|---|---|
| 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 |
No slither job recorded yet.
[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"]}]}
{
"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
}
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
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_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 |
viewtrace_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 | — |
viewevidence_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 |
viewtrace_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 | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 0,
"create2_count": 1
}
|