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

Analysis Run

019b3836-51b5-7177-8358-2f0ddd0ff409

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
0
Validated
0
Source
Bytecode only
Review Backing
Not yet
Best current signal
Authorization based on tx.origin
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
7811 artifact.fetch complete 1 / 3 4 months ago
7812 tool.cast_disasm complete 1 / 3 4 months ago
81963 analysis.bundle complete 1 / 3 2 weeks ago
81964 capability.graph complete 1 / 3 2 weeks ago
81965 detector.run complete 1 / 3 2 weeks ago
81966 validation.fork complete 1 / 3 2 weeks 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

No codex job recorded yet.

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
5
EXT*/BALANCE
0
Total opcodes
3241
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x01ab
0000000a: JUMPI
0000000b: PUSH1 0xe0
0000000d: PUSH1 0x02
0000000f: EXP
00000010: PUSH1 0x00
00000012: CALLDATALOAD
00000013: DIV
00000014: PUSH4 0x02fb0c5e
00000019: DUP2
0000001a: EQ
0000001b: PUSH2 0x01b6
0000001e: JUMPI
0000001f: DUP1
00000020: PUSH4 0x046f7da2
00000025: EQ
00000026: PUSH2 0x01c9
00000029: JUMPI
0000002a: DUP1
0000002b: PUSH4 0x259da3ea
00000030: EQ
00000031: PUSH2 0x01e9
00000034: JUMPI
00000035: DUP1
00000036: PUSH4 0x26c038cd
0000003b: EQ
0000003c: PUSH2 0x020d
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x31225116
00000046: EQ
00000047: PUSH2 0x0230
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x36c92c3f
00000051: EQ
00000052: PUSH2 0x0239
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x46a84e81
0000005c: EQ
0000005d: PUSH2 0x025c
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0x49d6b709
00000067: EQ
00000068: PUSH2 0x027f
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0x534da2b5
00000072: EQ
00000073: PUSH2 0x02a2
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0x5945ed30
0000007d: EQ
0000007e: PUSH2 0x02b4
00000081: JUMPI
00000082: DUP1
00000083: PUSH4 0x5cdf1649
00000088: EQ
00000089: PUSH2 0x02bd
0000008c: JUMPI
0000008d: DUP1
0000008e: PUSH4 0x6256124d
00000093: EQ
00000094: PUSH2 0x02e0
00000097: JUMPI
00000098: DUP1
00000099: PUSH4 0x6b31ee01
0000009e: EQ
0000009f: PUSH2 0x02e9
000000a2: JUMPI
000000a3: DUP1
000000a4: PUSH4 0x6d3679e9
000000a9: EQ
000000aa: PUSH2 0x02f2
000000ad: JUMPI
000000ae: DUP1
000000af: PUSH4 0x740f5c46
000000b4: EQ
000000b5: PUSH2 0x0304
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0x747afa8a
000000bf: EQ
000000c0: PUSH2 0x0316
000000c3: JUMPI
000000c4: DUP1
000000c5: PUSH4 0x8073ec6a
000000ca: EQ
000000cb: PUSH2 0x031f
000000ce: JUMPI
000000cf: DUP1
000000d0: PUSH4 0x81986430
000000d5: EQ
000000d6: PUSH2 0x0342
000000d9: JUMPI
000000da: DUP1
000000db: PUSH4 0x8da5cb5b
000000e0: EQ
000000e1: PUSH2 0x0363
000000e4: JUMPI
000000e5: DUP1
000000e6: PUSH4 0x93d1219c
000000eb: EQ
000000ec: PUSH2 0x0375
000000ef: JUMPI
000000f0: DUP1
000000f1: PUSH4 0x97b2f556
000000f6: EQ
000000f7: PUSH2 0x037e
000000fa: JUMPI
000000fb: DUP1
000000fc: PUSH4 0x990dc9db
00000101: EQ
00000102: PUSH2 0x0389
00000105: JUMPI
00000106: DUP1
00000107: PUSH4 0x9d5dfe8b
0000010c: EQ
0000010d: PUSH2 0x03af
00000110: JUMPI
00000111: DUP1
00000112: PUSH4 0xa6f9dae1
00000117: EQ
00000118: PUSH2 0x03d2
0000011b: JUMPI
0000011c: DUP1
0000011d: PUSH4 0xa9afbec9
00000122: EQ
00000123: PUSH2 0x03f6
00000126: JUMPI
00000127: DUP1
00000128: PUSH4 0xb926dd7e
0000012d: EQ
0000012e: PUSH2 0x03ff
00000131: JUMPI
00000132: DUP1
00000133: PUSH4 0xbbe02784
00000138: EQ
00000139: PUSH2 0x041f
0000013c: JUMPI
0000013d: DUP1
0000013e: PUSH4 0xc8a6baa7
00000143: EQ
00000144: PUSH2 0x0442
00000147: JUMPI
00000148: DUP1
00000149: PUSH4 0xcabfb934
0000014e: EQ
0000014f: PUSH2 0x0454
00000152: JUMPI
00000153: DUP1
00000154: PUSH4 0xd1b04e9e
00000159: EQ
0000015a: PUSH2 0x0477
0000015d: JUMPI
0000015e: DUP1
0000015f: PUSH4 0xe35efec2
00000164: EQ
00000165: PUSH2 0x0480
00000168: JUMPI
00000169: DUP1
0000016a: PUSH4 0xe3631c29
0000016f: EQ
00000170: PUSH2 0x049e
00000173: JUMPI
00000174: DUP1
00000175: PUSH4 0xe5e67e45
0000017a: EQ
0000017b: PUSH2 0x04a7
0000017e: JUMPI
0000017f: DUP1
00000180: PUSH4 0xe6400bbe
00000185: EQ
00000186: PUSH2 0x04c7
00000189: JUMPI
0000018a: DUP1
0000018b: PUSH4 0xee0ab30a
00000190: EQ
00000191: PUSH2 0x04e7
00000194: JUMPI
00000195: DUP1
00000196: PUSH4 0xf71d96cb
0000019b: EQ
0000019c: PUSH2 0x0508
0000019f: JUMPI
000001a0: DUP1
000001a1: PUSH4 0xfbfa77cf
000001a6: EQ
000001a7: PUSH2 0x053c
000001aa: JUMPI
000001ab: JUMPDEST
000001ac: PUSH2 0x0545
000001af: PUSH2 0x0547
000001b2: PUSH2 0x0484
000001b5: JUMP
000001b6: JUMPDEST
000001b7: PUSH2 0x054a
000001ba: PUSH1 0x04
000001bc: SLOAD
000001bd: PUSH1 0xa0
000001bf: PUSH1 0x02
000001c1: EXP
000001c2: SWAP1
000001c3: DIV
000001c4: PUSH1 0xff
000001c6: AND
000001c7: DUP2
000001c8: JUMP
000001c9: JUMPDEST
000001ca: PUSH2 0x0545
000001cd: PUSH1 0x00
000001cf: SLOAD
000001d0: PUSH1 0x01
000001d2: PUSH1 0xa0
000001d4: PUSH1 0x02
000001d6: EXP
000001d7: SUB
000001d8: SWAP1
000001d9: DUP2
000001da: AND
000001db: ORIGIN
000001dc: SWAP2
000001dd: SWAP1
000001de: SWAP2
000001df: AND
000001e0: EQ
000001e1: PUSH2 0x0fc8
000001e4: JUMPI
000001e5: PUSH2 0x0002
000001e8: JUMP
000001e9: JUMPDEST
000001ea: PUSH2 0x0545
000001ed: PUSH1 0x04
000001ef: CALLDATALOAD
000001f0: JUMPDEST
000001f1: PUSH1 0x00
000001f3: DUP1
000001f4: SLOAD
000001f5: PUSH1 0x01
000001f7: PUSH1 0xa0
000001f9: PUSH1 0x02
000001fb: EXP
000001fc: SUB
000001fd: SWAP1
000001fe: DUP2
000001ff: AND
00000200: ORIGIN
00000201: SWAP1
00000202: SWAP2
00000203: AND
00000204: EQ
00000205: PUSH2 0x086f
00000208: JUMPI
00000209: PUSH2 0x0002
0000020c: JUMP
0000020d: JUMPDEST
0000020e: PUSH2 0x0545
00000211: PUSH1 0x04
00000213: CALLDATALOAD
00000214: PUSH1 0x00
00000216: SLOAD
00000217: PUSH1 0x01
00000219: PUSH1 0xa0
0000021b: PUSH1 0x02
0000021d: EXP
0000021e: SUB
0000021f: SWAP1
00000220: DUP2
00000221: AND
00000222: ORIGIN
00000223: SWAP2
00000224: SWAP1
00000225: SWAP2
00000226: AND
00000227: EQ
00000228: PUSH2 0x0b78
0000022b: JUMPI
0000022c: PUSH2 0x0002
0000022f: JUMP
00000230: JUMPDEST
00000231: PUSH2 0x054a
00000234: PUSH1 0x08
00000236: SLOAD
00000237: DUP2
00000238: JUMP
00000239: JUMPDEST
0000023a: PUSH2 0x0545
0000023d: PUSH1 0x04
0000023f: CALLDATALOAD
00000240: PUSH1 0x00
00000242: SLOAD
00000243: PUSH1 0x01
00000245: PUSH1 0xa0
00000247: PUSH1 0x02
00000249: EXP
0000024a: SUB
0000024b: SWAP1
0000024c: DUP2
0000024d: AND
0000024e: ORIGIN
0000024f: SWAP2
00000250: SWAP1
00000251: SWAP2
00000252: AND
00000253: EQ
00000254: PUSH2 0x0a82
00000257: JUMPI
00000258: PUSH2 0x0002
0000025b: JUMP
0000025c: JUMPDEST
0000025d: PUSH2 0x0545
00000260: PUSH1 0x04
00000262: CALLDATALOAD
00000263: PUSH1 0x00
00000265: SLOAD
00000266: PUSH1 0x01
00000268: PUSH1 0xa0
0000026a: PUSH1 0x02
0000026c: EXP
0000026d: SUB
0000026e: SWAP1
0000026f: DUP2
00000270: AND
00000271: ORIGIN
00000272: SWAP2
00000273: SWAP1
00000274: SWAP2
00000275: AND
00000276: EQ
00000277: PUSH2 0x0d3e
0000027a: JUMPI
0000027b: PUSH2 0x0002
0000027e: JUMP
0000027f: JUMPDEST
00000280: PUSH2 0x0545
00000283: PUSH1 0x04
00000285: CALLDATALOAD
00000286: PUSH1 0x00
00000288: SLOAD
00000289: PUSH1 0x01
0000028b: PUSH1 0xa0
0000028d: PUSH1 0x02
0000028f: EXP
00000290: SUB
00000291: SWAP1
00000292: DUP2
00000293: AND
00000294: ORIGIN
00000295: SWAP2
00000296: SWAP1
00000297: SWAP2
00000298: AND
00000299: EQ
0000029a: PUSH2 0x0afd
0000029d: JUMPI
0000029e: PUSH2 0x0002
000002a1: JUMP
000002a2: JUMPDEST
000002a3: PUSH2 0x054a
000002a6: PUSH1 0x04
000002a8: CALLDATALOAD
000002a9: JUMPDEST
000002aa: NUMBER
000002ab: DUP2
000002ac: SWAP1
000002ad: SUB
000002ae: BLOCKHASH
000002af: JUMPDEST
000002b0: SWAP2
000002b1: SWAP1
000002b2: POP
000002b3: JUMP
000002b4: JUMPDEST
000002b5: PUSH2 0x054a
000002b8: PUSH1 0x0b
000002ba: SLOAD
000002bb: DUP2
000002bc: JUMP
000002bd: JUMPDEST
000002be: PUSH2 0x0545
000002c1: PUSH1 0x04
000002c3: CALLDATALOAD
000002c4: PUSH1 0x00
000002c6: SLOAD
000002c7: PUSH1 0x01
000002c9: PUSH1 0xa0
000002cb: PUSH1 0x02
000002cd: EXP
000002ce: SUB
000002cf: SWAP1
000002d0: DUP2
000002d1: AND
000002d2: ORIGIN
000002d3: SWAP2
000002d4: SWAP1
000002d5: SWAP2
000002d6: AND
000002d7: EQ
000002d8: PUSH2 0x0ecd
000002db: JUMPI
000002dc: PUSH2 0x0002
000002df: JUMP
000002e0: JUMPDEST
000002e1: PUSH2 0x054a
000002e4: PUSH1 0x0c
000002e6: SLOAD
000002e7: DUP2
000002e8: JUMP
000002e9: JUMPDEST
000002ea: PUSH2 0x054a
000002ed: PUSH1 0x11
000002ef: SLOAD
000002f0: DUP2
000002f1: JUMP
000002f2: JUMPDEST
000002f3: PUSH2 0x054a
000002f6: JUMPDEST
000002f7: PUSH1 0x0d
000002f9: SLOAD
000002fa: PUSH1 0x0c
000002fc: SLOAD
000002fd: TIMESTAMP
000002fe: SWAP2
000002ff: ADD
00000300: SUB
00000301: JUMPDEST
00000302: SWAP1
00000303: JUMP
00000304: JUMPDEST
00000305: PUSH2 0x055c
00000308: PUSH1 0x03
0000030a: SLOAD
0000030b: PUSH1 0x01
0000030d: PUSH1 0xa0
0000030f: PUSH1 0x02
00000311: EXP
00000312: SUB
00000313: AND
00000314: DUP2
00000315: JUMP
00000316: JUMPDEST
00000317: PUSH2 0x054a
0000031a: PUSH1 0x07
0000031c: SLOAD
0000031d: DUP2
0000031e: JUMP
0000031f: JUMPDEST
00000320: PUSH2 0x0545
00000323: PUSH1 0x04
00000325: CALLDATALOAD
00000326: PUSH1 0x00
00000328: SLOAD
00000329: PUSH1 0x01
0000032b: PUSH1 0xa0
0000032d: PUSH1 0x02
0000032f: EXP
00000330: SUB
00000331: SWAP1
00000332: DUP2
00000333: AND
00000334: ORIGIN
00000335: SWAP2
00000336: SWAP1
00000337: SWAP2
00000338: AND
00000339: EQ
0000033a: PUSH2 0x0cb7
0000033d: JUMPI
0000033e: PUSH2 0x0002
00000341: JUMP
00000342: JUMPDEST
00000343: PUSH2 0x054a
00000346: PUSH1 0x01
00000348: PUSH1 0xa0
0000034a: PUSH1 0x02
0000034c: EXP
0000034d: SUB
0000034e: ORIGIN
0000034f: AND
00000350: PUSH1 0x00
00000352: SWAP1
00000353: DUP2
00000354: MSTORE
00000355: PUSH1 0x0f
00000357: PUSH1 0x20
00000359: MSTORE
0000035a: PUSH1 0x40
0000035c: SWAP1
0000035d: KECCAK256
0000035e: SLOAD
0000035f: PUSH2 0x0301
00000362: JUMP
00000363: JUMPDEST
00000364: PUSH2 0x055c
00000367: PUSH1 0x00
00000369: SLOAD
0000036a: PUSH1 0x01
0000036c: PUSH1 0xa0
0000036e: PUSH1 0x02
00000370: EXP
00000371: SUB
00000372: AND
00000373: DUP2
00000374: JUMP
00000375: JUMPDEST
00000376: PUSH2 0x054a
00000379: PUSH1 0x06
0000037b: SLOAD
0000037c: DUP2
0000037d: JUMP
0000037e: JUMPDEST
0000037f: PUSH2 0x054a
00000382: PUSH1 0x0e
00000384: SLOAD
00000385: PUSH2 0x0301
00000388: JUMP
00000389: JUMPDEST
0000038a: PUSH2 0x0545
0000038d: PUSH1 0x04
0000038f: CALLDATALOAD
00000390: PUSH1 0x24
00000392: CALLDATALOAD
00000393: PUSH1 0x00
00000395: SLOAD
00000396: PUSH1 0x01
00000398: PUSH1 0xa0
0000039a: PUSH1 0x02
0000039c: EXP
0000039d: SUB
0000039e: SWAP1
0000039f: DUP2
000003a0: AND
000003a1: ORIGIN
000003a2: SWAP2
000003a3: SWAP1
000003a4: SWAP2
000003a5: AND
000003a6: EQ
000003a7: PUSH2 0x095a
000003aa: JUMPI
000003ab: PUSH2 0x0002
000003ae: JUMP
000003af: JUMPDEST
000003b0: PUSH2 0x0545
000003b3: PUSH1 0x04
000003b5: CALLDATALOAD
000003b6: PUSH1 0x00
000003b8: SLOAD
000003b9: PUSH1 0x01
000003bb: PUSH1 0xa0
000003bd: PUSH1 0x02
000003bf: EXP
000003c0: SUB
000003c1: SWAP1
000003c2: DUP2
000003c3: AND
000003c4: ORIGIN
000003c5: SWAP2
000003c6: SWAP1
000003c7: SWAP2
000003c8: AND
000003c9: EQ
000003ca: PUSH2 0x05fc
000003cd: JUMPI
000003ce: PUSH2 0x0002
000003d1: JUMP
000003d2: JUMPDEST
000003d3: PUSH2 0x055c
000003d6: PUSH1 0x04
000003d8: CALLDATALOAD
000003d9: PUSH1 0x00
000003db: DUP1
000003dc: SLOAD
000003dd: PUSH1 0x01
000003df: PUSH1 0xa0
000003e1: PUSH1 0x02
000003e3: EXP
000003e4: SUB
000003e5: SWAP1
000003e6: DUP2
000003e7: AND
000003e8: ORIGIN
000003e9: SWAP2
000003ea: SWAP1
000003eb: SWAP2
000003ec: AND
000003ed: EQ
000003ee: PUSH2 0x0dc5
000003f1: JUMPI
000003f2: PUSH2 0x0002
000003f5: JUMP
000003f6: JUMPDEST
000003f7: PUSH2 0x054a
000003fa: PUSH1 0x05
000003fc: SLOAD
000003fd: DUP2
000003fe: JUMP
000003ff: JUMPDEST
00000400: PUSH2 0x0545
00000403: PUSH1 0x00
00000405: SLOAD
00000406: PUSH1 0x01
00000408: PUSH1 0xa0
0000040a: PUSH1 0x02
0000040c: EXP
0000040d: SUB
0000040e: SWAP1
0000040f: DUP2
00000410: AND
00000411: ORIGIN
00000412: SWAP2
00000413: SWAP1
00000414: SWAP2
00000415: AND
00000416: EQ
00000417: PUSH2 0x0a03
0000041a: JUMPI
0000041b: PUSH2 0x0002
0000041e: JUMP
0000041f: JUMPDEST
00000420: PUSH2 0x0545
00000423: PUSH1 0x04
00000425: CALLDATALOAD
00000426: PUSH1 0x00
00000428: SLOAD
00000429: PUSH1 0x01
0000042b: PUSH1 0xa0
0000042d: PUSH1 0x02
0000042f: EXP
00000430: SUB
00000431: SWAP1
00000432: DUP2
00000433: AND
00000434: ORIGIN
00000435: SWAP2
00000436: SWAP1
00000437: SWAP2
00000438: AND
00000439: EQ
0000043a: PUSH2 0x0579
0000043d: JUMPI
0000043e: PUSH2 0x0002
00000441: JUMP
00000442: JUMPDEST
00000443: PUSH2 0x055c
00000446: PUSH1 0x04
00000448: SLOAD
00000449: PUSH1 0x01
0000044b: PUSH1 0xa0
0000044d: PUSH1 0x02
0000044f: EXP
00000450: SUB
00000451: AND
00000452: DUP2
00000453: JUMP
00000454: JUMPDEST
00000455: PUSH2 0x0545
00000458: PUSH1 0x04
0000045a: CALLDATALOAD
0000045b: PUSH1 0x00
0000045d: SLOAD
0000045e: PUSH1 0x01
00000460: PUSH1 0xa0
00000462: PUSH1 0x02
00000464: EXP
00000465: SUB
00000466: SWAP1
00000467: DUP2
00000468: AND
00000469: ORIGIN
0000046a: SWAP2
0000046b: SWAP1
0000046c: SWAP2
0000046d: AND
0000046e: EQ
0000046f: PUSH2 0x0fb3
00000472: JUMPI
00000473: PUSH2 0x0002
00000476: JUMP
00000477: JUMPDEST
00000478: PUSH2 0x054a
0000047b: PUSH1 0x0d
0000047d: SLOAD
0000047e: DUP2
0000047f: JUMP
00000480: JUMPDEST
00000481: PUSH2 0x054a
00000484: JUMPDEST
00000485: PUSH1 0x00
00000487: PUSH1 0x00
00000489: PUSH1 0x00
0000048b: PUSH1 0x00
0000048d: PUSH1 0x05
0000048f: PUSH1 0x00
00000491: POP
00000492: SLOAD
00000493: CALLVALUE
00000494: LT
00000495: ISZERO
00000496: PUSH2 0x06be
00000499: JUMPI
0000049a: PUSH2 0x0002
0000049d: JUMP
0000049e: JUMPDEST
0000049f: PUSH2 0x054a
000004a2: PUSH1 0x0a
000004a4: SLOAD
000004a5: DUP2
000004a6: JUMP
000004a7: JUMPDEST
000004a8: PUSH2 0x0545
000004ab: PUSH1 0x00
000004ad: SLOAD
000004ae: PUSH1 0x01
000004b0: PUSH1 0xa0
000004b2: PUSH1 0x02
000004b4: EXP
000004b5: SUB
000004b6: SWAP1
000004b7: DUP2
000004b8: AND
000004b9: ORIGIN
000004ba: SWAP2
000004bb: SWAP1
000004bc: SWAP2
000004bd: AND
000004be: EQ
000004bf: PUSH2 0x0c1b
000004c2: JUMPI
000004c3: PUSH2 0x0002
000004c6: JUMP
000004c7: JUMPDEST
000004c8: PUSH2 0x0545
000004cb: JUMPDEST
000004cc: PUSH1 0x00
000004ce: SLOAD
000004cf: PUSH1 0x01
000004d1: PUSH1 0xa0
000004d3: PUSH1 0x02
000004d5: EXP
000004d6: SUB
000004d7: SWAP1
000004d8: DUP2
000004d9: AND
000004da: ORIGIN
000004db: SWAP1
000004dc: SWAP2
000004dd: AND
000004de: EQ
000004df: PUSH2 0x0f93
000004e2: JUMPI
000004e3: PUSH2 0x0002
000004e6: JUMP
000004e7: JUMPDEST
000004e8: PUSH2 0x054a
000004eb: PUSH1 0x04
000004ed: CALLDATALOAD
000004ee: PUSH1 0x24
000004f0: CALLDATALOAD
000004f1: PUSH1 0x44
000004f3: CALLDATALOAD
000004f4: JUMPDEST
000004f5: PUSH1 0x00
000004f7: PUSH1 0x00
000004f9: PUSH2 0x0100
000004fc: DUP6
000004fd: LT
000004fe: ISZERO
000004ff: PUSH2 0x069e
00000502: JUMPI
00000503: DUP5
00000504: PUSH2 0x06a7
00000507: JUMP
00000508: JUMPDEST
00000509: PUSH2 0x055c
0000050c: PUSH1 0x04
0000050e: CALLDATALOAD
0000050f: PUSH1 0x0e
00000511: DUP1
00000512: SLOAD
00000513: DUP3
00000514: SWAP1
00000515: DUP2
00000516: LT
00000517: ISZERO
00000518: PUSH2 0x0002
0000051b: JUMPI
0000051c: POP
0000051d: PUSH1 0x00
0000051f: MSTORE
00000520: PUSH1 0x00
00000522: DUP1
00000523: MLOAD
00000524: PUSH1 0x20
00000526: PUSH2 0x12af
00000529: DUP4
0000052a: CODECOPY
0000052b: DUP2
0000052c: MLOAD
0000052d: SWAP2
0000052e: MSTORE
0000052f: ADD
00000530: SLOAD
00000531: PUSH1 0x01
00000533: PUSH1 0xa0
00000535: PUSH1 0x02
00000537: EXP
00000538: SUB
00000539: AND
0000053a: DUP2
0000053b: JUMP
0000053c: JUMPDEST
0000053d: PUSH2 0x054a
00000540: PUSH1 0x09
00000542: SLOAD
00000543: DUP2
00000544: JUMP
00000545: JUMPDEST
00000546: STOP
00000547: JUMPDEST
00000548: POP
00000549: JUMP
0000054a: JUMPDEST
0000054b: PUSH1 0x40
0000054d: DUP1
0000054e: MLOAD
0000054f: SWAP2
00000550: DUP3
00000551: MSTORE
00000552: MLOAD
00000553: SWAP1
00000554: DUP2
00000555: SWAP1
00000556: SUB
00000557: PUSH1 0x20
00000559: ADD
0000055a: SWAP1
0000055b: RETURN
0000055c: JUMPDEST
0000055d: PUSH1 0x40
0000055f: DUP1
00000560: MLOAD
00000561: PUSH1 0x01
00000563: PUSH1 0xa0
00000565: PUSH1 0x02
00000567: EXP
00000568: SUB
00000569: SWAP3
0000056a: SWAP1
0000056b: SWAP3
0000056c: AND
0000056d: DUP3
0000056e: MSTORE
0000056f: MLOAD
00000570: SWAP1
00000571: DUP2
00000572: SWAP1
00000573: SUB
00000574: PUSH1 0x20
00000576: ADD
00000577: SWAP1
00000578: RETURN
00000579: JUMPDEST
0000057a: CALLER
0000057b: PUSH1 0x00
0000057d: JUMPDEST
0000057e: PUSH1 0x01
00000580: SLOAD
00000581: DUP2
00000582: LT
00000583: ISZERO
00000584: PUSH2 0x0691
00000587: JUMPI
00000588: DUP2
00000589: PUSH1 0x01
0000058b: PUSH1 0xa0
0000058d: PUSH1 0x02
0000058f: EXP
00000590: SUB
00000591: AND
00000592: PUSH1 0x01
00000594: PUSH1 0x00
00000596: POP
00000597: DUP3
00000598: DUP2
00000599: SLOAD
0000059a: DUP2
0000059b: LT
0000059c: ISZERO
0000059d: PUSH2 0x0002
000005a0: JUMPI
000005a1: PUSH1 0x00
000005a3: SWAP2
000005a4: SWAP1
000005a5: SWAP2
000005a6: MSTORE
000005a7: PUSH1 0x00
000005a9: DUP1
000005aa: MLOAD
000005ab: PUSH1 0x20
000005ad: PUSH2 0x12cf
000005b0: DUP4
000005b1: CODECOPY
000005b2: DUP2
000005b3: MLOAD
000005b4: SWAP2
000005b5: MSTORE
000005b6: ADD
000005b7: SLOAD
000005b8: PUSH1 0x01
000005ba: PUSH1 0xa0
000005bc: PUSH1 0x02
000005be: EXP
000005bf: SUB
000005c0: AND
000005c1: EQ
000005c2: DUP1
000005c3: PUSH2 0x05dd
000005c6: JUMPI
000005c7: POP
000005c8: DUP2
000005c9: PUSH1 0x01
000005cb: PUSH1 0xa0
000005cd: PUSH1 0x02
000005cf: EXP
000005d0: SUB
000005d1: AND
000005d2: ADDRESS
000005d3: PUSH1 0x01
000005d5: PUSH1 0xa0
000005d7: PUSH1 0x02
000005d9: EXP
000005da: SUB
000005db: AND
000005dc: EQ
000005dd: JUMPDEST
000005de: ISZERO
000005df: PUSH2 0x0696
000005e2: JUMPI
000005e3: PUSH1 0x04
000005e5: DUP1
000005e6: SLOAD
000005e7: PUSH1 0x01
000005e9: PUSH1 0xa0
000005eb: PUSH1 0x02
000005ed: EXP
000005ee: SUB
000005ef: NOT
000005f0: AND
000005f1: DUP5
000005f2: OR
000005f3: SWAP1
000005f4: SSTORE
000005f5: PUSH2 0x0691
000005f8: PUSH2 0x04cb
000005fb: JUMP
000005fc: JUMPDEST
000005fd: CALLER
000005fe: PUSH1 0x00
00000600: JUMPDEST
00000601: PUSH1 0x01
00000603: SLOAD
00000604: DUP2
00000605: LT
00000606: ISZERO
00000607: PUSH2 0x0691
0000060a: JUMPI
0000060b: DUP2
0000060c: PUSH1 0x01
0000060e: PUSH1 0xa0
00000610: PUSH1 0x02
00000612: EXP
00000613: SUB
00000614: AND
00000615: PUSH1 0x01
00000617: PUSH1 0x00
00000619: POP
0000061a: DUP3
0000061b: DUP2
0000061c: SLOAD
0000061d: DUP2
0000061e: LT
0000061f: ISZERO
00000620: PUSH2 0x0002
00000623: JUMPI
00000624: PUSH1 0x00
00000626: SWAP2
00000627: SWAP1
00000628: SWAP2
00000629: MSTORE
0000062a: PUSH1 0x00
0000062c: DUP1
0000062d: MLOAD
0000062e: PUSH1 0x20
00000630: PUSH2 0x12cf
00000633: DUP4
00000634: CODECOPY
00000635: DUP2
00000636: MLOAD
00000637: SWAP2
00000638: MSTORE
00000639: ADD
0000063a: SLOAD
0000063b: PUSH1 0x01
0000063d: PUSH1 0xa0
0000063f: PUSH1 0x02
00000641: EXP
00000642: SUB
00000643: AND
00000644: EQ
00000645: DUP1
00000646: PUSH2 0x0660
00000649: JUMPI
0000064a: POP
0000064b: DUP2
0000064c: PUSH1 0x01
0000064e: PUSH1 0xa0
00000650: PUSH1 0x02
00000652: EXP
00000653: SUB
00000654: AND
00000655: ADDRESS
00000656: PUSH1 0x01
00000658: PUSH1 0xa0
0000065a: PUSH1 0x02
0000065c: EXP
0000065d: SUB
0000065e: AND
0000065f: EQ
00000660: JUMPDEST
00000661: ISZERO
00000662: PUSH2 0x0caf
00000665: JUMPI
00000666: PUSH1 0x09
00000668: SLOAD
00000669: PUSH1 0x40
0000066b: MLOAD
0000066c: PUSH1 0x01
0000066e: PUSH1 0xa0
00000670: PUSH1 0x02
00000672: EXP
00000673: SUB
00000674: DUP6
00000675: AND
00000676: SWAP2
00000677: PUSH1 0x00
00000679: SWAP2
0000067a: DUP3
0000067b: DUP2
0000067c: DUP2
0000067d: DUP2
0000067e: DUP6
0000067f: DUP9
00000680: DUP4
00000681: CALL
00000682: SWAP4
00000683: POP
00000684: POP
00000685: POP
00000686: POP
00000687: ISZERO
00000688: PUSH2 0x09fe
0000068b: JUMPI
0000068c: PUSH1 0x00
0000068e: PUSH1 0x09
00000690: SSTORE
00000691: JUMPDEST
00000692: POP
00000693: POP
00000694: POP
00000695: JUMP
00000696: JUMPDEST
00000697: PUSH1 0x01
00000699: ADD
0000069a: PUSH2 0x057d
0000069d: JUMP
0000069e: JUMPDEST
0000069f: PUSH2 0x0100
000006a2: DUP6
000006a3: MOD
000006a4: SWAP5
000006a5: POP
000006a6: DUP5
000006a7: JUMPDEST
000006a8: POP
000006a9: DUP4
000006aa: DUP4
000006ab: PUSH2 0x06b3
000006ae: DUP8
000006af: PUSH2 0x02a9
000006b2: JUMP
000006b3: JUMPDEST
000006b4: MOD
000006b5: ADD
000006b6: SWAP6
000006b7: SWAP5
000006b8: POP
000006b9: POP
000006ba: POP
000006bb: POP
000006bc: POP
000006bd: JUMP
000006be: JUMPDEST
000006bf: PUSH1 0x04
000006c1: SLOAD
000006c2: PUSH1 0xa0
000006c4: PUSH1 0x02
000006c6: EXP
000006c7: SWAP1
000006c8: DIV
000006c9: PUSH1 0xff
000006cb: AND
000006cc: ISZERO
000006cd: PUSH2 0x0723
000006d0: JUMPI
000006d1: ORIGIN
000006d2: PUSH1 0x01
000006d4: PUSH1 0xa0
000006d6: PUSH1 0x02
000006d8: EXP
000006d9: SUB
000006da: DUP2
000006db: AND
000006dc: PUSH1 0x00
000006de: SWAP1
000006df: DUP2
000006e0: MSTORE
000006e1: PUSH1 0x0f
000006e3: PUSH1 0x20
000006e5: MSTORE
000006e6: PUSH1 0x40
000006e8: DUP2
000006e9: KECCAK256
000006ea: SLOAD
000006eb: SWAP2
000006ec: SWAP5
000006ed: POP
000006ee: EQ
000006ef: ISZERO
000006f0: PUSH2 0x075b
000006f3: JUMPI
000006f4: PUSH1 0x0e
000006f6: DUP1
000006f7: SLOAD
000006f8: PUSH1 0x01
000006fa: DUP2
000006fb: ADD
000006fc: DUP1
000006fd: DUP4
000006fe: SSTORE
000006ff: DUP3
00000700: DUP2
00000701: DUP4
00000702: DUP1
00000703: ISZERO
00000704: DUP3
00000705: SWAP1
00000706: GT
00000707: PUSH2 0x073b
0000070a: JUMPI
0000070b: DUP2
0000070c: DUP4
0000070d: PUSH1 0x00
0000070f: MSTORE
00000710: PUSH1 0x20
00000712: PUSH1 0x00
00000714: KECCAK256
00000715: SWAP2
00000716: DUP3
00000717: ADD
00000718: SWAP2
00000719: ADD
0000071a: PUSH2 0x073b
0000071d: SWAP2
0000071e: SWAP1
0000071f: PUSH2 0x080f
00000722: JUMP
00000723: JUMPDEST
00000724: PUSH1 0x04
00000726: SLOAD
00000727: PUSH1 0x01
00000729: PUSH1 0xa0
0000072b: PUSH1 0x02
0000072d: EXP
0000072e: SUB
0000072f: AND
00000730: PUSH1 0x00
00000732: EQ
00000733: PUSH2 0x0866
00000736: JUMPI
00000737: PUSH2 0x0860
0000073a: JUMP
0000073b: JUMPDEST
0000073c: POP
0000073d: POP
0000073e: POP
0000073f: PUSH1 0x00
00000741: SWAP3
00000742: DUP4
00000743: MSTORE
00000744: POP
00000745: PUSH1 0x20
00000747: SWAP1
00000748: SWAP2
00000749: KECCAK256
0000074a: ADD
0000074b: DUP1
0000074c: SLOAD
0000074d: PUSH1 0x01
0000074f: PUSH1 0xa0
00000751: PUSH1 0x02
00000753: EXP
00000754: SUB
00000755: NOT
00000756: AND
00000757: DUP5
00000758: OR
00000759: SWAP1
0000075a: SSTORE
0000075b: JUMPDEST
0000075c: POP
0000075d: POP
0000075e: PUSH1 0x0b
00000760: SLOAD
00000761: PUSH1 0x01
00000763: PUSH1 0xa0
00000765: PUSH1 0x02
00000767: EXP
00000768: SUB
00000769: DUP3
0000076a: AND
0000076b: PUSH1 0x00
0000076d: DUP2
0000076e: DUP2
0000076f: MSTORE
00000770: PUSH1 0x0f
00000772: PUSH1 0x20
00000774: SWAP1
00000775: DUP2
00000776: MSTORE
00000777: PUSH1 0x40
00000779: SWAP2
0000077a: DUP3
0000077b: SWAP1
0000077c: KECCAK256
0000077d: DUP1
0000077e: SLOAD
0000077f: CALLVALUE
00000780: SWAP1
00000781: DUP2
00000782: ADD
00000783: SWAP2
00000784: DUP3
00000785: SWAP1
00000786: SSTORE
00000787: DUP4
00000788: MLOAD
00000789: SWAP5
0000078a: DUP6
0000078b: MSTORE
0000078c: SWAP2
0000078d: DUP5
0000078e: ADD
0000078f: MSTORE
00000790: DUP2
00000791: MLOAD
00000792: SWAP1
00000793: SWAP4
00000794: PUSH1 0x64
00000796: SWAP1
00000797: DUP6
00000798: MUL
00000799: DIV
0000079a: SWAP3
0000079b: PUSH32 0xf8508dace9d8a4a5aeb9baa2464f9e630518ff72a7d4cf6995310abe437eb9f7
000007bc: SWAP3
000007bd: SWAP1
000007be: DUP3
000007bf: SWAP1
000007c0: SUB
000007c1: ADD
000007c2: SWAP1
000007c3: LOG1
000007c4: PUSH1 0x0a
000007c6: DUP1
000007c7: SLOAD
000007c8: DUP4
000007c9: ADD
000007ca: SWAP1
000007cb: SSTORE
000007cc: PUSH1 0x11
000007ce: DUP1
000007cf: SLOAD
000007d0: DUP3
000007d1: DUP5
000007d2: SUB
000007d3: ADD
000007d4: SWAP1
000007d5: SSTORE
000007d6: PUSH1 0x09
000007d8: DUP1
000007d9: SLOAD
000007da: DUP3
000007db: ADD
000007dc: SWAP1
000007dd: SSTORE
000007de: PUSH1 0x00
000007e0: PUSH2 0x0827
000007e3: PUSH2 0x02f6
000007e6: JUMP
000007e7: JUMPDEST
000007e8: PUSH1 0x00
000007ea: PUSH1 0x0a
000007ec: DUP2
000007ed: SWAP1
000007ee: SSTORE
000007ef: PUSH1 0x0e
000007f1: DUP1
000007f2: SLOAD
000007f3: DUP3
000007f4: DUP3
000007f5: SSTORE
000007f6: SWAP2
000007f7: MSTORE
000007f8: PUSH2 0x11fb
000007fb: SWAP1
000007fc: PUSH1 0x00
000007fe: DUP1
000007ff: MLOAD
00000800: PUSH1 0x20
00000802: PUSH2 0x12af
00000805: DUP4
00000806: CODECOPY
00000807: DUP2
00000808: MLOAD
00000809: SWAP2
0000080a: MSTORE
0000080b: SWAP1
0000080c: DUP2
0000080d: ADD
0000080e: SWAP1
0000080f: JUMPDEST
00000810: DUP1
00000811: DUP3
00000812: GT
00000813: ISZERO
00000814: PUSH2 0x0823
00000817: JUMPI
00000818: PUSH1 0x00
0000081a: DUP2
0000081b: SSTORE
0000081c: PUSH1 0x01
0000081e: ADD
0000081f: PUSH2 0x080f
00000822: JUMP
00000823: JUMPDEST
00000824: POP
00000825: SWAP1
00000826: JUMP
00000827: JUMPDEST
00000828: SGT
00000829: PUSH2 0x085b
0000082c: JUMPI
0000082d: PUSH2 0x0859
00000830: JUMPDEST
00000831: PUSH1 0x06
00000833: SLOAD
00000834: PUSH1 0x0e
00000836: SLOAD
00000837: PUSH1 0x00
00000839: SWAP2
0000083a: DUP3
0000083b: SWAP2
0000083c: DUP3
0000083d: SWAP2
0000083e: DUP3
0000083f: SWAP2
00000840: DUP3
00000841: SWAP2
00000842: DUP3
00000843: SWAP2
00000844: LT
00000845: PUSH2 0x0fee
00000848: JUMPI
00000849: PUSH1 0x0e
0000084b: SLOAD
0000084c: PUSH2 0x1000
0000084f: SWAP1
00000850: PUSH1 0x03
00000852: SWAP1
00000853: DUP4
00000854: SWAP1
00000855: PUSH2 0x04f4
00000858: JUMP
00000859: JUMPDEST
0000085a: POP
0000085b: JUMPDEST
0000085c: PUSH1 0x01
0000085e: SWAP4
0000085f: POP
00000860: JUMPDEST
00000861: POP
00000862: POP
00000863: POP
00000864: SWAP1
00000865: JUMP
00000866: JUMPDEST
00000867: PUSH1 0x00
00000869: SWAP4
0000086a: POP
0000086b: PUSH2 0x0860
0000086e: JUMP
0000086f: JUMPDEST
00000870: DUP2
00000871: PUSH1 0x00
00000873: JUMPDEST
00000874: PUSH1 0x01
00000876: SLOAD
00000877: DUP2
00000878: LT
00000879: ISZERO
0000087a: PUSH2 0x0953
0000087d: JUMPI
0000087e: DUP2
0000087f: PUSH1 0x01
00000881: PUSH1 0xa0
00000883: PUSH1 0x02
00000885: EXP
00000886: SUB
00000887: AND
00000888: PUSH1 0x01
0000088a: PUSH1 0x00
0000088c: POP
0000088d: DUP3
0000088e: DUP2
0000088f: SLOAD
00000890: DUP2
00000891: LT
00000892: ISZERO
00000893: PUSH2 0x0002
00000896: JUMPI
00000897: PUSH1 0x00
00000899: SWAP2
0000089a: SWAP1
0000089b: SWAP2
0000089c: MSTORE
0000089d: PUSH1 0x00
0000089f: DUP1
000008a0: MLOAD
000008a1: PUSH1 0x20
000008a3: PUSH2 0x12cf
000008a6: DUP4
000008a7: CODECOPY
000008a8: DUP2
000008a9: MLOAD
000008aa: SWAP2
000008ab: MSTORE
000008ac: ADD
000008ad: SLOAD
000008ae: PUSH1 0x01
000008b0: PUSH1 0xa0
000008b2: PUSH1 0x02
000008b4: EXP
000008b5: SUB
000008b6: AND
000008b7: EQ
000008b8: DUP1
000008b9: PUSH2 0x08d3
000008bc: JUMPI
000008bd: POP
000008be: DUP2
000008bf: PUSH1 0x01
000008c1: PUSH1 0xa0
000008c3: PUSH1 0x02
000008c5: EXP
000008c6: SUB
000008c7: AND
000008c8: ADDRESS
000008c9: PUSH1 0x01
000008cb: PUSH1 0xa0
000008cd: PUSH1 0x02
000008cf: EXP
000008d0: SUB
000008d1: AND
000008d2: EQ
000008d3: JUMPDEST
000008d4: ISZERO
000008d5: PUSH2 0x0f7f
000008d8: JUMPI
000008d9: PUSH1 0x00
000008db: SWAP3
000008dc: POP
000008dd: JUMPDEST
000008de: PUSH1 0x01
000008e0: SLOAD
000008e1: DUP4
000008e2: LT
000008e3: ISZERO
000008e4: PUSH2 0x0953
000008e7: JUMPI
000008e8: DUP4
000008e9: PUSH1 0x01
000008eb: PUSH1 0xa0
000008ed: PUSH1 0x02
000008ef: EXP
000008f0: SUB
000008f1: AND
000008f2: PUSH1 0x01
000008f4: PUSH1 0x00
000008f6: POP
000008f7: DUP5
000008f8: DUP2
000008f9: SLOAD
000008fa: DUP2
000008fb: LT
000008fc: ISZERO
000008fd: PUSH2 0x0002
00000900: JUMPI
00000901: PUSH1 0x00
00000903: SWAP2
00000904: SWAP1
00000905: SWAP2
00000906: MSTORE
00000907: PUSH1 0x00
00000909: DUP1
0000090a: MLOAD
0000090b: PUSH1 0x20
0000090d: PUSH2 0x12cf
00000910: DUP4
00000911: CODECOPY
00000912: DUP2
00000913: MLOAD
00000914: SWAP2
00000915: MSTORE
00000916: ADD
00000917: SLOAD
00000918: PUSH1 0x01
0000091a: PUSH1 0xa0
0000091c: PUSH1 0x02
0000091e: EXP
0000091f: SUB
00000920: AND
00000921: EQ
00000922: ISZERO
00000923: PUSH2 0x0f87
00000926: JUMPI
00000927: PUSH1 0x01
00000929: DUP1
0000092a: SLOAD
0000092b: DUP5
0000092c: SWAP1
0000092d: DUP2
0000092e: LT
0000092f: ISZERO
00000930: PUSH2 0x0002
00000933: JUMPI
00000934: PUSH1 0x00
00000936: DUP1
00000937: MLOAD
00000938: PUSH1 0x20
0000093a: PUSH2 0x12cf
0000093d: DUP4
0000093e: CODECOPY
0000093f: DUP2
00000940: MLOAD
00000941: SWAP2
00000942: MSTORE
00000943: ADD
00000944: DUP1
00000945: SLOAD
00000946: PUSH1 0x01
00000948: PUSH1 0xa0
0000094a: PUSH1 0x02
0000094c: EXP
0000094d: SUB
0000094e: NOT
0000094f: AND
00000950: SWAP1
00000951: SSTORE
00000952: POP
00000953: JUMPDEST
00000954: POP
00000955: POP
00000956: JUMPDEST
00000957: POP
00000958: POP
00000959: JUMP
0000095a: JUMPDEST
0000095b: CALLER
0000095c: PUSH1 0x00
0000095e: JUMPDEST
0000095f: PUSH1 0x01
00000961: SLOAD
00000962: DUP2
00000963: LT
00000964: ISZERO
00000965: PUSH2 0x0953
00000968: JUMPI
00000969: DUP2
0000096a: PUSH1 0x01
0000096c: PUSH1 0xa0
0000096e: PUSH1 0x02
00000970: EXP
00000971: SUB
00000972: AND
00000973: PUSH1 0x01
00000975: PUSH1 0x00
00000977: POP
00000978: DUP3
00000979: DUP2
0000097a: SLOAD
0000097b: DUP2
0000097c: LT
0000097d: ISZERO
0000097e: PUSH2 0x0002
00000981: JUMPI
00000982: PUSH1 0x00
00000984: SWAP2
00000985: SWAP1
00000986: SWAP2
00000987: MSTORE
00000988: PUSH1 0x00
0000098a: DUP1
0000098b: MLOAD
0000098c: PUSH1 0x20
0000098e: PUSH2 0x12cf
00000991: DUP4
00000992: CODECOPY
00000993: DUP2
00000994: MLOAD
00000995: SWAP2
00000996: MSTORE
00000997: ADD
00000998: SLOAD
00000999: PUSH1 0x01
0000099b: PUSH1 0xa0
0000099d: PUSH1 0x02
0000099f: EXP
000009a0: SUB
000009a1: AND
000009a2: EQ
000009a3: DUP1
000009a4: PUSH2 0x09be
000009a7: JUMPI
000009a8: POP
000009a9: DUP2
000009aa: PUSH1 0x01
000009ac: PUSH1 0xa0
000009ae: PUSH1 0x02
000009b0: EXP
000009b1: SUB
000009b2: AND
000009b3: ADDRESS
000009b4: PUSH1 0x01
000009b6: PUSH1 0xa0
000009b8: PUSH1 0x02
000009ba: EXP
000009bb: SUB
000009bc: AND
000009bd: EQ
000009be: JUMPDEST
000009bf: ISZERO
000009c0: PUSH2 0x09f6
000009c3: JUMPI
000009c4: PUSH1 0x40
000009c6: MLOAD
000009c7: PUSH1 0x01
000009c9: PUSH1 0xa0
000009cb: PUSH1 0x02
000009cd: EXP
000009ce: SUB
000009cf: DUP6
000009d0: AND
000009d1: SWAP1
000009d2: PUSH1 0x00
000009d4: SWAP1
000009d5: DUP6
000009d6: SWAP1
000009d7: DUP3
000009d8: DUP2
000009d9: DUP2
000009da: DUP2
000009db: DUP6
000009dc: DUP9
000009dd: DUP4
000009de: CALL
000009df: SWAP4
000009e0: POP
000009e1: POP
000009e2: POP
000009e3: POP
000009e4: ISZERO
000009e5: PUSH2 0x09fe
000009e8: JUMPI
000009e9: PUSH1 0x02
000009eb: DUP1
000009ec: SLOAD
000009ed: DUP5
000009ee: SWAP1
000009ef: SUB
000009f0: SWAP1
000009f1: SSTORE
000009f2: PUSH2 0x0953
000009f5: JUMP
000009f6: JUMPDEST
000009f7: PUSH1 0x01
000009f9: ADD
000009fa: PUSH2 0x095e
000009fd: JUMP
000009fe: JUMPDEST
000009ff: PUSH2 0x0002
00000a02: JUMP
00000a03: JUMPDEST
00000a04: CALLER
00000a05: PUSH1 0x00
00000a07: JUMPDEST
00000a08: PUSH1 0x01
00000a0a: SLOAD
00000a0b: DUP2
00000a0c: LT
00000a0d: ISZERO
00000a0e: PUSH2 0x0956
00000a11: JUMPI
00000a12: DUP2
00000a13: PUSH1 0x01
00000a15: PUSH1 0xa0
00000a17: PUSH1 0x02
00000a19: EXP
00000a1a: SUB
00000a1b: AND
00000a1c: PUSH1 0x01
00000a1e: PUSH1 0x00
00000a20: POP
00000a21: DUP3
00000a22: DUP2
00000a23: SLOAD
00000a24: DUP2
00000a25: LT
00000a26: ISZERO
00000a27: PUSH2 0x0002
00000a2a: JUMPI
00000a2b: PUSH1 0x00
00000a2d: SWAP2
00000a2e: SWAP1
00000a2f: SWAP2
00000a30: MSTORE
00000a31: PUSH1 0x00
00000a33: DUP1
00000a34: MLOAD
00000a35: PUSH1 0x20
00000a37: PUSH2 0x12cf
00000a3a: DUP4
00000a3b: CODECOPY
00000a3c: DUP2
00000a3d: MLOAD
00000a3e: SWAP2
00000a3f: MSTORE
00000a40: ADD
00000a41: SLOAD
00000a42: PUSH1 0x01
00000a44: PUSH1 0xa0
00000a46: PUSH1 0x02
00000a48: EXP
00000a49: SUB
00000a4a: AND
00000a4b: EQ
00000a4c: DUP1
00000a4d: PUSH2 0x0a67
00000a50: JUMPI
00000a51: POP
00000a52: DUP2
00000a53: PUSH1 0x01
00000a55: PUSH1 0xa0
00000a57: PUSH1 0x02
00000a59: EXP
00000a5a: SUB
00000a5b: AND
00000a5c: ADDRESS
00000a5d: PUSH1 0x01
00000a5f: PUSH1 0xa0
00000a61: PUSH1 0x02
00000a63: EXP
00000a64: SUB
00000a65: AND
00000a66: EQ
00000a67: JUMPDEST
00000a68: ISZERO
00000a69: PUSH2 0x0a74
00000a6c: JUMPI
00000a6d: PUSH2 0x0a7c
00000a70: PUSH2 0x0830
00000a73: JUMP
00000a74: JUMPDEST
00000a75: PUSH1 0x01
00000a77: ADD
00000a78: PUSH2 0x0a07
00000a7b: JUMP
00000a7c: JUMPDEST
00000a7d: POP
00000a7e: PUSH2 0x0956
00000a81: JUMP
00000a82: JUMPDEST
00000a83: CALLER
00000a84: PUSH1 0x00
00000a86: JUMPDEST
00000a87: PUSH1 0x01
00000a89: SLOAD
00000a8a: DUP2
00000a8b: LT
00000a8c: ISZERO
00000a8d: PUSH2 0x0691
00000a90: JUMPI
00000a91: DUP2
00000a92: PUSH1 0x01
00000a94: PUSH1 0xa0
00000a96: PUSH1 0x02
00000a98: EXP
00000a99: SUB
00000a9a: AND
00000a9b: PUSH1 0x01
00000a9d: PUSH1 0x00
00000a9f: POP
00000aa0: DUP3
00000aa1: DUP2
00000aa2: SLOAD
00000aa3: DUP2
00000aa4: LT
00000aa5: ISZERO
00000aa6: PUSH2 0x0002
00000aa9: JUMPI
00000aaa: PUSH1 0x00
00000aac: SWAP2
00000aad: SWAP1
00000aae: SWAP2
00000aaf: MSTORE
00000ab0: PUSH1 0x00
00000ab2: DUP1
00000ab3: MLOAD
00000ab4: PUSH1 0x20
00000ab6: PUSH2 0x12cf
00000ab9: DUP4
00000aba: CODECOPY
00000abb: DUP2
00000abc: MLOAD
00000abd: SWAP2
00000abe: MSTORE
00000abf: ADD
00000ac0: SLOAD
00000ac1: PUSH1 0x01
00000ac3: PUSH1 0xa0
00000ac5: PUSH1 0x02
00000ac7: EXP
00000ac8: SUB
00000ac9: AND
00000aca: EQ
00000acb: DUP1
00000acc: PUSH2 0x0ae6
00000acf: JUMPI
00000ad0: POP
00000ad1: DUP2
00000ad2: PUSH1 0x01
00000ad4: PUSH1 0xa0
00000ad6: PUSH1 0x02
00000ad8: EXP
00000ad9: SUB
00000ada: AND
00000adb: ADDRESS
00000adc: PUSH1 0x01
00000ade: PUSH1 0xa0
00000ae0: PUSH1 0x02
00000ae2: EXP
00000ae3: SUB
00000ae4: AND
00000ae5: EQ
00000ae6: JUMPDEST
00000ae7: ISZERO
00000ae8: PUSH2 0x0af5
00000aeb: JUMPI
00000aec: PUSH1 0x0d
00000aee: DUP4
00000aef: SWAP1
00000af0: SSTORE
00000af1: PUSH2 0x0691
00000af4: JUMP
00000af5: JUMPDEST
00000af6: PUSH1 0x01
00000af8: ADD
00000af9: PUSH2 0x0a86
00000afc: JUMP
00000afd: JUMPDEST
00000afe: CALLER
00000aff: PUSH1 0x00
00000b01: JUMPDEST
00000b02: PUSH1 0x01
00000b04: SLOAD
00000b05: DUP2
00000b06: LT
00000b07: ISZERO
00000b08: PUSH2 0x0691
00000b0b: JUMPI
00000b0c: DUP2
00000b0d: PUSH1 0x01
00000b0f: PUSH1 0xa0
00000b11: PUSH1 0x02
00000b13: EXP
00000b14: SUB
00000b15: AND
00000b16: PUSH1 0x01
00000b18: PUSH1 0x00
00000b1a: POP
00000b1b: DUP3
00000b1c: DUP2
00000b1d: SLOAD
00000b1e: DUP2
00000b1f: LT
00000b20: ISZERO
00000b21: PUSH2 0x0002
00000b24: JUMPI
00000b25: PUSH1 0x00
00000b27: SWAP2
00000b28: SWAP1
00000b29: SWAP2
00000b2a: MSTORE
00000b2b: PUSH1 0x00
00000b2d: DUP1
00000b2e: MLOAD
00000b2f: PUSH1 0x20
00000b31: PUSH2 0x12cf
00000b34: DUP4
00000b35: CODECOPY
00000b36: DUP2
00000b37: MLOAD
00000b38: SWAP2
00000b39: MSTORE
00000b3a: ADD
00000b3b: SLOAD
00000b3c: PUSH1 0x01
00000b3e: PUSH1 0xa0
00000b40: PUSH1 0x02
00000b42: EXP
00000b43: SUB
00000b44: AND
00000b45: EQ
00000b46: DUP1
00000b47: PUSH2 0x0b61
00000b4a: JUMPI
00000b4b: POP
00000b4c: DUP2
00000b4d: PUSH1 0x01
00000b4f: PUSH1 0xa0
00000b51: PUSH1 0x02
00000b53: EXP
00000b54: SUB
00000b55: AND
00000b56: ADDRESS
00000b57: PUSH1 0x01
00000b59: PUSH1 0xa0
00000b5b: PUSH1 0x02
00000b5d: EXP
00000b5e: SUB
00000b5f: AND
00000b60: EQ
00000b61: JUMPDEST
00000b62: ISZERO
00000b63: PUSH2 0x0b70
00000b66: JUMPI
00000b67: PUSH1 0x0b
00000b69: DUP4
00000b6a: SWAP1
00000b6b: SSTORE
00000b6c: PUSH2 0x0691
00000b6f: JUMP
00000b70: JUMPDEST
00000b71: PUSH1 0x01
00000b73: ADD
00000b74: PUSH2 0x0b01
00000b77: JUMP
00000b78: JUMPDEST
00000b79: CALLER
00000b7a: PUSH1 0x00
00000b7c: JUMPDEST
00000b7d: PUSH1 0x01
00000b7f: SLOAD
00000b80: DUP2
00000b81: LT
00000b82: ISZERO
00000b83: PUSH2 0x0691
00000b86: JUMPI
00000b87: DUP2
00000b88: PUSH1 0x01
00000b8a: PUSH1 0xa0
00000b8c: PUSH1 0x02
00000b8e: EXP
00000b8f: SUB
00000b90: AND
00000b91: PUSH1 0x01
00000b93: PUSH1 0x00
00000b95: POP
00000b96: DUP3
00000b97: DUP2
00000b98: SLOAD
00000b99: DUP2
00000b9a: LT
00000b9b: ISZERO
00000b9c: PUSH2 0x0002
00000b9f: JUMPI
00000ba0: PUSH1 0x00
00000ba2: SWAP2
00000ba3: SWAP1
00000ba4: SWAP2
00000ba5: MSTORE
00000ba6: PUSH1 0x00
00000ba8: DUP1
00000ba9: MLOAD
00000baa: PUSH1 0x20
00000bac: PUSH2 0x12cf
00000baf: DUP4
00000bb0: CODECOPY
00000bb1: DUP2
00000bb2: MLOAD
00000bb3: SWAP2
00000bb4: MSTORE
00000bb5: ADD
00000bb6: SLOAD
00000bb7: PUSH1 0x01
00000bb9: PUSH1 0xa0
00000bbb: PUSH1 0x02
00000bbd: EXP
00000bbe: SUB
00000bbf: AND
00000bc0: EQ
00000bc1: DUP1
00000bc2: PUSH2 0x0bdc
00000bc5: JUMPI
00000bc6: POP
00000bc7: DUP2
00000bc8: PUSH1 0x01
00000bca: PUSH1 0xa0
00000bcc: PUSH1 0x02
00000bce: EXP
00000bcf: SUB
00000bd0: AND
00000bd1: ADDRESS
00000bd2: PUSH1 0x01
00000bd4: PUSH1 0xa0
00000bd6: PUSH1 0x02
00000bd8: EXP
00000bd9: SUB
00000bda: AND
00000bdb: EQ
00000bdc: JUMPDEST
00000bdd: ISZERO
00000bde: PUSH2 0x0c13
00000be1: JUMPI
00000be2: PUSH1 0x10
00000be4: DUP1
00000be5: SLOAD
00000be6: PUSH2 0x0100
00000be9: DUP6
00000bea: MUL
00000beb: PUSH21 0xffffffffffffffffffffffffffffffffffffffff00
00000c01: NOT
00000c02: SWAP1
00000c03: SWAP2
00000c04: AND
00000c05: OR
00000c06: PUSH1 0xff
00000c08: NOT
00000c09: AND
00000c0a: PUSH1 0x01
00000c0c: OR
00000c0d: SWAP1
00000c0e: SSTORE
00000c0f: PUSH2 0x0691
00000c12: JUMP
00000c13: JUMPDEST
00000c14: PUSH1 0x01
00000c16: ADD
00000c17: PUSH2 0x0b7c
00000c1a: JUMP
00000c1b: JUMPDEST
00000c1c: CALLER
00000c1d: PUSH1 0x00
00000c1f: JUMPDEST
00000c20: PUSH1 0x01
00000c22: SLOAD
00000c23: DUP2
00000c24: LT
00000c25: ISZERO
00000c26: PUSH2 0x0956
00000c29: JUMPI
00000c2a: DUP2
00000c2b: PUSH1 0x01
00000c2d: PUSH1 0xa0
00000c2f: PUSH1 0x02
00000c31: EXP
00000c32: SUB
00000c33: AND
00000c34: PUSH1 0x01
00000c36: PUSH1 0x00
00000c38: POP
00000c39: DUP3
00000c3a: DUP2
00000c3b: SLOAD
00000c3c: DUP2
00000c3d: LT
00000c3e: ISZERO
00000c3f: PUSH2 0x0002
00000c42: JUMPI
00000c43: PUSH1 0x00
00000c45: SWAP2
00000c46: SWAP1
00000c47: SWAP2
00000c48: MSTORE
00000c49: PUSH1 0x00
00000c4b: DUP1
00000c4c: MLOAD
00000c4d: PUSH1 0x20
00000c4f: PUSH2 0x12cf
00000c52: DUP4
00000c53: CODECOPY
00000c54: DUP2
00000c55: MLOAD
00000c56: SWAP2
00000c57: MSTORE
00000c58: ADD
00000c59: SLOAD
00000c5a: PUSH1 0x01
00000c5c: PUSH1 0xa0
00000c5e: PUSH1 0x02
00000c60: EXP
00000c61: SUB
00000c62: AND
00000c63: EQ
00000c64: DUP1
00000c65: PUSH2 0x0c7f
00000c68: JUMPI
00000c69: POP
00000c6a: DUP2
00000c6b: PUSH1 0x01
00000c6d: PUSH1 0xa0
00000c6f: PUSH1 0x02
00000c71: EXP
00000c72: SUB
00000c73: AND
00000c74: ADDRESS
00000c75: PUSH1 0x01
00000c77: PUSH1 0xa0
00000c79: PUSH1 0x02
00000c7b: EXP
00000c7c: SUB
00000c7d: AND
00000c7e: EQ
00000c7f: JUMPDEST
00000c80: ISZERO
00000c81: PUSH2 0x0ca7
00000c84: JUMPI
00000c85: PUSH1 0x10
00000c87: DUP1
00000c88: SLOAD
00000c89: PUSH21 0xffffffffffffffffffffffffffffffffffffffffff
00000c9f: NOT
00000ca0: AND
00000ca1: SWAP1
00000ca2: SSTORE
00000ca3: PUSH2 0x0956
00000ca6: JUMP
00000ca7: JUMPDEST
00000ca8: PUSH1 0x01
00000caa: ADD
00000cab: PUSH2 0x0c1f
00000cae: JUMP
00000caf: JUMPDEST
00000cb0: PUSH1 0x01
00000cb2: ADD
00000cb3: PUSH2 0x0600
00000cb6: JUMP
00000cb7: JUMPDEST
00000cb8: CALLER
00000cb9: PUSH1 0x00
00000cbb: JUMPDEST
00000cbc: PUSH1 0x01
00000cbe: SLOAD
00000cbf: DUP2
00000cc0: LT
00000cc1: ISZERO
00000cc2: PUSH2 0x0691
00000cc5: JUMPI
00000cc6: DUP2
00000cc7: PUSH1 0x01
00000cc9: PUSH1 0xa0
00000ccb: PUSH1 0x02
00000ccd: EXP
00000cce: SUB
00000ccf: AND
00000cd0: PUSH1 0x01
00000cd2: PUSH1 0x00
00000cd4: POP
00000cd5: DUP3
00000cd6: DUP2
00000cd7: SLOAD
00000cd8: DUP2
00000cd9: LT
00000cda: ISZERO
00000cdb: PUSH2 0x0002
00000cde: JUMPI
00000cdf: PUSH1 0x00
00000ce1: SWAP2
00000ce2: SWAP1
00000ce3: SWAP2
00000ce4: MSTORE
00000ce5: PUSH1 0x00
00000ce7: DUP1
00000ce8: MLOAD
00000ce9: PUSH1 0x20
00000ceb: PUSH2 0x12cf
00000cee: DUP4
00000cef: CODECOPY
00000cf0: DUP2
00000cf1: MLOAD
00000cf2: SWAP2
00000cf3: MSTORE
00000cf4: ADD
00000cf5: SLOAD
00000cf6: PUSH1 0x01
00000cf8: PUSH1 0xa0
00000cfa: PUSH1 0x02
00000cfc: EXP
00000cfd: SUB
00000cfe: AND
00000cff: EQ
00000d00: DUP1
00000d01: PUSH2 0x0d1b
00000d04: JUMPI
00000d05: POP
00000d06: DUP2
00000d07: PUSH1 0x01
00000d09: PUSH1 0xa0
00000d0b: PUSH1 0x02
00000d0d: EXP
00000d0e: SUB
00000d0f: AND
00000d10: ADDRESS
00000d11: PUSH1 0x01
00000d13: PUSH1 0xa0
00000d15: PUSH1 0x02
00000d17: EXP
00000d18: SUB
00000d19: AND
00000d1a: EQ
00000d1b: JUMPDEST
00000d1c: ISZERO
00000d1d: PUSH2 0x0d36
00000d20: JUMPI
00000d21: PUSH1 0x11
00000d23: DUP1
00000d24: SLOAD
00000d25: DUP5
00000d26: SWAP1
00000d27: SUB
00000d28: SWAP1
00000d29: SSTORE
00000d2a: PUSH1 0x09
00000d2c: DUP1
00000d2d: SLOAD
00000d2e: DUP5
00000d2f: ADD
00000d30: SWAP1
00000d31: SSTORE
00000d32: PUSH2 0x0691
00000d35: JUMP
00000d36: JUMPDEST
00000d37: PUSH1 0x01
00000d39: ADD
00000d3a: PUSH2 0x0cbb
00000d3d: JUMP
00000d3e: JUMPDEST
00000d3f: CALLER
00000d40: PUSH1 0x00
00000d42: JUMPDEST
00000d43: PUSH1 0x01
00000d45: SLOAD
00000d46: DUP2
00000d47: LT
00000d48: ISZERO
00000d49: PUSH2 0x0691
00000d4c: JUMPI
00000d4d: DUP2
00000d4e: PUSH1 0x01
00000d50: PUSH1 0xa0
00000d52: PUSH1 0x02
00000d54: EXP
00000d55: SUB
00000d56: AND
00000d57: PUSH1 0x01
00000d59: PUSH1 0x00
00000d5b: POP
00000d5c: DUP3
00000d5d: DUP2
00000d5e: SLOAD
00000d5f: DUP2
00000d60: LT
00000d61: ISZERO
00000d62: PUSH2 0x0002
00000d65: JUMPI
00000d66: PUSH1 0x00
00000d68: SWAP2
00000d69: SWAP1
00000d6a: SWAP2
00000d6b: MSTORE
00000d6c: PUSH1 0x00
00000d6e: DUP1
00000d6f: MLOAD
00000d70: PUSH1 0x20
00000d72: PUSH2 0x12cf
00000d75: DUP4
00000d76: CODECOPY
00000d77: DUP2
00000d78: MLOAD
00000d79: SWAP2
00000d7a: MSTORE
00000d7b: ADD
00000d7c: SLOAD
00000d7d: PUSH1 0x01
00000d7f: PUSH1 0xa0
00000d81: PUSH1 0x02
00000d83: EXP
00000d84: SUB
00000d85: AND
00000d86: EQ
00000d87: DUP1
00000d88: PUSH2 0x0da2
00000d8b: JUMPI
00000d8c: POP
00000d8d: DUP2
00000d8e: PUSH1 0x01
00000d90: PUSH1 0xa0
00000d92: PUSH1 0x02
00000d94: EXP
00000d95: SUB
00000d96: AND
00000d97: ADDRESS
00000d98: PUSH1 0x01
00000d9a: PUSH1 0xa0
00000d9c: PUSH1 0x02
00000d9e: EXP
00000d9f: SUB
00000da0: AND
00000da1: EQ
00000da2: JUMPDEST
00000da3: ISZERO
00000da4: PUSH2 0x0dbd
00000da7: JUMPI
00000da8: PUSH1 0x11
00000daa: DUP1
00000dab: SLOAD
00000dac: DUP5
00000dad: ADD
00000dae: SWAP1
00000daf: SSTORE
00000db0: PUSH1 0x09
00000db2: DUP1
00000db3: SLOAD
00000db4: DUP5
00000db5: SWAP1
00000db6: SUB
00000db7: SWAP1
00000db8: SSTORE
00000db9: PUSH2 0x0691
00000dbc: JUMP
00000dbd: JUMPDEST
00000dbe: PUSH1 0x01
00000dc0: ADD
00000dc1: PUSH2 0x0d42
00000dc4: JUMP
00000dc5: JUMPDEST
00000dc6: CALLER
00000dc7: PUSH1 0x00
00000dc9: JUMPDEST
00000dca: PUSH1 0x01
00000dcc: SLOAD
00000dcd: DUP2
00000dce: LT
00000dcf: ISZERO
00000dd0: PUSH2 0x0e67
00000dd3: JUMPI
00000dd4: DUP2
00000dd5: PUSH1 0x01
00000dd7: PUSH1 0xa0
00000dd9: PUSH1 0x02
00000ddb: EXP
00000ddc: SUB
00000ddd: AND
00000dde: PUSH1 0x01
00000de0: PUSH1 0x00
00000de2: POP
00000de3: DUP3
00000de4: DUP2
00000de5: SLOAD
00000de6: DUP2
00000de7: LT
00000de8: ISZERO
00000de9: PUSH2 0x0002
00000dec: JUMPI
00000ded: PUSH1 0x00
00000def: SWAP2
00000df0: SWAP1
00000df1: SWAP2
00000df2: MSTORE
00000df3: PUSH1 0x00
00000df5: DUP1
00000df6: MLOAD
00000df7: PUSH1 0x20
00000df9: PUSH2 0x12cf
00000dfc: DUP4
00000dfd: CODECOPY
00000dfe: DUP2
00000dff: MLOAD
00000e00: SWAP2
00000e01: MSTORE
00000e02: ADD
00000e03: SLOAD
00000e04: PUSH1 0x01
00000e06: PUSH1 0xa0
00000e08: PUSH1 0x02
00000e0a: EXP
00000e0b: SUB
00000e0c: AND
00000e0d: EQ
00000e0e: DUP1
00000e0f: PUSH2 0x0e29
00000e12: JUMPI
00000e13: POP
00000e14: DUP2
00000e15: PUSH1 0x01
00000e17: PUSH1 0xa0
00000e19: PUSH1 0x02
00000e1b: EXP
00000e1c: SUB
00000e1d: AND
00000e1e: ADDRESS
00000e1f: PUSH1 0x01
00000e21: PUSH1 0xa0
00000e23: PUSH1 0x02
00000e25: EXP
00000e26: SUB
00000e27: AND
00000e28: EQ
00000e29: JUMPDEST
00000e2a: ISZERO
00000e2b: PUSH2 0x0e6e
00000e2e: JUMPI
00000e2f: PUSH1 0x01
00000e31: DUP1
00000e32: SLOAD
00000e33: DUP1
00000e34: DUP3
00000e35: ADD
00000e36: DUP1
00000e37: DUP4
00000e38: SSTORE
00000e39: DUP3
00000e3a: DUP2
00000e3b: DUP4
00000e3c: DUP1
00000e3d: ISZERO
00000e3e: DUP3
00000e3f: SWAP1
00000e40: GT
00000e41: PUSH2 0x0e76
00000e44: JUMPI
00000e45: PUSH1 0x00
00000e47: DUP4
00000e48: SWAP1
00000e49: MSTORE
00000e4a: PUSH2 0x0e76
00000e4d: SWAP1
00000e4e: PUSH1 0x00
00000e50: DUP1
00000e51: MLOAD
00000e52: PUSH1 0x20
00000e54: PUSH2 0x12cf
00000e57: DUP4
00000e58: CODECOPY
00000e59: DUP2
00000e5a: MLOAD
00000e5b: SWAP2
00000e5c: MSTORE
00000e5d: SWAP1
00000e5e: DUP2
00000e5f: ADD
00000e60: SWAP1
00000e61: DUP4
00000e62: ADD
00000e63: PUSH2 0x080f
00000e66: JUMP
00000e67: JUMPDEST
00000e68: POP
00000e69: POP
00000e6a: SWAP2
00000e6b: SWAP1
00000e6c: POP
00000e6d: JUMP
00000e6e: JUMPDEST
00000e6f: PUSH1 0x01
00000e71: ADD
00000e72: PUSH2 0x0dc9
00000e75: JUMP
00000e76: JUMPDEST
00000e77: POP
00000e78: POP
00000e79: POP
00000e7a: PUSH1 0x00
00000e7c: SWAP3
00000e7d: DUP4
00000e7e: MSTORE
00000e7f: POP
00000e80: PUSH1 0x20
00000e82: DUP3
00000e83: KECCAK256
00000e84: ADD
00000e85: DUP1
00000e86: SLOAD
00000e87: PUSH1 0x01
00000e89: PUSH1 0xa0
00000e8b: PUSH1 0x02
00000e8d: EXP
00000e8e: SUB
00000e8f: NOT
00000e90: AND
00000e91: DUP7
00000e92: OR
00000e93: SWAP1
00000e94: SSTORE
00000e95: SLOAD
00000e96: PUSH2 0x0ea7
00000e99: SWAP1
00000e9a: PUSH1 0x01
00000e9c: PUSH1 0xa0
00000e9e: PUSH1 0x02
00000ea0: EXP
00000ea1: SUB
00000ea2: AND
00000ea3: PUSH2 0x01f0
00000ea6: JUMP
00000ea7: JUMPDEST
00000ea8: POP
00000ea9: POP
00000eaa: PUSH1 0x00
00000eac: DUP1
00000ead: SLOAD
00000eae: PUSH1 0x01
00000eb0: PUSH1 0xa0
00000eb2: PUSH1 0x02
00000eb4: EXP
00000eb5: SUB
00000eb6: NOT
00000eb7: AND
00000eb8: DUP4
00000eb9: OR
00000eba: SWAP1
00000ebb: DUP2
00000ebc: SWAP1
00000ebd: SSTORE
00000ebe: PUSH1 0x01
00000ec0: PUSH1 0xa0
00000ec2: PUSH1 0x02
00000ec4: EXP
00000ec5: SUB
00000ec6: AND
00000ec7: SWAP1
00000ec8: POP
00000ec9: PUSH2 0x02af
00000ecc: JUMP
00000ecd: JUMPDEST
00000ece: DUP1
00000ecf: PUSH1 0x00
00000ed1: JUMPDEST
00000ed2: PUSH1 0x01
00000ed4: SLOAD
00000ed5: DUP2
00000ed6: LT
00000ed7: ISZERO
00000ed8: PUSH2 0x0691
00000edb: JUMPI
00000edc: DUP2
00000edd: PUSH1 0x01
00000edf: PUSH1 0xa0
00000ee1: PUSH1 0x02
00000ee3: EXP
00000ee4: SUB
00000ee5: AND
00000ee6: PUSH1 0x01
00000ee8: PUSH1 0x00
00000eea: POP
00000eeb: DUP3
00000eec: DUP2
00000eed: SLOAD
00000eee: DUP2
00000eef: LT
00000ef0: ISZERO
00000ef1: PUSH2 0x0002
00000ef4: JUMPI
00000ef5: PUSH1 0x00
00000ef7: SWAP2
00000ef8: SWAP1
00000ef9: SWAP2
00000efa: MSTORE
00000efb: PUSH1 0x00
00000efd: DUP1
00000efe: MLOAD
00000eff: PUSH1 0x20
00000f01: PUSH2 0x12cf
00000f04: DUP4
00000f05: CODECOPY
00000f06: DUP2
00000f07: MLOAD
00000f08: SWAP2
00000f09: MSTORE
00000f0a: ADD
00000f0b: SLOAD
00000f0c: PUSH1 0x01
00000f0e: PUSH1 0xa0
00000f10: PUSH1 0x02
00000f12: EXP
00000f13: SUB
00000f14: AND
00000f15: EQ
00000f16: ISZERO
00000f17: PUSH2 0x0f1f
00000f1a: JUMPI
00000f1b: PUSH2 0x0691
00000f1e: JUMP
00000f1f: JUMPDEST
00000f20: PUSH1 0x01
00000f22: DUP1
00000f23: SLOAD
00000f24: DUP1
00000f25: DUP3
00000f26: ADD
00000f27: DUP1
00000f28: DUP4
00000f29: SSTORE
00000f2a: DUP3
00000f2b: DUP2
00000f2c: DUP4
00000f2d: DUP1
00000f2e: ISZERO
00000f2f: DUP3
00000f30: SWAP1
00000f31: GT
00000f32: PUSH2 0x0f58
00000f35: JUMPI
00000f36: PUSH1 0x00
00000f38: DUP4
00000f39: SWAP1
00000f3a: MSTORE
00000f3b: PUSH2 0x0f58
00000f3e: SWAP1
00000f3f: PUSH1 0x00
00000f41: DUP1
00000f42: MLOAD
00000f43: PUSH1 0x20
00000f45: PUSH2 0x12cf
00000f48: DUP4
00000f49: CODECOPY
00000f4a: DUP2
00000f4b: MLOAD
00000f4c: SWAP2
00000f4d: MSTORE
00000f4e: SWAP1
00000f4f: DUP2
00000f50: ADD
00000f51: SWAP1
00000f52: DUP4
00000f53: ADD
00000f54: PUSH2 0x080f
00000f57: JUMP
00000f58: JUMPDEST
00000f59: POP
00000f5a: POP
00000f5b: POP
00000f5c: PUSH1 0x00
00000f5e: SWAP3
00000f5f: DUP4
00000f60: MSTORE
00000f61: POP
00000f62: PUSH1 0x20
00000f64: SWAP1
00000f65: SWAP2
00000f66: KECCAK256
00000f67: ADD
00000f68: DUP1
00000f69: SLOAD
00000f6a: PUSH1 0x01
00000f6c: PUSH1 0xa0
00000f6e: PUSH1 0x02
00000f70: EXP
00000f71: SUB
00000f72: NOT
00000f73: AND
00000f74: DUP5
00000f75: OR
00000f76: SWAP1
00000f77: SSTORE
00000f78: PUSH1 0x01
00000f7a: ADD
00000f7b: PUSH2 0x0ed1
00000f7e: JUMP
00000f7f: JUMPDEST
00000f80: PUSH1 0x01
00000f82: ADD
00000f83: PUSH2 0x0873
00000f86: JUMP
00000f87: JUMPDEST
00000f88: PUSH1 0x01
00000f8a: SWAP3
00000f8b: SWAP1
00000f8c: SWAP3
00000f8d: ADD
00000f8e: SWAP2
00000f8f: PUSH2 0x08dd
00000f92: JUMP
00000f93: JUMPDEST
00000f94: PUSH1 0x04
00000f96: DUP1
00000f97: SLOAD
00000f98: PUSH21 0xff0000000000000000000000000000000000000000
00000fae: NOT
00000faf: AND
00000fb0: SWAP1
00000fb1: SSTORE
00000fb2: JUMP
00000fb3: JUMPDEST
00000fb4: PUSH1 0x03
00000fb6: DUP1
00000fb7: SLOAD
00000fb8: PUSH1 0x01
00000fba: PUSH1 0xa0
00000fbc: PUSH1 0x02
00000fbe: EXP
00000fbf: SUB
00000fc0: NOT
00000fc1: AND
00000fc2: DUP3
00000fc3: OR
00000fc4: SWAP1
00000fc5: SSTORE
00000fc6: POP
00000fc7: JUMP
00000fc8: JUMPDEST
00000fc9: PUSH1 0x04
00000fcb: DUP1
00000fcc: SLOAD
00000fcd: PUSH21 0xff0000000000000000000000000000000000000000
00000fe3: NOT
00000fe4: AND
00000fe5: PUSH1 0xa0
00000fe7: PUSH1 0x02
00000fe9: EXP
00000fea: OR
00000feb: SWAP1
00000fec: SSTORE
00000fed: JUMP
00000fee: JUMPDEST
00000fef: TIMESTAMP
00000ff0: PUSH1 0x0c
00000ff2: SSTORE
00000ff3: SWAP2
00000ff4: SWAP5
00000ff5: POP
00000ff6: DUP5
00000ff7: SWAP2
00000ff8: JUMPDEST
00000ff9: POP
00000ffa: POP
00000ffb: POP
00000ffc: POP
00000ffd: POP
00000ffe: SWAP1
00000fff: JUMP
00001000: JUMPDEST
00001001: SWAP5
00001002: POP
00001003: PUSH2 0x1014
00001006: PUSH1 0x02
00001008: PUSH1 0x00
0000100a: PUSH1 0x0a
0000100c: PUSH1 0x00
0000100e: POP
0000100f: SLOAD
00001010: PUSH2 0x04f4
00001013: JUMP
00001014: JUMPDEST
00001015: SWAP4
00001016: POP
00001017: JUMPDEST
00001018: PUSH1 0x01
0000101a: DUP5
0000101b: LT
0000101c: PUSH2 0x108e
0000101f: JUMPI
00001020: PUSH1 0x0e
00001022: DUP1
00001023: SLOAD
00001024: DUP7
00001025: SWAP1
00001026: DUP2
00001027: LT
00001028: ISZERO
00001029: PUSH2 0x0002
0000102c: JUMPI
0000102d: PUSH1 0x00
0000102f: DUP1
00001030: MLOAD
00001031: PUSH1 0x20
00001033: PUSH2 0x12af
00001036: DUP4
00001037: CODECOPY
00001038: DUP2
00001039: MLOAD
0000103a: SWAP2
0000103b: MSTORE
0000103c: ADD
0000103d: SLOAD
0000103e: PUSH1 0x01
00001040: PUSH1 0xa0
00001042: PUSH1 0x02
00001044: EXP
00001045: SUB
00001046: AND
00001047: PUSH1 0x00
00001049: DUP2
0000104a: DUP2
0000104b: MSTORE
0000104c: PUSH1 0x0f
0000104e: PUSH1 0x20
00001050: MSTORE
00001051: PUSH1 0x40
00001053: SWAP1
00001054: KECCAK256
00001055: SLOAD
00001056: SWAP1
00001057: SWAP5
00001058: POP
00001059: DUP6
0000105a: SWAP1
0000105b: GT
0000105c: SWAP1
0000105d: POP
0000105e: PUSH2 0x108e
00001061: JUMPI
00001062: PUSH1 0x01
00001064: PUSH1 0xa0
00001066: PUSH1 0x02
00001068: EXP
00001069: SUB
0000106a: DUP4
0000106b: AND
0000106c: PUSH1 0x00
0000106e: SWAP1
0000106f: DUP2
00001070: MSTORE
00001071: PUSH1 0x40
00001073: DUP2
00001074: KECCAK256
00001075: DUP1
00001076: SLOAD
00001077: PUSH1 0x0a
00001079: DUP1
0000107a: SLOAD
0000107b: SWAP2
0000107c: SWAP1
0000107d: SWAP2
0000107e: SUB
0000107f: SWAP1
00001080: SSTORE
00001081: DUP1
00001082: SLOAD
00001083: SWAP2
00001084: SWAP1
00001085: SSTORE
00001086: SWAP1
00001087: SWAP4
00001088: SUB
00001089: SWAP3
0000108a: PUSH2 0x1017
0000108d: JUMP
0000108e: JUMPDEST
0000108f: PUSH1 0x11
00001091: SLOAD
00001092: PUSH1 0x40
00001094: DUP1
00001095: MLOAD
00001096: PUSH1 0x01
00001098: PUSH1 0xa0
0000109a: PUSH1 0x02
0000109c: EXP
0000109d: SUB
0000109e: DUP7
0000109f: AND
000010a0: DUP2
000010a1: MSTORE
000010a2: PUSH1 0x20
000010a4: DUP2
000010a5: ADD
000010a6: SWAP3
000010a7: SWAP1
000010a8: SWAP3
000010a9: MSTORE
000010aa: DUP1
000010ab: MLOAD
000010ac: PUSH32 0x9c2270628a9b29d30ae96b6c4c14ed646ee134febdce38a5b77f2bde9cea2e20
000010cd: SWAP3
000010ce: DUP2
000010cf: SWAP1
000010d0: SUB
000010d1: SWAP1
000010d2: SWAP2
000010d3: ADD
000010d4: SWAP1
000010d5: LOG1
000010d6: DUP3
000010d7: PUSH1 0x01
000010d9: PUSH1 0xa0
000010db: PUSH1 0x02
000010dd: EXP
000010de: SUB
000010df: AND
000010e0: PUSH1 0x00
000010e2: PUSH1 0x11
000010e4: PUSH1 0x00
000010e6: POP
000010e7: SLOAD
000010e8: PUSH1 0x40
000010ea: MLOAD
000010eb: DUP1
000010ec: SWAP1
000010ed: POP
000010ee: PUSH1 0x00
000010f0: PUSH1 0x40
000010f2: MLOAD
000010f3: DUP1
000010f4: DUP4
000010f5: SUB
000010f6: DUP2
000010f7: DUP6
000010f8: DUP9
000010f9: DUP9
000010fa: CALL
000010fb: SWAP4
000010fc: POP
000010fd: POP
000010fe: POP
000010ff: POP
00001100: ISZERO
00001101: PUSH2 0x11a1
00001104: JUMPI
00001105: PUSH1 0x11
00001107: SLOAD
00001108: PUSH1 0x40
0000110a: DUP1
0000110b: MLOAD
0000110c: PUSH1 0x01
0000110e: PUSH1 0xa0
00001110: PUSH1 0x02
00001112: EXP
00001113: SUB
00001114: DUP7
00001115: AND
00001116: DUP2
00001117: MSTORE
00001118: PUSH1 0x20
0000111a: DUP2
0000111b: ADD
0000111c: SWAP3
0000111d: SWAP1
0000111e: SWAP3
0000111f: MSTORE
00001120: DUP1
00001121: MLOAD
00001122: PUSH32 0xa792ecf7f8854eaf4e9319642626a4d62f12b5bfe7e5be5daca693bed66f75ce
00001143: SWAP3
00001144: DUP2
00001145: SWAP1
00001146: SUB
00001147: SWAP1
00001148: SWAP2
00001149: ADD
0000114a: SWAP1
0000114b: LOG1
0000114c: PUSH1 0x00
0000114e: SWAP2
0000114f: POP
00001150: JUMPDEST
00001151: PUSH1 0x0e
00001153: SLOAD
00001154: DUP3
00001155: LT
00001156: ISZERO
00001157: PUSH2 0x07e7
0000115a: JUMPI
0000115b: PUSH1 0x0e
0000115d: DUP1
0000115e: SLOAD
0000115f: PUSH1 0x0f
00001161: SWAP2
00001162: PUSH1 0x00
00001164: SWAP2
00001165: DUP6
00001166: SWAP1
00001167: DUP2
00001168: LT
00001169: ISZERO
0000116a: PUSH2 0x0002
0000116d: JUMPI
0000116e: PUSH1 0x00
00001170: DUP1
00001171: MLOAD
00001172: PUSH1 0x20
00001174: PUSH2 0x12af
00001177: DUP4
00001178: CODECOPY
00001179: DUP2
0000117a: MLOAD
0000117b: SWAP2
0000117c: MSTORE
0000117d: ADD
0000117e: SLOAD
0000117f: PUSH1 0x01
00001181: PUSH1 0xa0
00001183: PUSH1 0x02
00001185: EXP
00001186: SUB
00001187: AND
00001188: DUP3
00001189: MSTORE
0000118a: POP
0000118b: PUSH1 0x20
0000118d: SWAP2
0000118e: SWAP1
0000118f: SWAP2
00001190: MSTORE
00001191: PUSH1 0x40
00001193: DUP2
00001194: KECCAK256
00001195: SSTORE
00001196: PUSH1 0x01
00001198: SWAP2
00001199: SWAP1
0000119a: SWAP2
0000119b: ADD
0000119c: SWAP1
0000119d: PUSH2 0x1150
000011a0: JUMP
000011a1: JUMPDEST
000011a2: PUSH1 0x11
000011a4: SLOAD
000011a5: PUSH1 0x40
000011a7: DUP1
000011a8: MLOAD
000011a9: PUSH1 0x01
000011ab: PUSH1 0xa0
000011ad: PUSH1 0x02
000011af: EXP
000011b0: SUB
000011b1: DUP7
000011b2: AND
000011b3: DUP2
000011b4: MSTORE
000011b5: PUSH1 0x20
000011b7: DUP2
000011b8: ADD
000011b9: SWAP3
000011ba: SWAP1
000011bb: SWAP3
000011bc: MSTORE
000011bd: DUP1
000011be: MLOAD
000011bf: PUSH32 0xe717feee9503e33fb5903c364640ea747c44b3701de8c587f38bfd37802e26a3
000011e0: SWAP3
000011e1: DUP2
000011e2: SWAP1
000011e3: SUB
000011e4: SWAP1
000011e5: SWAP2
000011e6: ADD
000011e7: SWAP1
000011e8: LOG1
000011e9: PUSH1 0x00
000011eb: SLOAD
000011ec: PUSH1 0x01
000011ee: PUSH1 0xa0
000011f0: PUSH1 0x02
000011f2: EXP
000011f3: SUB
000011f4: AND
000011f5: SWAP6
000011f6: POP
000011f7: PUSH2 0x0ff8
000011fa: JUMP
000011fb: JUMPDEST
000011fc: POP
000011fd: PUSH1 0x11
000011ff: DUP1
00001200: SLOAD
00001201: PUSH1 0x08
00001203: DUP1
00001204: SLOAD
00001205: SWAP1
00001206: SWAP2
00001207: ADD
00001208: SWAP1
00001209: SSTORE
0000120a: PUSH1 0x00
0000120c: SWAP1
0000120d: SSTORE
0000120e: PUSH1 0x10
00001210: SLOAD
00001211: PUSH1 0xff
00001213: AND
00001214: ISZERO
00001215: PUSH2 0x124d
00001218: JUMPI
00001219: PUSH1 0x10
0000121b: SLOAD
0000121c: PUSH1 0x09
0000121e: SLOAD
0000121f: PUSH1 0x40
00001221: MLOAD
00001222: PUSH2 0x0100
00001225: SWAP1
00001226: SWAP3
00001227: DIV
00001228: PUSH1 0x01
0000122a: PUSH1 0xa0
0000122c: PUSH1 0x02
0000122e: EXP
0000122f: SUB
00001230: AND
00001231: SWAP2
00001232: PUSH1 0x00
00001234: SWAP2
00001235: SWAP1
00001236: DUP3
00001237: DUP2
00001238: DUP2
00001239: DUP2
0000123a: DUP6
0000123b: DUP9
0000123c: DUP4
0000123d: CALL
0000123e: SWAP4
0000123f: POP
00001240: POP
00001241: POP
00001242: POP
00001243: ISZERO
00001244: PUSH2 0x124d
00001247: JUMPI
00001248: PUSH1 0x00
0000124a: PUSH1 0x09
0000124c: SSTORE
0000124d: JUMPDEST
0000124e: POP
0000124f: PUSH1 0x07
00001251: DUP1
00001252: SLOAD
00001253: PUSH1 0x01
00001255: ADD
00001256: SWAP1
00001257: DUP2
00001258: SWAP1
00001259: SSTORE
0000125a: TIMESTAMP
0000125b: PUSH1 0x0c
0000125d: SSTORE
0000125e: PUSH1 0x08
00001260: SLOAD
00001261: PUSH1 0x40
00001263: DUP1
00001264: MLOAD
00001265: DUP4
00001266: DUP2
00001267: MSTORE
00001268: PUSH1 0x20
0000126a: DUP2
0000126b: ADD
0000126c: DUP4
0000126d: SWAP1
0000126e: MSTORE
0000126f: SWAP3
00001270: SWAP1
00001271: SWAP2
00001272: DIV
00001273: DUP3
00001274: DUP3
00001275: ADD
00001276: DUP2
00001277: SWAP1
00001278: MSTORE
00001279: SWAP1
0000127a: MLOAD
0000127b: SWAP1
0000127c: SWAP2
0000127d: PUSH32 0x7388a6ba949329cf0fcfc4307f90d369615d784273b16a7847350c78c2ab5bb1
0000129e: SWAP2
0000129f: SWAP1
000012a0: DUP2
000012a1: SWAP1
000012a2: SUB
000012a3: PUSH1 0x60
000012a5: ADD
000012a6: SWAP1
000012a7: LOG1
000012a8: DUP3
000012a9: SWAP6
000012aa: POP
000012ab: PUSH2 0x0ff8
000012ae: JUMP
000012af: UNKNOWN(0xBB)
000012b0: PUSH28 0x4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620
000012cd: UNKNOWN(0xC3)
000012ce: REVERT
000012cf: UNKNOWN(0xB1)
000012d0: UNKNOWN(0x0E)
000012d1: UNKNOWN(0x2D)
000012d2: MSTORE
000012d3: PUSH23 0x12073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2
000012eb: UNKNOWN(0xB7)
000012ec: STATICCALL
000012ed: UNKNOWN(0x0C)
000012ee: UNKNOWN(0xF6)
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
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x02fb0c5e",
            "selector": "0x02fb0c5e",
            "calldata_variants": [
                "0x02fb0c5e",
                "0x02fb0c5e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x046f7da2",
            "selector": "0x046f7da2",
            "calldata_variants": [
                "0x046f7da2",
                "0x046f7da20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x259da3ea",
            "selector": "0x259da3ea",
            "calldata_variants": [
                "0x259da3ea",
                "0x259da3ea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x26c038cd",
            "selector": "0x26c038cd",
            "calldata_variants": [
                "0x26c038cd",
                "0x26c038cd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x31225116",
            "selector": "0x31225116",
            "calldata_variants": [
                "0x31225116",
                "0x312251160000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x36c92c3f",
            "selector": "0x36c92c3f",
            "calldata_variants": [
                "0x36c92c3f",
                "0x36c92c3f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x46a84e81",
            "selector": "0x46a84e81",
            "calldata_variants": [
                "0x46a84e81",
                "0x46a84e810000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x49d6b709",
            "selector": "0x49d6b709",
            "calldata_variants": [
                "0x49d6b709",
                "0x49d6b7090000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 475,
            "type": "tx_origin_used"
        },
        {
            "pc": 512,
            "type": "tx_origin_used"
        },
        {
            "pc": 546,
            "type": "tx_origin_used"
        },
        {
            "pc": 590,
            "type": "tx_origin_used"
        },
        {
            "pc": 625,
            "type": "tx_origin_used"
        },
        {
            "pc": 660,
            "type": "tx_origin_used"
        },
        {
            "pc": 722,
            "type": "tx_origin_used"
        },
        {
            "pc": 820,
            "type": "tx_origin_used"
        },
        {
            "pc": 846,
            "type": "tx_origin_used"
        },
        {
            "pc": 929,
            "type": "tx_origin_used"
        },
        {
            "pc": 964,
            "type": "tx_origin_used"
        },
        {
            "pc": 1000,
            "type": "tx_origin_used"
        },
        {
            "pc": 1041,
            "type": "tx_origin_used"
        },
        {
            "pc": 1076,
            "type": "tx_origin_used"
        },
        {
            "pc": 1129,
            "type": "tx_origin_used"
        },
        {
            "pc": 1209,
            "type": "tx_origin_used"
        },
        {
            "pc": 1242,
            "type": "tx_origin_used"
        },
        {
            "pc": 1745,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x11ae4348ed57a3988158433af93afeed45d07198bb01c285d0312173a40a1634
call_targets: 0xba439991e4838d4abeed1a3b8a09ecefe928704f
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x11ae4348ed57a3988158433af93afeed45d07198bb01c285d0312173a40a1634",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xba439991e4838d4abeed1a3b8a09ecefe928704f"
    ],
    "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": "0x02fb0c5e",
            "selector": "0x02fb0c5e",
            "calldata_variants": [
                "0x02fb0c5e",
                "0x02fb0c5e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x046f7da2",
            "selector": "0x046f7da2",
            "calldata_variants": [
                "0x046f7da2",
                "0x046f7da20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x259da3ea",
            "selector": "0x259da3ea",
            "calldata_variants": [
                "0x259da3ea",
                "0x259da3ea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x26c038cd",
            "selector": "0x26c038cd",
            "calldata_variants": [
                "0x26c038cd",
                "0x26c038cd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x31225116",
            "selector": "0x31225116",
            "calldata_variants": [
                "0x31225116",
                "0x312251160000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x36c92c3f",
            "selector": "0x36c92c3f",
            "calldata_variants": [
                "0x36c92c3f",
                "0x36c92c3f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x46a84e81",
            "selector": "0x46a84e81",
            "calldata_variants": [
                "0x46a84e81",
                "0x46a84e810000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x49d6b709",
            "selector": "0x49d6b709",
            "calldata_variants": [
                "0x49d6b709",
                "0x49d6b7090000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1665,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2526,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4346,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 4,
    "guards_detected": [
        {
            "pc": 475,
            "type": "tx_origin_used"
        },
        {
            "pc": 512,
            "type": "tx_origin_used"
        },
        {
            "pc": 546,
            "type": "tx_origin_used"
        },
        {
            "pc": 590,
            "type": "tx_origin_used"
        },
        {
            "pc": 625,
            "type": "tx_origin_used"
        },
        {
            "pc": 660,
            "type": "tx_origin_used"
        },
        {
            "pc": 722,
            "type": "tx_origin_used"
        },
        {
            "pc": 820,
            "type": "tx_origin_used"
        },
        {
            "pc": 846,
            "type": "tx_origin_used"
        },
        {
            "pc": 929,
            "type": "tx_origin_used"
        },
        {
            "pc": 964,
            "type": "tx_origin_used"
        },
        {
            "pc": 1000,
            "type": "tx_origin_used"
        },
        {
            "pc": 1041,
            "type": "tx_origin_used"
        },
        {
            "pc": 1076,
            "type": "tx_origin_used"
        },
        {
            "pc": 1129,
            "type": "tx_origin_used"
        },
        {
            "pc": 1209,
            "type": "tx_origin_used"
        },
        {
            "pc": 1242,
            "type": "tx_origin_used"
        },
        {
            "pc": 1745,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 4
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x11ae4348ed57a3988158433af93afeed45d07198bb01c285d0312173a40a1634
call_targets: 0xba439991e4838d4abeed1a3b8a09ecefe928704f
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x11ae4348ed57a3988158433af93afeed45d07198bb01c285d0312173a40a1634",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xba439991e4838d4abeed1a3b8a09ecefe928704f"
    ],
    "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": "0x02fb0c5e",
            "selector": "0x02fb0c5e",
            "calldata_variants": [
                "0x02fb0c5e",
                "0x02fb0c5e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x046f7da2",
            "selector": "0x046f7da2",
            "calldata_variants": [
                "0x046f7da2",
                "0x046f7da20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x259da3ea",
            "selector": "0x259da3ea",
            "calldata_variants": [
                "0x259da3ea",
                "0x259da3ea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x26c038cd",
            "selector": "0x26c038cd",
            "calldata_variants": [
                "0x26c038cd",
                "0x26c038cd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x31225116",
            "selector": "0x31225116",
            "calldata_variants": [
                "0x31225116",
                "0x312251160000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x36c92c3f",
            "selector": "0x36c92c3f",
            "calldata_variants": [
                "0x36c92c3f",
                "0x36c92c3f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x46a84e81",
            "selector": "0x46a84e81",
            "calldata_variants": [
                "0x46a84e81",
                "0x46a84e810000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x49d6b709",
            "selector": "0x49d6b709",
            "calldata_variants": [
                "0x49d6b709",
                "0x49d6b7090000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1665,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2526,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 4346,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 4,
    "guards_detected": [
        {
            "pc": 475,
            "type": "tx_origin_used"
        },
        {
            "pc": 512,
            "type": "tx_origin_used"
        },
        {
            "pc": 546,
            "type": "tx_origin_used"
        },
        {
            "pc": 590,
            "type": "tx_origin_used"
        },
        {
            "pc": 625,
            "type": "tx_origin_used"
        },
        {
            "pc": 660,
            "type": "tx_origin_used"
        },
        {
            "pc": 722,
            "type": "tx_origin_used"
        },
        {
            "pc": 820,
            "type": "tx_origin_used"
        },
        {
            "pc": 846,
            "type": "tx_origin_used"
        },
        {
            "pc": 929,
            "type": "tx_origin_used"
        },
        {
            "pc": 964,
            "type": "tx_origin_used"
        },
        {
            "pc": 1000,
            "type": "tx_origin_used"
        },
        {
            "pc": 1041,
            "type": "tx_origin_used"
        },
        {
            "pc": 1076,
            "type": "tx_origin_used"
        },
        {
            "pc": 1129,
            "type": "tx_origin_used"
        },
        {
            "pc": 1209,
            "type": "tx_origin_used"
        },
        {
            "pc": 1242,
            "type": "tx_origin_used"
        },
        {
            "pc": 1745,
            "type": "tx_origin_used"
        }
    ]
}