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

Analysis Run

019b3836-5d06-701e-b8a6-ae3d6e4a3982

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:04 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
2
Validated
2
Source
Bytecode only
Review Backing
Not yet
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
9269 artifact.fetch complete 1 / 3 3 months ago
9270 tool.cast_disasm complete 1 / 3 3 months ago
83188 analysis.bundle complete 1 / 3 1 week ago
83189 capability.graph complete 1 / 3 1 week ago
83190 detector.run complete 1 / 3 1 week ago
83191 validation.fork complete 1 / 3 1 week ago
113682 report.consolidate complete 1 / 6 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
0
No findings?
View stderr
OpenAI Codex v0.118.0 (research preview)
--------
workdir: /tmp/codex-dhxst1u9
model: gpt-5.4
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: none
session id: 019d5c9b-77b2-79c0-904a-fd8c0994fd92
--------
user
You are a security auditor. You ONLY have runtime bytecode + analysis artifacts.
You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary,
evidence bundle, callsites, storage slots, and detector findings.

Special cases when reasoning from bytecode (be explicit about uncertainty):
- Selector inference is best-effort; missing selectors are common.
- Fallback/receive paths may be the only entrypoints.
- CALL vs DELEGATECALL semantics differ; DELEGATECALL executes in caller storage.
- Proxy patterns (EIP-1967, minimal proxies, beacon) change which storage is authoritative.
- Storage slots are raw; mappings/arrays appear via keccak patterns, names are unknown.
- Guard detection is heuristic; absence of guards does NOT mean unguarded.
- Returndata checking is unknown unless explicitly shown in evidence.
- Precompiles (0x1..0x9) and common ERC20 transfer selectors may appear; do not over-claim.

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title.
- Locations can be pc references like "pc:0x123" or selectors like "selector:0xa9059cbb".

Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation,
accounting/invariant breaks, dangerous delegatecall, and untrusted external calls.
Be conservative: if evidence is weak, mark severity low/medium and explain why.
warning: Codex could not find system bubblewrap on PATH. Please install bubblewrap with your package manager. Codex will use the vendored bubblewrap in the meantime.
ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM.
ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM.
Metadata
{
    "codex": {
        "ran_at": "2026-04-05T07:46:27.441214+00:00",
        "returncode": 1
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 9608,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": null,
    "no_findings": null,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
10
EXT*/BALANCE
1
Total opcodes
2786
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x0119
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: DUP1
0000002f: PUSH4 0x06fdde03
00000034: EQ
00000035: PUSH2 0x0122
00000038: JUMPI
00000039: DUP1
0000003a: PUSH4 0x095ea7b3
0000003f: EQ
00000040: PUSH2 0x019d
00000043: JUMPI
00000044: DUP1
00000045: PUSH4 0x1720ea55
0000004a: EQ
0000004b: PUSH2 0x01d4
0000004e: JUMPI
0000004f: DUP1
00000050: PUSH4 0x18160ddd
00000055: EQ
00000056: PUSH2 0x0202
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0x23b872dd
00000060: EQ
00000061: PUSH2 0x0225
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0x313ce567
0000006b: EQ
0000006c: PUSH2 0x0265
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0x5a3b7e42
00000076: EQ
00000077: PUSH2 0x028b
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0x70a08231
00000081: EQ
00000082: PUSH2 0x0306
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0x72689e4d
0000008c: EQ
0000008d: PUSH2 0x0332
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0x836a1e23
00000097: EQ
00000098: PUSH2 0x036b
0000009b: JUMPI
0000009c: DUP1
0000009d: PUSH4 0x8da5cb5b
000000a2: EQ
000000a3: PUSH2 0x037a
000000a6: JUMPI
000000a7: DUP1
000000a8: PUSH4 0x95d89b41
000000ad: EQ
000000ae: PUSH2 0x03b3
000000b1: JUMPI
000000b2: DUP1
000000b3: PUSH4 0xa9059cbb
000000b8: EQ
000000b9: PUSH2 0x042e
000000bc: JUMPI
000000bd: DUP1
000000be: PUSH4 0xb0987c03
000000c3: EQ
000000c4: PUSH2 0x044f
000000c7: JUMPI
000000c8: DUP1
000000c9: PUSH4 0xb6db8973
000000ce: EQ
000000cf: PUSH2 0x0488
000000d2: JUMPI
000000d3: DUP1
000000d4: PUSH4 0xc03945f7
000000d9: EQ
000000da: PUSH2 0x04ab
000000dd: JUMPI
000000de: DUP1
000000df: PUSH4 0xcae9ca51
000000e4: EQ
000000e5: PUSH2 0x04ba
000000e8: JUMPI
000000e9: DUP1
000000ea: PUSH4 0xdd62ed3e
000000ef: EQ
000000f0: PUSH2 0x0538
000000f3: JUMPI
000000f4: DUP1
000000f5: PUSH4 0xecf09417
000000fa: EQ
000000fb: PUSH2 0x056d
000000fe: JUMPI
000000ff: DUP1
00000100: PUSH4 0xf8b2cb4f
00000105: EQ
00000106: PUSH2 0x0590
00000109: JUMPI
0000010a: DUP1
0000010b: PUSH4 0xfcc820e2
00000110: EQ
00000111: PUSH2 0x05bc
00000114: JUMPI
00000115: PUSH2 0x0119
00000118: JUMP
00000119: JUMPDEST
0000011a: PUSH2 0x0120
0000011d: JUMPDEST
0000011e: JUMPDEST
0000011f: JUMP
00000120: JUMPDEST
00000121: STOP
00000122: JUMPDEST
00000123: PUSH2 0x012f
00000126: PUSH1 0x04
00000128: DUP1
00000129: POP
0000012a: POP
0000012b: PUSH2 0x05e8
0000012e: JUMP
0000012f: JUMPDEST
00000130: PUSH1 0x40
00000132: MLOAD
00000133: DUP1
00000134: DUP1
00000135: PUSH1 0x20
00000137: ADD
00000138: DUP3
00000139: DUP2
0000013a: SUB
0000013b: DUP3
0000013c: MSTORE
0000013d: DUP4
0000013e: DUP2
0000013f: DUP2
00000140: MLOAD
00000141: DUP2
00000142: MSTORE
00000143: PUSH1 0x20
00000145: ADD
00000146: SWAP2
00000147: POP
00000148: DUP1
00000149: MLOAD
0000014a: SWAP1
0000014b: PUSH1 0x20
0000014d: ADD
0000014e: SWAP1
0000014f: DUP1
00000150: DUP4
00000151: DUP4
00000152: DUP3
00000153: SWAP1
00000154: PUSH1 0x00
00000156: PUSH1 0x04
00000158: PUSH1 0x20
0000015a: DUP5
0000015b: PUSH1 0x1f
0000015d: ADD
0000015e: DIV
0000015f: PUSH1 0x03
00000161: MUL
00000162: PUSH1 0x0f
00000164: ADD
00000165: CALL
00000166: POP
00000167: SWAP1
00000168: POP
00000169: SWAP1
0000016a: DUP2
0000016b: ADD
0000016c: SWAP1
0000016d: PUSH1 0x1f
0000016f: AND
00000170: DUP1
00000171: ISZERO
00000172: PUSH2 0x018f
00000175: JUMPI
00000176: DUP1
00000177: DUP3
00000178: SUB
00000179: DUP1
0000017a: MLOAD
0000017b: PUSH1 0x01
0000017d: DUP4
0000017e: PUSH1 0x20
00000180: SUB
00000181: PUSH2 0x0100
00000184: EXP
00000185: SUB
00000186: NOT
00000187: AND
00000188: DUP2
00000189: MSTORE
0000018a: PUSH1 0x20
0000018c: ADD
0000018d: SWAP2
0000018e: POP
0000018f: JUMPDEST
00000190: POP
00000191: SWAP3
00000192: POP
00000193: POP
00000194: POP
00000195: PUSH1 0x40
00000197: MLOAD
00000198: DUP1
00000199: SWAP2
0000019a: SUB
0000019b: SWAP1
0000019c: RETURN
0000019d: JUMPDEST
0000019e: PUSH2 0x01bc
000001a1: PUSH1 0x04
000001a3: DUP1
000001a4: DUP1
000001a5: CALLDATALOAD
000001a6: SWAP1
000001a7: PUSH1 0x20
000001a9: ADD
000001aa: SWAP1
000001ab: SWAP2
000001ac: SWAP1
000001ad: DUP1
000001ae: CALLDATALOAD
000001af: SWAP1
000001b0: PUSH1 0x20
000001b2: ADD
000001b3: SWAP1
000001b4: SWAP2
000001b5: SWAP1
000001b6: POP
000001b7: POP
000001b8: PUSH2 0x0689
000001bb: JUMP
000001bc: JUMPDEST
000001bd: PUSH1 0x40
000001bf: MLOAD
000001c0: DUP1
000001c1: DUP3
000001c2: ISZERO
000001c3: ISZERO
000001c4: DUP2
000001c5: MSTORE
000001c6: PUSH1 0x20
000001c8: ADD
000001c9: SWAP2
000001ca: POP
000001cb: POP
000001cc: PUSH1 0x40
000001ce: MLOAD
000001cf: DUP1
000001d0: SWAP2
000001d1: SUB
000001d2: SWAP1
000001d3: RETURN
000001d4: JUMPDEST
000001d5: PUSH2 0x01ea
000001d8: PUSH1 0x04
000001da: DUP1
000001db: DUP1
000001dc: CALLDATALOAD
000001dd: SWAP1
000001de: PUSH1 0x20
000001e0: ADD
000001e1: SWAP1
000001e2: SWAP2
000001e3: SWAP1
000001e4: POP
000001e5: POP
000001e6: PUSH2 0x06f8
000001e9: JUMP
000001ea: JUMPDEST
000001eb: PUSH1 0x40
000001ed: MLOAD
000001ee: DUP1
000001ef: DUP3
000001f0: ISZERO
000001f1: ISZERO
000001f2: DUP2
000001f3: MSTORE
000001f4: PUSH1 0x20
000001f6: ADD
000001f7: SWAP2
000001f8: POP
000001f9: POP
000001fa: PUSH1 0x40
000001fc: MLOAD
000001fd: DUP1
000001fe: SWAP2
000001ff: SUB
00000200: SWAP1
00000201: RETURN
00000202: JUMPDEST
00000203: PUSH2 0x020f
00000206: PUSH1 0x04
00000208: DUP1
00000209: POP
0000020a: POP
0000020b: PUSH2 0x0913
0000020e: JUMP
0000020f: JUMPDEST
00000210: PUSH1 0x40
00000212: MLOAD
00000213: DUP1
00000214: DUP3
00000215: DUP2
00000216: MSTORE
00000217: PUSH1 0x20
00000219: ADD
0000021a: SWAP2
0000021b: POP
0000021c: POP
0000021d: PUSH1 0x40
0000021f: MLOAD
00000220: DUP1
00000221: SWAP2
00000222: SUB
00000223: SWAP1
00000224: RETURN
00000225: JUMPDEST
00000226: PUSH2 0x024d
00000229: PUSH1 0x04
0000022b: DUP1
0000022c: DUP1
0000022d: CALLDATALOAD
0000022e: SWAP1
0000022f: PUSH1 0x20
00000231: ADD
00000232: SWAP1
00000233: SWAP2
00000234: SWAP1
00000235: DUP1
00000236: CALLDATALOAD
00000237: SWAP1
00000238: PUSH1 0x20
0000023a: ADD
0000023b: SWAP1
0000023c: SWAP2
0000023d: SWAP1
0000023e: DUP1
0000023f: CALLDATALOAD
00000240: SWAP1
00000241: PUSH1 0x20
00000243: ADD
00000244: SWAP1
00000245: SWAP2
00000246: SWAP1
00000247: POP
00000248: POP
00000249: PUSH2 0x091c
0000024c: JUMP
0000024d: JUMPDEST
0000024e: PUSH1 0x40
00000250: MLOAD
00000251: DUP1
00000252: DUP3
00000253: ISZERO
00000254: ISZERO
00000255: DUP2
00000256: MSTORE
00000257: PUSH1 0x20
00000259: ADD
0000025a: SWAP2
0000025b: POP
0000025c: POP
0000025d: PUSH1 0x40
0000025f: MLOAD
00000260: DUP1
00000261: SWAP2
00000262: SUB
00000263: SWAP1
00000264: RETURN
00000265: JUMPDEST
00000266: PUSH2 0x0272
00000269: PUSH1 0x04
0000026b: DUP1
0000026c: POP
0000026d: POP
0000026e: PUSH2 0x0b80
00000271: JUMP
00000272: JUMPDEST
00000273: PUSH1 0x40
00000275: MLOAD
00000276: DUP1
00000277: DUP3
00000278: PUSH1 0xff
0000027a: AND
0000027b: DUP2
0000027c: MSTORE
0000027d: PUSH1 0x20
0000027f: ADD
00000280: SWAP2
00000281: POP
00000282: POP
00000283: PUSH1 0x40
00000285: MLOAD
00000286: DUP1
00000287: SWAP2
00000288: SUB
00000289: SWAP1
0000028a: RETURN
0000028b: JUMPDEST
0000028c: PUSH2 0x0298
0000028f: PUSH1 0x04
00000291: DUP1
00000292: POP
00000293: POP
00000294: PUSH2 0x0b93
00000297: JUMP
00000298: JUMPDEST
00000299: PUSH1 0x40
0000029b: MLOAD
0000029c: DUP1
0000029d: DUP1
0000029e: PUSH1 0x20
000002a0: ADD
000002a1: DUP3
000002a2: DUP2
000002a3: SUB
000002a4: DUP3
000002a5: MSTORE
000002a6: DUP4
000002a7: DUP2
000002a8: DUP2
000002a9: MLOAD
000002aa: DUP2
000002ab: MSTORE
000002ac: PUSH1 0x20
000002ae: ADD
000002af: SWAP2
000002b0: POP
000002b1: DUP1
000002b2: MLOAD
000002b3: SWAP1
000002b4: PUSH1 0x20
000002b6: ADD
000002b7: SWAP1
000002b8: DUP1
000002b9: DUP4
000002ba: DUP4
000002bb: DUP3
000002bc: SWAP1
000002bd: PUSH1 0x00
000002bf: PUSH1 0x04
000002c1: PUSH1 0x20
000002c3: DUP5
000002c4: PUSH1 0x1f
000002c6: ADD
000002c7: DIV
000002c8: PUSH1 0x03
000002ca: MUL
000002cb: PUSH1 0x0f
000002cd: ADD
000002ce: CALL
000002cf: POP
000002d0: SWAP1
000002d1: POP
000002d2: SWAP1
000002d3: DUP2
000002d4: ADD
000002d5: SWAP1
000002d6: PUSH1 0x1f
000002d8: AND
000002d9: DUP1
000002da: ISZERO
000002db: PUSH2 0x02f8
000002de: JUMPI
000002df: DUP1
000002e0: DUP3
000002e1: SUB
000002e2: DUP1
000002e3: MLOAD
000002e4: PUSH1 0x01
000002e6: DUP4
000002e7: PUSH1 0x20
000002e9: SUB
000002ea: PUSH2 0x0100
000002ed: EXP
000002ee: SUB
000002ef: NOT
000002f0: AND
000002f1: DUP2
000002f2: MSTORE
000002f3: PUSH1 0x20
000002f5: ADD
000002f6: SWAP2
000002f7: POP
000002f8: JUMPDEST
000002f9: POP
000002fa: SWAP3
000002fb: POP
000002fc: POP
000002fd: POP
000002fe: PUSH1 0x40
00000300: MLOAD
00000301: DUP1
00000302: SWAP2
00000303: SUB
00000304: SWAP1
00000305: RETURN
00000306: JUMPDEST
00000307: PUSH2 0x031c
0000030a: PUSH1 0x04
0000030c: DUP1
0000030d: DUP1
0000030e: CALLDATALOAD
0000030f: SWAP1
00000310: PUSH1 0x20
00000312: ADD
00000313: SWAP1
00000314: SWAP2
00000315: SWAP1
00000316: POP
00000317: POP
00000318: PUSH2 0x0c34
0000031b: JUMP
0000031c: JUMPDEST
0000031d: PUSH1 0x40
0000031f: MLOAD
00000320: DUP1
00000321: DUP3
00000322: DUP2
00000323: MSTORE
00000324: PUSH1 0x20
00000326: ADD
00000327: SWAP2
00000328: POP
00000329: POP
0000032a: PUSH1 0x40
0000032c: MLOAD
0000032d: DUP1
0000032e: SWAP2
0000032f: SUB
00000330: SWAP1
00000331: RETURN
00000332: JUMPDEST
00000333: PUSH2 0x033f
00000336: PUSH1 0x04
00000338: DUP1
00000339: POP
0000033a: POP
0000033b: PUSH2 0x0c4f
0000033e: JUMP
0000033f: JUMPDEST
00000340: PUSH1 0x40
00000342: MLOAD
00000343: DUP1
00000344: DUP3
00000345: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000035a: AND
0000035b: DUP2
0000035c: MSTORE
0000035d: PUSH1 0x20
0000035f: ADD
00000360: SWAP2
00000361: POP
00000362: POP
00000363: PUSH1 0x40
00000365: MLOAD
00000366: DUP1
00000367: SWAP2
00000368: SUB
00000369: SWAP1
0000036a: RETURN
0000036b: JUMPDEST
0000036c: PUSH2 0x0378
0000036f: PUSH1 0x04
00000371: DUP1
00000372: POP
00000373: POP
00000374: PUSH2 0x0c75
00000377: JUMP
00000378: JUMPDEST
00000379: STOP
0000037a: JUMPDEST
0000037b: PUSH2 0x0387
0000037e: PUSH1 0x04
00000380: DUP1
00000381: POP
00000382: POP
00000383: PUSH2 0x0d40
00000386: JUMP
00000387: JUMPDEST
00000388: PUSH1 0x40
0000038a: MLOAD
0000038b: DUP1
0000038c: DUP3
0000038d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003a2: AND
000003a3: DUP2
000003a4: MSTORE
000003a5: PUSH1 0x20
000003a7: ADD
000003a8: SWAP2
000003a9: POP
000003aa: POP
000003ab: PUSH1 0x40
000003ad: MLOAD
000003ae: DUP1
000003af: SWAP2
000003b0: SUB
000003b1: SWAP1
000003b2: RETURN
000003b3: JUMPDEST
000003b4: PUSH2 0x03c0
000003b7: PUSH1 0x04
000003b9: DUP1
000003ba: POP
000003bb: POP
000003bc: PUSH2 0x0d66
000003bf: JUMP
000003c0: JUMPDEST
000003c1: PUSH1 0x40
000003c3: MLOAD
000003c4: DUP1
000003c5: DUP1
000003c6: PUSH1 0x20
000003c8: ADD
000003c9: DUP3
000003ca: DUP2
000003cb: SUB
000003cc: DUP3
000003cd: MSTORE
000003ce: DUP4
000003cf: DUP2
000003d0: DUP2
000003d1: MLOAD
000003d2: DUP2
000003d3: MSTORE
000003d4: PUSH1 0x20
000003d6: ADD
000003d7: SWAP2
000003d8: POP
000003d9: DUP1
000003da: MLOAD
000003db: SWAP1
000003dc: PUSH1 0x20
000003de: ADD
000003df: SWAP1
000003e0: DUP1
000003e1: DUP4
000003e2: DUP4
000003e3: DUP3
000003e4: SWAP1
000003e5: PUSH1 0x00
000003e7: PUSH1 0x04
000003e9: PUSH1 0x20
000003eb: DUP5
000003ec: PUSH1 0x1f
000003ee: ADD
000003ef: DIV
000003f0: PUSH1 0x03
000003f2: MUL
000003f3: PUSH1 0x0f
000003f5: ADD
000003f6: CALL
000003f7: POP
000003f8: SWAP1
000003f9: POP
000003fa: SWAP1
000003fb: DUP2
000003fc: ADD
000003fd: SWAP1
000003fe: PUSH1 0x1f
00000400: AND
00000401: DUP1
00000402: ISZERO
00000403: PUSH2 0x0420
00000406: JUMPI
00000407: DUP1
00000408: DUP3
00000409: SUB
0000040a: DUP1
0000040b: MLOAD
0000040c: PUSH1 0x01
0000040e: DUP4
0000040f: PUSH1 0x20
00000411: SUB
00000412: PUSH2 0x0100
00000415: EXP
00000416: SUB
00000417: NOT
00000418: AND
00000419: DUP2
0000041a: MSTORE
0000041b: PUSH1 0x20
0000041d: ADD
0000041e: SWAP2
0000041f: POP
00000420: JUMPDEST
00000421: POP
00000422: SWAP3
00000423: POP
00000424: POP
00000425: POP
00000426: PUSH1 0x40
00000428: MLOAD
00000429: DUP1
0000042a: SWAP2
0000042b: SUB
0000042c: SWAP1
0000042d: RETURN
0000042e: JUMPDEST
0000042f: PUSH2 0x044d
00000432: PUSH1 0x04
00000434: DUP1
00000435: DUP1
00000436: CALLDATALOAD
00000437: SWAP1
00000438: PUSH1 0x20
0000043a: ADD
0000043b: SWAP1
0000043c: SWAP2
0000043d: SWAP1
0000043e: DUP1
0000043f: CALLDATALOAD
00000440: SWAP1
00000441: PUSH1 0x20
00000443: ADD
00000444: SWAP1
00000445: SWAP2
00000446: SWAP1
00000447: POP
00000448: POP
00000449: PUSH2 0x0e07
0000044c: JUMP
0000044d: JUMPDEST
0000044e: STOP
0000044f: JUMPDEST
00000450: PUSH2 0x045c
00000453: PUSH1 0x04
00000455: DUP1
00000456: POP
00000457: POP
00000458: PUSH2 0x0f92
0000045b: JUMP
0000045c: JUMPDEST
0000045d: PUSH1 0x40
0000045f: MLOAD
00000460: DUP1
00000461: DUP3
00000462: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000477: AND
00000478: DUP2
00000479: MSTORE
0000047a: PUSH1 0x20
0000047c: ADD
0000047d: SWAP2
0000047e: POP
0000047f: POP
00000480: PUSH1 0x40
00000482: MLOAD
00000483: DUP1
00000484: SWAP2
00000485: SUB
00000486: SWAP1
00000487: RETURN
00000488: JUMPDEST
00000489: PUSH2 0x0495
0000048c: PUSH1 0x04
0000048e: DUP1
0000048f: POP
00000490: POP
00000491: PUSH2 0x0fb8
00000494: JUMP
00000495: JUMPDEST
00000496: PUSH1 0x40
00000498: MLOAD
00000499: DUP1
0000049a: DUP3
0000049b: DUP2
0000049c: MSTORE
0000049d: PUSH1 0x20
0000049f: ADD
000004a0: SWAP2
000004a1: POP
000004a2: POP
000004a3: PUSH1 0x40
000004a5: MLOAD
000004a6: DUP1
000004a7: SWAP2
000004a8: SUB
000004a9: SWAP1
000004aa: RETURN
000004ab: JUMPDEST
000004ac: PUSH2 0x04b8
000004af: PUSH1 0x04
000004b1: DUP1
000004b2: POP
000004b3: POP
000004b4: PUSH2 0x0fc1
000004b7: JUMP
000004b8: JUMPDEST
000004b9: STOP
000004ba: JUMPDEST
000004bb: PUSH2 0x0520
000004be: PUSH1 0x04
000004c0: DUP1
000004c1: DUP1
000004c2: CALLDATALOAD
000004c3: SWAP1
000004c4: PUSH1 0x20
000004c6: ADD
000004c7: SWAP1
000004c8: SWAP2
000004c9: SWAP1
000004ca: DUP1
000004cb: CALLDATALOAD
000004cc: SWAP1
000004cd: PUSH1 0x20
000004cf: ADD
000004d0: SWAP1
000004d1: SWAP2
000004d2: SWAP1
000004d3: DUP1
000004d4: CALLDATALOAD
000004d5: SWAP1
000004d6: PUSH1 0x20
000004d8: ADD
000004d9: SWAP1
000004da: DUP3
000004db: ADD
000004dc: DUP1
000004dd: CALLDATALOAD
000004de: SWAP1
000004df: PUSH1 0x20
000004e1: ADD
000004e2: SWAP2
000004e3: SWAP2
000004e4: SWAP1
000004e5: DUP1
000004e6: DUP1
000004e7: PUSH1 0x1f
000004e9: ADD
000004ea: PUSH1 0x20
000004ec: DUP1
000004ed: SWAP2
000004ee: DIV
000004ef: MUL
000004f0: PUSH1 0x20
000004f2: ADD
000004f3: PUSH1 0x40
000004f5: MLOAD
000004f6: SWAP1
000004f7: DUP2
000004f8: ADD
000004f9: PUSH1 0x40
000004fb: MSTORE
000004fc: DUP1
000004fd: SWAP4
000004fe: SWAP3
000004ff: SWAP2
00000500: SWAP1
00000501: DUP2
00000502: DUP2
00000503: MSTORE
00000504: PUSH1 0x20
00000506: ADD
00000507: DUP4
00000508: DUP4
00000509: DUP1
0000050a: DUP3
0000050b: DUP5
0000050c: CALLDATACOPY
0000050d: DUP3
0000050e: ADD
0000050f: SWAP2
00000510: POP
00000511: POP
00000512: POP
00000513: POP
00000514: POP
00000515: POP
00000516: SWAP1
00000517: SWAP1
00000518: SWAP2
00000519: SWAP1
0000051a: POP
0000051b: POP
0000051c: PUSH2 0x105b
0000051f: JUMP
00000520: JUMPDEST
00000521: PUSH1 0x40
00000523: MLOAD
00000524: DUP1
00000525: DUP3
00000526: ISZERO
00000527: ISZERO
00000528: DUP2
00000529: MSTORE
0000052a: PUSH1 0x20
0000052c: ADD
0000052d: SWAP2
0000052e: POP
0000052f: POP
00000530: PUSH1 0x40
00000532: MLOAD
00000533: DUP1
00000534: SWAP2
00000535: SUB
00000536: SWAP1
00000537: RETURN
00000538: JUMPDEST
00000539: PUSH2 0x0557
0000053c: PUSH1 0x04
0000053e: DUP1
0000053f: DUP1
00000540: CALLDATALOAD
00000541: SWAP1
00000542: PUSH1 0x20
00000544: ADD
00000545: SWAP1
00000546: SWAP2
00000547: SWAP1
00000548: DUP1
00000549: CALLDATALOAD
0000054a: SWAP1
0000054b: PUSH1 0x20
0000054d: ADD
0000054e: SWAP1
0000054f: SWAP2
00000550: SWAP1
00000551: POP
00000552: POP
00000553: PUSH2 0x1188
00000556: JUMP
00000557: JUMPDEST
00000558: PUSH1 0x40
0000055a: MLOAD
0000055b: DUP1
0000055c: DUP3
0000055d: DUP2
0000055e: MSTORE
0000055f: PUSH1 0x20
00000561: ADD
00000562: SWAP2
00000563: POP
00000564: POP
00000565: PUSH1 0x40
00000567: MLOAD
00000568: DUP1
00000569: SWAP2
0000056a: SUB
0000056b: SWAP1
0000056c: RETURN
0000056d: JUMPDEST
0000056e: PUSH2 0x057a
00000571: PUSH1 0x04
00000573: DUP1
00000574: POP
00000575: POP
00000576: PUSH2 0x11b3
00000579: JUMP
0000057a: JUMPDEST
0000057b: PUSH1 0x40
0000057d: MLOAD
0000057e: DUP1
0000057f: DUP3
00000580: DUP2
00000581: MSTORE
00000582: PUSH1 0x20
00000584: ADD
00000585: SWAP2
00000586: POP
00000587: POP
00000588: PUSH1 0x40
0000058a: MLOAD
0000058b: DUP1
0000058c: SWAP2
0000058d: SUB
0000058e: SWAP1
0000058f: RETURN
00000590: JUMPDEST
00000591: PUSH2 0x05a6
00000594: PUSH1 0x04
00000596: DUP1
00000597: DUP1
00000598: CALLDATALOAD
00000599: SWAP1
0000059a: PUSH1 0x20
0000059c: ADD
0000059d: SWAP1
0000059e: SWAP2
0000059f: SWAP1
000005a0: POP
000005a1: POP
000005a2: PUSH2 0x11bc
000005a5: JUMP
000005a6: JUMPDEST
000005a7: PUSH1 0x40
000005a9: MLOAD
000005aa: DUP1
000005ab: DUP3
000005ac: DUP2
000005ad: MSTORE
000005ae: PUSH1 0x20
000005b0: ADD
000005b1: SWAP2
000005b2: POP
000005b3: POP
000005b4: PUSH1 0x40
000005b6: MLOAD
000005b7: DUP1
000005b8: SWAP2
000005b9: SUB
000005ba: SWAP1
000005bb: RETURN
000005bc: JUMPDEST
000005bd: PUSH2 0x05d2
000005c0: PUSH1 0x04
000005c2: DUP1
000005c3: DUP1
000005c4: CALLDATALOAD
000005c5: SWAP1
000005c6: PUSH1 0x20
000005c8: ADD
000005c9: SWAP1
000005ca: SWAP2
000005cb: SWAP1
000005cc: POP
000005cd: POP
000005ce: PUSH2 0x11fa
000005d1: JUMP
000005d2: JUMPDEST
000005d3: PUSH1 0x40
000005d5: MLOAD
000005d6: DUP1
000005d7: DUP3
000005d8: DUP2
000005d9: MSTORE
000005da: PUSH1 0x20
000005dc: ADD
000005dd: SWAP2
000005de: POP
000005df: POP
000005e0: PUSH1 0x40
000005e2: MLOAD
000005e3: DUP1
000005e4: SWAP2
000005e5: SUB
000005e6: SWAP1
000005e7: RETURN
000005e8: JUMPDEST
000005e9: PUSH1 0x01
000005eb: PUSH1 0x00
000005ed: POP
000005ee: DUP1
000005ef: SLOAD
000005f0: PUSH1 0x01
000005f2: DUP2
000005f3: PUSH1 0x01
000005f5: AND
000005f6: ISZERO
000005f7: PUSH2 0x0100
000005fa: MUL
000005fb: SUB
000005fc: AND
000005fd: PUSH1 0x02
000005ff: SWAP1
00000600: DIV
00000601: DUP1
00000602: PUSH1 0x1f
00000604: ADD
00000605: PUSH1 0x20
00000607: DUP1
00000608: SWAP2
00000609: DIV
0000060a: MUL
0000060b: PUSH1 0x20
0000060d: ADD
0000060e: PUSH1 0x40
00000610: MLOAD
00000611: SWAP1
00000612: DUP2
00000613: ADD
00000614: PUSH1 0x40
00000616: MSTORE
00000617: DUP1
00000618: SWAP3
00000619: SWAP2
0000061a: SWAP1
0000061b: DUP2
0000061c: DUP2
0000061d: MSTORE
0000061e: PUSH1 0x20
00000620: ADD
00000621: DUP3
00000622: DUP1
00000623: SLOAD
00000624: PUSH1 0x01
00000626: DUP2
00000627: PUSH1 0x01
00000629: AND
0000062a: ISZERO
0000062b: PUSH2 0x0100
0000062e: MUL
0000062f: SUB
00000630: AND
00000631: PUSH1 0x02
00000633: SWAP1
00000634: DIV
00000635: DUP1
00000636: ISZERO
00000637: PUSH2 0x0681
0000063a: JUMPI
0000063b: DUP1
0000063c: PUSH1 0x1f
0000063e: LT
0000063f: PUSH2 0x0656
00000642: JUMPI
00000643: PUSH2 0x0100
00000646: DUP1
00000647: DUP4
00000648: SLOAD
00000649: DIV
0000064a: MUL
0000064b: DUP4
0000064c: MSTORE
0000064d: SWAP2
0000064e: PUSH1 0x20
00000650: ADD
00000651: SWAP2
00000652: PUSH2 0x0681
00000655: JUMP
00000656: JUMPDEST
00000657: DUP3
00000658: ADD
00000659: SWAP2
0000065a: SWAP1
0000065b: PUSH1 0x00
0000065d: MSTORE
0000065e: PUSH1 0x20
00000660: PUSH1 0x00
00000662: KECCAK256
00000663: SWAP1
00000664: JUMPDEST
00000665: DUP2
00000666: SLOAD
00000667: DUP2
00000668: MSTORE
00000669: SWAP1
0000066a: PUSH1 0x01
0000066c: ADD
0000066d: SWAP1
0000066e: PUSH1 0x20
00000670: ADD
00000671: DUP1
00000672: DUP4
00000673: GT
00000674: PUSH2 0x0664
00000677: JUMPI
00000678: DUP3
00000679: SWAP1
0000067a: SUB
0000067b: PUSH1 0x1f
0000067d: AND
0000067e: DUP3
0000067f: ADD
00000680: SWAP2
00000681: JUMPDEST
00000682: POP
00000683: POP
00000684: POP
00000685: POP
00000686: POP
00000687: DUP2
00000688: JUMP
00000689: JUMPDEST
0000068a: PUSH1 0x00
0000068c: DUP2
0000068d: PUSH1 0x07
0000068f: PUSH1 0x00
00000691: POP
00000692: PUSH1 0x00
00000694: CALLER
00000695: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006aa: AND
000006ab: DUP2
000006ac: MSTORE
000006ad: PUSH1 0x20
000006af: ADD
000006b0: SWAP1
000006b1: DUP2
000006b2: MSTORE
000006b3: PUSH1 0x20
000006b5: ADD
000006b6: PUSH1 0x00
000006b8: KECCAK256
000006b9: PUSH1 0x00
000006bb: POP
000006bc: PUSH1 0x00
000006be: DUP6
000006bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006d4: AND
000006d5: DUP2
000006d6: MSTORE
000006d7: PUSH1 0x20
000006d9: ADD
000006da: SWAP1
000006db: DUP2
000006dc: MSTORE
000006dd: PUSH1 0x20
000006df: ADD
000006e0: PUSH1 0x00
000006e2: KECCAK256
000006e3: PUSH1 0x00
000006e5: POP
000006e6: DUP2
000006e7: SWAP1
000006e8: SSTORE
000006e9: POP
000006ea: PUSH1 0x01
000006ec: SWAP1
000006ed: POP
000006ee: PUSH2 0x06f2
000006f1: JUMP
000006f2: JUMPDEST
000006f3: SWAP3
000006f4: SWAP2
000006f5: POP
000006f6: POP
000006f7: JUMP
000006f8: JUMPDEST
000006f9: PUSH1 0x00
000006fb: PUSH1 0x00
000006fd: DUP3
000006fe: PUSH1 0x0b
00000700: PUSH1 0x00
00000702: POP
00000703: PUSH1 0x00
00000705: CALLER
00000706: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000071b: AND
0000071c: DUP2
0000071d: MSTORE
0000071e: PUSH1 0x20
00000720: ADD
00000721: SWAP1
00000722: DUP2
00000723: MSTORE
00000724: PUSH1 0x20
00000726: ADD
00000727: PUSH1 0x00
00000729: KECCAK256
0000072a: PUSH1 0x00
0000072c: POP
0000072d: SLOAD
0000072e: LT
0000072f: ISZERO
00000730: PUSH2 0x0738
00000733: JUMPI
00000734: PUSH2 0x0002
00000737: JUMP
00000738: JUMPDEST
00000739: PUSH1 0x0e
0000073b: PUSH1 0x00
0000073d: POP
0000073e: SLOAD
0000073f: PUSH1 0x0a
00000741: PUSH1 0x00
00000743: SWAP1
00000744: SLOAD
00000745: SWAP1
00000746: PUSH2 0x0100
00000749: EXP
0000074a: SWAP1
0000074b: DIV
0000074c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000761: AND
00000762: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000777: AND
00000778: PUSH4 0xf8b2cb4f
0000077d: CALLER
0000077e: PUSH1 0x40
00000780: MLOAD
00000781: DUP3
00000782: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
000007a0: MUL
000007a1: DUP2
000007a2: MSTORE
000007a3: PUSH1 0x04
000007a5: ADD
000007a6: DUP1
000007a7: DUP3
000007a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007bd: AND
000007be: DUP2
000007bf: MSTORE
000007c0: PUSH1 0x20
000007c2: ADD
000007c3: SWAP2
000007c4: POP
000007c5: POP
000007c6: PUSH1 0x20
000007c8: PUSH1 0x40
000007ca: MLOAD
000007cb: DUP1
000007cc: DUP4
000007cd: SUB
000007ce: DUP2
000007cf: PUSH1 0x00
000007d1: DUP8
000007d2: PUSH2 0x61da
000007d5: GAS
000007d6: SUB
000007d7: CALL
000007d8: ISZERO
000007d9: PUSH2 0x0002
000007dc: JUMPI
000007dd: POP
000007de: POP
000007df: POP
000007e0: PUSH1 0x40
000007e2: MLOAD
000007e3: DUP1
000007e4: MLOAD
000007e5: SWAP1
000007e6: PUSH1 0x20
000007e8: ADD
000007e9: POP
000007ea: GT
000007eb: ISZERO
000007ec: PUSH2 0x082b
000007ef: JUMPI
000007f0: CALLER
000007f1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000806: AND
00000807: PUSH1 0x00
00000809: DUP5
0000080a: PUSH1 0x40
0000080c: MLOAD
0000080d: DUP1
0000080e: SWAP1
0000080f: POP
00000810: PUSH1 0x00
00000812: PUSH1 0x40
00000814: MLOAD
00000815: DUP1
00000816: DUP4
00000817: SUB
00000818: DUP2
00000819: DUP6
0000081a: DUP9
0000081b: DUP9
0000081c: CALL
0000081d: SWAP4
0000081e: POP
0000081f: POP
00000820: POP
00000821: POP
00000822: POP
00000823: PUSH1 0x01
00000825: SWAP2
00000826: POP
00000827: PUSH2 0x090d
0000082a: JUMP
0000082b: JUMPDEST
0000082c: PUSH1 0x0d
0000082e: PUSH1 0x00
00000830: POP
00000831: SLOAD
00000832: DUP4
00000833: DIV
00000834: SWAP1
00000835: POP
00000836: PUSH1 0x01
00000838: ISZERO
00000839: ISZERO
0000083a: CALLER
0000083b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000850: AND
00000851: PUSH1 0x00
00000853: DUP6
00000854: PUSH1 0x40
00000856: MLOAD
00000857: DUP1
00000858: SWAP1
00000859: POP
0000085a: PUSH1 0x00
0000085c: PUSH1 0x40
0000085e: MLOAD
0000085f: DUP1
00000860: DUP4
00000861: SUB
00000862: DUP2
00000863: DUP6
00000864: DUP9
00000865: DUP9
00000866: CALL
00000867: SWAP4
00000868: POP
00000869: POP
0000086a: POP
0000086b: POP
0000086c: ISZERO
0000086d: ISZERO
0000086e: EQ
0000086f: ISZERO
00000870: PUSH2 0x0903
00000873: JUMPI
00000874: DUP3
00000875: PUSH1 0x0b
00000877: PUSH1 0x00
00000879: POP
0000087a: PUSH1 0x00
0000087c: CALLER
0000087d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000892: AND
00000893: DUP2
00000894: MSTORE
00000895: PUSH1 0x20
00000897: ADD
00000898: SWAP1
00000899: DUP2
0000089a: MSTORE
0000089b: PUSH1 0x20
0000089d: ADD
0000089e: PUSH1 0x00
000008a0: KECCAK256
000008a1: PUSH1 0x00
000008a3: DUP3
000008a4: DUP3
000008a5: DUP3
000008a6: POP
000008a7: SLOAD
000008a8: SUB
000008a9: SWAP3
000008aa: POP
000008ab: POP
000008ac: DUP2
000008ad: SWAP1
000008ae: SSTORE
000008af: POP
000008b0: DUP1
000008b1: PUSH1 0x0c
000008b3: PUSH1 0x00
000008b5: POP
000008b6: PUSH1 0x00
000008b8: CALLER
000008b9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008ce: AND
000008cf: DUP2
000008d0: MSTORE
000008d1: PUSH1 0x20
000008d3: ADD
000008d4: SWAP1
000008d5: DUP2
000008d6: MSTORE
000008d7: PUSH1 0x20
000008d9: ADD
000008da: PUSH1 0x00
000008dc: KECCAK256
000008dd: PUSH1 0x00
000008df: DUP3
000008e0: DUP3
000008e1: DUP3
000008e2: POP
000008e3: SLOAD
000008e4: SUB
000008e5: SWAP3
000008e6: POP
000008e7: POP
000008e8: DUP2
000008e9: SWAP1
000008ea: SSTORE
000008eb: POP
000008ec: PUSH2 0x08f6
000008ef: PUSH1 0x01
000008f1: CALLER
000008f2: PUSH2 0x1215
000008f5: JUMP
000008f6: JUMPDEST
000008f7: PUSH1 0x01
000008f9: SWAP2
000008fa: POP
000008fb: PUSH2 0x090d
000008fe: JUMP
000008ff: PUSH2 0x090c
00000902: JUMP
00000903: JUMPDEST
00000904: PUSH1 0x00
00000906: SWAP2
00000907: POP
00000908: PUSH2 0x090d
0000090b: JUMP
0000090c: JUMPDEST
0000090d: JUMPDEST
0000090e: POP
0000090f: SWAP2
00000910: SWAP1
00000911: POP
00000912: JUMP
00000913: JUMPDEST
00000914: PUSH1 0x04
00000916: PUSH1 0x00
00000918: POP
00000919: SLOAD
0000091a: DUP2
0000091b: JUMP
0000091c: JUMPDEST
0000091d: PUSH1 0x00
0000091f: DUP2
00000920: PUSH1 0x06
00000922: PUSH1 0x00
00000924: POP
00000925: PUSH1 0x00
00000927: DUP7
00000928: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000093d: AND
0000093e: DUP2
0000093f: MSTORE
00000940: PUSH1 0x20
00000942: ADD
00000943: SWAP1
00000944: DUP2
00000945: MSTORE
00000946: PUSH1 0x20
00000948: ADD
00000949: PUSH1 0x00
0000094b: KECCAK256
0000094c: PUSH1 0x00
0000094e: POP
0000094f: SLOAD
00000950: LT
00000951: ISZERO
00000952: PUSH2 0x095a
00000955: JUMPI
00000956: PUSH2 0x0002
00000959: JUMP
0000095a: JUMPDEST
0000095b: PUSH1 0x06
0000095d: PUSH1 0x00
0000095f: POP
00000960: PUSH1 0x00
00000962: DUP5
00000963: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000978: AND
00000979: DUP2
0000097a: MSTORE
0000097b: PUSH1 0x20
0000097d: ADD
0000097e: SWAP1
0000097f: DUP2
00000980: MSTORE
00000981: PUSH1 0x20
00000983: ADD
00000984: PUSH1 0x00
00000986: KECCAK256
00000987: PUSH1 0x00
00000989: POP
0000098a: SLOAD
0000098b: DUP3
0000098c: PUSH1 0x06
0000098e: PUSH1 0x00
00000990: POP
00000991: PUSH1 0x00
00000993: DUP7
00000994: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009a9: AND
000009aa: DUP2
000009ab: MSTORE
000009ac: PUSH1 0x20
000009ae: ADD
000009af: SWAP1
000009b0: DUP2
000009b1: MSTORE
000009b2: PUSH1 0x20
000009b4: ADD
000009b5: PUSH1 0x00
000009b7: KECCAK256
000009b8: PUSH1 0x00
000009ba: POP
000009bb: SLOAD
000009bc: ADD
000009bd: LT
000009be: ISZERO
000009bf: PUSH2 0x09c7
000009c2: JUMPI
000009c3: PUSH2 0x0002
000009c6: JUMP
000009c7: JUMPDEST
000009c8: PUSH1 0x07
000009ca: PUSH1 0x00
000009cc: POP
000009cd: PUSH1 0x00
000009cf: DUP6
000009d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009e5: AND
000009e6: DUP2
000009e7: MSTORE
000009e8: PUSH1 0x20
000009ea: ADD
000009eb: SWAP1
000009ec: DUP2
000009ed: MSTORE
000009ee: PUSH1 0x20
000009f0: ADD
000009f1: PUSH1 0x00
000009f3: KECCAK256
000009f4: PUSH1 0x00
000009f6: POP
000009f7: PUSH1 0x00
000009f9: CALLER
000009fa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a0f: AND
00000a10: DUP2
00000a11: MSTORE
00000a12: PUSH1 0x20
00000a14: ADD
00000a15: SWAP1
00000a16: DUP2
00000a17: MSTORE
00000a18: PUSH1 0x20
00000a1a: ADD
00000a1b: PUSH1 0x00
00000a1d: KECCAK256
00000a1e: PUSH1 0x00
00000a20: POP
00000a21: SLOAD
00000a22: DUP3
00000a23: GT
00000a24: ISZERO
00000a25: PUSH2 0x0a2d
00000a28: JUMPI
00000a29: PUSH2 0x0002
00000a2c: JUMP
00000a2d: JUMPDEST
00000a2e: DUP2
00000a2f: PUSH1 0x06
00000a31: PUSH1 0x00
00000a33: POP
00000a34: PUSH1 0x00
00000a36: DUP7
00000a37: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a4c: AND
00000a4d: DUP2
00000a4e: MSTORE
00000a4f: PUSH1 0x20
00000a51: ADD
00000a52: SWAP1
00000a53: DUP2
00000a54: MSTORE
00000a55: PUSH1 0x20
00000a57: ADD
00000a58: PUSH1 0x00
00000a5a: KECCAK256
00000a5b: PUSH1 0x00
00000a5d: DUP3
00000a5e: DUP3
00000a5f: DUP3
00000a60: POP
00000a61: SLOAD
00000a62: SUB
00000a63: SWAP3
00000a64: POP
00000a65: POP
00000a66: DUP2
00000a67: SWAP1
00000a68: SSTORE
00000a69: POP
00000a6a: DUP2
00000a6b: PUSH1 0x06
00000a6d: PUSH1 0x00
00000a6f: POP
00000a70: PUSH1 0x00
00000a72: DUP6
00000a73: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a88: AND
00000a89: DUP2
00000a8a: MSTORE
00000a8b: PUSH1 0x20
00000a8d: ADD
00000a8e: SWAP1
00000a8f: DUP2
00000a90: MSTORE
00000a91: PUSH1 0x20
00000a93: ADD
00000a94: PUSH1 0x00
00000a96: KECCAK256
00000a97: PUSH1 0x00
00000a99: DUP3
00000a9a: DUP3
00000a9b: DUP3
00000a9c: POP
00000a9d: SLOAD
00000a9e: ADD
00000a9f: SWAP3
00000aa0: POP
00000aa1: POP
00000aa2: DUP2
00000aa3: SWAP1
00000aa4: SSTORE
00000aa5: POP
00000aa6: DUP2
00000aa7: PUSH1 0x07
00000aa9: PUSH1 0x00
00000aab: POP
00000aac: PUSH1 0x00
00000aae: DUP7
00000aaf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ac4: AND
00000ac5: DUP2
00000ac6: MSTORE
00000ac7: PUSH1 0x20
00000ac9: ADD
00000aca: SWAP1
00000acb: DUP2
00000acc: MSTORE
00000acd: PUSH1 0x20
00000acf: ADD
00000ad0: PUSH1 0x00
00000ad2: KECCAK256
00000ad3: PUSH1 0x00
00000ad5: POP
00000ad6: PUSH1 0x00
00000ad8: CALLER
00000ad9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000aee: AND
00000aef: DUP2
00000af0: MSTORE
00000af1: PUSH1 0x20
00000af3: ADD
00000af4: SWAP1
00000af5: DUP2
00000af6: MSTORE
00000af7: PUSH1 0x20
00000af9: ADD
00000afa: PUSH1 0x00
00000afc: KECCAK256
00000afd: PUSH1 0x00
00000aff: DUP3
00000b00: DUP3
00000b01: DUP3
00000b02: POP
00000b03: SLOAD
00000b04: SUB
00000b05: SWAP3
00000b06: POP
00000b07: POP
00000b08: DUP2
00000b09: SWAP1
00000b0a: SSTORE
00000b0b: POP
00000b0c: DUP3
00000b0d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b22: AND
00000b23: DUP5
00000b24: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b39: AND
00000b3a: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00000b5b: DUP5
00000b5c: PUSH1 0x40
00000b5e: MLOAD
00000b5f: DUP1
00000b60: DUP3
00000b61: DUP2
00000b62: MSTORE
00000b63: PUSH1 0x20
00000b65: ADD
00000b66: SWAP2
00000b67: POP
00000b68: POP
00000b69: PUSH1 0x40
00000b6b: MLOAD
00000b6c: DUP1
00000b6d: SWAP2
00000b6e: SUB
00000b6f: SWAP1
00000b70: LOG3
00000b71: PUSH1 0x01
00000b73: SWAP1
00000b74: POP
00000b75: PUSH2 0x0b79
00000b78: JUMP
00000b79: JUMPDEST
00000b7a: SWAP4
00000b7b: SWAP3
00000b7c: POP
00000b7d: POP
00000b7e: POP
00000b7f: JUMP
00000b80: JUMPDEST
00000b81: PUSH1 0x03
00000b83: PUSH1 0x00
00000b85: SWAP1
00000b86: SLOAD
00000b87: SWAP1
00000b88: PUSH2 0x0100
00000b8b: EXP
00000b8c: SWAP1
00000b8d: DIV
00000b8e: PUSH1 0xff
00000b90: AND
00000b91: DUP2
00000b92: JUMP
00000b93: JUMPDEST
00000b94: PUSH1 0x00
00000b96: PUSH1 0x00
00000b98: POP
00000b99: DUP1
00000b9a: SLOAD
00000b9b: PUSH1 0x01
00000b9d: DUP2
00000b9e: PUSH1 0x01
00000ba0: AND
00000ba1: ISZERO
00000ba2: PUSH2 0x0100
00000ba5: MUL
00000ba6: SUB
00000ba7: AND
00000ba8: PUSH1 0x02
00000baa: SWAP1
00000bab: DIV
00000bac: DUP1
00000bad: PUSH1 0x1f
00000baf: ADD
00000bb0: PUSH1 0x20
00000bb2: DUP1
00000bb3: SWAP2
00000bb4: DIV
00000bb5: MUL
00000bb6: PUSH1 0x20
00000bb8: ADD
00000bb9: PUSH1 0x40
00000bbb: MLOAD
00000bbc: SWAP1
00000bbd: DUP2
00000bbe: ADD
00000bbf: PUSH1 0x40
00000bc1: MSTORE
00000bc2: DUP1
00000bc3: SWAP3
00000bc4: SWAP2
00000bc5: SWAP1
00000bc6: DUP2
00000bc7: DUP2
00000bc8: MSTORE
00000bc9: PUSH1 0x20
00000bcb: ADD
00000bcc: DUP3
00000bcd: DUP1
00000bce: SLOAD
00000bcf: PUSH1 0x01
00000bd1: DUP2
00000bd2: PUSH1 0x01
00000bd4: AND
00000bd5: ISZERO
00000bd6: PUSH2 0x0100
00000bd9: MUL
00000bda: SUB
00000bdb: AND
00000bdc: PUSH1 0x02
00000bde: SWAP1
00000bdf: DIV
00000be0: DUP1
00000be1: ISZERO
00000be2: PUSH2 0x0c2c
00000be5: JUMPI
00000be6: DUP1
00000be7: PUSH1 0x1f
00000be9: LT
00000bea: PUSH2 0x0c01
00000bed: JUMPI
00000bee: PUSH2 0x0100
00000bf1: DUP1
00000bf2: DUP4
00000bf3: SLOAD
00000bf4: DIV
00000bf5: MUL
00000bf6: DUP4
00000bf7: MSTORE
00000bf8: SWAP2
00000bf9: PUSH1 0x20
00000bfb: ADD
00000bfc: SWAP2
00000bfd: PUSH2 0x0c2c
00000c00: JUMP
00000c01: JUMPDEST
00000c02: DUP3
00000c03: ADD
00000c04: SWAP2
00000c05: SWAP1
00000c06: PUSH1 0x00
00000c08: MSTORE
00000c09: PUSH1 0x20
00000c0b: PUSH1 0x00
00000c0d: KECCAK256
00000c0e: SWAP1
00000c0f: JUMPDEST
00000c10: DUP2
00000c11: SLOAD
00000c12: DUP2
00000c13: MSTORE
00000c14: SWAP1
00000c15: PUSH1 0x01
00000c17: ADD
00000c18: SWAP1
00000c19: PUSH1 0x20
00000c1b: ADD
00000c1c: DUP1
00000c1d: DUP4
00000c1e: GT
00000c1f: PUSH2 0x0c0f
00000c22: JUMPI
00000c23: DUP3
00000c24: SWAP1
00000c25: SUB
00000c26: PUSH1 0x1f
00000c28: AND
00000c29: DUP3
00000c2a: ADD
00000c2b: SWAP2
00000c2c: JUMPDEST
00000c2d: POP
00000c2e: POP
00000c2f: POP
00000c30: POP
00000c31: POP
00000c32: DUP2
00000c33: JUMP
00000c34: JUMPDEST
00000c35: PUSH1 0x0b
00000c37: PUSH1 0x00
00000c39: POP
00000c3a: PUSH1 0x20
00000c3c: MSTORE
00000c3d: DUP1
00000c3e: PUSH1 0x00
00000c40: MSTORE
00000c41: PUSH1 0x40
00000c43: PUSH1 0x00
00000c45: KECCAK256
00000c46: PUSH1 0x00
00000c48: SWAP2
00000c49: POP
00000c4a: SWAP1
00000c4b: POP
00000c4c: SLOAD
00000c4d: DUP2
00000c4e: JUMP
00000c4f: JUMPDEST
00000c50: PUSH1 0x0a
00000c52: PUSH1 0x00
00000c54: SWAP1
00000c55: SLOAD
00000c56: SWAP1
00000c57: PUSH2 0x0100
00000c5a: EXP
00000c5b: SWAP1
00000c5c: DIV
00000c5d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c72: AND
00000c73: DUP2
00000c74: JUMP
00000c75: JUMPDEST
00000c76: PUSH1 0x08
00000c78: PUSH1 0x00
00000c7a: SWAP1
00000c7b: SLOAD
00000c7c: SWAP1
00000c7d: PUSH2 0x0100
00000c80: EXP
00000c81: SWAP1
00000c82: DIV
00000c83: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c98: AND
00000c99: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cae: AND
00000caf: CALLER
00000cb0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cc5: AND
00000cc6: EQ
00000cc7: ISZERO
00000cc8: PUSH2 0x0d3d
00000ccb: JUMPI
00000ccc: PUSH1 0x08
00000cce: PUSH1 0x00
00000cd0: SWAP1
00000cd1: SLOAD
00000cd2: SWAP1
00000cd3: PUSH2 0x0100
00000cd6: EXP
00000cd7: SWAP1
00000cd8: DIV
00000cd9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cee: AND
00000cef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d04: AND
00000d05: PUSH1 0x00
00000d07: PUSH3 0x200b20
00000d0b: ADDRESS
00000d0c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d21: AND
00000d22: BALANCE
00000d23: SUB
00000d24: PUSH1 0x40
00000d26: MLOAD
00000d27: DUP1
00000d28: SWAP1
00000d29: POP
00000d2a: PUSH1 0x00
00000d2c: PUSH1 0x40
00000d2e: MLOAD
00000d2f: DUP1
00000d30: DUP4
00000d31: SUB
00000d32: DUP2
00000d33: DUP6
00000d34: DUP9
00000d35: DUP9
00000d36: CALL
00000d37: SWAP4
00000d38: POP
00000d39: POP
00000d3a: POP
00000d3b: POP
00000d3c: POP
00000d3d: JUMPDEST
00000d3e: JUMPDEST
00000d3f: JUMP
00000d40: JUMPDEST
00000d41: PUSH1 0x08
00000d43: PUSH1 0x00
00000d45: SWAP1
00000d46: SLOAD
00000d47: SWAP1
00000d48: PUSH2 0x0100
00000d4b: EXP
00000d4c: SWAP1
00000d4d: DIV
00000d4e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d63: AND
00000d64: DUP2
00000d65: JUMP
00000d66: JUMPDEST
00000d67: PUSH1 0x02
00000d69: PUSH1 0x00
00000d6b: POP
00000d6c: DUP1
00000d6d: SLOAD
00000d6e: PUSH1 0x01
00000d70: DUP2
00000d71: PUSH1 0x01
00000d73: AND
00000d74: ISZERO
00000d75: PUSH2 0x0100
00000d78: MUL
00000d79: SUB
00000d7a: AND
00000d7b: PUSH1 0x02
00000d7d: SWAP1
00000d7e: DIV
00000d7f: DUP1
00000d80: PUSH1 0x1f
00000d82: ADD
00000d83: PUSH1 0x20
00000d85: DUP1
00000d86: SWAP2
00000d87: DIV
00000d88: MUL
00000d89: PUSH1 0x20
00000d8b: ADD
00000d8c: PUSH1 0x40
00000d8e: MLOAD
00000d8f: SWAP1
00000d90: DUP2
00000d91: ADD
00000d92: PUSH1 0x40
00000d94: MSTORE
00000d95: DUP1
00000d96: SWAP3
00000d97: SWAP2
00000d98: SWAP1
00000d99: DUP2
00000d9a: DUP2
00000d9b: MSTORE
00000d9c: PUSH1 0x20
00000d9e: ADD
00000d9f: DUP3
00000da0: DUP1
00000da1: SLOAD
00000da2: PUSH1 0x01
00000da4: DUP2
00000da5: PUSH1 0x01
00000da7: AND
00000da8: ISZERO
00000da9: PUSH2 0x0100
00000dac: MUL
00000dad: SUB
00000dae: AND
00000daf: PUSH1 0x02
00000db1: SWAP1
00000db2: DIV
00000db3: DUP1
00000db4: ISZERO
00000db5: PUSH2 0x0dff
00000db8: JUMPI
00000db9: DUP1
00000dba: PUSH1 0x1f
00000dbc: LT
00000dbd: PUSH2 0x0dd4
00000dc0: JUMPI
00000dc1: PUSH2 0x0100
00000dc4: DUP1
00000dc5: DUP4
00000dc6: SLOAD
00000dc7: DIV
00000dc8: MUL
00000dc9: DUP4
00000dca: MSTORE
00000dcb: SWAP2
00000dcc: PUSH1 0x20
00000dce: ADD
00000dcf: SWAP2
00000dd0: PUSH2 0x0dff
00000dd3: JUMP
00000dd4: JUMPDEST
00000dd5: DUP3
00000dd6: ADD
00000dd7: SWAP2
00000dd8: SWAP1
00000dd9: PUSH1 0x00
00000ddb: MSTORE
00000ddc: PUSH1 0x20
00000dde: PUSH1 0x00
00000de0: KECCAK256
00000de1: SWAP1
00000de2: JUMPDEST
00000de3: DUP2
00000de4: SLOAD
00000de5: DUP2
00000de6: MSTORE
00000de7: SWAP1
00000de8: PUSH1 0x01
00000dea: ADD
00000deb: SWAP1
00000dec: PUSH1 0x20
00000dee: ADD
00000def: DUP1
00000df0: DUP4
00000df1: GT
00000df2: PUSH2 0x0de2
00000df5: JUMPI
00000df6: DUP3
00000df7: SWAP1
00000df8: SUB
00000df9: PUSH1 0x1f
00000dfb: AND
00000dfc: DUP3
00000dfd: ADD
00000dfe: SWAP2
00000dff: JUMPDEST
00000e00: POP
00000e01: POP
00000e02: POP
00000e03: POP
00000e04: POP
00000e05: DUP2
00000e06: JUMP
00000e07: JUMPDEST
00000e08: DUP1
00000e09: PUSH1 0x06
00000e0b: PUSH1 0x00
00000e0d: POP
00000e0e: PUSH1 0x00
00000e10: CALLER
00000e11: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e26: AND
00000e27: DUP2
00000e28: MSTORE
00000e29: PUSH1 0x20
00000e2b: ADD
00000e2c: SWAP1
00000e2d: DUP2
00000e2e: MSTORE
00000e2f: PUSH1 0x20
00000e31: ADD
00000e32: PUSH1 0x00
00000e34: KECCAK256
00000e35: PUSH1 0x00
00000e37: POP
00000e38: SLOAD
00000e39: LT
00000e3a: ISZERO
00000e3b: PUSH2 0x0e43
00000e3e: JUMPI
00000e3f: PUSH2 0x0002
00000e42: JUMP
00000e43: JUMPDEST
00000e44: PUSH1 0x06
00000e46: PUSH1 0x00
00000e48: POP
00000e49: PUSH1 0x00
00000e4b: DUP4
00000e4c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e61: AND
00000e62: DUP2
00000e63: MSTORE
00000e64: PUSH1 0x20
00000e66: ADD
00000e67: SWAP1
00000e68: DUP2
00000e69: MSTORE
00000e6a: PUSH1 0x20
00000e6c: ADD
00000e6d: PUSH1 0x00
00000e6f: KECCAK256
00000e70: PUSH1 0x00
00000e72: POP
00000e73: SLOAD
00000e74: DUP2
00000e75: PUSH1 0x06
00000e77: PUSH1 0x00
00000e79: POP
00000e7a: PUSH1 0x00
00000e7c: DUP6
00000e7d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e92: AND
00000e93: DUP2
00000e94: MSTORE
00000e95: PUSH1 0x20
00000e97: ADD
00000e98: SWAP1
00000e99: DUP2
00000e9a: MSTORE
00000e9b: PUSH1 0x20
00000e9d: ADD
00000e9e: PUSH1 0x00
00000ea0: KECCAK256
00000ea1: PUSH1 0x00
00000ea3: POP
00000ea4: SLOAD
00000ea5: ADD
00000ea6: LT
00000ea7: ISZERO
00000ea8: PUSH2 0x0eb0
00000eab: JUMPI
00000eac: PUSH2 0x0002
00000eaf: JUMP
00000eb0: JUMPDEST
00000eb1: DUP1
00000eb2: PUSH1 0x06
00000eb4: PUSH1 0x00
00000eb6: POP
00000eb7: PUSH1 0x00
00000eb9: CALLER
00000eba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ecf: AND
00000ed0: DUP2
00000ed1: MSTORE
00000ed2: PUSH1 0x20
00000ed4: ADD
00000ed5: SWAP1
00000ed6: DUP2
00000ed7: MSTORE
00000ed8: PUSH1 0x20
00000eda: ADD
00000edb: PUSH1 0x00
00000edd: KECCAK256
00000ede: PUSH1 0x00
00000ee0: DUP3
00000ee1: DUP3
00000ee2: DUP3
00000ee3: POP
00000ee4: SLOAD
00000ee5: SUB
00000ee6: SWAP3
00000ee7: POP
00000ee8: POP
00000ee9: DUP2
00000eea: SWAP1
00000eeb: SSTORE
00000eec: POP
00000eed: DUP1
00000eee: PUSH1 0x06
00000ef0: PUSH1 0x00
00000ef2: POP
00000ef3: PUSH1 0x00
00000ef5: DUP5
00000ef6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f0b: AND
00000f0c: DUP2
00000f0d: MSTORE
00000f0e: PUSH1 0x20
00000f10: ADD
00000f11: SWAP1
00000f12: DUP2
00000f13: MSTORE
00000f14: PUSH1 0x20
00000f16: ADD
00000f17: PUSH1 0x00
00000f19: KECCAK256
00000f1a: PUSH1 0x00
00000f1c: DUP3
00000f1d: DUP3
00000f1e: DUP3
00000f1f: POP
00000f20: SLOAD
00000f21: ADD
00000f22: SWAP3
00000f23: POP
00000f24: POP
00000f25: DUP2
00000f26: SWAP1
00000f27: SSTORE
00000f28: POP
00000f29: DUP2
00000f2a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f3f: AND
00000f40: CALLER
00000f41: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000f56: AND
00000f57: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00000f78: DUP4
00000f79: PUSH1 0x40
00000f7b: MLOAD
00000f7c: DUP1
00000f7d: DUP3
00000f7e: DUP2
00000f7f: MSTORE
00000f80: PUSH1 0x20
00000f82: ADD
00000f83: SWAP2
00000f84: POP
00000f85: POP
00000f86: PUSH1 0x40
00000f88: MLOAD
00000f89: DUP1
00000f8a: SWAP2
00000f8b: SUB
00000f8c: SWAP1
00000f8d: LOG3
00000f8e: JUMPDEST
00000f8f: POP
00000f90: POP
00000f91: JUMP
00000f92: JUMPDEST
00000f93: PUSH1 0x09
00000f95: PUSH1 0x00
00000f97: SWAP1
00000f98: SLOAD
00000f99: SWAP1
00000f9a: PUSH2 0x0100
00000f9d: EXP
00000f9e: SWAP1
00000f9f: DIV
00000fa0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fb5: AND
00000fb6: DUP2
00000fb7: JUMP
00000fb8: JUMPDEST
00000fb9: PUSH1 0x0d
00000fbb: PUSH1 0x00
00000fbd: POP
00000fbe: SLOAD
00000fbf: DUP2
00000fc0: JUMP
00000fc1: JUMPDEST
00000fc2: PUSH1 0x0d
00000fc4: PUSH1 0x00
00000fc6: POP
00000fc7: SLOAD
00000fc8: CALLVALUE
00000fc9: LT
00000fca: ISZERO
00000fcb: ISZERO
00000fcc: PUSH2 0x1053
00000fcf: JUMPI
00000fd0: CALLVALUE
00000fd1: PUSH1 0x0b
00000fd3: PUSH1 0x00
00000fd5: POP
00000fd6: PUSH1 0x00
00000fd8: CALLER
00000fd9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fee: AND
00000fef: DUP2
00000ff0: MSTORE
00000ff1: PUSH1 0x20
00000ff3: ADD
00000ff4: SWAP1
00000ff5: DUP2
00000ff6: MSTORE
00000ff7: PUSH1 0x20
00000ff9: ADD
00000ffa: PUSH1 0x00
00000ffc: KECCAK256
00000ffd: PUSH1 0x00
00000fff: DUP3
00001000: DUP3
00001001: DUP3
00001002: POP
00001003: SLOAD
00001004: ADD
00001005: SWAP3
00001006: POP
00001007: POP
00001008: DUP2
00001009: SWAP1
0000100a: SSTORE
0000100b: POP
0000100c: PUSH1 0x0d
0000100e: PUSH1 0x00
00001010: POP
00001011: SLOAD
00001012: CALLVALUE
00001013: DIV
00001014: PUSH1 0x0c
00001016: PUSH1 0x00
00001018: POP
00001019: PUSH1 0x00
0000101b: CALLER
0000101c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001031: AND
00001032: DUP2
00001033: MSTORE
00001034: PUSH1 0x20
00001036: ADD
00001037: SWAP1
00001038: DUP2
00001039: MSTORE
0000103a: PUSH1 0x20
0000103c: ADD
0000103d: PUSH1 0x00
0000103f: KECCAK256
00001040: PUSH1 0x00
00001042: DUP3
00001043: DUP3
00001044: DUP3
00001045: POP
00001046: SLOAD
00001047: ADD
00001048: SWAP3
00001049: POP
0000104a: POP
0000104b: DUP2
0000104c: SWAP1
0000104d: SSTORE
0000104e: POP
0000104f: PUSH2 0x1058
00001052: JUMP
00001053: JUMPDEST
00001054: PUSH2 0x0002
00001057: JUMP
00001058: JUMPDEST
00001059: JUMPDEST
0000105a: JUMP
0000105b: JUMPDEST
0000105c: PUSH1 0x00
0000105e: PUSH1 0x00
00001060: DUP5
00001061: SWAP1
00001062: POP
00001063: PUSH2 0x106c
00001066: DUP6
00001067: DUP6
00001068: PUSH2 0x0689
0000106b: JUMP
0000106c: JUMPDEST
0000106d: ISZERO
0000106e: PUSH2 0x117f
00001071: JUMPI
00001072: DUP1
00001073: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001088: AND
00001089: PUSH4 0x8f4ffcb1
0000108e: CALLER
0000108f: DUP7
00001090: ADDRESS
00001091: DUP8
00001092: PUSH1 0x40
00001094: MLOAD
00001095: DUP6
00001096: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
000010b4: MUL
000010b5: DUP2
000010b6: MSTORE
000010b7: PUSH1 0x04
000010b9: ADD
000010ba: DUP1
000010bb: DUP6
000010bc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010d1: AND
000010d2: DUP2
000010d3: MSTORE
000010d4: PUSH1 0x20
000010d6: ADD
000010d7: DUP5
000010d8: DUP2
000010d9: MSTORE
000010da: PUSH1 0x20
000010dc: ADD
000010dd: DUP4
000010de: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010f3: AND
000010f4: DUP2
000010f5: MSTORE
000010f6: PUSH1 0x20
000010f8: ADD
000010f9: DUP1
000010fa: PUSH1 0x20
000010fc: ADD
000010fd: DUP3
000010fe: DUP2
000010ff: SUB
00001100: DUP3
00001101: MSTORE
00001102: DUP4
00001103: DUP2
00001104: DUP2
00001105: MLOAD
00001106: DUP2
00001107: MSTORE
00001108: PUSH1 0x20
0000110a: ADD
0000110b: SWAP2
0000110c: POP
0000110d: DUP1
0000110e: MLOAD
0000110f: SWAP1
00001110: PUSH1 0x20
00001112: ADD
00001113: SWAP1
00001114: DUP1
00001115: DUP4
00001116: DUP4
00001117: DUP3
00001118: SWAP1
00001119: PUSH1 0x00
0000111b: PUSH1 0x04
0000111d: PUSH1 0x20
0000111f: DUP5
00001120: PUSH1 0x1f
00001122: ADD
00001123: DIV
00001124: PUSH1 0x03
00001126: MUL
00001127: PUSH1 0x0f
00001129: ADD
0000112a: CALL
0000112b: POP
0000112c: SWAP1
0000112d: POP
0000112e: SWAP1
0000112f: DUP2
00001130: ADD
00001131: SWAP1
00001132: PUSH1 0x1f
00001134: AND
00001135: DUP1
00001136: ISZERO
00001137: PUSH2 0x1154
0000113a: JUMPI
0000113b: DUP1
0000113c: DUP3
0000113d: SUB
0000113e: DUP1
0000113f: MLOAD
00001140: PUSH1 0x01
00001142: DUP4
00001143: PUSH1 0x20
00001145: SUB
00001146: PUSH2 0x0100
00001149: EXP
0000114a: SUB
0000114b: NOT
0000114c: AND
0000114d: DUP2
0000114e: MSTORE
0000114f: PUSH1 0x20
00001151: ADD
00001152: SWAP2
00001153: POP
00001154: JUMPDEST
00001155: POP
00001156: SWAP6
00001157: POP
00001158: POP
00001159: POP
0000115a: POP
0000115b: POP
0000115c: POP
0000115d: PUSH1 0x00
0000115f: PUSH1 0x40
00001161: MLOAD
00001162: DUP1
00001163: DUP4
00001164: SUB
00001165: DUP2
00001166: PUSH1 0x00
00001168: DUP8
00001169: PUSH2 0x61da
0000116c: GAS
0000116d: SUB
0000116e: CALL
0000116f: ISZERO
00001170: PUSH2 0x0002
00001173: JUMPI
00001174: POP
00001175: POP
00001176: POP
00001177: PUSH1 0x01
00001179: SWAP2
0000117a: POP
0000117b: PUSH2 0x1180
0000117e: JUMP
0000117f: JUMPDEST
00001180: JUMPDEST
00001181: POP
00001182: SWAP4
00001183: SWAP3
00001184: POP
00001185: POP
00001186: POP
00001187: JUMP
00001188: JUMPDEST
00001189: PUSH1 0x07
0000118b: PUSH1 0x00
0000118d: POP
0000118e: PUSH1 0x20
00001190: MSTORE
00001191: DUP2
00001192: PUSH1 0x00
00001194: MSTORE
00001195: PUSH1 0x40
00001197: PUSH1 0x00
00001199: KECCAK256
0000119a: PUSH1 0x00
0000119c: POP
0000119d: PUSH1 0x20
0000119f: MSTORE
000011a0: DUP1
000011a1: PUSH1 0x00
000011a3: MSTORE
000011a4: PUSH1 0x40
000011a6: PUSH1 0x00
000011a8: KECCAK256
000011a9: PUSH1 0x00
000011ab: SWAP2
000011ac: POP
000011ad: SWAP2
000011ae: POP
000011af: POP
000011b0: SLOAD
000011b1: DUP2
000011b2: JUMP
000011b3: JUMPDEST
000011b4: PUSH1 0x0e
000011b6: PUSH1 0x00
000011b8: POP
000011b9: SLOAD
000011ba: DUP2
000011bb: JUMP
000011bc: JUMPDEST
000011bd: PUSH1 0x00
000011bf: PUSH1 0x06
000011c1: PUSH1 0x00
000011c3: POP
000011c4: PUSH1 0x00
000011c6: DUP4
000011c7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000011dc: AND
000011dd: DUP2
000011de: MSTORE
000011df: PUSH1 0x20
000011e1: ADD
000011e2: SWAP1
000011e3: DUP2
000011e4: MSTORE
000011e5: PUSH1 0x20
000011e7: ADD
000011e8: PUSH1 0x00
000011ea: KECCAK256
000011eb: PUSH1 0x00
000011ed: POP
000011ee: SLOAD
000011ef: SWAP1
000011f0: POP
000011f1: PUSH2 0x11f5
000011f4: JUMP
000011f5: JUMPDEST
000011f6: SWAP2
000011f7: SWAP1
000011f8: POP
000011f9: JUMP
000011fa: JUMPDEST
000011fb: PUSH1 0x0c
000011fd: PUSH1 0x00
000011ff: POP
00001200: PUSH1 0x20
00001202: MSTORE
00001203: DUP1
00001204: PUSH1 0x00
00001206: MSTORE
00001207: PUSH1 0x40
00001209: PUSH1 0x00
0000120b: KECCAK256
0000120c: PUSH1 0x00
0000120e: SWAP2
0000120f: POP
00001210: SWAP1
00001211: POP
00001212: SLOAD
00001213: DUP2
00001214: JUMP
00001215: JUMPDEST
00001216: PUSH1 0x0a
00001218: PUSH1 0x00
0000121a: SWAP1
0000121b: SLOAD
0000121c: SWAP1
0000121d: PUSH2 0x0100
00001220: EXP
00001221: SWAP1
00001222: DIV
00001223: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001238: AND
00001239: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000124e: AND
0000124f: PUSH4 0xa9059cbb
00001254: DUP3
00001255: DUP5
00001256: PUSH1 0x40
00001258: MLOAD
00001259: DUP4
0000125a: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
00001278: MUL
00001279: DUP2
0000127a: MSTORE
0000127b: PUSH1 0x04
0000127d: ADD
0000127e: DUP1
0000127f: DUP4
00001280: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001295: AND
00001296: DUP2
00001297: MSTORE
00001298: PUSH1 0x20
0000129a: ADD
0000129b: DUP3
0000129c: DUP2
0000129d: MSTORE
0000129e: PUSH1 0x20
000012a0: ADD
000012a1: SWAP3
000012a2: POP
000012a3: POP
000012a4: POP
000012a5: PUSH1 0x00
000012a7: PUSH1 0x40
000012a9: MLOAD
000012aa: DUP1
000012ab: DUP4
000012ac: SUB
000012ad: DUP2
000012ae: PUSH1 0x00
000012b0: DUP8
000012b1: PUSH2 0x61da
000012b4: GAS
000012b5: SUB
000012b6: CALL
000012b7: ISZERO
000012b8: PUSH2 0x0002
000012bb: JUMPI
000012bc: POP
000012bd: POP
000012be: POP
000012bf: JUMPDEST
000012c0: POP
000012c1: POP
000012c2: JUMP
View stderr
Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment.

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
medium other detector Untrusted CALL target/value reachable 45 yes yes
view
trace_id: 0x5c6c2aabcc8e86db2be269acefe3971a3dc20cd83d78daaca4fb69ad3f36ef2a
call_targets: 0x0000000000000000000000000000000000000004, 0xaa21c991b3172f9c1fa9e76399fcdde237fd13f0
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x5c6c2aabcc8e86db2be269acefe3971a3dc20cd83d78daaca4fb69ad3f36ef2a",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000004",
        "0xaa21c991b3172f9c1fa9e76399fcdde237fd13f0"
    ],
    "matched_probe": null,
    "target_varies": true,
    "classification": "target_varies"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1720ea55",
            "selector": "0x1720ea55",
            "calldata_variants": [
                "0x1720ea55",
                "0x1720ea550000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a3b7e42",
            "selector": "0x5a3b7e42",
            "calldata_variants": [
                "0x5a3b7e42",
                "0x5a3b7e420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 357,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 718,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1014,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 10,
    "guards_detected": [
        {
            "pc": 3247,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 10
}
medium other detector ETH value transfer possible 40 yes yes
view
trace_id: 0x5c6c2aabcc8e86db2be269acefe3971a3dc20cd83d78daaca4fb69ad3f36ef2a
call_targets: 0x0000000000000000000000000000000000000004, 0xaa21c991b3172f9c1fa9e76399fcdde237fd13f0
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x5c6c2aabcc8e86db2be269acefe3971a3dc20cd83d78daaca4fb69ad3f36ef2a",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000004",
        "0xaa21c991b3172f9c1fa9e76399fcdde237fd13f0"
    ],
    "matched_probe": null,
    "target_varies": true,
    "classification": "target_varies"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1720ea55",
            "selector": "0x1720ea55",
            "calldata_variants": [
                "0x1720ea55",
                "0x1720ea550000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a3b7e42",
            "selector": "0x5a3b7e42",
            "calldata_variants": [
                "0x5a3b7e42",
                "0x5a3b7e420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 357,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 718,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1014,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 10,
    "guards_detected": [
        {
            "pc": 3247,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}