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

Analysis Run

9824b367-42cd-45ef-8a5b-28f569eddd3a

complete
Chain ID
1
Address
Block Number
Created
Tue, Dec 30, 2025 3:16 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
Untrusted CALL target/value reachable
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
30713 report.consolidate complete 1 / 1 3 months ago
75274 artifact.fetch complete 1 / 3 1 week ago
75275 tool.cast_disasm complete 1 / 3 1 week ago
75276 analysis.bundle complete 1 / 3 1 week ago
75277 capability.graph complete 1 / 3 1 week ago
75278 detector.run complete 1 / 3 1 week ago
75279 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
Identified 1 low-severity issue related to unchecked ERC20 return values in claim payouts.
View stderr
[codex:1067433] OpenAI Codex v0.77.0 (research preview)
[codex:1067433] --------
[codex:1067433] workdir: /tmp/codex-multi-cpq7lz7q
[codex:1067433] model: gpt-5.2-codex
[codex:1067433] provider: openai
[codex:1067433] approval: never
[codex:1067433] sandbox: read-only
[codex:1067433] reasoning effort: xhigh
[codex:1067433] reasoning summaries: auto
[codex:1067433] session id: 019b6fd3-5930-7f40-8fbb-fc2cbbd548e3
[codex:1067433] --------
[codex:1067433] user
[codex:1067433] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1067433] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1067433] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1067433] 
[codex:1067433] Scope rules:
[codex:1067433] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1067433] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1067433] 
[codex:1067433] Output MUST be valid JSON matching the provided schema.
[codex:1067433] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1067433] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1067433] 
[codex:1067433] Output constraints (IMPORTANT):
[codex:1067433] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1067433] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1067433] mcp startup: no servers
[codex:1067433] 
[codex:1067433] thinking
[codex:1067433] **Reading AUDIT_BUNDLE file**
[codex:1067433] exec
[codex:1067433] /bin/bash -lc ls in /tmp/codex-multi-cpq7lz7q succeeded in 5ms:
[codex:1067433] AUDIT_BUNDLE.txt
[codex:1067433] codex-output-schema.json
[codex:1067433] contracts
[codex:1067433] exec
[codex:1067433] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-cpq7lz7q succeeded in 5ms:
[codex:1067433] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1067433] 
[codex:1067433] ================================================================================
[codex:1067433] FILE: contracts/@openzeppelin/contracts/access/Ownable.sol
[codex:1067433] ================================================================================
[codex:1067433] // SPDX-License-Identifier: MIT
[codex:1067433] // OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)
[codex:1067433] 
[codex:1067433] pragma solidity ^0.8.20;
[codex:1067433] 
[codex:1067433] import {Context} from "../utils/Context.sol";
[codex:1067433] 
[codex:1067433] /**
[codex:1067433]  * @dev Contract module which provides a basic access control mechanism, where
[codex:1067433]  * there is an account (an owner) that can be granted exclusive access to
[codex:1067433]  * specific functions.
[codex:1067433]  *
[codex:1067433]  * The initial owner is set to the address provided by the deployer. This can
[codex:1067433]  * later be changed with {transferOwnership}.
[codex:1067433]  *
[codex:1067433] 
[codex:1067433] thinking
[codex:1067433] **Auditing WethClaim contract**
[codex:1067433] 
[codex:1067433] I'll carefully analyze the WethClaim contract focusing on potential vulnerabilities like reentrancy and access control. I'm checking how claim functions handle Merkle proofs, token transfers (especially unchecked ERC20 returns), and ownership restrictions. I'll pay special attention to line numbers for precise reporting and make sure to provide a JSON summary including findings and evidence.
[codex:1067433] exec
[codex:1067433] /bin/bash -lc 'nl -ba contracts/contracts/WethClaim.sol' in /tmp/codex-multi-cpq7lz7q succeeded in 5ms:
[codex:1067433]      1	// SPDX-License-Identifier: MIT
[codex:1067433]      2	pragma solidity ^0.8.20;
[codex:1067433]      3	
[codex:1067433]      4	import "@openzeppelin/contracts/access/Ownable.sol";
[codex:1067433]      5	import "@openzeppelin/contracts/utils/ReentrancyGuard.sol";
[codex:1067433]      6	import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1067433]      7	import "@openzeppelin/contracts/utils/cryptography/MerkleProof.sol";
[codex:1067433]      8	
[codex:1067433]      9	contract WethClaim is Ownable, ReentrancyGuard {
[codex:1067433]     10	    using SafeERC20 for IERC20;
[codex:1067433]     11	
[codex:1067433]     12	    event Claim(address from, address to, address token, uint256 amount);
[codex:1067433]     13	    event TokenSeized(address token, uint256 amount);
[codex:1067433]     14	    event Paused(bool paused);
[codex:1067433]     15	    event MerkleRootUpdated(bytes32 oldMerkleRoot, bytes32 newMerkleRoot);
[codex:1067433]     16	    event ExcludedUpdated(address user, address token, uint256 amount);
[codex:1067433]     17	
[codex:1067433]     18	    address public constant WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
[codex:1067433]     19	
[codex:1067433]     20	    bytes32 public merkleRoot;
[codex:1067433] 
[codex:1067433] thinking
[codex:1067433] **Generating vulnerability report JSON**
[codex:1067433] codex
[codex:1067433] {"no_findings":false,"summary":"Identified 1 low-severity issue related to unchecked ERC20 return values in claim payouts.","findings":[{"severity":"low","category":"other","title":"ERC20 transfer return value unchecked in claim payout","exploit_scenario":"If the deployed WETH address is non-standard (returns false instead of reverting on failure) or a fee-on-transfer token, `_claimAndTransfer` will mark the user as claimed and emit a Claim even though no tokens were transferred, permanently burning the user’s claim.","recommendation":"Use `SafeERC20.safeTransfer` (or explicitly check the returned boolean) when transferring WETH in `_claimAndTransfer`.","evidence":"`IERC20(WETH).transfer(to, amount - excluded[from]);` is called without checking the return value after `claimed[from]` is set to true.","locations":["contracts/contracts/WethClaim.sol:56"]}]}
[codex:1067433] tokens used
[codex:1067433] 19,418
[codex:1067433] {"no_findings":false,"summary":"Identified 1 low-severity issue related to unchecked ERC20 return values in claim payouts.","findings":[{"severity":"low","category":"other","title":"ERC20 transfer return value unchecked in claim payout","exploit_scenario":"If the deployed WETH address is non-standard (returns false instead of reverting on failure) or a fee-on-transfer token, `_claimAndTransfer` will mark the user as claimed and emit a Claim even though no tokens were transferred, permanently burning the user’s claim.","recommendation":"Use `SafeERC20.safeTransfer` (or explicitly check the returned boolean) when transferring WETH in `_claimAndTransfer`.","evidence":"`IERC20(WETH).transfer(to, amount - excluded[from]);` is called without checking the return value after `claimed[from]` is set to true.","locations":["contracts/contracts/WethClaim.sol:56"]}]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-30T15:15:59.592370+00:00",
        "returncode": 0
    },
    "summary": "Identified 1 low-severity issue related to unchecked ERC20 return values in claim payouts.",
    "raw_final": {
        "summary": "Identified 1 low-severity issue related to unchecked ERC20 return values in claim payouts.",
        "findings": [
            {
                "title": "ERC20 transfer return value unchecked in claim payout",
                "category": "other",
                "evidence": "`IERC20(WETH).transfer(to, amount - excluded[from]);` is called without checking the return value after `claimed[from]` is set to true.",
                "severity": "low",
                "locations": [
                    "contracts/contracts/WethClaim.sol:56"
                ],
                "recommendation": "Use `SafeERC20.safeTransfer` (or explicitly check the returned boolean) when transferring WETH in `_claimAndTransfer`.",
                "exploit_scenario": "If the deployed WETH address is non-standard (returns false instead of reverting on failure) or a fee-on-transfer token, `_claimAndTransfer` will mark the user as claimed and emit a Claim even though no tokens were transferred, permanently burning the user\u2019s claim."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
1
CALL-family (heavy)
2
EXT*/BALANCE
1
Total opcodes
3599
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 0x00f5
00000019: JUMPI
0000001a: PUSH1 0x00
0000001c: CALLDATALOAD
0000001d: PUSH1 0xe0
0000001f: SHR
00000020: DUP1
00000021: PUSH4 0x817dccf0
00000026: GT
00000027: PUSH2 0x0097
0000002a: JUMPI
0000002b: DUP1
0000002c: PUSH4 0xc0f4709f
00000031: GT
00000032: PUSH2 0x0066
00000035: JUMPI
00000036: DUP1
00000037: PUSH4 0xc0f4709f
0000003c: EQ
0000003d: PUSH2 0x0238
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0xc884ef83
00000047: EQ
00000048: PUSH2 0x0254
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0xeb9253c0
00000052: EQ
00000053: PUSH2 0x0284
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0xf2fde38b
0000005d: EQ
0000005e: PUSH2 0x02a0
00000061: JUMPI
00000062: PUSH2 0x00f5
00000065: JUMP
00000066: JUMPDEST
00000067: DUP1
00000068: PUSH4 0x817dccf0
0000006d: EQ
0000006e: PUSH2 0x01c4
00000071: JUMPI
00000072: DUP1
00000073: PUSH4 0x8da5cb5b
00000078: EQ
00000079: PUSH2 0x01e0
0000007c: JUMPI
0000007d: DUP1
0000007e: PUSH4 0x91f744d5
00000083: EQ
00000084: PUSH2 0x01fe
00000087: JUMPI
00000088: DUP1
00000089: PUSH4 0xad5c4648
0000008e: EQ
0000008f: PUSH2 0x021a
00000092: JUMPI
00000093: PUSH2 0x00f5
00000096: JUMP
00000097: JUMPDEST
00000098: DUP1
00000099: PUSH4 0x407b155a
0000009e: GT
0000009f: PUSH2 0x00d3
000000a2: JUMPI
000000a3: DUP1
000000a4: PUSH4 0x407b155a
000000a9: EQ
000000aa: PUSH2 0x0150
000000ad: JUMPI
000000ae: DUP1
000000af: PUSH4 0x429cead1
000000b4: EQ
000000b5: PUSH2 0x016c
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0x5c975abb
000000bf: EQ
000000c0: PUSH2 0x019c
000000c3: JUMPI
000000c4: DUP1
000000c5: PUSH4 0x715018a6
000000ca: EQ
000000cb: PUSH2 0x01ba
000000ce: JUMPI
000000cf: PUSH2 0x00f5
000000d2: JUMP
000000d3: JUMPDEST
000000d4: DUP1
000000d5: PUSH4 0x02329a29
000000da: EQ
000000db: PUSH2 0x00fa
000000de: JUMPI
000000df: DUP1
000000e0: PUSH4 0x2eb4a7ab
000000e5: EQ
000000e6: PUSH2 0x0116
000000e9: JUMPI
000000ea: DUP1
000000eb: PUSH4 0x2f52ebb7
000000f0: EQ
000000f1: PUSH2 0x0134
000000f4: JUMPI
000000f5: JUMPDEST
000000f6: PUSH1 0x00
000000f8: DUP1
000000f9: REVERT
000000fa: JUMPDEST
000000fb: PUSH2 0x0114
000000fe: PUSH1 0x04
00000100: DUP1
00000101: CALLDATASIZE
00000102: SUB
00000103: DUP2
00000104: ADD
00000105: SWAP1
00000106: PUSH2 0x010f
00000109: SWAP2
0000010a: SWAP1
0000010b: PUSH2 0x1032
0000010e: JUMP
0000010f: JUMPDEST
00000110: PUSH2 0x02bc
00000113: JUMP
00000114: JUMPDEST
00000115: STOP
00000116: JUMPDEST
00000117: PUSH2 0x011e
0000011a: PUSH2 0x036d
0000011d: JUMP
0000011e: JUMPDEST
0000011f: PUSH1 0x40
00000121: MLOAD
00000122: PUSH2 0x012b
00000125: SWAP2
00000126: SWAP1
00000127: PUSH2 0x1078
0000012a: JUMP
0000012b: JUMPDEST
0000012c: PUSH1 0x40
0000012e: MLOAD
0000012f: DUP1
00000130: SWAP2
00000131: SUB
00000132: SWAP1
00000133: RETURN
00000134: JUMPDEST
00000135: PUSH2 0x014e
00000138: PUSH1 0x04
0000013a: DUP1
0000013b: CALLDATASIZE
0000013c: SUB
0000013d: DUP2
0000013e: ADD
0000013f: SWAP1
00000140: PUSH2 0x0149
00000143: SWAP2
00000144: SWAP1
00000145: PUSH2 0x124e
00000148: JUMP
00000149: JUMPDEST
0000014a: PUSH2 0x0373
0000014d: JUMP
0000014e: JUMPDEST
0000014f: STOP
00000150: JUMPDEST
00000151: PUSH2 0x016a
00000154: PUSH1 0x04
00000156: DUP1
00000157: CALLDATASIZE
00000158: SUB
00000159: DUP2
0000015a: ADD
0000015b: SWAP1
0000015c: PUSH2 0x0165
0000015f: SWAP2
00000160: SWAP1
00000161: PUSH2 0x1308
00000164: JUMP
00000165: JUMPDEST
00000166: PUSH2 0x0383
00000169: JUMP
0000016a: JUMPDEST
0000016b: STOP
0000016c: JUMPDEST
0000016d: PUSH2 0x0186
00000170: PUSH1 0x04
00000172: DUP1
00000173: CALLDATASIZE
00000174: SUB
00000175: DUP2
00000176: ADD
00000177: SWAP1
00000178: PUSH2 0x0181
0000017b: SWAP2
0000017c: SWAP1
0000017d: PUSH2 0x1377
00000180: JUMP
00000181: JUMPDEST
00000182: PUSH2 0x0394
00000185: JUMP
00000186: JUMPDEST
00000187: PUSH1 0x40
00000189: MLOAD
0000018a: PUSH2 0x0193
0000018d: SWAP2
0000018e: SWAP1
0000018f: PUSH2 0x13b3
00000192: JUMP
00000193: JUMPDEST
00000194: PUSH1 0x40
00000196: MLOAD
00000197: DUP1
00000198: SWAP2
00000199: SUB
0000019a: SWAP1
0000019b: RETURN
0000019c: JUMPDEST
0000019d: PUSH2 0x01a4
000001a0: PUSH2 0x03ac
000001a3: JUMP
000001a4: JUMPDEST
000001a5: PUSH1 0x40
000001a7: MLOAD
000001a8: PUSH2 0x01b1
000001ab: SWAP2
000001ac: SWAP1
000001ad: PUSH2 0x13dd
000001b0: JUMP
000001b1: JUMPDEST
000001b2: PUSH1 0x40
000001b4: MLOAD
000001b5: DUP1
000001b6: SWAP2
000001b7: SUB
000001b8: SWAP1
000001b9: RETURN
000001ba: JUMPDEST
000001bb: PUSH2 0x01c2
000001be: PUSH2 0x03bf
000001c1: JUMP
000001c2: JUMPDEST
000001c3: STOP
000001c4: JUMPDEST
000001c5: PUSH2 0x01de
000001c8: PUSH1 0x04
000001ca: DUP1
000001cb: CALLDATASIZE
000001cc: SUB
000001cd: DUP2
000001ce: ADD
000001cf: SWAP1
000001d0: PUSH2 0x01d9
000001d3: SWAP2
000001d4: SWAP1
000001d5: PUSH2 0x13f8
000001d8: JUMP
000001d9: JUMPDEST
000001da: PUSH2 0x03d3
000001dd: JUMP
000001de: JUMPDEST
000001df: STOP
000001e0: JUMPDEST
000001e1: PUSH2 0x01e8
000001e4: PUSH2 0x0546
000001e7: JUMP
000001e8: JUMPDEST
000001e9: PUSH1 0x40
000001eb: MLOAD
000001ec: PUSH2 0x01f5
000001ef: SWAP2
000001f0: SWAP1
000001f1: PUSH2 0x1447
000001f4: JUMP
000001f5: JUMPDEST
000001f6: PUSH1 0x40
000001f8: MLOAD
000001f9: DUP1
000001fa: SWAP2
000001fb: SUB
000001fc: SWAP1
000001fd: RETURN
000001fe: JUMPDEST
000001ff: PUSH2 0x0218
00000202: PUSH1 0x04
00000204: DUP1
00000205: CALLDATASIZE
00000206: SUB
00000207: DUP2
00000208: ADD
00000209: SWAP1
0000020a: PUSH2 0x0213
0000020d: SWAP2
0000020e: SWAP1
0000020f: PUSH2 0x1462
00000212: JUMP
00000213: JUMPDEST
00000214: PUSH2 0x056f
00000217: JUMP
00000218: JUMPDEST
00000219: STOP
0000021a: JUMPDEST
0000021b: PUSH2 0x0222
0000021e: PUSH2 0x05c2
00000221: JUMP
00000222: JUMPDEST
00000223: PUSH1 0x40
00000225: MLOAD
00000226: PUSH2 0x022f
00000229: SWAP2
0000022a: SWAP1
0000022b: PUSH2 0x1447
0000022e: JUMP
0000022f: JUMPDEST
00000230: PUSH1 0x40
00000232: MLOAD
00000233: DUP1
00000234: SWAP2
00000235: SUB
00000236: SWAP1
00000237: RETURN
00000238: JUMPDEST
00000239: PUSH2 0x0252
0000023c: PUSH1 0x04
0000023e: DUP1
0000023f: CALLDATASIZE
00000240: SUB
00000241: DUP2
00000242: ADD
00000243: SWAP1
00000244: PUSH2 0x024d
00000247: SWAP2
00000248: SWAP1
00000249: PUSH2 0x148f
0000024c: JUMP
0000024d: JUMPDEST
0000024e: PUSH2 0x05da
00000251: JUMP
00000252: JUMPDEST
00000253: STOP
00000254: JUMPDEST
00000255: PUSH2 0x026e
00000258: PUSH1 0x04
0000025a: DUP1
0000025b: CALLDATASIZE
0000025c: SUB
0000025d: DUP2
0000025e: ADD
0000025f: SWAP1
00000260: PUSH2 0x0269
00000263: SWAP2
00000264: SWAP1
00000265: PUSH2 0x1377
00000268: JUMP
00000269: JUMPDEST
0000026a: PUSH2 0x05f4
0000026d: JUMP
0000026e: JUMPDEST
0000026f: PUSH1 0x40
00000271: MLOAD
00000272: PUSH2 0x027b
00000275: SWAP2
00000276: SWAP1
00000277: PUSH2 0x13dd
0000027a: JUMP
0000027b: JUMPDEST
0000027c: PUSH1 0x40
0000027e: MLOAD
0000027f: DUP1
00000280: SWAP2
00000281: SUB
00000282: SWAP1
00000283: RETURN
00000284: JUMPDEST
00000285: PUSH2 0x029e
00000288: PUSH1 0x04
0000028a: DUP1
0000028b: CALLDATASIZE
0000028c: SUB
0000028d: DUP2
0000028e: ADD
0000028f: SWAP1
00000290: PUSH2 0x0299
00000293: SWAP2
00000294: SWAP1
00000295: PUSH2 0x13f8
00000298: JUMP
00000299: JUMPDEST
0000029a: PUSH2 0x0614
0000029d: JUMP
0000029e: JUMPDEST
0000029f: STOP
000002a0: JUMPDEST
000002a1: PUSH2 0x02ba
000002a4: PUSH1 0x04
000002a6: DUP1
000002a7: CALLDATASIZE
000002a8: SUB
000002a9: DUP2
000002aa: ADD
000002ab: SWAP1
000002ac: PUSH2 0x02b5
000002af: SWAP2
000002b0: SWAP1
000002b1: PUSH2 0x1377
000002b4: JUMP
000002b5: JUMPDEST
000002b6: PUSH2 0x068b
000002b9: JUMP
000002ba: JUMPDEST
000002bb: STOP
000002bc: JUMPDEST
000002bd: PUSH2 0x02c4
000002c0: PUSH2 0x0711
000002c3: JUMP
000002c4: JUMPDEST
000002c5: DUP1
000002c6: ISZERO
000002c7: ISZERO
000002c8: PUSH1 0x03
000002ca: PUSH1 0x00
000002cc: SWAP1
000002cd: SLOAD
000002ce: SWAP1
000002cf: PUSH2 0x0100
000002d2: EXP
000002d3: SWAP1
000002d4: DIV
000002d5: PUSH1 0xff
000002d7: AND
000002d8: ISZERO
000002d9: ISZERO
000002da: SUB
000002db: PUSH2 0x0319
000002de: JUMPI
000002df: PUSH1 0x40
000002e1: MLOAD
000002e2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000303: DUP2
00000304: MSTORE
00000305: PUSH1 0x04
00000307: ADD
00000308: PUSH2 0x0310
0000030b: SWAP1
0000030c: PUSH2 0x156f
0000030f: JUMP
00000310: JUMPDEST
00000311: PUSH1 0x40
00000313: MLOAD
00000314: DUP1
00000315: SWAP2
00000316: SUB
00000317: SWAP1
00000318: REVERT
00000319: JUMPDEST
0000031a: DUP1
0000031b: PUSH1 0x03
0000031d: PUSH1 0x00
0000031f: PUSH2 0x0100
00000322: EXP
00000323: DUP2
00000324: SLOAD
00000325: DUP2
00000326: PUSH1 0xff
00000328: MUL
00000329: NOT
0000032a: AND
0000032b: SWAP1
0000032c: DUP4
0000032d: ISZERO
0000032e: ISZERO
0000032f: MUL
00000330: OR
00000331: SWAP1
00000332: SSTORE
00000333: POP
00000334: PUSH32 0x0e2fb031ee032dc02d8011dc50b816eb450cf856abd8261680dac74f72165bd2
00000355: DUP2
00000356: PUSH1 0x40
00000358: MLOAD
00000359: PUSH2 0x0362
0000035c: SWAP2
0000035d: SWAP1
0000035e: PUSH2 0x13dd
00000361: JUMP
00000362: JUMPDEST
00000363: PUSH1 0x40
00000365: MLOAD
00000366: DUP1
00000367: SWAP2
00000368: SUB
00000369: SWAP1
0000036a: LOG1
0000036b: POP
0000036c: JUMP
0000036d: JUMPDEST
0000036e: PUSH1 0x02
00000370: SLOAD
00000371: DUP2
00000372: JUMP
00000373: JUMPDEST
00000374: PUSH2 0x037f
00000377: CALLER
00000378: CALLER
00000379: DUP5
0000037a: DUP5
0000037b: PUSH2 0x0798
0000037e: JUMP
0000037f: JUMPDEST
00000380: POP
00000381: POP
00000382: JUMP
00000383: JUMPDEST
00000384: PUSH2 0x038f
00000387: CALLER
00000388: DUP5
00000389: DUP5
0000038a: DUP5
0000038b: PUSH2 0x0798
0000038e: JUMP
0000038f: JUMPDEST
00000390: POP
00000391: POP
00000392: POP
00000393: JUMP
00000394: JUMPDEST
00000395: PUSH1 0x04
00000397: PUSH1 0x20
00000399: MSTORE
0000039a: DUP1
0000039b: PUSH1 0x00
0000039d: MSTORE
0000039e: PUSH1 0x40
000003a0: PUSH1 0x00
000003a2: KECCAK256
000003a3: PUSH1 0x00
000003a5: SWAP2
000003a6: POP
000003a7: SWAP1
000003a8: POP
000003a9: SLOAD
000003aa: DUP2
000003ab: JUMP
000003ac: JUMPDEST
000003ad: PUSH1 0x03
000003af: PUSH1 0x00
000003b1: SWAP1
000003b2: SLOAD
000003b3: SWAP1
000003b4: PUSH2 0x0100
000003b7: EXP
000003b8: SWAP1
000003b9: DIV
000003ba: PUSH1 0xff
000003bc: AND
000003bd: DUP2
000003be: JUMP
000003bf: JUMPDEST
000003c0: PUSH2 0x03c7
000003c3: PUSH2 0x0711
000003c6: JUMP
000003c7: JUMPDEST
000003c8: PUSH2 0x03d1
000003cb: PUSH1 0x00
000003cd: PUSH2 0x0b4f
000003d0: JUMP
000003d1: JUMPDEST
000003d2: JUMP
000003d3: JUMPDEST
000003d4: PUSH2 0x03db
000003d7: PUSH2 0x0711
000003da: JUMP
000003db: JUMPDEST
000003dc: PUSH1 0x05
000003de: PUSH1 0x00
000003e0: DUP4
000003e1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003f6: AND
000003f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000040c: AND
0000040d: DUP2
0000040e: MSTORE
0000040f: PUSH1 0x20
00000411: ADD
00000412: SWAP1
00000413: DUP2
00000414: MSTORE
00000415: PUSH1 0x20
00000417: ADD
00000418: PUSH1 0x00
0000041a: KECCAK256
0000041b: PUSH1 0x00
0000041d: SWAP1
0000041e: SLOAD
0000041f: SWAP1
00000420: PUSH2 0x0100
00000423: EXP
00000424: SWAP1
00000425: DIV
00000426: PUSH1 0xff
00000428: AND
00000429: ISZERO
0000042a: PUSH2 0x0468
0000042d: JUMPI
0000042e: PUSH1 0x40
00000430: MLOAD
00000431: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000452: DUP2
00000453: MSTORE
00000454: PUSH1 0x04
00000456: ADD
00000457: PUSH2 0x045f
0000045a: SWAP1
0000045b: PUSH2 0x15db
0000045e: JUMP
0000045f: JUMPDEST
00000460: PUSH1 0x40
00000462: MLOAD
00000463: DUP1
00000464: SWAP2
00000465: SUB
00000466: SWAP1
00000467: REVERT
00000468: JUMPDEST
00000469: PUSH1 0x04
0000046b: PUSH1 0x00
0000046d: DUP4
0000046e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000483: AND
00000484: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000499: AND
0000049a: DUP2
0000049b: MSTORE
0000049c: PUSH1 0x20
0000049e: ADD
0000049f: SWAP1
000004a0: DUP2
000004a1: MSTORE
000004a2: PUSH1 0x20
000004a4: ADD
000004a5: PUSH1 0x00
000004a7: KECCAK256
000004a8: SLOAD
000004a9: DUP2
000004aa: EQ
000004ab: PUSH2 0x0542
000004ae: JUMPI
000004af: DUP1
000004b0: PUSH1 0x04
000004b2: PUSH1 0x00
000004b4: DUP5
000004b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004ca: AND
000004cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004e0: AND
000004e1: DUP2
000004e2: MSTORE
000004e3: PUSH1 0x20
000004e5: ADD
000004e6: SWAP1
000004e7: DUP2
000004e8: MSTORE
000004e9: PUSH1 0x20
000004eb: ADD
000004ec: PUSH1 0x00
000004ee: KECCAK256
000004ef: DUP2
000004f0: SWAP1
000004f1: SSTORE
000004f2: POP
000004f3: PUSH32 0xc5f4d2d234f92ba130f00e7f3e58be87e8e741dda9be9dbc6747de98392d7aef
00000514: DUP3
00000515: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
0000052a: DUP4
0000052b: PUSH1 0x40
0000052d: MLOAD
0000052e: PUSH2 0x0539
00000531: SWAP4
00000532: SWAP3
00000533: SWAP2
00000534: SWAP1
00000535: PUSH2 0x15fb
00000538: JUMP
00000539: JUMPDEST
0000053a: PUSH1 0x40
0000053c: MLOAD
0000053d: DUP1
0000053e: SWAP2
0000053f: SUB
00000540: SWAP1
00000541: LOG1
00000542: JUMPDEST
00000543: POP
00000544: POP
00000545: JUMP
00000546: JUMPDEST
00000547: PUSH1 0x00
00000549: DUP1
0000054a: PUSH1 0x00
0000054c: SWAP1
0000054d: SLOAD
0000054e: SWAP1
0000054f: PUSH2 0x0100
00000552: EXP
00000553: SWAP1
00000554: DIV
00000555: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000056a: AND
0000056b: SWAP1
0000056c: POP
0000056d: SWAP1
0000056e: JUMP
0000056f: JUMPDEST
00000570: PUSH2 0x0577
00000573: PUSH2 0x0711
00000576: JUMP
00000577: JUMPDEST
00000578: PUSH1 0x00
0000057a: PUSH1 0x02
0000057c: SLOAD
0000057d: SWAP1
0000057e: POP
0000057f: DUP2
00000580: PUSH1 0x02
00000582: DUP2
00000583: SWAP1
00000584: SSTORE
00000585: POP
00000586: PUSH32 0xfd69edeceaf1d6832d935be1fba54ca93bf17e71520c6c9ffc08d6e9529f8757
000005a7: DUP2
000005a8: DUP4
000005a9: PUSH1 0x40
000005ab: MLOAD
000005ac: PUSH2 0x05b6
000005af: SWAP3
000005b0: SWAP2
000005b1: SWAP1
000005b2: PUSH2 0x1632
000005b5: JUMP
000005b6: JUMPDEST
000005b7: PUSH1 0x40
000005b9: MLOAD
000005ba: DUP1
000005bb: SWAP2
000005bc: SUB
000005bd: SWAP1
000005be: LOG1
000005bf: POP
000005c0: POP
000005c1: JUMP
000005c2: JUMPDEST
000005c3: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000005d8: DUP2
000005d9: JUMP
000005da: JUMPDEST
000005db: PUSH2 0x05e2
000005de: PUSH2 0x0711
000005e1: JUMP
000005e2: JUMPDEST
000005e3: PUSH2 0x05ee
000005e6: DUP5
000005e7: DUP5
000005e8: DUP5
000005e9: DUP5
000005ea: PUSH2 0x0798
000005ed: JUMP
000005ee: JUMPDEST
000005ef: POP
000005f0: POP
000005f1: POP
000005f2: POP
000005f3: JUMP
000005f4: JUMPDEST
000005f5: PUSH1 0x05
000005f7: PUSH1 0x20
000005f9: MSTORE
000005fa: DUP1
000005fb: PUSH1 0x00
000005fd: MSTORE
000005fe: PUSH1 0x40
00000600: PUSH1 0x00
00000602: KECCAK256
00000603: PUSH1 0x00
00000605: SWAP2
00000606: POP
00000607: SLOAD
00000608: SWAP1
00000609: PUSH2 0x0100
0000060c: EXP
0000060d: SWAP1
0000060e: DIV
0000060f: PUSH1 0xff
00000611: AND
00000612: DUP2
00000613: JUMP
00000614: JUMPDEST
00000615: PUSH2 0x061c
00000618: PUSH2 0x0711
0000061b: JUMP
0000061c: JUMPDEST
0000061d: PUSH2 0x064e
00000620: PUSH2 0x0627
00000623: PUSH2 0x0546
00000626: JUMP
00000627: JUMPDEST
00000628: DUP3
00000629: DUP5
0000062a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000063f: AND
00000640: PUSH2 0x0c13
00000643: SWAP1
00000644: SWAP3
00000645: SWAP2
00000646: SWAP1
00000647: PUSH4 0xffffffff
0000064c: AND
0000064d: JUMP
0000064e: JUMPDEST
0000064f: PUSH32 0xb930d7c3c6896f70ea10a959f1d9a7c04e0467138efa4c7040570d4b8f4894b6
00000670: DUP3
00000671: DUP3
00000672: PUSH1 0x40
00000674: MLOAD
00000675: PUSH2 0x067f
00000678: SWAP3
00000679: SWAP2
0000067a: SWAP1
0000067b: PUSH2 0x165b
0000067e: JUMP
0000067f: JUMPDEST
00000680: PUSH1 0x40
00000682: MLOAD
00000683: DUP1
00000684: SWAP2
00000685: SUB
00000686: SWAP1
00000687: LOG1
00000688: POP
00000689: POP
0000068a: JUMP
0000068b: JUMPDEST
0000068c: PUSH2 0x0693
0000068f: PUSH2 0x0711
00000692: JUMP
00000693: JUMPDEST
00000694: PUSH1 0x00
00000696: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006ab: AND
000006ac: DUP2
000006ad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006c2: AND
000006c3: SUB
000006c4: PUSH2 0x0705
000006c7: JUMPI
000006c8: PUSH1 0x00
000006ca: PUSH1 0x40
000006cc: MLOAD
000006cd: PUSH32 0x1e4fbdf700000000000000000000000000000000000000000000000000000000
000006ee: DUP2
000006ef: MSTORE
000006f0: PUSH1 0x04
000006f2: ADD
000006f3: PUSH2 0x06fc
000006f6: SWAP2
000006f7: SWAP1
000006f8: PUSH2 0x1447
000006fb: JUMP
000006fc: JUMPDEST
000006fd: PUSH1 0x40
000006ff: MLOAD
00000700: DUP1
00000701: SWAP2
00000702: SUB
00000703: SWAP1
00000704: REVERT
00000705: JUMPDEST
00000706: PUSH2 0x070e
00000709: DUP2
0000070a: PUSH2 0x0b4f
0000070d: JUMP
0000070e: JUMPDEST
0000070f: POP
00000710: JUMP
00000711: JUMPDEST
00000712: PUSH2 0x0719
00000715: PUSH2 0x0c92
00000718: JUMP
00000719: JUMPDEST
0000071a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000072f: AND
00000730: PUSH2 0x0737
00000733: PUSH2 0x0546
00000736: JUMP
00000737: JUMPDEST
00000738: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000074d: AND
0000074e: EQ
0000074f: PUSH2 0x0796
00000752: JUMPI
00000753: PUSH2 0x075a
00000756: PUSH2 0x0c92
00000759: JUMP
0000075a: JUMPDEST
0000075b: PUSH1 0x40
0000075d: MLOAD
0000075e: PUSH32 0x118cdaa700000000000000000000000000000000000000000000000000000000
0000077f: DUP2
00000780: MSTORE
00000781: PUSH1 0x04
00000783: ADD
00000784: PUSH2 0x078d
00000787: SWAP2
00000788: SWAP1
00000789: PUSH2 0x1447
0000078c: JUMP
0000078d: JUMPDEST
0000078e: PUSH1 0x40
00000790: MLOAD
00000791: DUP1
00000792: SWAP2
00000793: SUB
00000794: SWAP1
00000795: REVERT
00000796: JUMPDEST
00000797: JUMP
00000798: JUMPDEST
00000799: PUSH2 0x07a0
0000079c: PUSH2 0x0c9a
0000079f: JUMP
000007a0: JUMPDEST
000007a1: PUSH1 0x00
000007a3: ISZERO
000007a4: ISZERO
000007a5: PUSH1 0x05
000007a7: PUSH1 0x00
000007a9: DUP7
000007aa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007bf: AND
000007c0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007d5: AND
000007d6: DUP2
000007d7: MSTORE
000007d8: PUSH1 0x20
000007da: ADD
000007db: SWAP1
000007dc: DUP2
000007dd: MSTORE
000007de: PUSH1 0x20
000007e0: ADD
000007e1: PUSH1 0x00
000007e3: KECCAK256
000007e4: PUSH1 0x00
000007e6: SWAP1
000007e7: SLOAD
000007e8: SWAP1
000007e9: PUSH2 0x0100
000007ec: EXP
000007ed: SWAP1
000007ee: DIV
000007ef: PUSH1 0xff
000007f1: AND
000007f2: ISZERO
000007f3: ISZERO
000007f4: EQ
000007f5: PUSH2 0x0833
000007f8: JUMPI
000007f9: PUSH1 0x40
000007fb: MLOAD
000007fc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000081d: DUP2
0000081e: MSTORE
0000081f: PUSH1 0x04
00000821: ADD
00000822: PUSH2 0x082a
00000825: SWAP1
00000826: PUSH2 0x16d0
00000829: JUMP
0000082a: JUMPDEST
0000082b: PUSH1 0x40
0000082d: MLOAD
0000082e: DUP1
0000082f: SWAP2
00000830: SUB
00000831: SWAP1
00000832: REVERT
00000833: JUMPDEST
00000834: PUSH1 0x03
00000836: PUSH1 0x00
00000838: SWAP1
00000839: SLOAD
0000083a: SWAP1
0000083b: PUSH2 0x0100
0000083e: EXP
0000083f: SWAP1
00000840: DIV
00000841: PUSH1 0xff
00000843: AND
00000844: ISZERO
00000845: PUSH2 0x0883
00000848: JUMPI
00000849: PUSH1 0x40
0000084b: MLOAD
0000084c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000086d: DUP2
0000086e: MSTORE
0000086f: PUSH1 0x04
00000871: ADD
00000872: PUSH2 0x087a
00000875: SWAP1
00000876: PUSH2 0x173c
00000879: JUMP
0000087a: JUMPDEST
0000087b: PUSH1 0x40
0000087d: MLOAD
0000087e: DUP1
0000087f: SWAP2
00000880: SUB
00000881: SWAP1
00000882: REVERT
00000883: JUMPDEST
00000884: PUSH1 0x00
00000886: DUP5
00000887: DUP4
00000888: PUSH1 0x40
0000088a: MLOAD
0000088b: PUSH1 0x20
0000088d: ADD
0000088e: PUSH2 0x0898
00000891: SWAP3
00000892: SWAP2
00000893: SWAP1
00000894: PUSH2 0x165b
00000897: JUMP
00000898: JUMPDEST
00000899: PUSH1 0x40
0000089b: MLOAD
0000089c: PUSH1 0x20
0000089e: DUP2
0000089f: DUP4
000008a0: SUB
000008a1: SUB
000008a2: DUP2
000008a3: MSTORE
000008a4: SWAP1
000008a5: PUSH1 0x40
000008a7: MSTORE
000008a8: DUP1
000008a9: MLOAD
000008aa: SWAP1
000008ab: PUSH1 0x20
000008ad: ADD
000008ae: KECCAK256
000008af: PUSH1 0x40
000008b1: MLOAD
000008b2: PUSH1 0x20
000008b4: ADD
000008b5: PUSH2 0x08be
000008b8: SWAP2
000008b9: SWAP1
000008ba: PUSH2 0x177d
000008bd: JUMP
000008be: JUMPDEST
000008bf: PUSH1 0x40
000008c1: MLOAD
000008c2: PUSH1 0x20
000008c4: DUP2
000008c5: DUP4
000008c6: SUB
000008c7: SUB
000008c8: DUP2
000008c9: MSTORE
000008ca: SWAP1
000008cb: PUSH1 0x40
000008cd: MSTORE
000008ce: DUP1
000008cf: MLOAD
000008d0: SWAP1
000008d1: PUSH1 0x20
000008d3: ADD
000008d4: KECCAK256
000008d5: SWAP1
000008d6: POP
000008d7: PUSH1 0x00
000008d9: PUSH2 0x08e5
000008dc: DUP4
000008dd: PUSH1 0x02
000008df: SLOAD
000008e0: DUP5
000008e1: PUSH2 0x0ce0
000008e4: JUMP
000008e5: JUMPDEST
000008e6: SWAP1
000008e7: POP
000008e8: DUP1
000008e9: PUSH2 0x0927
000008ec: JUMPI
000008ed: PUSH1 0x40
000008ef: MLOAD
000008f0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000911: DUP2
00000912: MSTORE
00000913: PUSH1 0x04
00000915: ADD
00000916: PUSH2 0x091e
00000919: SWAP1
0000091a: PUSH2 0x17e4
0000091d: JUMP
0000091e: JUMPDEST
0000091f: PUSH1 0x40
00000921: MLOAD
00000922: DUP1
00000923: SWAP2
00000924: SUB
00000925: SWAP1
00000926: REVERT
00000927: JUMPDEST
00000928: PUSH1 0x01
0000092a: PUSH1 0x05
0000092c: PUSH1 0x00
0000092e: DUP9
0000092f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000944: AND
00000945: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000095a: AND
0000095b: DUP2
0000095c: MSTORE
0000095d: PUSH1 0x20
0000095f: ADD
00000960: SWAP1
00000961: DUP2
00000962: MSTORE
00000963: PUSH1 0x20
00000965: ADD
00000966: PUSH1 0x00
00000968: KECCAK256
00000969: PUSH1 0x00
0000096b: PUSH2 0x0100
0000096e: EXP
0000096f: DUP2
00000970: SLOAD
00000971: DUP2
00000972: PUSH1 0xff
00000974: MUL
00000975: NOT
00000976: AND
00000977: SWAP1
00000978: DUP4
00000979: ISZERO
0000097a: ISZERO
0000097b: MUL
0000097c: OR
0000097d: SWAP1
0000097e: SSTORE
0000097f: POP
00000980: PUSH1 0x04
00000982: PUSH1 0x00
00000984: DUP8
00000985: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000099a: AND
0000099b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009b0: AND
000009b1: DUP2
000009b2: MSTORE
000009b3: PUSH1 0x20
000009b5: ADD
000009b6: SWAP1
000009b7: DUP2
000009b8: MSTORE
000009b9: PUSH1 0x20
000009bb: ADD
000009bc: PUSH1 0x00
000009be: KECCAK256
000009bf: SLOAD
000009c0: DUP5
000009c1: GT
000009c2: ISZERO
000009c3: PUSH2 0x0b3f
000009c6: JUMPI
000009c7: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000009dc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009f1: AND
000009f2: PUSH4 0xa9059cbb
000009f7: DUP7
000009f8: PUSH1 0x04
000009fa: PUSH1 0x00
000009fc: DUP11
000009fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a12: AND
00000a13: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a28: AND
00000a29: DUP2
00000a2a: MSTORE
00000a2b: PUSH1 0x20
00000a2d: ADD
00000a2e: SWAP1
00000a2f: DUP2
00000a30: MSTORE
00000a31: PUSH1 0x20
00000a33: ADD
00000a34: PUSH1 0x00
00000a36: KECCAK256
00000a37: SLOAD
00000a38: DUP8
00000a39: PUSH2 0x0a42
00000a3c: SWAP2
00000a3d: SWAP1
00000a3e: PUSH2 0x1833
00000a41: JUMP
00000a42: JUMPDEST
00000a43: PUSH1 0x40
00000a45: MLOAD
00000a46: DUP4
00000a47: PUSH4 0xffffffff
00000a4c: AND
00000a4d: PUSH1 0xe0
00000a4f: SHL
00000a50: DUP2
00000a51: MSTORE
00000a52: PUSH1 0x04
00000a54: ADD
00000a55: PUSH2 0x0a5f
00000a58: SWAP3
00000a59: SWAP2
00000a5a: SWAP1
00000a5b: PUSH2 0x165b
00000a5e: JUMP
00000a5f: JUMPDEST
00000a60: PUSH1 0x20
00000a62: PUSH1 0x40
00000a64: MLOAD
00000a65: DUP1
00000a66: DUP4
00000a67: SUB
00000a68: DUP2
00000a69: PUSH1 0x00
00000a6b: DUP8
00000a6c: GAS
00000a6d: CALL
00000a6e: ISZERO
00000a6f: DUP1
00000a70: ISZERO
00000a71: PUSH2 0x0a7e
00000a74: JUMPI
00000a75: RETURNDATASIZE
00000a76: PUSH1 0x00
00000a78: DUP1
00000a79: RETURNDATACOPY
00000a7a: RETURNDATASIZE
00000a7b: PUSH1 0x00
00000a7d: REVERT
00000a7e: JUMPDEST
00000a7f: POP
00000a80: POP
00000a81: POP
00000a82: POP
00000a83: PUSH1 0x40
00000a85: MLOAD
00000a86: RETURNDATASIZE
00000a87: PUSH1 0x1f
00000a89: NOT
00000a8a: PUSH1 0x1f
00000a8c: DUP3
00000a8d: ADD
00000a8e: AND
00000a8f: DUP3
00000a90: ADD
00000a91: DUP1
00000a92: PUSH1 0x40
00000a94: MSTORE
00000a95: POP
00000a96: DUP2
00000a97: ADD
00000a98: SWAP1
00000a99: PUSH2 0x0aa2
00000a9c: SWAP2
00000a9d: SWAP1
00000a9e: PUSH2 0x187c
00000aa1: JUMP
00000aa2: JUMPDEST
00000aa3: POP
00000aa4: PUSH32 0xc1405953cccdad6b442e266c84d66ad671e2534c6584f8e6ef92802f7ad294d5
00000ac5: DUP7
00000ac6: DUP7
00000ac7: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
00000adc: PUSH1 0x04
00000ade: PUSH1 0x00
00000ae0: DUP12
00000ae1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000af6: AND
00000af7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b0c: AND
00000b0d: DUP2
00000b0e: MSTORE
00000b0f: PUSH1 0x20
00000b11: ADD
00000b12: SWAP1
00000b13: DUP2
00000b14: MSTORE
00000b15: PUSH1 0x20
00000b17: ADD
00000b18: PUSH1 0x00
00000b1a: KECCAK256
00000b1b: SLOAD
00000b1c: DUP9
00000b1d: PUSH2 0x0b26
00000b20: SWAP2
00000b21: SWAP1
00000b22: PUSH2 0x1833
00000b25: JUMP
00000b26: JUMPDEST
00000b27: PUSH1 0x40
00000b29: MLOAD
00000b2a: PUSH2 0x0b36
00000b2d: SWAP5
00000b2e: SWAP4
00000b2f: SWAP3
00000b30: SWAP2
00000b31: SWAP1
00000b32: PUSH2 0x18a9
00000b35: JUMP
00000b36: JUMPDEST
00000b37: PUSH1 0x40
00000b39: MLOAD
00000b3a: DUP1
00000b3b: SWAP2
00000b3c: SUB
00000b3d: SWAP1
00000b3e: LOG1
00000b3f: JUMPDEST
00000b40: POP
00000b41: POP
00000b42: PUSH2 0x0b49
00000b45: PUSH2 0x0cf7
00000b48: JUMP
00000b49: JUMPDEST
00000b4a: POP
00000b4b: POP
00000b4c: POP
00000b4d: POP
00000b4e: JUMP
00000b4f: JUMPDEST
00000b50: PUSH1 0x00
00000b52: DUP1
00000b53: PUSH1 0x00
00000b55: SWAP1
00000b56: SLOAD
00000b57: SWAP1
00000b58: PUSH2 0x0100
00000b5b: EXP
00000b5c: SWAP1
00000b5d: DIV
00000b5e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b73: AND
00000b74: SWAP1
00000b75: POP
00000b76: DUP2
00000b77: PUSH1 0x00
00000b79: DUP1
00000b7a: PUSH2 0x0100
00000b7d: EXP
00000b7e: DUP2
00000b7f: SLOAD
00000b80: DUP2
00000b81: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b96: MUL
00000b97: NOT
00000b98: AND
00000b99: SWAP1
00000b9a: DUP4
00000b9b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bb0: AND
00000bb1: MUL
00000bb2: OR
00000bb3: SWAP1
00000bb4: SSTORE
00000bb5: POP
00000bb6: DUP2
00000bb7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bcc: AND
00000bcd: DUP2
00000bce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000be3: AND
00000be4: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00000c05: PUSH1 0x40
00000c07: MLOAD
00000c08: PUSH1 0x40
00000c0a: MLOAD
00000c0b: DUP1
00000c0c: SWAP2
00000c0d: SUB
00000c0e: SWAP1
00000c0f: LOG3
00000c10: POP
00000c11: POP
00000c12: JUMP
00000c13: JUMPDEST
00000c14: PUSH2 0x0c8d
00000c17: DUP4
00000c18: DUP5
00000c19: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c2e: AND
00000c2f: PUSH4 0xa9059cbb
00000c34: DUP6
00000c35: DUP6
00000c36: PUSH1 0x40
00000c38: MLOAD
00000c39: PUSH1 0x24
00000c3b: ADD
00000c3c: PUSH2 0x0c46
00000c3f: SWAP3
00000c40: SWAP2
00000c41: SWAP1
00000c42: PUSH2 0x165b
00000c45: JUMP
00000c46: JUMPDEST
00000c47: PUSH1 0x40
00000c49: MLOAD
00000c4a: PUSH1 0x20
00000c4c: DUP2
00000c4d: DUP4
00000c4e: SUB
00000c4f: SUB
00000c50: DUP2
00000c51: MSTORE
00000c52: SWAP1
00000c53: PUSH1 0x40
00000c55: MSTORE
00000c56: SWAP2
00000c57: POP
00000c58: PUSH1 0xe0
00000c5a: SHL
00000c5b: PUSH1 0x20
00000c5d: DUP3
00000c5e: ADD
00000c5f: DUP1
00000c60: MLOAD
00000c61: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000c7e: DUP4
00000c7f: DUP2
00000c80: DUP4
00000c81: AND
00000c82: OR
00000c83: DUP4
00000c84: MSTORE
00000c85: POP
00000c86: POP
00000c87: POP
00000c88: POP
00000c89: PUSH2 0x0d00
00000c8c: JUMP
00000c8d: JUMPDEST
00000c8e: POP
00000c8f: POP
00000c90: POP
00000c91: JUMP
00000c92: JUMPDEST
00000c93: PUSH1 0x00
00000c95: CALLER
00000c96: SWAP1
00000c97: POP
00000c98: SWAP1
00000c99: JUMP
00000c9a: JUMPDEST
00000c9b: PUSH1 0x02
00000c9d: PUSH1 0x01
00000c9f: SLOAD
00000ca0: SUB
00000ca1: PUSH2 0x0cd6
00000ca4: JUMPI
00000ca5: PUSH1 0x40
00000ca7: MLOAD
00000ca8: PUSH32 0x3ee5aeb500000000000000000000000000000000000000000000000000000000
00000cc9: DUP2
00000cca: MSTORE
00000ccb: PUSH1 0x04
00000ccd: ADD
00000cce: PUSH1 0x40
00000cd0: MLOAD
00000cd1: DUP1
00000cd2: SWAP2
00000cd3: SUB
00000cd4: SWAP1
00000cd5: REVERT
00000cd6: JUMPDEST
00000cd7: PUSH1 0x02
00000cd9: PUSH1 0x01
00000cdb: DUP2
00000cdc: SWAP1
00000cdd: SSTORE
00000cde: POP
00000cdf: JUMP
00000ce0: JUMPDEST
00000ce1: PUSH1 0x00
00000ce3: DUP3
00000ce4: PUSH2 0x0ced
00000ce7: DUP6
00000ce8: DUP5
00000ce9: PUSH2 0x0d97
00000cec: JUMP
00000ced: JUMPDEST
00000cee: EQ
00000cef: SWAP1
00000cf0: POP
00000cf1: SWAP4
00000cf2: SWAP3
00000cf3: POP
00000cf4: POP
00000cf5: POP
00000cf6: JUMP
00000cf7: JUMPDEST
00000cf8: PUSH1 0x01
00000cfa: DUP1
00000cfb: DUP2
00000cfc: SWAP1
00000cfd: SSTORE
00000cfe: POP
00000cff: JUMP
00000d00: JUMPDEST
00000d01: PUSH1 0x00
00000d03: PUSH2 0x0d2b
00000d06: DUP3
00000d07: DUP5
00000d08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d1d: AND
00000d1e: PUSH2 0x0ded
00000d21: SWAP1
00000d22: SWAP2
00000d23: SWAP1
00000d24: PUSH4 0xffffffff
00000d29: AND
00000d2a: JUMP
00000d2b: JUMPDEST
00000d2c: SWAP1
00000d2d: POP
00000d2e: PUSH1 0x00
00000d30: DUP2
00000d31: MLOAD
00000d32: EQ
00000d33: ISZERO
00000d34: DUP1
00000d35: ISZERO
00000d36: PUSH2 0x0d50
00000d39: JUMPI
00000d3a: POP
00000d3b: DUP1
00000d3c: DUP1
00000d3d: PUSH1 0x20
00000d3f: ADD
00000d40: SWAP1
00000d41: MLOAD
00000d42: DUP2
00000d43: ADD
00000d44: SWAP1
00000d45: PUSH2 0x0d4e
00000d48: SWAP2
00000d49: SWAP1
00000d4a: PUSH2 0x187c
00000d4d: JUMP
00000d4e: JUMPDEST
00000d4f: ISZERO
00000d50: JUMPDEST
00000d51: ISZERO
00000d52: PUSH2 0x0d92
00000d55: JUMPI
00000d56: DUP3
00000d57: PUSH1 0x40
00000d59: MLOAD
00000d5a: PUSH32 0x5274afe700000000000000000000000000000000000000000000000000000000
00000d7b: DUP2
00000d7c: MSTORE
00000d7d: PUSH1 0x04
00000d7f: ADD
00000d80: PUSH2 0x0d89
00000d83: SWAP2
00000d84: SWAP1
00000d85: PUSH2 0x1447
00000d88: JUMP
00000d89: JUMPDEST
00000d8a: PUSH1 0x40
00000d8c: MLOAD
00000d8d: DUP1
00000d8e: SWAP2
00000d8f: SUB
00000d90: SWAP1
00000d91: REVERT
00000d92: JUMPDEST
00000d93: POP
00000d94: POP
00000d95: POP
00000d96: JUMP
00000d97: JUMPDEST
00000d98: PUSH1 0x00
00000d9a: DUP1
00000d9b: DUP3
00000d9c: SWAP1
00000d9d: POP
00000d9e: PUSH1 0x00
00000da0: JUMPDEST
00000da1: DUP5
00000da2: MLOAD
00000da3: DUP2
00000da4: LT
00000da5: ISZERO
00000da6: PUSH2 0x0de2
00000da9: JUMPI
00000daa: PUSH2 0x0dcd
00000dad: DUP3
00000dae: DUP7
00000daf: DUP4
00000db0: DUP2
00000db1: MLOAD
00000db2: DUP2
00000db3: LT
00000db4: PUSH2 0x0dc0
00000db7: JUMPI
00000db8: PUSH2 0x0dbf
00000dbb: PUSH2 0x18ee
00000dbe: JUMP
00000dbf: JUMPDEST
00000dc0: JUMPDEST
00000dc1: PUSH1 0x20
00000dc3: MUL
00000dc4: PUSH1 0x20
00000dc6: ADD
00000dc7: ADD
00000dc8: MLOAD
00000dc9: PUSH2 0x0e03
00000dcc: JUMP
00000dcd: JUMPDEST
00000dce: SWAP2
00000dcf: POP
00000dd0: DUP1
00000dd1: DUP1
00000dd2: PUSH2 0x0dda
00000dd5: SWAP1
00000dd6: PUSH2 0x191d
00000dd9: JUMP
00000dda: JUMPDEST
00000ddb: SWAP2
00000ddc: POP
00000ddd: POP
00000dde: PUSH2 0x0da0
00000de1: JUMP
00000de2: JUMPDEST
00000de3: POP
00000de4: DUP1
00000de5: SWAP2
00000de6: POP
00000de7: POP
00000de8: SWAP3
00000de9: SWAP2
00000dea: POP
00000deb: POP
00000dec: JUMP
00000ded: JUMPDEST
00000dee: PUSH1 0x60
00000df0: PUSH2 0x0dfb
00000df3: DUP4
00000df4: DUP4
00000df5: PUSH1 0x00
00000df7: PUSH2 0x0e2e
00000dfa: JUMP
00000dfb: JUMPDEST
00000dfc: SWAP1
00000dfd: POP
00000dfe: SWAP3
00000dff: SWAP2
00000e00: POP
00000e01: POP
00000e02: JUMP
00000e03: JUMPDEST
00000e04: PUSH1 0x00
00000e06: DUP2
00000e07: DUP4
00000e08: LT
00000e09: PUSH2 0x0e1b
00000e0c: JUMPI
00000e0d: PUSH2 0x0e16
00000e10: DUP3
00000e11: DUP5
00000e12: PUSH2 0x0efb
00000e15: JUMP
00000e16: JUMPDEST
00000e17: PUSH2 0x0e26
00000e1a: JUMP
00000e1b: JUMPDEST
00000e1c: PUSH2 0x0e25
00000e1f: DUP4
00000e20: DUP4
00000e21: PUSH2 0x0efb
00000e24: JUMP
00000e25: JUMPDEST
00000e26: JUMPDEST
00000e27: SWAP1
00000e28: POP
00000e29: SWAP3
00000e2a: SWAP2
00000e2b: POP
00000e2c: POP
00000e2d: JUMP
00000e2e: JUMPDEST
00000e2f: PUSH1 0x60
00000e31: DUP2
00000e32: SELFBALANCE
00000e33: LT
00000e34: ISZERO
00000e35: PUSH2 0x0e75
00000e38: JUMPI
00000e39: ADDRESS
00000e3a: PUSH1 0x40
00000e3c: MLOAD
00000e3d: PUSH32 0xcd78605900000000000000000000000000000000000000000000000000000000
00000e5e: DUP2
00000e5f: MSTORE
00000e60: PUSH1 0x04
00000e62: ADD
00000e63: PUSH2 0x0e6c
00000e66: SWAP2
00000e67: SWAP1
00000e68: PUSH2 0x1447
00000e6b: JUMP
00000e6c: JUMPDEST
00000e6d: PUSH1 0x40
00000e6f: MLOAD
00000e70: DUP1
00000e71: SWAP2
00000e72: SUB
00000e73: SWAP1
00000e74: REVERT
00000e75: JUMPDEST
00000e76: PUSH1 0x00
00000e78: DUP1
00000e79: DUP6
00000e7a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e8f: AND
00000e90: DUP5
00000e91: DUP7
00000e92: PUSH1 0x40
00000e94: MLOAD
00000e95: PUSH2 0x0e9e
00000e98: SWAP2
00000e99: SWAP1
00000e9a: PUSH2 0x19d6
00000e9d: JUMP
00000e9e: JUMPDEST
00000e9f: PUSH1 0x00
00000ea1: PUSH1 0x40
00000ea3: MLOAD
00000ea4: DUP1
00000ea5: DUP4
00000ea6: SUB
00000ea7: DUP2
00000ea8: DUP6
00000ea9: DUP8
00000eaa: GAS
00000eab: CALL
00000eac: SWAP3
00000ead: POP
00000eae: POP
00000eaf: POP
00000eb0: RETURNDATASIZE
00000eb1: DUP1
00000eb2: PUSH1 0x00
00000eb4: DUP2
00000eb5: EQ
00000eb6: PUSH2 0x0edb
00000eb9: JUMPI
00000eba: PUSH1 0x40
00000ebc: MLOAD
00000ebd: SWAP2
00000ebe: POP
00000ebf: PUSH1 0x1f
00000ec1: NOT
00000ec2: PUSH1 0x3f
00000ec4: RETURNDATASIZE
00000ec5: ADD
00000ec6: AND
00000ec7: DUP3
00000ec8: ADD
00000ec9: PUSH1 0x40
00000ecb: MSTORE
00000ecc: RETURNDATASIZE
00000ecd: DUP3
00000ece: MSTORE
00000ecf: RETURNDATASIZE
00000ed0: PUSH1 0x00
00000ed2: PUSH1 0x20
00000ed4: DUP5
00000ed5: ADD
00000ed6: RETURNDATACOPY
00000ed7: PUSH2 0x0ee0
00000eda: JUMP
00000edb: JUMPDEST
00000edc: PUSH1 0x60
00000ede: SWAP2
00000edf: POP
00000ee0: JUMPDEST
00000ee1: POP
00000ee2: SWAP2
00000ee3: POP
00000ee4: SWAP2
00000ee5: POP
00000ee6: PUSH2 0x0ef0
00000ee9: DUP7
00000eea: DUP4
00000eeb: DUP4
00000eec: PUSH2 0x0f12
00000eef: JUMP
00000ef0: JUMPDEST
00000ef1: SWAP3
00000ef2: POP
00000ef3: POP
00000ef4: POP
00000ef5: SWAP4
00000ef6: SWAP3
00000ef7: POP
00000ef8: POP
00000ef9: POP
00000efa: JUMP
00000efb: JUMPDEST
00000efc: PUSH1 0x00
00000efe: DUP3
00000eff: PUSH1 0x00
00000f01: MSTORE
00000f02: DUP2
00000f03: PUSH1 0x20
00000f05: MSTORE
00000f06: PUSH1 0x40
00000f08: PUSH1 0x00
00000f0a: KECCAK256
00000f0b: SWAP1
00000f0c: POP
00000f0d: SWAP3
00000f0e: SWAP2
00000f0f: POP
00000f10: POP
00000f11: JUMP
00000f12: JUMPDEST
00000f13: PUSH1 0x60
00000f15: DUP3
00000f16: PUSH2 0x0f27
00000f19: JUMPI
00000f1a: PUSH2 0x0f22
00000f1d: DUP3
00000f1e: PUSH2 0x0fa1
00000f21: JUMP
00000f22: JUMPDEST
00000f23: PUSH2 0x0f99
00000f26: JUMP
00000f27: JUMPDEST
00000f28: PUSH1 0x00
00000f2a: DUP3
00000f2b: MLOAD
00000f2c: EQ
00000f2d: DUP1
00000f2e: ISZERO
00000f2f: PUSH2 0x0f4f
00000f32: JUMPI
00000f33: POP
00000f34: PUSH1 0x00
00000f36: DUP5
00000f37: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f4c: AND
00000f4d: EXTCODESIZE
00000f4e: EQ
00000f4f: JUMPDEST
00000f50: ISZERO
00000f51: PUSH2 0x0f91
00000f54: JUMPI
00000f55: DUP4
00000f56: PUSH1 0x40
00000f58: MLOAD
00000f59: PUSH32 0x9996b31500000000000000000000000000000000000000000000000000000000
00000f7a: DUP2
00000f7b: MSTORE
00000f7c: PUSH1 0x04
00000f7e: ADD
00000f7f: PUSH2 0x0f88
00000f82: SWAP2
00000f83: SWAP1
00000f84: PUSH2 0x1447
00000f87: JUMP
00000f88: JUMPDEST
00000f89: PUSH1 0x40
00000f8b: MLOAD
00000f8c: DUP1
00000f8d: SWAP2
00000f8e: SUB
00000f8f: SWAP1
00000f90: REVERT
00000f91: JUMPDEST
00000f92: DUP2
00000f93: SWAP1
00000f94: POP
00000f95: PUSH2 0x0f9a
00000f98: JUMP
00000f99: JUMPDEST
00000f9a: JUMPDEST
00000f9b: SWAP4
00000f9c: SWAP3
00000f9d: POP
00000f9e: POP
00000f9f: POP
00000fa0: JUMP
00000fa1: JUMPDEST
00000fa2: PUSH1 0x00
00000fa4: DUP2
00000fa5: MLOAD
00000fa6: GT
00000fa7: ISZERO
00000fa8: PUSH2 0x0fb4
00000fab: JUMPI
00000fac: DUP1
00000fad: MLOAD
00000fae: DUP1
00000faf: DUP3
00000fb0: PUSH1 0x20
00000fb2: ADD
00000fb3: REVERT
00000fb4: JUMPDEST
00000fb5: PUSH1 0x40
00000fb7: MLOAD
00000fb8: PUSH32 0x1425ea4200000000000000000000000000000000000000000000000000000000
00000fd9: DUP2
00000fda: MSTORE
00000fdb: PUSH1 0x04
00000fdd: ADD
00000fde: PUSH1 0x40
00000fe0: MLOAD
00000fe1: DUP1
00000fe2: SWAP2
00000fe3: SUB
00000fe4: SWAP1
00000fe5: REVERT
00000fe6: JUMPDEST
00000fe7: PUSH1 0x00
00000fe9: PUSH1 0x40
00000feb: MLOAD
00000fec: SWAP1
00000fed: POP
00000fee: SWAP1
00000fef: JUMP
00000ff0: JUMPDEST
00000ff1: PUSH1 0x00
00000ff3: DUP1
00000ff4: REVERT
00000ff5: JUMPDEST
00000ff6: PUSH1 0x00
00000ff8: DUP1
00000ff9: REVERT
00000ffa: JUMPDEST
00000ffb: PUSH1 0x00
00000ffd: DUP2
00000ffe: ISZERO
00000fff: ISZERO
00001000: SWAP1
00001001: POP
00001002: SWAP2
00001003: SWAP1
00001004: POP
00001005: JUMP
00001006: JUMPDEST
00001007: PUSH2 0x100f
0000100a: DUP2
0000100b: PUSH2 0x0ffa
0000100e: JUMP
0000100f: JUMPDEST
00001010: DUP2
00001011: EQ
00001012: PUSH2 0x101a
00001015: JUMPI
00001016: PUSH1 0x00
00001018: DUP1
00001019: REVERT
0000101a: JUMPDEST
0000101b: POP
0000101c: JUMP
0000101d: JUMPDEST
0000101e: PUSH1 0x00
00001020: DUP2
00001021: CALLDATALOAD
00001022: SWAP1
00001023: POP
00001024: PUSH2 0x102c
00001027: DUP2
00001028: PUSH2 0x1006
0000102b: JUMP
0000102c: JUMPDEST
0000102d: SWAP3
0000102e: SWAP2
0000102f: POP
00001030: POP
00001031: JUMP
00001032: JUMPDEST
00001033: PUSH1 0x00
00001035: PUSH1 0x20
00001037: DUP3
00001038: DUP5
00001039: SUB
0000103a: SLT
0000103b: ISZERO
0000103c: PUSH2 0x1048
0000103f: JUMPI
00001040: PUSH2 0x1047
00001043: PUSH2 0x0ff0
00001046: JUMP
00001047: JUMPDEST
00001048: JUMPDEST
00001049: PUSH1 0x00
0000104b: PUSH2 0x1056
0000104e: DUP5
0000104f: DUP3
00001050: DUP6
00001051: ADD
00001052: PUSH2 0x101d
00001055: JUMP
00001056: JUMPDEST
00001057: SWAP2
00001058: POP
00001059: POP
0000105a: SWAP3
0000105b: SWAP2
0000105c: POP
0000105d: POP
0000105e: JUMP
0000105f: JUMPDEST
00001060: PUSH1 0x00
00001062: DUP2
00001063: SWAP1
00001064: POP
00001065: SWAP2
00001066: SWAP1
00001067: POP
00001068: JUMP
00001069: JUMPDEST
0000106a: PUSH2 0x1072
0000106d: DUP2
0000106e: PUSH2 0x105f
00001071: JUMP
00001072: JUMPDEST
00001073: DUP3
00001074: MSTORE
00001075: POP
00001076: POP
00001077: JUMP
00001078: JUMPDEST
00001079: PUSH1 0x00
0000107b: PUSH1 0x20
0000107d: DUP3
0000107e: ADD
0000107f: SWAP1
00001080: POP
00001081: PUSH2 0x108d
00001084: PUSH1 0x00
00001086: DUP4
00001087: ADD
00001088: DUP5
00001089: PUSH2 0x1069
0000108c: JUMP
0000108d: JUMPDEST
0000108e: SWAP3
0000108f: SWAP2
00001090: POP
00001091: POP
00001092: JUMP
00001093: JUMPDEST
00001094: PUSH1 0x00
00001096: DUP2
00001097: SWAP1
00001098: POP
00001099: SWAP2
0000109a: SWAP1
0000109b: POP
0000109c: JUMP
0000109d: JUMPDEST
0000109e: PUSH2 0x10a6
000010a1: DUP2
000010a2: PUSH2 0x1093
000010a5: JUMP
000010a6: JUMPDEST
000010a7: DUP2
000010a8: EQ
000010a9: PUSH2 0x10b1
000010ac: JUMPI
000010ad: PUSH1 0x00
000010af: DUP1
000010b0: REVERT
000010b1: JUMPDEST
000010b2: POP
000010b3: JUMP
000010b4: JUMPDEST
000010b5: PUSH1 0x00
000010b7: DUP2
000010b8: CALLDATALOAD
000010b9: SWAP1
000010ba: POP
000010bb: PUSH2 0x10c3
000010be: DUP2
000010bf: PUSH2 0x109d
000010c2: JUMP
000010c3: JUMPDEST
000010c4: SWAP3
000010c5: SWAP2
000010c6: POP
000010c7: POP
000010c8: JUMP
000010c9: JUMPDEST
000010ca: PUSH1 0x00
000010cc: DUP1
000010cd: REVERT
000010ce: JUMPDEST
000010cf: PUSH1 0x00
000010d1: PUSH1 0x1f
000010d3: NOT
000010d4: PUSH1 0x1f
000010d6: DUP4
000010d7: ADD
000010d8: AND
000010d9: SWAP1
000010da: POP
000010db: SWAP2
000010dc: SWAP1
000010dd: POP
000010de: JUMP
000010df: JUMPDEST
000010e0: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00001101: PUSH1 0x00
00001103: MSTORE
00001104: PUSH1 0x41
00001106: PUSH1 0x04
00001108: MSTORE
00001109: PUSH1 0x24
0000110b: PUSH1 0x00
0000110d: REVERT
0000110e: JUMPDEST
0000110f: PUSH2 0x1117
00001112: DUP3
00001113: PUSH2 0x10ce
00001116: JUMP
00001117: JUMPDEST
00001118: DUP2
00001119: ADD
0000111a: DUP2
0000111b: DUP2
0000111c: LT
0000111d: PUSH8 0xffffffffffffffff
00001126: DUP3
00001127: GT
00001128: OR
00001129: ISZERO
0000112a: PUSH2 0x1136
0000112d: JUMPI
0000112e: PUSH2 0x1135
00001131: PUSH2 0x10df
00001134: JUMP
00001135: JUMPDEST
00001136: JUMPDEST
00001137: DUP1
00001138: PUSH1 0x40
0000113a: MSTORE
0000113b: POP
0000113c: POP
0000113d: POP
0000113e: JUMP
0000113f: JUMPDEST
00001140: PUSH1 0x00
00001142: PUSH2 0x1149
00001145: PUSH2 0x0fe6
00001148: JUMP
00001149: JUMPDEST
0000114a: SWAP1
0000114b: POP
0000114c: PUSH2 0x1155
0000114f: DUP3
00001150: DUP3
00001151: PUSH2 0x110e
00001154: JUMP
00001155: JUMPDEST
00001156: SWAP2
00001157: SWAP1
00001158: POP
00001159: JUMP
0000115a: JUMPDEST
0000115b: PUSH1 0x00
0000115d: PUSH8 0xffffffffffffffff
00001166: DUP3
00001167: GT
00001168: ISZERO
00001169: PUSH2 0x1175
0000116c: JUMPI
0000116d: PUSH2 0x1174
00001170: PUSH2 0x10df
00001173: JUMP
00001174: JUMPDEST
00001175: JUMPDEST
00001176: PUSH1 0x20
00001178: DUP3
00001179: MUL
0000117a: SWAP1
0000117b: POP
0000117c: PUSH1 0x20
0000117e: DUP2
0000117f: ADD
00001180: SWAP1
00001181: POP
00001182: SWAP2
00001183: SWAP1
00001184: POP
00001185: JUMP
00001186: JUMPDEST
00001187: PUSH1 0x00
00001189: DUP1
0000118a: REVERT
0000118b: JUMPDEST
0000118c: PUSH2 0x1194
0000118f: DUP2
00001190: PUSH2 0x105f
00001193: JUMP
00001194: JUMPDEST
00001195: DUP2
00001196: EQ
00001197: PUSH2 0x119f
0000119a: JUMPI
0000119b: PUSH1 0x00
0000119d: DUP1
0000119e: REVERT
0000119f: JUMPDEST
000011a0: POP
000011a1: JUMP
000011a2: JUMPDEST
000011a3: PUSH1 0x00
000011a5: DUP2
000011a6: CALLDATALOAD
000011a7: SWAP1
000011a8: POP
000011a9: PUSH2 0x11b1
000011ac: DUP2
000011ad: PUSH2 0x118b
000011b0: JUMP
000011b1: JUMPDEST
000011b2: SWAP3
000011b3: SWAP2
000011b4: POP
000011b5: POP
000011b6: JUMP
000011b7: JUMPDEST
000011b8: PUSH1 0x00
000011ba: PUSH2 0x11ca
000011bd: PUSH2 0x11c5
000011c0: DUP5
000011c1: PUSH2 0x115a
000011c4: JUMP
000011c5: JUMPDEST
000011c6: PUSH2 0x113f
000011c9: JUMP
000011ca: JUMPDEST
000011cb: SWAP1
000011cc: POP
000011cd: DUP1
000011ce: DUP4
000011cf: DUP3
000011d0: MSTORE
000011d1: PUSH1 0x20
000011d3: DUP3
000011d4: ADD
000011d5: SWAP1
000011d6: POP
000011d7: PUSH1 0x20
000011d9: DUP5
000011da: MUL
000011db: DUP4
000011dc: ADD
000011dd: DUP6
000011de: DUP2
000011df: GT
000011e0: ISZERO
000011e1: PUSH2 0x11ed
000011e4: JUMPI
000011e5: PUSH2 0x11ec
000011e8: PUSH2 0x1186
000011eb: JUMP
000011ec: JUMPDEST
000011ed: JUMPDEST
000011ee: DUP4
000011ef: JUMPDEST
000011f0: DUP2
000011f1: DUP2
000011f2: LT
000011f3: ISZERO
000011f4: PUSH2 0x1216
000011f7: JUMPI
000011f8: DUP1
000011f9: PUSH2 0x1202
000011fc: DUP9
000011fd: DUP3
000011fe: PUSH2 0x11a2
00001201: JUMP
00001202: JUMPDEST
00001203: DUP5
00001204: MSTORE
00001205: PUSH1 0x20
00001207: DUP5
00001208: ADD
00001209: SWAP4
0000120a: POP
0000120b: POP
0000120c: PUSH1 0x20
0000120e: DUP2
0000120f: ADD
00001210: SWAP1
00001211: POP
00001212: PUSH2 0x11ef
00001215: JUMP
00001216: JUMPDEST
00001217: POP
00001218: POP
00001219: POP
0000121a: SWAP4
0000121b: SWAP3
0000121c: POP
0000121d: POP
0000121e: POP
0000121f: JUMP
00001220: JUMPDEST
00001221: PUSH1 0x00
00001223: DUP3
00001224: PUSH1 0x1f
00001226: DUP4
00001227: ADD
00001228: SLT
00001229: PUSH2 0x1235
0000122c: JUMPI
0000122d: PUSH2 0x1234
00001230: PUSH2 0x10c9
00001233: JUMP
00001234: JUMPDEST
00001235: JUMPDEST
00001236: DUP2
00001237: CALLDATALOAD
00001238: PUSH2 0x1245
0000123b: DUP5
0000123c: DUP3
0000123d: PUSH1 0x20
0000123f: DUP7
00001240: ADD
00001241: PUSH2 0x11b7
00001244: JUMP
00001245: JUMPDEST
00001246: SWAP2
00001247: POP
00001248: POP
00001249: SWAP3
0000124a: SWAP2
0000124b: POP
0000124c: POP
0000124d: JUMP
0000124e: JUMPDEST
0000124f: PUSH1 0x00
00001251: DUP1
00001252: PUSH1 0x40
00001254: DUP4
00001255: DUP6
00001256: SUB
00001257: SLT
00001258: ISZERO
00001259: PUSH2 0x1265
0000125c: JUMPI
0000125d: PUSH2 0x1264
00001260: PUSH2 0x0ff0
00001263: JUMP
00001264: JUMPDEST
00001265: JUMPDEST
00001266: PUSH1 0x00
00001268: PUSH2 0x1273
0000126b: DUP6
0000126c: DUP3
0000126d: DUP7
0000126e: ADD
0000126f: PUSH2 0x10b4
00001272: JUMP
00001273: JUMPDEST
00001274: SWAP3
00001275: POP
00001276: POP
00001277: PUSH1 0x20
00001279: DUP4
0000127a: ADD
0000127b: CALLDATALOAD
0000127c: PUSH8 0xffffffffffffffff
00001285: DUP2
00001286: GT
00001287: ISZERO
00001288: PUSH2 0x1294
0000128b: JUMPI
0000128c: PUSH2 0x1293
0000128f: PUSH2 0x0ff5
00001292: JUMP
00001293: JUMPDEST
00001294: JUMPDEST
00001295: PUSH2 0x12a0
00001298: DUP6
00001299: DUP3
0000129a: DUP7
0000129b: ADD
0000129c: PUSH2 0x1220
0000129f: JUMP
000012a0: JUMPDEST
000012a1: SWAP2
000012a2: POP
000012a3: POP
000012a4: SWAP3
000012a5: POP
000012a6: SWAP3
000012a7: SWAP1
000012a8: POP
000012a9: JUMP
000012aa: JUMPDEST
000012ab: PUSH1 0x00
000012ad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012c2: DUP3
000012c3: AND
000012c4: SWAP1
000012c5: POP
000012c6: SWAP2
000012c7: SWAP1
000012c8: POP
000012c9: JUMP
000012ca: JUMPDEST
000012cb: PUSH1 0x00
000012cd: PUSH2 0x12d5
000012d0: DUP3
000012d1: PUSH2 0x12aa
000012d4: JUMP
000012d5: JUMPDEST
000012d6: SWAP1
000012d7: POP
000012d8: SWAP2
000012d9: SWAP1
000012da: POP
000012db: JUMP
000012dc: JUMPDEST
000012dd: PUSH2 0x12e5
000012e0: DUP2
000012e1: PUSH2 0x12ca
000012e4: JUMP
000012e5: JUMPDEST
000012e6: DUP2
000012e7: EQ
000012e8: PUSH2 0x12f0
000012eb: JUMPI
000012ec: PUSH1 0x00
000012ee: DUP1
000012ef: REVERT
000012f0: JUMPDEST
000012f1: POP
000012f2: JUMP
000012f3: JUMPDEST
000012f4: PUSH1 0x00
000012f6: DUP2
000012f7: CALLDATALOAD
000012f8: SWAP1
000012f9: POP
000012fa: PUSH2 0x1302
000012fd: DUP2
000012fe: PUSH2 0x12dc
00001301: JUMP
00001302: JUMPDEST
00001303: SWAP3
00001304: SWAP2
00001305: POP
00001306: POP
00001307: JUMP
00001308: JUMPDEST
00001309: PUSH1 0x00
0000130b: DUP1
0000130c: PUSH1 0x00
0000130e: PUSH1 0x60
00001310: DUP5
00001311: DUP7
00001312: SUB
00001313: SLT
00001314: ISZERO
00001315: PUSH2 0x1321
00001318: JUMPI
00001319: PUSH2 0x1320
0000131c: PUSH2 0x0ff0
0000131f: JUMP
00001320: JUMPDEST
00001321: JUMPDEST
00001322: PUSH1 0x00
00001324: PUSH2 0x132f
00001327: DUP7
00001328: DUP3
00001329: DUP8
0000132a: ADD
0000132b: PUSH2 0x12f3
0000132e: JUMP
0000132f: JUMPDEST
00001330: SWAP4
00001331: POP
00001332: POP
00001333: PUSH1 0x20
00001335: PUSH2 0x1340
00001338: DUP7
00001339: DUP3
0000133a: DUP8
0000133b: ADD
0000133c: PUSH2 0x10b4
0000133f: JUMP
00001340: JUMPDEST
00001341: SWAP3
00001342: POP
00001343: POP
00001344: PUSH1 0x40
00001346: DUP5
00001347: ADD
00001348: CALLDATALOAD
00001349: PUSH8 0xffffffffffffffff
00001352: DUP2
00001353: GT
00001354: ISZERO
00001355: PUSH2 0x1361
00001358: JUMPI
00001359: PUSH2 0x1360
0000135c: PUSH2 0x0ff5
0000135f: JUMP
00001360: JUMPDEST
00001361: JUMPDEST
00001362: PUSH2 0x136d
00001365: DUP7
00001366: DUP3
00001367: DUP8
00001368: ADD
00001369: PUSH2 0x1220
0000136c: JUMP
0000136d: JUMPDEST
0000136e: SWAP2
0000136f: POP
00001370: POP
00001371: SWAP3
00001372: POP
00001373: SWAP3
00001374: POP
00001375: SWAP3
00001376: JUMP
00001377: JUMPDEST
00001378: PUSH1 0x00
0000137a: PUSH1 0x20
0000137c: DUP3
0000137d: DUP5
0000137e: SUB
0000137f: SLT
00001380: ISZERO
00001381: PUSH2 0x138d
00001384: JUMPI
00001385: PUSH2 0x138c
00001388: PUSH2 0x0ff0
0000138b: JUMP
0000138c: JUMPDEST
0000138d: JUMPDEST
0000138e: PUSH1 0x00
00001390: PUSH2 0x139b
00001393: DUP5
00001394: DUP3
00001395: DUP6
00001396: ADD
00001397: PUSH2 0x12f3
0000139a: JUMP
0000139b: JUMPDEST
0000139c: SWAP2
0000139d: POP
0000139e: POP
0000139f: SWAP3
000013a0: SWAP2
000013a1: POP
000013a2: POP
000013a3: JUMP
000013a4: JUMPDEST
000013a5: PUSH2 0x13ad
000013a8: DUP2
000013a9: PUSH2 0x1093
000013ac: JUMP
000013ad: JUMPDEST
000013ae: DUP3
000013af: MSTORE
000013b0: POP
000013b1: POP
000013b2: JUMP
000013b3: JUMPDEST
000013b4: PUSH1 0x00
000013b6: PUSH1 0x20
000013b8: DUP3
000013b9: ADD
000013ba: SWAP1
000013bb: POP
000013bc: PUSH2 0x13c8
000013bf: PUSH1 0x00
000013c1: DUP4
000013c2: ADD
000013c3: DUP5
000013c4: PUSH2 0x13a4
000013c7: JUMP
000013c8: JUMPDEST
000013c9: SWAP3
000013ca: SWAP2
000013cb: POP
000013cc: POP
000013cd: JUMP
000013ce: JUMPDEST
000013cf: PUSH2 0x13d7
000013d2: DUP2
000013d3: PUSH2 0x0ffa
000013d6: JUMP
000013d7: JUMPDEST
000013d8: DUP3
000013d9: MSTORE
000013da: POP
000013db: POP
000013dc: JUMP
000013dd: JUMPDEST
000013de: PUSH1 0x00
000013e0: PUSH1 0x20
000013e2: DUP3
000013e3: ADD
000013e4: SWAP1
000013e5: POP
000013e6: PUSH2 0x13f2
000013e9: PUSH1 0x00
000013eb: DUP4
000013ec: ADD
000013ed: DUP5
000013ee: PUSH2 0x13ce
000013f1: JUMP
000013f2: JUMPDEST
000013f3: SWAP3
000013f4: SWAP2
000013f5: POP
000013f6: POP
000013f7: JUMP
000013f8: JUMPDEST
000013f9: PUSH1 0x00
000013fb: DUP1
000013fc: PUSH1 0x40
000013fe: DUP4
000013ff: DUP6
00001400: SUB
00001401: SLT
00001402: ISZERO
00001403: PUSH2 0x140f
00001406: JUMPI
00001407: PUSH2 0x140e
0000140a: PUSH2 0x0ff0
0000140d: JUMP
0000140e: JUMPDEST
0000140f: JUMPDEST
00001410: PUSH1 0x00
00001412: PUSH2 0x141d
00001415: DUP6
00001416: DUP3
00001417: DUP7
00001418: ADD
00001419: PUSH2 0x12f3
0000141c: JUMP
0000141d: JUMPDEST
0000141e: SWAP3
0000141f: POP
00001420: POP
00001421: PUSH1 0x20
00001423: PUSH2 0x142e
00001426: DUP6
00001427: DUP3
00001428: DUP7
00001429: ADD
0000142a: PUSH2 0x10b4
0000142d: JUMP
0000142e: JUMPDEST
0000142f: SWAP2
00001430: POP
00001431: POP
00001432: SWAP3
00001433: POP
00001434: SWAP3
00001435: SWAP1
00001436: POP
00001437: JUMP
00001438: JUMPDEST
00001439: PUSH2 0x1441
0000143c: DUP2
0000143d: PUSH2 0x12ca
00001440: JUMP
00001441: JUMPDEST
00001442: DUP3
00001443: MSTORE
00001444: POP
00001445: POP
00001446: JUMP
00001447: JUMPDEST
00001448: PUSH1 0x00
0000144a: PUSH1 0x20
0000144c: DUP3
0000144d: ADD
0000144e: SWAP1
0000144f: POP
00001450: PUSH2 0x145c
00001453: PUSH1 0x00
00001455: DUP4
00001456: ADD
00001457: DUP5
00001458: PUSH2 0x1438
0000145b: JUMP
0000145c: JUMPDEST
0000145d: SWAP3
0000145e: SWAP2
0000145f: POP
00001460: POP
00001461: JUMP
00001462: JUMPDEST
00001463: PUSH1 0x00
00001465: PUSH1 0x20
00001467: DUP3
00001468: DUP5
00001469: SUB
0000146a: SLT
0000146b: ISZERO
0000146c: PUSH2 0x1478
0000146f: JUMPI
00001470: PUSH2 0x1477
00001473: PUSH2 0x0ff0
00001476: JUMP
00001477: JUMPDEST
00001478: JUMPDEST
00001479: PUSH1 0x00
0000147b: PUSH2 0x1486
0000147e: DUP5
0000147f: DUP3
00001480: DUP6
00001481: ADD
00001482: PUSH2 0x11a2
00001485: JUMP
00001486: JUMPDEST
00001487: SWAP2
00001488: POP
00001489: POP
0000148a: SWAP3
0000148b: SWAP2
0000148c: POP
0000148d: POP
0000148e: JUMP
0000148f: JUMPDEST
00001490: PUSH1 0x00
00001492: DUP1
00001493: PUSH1 0x00
00001495: DUP1
00001496: PUSH1 0x80
00001498: DUP6
00001499: DUP8
0000149a: SUB
0000149b: SLT
0000149c: ISZERO
0000149d: PUSH2 0x14a9
000014a0: JUMPI
000014a1: PUSH2 0x14a8
000014a4: PUSH2 0x0ff0
000014a7: JUMP
000014a8: JUMPDEST
000014a9: JUMPDEST
000014aa: PUSH1 0x00
000014ac: PUSH2 0x14b7
000014af: DUP8
000014b0: DUP3
000014b1: DUP9
000014b2: ADD
000014b3: PUSH2 0x12f3
000014b6: JUMP
000014b7: JUMPDEST
000014b8: SWAP5
000014b9: POP
000014ba: POP
000014bb: PUSH1 0x20
000014bd: PUSH2 0x14c8
000014c0: DUP8
000014c1: DUP3
000014c2: DUP9
000014c3: ADD
000014c4: PUSH2 0x12f3
000014c7: JUMP
000014c8: JUMPDEST
000014c9: SWAP4
000014ca: POP
000014cb: POP
000014cc: PUSH1 0x40
000014ce: PUSH2 0x14d9
000014d1: DUP8
000014d2: DUP3
000014d3: DUP9
000014d4: ADD
000014d5: PUSH2 0x10b4
000014d8: JUMP
000014d9: JUMPDEST
000014da: SWAP3
000014db: POP
000014dc: POP
000014dd: PUSH1 0x60
000014df: DUP6
000014e0: ADD
000014e1: CALLDATALOAD
000014e2: PUSH8 0xffffffffffffffff
000014eb: DUP2
000014ec: GT
000014ed: ISZERO
000014ee: PUSH2 0x14fa
000014f1: JUMPI
000014f2: PUSH2 0x14f9
000014f5: PUSH2 0x0ff5
000014f8: JUMP
000014f9: JUMPDEST
000014fa: JUMPDEST
000014fb: PUSH2 0x1506
000014fe: DUP8
000014ff: DUP3
00001500: DUP9
00001501: ADD
00001502: PUSH2 0x1220
00001505: JUMP
00001506: JUMPDEST
00001507: SWAP2
00001508: POP
00001509: POP
0000150a: SWAP3
0000150b: SWAP6
0000150c: SWAP2
0000150d: SWAP5
0000150e: POP
0000150f: SWAP3
00001510: POP
00001511: JUMP
00001512: JUMPDEST
00001513: PUSH1 0x00
00001515: DUP3
00001516: DUP3
00001517: MSTORE
00001518: PUSH1 0x20
0000151a: DUP3
0000151b: ADD
0000151c: SWAP1
0000151d: POP
0000151e: SWAP3
0000151f: SWAP2
00001520: POP
00001521: POP
00001522: JUMP
00001523: JUMPDEST
00001524: PUSH32 0x696e76616c696420706175736564000000000000000000000000000000000000
00001545: PUSH1 0x00
00001547: DUP3
00001548: ADD
00001549: MSTORE
0000154a: POP
0000154b: JUMP
0000154c: JUMPDEST
0000154d: PUSH1 0x00
0000154f: PUSH2 0x1559
00001552: PUSH1 0x0e
00001554: DUP4
00001555: PUSH2 0x1512
00001558: JUMP
00001559: JUMPDEST
0000155a: SWAP2
0000155b: POP
0000155c: PUSH2 0x1564
0000155f: DUP3
00001560: PUSH2 0x1523
00001563: JUMP
00001564: JUMPDEST
00001565: PUSH1 0x20
00001567: DUP3
00001568: ADD
00001569: SWAP1
0000156a: POP
0000156b: SWAP2
0000156c: SWAP1
0000156d: POP
0000156e: JUMP
0000156f: JUMPDEST
00001570: PUSH1 0x00
00001572: PUSH1 0x20
00001574: DUP3
00001575: ADD
00001576: SWAP1
00001577: POP
00001578: DUP2
00001579: DUP2
0000157a: SUB
0000157b: PUSH1 0x00
0000157d: DUP4
0000157e: ADD
0000157f: MSTORE
00001580: PUSH2 0x1588
00001583: DUP2
00001584: PUSH2 0x154c
00001587: JUMP
00001588: JUMPDEST
00001589: SWAP1
0000158a: POP
0000158b: SWAP2
0000158c: SWAP1
0000158d: POP
0000158e: JUMP
0000158f: JUMPDEST
00001590: PUSH32 0x616c726561647920636c61696d65640000000000000000000000000000000000
000015b1: PUSH1 0x00
000015b3: DUP3
000015b4: ADD
000015b5: MSTORE
000015b6: POP
000015b7: JUMP
000015b8: JUMPDEST
000015b9: PUSH1 0x00
000015bb: PUSH2 0x15c5
000015be: PUSH1 0x0f
000015c0: DUP4
000015c1: PUSH2 0x1512
000015c4: JUMP
000015c5: JUMPDEST
000015c6: SWAP2
000015c7: POP
000015c8: PUSH2 0x15d0
000015cb: DUP3
000015cc: PUSH2 0x158f
000015cf: JUMP
000015d0: JUMPDEST
000015d1: PUSH1 0x20
000015d3: DUP3
000015d4: ADD
000015d5: SWAP1
000015d6: POP
000015d7: SWAP2
000015d8: SWAP1
000015d9: POP
000015da: JUMP
000015db: JUMPDEST
000015dc: PUSH1 0x00
000015de: PUSH1 0x20
000015e0: DUP3
000015e1: ADD
000015e2: SWAP1
000015e3: POP
000015e4: DUP2
000015e5: DUP2
000015e6: SUB
000015e7: PUSH1 0x00
000015e9: DUP4
000015ea: ADD
000015eb: MSTORE
000015ec: PUSH2 0x15f4
000015ef: DUP2
000015f0: PUSH2 0x15b8
000015f3: JUMP
000015f4: JUMPDEST
000015f5: SWAP1
000015f6: POP
000015f7: SWAP2
000015f8: SWAP1
000015f9: POP
000015fa: JUMP
000015fb: JUMPDEST
000015fc: PUSH1 0x00
000015fe: PUSH1 0x60
00001600: DUP3
00001601: ADD
00001602: SWAP1
00001603: POP
00001604: PUSH2 0x1610
00001607: PUSH1 0x00
00001609: DUP4
0000160a: ADD
0000160b: DUP7
0000160c: PUSH2 0x1438
0000160f: JUMP
00001610: JUMPDEST
00001611: PUSH2 0x161d
00001614: PUSH1 0x20
00001616: DUP4
00001617: ADD
00001618: DUP6
00001619: PUSH2 0x1438
0000161c: JUMP
0000161d: JUMPDEST
0000161e: PUSH2 0x162a
00001621: PUSH1 0x40
00001623: DUP4
00001624: ADD
00001625: DUP5
00001626: PUSH2 0x13a4
00001629: JUMP
0000162a: JUMPDEST
0000162b: SWAP5
0000162c: SWAP4
0000162d: POP
0000162e: POP
0000162f: POP
00001630: POP
00001631: JUMP
00001632: JUMPDEST
00001633: PUSH1 0x00
00001635: PUSH1 0x40
00001637: DUP3
00001638: ADD
00001639: SWAP1
0000163a: POP
0000163b: PUSH2 0x1647
0000163e: PUSH1 0x00
00001640: DUP4
00001641: ADD
00001642: DUP6
00001643: PUSH2 0x1069
00001646: JUMP
00001647: JUMPDEST
00001648: PUSH2 0x1654
0000164b: PUSH1 0x20
0000164d: DUP4
0000164e: ADD
0000164f: DUP5
00001650: PUSH2 0x1069
00001653: JUMP
00001654: JUMPDEST
00001655: SWAP4
00001656: SWAP3
00001657: POP
00001658: POP
00001659: POP
0000165a: JUMP
0000165b: JUMPDEST
0000165c: PUSH1 0x00
0000165e: PUSH1 0x40
00001660: DUP3
00001661: ADD
00001662: SWAP1
00001663: POP
00001664: PUSH2 0x1670
00001667: PUSH1 0x00
00001669: DUP4
0000166a: ADD
0000166b: DUP6
0000166c: PUSH2 0x1438
0000166f: JUMP
00001670: JUMPDEST
00001671: PUSH2 0x167d
00001674: PUSH1 0x20
00001676: DUP4
00001677: ADD
00001678: DUP5
00001679: PUSH2 0x13a4
0000167c: JUMP
0000167d: JUMPDEST
0000167e: SWAP4
0000167f: SWAP3
00001680: POP
00001681: POP
00001682: POP
00001683: JUMP
00001684: JUMPDEST
00001685: PUSH32 0x636c61696d656400000000000000000000000000000000000000000000000000
000016a6: PUSH1 0x00
000016a8: DUP3
000016a9: ADD
000016aa: MSTORE
000016ab: POP
000016ac: JUMP
000016ad: JUMPDEST
000016ae: PUSH1 0x00
000016b0: PUSH2 0x16ba
000016b3: PUSH1 0x07
000016b5: DUP4
000016b6: PUSH2 0x1512
000016b9: JUMP
000016ba: JUMPDEST
000016bb: SWAP2
000016bc: POP
000016bd: PUSH2 0x16c5
000016c0: DUP3
000016c1: PUSH2 0x1684
000016c4: JUMP
000016c5: JUMPDEST
000016c6: PUSH1 0x20
000016c8: DUP3
000016c9: ADD
000016ca: SWAP1
000016cb: POP
000016cc: SWAP2
000016cd: SWAP1
000016ce: POP
000016cf: JUMP
000016d0: JUMPDEST
000016d1: PUSH1 0x00
000016d3: PUSH1 0x20
000016d5: DUP3
000016d6: ADD
000016d7: SWAP1
000016d8: POP
000016d9: DUP2
000016da: DUP2
000016db: SUB
000016dc: PUSH1 0x00
000016de: DUP4
000016df: ADD
000016e0: MSTORE
000016e1: PUSH2 0x16e9
000016e4: DUP2
000016e5: PUSH2 0x16ad
000016e8: JUMP
000016e9: JUMPDEST
000016ea: SWAP1
000016eb: POP
000016ec: SWAP2
000016ed: SWAP1
000016ee: POP
000016ef: JUMP
000016f0: JUMPDEST
000016f1: PUSH32 0x636c61696d207061757365640000000000000000000000000000000000000000
00001712: PUSH1 0x00
00001714: DUP3
00001715: ADD
00001716: MSTORE
00001717: POP
00001718: JUMP
00001719: JUMPDEST
0000171a: PUSH1 0x00
0000171c: PUSH2 0x1726
0000171f: PUSH1 0x0c
00001721: DUP4
00001722: PUSH2 0x1512
00001725: JUMP
00001726: JUMPDEST
00001727: SWAP2
00001728: POP
00001729: PUSH2 0x1731
0000172c: DUP3
0000172d: PUSH2 0x16f0
00001730: JUMP
00001731: JUMPDEST
00001732: PUSH1 0x20
00001734: DUP3
00001735: ADD
00001736: SWAP1
00001737: POP
00001738: SWAP2
00001739: SWAP1
0000173a: POP
0000173b: JUMP
0000173c: JUMPDEST
0000173d: PUSH1 0x00
0000173f: PUSH1 0x20
00001741: DUP3
00001742: ADD
00001743: SWAP1
00001744: POP
00001745: DUP2
00001746: DUP2
00001747: SUB
00001748: PUSH1 0x00
0000174a: DUP4
0000174b: ADD
0000174c: MSTORE
0000174d: PUSH2 0x1755
00001750: DUP2
00001751: PUSH2 0x1719
00001754: JUMP
00001755: JUMPDEST
00001756: SWAP1
00001757: POP
00001758: SWAP2
00001759: SWAP1
0000175a: POP
0000175b: JUMP
0000175c: JUMPDEST
0000175d: PUSH1 0x00
0000175f: DUP2
00001760: SWAP1
00001761: POP
00001762: SWAP2
00001763: SWAP1
00001764: POP
00001765: JUMP
00001766: JUMPDEST
00001767: PUSH2 0x1777
0000176a: PUSH2 0x1772
0000176d: DUP3
0000176e: PUSH2 0x105f
00001771: JUMP
00001772: JUMPDEST
00001773: PUSH2 0x175c
00001776: JUMP
00001777: JUMPDEST
00001778: DUP3
00001779: MSTORE
0000177a: POP
0000177b: POP
0000177c: JUMP
0000177d: JUMPDEST
0000177e: PUSH1 0x00
00001780: PUSH2 0x1789
00001783: DUP3
00001784: DUP5
00001785: PUSH2 0x1766
00001788: JUMP
00001789: JUMPDEST
0000178a: PUSH1 0x20
0000178c: DUP3
0000178d: ADD
0000178e: SWAP2
0000178f: POP
00001790: DUP2
00001791: SWAP1
00001792: POP
00001793: SWAP3
00001794: SWAP2
00001795: POP
00001796: POP
00001797: JUMP
00001798: JUMPDEST
00001799: PUSH32 0x696e76616c696420616d6f756e74000000000000000000000000000000000000
000017ba: PUSH1 0x00
000017bc: DUP3
000017bd: ADD
000017be: MSTORE
000017bf: POP
000017c0: JUMP
000017c1: JUMPDEST
000017c2: PUSH1 0x00
000017c4: PUSH2 0x17ce
000017c7: PUSH1 0x0e
000017c9: DUP4
000017ca: PUSH2 0x1512
000017cd: JUMP
000017ce: JUMPDEST
000017cf: SWAP2
000017d0: POP
000017d1: PUSH2 0x17d9
000017d4: DUP3
000017d5: PUSH2 0x1798
000017d8: JUMP
000017d9: JUMPDEST
000017da: PUSH1 0x20
000017dc: DUP3
000017dd: ADD
000017de: SWAP1
000017df: POP
000017e0: SWAP2
000017e1: SWAP1
000017e2: POP
000017e3: JUMP
000017e4: JUMPDEST
000017e5: PUSH1 0x00
000017e7: PUSH1 0x20
000017e9: DUP3
000017ea: ADD
000017eb: SWAP1
000017ec: POP
000017ed: DUP2
000017ee: DUP2
000017ef: SUB
000017f0: PUSH1 0x00
000017f2: DUP4
000017f3: ADD
000017f4: MSTORE
000017f5: PUSH2 0x17fd
000017f8: DUP2
000017f9: PUSH2 0x17c1
000017fc: JUMP
000017fd: JUMPDEST
000017fe: SWAP1
000017ff: POP
00001800: SWAP2
00001801: SWAP1
00001802: POP
00001803: JUMP
00001804: JUMPDEST
00001805: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00001826: PUSH1 0x00
00001828: MSTORE
00001829: PUSH1 0x11
0000182b: PUSH1 0x04
0000182d: MSTORE
0000182e: PUSH1 0x24
00001830: PUSH1 0x00
00001832: REVERT
00001833: JUMPDEST
00001834: PUSH1 0x00
00001836: PUSH2 0x183e
00001839: DUP3
0000183a: PUSH2 0x1093
0000183d: JUMP
0000183e: JUMPDEST
0000183f: SWAP2
00001840: POP
00001841: PUSH2 0x1849
00001844: DUP4
00001845: PUSH2 0x1093
00001848: JUMP
00001849: JUMPDEST
0000184a: SWAP3
0000184b: POP
0000184c: DUP3
0000184d: DUP3
0000184e: SUB
0000184f: SWAP1
00001850: POP
00001851: DUP2
00001852: DUP2
00001853: GT
00001854: ISZERO
00001855: PUSH2 0x1861
00001858: JUMPI
00001859: PUSH2 0x1860
0000185c: PUSH2 0x1804
0000185f: JUMP
00001860: JUMPDEST
00001861: JUMPDEST
00001862: SWAP3
00001863: SWAP2
00001864: POP
00001865: POP
00001866: JUMP
00001867: JUMPDEST
00001868: PUSH1 0x00
0000186a: DUP2
0000186b: MLOAD
0000186c: SWAP1
0000186d: POP
0000186e: PUSH2 0x1876
00001871: DUP2
00001872: PUSH2 0x1006
00001875: JUMP
00001876: JUMPDEST
00001877: SWAP3
00001878: SWAP2
00001879: POP
0000187a: POP
0000187b: JUMP
0000187c: JUMPDEST
0000187d: PUSH1 0x00
0000187f: PUSH1 0x20
00001881: DUP3
00001882: DUP5
00001883: SUB
00001884: SLT
00001885: ISZERO
00001886: PUSH2 0x1892
00001889: JUMPI
0000188a: PUSH2 0x1891
0000188d: PUSH2 0x0ff0
00001890: JUMP
00001891: JUMPDEST
00001892: JUMPDEST
00001893: PUSH1 0x00
00001895: PUSH2 0x18a0
00001898: DUP5
00001899: DUP3
0000189a: DUP6
0000189b: ADD
0000189c: PUSH2 0x1867
0000189f: JUMP
000018a0: JUMPDEST
000018a1: SWAP2
000018a2: POP
000018a3: POP
000018a4: SWAP3
000018a5: SWAP2
000018a6: POP
000018a7: POP
000018a8: JUMP
000018a9: JUMPDEST
000018aa: PUSH1 0x00
000018ac: PUSH1 0x80
000018ae: DUP3
000018af: ADD
000018b0: SWAP1
000018b1: POP
000018b2: PUSH2 0x18be
000018b5: PUSH1 0x00
000018b7: DUP4
000018b8: ADD
000018b9: DUP8
000018ba: PUSH2 0x1438
000018bd: JUMP
000018be: JUMPDEST
000018bf: PUSH2 0x18cb
000018c2: PUSH1 0x20
000018c4: DUP4
000018c5: ADD
000018c6: DUP7
000018c7: PUSH2 0x1438
000018ca: JUMP
000018cb: JUMPDEST
000018cc: PUSH2 0x18d8
000018cf: PUSH1 0x40
000018d1: DUP4
000018d2: ADD
000018d3: DUP6
000018d4: PUSH2 0x1438
000018d7: JUMP
000018d8: JUMPDEST
000018d9: PUSH2 0x18e5
000018dc: PUSH1 0x60
000018de: DUP4
000018df: ADD
000018e0: DUP5
000018e1: PUSH2 0x13a4
000018e4: JUMP
000018e5: JUMPDEST
000018e6: SWAP6
000018e7: SWAP5
000018e8: POP
000018e9: POP
000018ea: POP
000018eb: POP
000018ec: POP
000018ed: JUMP
000018ee: JUMPDEST
000018ef: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00001910: PUSH1 0x00
00001912: MSTORE
00001913: PUSH1 0x32
00001915: PUSH1 0x04
00001917: MSTORE
00001918: PUSH1 0x24
0000191a: PUSH1 0x00
0000191c: REVERT
0000191d: JUMPDEST
0000191e: PUSH1 0x00
00001920: PUSH2 0x1928
00001923: DUP3
00001924: PUSH2 0x1093
00001927: JUMP
00001928: JUMPDEST
00001929: SWAP2
0000192a: POP
0000192b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000194c: DUP3
0000194d: SUB
0000194e: PUSH2 0x195a
00001951: JUMPI
00001952: PUSH2 0x1959
00001955: PUSH2 0x1804
00001958: JUMP
00001959: JUMPDEST
0000195a: JUMPDEST
0000195b: PUSH1 0x01
0000195d: DUP3
0000195e: ADD
0000195f: SWAP1
00001960: POP
00001961: SWAP2
00001962: SWAP1
00001963: POP
00001964: JUMP
00001965: JUMPDEST
00001966: PUSH1 0x00
00001968: DUP2
00001969: MLOAD
0000196a: SWAP1
0000196b: POP
0000196c: SWAP2
0000196d: SWAP1
0000196e: POP
0000196f: JUMP
00001970: JUMPDEST
00001971: PUSH1 0x00
00001973: DUP2
00001974: SWAP1
00001975: POP
00001976: SWAP3
00001977: SWAP2
00001978: POP
00001979: POP
0000197a: JUMP
0000197b: JUMPDEST
0000197c: PUSH1 0x00
0000197e: JUMPDEST
0000197f: DUP4
00001980: DUP2
00001981: LT
00001982: ISZERO
00001983: PUSH2 0x1999
00001986: JUMPI
00001987: DUP1
00001988: DUP3
00001989: ADD
0000198a: MLOAD
0000198b: DUP2
0000198c: DUP5
0000198d: ADD
0000198e: MSTORE
0000198f: PUSH1 0x20
00001991: DUP2
00001992: ADD
00001993: SWAP1
00001994: POP
00001995: PUSH2 0x197e
00001998: JUMP
00001999: JUMPDEST
0000199a: PUSH1 0x00
0000199c: DUP5
0000199d: DUP5
0000199e: ADD
0000199f: MSTORE
000019a0: POP
000019a1: POP
000019a2: POP
000019a3: POP
000019a4: JUMP
000019a5: JUMPDEST
000019a6: PUSH1 0x00
000019a8: PUSH2 0x19b0
000019ab: DUP3
000019ac: PUSH2 0x1965
000019af: JUMP
000019b0: JUMPDEST
000019b1: PUSH2 0x19ba
000019b4: DUP2
000019b5: DUP6
000019b6: PUSH2 0x1970
000019b9: JUMP
000019ba: JUMPDEST
000019bb: SWAP4
000019bc: POP
000019bd: PUSH2 0x19ca
000019c0: DUP2
000019c1: DUP6
000019c2: PUSH1 0x20
000019c4: DUP7
000019c5: ADD
000019c6: PUSH2 0x197b
000019c9: JUMP
000019ca: JUMPDEST
000019cb: DUP1
000019cc: DUP5
000019cd: ADD
000019ce: SWAP2
000019cf: POP
000019d0: POP
000019d1: SWAP3
000019d2: SWAP2
000019d3: POP
000019d4: POP
000019d5: JUMP
000019d6: JUMPDEST
000019d7: PUSH1 0x00
000019d9: PUSH2 0x19e2
000019dc: DUP3
000019dd: DUP5
000019de: PUSH2 0x19a5
000019e1: JUMP
000019e2: JUMPDEST
000019e3: SWAP2
000019e4: POP
000019e5: DUP2
000019e6: SWAP1
000019e7: POP
000019e8: SWAP3
000019e9: SWAP2
000019ea: POP
000019eb: POP
000019ec: JUMP
000019ed: INVALID
000019ee: LOG2
000019ef: PUSH5 0x6970667358
000019f5: UNKNOWN(0x22)
000019f6: SLT
000019f7: KECCAK256
000019f8: CREATE2
000019f9: PUSH4 0xe06c61d1
000019fe: UNKNOWN(0x28)
000019ff: UNKNOWN(0xDA)
00001a00: UNKNOWN(0xB8)
00001a01: ISZERO
00001a02: UNKNOWN(0xE9)
00001a03: PUSH29 0xef13ea050018269f672a59fc710c5cebcdc160be64736f6c6343000814
00001a21: STOP
00001a22: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x20dec665a4692341f9db8493e124bb2ea2a4e74594c8e5fee1d3401ff968b895
call_targets: 0x97dfbff1e89eac4fb84a372d6a4ec9cf52225afb
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x20dec665a4692341f9db8493e124bb2ea2a4e74594c8e5fee1d3401ff968b895",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x97dfbff1e89eac4fb84a372d6a4ec9cf52225afb"
    ],
    "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": "0xc0f4709f",
            "selector": "0xc0f4709f",
            "calldata_variants": [
                "0xc0f4709f",
                "0xc0f4709f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc884ef83",
            "selector": "0xc884ef83",
            "calldata_variants": [
                "0xc884ef83",
                "0xc884ef830000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb9253c0",
            "selector": "0xeb9253c0",
            "calldata_variants": [
                "0xeb9253c0",
                "0xeb9253c00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x817dccf0",
            "selector": "0x817dccf0",
            "calldata_variants": [
                "0x817dccf0",
                "0x817dccf00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x91f744d5",
            "selector": "0x91f744d5",
            "calldata_variants": [
                "0x91f744d5",
                "0x91f744d50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xad5c4648",
            "selector": "0xad5c4648",
            "calldata_variants": [
                "0xad5c4648",
                "0xad5c46480000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2669,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3755,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [],
    "untrusted_call_count": 2
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x20dec665a4692341f9db8493e124bb2ea2a4e74594c8e5fee1d3401ff968b895
call_targets: 0x97dfbff1e89eac4fb84a372d6a4ec9cf52225afb
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x20dec665a4692341f9db8493e124bb2ea2a4e74594c8e5fee1d3401ff968b895",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x97dfbff1e89eac4fb84a372d6a4ec9cf52225afb"
    ],
    "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": "0xc0f4709f",
            "selector": "0xc0f4709f",
            "calldata_variants": [
                "0xc0f4709f",
                "0xc0f4709f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc884ef83",
            "selector": "0xc884ef83",
            "calldata_variants": [
                "0xc884ef83",
                "0xc884ef830000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb9253c0",
            "selector": "0xeb9253c0",
            "calldata_variants": [
                "0xeb9253c0",
                "0xeb9253c00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x817dccf0",
            "selector": "0x817dccf0",
            "calldata_variants": [
                "0x817dccf0",
                "0x817dccf00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x91f744d5",
            "selector": "0x91f744d5",
            "calldata_variants": [
                "0x91f744d5",
                "0x91f744d50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xad5c4648",
            "selector": "0xad5c4648",
            "calldata_variants": [
                "0xad5c4648",
                "0xad5c46480000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2669,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3755,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": []
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0xef972b590a019e7cb8e125e854da2af8983bb5b062a6964617fc9281493a42c2
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 30,
    "trace_id": "0xef972b590a019e7cb8e125e854da2af8983bb5b062a6964617fc9281493a42c2",
    "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": "0xc0f4709f",
            "selector": "0xc0f4709f",
            "calldata_variants": [
                "0xc0f4709f",
                "0xc0f4709f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc884ef83",
            "selector": "0xc884ef83",
            "calldata_variants": [
                "0xc884ef83",
                "0xc884ef830000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb9253c0",
            "selector": "0xeb9253c0",
            "calldata_variants": [
                "0xeb9253c0",
                "0xeb9253c00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x817dccf0",
            "selector": "0x817dccf0",
            "calldata_variants": [
                "0x817dccf0",
                "0x817dccf00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x91f744d5",
            "selector": "0x91f744d5",
            "calldata_variants": [
                "0x91f744d5",
                "0x91f744d50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xad5c4648",
            "selector": "0xad5c4648",
            "calldata_variants": [
                "0xad5c4648",
                "0xad5c46480000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 0,
    "create2_count": 1
}
low other codex ERC20 transfer return value unchecked in claim payout 65 no
view
evidence_json
{
    "evidence": "`IERC20(WETH).transfer(to, amount - excluded[from]);` is called without checking the return value after `claimed[from]` is set to true.",
    "locations": [
        "contracts/contracts/WethClaim.sol:56"
    ],
    "recommendation": "Use `SafeERC20.safeTransfer` (or explicitly check the returned boolean) when transferring WETH in `_claimAndTransfer`.",
    "exploit_scenario": "If the deployed WETH address is non-standard (returns false instead of reverting on failure) or a fee-on-transfer token, `_claimAndTransfer` will mark the user as claimed and emit a Claim even though no tokens were transferred, permanently burning the user\u2019s claim."
}
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
}