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

Analysis Run

21609ee6-153c-4135-a6aa-d3fa440b4cb0

failed
Chain ID
1
Address
Block Number
Created
Thu, Jan 1, 2026 2:07 PM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
SELFDESTRUCT present
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
31030 report.consolidate complete 1 / 1 3 months ago
75994 artifact.fetch failed 1 / 3 2 weeks ago
75995 tool.cast_disasm complete 1 / 3 2 weeks ago
75996 analysis.bundle complete 1 / 3 2 weeks ago
75997 capability.graph complete 1 / 3 2 weeks ago
75998 detector.run complete 1 / 3 2 weeks ago
75999 validation.fork complete 1 / 3 2 weeks ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
Reviewed provided contracts; no concrete, exploitable path to extract ETH/tokens/NFTs was identified.
View stderr
[codex:1251667] OpenAI Codex v0.77.0 (research preview)
[codex:1251667] --------
[codex:1251667] workdir: /tmp/codex-multi-u2meavm3
[codex:1251667] model: gpt-5.2-codex
[codex:1251667] provider: openai
[codex:1251667] approval: never
[codex:1251667] sandbox: read-only
[codex:1251667] reasoning effort: xhigh
[codex:1251667] reasoning summaries: auto
[codex:1251667] session id: 019b79e2-25db-7b23-8086-5f35af9ae263
[codex:1251667] --------
[codex:1251667] user
[codex:1251667] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1251667] 
[codex:1251667] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1251667] 
[codex:1251667] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1251667] - Gas inefficiency, code quality, naming, or best practices
[codex:1251667] - Theoretical vulnerabilities without a clear extraction path
[codex:1251667] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1251667] - Front-running unless it enables theft beyond MEV
[codex:1251667] - DoS, griefing, or issues that don't result in attacker profit
[codex:1251667] - Missing events, view function issues, or informational findings
[codex:1251667] 
[codex:1251667] HIGH-VALUE PATTERNS TO HUNT:
[codex:1251667] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1251667] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1251667] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1251667] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1251667] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1251667] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1251667] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1251667] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1251667] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1251667] 
[codex:1251667] For each finding, you MUST provide:
[codex:1251667] 1. Exact file and line numbers of vulnerable code
[codex:1251667] 2. Step-by-step exploit transaction sequence
[codex:1251667] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1251667] 
[codex:1251667] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1251667] 
[codex:1251667] Output MUST be valid JSON matching the provided schema.
[codex:1251667] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1251667] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1251667] mcp startup: no servers
[codex:1251667] 
[codex:1251667] thinking
[codex:1251667] **Checking for AGENTS instructions**
[codex:1251667] exec
[codex:1251667] /bin/bash -lc ls in /tmp/codex-multi-u2meavm3 succeeded in 6ms:
[codex:1251667] AUDIT_BUNDLE.txt
[codex:1251667] codex-output-schema.json
[codex:1251667] contracts
[codex:1251667] 
[codex:1251667] thinking
[codex:1251667] **Searching for AGENTS.md file**
[codex:1251667] exec
[codex:1251667] /bin/bash -lc "rg --files -g 'AGENTS.md'" in /tmp/codex-multi-u2meavm3 exited 1 in 9ms:
[codex:1251667] 
[codex:1251667] 
[codex:1251667] thinking
[codex:1251667] **Checking for audit instructions**
[codex:1251667] exec
[codex:1251667] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-u2meavm3 succeeded in 5ms:
[codex:1251667] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1251667] 
[codex:1251667] ================================================================================
[codex:1251667] FILE: contracts/@summerfi/access-contracts/interfaces/IProtocolAccessManager.sol
[codex:1251667] ================================================================================
[codex:1251667] // SPDX-License-Identifier: BUSL-1.1
[codex:1251667] pragma solidity 0.8.28;
[codex:1251667] 
[codex:1251667] import {AccessControl} from "@openzeppelin/contracts/access/AccessControl.sol";
[codex:1251667] 
[codex:1251667] /**
[codex:1251667]  * @dev Dynamic roles are roles that are not hardcoded in the contract but are defined by the protocol
[codex:1251667]  * Members of this enum are treated as prefixes to the role generated using prefix and target contract address
[codex:1251667]  * e.g generateRole(ContractSpecificRoles.CURATOR_ROLE, address(this)) for FleetCommander, to generate the CURATOR_ROLE
[codex:1251667]  * for the curator of the FleetCommander contract
[codex:1251667]  */
[codex:1251667] enum ContractSpecificRoles {
[codex:1251667]     CURATOR_ROLE,
[codex:1251667]     KEEPER_ROLE,
[codex:1251667]     COMMANDER_ROLE
[codex:1251667] 
[codex:1251667] thinking
[codex:1251667] **Checking bundle files**
[codex:1251667] exec
[codex:1251667] /bin/bash -lc 'rg -n "" AUDIT_BUNDLE.txt' in /tmp/codex-multi-u2meavm3 succeeded in 6ms:
[codex:1251667] 1:This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1251667] 2:
[codex:1251667] 3:================================================================================
[codex:1251667] 4:FILE: contracts/@summerfi/access-contracts/interfaces/IProtocolAccessManager.sol
[codex:1251667] 5:================================================================================
[codex:1251667] 6:// SPDX-License-Identifier: BUSL-1.1
[codex:1251667] 7:pragma solidity 0.8.28;
[codex:1251667] 8:
[codex:1251667] 9:import {AccessControl} from "@openzeppelin/contracts/access/AccessControl.sol";
[codex:1251667] 10:
[codex:1251667] 11:/**
[codex:1251667] 12: * @dev Dynamic roles are roles that are not hardcoded in the contract but are defined by the protocol
[codex:1251667] 13: * Members of this enum are treated as prefixes to the role generated using prefix and target contract address
[codex:1251667] 14: * e.g generateRole(ContractSpecificRoles.CURATOR_ROLE, address(this)) for FleetCommander, to generate the CURATOR_ROLE
[codex:1251667] 15: * for the curator of the FleetCommander contract
[codex:1251667] 16: */
[codex:1251667] 17:enum ContractSpecificRoles {
[codex:1251667] 18:    CURATOR_ROLE,
[codex:1251667] 19:    KEEPER_ROLE,
[codex:1251667] 20:    COMMANDER_ROLE
[codex:1251667] 
[codex:1251667] thinking
[codex:1251667] **Assessing exploit potential**
[codex:1251667] codex
[codex:1251667] {"no_findings":true,"summary":"Reviewed provided contracts; no concrete, exploitable path to extract ETH/tokens/NFTs was identified.","findings":[]}
[codex:1251667] tokens used
[codex:1251667] 13,868
[codex:1251667] {"no_findings":true,"summary":"Reviewed provided contracts; no concrete, exploitable path to extract ETH/tokens/NFTs was identified.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-01T14:07:19.374514+00:00",
        "returncode": 0
    },
    "summary": "Reviewed provided contracts; no concrete, exploitable path to extract ETH/tokens/NFTs was identified.",
    "raw_final": {
        "summary": "Reviewed provided contracts; no concrete, exploitable path to extract ETH/tokens/NFTs was identified.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
1
CREATE2
0
CALL-family (heavy)
8
EXT*/BALANCE
1
Total opcodes
4124
Flags
selfdestruct_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: ISZERO
0000000a: PUSH2 0x001a
0000000d: JUMPI
0000000e: JUMPDEST
0000000f: CALLDATASIZE
00000010: ISZERO
00000011: PUSH2 0x0018
00000014: JUMPI
00000015: PUSH0
00000016: DUP1
00000017: REVERT
00000018: JUMPDEST
00000019: STOP
0000001a: JUMPDEST
0000001b: PUSH0
0000001c: CALLDATALOAD
0000001d: PUSH1 0xe0
0000001f: SHR
00000020: DUP1
00000021: PUSH4 0x01d5062a
00000026: EQ
00000027: PUSH2 0x0aff
0000002a: JUMPI
0000002b: DUP1
0000002c: PUSH4 0x01ffc9a7
00000031: EQ
00000032: PUSH2 0x0a8f
00000035: JUMPI
00000036: DUP1
00000037: PUSH4 0x07bd0265
0000003c: EQ
0000003d: PUSH2 0x0a68
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0x134008d3
00000047: EQ
00000048: PUSH2 0x09c8
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0x13bc9f20
00000052: EQ
00000053: PUSH2 0x09aa
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0x150b7a02
0000005d: EQ
0000005e: PUSH2 0x0955
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0x248a9ca3
00000068: EQ
00000069: PUSH2 0x092b
0000006c: JUMPI
0000006d: DUP1
0000006e: PUSH4 0x2ab0f529
00000073: EQ
00000074: PUSH2 0x090d
00000077: JUMPI
00000078: DUP1
00000079: PUSH4 0x2f2ff15d
0000007e: EQ
0000007f: PUSH2 0x08d0
00000082: JUMPI
00000083: DUP1
00000084: PUSH4 0x31d50750
00000089: EQ
0000008a: PUSH2 0x08b2
0000008d: JUMPI
0000008e: DUP1
0000008f: PUSH4 0x36568abe
00000094: EQ
00000095: PUSH2 0x086e
00000098: JUMPI
00000099: DUP1
0000009a: PUSH4 0x584b153e
0000009f: EQ
000000a0: PUSH2 0x0846
000000a3: JUMPI
000000a4: DUP1
000000a5: PUSH4 0x64d62353
000000aa: EQ
000000ab: PUSH2 0x07e1
000000ae: JUMPI
000000af: DUP1
000000b0: PUSH4 0x7958004c
000000b5: EQ
000000b6: PUSH2 0x079e
000000b9: JUMPI
000000ba: DUP1
000000bb: PUSH4 0x8065657f
000000c0: EQ
000000c1: PUSH2 0x077f
000000c4: JUMPI
000000c5: DUP1
000000c6: PUSH4 0x8f2a0bb0
000000cb: EQ
000000cc: PUSH2 0x0582
000000cf: JUMPI
000000d0: DUP1
000000d1: PUSH4 0x8f61f4f5
000000d6: EQ
000000d7: PUSH2 0x0548
000000da: JUMPI
000000db: DUP1
000000dc: PUSH4 0x91d14854
000000e1: EQ
000000e2: PUSH2 0x0500
000000e5: JUMPI
000000e6: DUP1
000000e7: PUSH4 0xa217fddf
000000ec: EQ
000000ed: PUSH2 0x04e6
000000f0: JUMPI
000000f1: DUP1
000000f2: PUSH4 0xb08e51c0
000000f7: EQ
000000f8: PUSH2 0x04ac
000000fb: JUMPI
000000fc: DUP1
000000fd: PUSH4 0xb1c5f427
00000102: EQ
00000103: PUSH2 0x0482
00000106: JUMPI
00000107: DUP1
00000108: PUSH4 0xbc197c81
0000010d: EQ
0000010e: PUSH2 0x03ed
00000111: JUMPI
00000112: DUP1
00000113: PUSH4 0xc4d252f5
00000118: EQ
00000119: PUSH2 0x03d1
0000011c: JUMPI
0000011d: DUP1
0000011e: PUSH4 0xd45c4435
00000123: EQ
00000124: PUSH2 0x03a7
00000127: JUMPI
00000128: DUP1
00000129: PUSH4 0xd547741f
0000012e: EQ
0000012f: PUSH2 0x0363
00000132: JUMPI
00000133: DUP1
00000134: PUSH4 0xe38335e5
00000139: EQ
0000013a: PUSH2 0x0217
0000013d: JUMPI
0000013e: DUP1
0000013f: PUSH4 0xf23a6e61
00000144: EQ
00000145: PUSH2 0x01c2
00000148: JUMPI
00000149: DUP1
0000014a: PUSH4 0xf27a0c92
0000014f: EQ
00000150: PUSH2 0x01a5
00000153: JUMPI
00000154: PUSH4 0xfdcb6068
00000159: SUB
0000015a: PUSH2 0x000e
0000015d: JUMPI
0000015e: CALLVALUE
0000015f: PUSH2 0x01a1
00000162: JUMPI
00000163: PUSH0
00000164: CALLDATASIZE
00000165: PUSH1 0x03
00000167: NOT
00000168: ADD
00000169: SLT
0000016a: PUSH2 0x01a1
0000016d: JUMPI
0000016e: PUSH1 0x40
00000170: MLOAD
00000171: PUSH32 0x000000000000000000000000f389bcea078acd9516414f5dabe3ddd5f7e39694
00000192: PUSH1 0x01
00000194: PUSH1 0x01
00000196: PUSH1 0xa0
00000198: SHL
00000199: SUB
0000019a: AND
0000019b: DUP2
0000019c: MSTORE
0000019d: PUSH1 0x20
0000019f: SWAP1
000001a0: RETURN
000001a1: JUMPDEST
000001a2: PUSH0
000001a3: DUP1
000001a4: REVERT
000001a5: JUMPDEST
000001a6: CALLVALUE
000001a7: PUSH2 0x01a1
000001aa: JUMPI
000001ab: PUSH0
000001ac: CALLDATASIZE
000001ad: PUSH1 0x03
000001af: NOT
000001b0: ADD
000001b1: SLT
000001b2: PUSH2 0x01a1
000001b5: JUMPI
000001b6: PUSH1 0x20
000001b8: PUSH1 0x02
000001ba: SLOAD
000001bb: PUSH1 0x40
000001bd: MLOAD
000001be: SWAP1
000001bf: DUP2
000001c0: MSTORE
000001c1: RETURN
000001c2: JUMPDEST
000001c3: CALLVALUE
000001c4: PUSH2 0x01a1
000001c7: JUMPI
000001c8: PUSH1 0xa0
000001ca: CALLDATASIZE
000001cb: PUSH1 0x03
000001cd: NOT
000001ce: ADD
000001cf: SLT
000001d0: PUSH2 0x01a1
000001d3: JUMPI
000001d4: PUSH2 0x01db
000001d7: PUSH2 0x0c00
000001da: JUMP
000001db: JUMPDEST
000001dc: POP
000001dd: PUSH2 0x01e4
000001e0: PUSH2 0x0c16
000001e3: JUMP
000001e4: JUMPDEST
000001e5: POP
000001e6: PUSH1 0x84
000001e8: CALLDATALOAD
000001e9: PUSH1 0x01
000001eb: PUSH1 0x01
000001ed: PUSH1 0x40
000001ef: SHL
000001f0: SUB
000001f1: DUP2
000001f2: GT
000001f3: PUSH2 0x01a1
000001f6: JUMPI
000001f7: PUSH2 0x0204
000001fa: SWAP1
000001fb: CALLDATASIZE
000001fc: SWAP1
000001fd: PUSH1 0x04
000001ff: ADD
00000200: PUSH2 0x0cf7
00000203: JUMP
00000204: JUMPDEST
00000205: POP
00000206: PUSH1 0x40
00000208: MLOAD
00000209: PUSH4 0xf23a6e61
0000020e: PUSH1 0xe0
00000210: SHL
00000211: DUP2
00000212: MSTORE
00000213: PUSH1 0x20
00000215: SWAP1
00000216: RETURN
00000217: JUMPDEST
00000218: PUSH2 0x0220
0000021b: CALLDATASIZE
0000021c: PUSH2 0x0d6d
0000021f: JUMP
00000220: JUMPDEST
00000221: PUSH0
00000222: DUP1
00000223: MSTORE
00000224: PUSH32 0xdae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d7069
00000245: PUSH1 0x20
00000247: MSTORE
00000248: PUSH32 0x5ba6852781629bcdcd4bdaa6de76d786f1c64b16acdac474e55bebc0ea157951
00000269: SLOAD
0000026a: SWAP3
0000026b: SWAP8
0000026c: SWAP2
0000026d: SWAP7
0000026e: SWAP2
0000026f: SWAP6
00000270: SWAP4
00000271: SWAP5
00000272: SWAP3
00000273: PUSH1 0xff
00000275: AND
00000276: ISZERO
00000277: PUSH2 0x0355
0000027a: JUMPI
0000027b: JUMPDEST
0000027c: DUP3
0000027d: DUP3
0000027e: EQ
0000027f: DUP1
00000280: ISZERO
00000281: SWAP1
00000282: PUSH2 0x034b
00000285: JUMPI
00000286: JUMPDEST
00000287: PUSH2 0x0330
0000028a: JUMPI
0000028b: PUSH2 0x029d
0000028e: PUSH2 0x02a4
00000291: SWAP2
00000292: DUP9
00000293: DUP11
00000294: DUP9
00000295: DUP8
00000296: DUP10
00000297: DUP9
00000298: DUP14
00000299: PUSH2 0x1011
0000029c: JUMP
0000029d: JUMPDEST
0000029e: SWAP7
0000029f: DUP8
000002a0: PUSH2 0x1723
000002a3: JUMP
000002a4: JUMPDEST
000002a5: PUSH0
000002a6: JUMPDEST
000002a7: DUP2
000002a8: DUP2
000002a9: LT
000002aa: PUSH2 0x02b6
000002ad: JUMPI
000002ae: PUSH2 0x0018
000002b1: DUP8
000002b2: PUSH2 0x17ce
000002b5: JUMP
000002b6: JUMPDEST
000002b7: DUP1
000002b8: DUP1
000002b9: DUP9
000002ba: PUSH32 0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58
000002db: DUP9
000002dc: DUP9
000002dd: PUSH2 0x0327
000002e0: PUSH2 0x030e
000002e3: DUP16
000002e4: SWAP9
000002e5: PUSH1 0x01
000002e7: SWAP10
000002e8: DUP16
000002e9: DUP3
000002ea: DUP15
000002eb: PUSH2 0x0301
000002ee: DUP16
000002ef: DUP4
000002f0: PUSH2 0x02fc
000002f3: SWAP2
000002f4: PUSH2 0x0307
000002f7: SWAP7
000002f8: PUSH2 0x1513
000002fb: JUMP
000002fc: JUMPDEST
000002fd: PUSH2 0x1523
00000300: JUMP
00000301: JUMPDEST
00000302: SWAP8
00000303: PUSH2 0x1513
00000306: JUMP
00000307: JUMPDEST
00000308: CALLDATALOAD
00000309: SWAP6
0000030a: PUSH2 0x0fbc
0000030d: JUMP
0000030e: JUMPDEST
0000030f: SWAP1
00000310: PUSH2 0x031b
00000313: DUP3
00000314: DUP3
00000315: DUP8
00000316: DUP8
00000317: PUSH2 0x177b
0000031a: JUMP
0000031b: JUMPDEST
0000031c: PUSH1 0x40
0000031e: MLOAD
0000031f: SWAP5
00000320: DUP6
00000321: SWAP5
00000322: DUP6
00000323: PUSH2 0x0e98
00000326: JUMP
00000327: JUMPDEST
00000328: SUB
00000329: SWAP1
0000032a: LOG3
0000032b: ADD
0000032c: PUSH2 0x02a6
0000032f: JUMP
00000330: JUMPDEST
00000331: POP
00000332: DUP7
00000333: SWAP1
00000334: PUSH4 0xffb03211
00000339: PUSH1 0xe0
0000033b: SHL
0000033c: PUSH0
0000033d: MSTORE
0000033e: PUSH1 0x04
00000340: MSTORE
00000341: PUSH1 0x24
00000343: MSTORE
00000344: PUSH1 0x44
00000346: MSTORE
00000347: PUSH1 0x64
00000349: PUSH0
0000034a: REVERT
0000034b: JUMPDEST
0000034c: POP
0000034d: DUP8
0000034e: DUP3
0000034f: EQ
00000350: ISZERO
00000351: PUSH2 0x0286
00000354: JUMP
00000355: JUMPDEST
00000356: PUSH2 0x035e
00000359: CALLER
0000035a: PUSH2 0x15f5
0000035d: JUMP
0000035e: JUMPDEST
0000035f: PUSH2 0x027b
00000362: JUMP
00000363: JUMPDEST
00000364: CALLVALUE
00000365: PUSH2 0x01a1
00000368: JUMPI
00000369: PUSH1 0x40
0000036b: CALLDATASIZE
0000036c: PUSH1 0x03
0000036e: NOT
0000036f: ADD
00000370: SLT
00000371: PUSH2 0x01a1
00000374: JUMPI
00000375: PUSH2 0x0018
00000378: PUSH1 0x04
0000037a: CALLDATALOAD
0000037b: PUSH2 0x0382
0000037e: PUSH2 0x0c16
00000381: JUMP
00000382: JUMPDEST
00000383: SWAP1
00000384: PUSH2 0x03a2
00000387: PUSH2 0x039b
0000038a: DUP3
0000038b: PUSH0
0000038c: MSTORE
0000038d: PUSH0
0000038e: PUSH1 0x20
00000390: MSTORE
00000391: PUSH1 0x01
00000393: PUSH1 0x40
00000395: PUSH0
00000396: KECCAK256
00000397: ADD
00000398: SLOAD
00000399: SWAP1
0000039a: JUMP
0000039b: JUMPDEST
0000039c: CALLER
0000039d: SWAP1
0000039e: PUSH2 0x16db
000003a1: JUMP
000003a2: JUMPDEST
000003a3: PUSH2 0x1874
000003a6: JUMP
000003a7: JUMPDEST
000003a8: CALLVALUE
000003a9: PUSH2 0x01a1
000003ac: JUMPI
000003ad: PUSH1 0x20
000003af: CALLDATASIZE
000003b0: PUSH1 0x03
000003b2: NOT
000003b3: ADD
000003b4: SLT
000003b5: PUSH2 0x01a1
000003b8: JUMPI
000003b9: PUSH1 0x04
000003bb: CALLDATALOAD
000003bc: PUSH0
000003bd: MSTORE
000003be: PUSH1 0x01
000003c0: PUSH1 0x20
000003c2: MSTORE
000003c3: PUSH1 0x20
000003c5: PUSH1 0x40
000003c7: PUSH0
000003c8: KECCAK256
000003c9: SLOAD
000003ca: PUSH1 0x40
000003cc: MLOAD
000003cd: SWAP1
000003ce: DUP2
000003cf: MSTORE
000003d0: RETURN
000003d1: JUMPDEST
000003d2: CALLVALUE
000003d3: PUSH2 0x01a1
000003d6: JUMPI
000003d7: PUSH1 0x20
000003d9: CALLDATASIZE
000003da: PUSH1 0x03
000003dc: NOT
000003dd: ADD
000003de: SLT
000003df: PUSH2 0x01a1
000003e2: JUMPI
000003e3: PUSH2 0x0018
000003e6: PUSH1 0x04
000003e8: CALLDATALOAD
000003e9: PUSH2 0x117b
000003ec: JUMP
000003ed: JUMPDEST
000003ee: CALLVALUE
000003ef: PUSH2 0x01a1
000003f2: JUMPI
000003f3: PUSH1 0xa0
000003f5: CALLDATASIZE
000003f6: PUSH1 0x03
000003f8: NOT
000003f9: ADD
000003fa: SLT
000003fb: PUSH2 0x01a1
000003fe: JUMPI
000003ff: PUSH2 0x0406
00000402: PUSH2 0x0c00
00000405: JUMP
00000406: JUMPDEST
00000407: POP
00000408: PUSH2 0x040f
0000040b: PUSH2 0x0c16
0000040e: JUMP
0000040f: JUMPDEST
00000410: POP
00000411: PUSH1 0x44
00000413: CALLDATALOAD
00000414: PUSH1 0x01
00000416: PUSH1 0x01
00000418: PUSH1 0x40
0000041a: SHL
0000041b: SUB
0000041c: DUP2
0000041d: GT
0000041e: PUSH2 0x01a1
00000421: JUMPI
00000422: PUSH2 0x042f
00000425: SWAP1
00000426: CALLDATASIZE
00000427: SWAP1
00000428: PUSH1 0x04
0000042a: ADD
0000042b: PUSH2 0x0ddb
0000042e: JUMP
0000042f: JUMPDEST
00000430: POP
00000431: PUSH1 0x64
00000433: CALLDATALOAD
00000434: PUSH1 0x01
00000436: PUSH1 0x01
00000438: PUSH1 0x40
0000043a: SHL
0000043b: SUB
0000043c: DUP2
0000043d: GT
0000043e: PUSH2 0x01a1
00000441: JUMPI
00000442: PUSH2 0x044f
00000445: SWAP1
00000446: CALLDATASIZE
00000447: SWAP1
00000448: PUSH1 0x04
0000044a: ADD
0000044b: PUSH2 0x0ddb
0000044e: JUMP
0000044f: JUMPDEST
00000450: POP
00000451: PUSH1 0x84
00000453: CALLDATALOAD
00000454: PUSH1 0x01
00000456: PUSH1 0x01
00000458: PUSH1 0x40
0000045a: SHL
0000045b: SUB
0000045c: DUP2
0000045d: GT
0000045e: PUSH2 0x01a1
00000461: JUMPI
00000462: PUSH2 0x046f
00000465: SWAP1
00000466: CALLDATASIZE
00000467: SWAP1
00000468: PUSH1 0x04
0000046a: ADD
0000046b: PUSH2 0x0cf7
0000046e: JUMP
0000046f: JUMPDEST
00000470: POP
00000471: PUSH1 0x40
00000473: MLOAD
00000474: PUSH4 0xbc197c81
00000479: PUSH1 0xe0
0000047b: SHL
0000047c: DUP2
0000047d: MSTORE
0000047e: PUSH1 0x20
00000480: SWAP1
00000481: RETURN
00000482: JUMPDEST
00000483: CALLVALUE
00000484: PUSH2 0x01a1
00000487: JUMPI
00000488: PUSH1 0x20
0000048a: PUSH2 0x04a4
0000048d: PUSH2 0x0495
00000490: CALLDATASIZE
00000491: PUSH2 0x0d6d
00000494: JUMP
00000495: JUMPDEST
00000496: SWAP7
00000497: SWAP6
00000498: SWAP1
00000499: SWAP6
0000049a: SWAP5
0000049b: SWAP2
0000049c: SWAP5
0000049d: SWAP4
0000049e: SWAP3
0000049f: SWAP4
000004a0: PUSH2 0x1011
000004a3: JUMP
000004a4: JUMPDEST
000004a5: PUSH1 0x40
000004a7: MLOAD
000004a8: SWAP1
000004a9: DUP2
000004aa: MSTORE
000004ab: RETURN
000004ac: JUMPDEST
000004ad: CALLVALUE
000004ae: PUSH2 0x01a1
000004b1: JUMPI
000004b2: PUSH0
000004b3: CALLDATASIZE
000004b4: PUSH1 0x03
000004b6: NOT
000004b7: ADD
000004b8: SLT
000004b9: PUSH2 0x01a1
000004bc: JUMPI
000004bd: PUSH1 0x20
000004bf: PUSH1 0x40
000004c1: MLOAD
000004c2: PUSH32 0xfd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783
000004e3: DUP2
000004e4: MSTORE
000004e5: RETURN
000004e6: JUMPDEST
000004e7: CALLVALUE
000004e8: PUSH2 0x01a1
000004eb: JUMPI
000004ec: PUSH0
000004ed: CALLDATASIZE
000004ee: PUSH1 0x03
000004f0: NOT
000004f1: ADD
000004f2: SLT
000004f3: PUSH2 0x01a1
000004f6: JUMPI
000004f7: PUSH1 0x20
000004f9: PUSH1 0x40
000004fb: MLOAD
000004fc: PUSH0
000004fd: DUP2
000004fe: MSTORE
000004ff: RETURN
00000500: JUMPDEST
00000501: CALLVALUE
00000502: PUSH2 0x01a1
00000505: JUMPI
00000506: PUSH1 0x40
00000508: CALLDATASIZE
00000509: PUSH1 0x03
0000050b: NOT
0000050c: ADD
0000050d: SLT
0000050e: PUSH2 0x01a1
00000511: JUMPI
00000512: PUSH2 0x0519
00000515: PUSH2 0x0c16
00000518: JUMP
00000519: JUMPDEST
0000051a: PUSH1 0x04
0000051c: CALLDATALOAD
0000051d: PUSH0
0000051e: MSTORE
0000051f: PUSH0
00000520: PUSH1 0x20
00000522: MSTORE
00000523: PUSH1 0x40
00000525: PUSH0
00000526: KECCAK256
00000527: SWAP1
00000528: PUSH1 0x01
0000052a: DUP1
0000052b: PUSH1 0xa0
0000052d: SHL
0000052e: SUB
0000052f: AND
00000530: PUSH0
00000531: MSTORE
00000532: PUSH1 0x20
00000534: MSTORE
00000535: PUSH1 0x20
00000537: PUSH1 0xff
00000539: PUSH1 0x40
0000053b: PUSH0
0000053c: KECCAK256
0000053d: SLOAD
0000053e: AND
0000053f: PUSH1 0x40
00000541: MLOAD
00000542: SWAP1
00000543: ISZERO
00000544: ISZERO
00000545: DUP2
00000546: MSTORE
00000547: RETURN
00000548: JUMPDEST
00000549: CALLVALUE
0000054a: PUSH2 0x01a1
0000054d: JUMPI
0000054e: PUSH0
0000054f: CALLDATASIZE
00000550: PUSH1 0x03
00000552: NOT
00000553: ADD
00000554: SLT
00000555: PUSH2 0x01a1
00000558: JUMPI
00000559: PUSH1 0x20
0000055b: PUSH1 0x40
0000055d: MLOAD
0000055e: PUSH32 0xb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1
0000057f: DUP2
00000580: MSTORE
00000581: RETURN
00000582: JUMPDEST
00000583: CALLVALUE
00000584: PUSH2 0x01a1
00000587: JUMPI
00000588: PUSH1 0xc0
0000058a: CALLDATASIZE
0000058b: PUSH1 0x03
0000058d: NOT
0000058e: ADD
0000058f: SLT
00000590: PUSH2 0x01a1
00000593: JUMPI
00000594: PUSH1 0x04
00000596: CALLDATALOAD
00000597: PUSH1 0x01
00000599: PUSH1 0x01
0000059b: PUSH1 0x40
0000059d: SHL
0000059e: SUB
0000059f: DUP2
000005a0: GT
000005a1: PUSH2 0x01a1
000005a4: JUMPI
000005a5: PUSH2 0x05b2
000005a8: SWAP1
000005a9: CALLDATASIZE
000005aa: SWAP1
000005ab: PUSH1 0x04
000005ad: ADD
000005ae: PUSH2 0x0d3d
000005b1: JUMP
000005b2: JUMPDEST
000005b3: SWAP1
000005b4: PUSH1 0x24
000005b6: CALLDATALOAD
000005b7: PUSH1 0x01
000005b9: PUSH1 0x01
000005bb: PUSH1 0x40
000005bd: SHL
000005be: SUB
000005bf: DUP2
000005c0: GT
000005c1: PUSH2 0x01a1
000005c4: JUMPI
000005c5: PUSH2 0x05d2
000005c8: SWAP1
000005c9: CALLDATASIZE
000005ca: SWAP1
000005cb: PUSH1 0x04
000005cd: ADD
000005ce: PUSH2 0x0d3d
000005d1: JUMP
000005d2: JUMPDEST
000005d3: PUSH1 0x44
000005d5: SWAP3
000005d6: SWAP2
000005d7: SWAP3
000005d8: CALLDATALOAD
000005d9: PUSH1 0x01
000005db: PUSH1 0x01
000005dd: PUSH1 0x40
000005df: SHL
000005e0: SUB
000005e1: DUP2
000005e2: GT
000005e3: PUSH2 0x01a1
000005e6: JUMPI
000005e7: DUP3
000005e8: PUSH2 0x05f6
000005eb: DUP6
000005ec: SWAP3
000005ed: CALLDATASIZE
000005ee: SWAP1
000005ef: PUSH1 0x04
000005f1: ADD
000005f2: PUSH2 0x0d3d
000005f5: JUMP
000005f6: JUMPDEST
000005f7: PUSH1 0x64
000005f9: SWAP5
000005fa: SWAP2
000005fb: SWAP5
000005fc: CALLDATALOAD
000005fd: SWAP2
000005fe: PUSH2 0x061d
00000601: DUP10
00000602: DUP5
00000603: DUP5
00000604: DUP10
00000605: DUP6
00000606: PUSH1 0x84
00000608: CALLDATALOAD
00000609: SWAP14
0000060a: DUP15
0000060b: SWAP6
0000060c: PUSH1 0xa4
0000060e: CALLDATALOAD
0000060f: SWAP12
00000610: PUSH2 0x0618
00000613: CALLER
00000614: PUSH2 0x156f
00000617: JUMP
00000618: JUMPDEST
00000619: PUSH2 0x1011
0000061c: JUMP
0000061d: JUMPDEST
0000061e: PUSH0
0000061f: JUMPDEST
00000620: DUP4
00000621: DUP2
00000622: LT
00000623: PUSH2 0x072d
00000626: JUMPI
00000627: POP
00000628: POP
00000629: PUSH2 0x0631
0000062c: CALLER
0000062d: PUSH2 0x156f
00000630: JUMP
00000631: JUMPDEST
00000632: DUP1
00000633: DUP10
00000634: EQ
00000635: DUP1
00000636: ISZERO
00000637: SWAP1
00000638: PUSH2 0x0723
0000063b: JUMPI
0000063c: JUMPDEST
0000063d: PUSH2 0x0709
00000640: JUMPI
00000641: PUSH2 0x0650
00000644: DUP9
00000645: DUP5
00000646: DUP5
00000647: DUP10
00000648: DUP6
00000649: DUP11
0000064a: DUP16
0000064b: DUP15
0000064c: PUSH2 0x1011
0000064f: JUMP
00000650: JUMPDEST
00000651: SWAP9
00000652: PUSH2 0x065b
00000655: DUP6
00000656: DUP12
00000657: PUSH2 0x18f4
0000065a: JUMP
0000065b: JUMPDEST
0000065c: DUP10
0000065d: PUSH0
0000065e: JUMPDEST
0000065f: DUP3
00000660: DUP2
00000661: LT
00000662: PUSH2 0x069b
00000665: JUMPI
00000666: POP
00000667: DUP10
00000668: DUP1
00000669: PUSH2 0x066e
0000066c: JUMPI
0000066d: STOP
0000066e: JUMPDEST
0000066f: PUSH1 0x20
00000671: PUSH32 0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387
00000692: SWAP2
00000693: PUSH1 0x40
00000695: MLOAD
00000696: SWAP1
00000697: DUP2
00000698: MSTORE
00000699: LOG2
0000069a: STOP
0000069b: JUMPDEST
0000069c: DUP1
0000069d: PUSH1 0x01
0000069f: SWAP3
000006a0: PUSH32 0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca
000006c1: DUP12
000006c2: DUP12
000006c3: PUSH2 0x06fe
000006c6: DUP16
000006c7: DUP13
000006c8: PUSH2 0x06f1
000006cb: DUP16
000006cc: SWAP3
000006cd: DUP15
000006ce: PUSH2 0x06ea
000006d1: DUP16
000006d2: DUP16
000006d3: SWAP1
000006d4: PUSH2 0x06e4
000006d7: PUSH2 0x02fc
000006da: DUP16
000006db: DUP1
000006dc: SWAP8
000006dd: SWAP5
000006de: DUP2
000006df: SWAP6
000006e0: PUSH2 0x1513
000006e3: JUMP
000006e4: JUMPDEST
000006e5: SWAP10
000006e6: PUSH2 0x1513
000006e9: JUMP
000006ea: JUMPDEST
000006eb: CALLDATALOAD
000006ec: SWAP8
000006ed: PUSH2 0x0fbc
000006f0: JUMP
000006f1: JUMPDEST
000006f2: SWAP1
000006f3: PUSH1 0x40
000006f5: MLOAD
000006f6: SWAP7
000006f7: DUP8
000006f8: SWAP7
000006f9: DUP8
000006fa: PUSH2 0x1537
000006fd: JUMP
000006fe: JUMPDEST
000006ff: SUB
00000700: SWAP1
00000701: LOG3
00000702: ADD
00000703: DUP11
00000704: SWAP1
00000705: PUSH2 0x065e
00000708: JUMP
00000709: JUMPDEST
0000070a: SWAP1
0000070b: DUP9
0000070c: PUSH4 0xffb03211
00000711: PUSH1 0xe0
00000713: SHL
00000714: PUSH0
00000715: MSTORE
00000716: PUSH1 0x04
00000718: MSTORE
00000719: PUSH1 0x24
0000071b: MSTORE
0000071c: PUSH1 0x44
0000071e: MSTORE
0000071f: PUSH1 0x64
00000721: PUSH0
00000722: REVERT
00000723: JUMPDEST
00000724: POP
00000725: DUP2
00000726: DUP10
00000727: EQ
00000728: ISZERO
00000729: PUSH2 0x063c
0000072c: JUMP
0000072d: JUMPDEST
0000072e: DUP1
0000072f: PUSH2 0x073b
00000732: PUSH1 0x01
00000734: SWAP3
00000735: DUP7
00000736: DUP12
00000737: PUSH2 0x0fbc
0000073a: JUMP
0000073b: JUMPDEST
0000073c: PUSH4 0x7aea5b6f
00000741: PUSH1 0xe1
00000743: SHL
00000744: SWAP2
00000745: PUSH1 0x01
00000747: PUSH1 0x01
00000749: PUSH1 0xe0
0000074b: SHL
0000074c: SUB
0000074d: NOT
0000074e: SWAP2
0000074f: PUSH2 0x0757
00000752: SWAP2
00000753: PUSH2 0x0e42
00000756: JUMP
00000757: JUMPDEST
00000758: AND
00000759: EQ
0000075a: PUSH2 0x0764
0000075d: JUMPI
0000075e: JUMPDEST
0000075f: ADD
00000760: PUSH2 0x061f
00000763: JUMP
00000764: JUMPDEST
00000765: DUP3
00000766: PUSH0
00000767: MSTORE
00000768: PUSH1 0x03
0000076a: PUSH1 0x20
0000076c: MSTORE
0000076d: PUSH1 0x40
0000076f: PUSH0
00000770: KECCAK256
00000771: DUP3
00000772: PUSH1 0xff
00000774: NOT
00000775: DUP3
00000776: SLOAD
00000777: AND
00000778: OR
00000779: SWAP1
0000077a: SSTORE
0000077b: PUSH2 0x075e
0000077e: JUMP
0000077f: JUMPDEST
00000780: CALLVALUE
00000781: PUSH2 0x01a1
00000784: JUMPI
00000785: PUSH1 0x20
00000787: PUSH2 0x04a4
0000078a: PUSH2 0x0792
0000078d: CALLDATASIZE
0000078e: PUSH2 0x0c59
00000791: JUMP
00000792: JUMPDEST
00000793: SWAP5
00000794: SWAP4
00000795: SWAP1
00000796: SWAP4
00000797: SWAP3
00000798: SWAP2
00000799: SWAP3
0000079a: PUSH2 0x0f67
0000079d: JUMP
0000079e: JUMPDEST
0000079f: CALLVALUE
000007a0: PUSH2 0x01a1
000007a3: JUMPI
000007a4: PUSH1 0x20
000007a6: CALLDATASIZE
000007a7: PUSH1 0x03
000007a9: NOT
000007aa: ADD
000007ab: SLT
000007ac: PUSH2 0x01a1
000007af: JUMPI
000007b0: PUSH2 0x07ba
000007b3: PUSH1 0x04
000007b5: CALLDATALOAD
000007b6: PUSH2 0x0f2f
000007b9: JUMP
000007ba: JUMPDEST
000007bb: PUSH1 0x40
000007bd: MLOAD
000007be: PUSH1 0x04
000007c0: DUP3
000007c1: LT
000007c2: ISZERO
000007c3: PUSH2 0x07cd
000007c6: JUMPI
000007c7: PUSH1 0x20
000007c9: SWAP2
000007ca: DUP2
000007cb: MSTORE
000007cc: RETURN
000007cd: JUMPDEST
000007ce: PUSH4 0x4e487b71
000007d3: PUSH1 0xe0
000007d5: SHL
000007d6: PUSH0
000007d7: MSTORE
000007d8: PUSH1 0x21
000007da: PUSH1 0x04
000007dc: MSTORE
000007dd: PUSH1 0x24
000007df: PUSH0
000007e0: REVERT
000007e1: JUMPDEST
000007e2: CALLVALUE
000007e3: PUSH2 0x01a1
000007e6: JUMPI
000007e7: PUSH1 0x20
000007e9: CALLDATASIZE
000007ea: PUSH1 0x03
000007ec: NOT
000007ed: ADD
000007ee: SLT
000007ef: PUSH2 0x01a1
000007f2: JUMPI
000007f3: PUSH1 0x04
000007f5: CALLDATALOAD
000007f6: ADDRESS
000007f7: CALLER
000007f8: SUB
000007f9: PUSH2 0x0833
000007fc: JUMPI
000007fd: PUSH32 0x11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d5
0000081e: PUSH1 0x40
00000820: PUSH1 0x02
00000822: SLOAD
00000823: DUP2
00000824: MLOAD
00000825: SWAP1
00000826: DUP2
00000827: MSTORE
00000828: DUP4
00000829: PUSH1 0x20
0000082b: DUP3
0000082c: ADD
0000082d: MSTORE
0000082e: LOG1
0000082f: PUSH1 0x02
00000831: SSTORE
00000832: STOP
00000833: JUMPDEST
00000834: PUSH4 0xe2850c59
00000839: PUSH1 0xe0
0000083b: SHL
0000083c: PUSH0
0000083d: MSTORE
0000083e: CALLER
0000083f: PUSH1 0x04
00000841: MSTORE
00000842: PUSH1 0x24
00000844: PUSH0
00000845: REVERT
00000846: JUMPDEST
00000847: CALLVALUE
00000848: PUSH2 0x01a1
0000084b: JUMPI
0000084c: PUSH1 0x20
0000084e: CALLDATASIZE
0000084f: PUSH1 0x03
00000851: NOT
00000852: ADD
00000853: SLT
00000854: PUSH2 0x01a1
00000857: JUMPI
00000858: PUSH1 0x20
0000085a: PUSH2 0x0864
0000085d: PUSH1 0x04
0000085f: CALLDATALOAD
00000860: PUSH2 0x0f06
00000863: JUMP
00000864: JUMPDEST
00000865: PUSH1 0x40
00000867: MLOAD
00000868: SWAP1
00000869: ISZERO
0000086a: ISZERO
0000086b: DUP2
0000086c: MSTORE
0000086d: RETURN
0000086e: JUMPDEST
0000086f: CALLVALUE
00000870: PUSH2 0x01a1
00000873: JUMPI
00000874: PUSH1 0x40
00000876: CALLDATASIZE
00000877: PUSH1 0x03
00000879: NOT
0000087a: ADD
0000087b: SLT
0000087c: PUSH2 0x01a1
0000087f: JUMPI
00000880: PUSH2 0x0887
00000883: PUSH2 0x0c16
00000886: JUMP
00000887: JUMPDEST
00000888: CALLER
00000889: PUSH1 0x01
0000088b: PUSH1 0x01
0000088d: PUSH1 0xa0
0000088f: SHL
00000890: SUB
00000891: DUP3
00000892: AND
00000893: SUB
00000894: PUSH2 0x08a3
00000897: JUMPI
00000898: PUSH2 0x0018
0000089b: SWAP1
0000089c: PUSH1 0x04
0000089e: CALLDATALOAD
0000089f: PUSH2 0x1874
000008a2: JUMP
000008a3: JUMPDEST
000008a4: PUSH4 0x334bd919
000008a9: PUSH1 0xe1
000008ab: SHL
000008ac: PUSH0
000008ad: MSTORE
000008ae: PUSH1 0x04
000008b0: PUSH0
000008b1: REVERT
000008b2: JUMPDEST
000008b3: CALLVALUE
000008b4: PUSH2 0x01a1
000008b7: JUMPI
000008b8: PUSH1 0x20
000008ba: CALLDATASIZE
000008bb: PUSH1 0x03
000008bd: NOT
000008be: ADD
000008bf: SLT
000008c0: PUSH2 0x01a1
000008c3: JUMPI
000008c4: PUSH1 0x20
000008c6: PUSH2 0x0864
000008c9: PUSH1 0x04
000008cb: CALLDATALOAD
000008cc: PUSH2 0x0eef
000008cf: JUMP
000008d0: JUMPDEST
000008d1: CALLVALUE
000008d2: PUSH2 0x01a1
000008d5: JUMPI
000008d6: PUSH1 0x40
000008d8: CALLDATASIZE
000008d9: PUSH1 0x03
000008db: NOT
000008dc: ADD
000008dd: SLT
000008de: PUSH2 0x01a1
000008e1: JUMPI
000008e2: PUSH2 0x0018
000008e5: PUSH1 0x04
000008e7: CALLDATALOAD
000008e8: PUSH2 0x08ef
000008eb: PUSH2 0x0c16
000008ee: JUMP
000008ef: JUMPDEST
000008f0: SWAP1
000008f1: PUSH2 0x0908
000008f4: PUSH2 0x039b
000008f7: DUP3
000008f8: PUSH0
000008f9: MSTORE
000008fa: PUSH0
000008fb: PUSH1 0x20
000008fd: MSTORE
000008fe: PUSH1 0x01
00000900: PUSH1 0x40
00000902: PUSH0
00000903: KECCAK256
00000904: ADD
00000905: SLOAD
00000906: SWAP1
00000907: JUMP
00000908: JUMPDEST
00000909: PUSH2 0x17ec
0000090c: JUMP
0000090d: JUMPDEST
0000090e: CALLVALUE
0000090f: PUSH2 0x01a1
00000912: JUMPI
00000913: PUSH1 0x20
00000915: CALLDATASIZE
00000916: PUSH1 0x03
00000918: NOT
00000919: ADD
0000091a: SLT
0000091b: PUSH2 0x01a1
0000091e: JUMPI
0000091f: PUSH1 0x20
00000921: PUSH2 0x0864
00000924: PUSH1 0x04
00000926: CALLDATALOAD
00000927: PUSH2 0x0ed7
0000092a: JUMP
0000092b: JUMPDEST
0000092c: CALLVALUE
0000092d: PUSH2 0x01a1
00000930: JUMPI
00000931: PUSH1 0x20
00000933: CALLDATASIZE
00000934: PUSH1 0x03
00000936: NOT
00000937: ADD
00000938: SLT
00000939: PUSH2 0x01a1
0000093c: JUMPI
0000093d: PUSH1 0x20
0000093f: PUSH2 0x04a4
00000942: PUSH1 0x04
00000944: CALLDATALOAD
00000945: PUSH0
00000946: MSTORE
00000947: PUSH0
00000948: PUSH1 0x20
0000094a: MSTORE
0000094b: PUSH1 0x01
0000094d: PUSH1 0x40
0000094f: PUSH0
00000950: KECCAK256
00000951: ADD
00000952: SLOAD
00000953: SWAP1
00000954: JUMP
00000955: JUMPDEST
00000956: CALLVALUE
00000957: PUSH2 0x01a1
0000095a: JUMPI
0000095b: PUSH1 0x80
0000095d: CALLDATASIZE
0000095e: PUSH1 0x03
00000960: NOT
00000961: ADD
00000962: SLT
00000963: PUSH2 0x01a1
00000966: JUMPI
00000967: PUSH2 0x096e
0000096a: PUSH2 0x0c00
0000096d: JUMP
0000096e: JUMPDEST
0000096f: POP
00000970: PUSH2 0x0977
00000973: PUSH2 0x0c16
00000976: JUMP
00000977: JUMPDEST
00000978: POP
00000979: PUSH1 0x64
0000097b: CALLDATALOAD
0000097c: PUSH1 0x01
0000097e: PUSH1 0x01
00000980: PUSH1 0x40
00000982: SHL
00000983: SUB
00000984: DUP2
00000985: GT
00000986: PUSH2 0x01a1
00000989: JUMPI
0000098a: PUSH2 0x0997
0000098d: SWAP1
0000098e: CALLDATASIZE
0000098f: SWAP1
00000990: PUSH1 0x04
00000992: ADD
00000993: PUSH2 0x0cf7
00000996: JUMP
00000997: JUMPDEST
00000998: POP
00000999: PUSH1 0x40
0000099b: MLOAD
0000099c: PUSH4 0x0a85bd01
000009a1: PUSH1 0xe1
000009a3: SHL
000009a4: DUP2
000009a5: MSTORE
000009a6: PUSH1 0x20
000009a8: SWAP1
000009a9: RETURN
000009aa: JUMPDEST
000009ab: CALLVALUE
000009ac: PUSH2 0x01a1
000009af: JUMPI
000009b0: PUSH1 0x20
000009b2: CALLDATASIZE
000009b3: PUSH1 0x03
000009b5: NOT
000009b6: ADD
000009b7: SLT
000009b8: PUSH2 0x01a1
000009bb: JUMPI
000009bc: PUSH1 0x20
000009be: PUSH2 0x0864
000009c1: PUSH1 0x04
000009c3: CALLDATALOAD
000009c4: PUSH2 0x0ebf
000009c7: JUMP
000009c8: JUMPDEST
000009c9: PUSH2 0x0018
000009cc: PUSH2 0x0a46
000009cf: PUSH0
000009d0: PUSH2 0x0a52
000009d3: PUSH32 0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58
000009f4: PUSH2 0x0a3d
000009f7: PUSH2 0x09ff
000009fa: CALLDATASIZE
000009fb: PUSH2 0x0c59
000009fe: JUMP
000009ff: JUMPDEST
00000a00: PUSH0
00000a01: MLOAD
00000a02: PUSH1 0x20
00000a04: PUSH2 0x19b0
00000a07: PUSH0
00000a08: CODECOPY
00000a09: PUSH0
00000a0a: MLOAD
00000a0b: SWAP1
00000a0c: PUSH0
00000a0d: MSTORE
00000a0e: DUP11
00000a0f: SWAP10
00000a10: SWAP6
00000a11: SWAP8
00000a12: SWAP3
00000a13: SWAP10
00000a14: SWAP5
00000a15: SWAP4
00000a16: SWAP5
00000a17: MSTORE
00000a18: DUP10
00000a19: PUSH1 0x20
00000a1b: MSTORE
00000a1c: PUSH1 0x40
00000a1e: DUP11
00000a1f: KECCAK256
00000a20: DUP11
00000a21: DUP1
00000a22: MSTORE
00000a23: PUSH1 0x20
00000a25: MSTORE
00000a26: PUSH1 0xff
00000a28: PUSH1 0x40
00000a2a: DUP12
00000a2b: KECCAK256
00000a2c: SLOAD
00000a2d: AND
00000a2e: ISZERO
00000a2f: PUSH2 0x0a5a
00000a32: JUMPI
00000a33: JUMPDEST
00000a34: DUP9
00000a35: DUP5
00000a36: DUP5
00000a37: DUP10
00000a38: DUP10
00000a39: PUSH2 0x0f67
00000a3c: JUMP
00000a3d: JUMPDEST
00000a3e: SWAP9
00000a3f: DUP10
00000a40: SWAP8
00000a41: DUP9
00000a42: PUSH2 0x1723
00000a45: JUMP
00000a46: JUMPDEST
00000a47: PUSH2 0x031b
00000a4a: DUP3
00000a4b: DUP3
00000a4c: DUP8
00000a4d: DUP8
00000a4e: PUSH2 0x177b
00000a51: JUMP
00000a52: JUMPDEST
00000a53: SUB
00000a54: SWAP1
00000a55: LOG3
00000a56: PUSH2 0x17ce
00000a59: JUMP
00000a5a: JUMPDEST
00000a5b: PUSH2 0x0a63
00000a5e: CALLER
00000a5f: PUSH2 0x15f5
00000a62: JUMP
00000a63: JUMPDEST
00000a64: PUSH2 0x0a33
00000a67: JUMP
00000a68: JUMPDEST
00000a69: CALLVALUE
00000a6a: PUSH2 0x01a1
00000a6d: JUMPI
00000a6e: PUSH0
00000a6f: CALLDATASIZE
00000a70: PUSH1 0x03
00000a72: NOT
00000a73: ADD
00000a74: SLT
00000a75: PUSH2 0x01a1
00000a78: JUMPI
00000a79: PUSH1 0x20
00000a7b: PUSH1 0x40
00000a7d: MLOAD
00000a7e: PUSH0
00000a7f: MLOAD
00000a80: PUSH1 0x20
00000a82: PUSH2 0x19b0
00000a85: PUSH0
00000a86: CODECOPY
00000a87: PUSH0
00000a88: MLOAD
00000a89: SWAP1
00000a8a: PUSH0
00000a8b: MSTORE
00000a8c: DUP2
00000a8d: MSTORE
00000a8e: RETURN
00000a8f: JUMPDEST
00000a90: CALLVALUE
00000a91: PUSH2 0x01a1
00000a94: JUMPI
00000a95: PUSH1 0x20
00000a97: CALLDATASIZE
00000a98: PUSH1 0x03
00000a9a: NOT
00000a9b: ADD
00000a9c: SLT
00000a9d: PUSH2 0x01a1
00000aa0: JUMPI
00000aa1: PUSH1 0x04
00000aa3: CALLDATALOAD
00000aa4: PUSH4 0xffffffff
00000aa9: PUSH1 0xe0
00000aab: SHL
00000aac: DUP2
00000aad: AND
00000aae: DUP1
00000aaf: SWAP2
00000ab0: SUB
00000ab1: PUSH2 0x01a1
00000ab4: JUMPI
00000ab5: PUSH1 0x20
00000ab7: SWAP1
00000ab8: PUSH4 0x02711897
00000abd: PUSH1 0xe5
00000abf: SHL
00000ac0: DUP2
00000ac1: EQ
00000ac2: SWAP1
00000ac3: DUP2
00000ac4: ISZERO
00000ac5: PUSH2 0x0ad4
00000ac8: JUMPI
00000ac9: JUMPDEST
00000aca: POP
00000acb: PUSH1 0x40
00000acd: MLOAD
00000ace: SWAP1
00000acf: ISZERO
00000ad0: ISZERO
00000ad1: DUP2
00000ad2: MSTORE
00000ad3: RETURN
00000ad4: JUMPDEST
00000ad5: PUSH4 0x7965db0b
00000ada: PUSH1 0xe0
00000adc: SHL
00000add: DUP2
00000ade: EQ
00000adf: SWAP2
00000ae0: POP
00000ae1: DUP2
00000ae2: ISZERO
00000ae3: PUSH2 0x0aee
00000ae6: JUMPI
00000ae7: JUMPDEST
00000ae8: POP
00000ae9: DUP3
00000aea: PUSH2 0x0ac9
00000aed: JUMP
00000aee: JUMPDEST
00000aef: PUSH4 0x01ffc9a7
00000af4: PUSH1 0xe0
00000af6: SHL
00000af7: EQ
00000af8: SWAP1
00000af9: POP
00000afa: DUP3
00000afb: PUSH2 0x0ae7
00000afe: JUMP
00000aff: JUMPDEST
00000b00: CALLVALUE
00000b01: PUSH2 0x01a1
00000b04: JUMPI
00000b05: PUSH1 0xc0
00000b07: CALLDATASIZE
00000b08: PUSH1 0x03
00000b0a: NOT
00000b0b: ADD
00000b0c: SLT
00000b0d: PUSH2 0x01a1
00000b10: JUMPI
00000b11: PUSH2 0x0b18
00000b14: PUSH2 0x0c00
00000b17: JUMP
00000b18: JUMPDEST
00000b19: PUSH1 0x24
00000b1b: CALLDATALOAD
00000b1c: SWAP1
00000b1d: PUSH1 0x44
00000b1f: CALLDATALOAD
00000b20: PUSH1 0x01
00000b22: PUSH1 0x01
00000b24: PUSH1 0x40
00000b26: SHL
00000b27: SUB
00000b28: DUP2
00000b29: GT
00000b2a: PUSH2 0x01a1
00000b2d: JUMPI
00000b2e: PUSH32 0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca
00000b4f: SWAP3
00000b50: PUSH2 0x0b5e
00000b53: PUSH0
00000b54: SWAP3
00000b55: CALLDATASIZE
00000b56: SWAP1
00000b57: PUSH1 0x04
00000b59: ADD
00000b5a: PUSH2 0x0c2c
00000b5d: JUMP
00000b5e: JUMPDEST
00000b5f: SWAP5
00000b60: SWAP1
00000b61: SWAP2
00000b62: PUSH1 0x64
00000b64: CALLDATALOAD
00000b65: SWAP5
00000b66: PUSH2 0x0bda
00000b69: PUSH1 0x84
00000b6b: CALLDATALOAD
00000b6c: SWAP7
00000b6d: PUSH1 0xa4
00000b6f: CALLDATALOAD
00000b70: SWAP1
00000b71: PUSH2 0x0b79
00000b74: CALLER
00000b75: PUSH2 0x156f
00000b78: JUMP
00000b79: JUMPDEST
00000b7a: PUSH2 0x0b87
00000b7d: DUP10
00000b7e: DUP3
00000b7f: DUP13
00000b80: DUP11
00000b81: DUP10
00000b82: DUP10
00000b83: PUSH2 0x0f67
00000b86: JUMP
00000b87: JUMPDEST
00000b88: PUSH4 0x7aea5b6f
00000b8d: PUSH1 0xe1
00000b8f: SHL
00000b90: PUSH1 0x01
00000b92: PUSH1 0x01
00000b94: PUSH1 0xe0
00000b96: SHL
00000b97: SUB
00000b98: NOT
00000b99: PUSH2 0x0ba2
00000b9c: DUP14
00000b9d: DUP12
00000b9e: PUSH2 0x0e42
00000ba1: JUMP
00000ba2: JUMPDEST
00000ba3: AND
00000ba4: EQ
00000ba5: PUSH2 0x0be4
00000ba8: JUMPI
00000ba9: JUMPDEST
00000baa: POP
00000bab: PUSH2 0x0bb3
00000bae: CALLER
00000baf: PUSH2 0x156f
00000bb2: JUMP
00000bb3: JUMPDEST
00000bb4: PUSH2 0x0bc1
00000bb7: DUP10
00000bb8: DUP3
00000bb9: DUP13
00000bba: DUP11
00000bbb: DUP10
00000bbc: DUP10
00000bbd: PUSH2 0x0f67
00000bc0: JUMP
00000bc1: JUMPDEST
00000bc2: SWAP10
00000bc3: DUP11
00000bc4: SWAP8
00000bc5: PUSH2 0x0bce
00000bc8: DUP5
00000bc9: DUP11
00000bca: PUSH2 0x18f4
00000bcd: JUMP
00000bce: JUMPDEST
00000bcf: PUSH1 0x40
00000bd1: MLOAD
00000bd2: SWAP7
00000bd3: DUP8
00000bd4: SWAP7
00000bd5: DUP8
00000bd6: PUSH2 0x1537
00000bd9: JUMP
00000bda: JUMPDEST
00000bdb: SUB
00000bdc: SWAP1
00000bdd: LOG3
00000bde: DUP1
00000bdf: PUSH2 0x066e
00000be2: JUMPI
00000be3: STOP
00000be4: JUMPDEST
00000be5: DUP9
00000be6: MSTORE
00000be7: PUSH1 0x03
00000be9: PUSH1 0x20
00000beb: MSTORE
00000bec: PUSH1 0x40
00000bee: DUP9
00000bef: KECCAK256
00000bf0: DUP1
00000bf1: SLOAD
00000bf2: PUSH1 0xff
00000bf4: NOT
00000bf5: AND
00000bf6: PUSH1 0x01
00000bf8: OR
00000bf9: SWAP1
00000bfa: SSTORE
00000bfb: DUP11
00000bfc: PUSH2 0x0ba9
00000bff: JUMP
00000c00: JUMPDEST
00000c01: PUSH1 0x04
00000c03: CALLDATALOAD
00000c04: SWAP1
00000c05: PUSH1 0x01
00000c07: PUSH1 0x01
00000c09: PUSH1 0xa0
00000c0b: SHL
00000c0c: SUB
00000c0d: DUP3
00000c0e: AND
00000c0f: DUP3
00000c10: SUB
00000c11: PUSH2 0x01a1
00000c14: JUMPI
00000c15: JUMP
00000c16: JUMPDEST
00000c17: PUSH1 0x24
00000c19: CALLDATALOAD
00000c1a: SWAP1
00000c1b: PUSH1 0x01
00000c1d: PUSH1 0x01
00000c1f: PUSH1 0xa0
00000c21: SHL
00000c22: SUB
00000c23: DUP3
00000c24: AND
00000c25: DUP3
00000c26: SUB
00000c27: PUSH2 0x01a1
00000c2a: JUMPI
00000c2b: JUMP
00000c2c: JUMPDEST
00000c2d: SWAP2
00000c2e: DUP2
00000c2f: PUSH1 0x1f
00000c31: DUP5
00000c32: ADD
00000c33: SLT
00000c34: ISZERO
00000c35: PUSH2 0x01a1
00000c38: JUMPI
00000c39: DUP3
00000c3a: CALLDATALOAD
00000c3b: SWAP2
00000c3c: PUSH1 0x01
00000c3e: PUSH1 0x01
00000c40: PUSH1 0x40
00000c42: SHL
00000c43: SUB
00000c44: DUP4
00000c45: GT
00000c46: PUSH2 0x01a1
00000c49: JUMPI
00000c4a: PUSH1 0x20
00000c4c: DUP4
00000c4d: DUP2
00000c4e: DUP7
00000c4f: ADD
00000c50: SWAP6
00000c51: ADD
00000c52: ADD
00000c53: GT
00000c54: PUSH2 0x01a1
00000c57: JUMPI
00000c58: JUMP
00000c59: JUMPDEST
00000c5a: PUSH1 0xa0
00000c5c: PUSH1 0x03
00000c5e: NOT
00000c5f: DUP3
00000c60: ADD
00000c61: SLT
00000c62: PUSH2 0x01a1
00000c65: JUMPI
00000c66: PUSH1 0x04
00000c68: CALLDATALOAD
00000c69: PUSH1 0x01
00000c6b: PUSH1 0x01
00000c6d: PUSH1 0xa0
00000c6f: SHL
00000c70: SUB
00000c71: DUP2
00000c72: AND
00000c73: DUP2
00000c74: SUB
00000c75: PUSH2 0x01a1
00000c78: JUMPI
00000c79: SWAP2
00000c7a: PUSH1 0x24
00000c7c: CALLDATALOAD
00000c7d: SWAP2
00000c7e: PUSH1 0x44
00000c80: CALLDATALOAD
00000c81: SWAP1
00000c82: PUSH1 0x01
00000c84: PUSH1 0x01
00000c86: PUSH1 0x40
00000c88: SHL
00000c89: SUB
00000c8a: DUP3
00000c8b: GT
00000c8c: PUSH2 0x01a1
00000c8f: JUMPI
00000c90: PUSH2 0x0c9b
00000c93: SWAP2
00000c94: PUSH1 0x04
00000c96: ADD
00000c97: PUSH2 0x0c2c
00000c9a: JUMP
00000c9b: JUMPDEST
00000c9c: SWAP1
00000c9d: SWAP2
00000c9e: PUSH1 0x64
00000ca0: CALLDATALOAD
00000ca1: SWAP1
00000ca2: PUSH1 0x84
00000ca4: CALLDATALOAD
00000ca5: SWAP1
00000ca6: JUMP
00000ca7: JUMPDEST
00000ca8: SWAP1
00000ca9: PUSH1 0x1f
00000cab: DUP1
00000cac: NOT
00000cad: SWAP2
00000cae: ADD
00000caf: AND
00000cb0: DUP2
00000cb1: ADD
00000cb2: SWAP1
00000cb3: DUP2
00000cb4: LT
00000cb5: PUSH1 0x01
00000cb7: PUSH1 0x01
00000cb9: PUSH1 0x40
00000cbb: SHL
00000cbc: SUB
00000cbd: DUP3
00000cbe: GT
00000cbf: OR
00000cc0: PUSH2 0x0cc8
00000cc3: JUMPI
00000cc4: PUSH1 0x40
00000cc6: MSTORE
00000cc7: JUMP
00000cc8: JUMPDEST
00000cc9: PUSH4 0x4e487b71
00000cce: PUSH1 0xe0
00000cd0: SHL
00000cd1: PUSH0
00000cd2: MSTORE
00000cd3: PUSH1 0x41
00000cd5: PUSH1 0x04
00000cd7: MSTORE
00000cd8: PUSH1 0x24
00000cda: PUSH0
00000cdb: REVERT
00000cdc: JUMPDEST
00000cdd: PUSH1 0x01
00000cdf: PUSH1 0x01
00000ce1: PUSH1 0x40
00000ce3: SHL
00000ce4: SUB
00000ce5: DUP2
00000ce6: GT
00000ce7: PUSH2 0x0cc8
00000cea: JUMPI
00000ceb: PUSH1 0x1f
00000ced: ADD
00000cee: PUSH1 0x1f
00000cf0: NOT
00000cf1: AND
00000cf2: PUSH1 0x20
00000cf4: ADD
00000cf5: SWAP1
00000cf6: JUMP
00000cf7: JUMPDEST
00000cf8: DUP2
00000cf9: PUSH1 0x1f
00000cfb: DUP3
00000cfc: ADD
00000cfd: SLT
00000cfe: ISZERO
00000cff: PUSH2 0x01a1
00000d02: JUMPI
00000d03: DUP1
00000d04: CALLDATALOAD
00000d05: SWAP1
00000d06: PUSH2 0x0d0e
00000d09: DUP3
00000d0a: PUSH2 0x0cdc
00000d0d: JUMP
00000d0e: JUMPDEST
00000d0f: SWAP3
00000d10: PUSH2 0x0d1c
00000d13: PUSH1 0x40
00000d15: MLOAD
00000d16: SWAP5
00000d17: DUP6
00000d18: PUSH2 0x0ca7
00000d1b: JUMP
00000d1c: JUMPDEST
00000d1d: DUP3
00000d1e: DUP5
00000d1f: MSTORE
00000d20: PUSH1 0x20
00000d22: DUP4
00000d23: DUP4
00000d24: ADD
00000d25: ADD
00000d26: GT
00000d27: PUSH2 0x01a1
00000d2a: JUMPI
00000d2b: DUP2
00000d2c: PUSH0
00000d2d: SWAP3
00000d2e: PUSH1 0x20
00000d30: DUP1
00000d31: SWAP4
00000d32: ADD
00000d33: DUP4
00000d34: DUP7
00000d35: ADD
00000d36: CALLDATACOPY
00000d37: DUP4
00000d38: ADD
00000d39: ADD
00000d3a: MSTORE
00000d3b: SWAP1
00000d3c: JUMP
00000d3d: JUMPDEST
00000d3e: SWAP2
00000d3f: DUP2
00000d40: PUSH1 0x1f
00000d42: DUP5
00000d43: ADD
00000d44: SLT
00000d45: ISZERO
00000d46: PUSH2 0x01a1
00000d49: JUMPI
00000d4a: DUP3
00000d4b: CALLDATALOAD
00000d4c: SWAP2
00000d4d: PUSH1 0x01
00000d4f: PUSH1 0x01
00000d51: PUSH1 0x40
00000d53: SHL
00000d54: SUB
00000d55: DUP4
00000d56: GT
00000d57: PUSH2 0x01a1
00000d5a: JUMPI
00000d5b: PUSH1 0x20
00000d5d: DUP1
00000d5e: DUP6
00000d5f: ADD
00000d60: SWAP5
00000d61: DUP5
00000d62: PUSH1 0x05
00000d64: SHL
00000d65: ADD
00000d66: ADD
00000d67: GT
00000d68: PUSH2 0x01a1
00000d6b: JUMPI
00000d6c: JUMP
00000d6d: JUMPDEST
00000d6e: PUSH1 0xa0
00000d70: PUSH1 0x03
00000d72: NOT
00000d73: DUP3
00000d74: ADD
00000d75: SLT
00000d76: PUSH2 0x01a1
00000d79: JUMPI
00000d7a: PUSH1 0x04
00000d7c: CALLDATALOAD
00000d7d: PUSH1 0x01
00000d7f: PUSH1 0x01
00000d81: PUSH1 0x40
00000d83: SHL
00000d84: SUB
00000d85: DUP2
00000d86: GT
00000d87: PUSH2 0x01a1
00000d8a: JUMPI
00000d8b: DUP2
00000d8c: PUSH2 0x0d97
00000d8f: SWAP2
00000d90: PUSH1 0x04
00000d92: ADD
00000d93: PUSH2 0x0d3d
00000d96: JUMP
00000d97: JUMPDEST
00000d98: SWAP3
00000d99: SWAP1
00000d9a: SWAP3
00000d9b: SWAP2
00000d9c: PUSH1 0x24
00000d9e: CALLDATALOAD
00000d9f: PUSH1 0x01
00000da1: PUSH1 0x01
00000da3: PUSH1 0x40
00000da5: SHL
00000da6: SUB
00000da7: DUP2
00000da8: GT
00000da9: PUSH2 0x01a1
00000dac: JUMPI
00000dad: DUP2
00000dae: PUSH2 0x0db9
00000db1: SWAP2
00000db2: PUSH1 0x04
00000db4: ADD
00000db5: PUSH2 0x0d3d
00000db8: JUMP
00000db9: JUMPDEST
00000dba: SWAP3
00000dbb: SWAP1
00000dbc: SWAP3
00000dbd: SWAP2
00000dbe: PUSH1 0x44
00000dc0: CALLDATALOAD
00000dc1: SWAP1
00000dc2: PUSH1 0x01
00000dc4: PUSH1 0x01
00000dc6: PUSH1 0x40
00000dc8: SHL
00000dc9: SUB
00000dca: DUP3
00000dcb: GT
00000dcc: PUSH2 0x01a1
00000dcf: JUMPI
00000dd0: PUSH2 0x0c9b
00000dd3: SWAP2
00000dd4: PUSH1 0x04
00000dd6: ADD
00000dd7: PUSH2 0x0d3d
00000dda: JUMP
00000ddb: JUMPDEST
00000ddc: SWAP1
00000ddd: DUP1
00000dde: PUSH1 0x1f
00000de0: DUP4
00000de1: ADD
00000de2: SLT
00000de3: ISZERO
00000de4: PUSH2 0x01a1
00000de7: JUMPI
00000de8: DUP2
00000de9: CALLDATALOAD
00000dea: SWAP2
00000deb: PUSH1 0x01
00000ded: PUSH1 0x01
00000def: PUSH1 0x40
00000df1: SHL
00000df2: SUB
00000df3: DUP4
00000df4: GT
00000df5: PUSH2 0x0cc8
00000df8: JUMPI
00000df9: DUP3
00000dfa: PUSH1 0x05
00000dfc: SHL
00000dfd: SWAP1
00000dfe: PUSH1 0x40
00000e00: MLOAD
00000e01: SWAP4
00000e02: PUSH2 0x0e0e
00000e05: PUSH1 0x20
00000e07: DUP5
00000e08: ADD
00000e09: DUP7
00000e0a: PUSH2 0x0ca7
00000e0d: JUMP
00000e0e: JUMPDEST
00000e0f: DUP5
00000e10: MSTORE
00000e11: PUSH1 0x20
00000e13: DUP1
00000e14: DUP6
00000e15: ADD
00000e16: SWAP3
00000e17: DUP3
00000e18: ADD
00000e19: ADD
00000e1a: SWAP3
00000e1b: DUP4
00000e1c: GT
00000e1d: PUSH2 0x01a1
00000e20: JUMPI
00000e21: PUSH1 0x20
00000e23: ADD
00000e24: SWAP1
00000e25: JUMPDEST
00000e26: DUP3
00000e27: DUP3
00000e28: LT
00000e29: PUSH2 0x0e32
00000e2c: JUMPI
00000e2d: POP
00000e2e: POP
00000e2f: POP
00000e30: SWAP1
00000e31: JUMP
00000e32: JUMPDEST
00000e33: DUP2
00000e34: CALLDATALOAD
00000e35: DUP2
00000e36: MSTORE
00000e37: PUSH1 0x20
00000e39: SWAP2
00000e3a: DUP3
00000e3b: ADD
00000e3c: SWAP2
00000e3d: ADD
00000e3e: PUSH2 0x0e25
00000e41: JUMP
00000e42: JUMPDEST
00000e43: CALLDATALOAD
00000e44: PUSH1 0x01
00000e46: PUSH1 0x01
00000e48: PUSH1 0xe0
00000e4a: SHL
00000e4b: SUB
00000e4c: NOT
00000e4d: DUP2
00000e4e: AND
00000e4f: SWAP3
00000e50: SWAP2
00000e51: SWAP1
00000e52: PUSH1 0x04
00000e54: DUP3
00000e55: LT
00000e56: PUSH2 0x0e5d
00000e59: JUMPI
00000e5a: POP
00000e5b: POP
00000e5c: JUMP
00000e5d: JUMPDEST
00000e5e: PUSH1 0x01
00000e60: PUSH1 0x01
00000e62: PUSH1 0xe0
00000e64: SHL
00000e65: SUB
00000e66: NOT
00000e67: PUSH1 0x04
00000e69: SWAP3
00000e6a: SWAP1
00000e6b: SWAP3
00000e6c: SUB
00000e6d: PUSH1 0x03
00000e6f: SHL
00000e70: DUP3
00000e71: SWAP1
00000e72: SHL
00000e73: AND
00000e74: AND
00000e75: SWAP2
00000e76: POP
00000e77: JUMP
00000e78: JUMPDEST
00000e79: SWAP1
00000e7a: DUP1
00000e7b: PUSH1 0x20
00000e7d: SWAP4
00000e7e: SWAP3
00000e7f: DUP2
00000e80: DUP5
00000e81: MSTORE
00000e82: DUP5
00000e83: DUP5
00000e84: ADD
00000e85: CALLDATACOPY
00000e86: PUSH0
00000e87: DUP3
00000e88: DUP3
00000e89: ADD
00000e8a: DUP5
00000e8b: ADD
00000e8c: MSTORE
00000e8d: PUSH1 0x1f
00000e8f: ADD
00000e90: PUSH1 0x1f
00000e92: NOT
00000e93: AND
00000e94: ADD
00000e95: ADD
00000e96: SWAP1
00000e97: JUMP
00000e98: JUMPDEST
00000e99: PUSH2 0x0ebc
00000e9c: SWAP5
00000e9d: SWAP3
00000e9e: PUSH1 0x60
00000ea0: SWAP3
00000ea1: PUSH1 0x01
00000ea3: DUP1
00000ea4: PUSH1 0xa0
00000ea6: SHL
00000ea7: SUB
00000ea8: AND
00000ea9: DUP3
00000eaa: MSTORE
00000eab: PUSH1 0x20
00000ead: DUP3
00000eae: ADD
00000eaf: MSTORE
00000eb0: DUP2
00000eb1: PUSH1 0x40
00000eb3: DUP3
00000eb4: ADD
00000eb5: MSTORE
00000eb6: ADD
00000eb7: SWAP2
00000eb8: PUSH2 0x0e78
00000ebb: JUMP
00000ebc: JUMPDEST
00000ebd: SWAP1
00000ebe: JUMP
00000ebf: JUMPDEST
00000ec0: PUSH2 0x0ec8
00000ec3: SWAP1
00000ec4: PUSH2 0x0f2f
00000ec7: JUMP
00000ec8: JUMPDEST
00000ec9: PUSH1 0x04
00000ecb: DUP2
00000ecc: LT
00000ecd: ISZERO
00000ece: PUSH2 0x07cd
00000ed1: JUMPI
00000ed2: PUSH1 0x02
00000ed4: EQ
00000ed5: SWAP1
00000ed6: JUMP
00000ed7: JUMPDEST
00000ed8: PUSH2 0x0ee0
00000edb: SWAP1
00000edc: PUSH2 0x0f2f
00000edf: JUMP
00000ee0: JUMPDEST
00000ee1: PUSH1 0x04
00000ee3: DUP2
00000ee4: LT
00000ee5: ISZERO
00000ee6: PUSH2 0x07cd
00000ee9: JUMPI
00000eea: PUSH1 0x03
00000eec: EQ
00000eed: SWAP1
00000eee: JUMP
00000eef: JUMPDEST
00000ef0: PUSH2 0x0ef8
00000ef3: SWAP1
00000ef4: PUSH2 0x0f2f
00000ef7: JUMP
00000ef8: JUMPDEST
00000ef9: PUSH1 0x04
00000efb: DUP2
00000efc: LT
00000efd: ISZERO
00000efe: PUSH2 0x07cd
00000f01: JUMPI
00000f02: ISZERO
00000f03: ISZERO
00000f04: SWAP1
00000f05: JUMP
00000f06: JUMPDEST
00000f07: PUSH2 0x0f0f
00000f0a: SWAP1
00000f0b: PUSH2 0x0f2f
00000f0e: JUMP
00000f0f: JUMPDEST
00000f10: PUSH1 0x04
00000f12: DUP2
00000f13: LT
00000f14: ISZERO
00000f15: PUSH2 0x07cd
00000f18: JUMPI
00000f19: PUSH1 0x01
00000f1b: DUP2
00000f1c: EQ
00000f1d: SWAP1
00000f1e: DUP2
00000f1f: ISZERO
00000f20: PUSH2 0x0f27
00000f23: JUMPI
00000f24: POP
00000f25: SWAP1
00000f26: JUMP
00000f27: JUMPDEST
00000f28: PUSH1 0x02
00000f2a: SWAP2
00000f2b: POP
00000f2c: EQ
00000f2d: SWAP1
00000f2e: JUMP
00000f2f: JUMPDEST
00000f30: PUSH0
00000f31: MSTORE
00000f32: PUSH1 0x01
00000f34: PUSH1 0x20
00000f36: MSTORE
00000f37: PUSH1 0x40
00000f39: PUSH0
00000f3a: KECCAK256
00000f3b: SLOAD
00000f3c: DUP1
00000f3d: ISZERO
00000f3e: PUSH0
00000f3f: EQ
00000f40: PUSH2 0x0f48
00000f43: JUMPI
00000f44: POP
00000f45: PUSH0
00000f46: SWAP1
00000f47: JUMP
00000f48: JUMPDEST
00000f49: PUSH1 0x01
00000f4b: DUP2
00000f4c: SUB
00000f4d: PUSH2 0x0f56
00000f50: JUMPI
00000f51: POP
00000f52: PUSH1 0x03
00000f54: SWAP1
00000f55: JUMP
00000f56: JUMPDEST
00000f57: TIMESTAMP
00000f58: LT
00000f59: ISZERO
00000f5a: PUSH2 0x0f62
00000f5d: JUMPI
00000f5e: PUSH1 0x01
00000f60: SWAP1
00000f61: JUMP
00000f62: JUMPDEST
00000f63: PUSH1 0x02
00000f65: SWAP1
00000f66: JUMP
00000f67: JUMPDEST
00000f68: SWAP5
00000f69: PUSH2 0x0f9d
00000f6c: PUSH2 0x0fb6
00000f6f: SWAP5
00000f70: SWAP6
00000f71: SWAP3
00000f72: SWAP4
00000f73: PUSH1 0x40
00000f75: MLOAD
00000f76: SWAP7
00000f77: DUP8
00000f78: SWAP6
00000f79: PUSH1 0x20
00000f7b: DUP8
00000f7c: ADD
00000f7d: SWAP10
00000f7e: PUSH1 0x01
00000f80: DUP1
00000f81: PUSH1 0xa0
00000f83: SHL
00000f84: SUB
00000f85: AND
00000f86: DUP11
00000f87: MSTORE
00000f88: PUSH1 0x40
00000f8a: DUP8
00000f8b: ADD
00000f8c: MSTORE
00000f8d: PUSH1 0xa0
00000f8f: PUSH1 0x60
00000f91: DUP8
00000f92: ADD
00000f93: MSTORE
00000f94: PUSH1 0xc0
00000f96: DUP7
00000f97: ADD
00000f98: SWAP2
00000f99: PUSH2 0x0e78
00000f9c: JUMP
00000f9d: JUMPDEST
00000f9e: SWAP2
00000f9f: PUSH1 0x80
00000fa1: DUP5
00000fa2: ADD
00000fa3: MSTORE
00000fa4: PUSH1 0xa0
00000fa6: DUP4
00000fa7: ADD
00000fa8: MSTORE
00000fa9: SUB
00000faa: PUSH1 0x1f
00000fac: NOT
00000fad: DUP2
00000fae: ADD
00000faf: DUP4
00000fb0: MSTORE
00000fb1: DUP3
00000fb2: PUSH2 0x0ca7
00000fb5: JUMP
00000fb6: JUMPDEST
00000fb7: MLOAD
00000fb8: SWAP1
00000fb9: KECCAK256
00000fba: SWAP1
00000fbb: JUMP
00000fbc: JUMPDEST
00000fbd: SWAP2
00000fbe: SWAP1
00000fbf: DUP2
00000fc0: LT
00000fc1: ISZERO
00000fc2: PUSH2 0x0ffd
00000fc5: JUMPI
00000fc6: PUSH1 0x05
00000fc8: SHL
00000fc9: DUP2
00000fca: ADD
00000fcb: CALLDATALOAD
00000fcc: SWAP1
00000fcd: PUSH1 0x1e
00000fcf: NOT
00000fd0: DUP2
00000fd1: CALLDATASIZE
00000fd2: SUB
00000fd3: ADD
00000fd4: DUP3
00000fd5: SLT
00000fd6: ISZERO
00000fd7: PUSH2 0x01a1
00000fda: JUMPI
00000fdb: ADD
00000fdc: SWAP1
00000fdd: DUP2
00000fde: CALLDATALOAD
00000fdf: SWAP2
00000fe0: PUSH1 0x01
00000fe2: PUSH1 0x01
00000fe4: PUSH1 0x40
00000fe6: SHL
00000fe7: SUB
00000fe8: DUP4
00000fe9: GT
00000fea: PUSH2 0x01a1
00000fed: JUMPI
00000fee: PUSH1 0x20
00000ff0: ADD
00000ff1: DUP3
00000ff2: CALLDATASIZE
00000ff3: SUB
00000ff4: DUP2
00000ff5: SGT
00000ff6: PUSH2 0x01a1
00000ff9: JUMPI
00000ffa: SWAP2
00000ffb: SWAP1
00000ffc: JUMP
00000ffd: JUMPDEST
00000ffe: PUSH4 0x4e487b71
00001003: PUSH1 0xe0
00001005: SHL
00001006: PUSH0
00001007: MSTORE
00001008: PUSH1 0x32
0000100a: PUSH1 0x04
0000100c: MSTORE
0000100d: PUSH1 0x24
0000100f: PUSH0
00001010: REVERT
00001011: JUMPDEST
00001012: SWAP7
00001013: SWAP4
00001014: SWAP5
00001015: SWAP2
00001016: SWAP1
00001017: SWAP7
00001018: SWAP6
00001019: SWAP3
0000101a: SWAP6
0000101b: PUSH1 0x40
0000101d: MLOAD
0000101e: SWAP7
0000101f: PUSH1 0x20
00001021: DUP9
00001022: ADD
00001023: SWAP9
00001024: DUP1
00001025: PUSH1 0xc0
00001027: DUP11
00001028: ADD
00001029: PUSH1 0xa0
0000102b: DUP13
0000102c: MSTORE
0000102d: MSTORE
0000102e: PUSH1 0xe0
00001030: DUP10
00001031: ADD
00001032: SWAP3
00001033: SWAP1
00001034: PUSH0
00001035: SWAP1
00001036: JUMPDEST
00001037: DUP1
00001038: DUP3
00001039: LT
0000103a: PUSH2 0x112d
0000103d: JUMPI
0000103e: POP
0000103f: POP
00001040: POP
00001041: DUP8
00001042: DUP3
00001043: SUB
00001044: PUSH1 0x1f
00001046: NOT
00001047: ADD
00001048: PUSH1 0x40
0000104a: DUP10
0000104b: ADD
0000104c: MSTORE
0000104d: DUP1
0000104e: DUP3
0000104f: MSTORE
00001050: PUSH1 0x01
00001052: PUSH1 0x01
00001054: PUSH1 0xfb
00001056: SHL
00001057: SUB
00001058: DUP2
00001059: GT
0000105a: PUSH2 0x01a1
0000105d: JUMPI
0000105e: SWAP1
0000105f: DUP8
00001060: SWAP6
00001061: SWAP4
00001062: SWAP5
00001063: SWAP3
00001064: SWAP2
00001065: PUSH1 0x05
00001067: SHL
00001068: DUP1
00001069: SWAP3
0000106a: PUSH1 0x20
0000106c: DUP4
0000106d: ADD
0000106e: CALLDATACOPY
0000106f: ADD
00001070: DUP5
00001071: DUP2
00001072: SUB
00001073: PUSH1 0x60
00001075: DUP7
00001076: ADD
00001077: MSTORE
00001078: PUSH1 0x20
0000107a: DUP2
0000107b: ADD
0000107c: DUP5
0000107d: SWAP1
0000107e: MSTORE
0000107f: PUSH1 0x05
00001081: DUP5
00001082: SWAP1
00001083: SHL
00001084: DUP2
00001085: ADD
00001086: PUSH1 0x40
00001088: SWAP1
00001089: DUP2
0000108a: ADD
0000108b: SWAP5
0000108c: SWAP1
0000108d: DUP3
0000108e: ADD
0000108f: SWAP2
00001090: PUSH0
00001091: SWAP1
00001092: DUP9
00001093: SWAP1
00001094: CALLDATASIZE
00001095: DUP3
00001096: SWAP1
00001097: SUB
00001098: PUSH1 0x1e
0000109a: NOT
0000109b: ADD
0000109c: SWAP1
0000109d: JUMPDEST
0000109e: DUP5
0000109f: DUP5
000010a0: LT
000010a1: PUSH2 0x10c7
000010a4: JUMPI
000010a5: POP
000010a6: POP
000010a7: POP
000010a8: POP
000010a9: POP
000010aa: POP
000010ab: PUSH2 0x0fb6
000010ae: SWAP5
000010af: POP
000010b0: PUSH1 0x80
000010b2: DUP5
000010b3: ADD
000010b4: MSTORE
000010b5: PUSH1 0xa0
000010b7: DUP4
000010b8: ADD
000010b9: MSTORE
000010ba: SUB
000010bb: PUSH1 0x1f
000010bd: NOT
000010be: DUP2
000010bf: ADD
000010c0: DUP4
000010c1: MSTORE
000010c2: DUP3
000010c3: PUSH2 0x0ca7
000010c6: JUMP
000010c7: JUMPDEST
000010c8: SWAP2
000010c9: SWAP4
000010ca: SWAP6
000010cb: SWAP8
000010cc: SWAP1
000010cd: SWAP3
000010ce: SWAP5
000010cf: SWAP7
000010d0: SWAP9
000010d1: POP
000010d2: PUSH1 0x1f
000010d4: NOT
000010d5: PUSH1 0x1f
000010d7: NOT
000010d8: DUP4
000010d9: DUP4
000010da: SUB
000010db: ADD
000010dc: ADD
000010dd: DUP8
000010de: MSTORE
000010df: DUP10
000010e0: CALLDATALOAD
000010e1: DUP4
000010e2: DUP2
000010e3: SLT
000010e4: ISZERO
000010e5: PUSH2 0x01a1
000010e8: JUMPI
000010e9: DUP5
000010ea: ADD
000010eb: SWAP1
000010ec: PUSH1 0x20
000010ee: DUP3
000010ef: CALLDATALOAD
000010f0: SWAP3
000010f1: ADD
000010f2: SWAP2
000010f3: PUSH1 0x01
000010f5: PUSH1 0x01
000010f7: PUSH1 0x40
000010f9: SHL
000010fa: SUB
000010fb: DUP2
000010fc: GT
000010fd: PUSH2 0x01a1
00001100: JUMPI
00001101: DUP1
00001102: CALLDATASIZE
00001103: SUB
00001104: DUP4
00001105: SGT
00001106: PUSH2 0x01a1
00001109: JUMPI
0000110a: PUSH2 0x1119
0000110d: PUSH1 0x20
0000110f: SWAP3
00001110: DUP4
00001111: SWAP3
00001112: PUSH1 0x01
00001114: SWAP6
00001115: PUSH2 0x0e78
00001118: JUMP
00001119: JUMPDEST
0000111a: SWAP12
0000111b: ADD
0000111c: SWAP8
0000111d: ADD
0000111e: SWAP5
0000111f: ADD
00001120: SWAP2
00001121: DUP11
00001122: SWAP9
00001123: SWAP7
00001124: SWAP10
00001125: SWAP8
00001126: SWAP6
00001127: SWAP4
00001128: SWAP2
00001129: PUSH2 0x109d
0000112c: JUMP
0000112d: JUMPDEST
0000112e: SWAP2
0000112f: SWAP4
00001130: SWAP1
00001131: SWAP2
00001132: SWAP1
00001133: DUP5
00001134: CALLDATALOAD
00001135: SWAP1
00001136: PUSH1 0x01
00001138: PUSH1 0x01
0000113a: PUSH1 0xa0
0000113c: SHL
0000113d: SUB
0000113e: DUP3
0000113f: AND
00001140: DUP3
00001141: SUB
00001142: PUSH2 0x01a1
00001145: JUMPI
00001146: PUSH1 0x01
00001148: PUSH1 0x01
0000114a: PUSH1 0xa0
0000114c: SHL
0000114d: SUB
0000114e: SWAP1
0000114f: SWAP2
00001150: AND
00001151: DUP2
00001152: MSTORE
00001153: PUSH1 0x20
00001155: SWAP1
00001156: DUP2
00001157: ADD
00001158: SWAP5
00001159: ADD
0000115a: SWAP2
0000115b: PUSH1 0x01
0000115d: ADD
0000115e: SWAP1
0000115f: PUSH2 0x1036
00001162: JUMP
00001163: JUMPDEST
00001164: SWAP1
00001165: DUP2
00001166: PUSH1 0x20
00001168: SWAP2
00001169: SUB
0000116a: SLT
0000116b: PUSH2 0x01a1
0000116e: JUMPI
0000116f: MLOAD
00001170: DUP1
00001171: ISZERO
00001172: ISZERO
00001173: DUP2
00001174: SUB
00001175: PUSH2 0x01a1
00001178: JUMPI
00001179: SWAP1
0000117a: JUMP
0000117b: JUMPDEST
0000117c: DUP1
0000117d: PUSH0
0000117e: MSTORE
0000117f: PUSH1 0x03
00001181: PUSH1 0x20
00001183: MSTORE
00001184: PUSH1 0xff
00001186: PUSH1 0x40
00001188: PUSH0
00001189: KECCAK256
0000118a: SLOAD
0000118b: AND
0000118c: PUSH2 0x13c6
0000118f: JUMPI
00001190: CALLER
00001191: PUSH0
00001192: SWAP1
00001193: DUP2
00001194: MSTORE
00001195: PUSH0
00001196: MLOAD
00001197: PUSH1 0x20
00001199: PUSH2 0x1990
0000119c: PUSH0
0000119d: CODECOPY
0000119e: PUSH0
0000119f: MLOAD
000011a0: SWAP1
000011a1: PUSH0
000011a2: MSTORE
000011a3: PUSH1 0x20
000011a5: MSTORE
000011a6: PUSH1 0x40
000011a8: SWAP1
000011a9: KECCAK256
000011aa: SLOAD
000011ab: PUSH1 0xff
000011ad: AND
000011ae: DUP1
000011af: PUSH2 0x12e2
000011b2: JUMPI
000011b3: JUMPDEST
000011b4: PUSH2 0x12d9
000011b7: JUMPI
000011b8: CALLER
000011b9: PUSH0
000011ba: SWAP1
000011bb: DUP2
000011bc: MSTORE
000011bd: PUSH0
000011be: MLOAD
000011bf: PUSH1 0x20
000011c1: PUSH2 0x1990
000011c4: PUSH0
000011c5: CODECOPY
000011c6: PUSH0
000011c7: MLOAD
000011c8: SWAP1
000011c9: PUSH0
000011ca: MSTORE
000011cb: PUSH1 0x20
000011cd: MSTORE
000011ce: PUSH1 0x40
000011d0: SWAP1
000011d1: KECCAK256
000011d2: SLOAD
000011d3: PUSH1 0xff
000011d5: AND
000011d6: DUP1
000011d7: PUSH2 0x1245
000011da: JUMPI
000011db: JUMPDEST
000011dc: ISZERO
000011dd: PUSH2 0x0833
000011e0: JUMPI
000011e1: PUSH2 0x11e9
000011e4: CALLER
000011e5: PUSH2 0x1668
000011e8: JUMP
000011e9: JUMPDEST
000011ea: PUSH2 0x11f2
000011ed: DUP2
000011ee: PUSH2 0x0f06
000011f1: JUMP
000011f2: JUMPDEST
000011f3: ISZERO
000011f4: PUSH2 0x122b
000011f7: JUMPI
000011f8: DUP1
000011f9: PUSH0
000011fa: MSTORE
000011fb: PUSH1 0x01
000011fd: PUSH1 0x20
000011ff: MSTORE
00001200: PUSH0
00001201: PUSH1 0x40
00001203: DUP2
00001204: KECCAK256
00001205: SSTORE
00001206: PUSH32 0xbaa1eb22f2a492ba1a5fea61b8df4d27c6c8b5f3971e63bb58fa14ff72eedb70
00001227: PUSH0
00001228: DUP1
00001229: LOG2
0000122a: JUMP
0000122b: JUMPDEST
0000122c: PUSH4 0x5ead8eb5
00001231: PUSH1 0xe0
00001233: SHL
00001234: PUSH0
00001235: MSTORE
00001236: PUSH1 0x04
00001238: MSTORE
00001239: PUSH1 0x04
0000123b: PUSH1 0x02
0000123d: OR
0000123e: PUSH1 0x24
00001240: MSTORE
00001241: PUSH1 0x44
00001243: PUSH0
00001244: REVERT
00001245: JUMPDEST
00001246: POP
00001247: PUSH1 0x40
00001249: MLOAD
0000124a: PUSH4 0x1f33573f
0000124f: PUSH1 0xe3
00001251: SHL
00001252: DUP2
00001253: MSTORE
00001254: CALLER
00001255: PUSH1 0x04
00001257: DUP3
00001258: ADD
00001259: MSTORE
0000125a: PUSH1 0x20
0000125c: DUP2
0000125d: PUSH1 0x24
0000125f: DUP2
00001260: PUSH32 0x000000000000000000000000f389bcea078acd9516414f5dabe3ddd5f7e39694
00001281: PUSH1 0x01
00001283: PUSH1 0x01
00001285: PUSH1 0xa0
00001287: SHL
00001288: SUB
00001289: AND
0000128a: GAS
0000128b: STATICCALL
0000128c: SWAP1
0000128d: DUP2
0000128e: ISZERO
0000128f: PUSH2 0x12ce
00001292: JUMPI
00001293: PUSH0
00001294: SWAP2
00001295: PUSH2 0x129f
00001298: JUMPI
00001299: JUMPDEST
0000129a: POP
0000129b: PUSH2 0x11db
0000129e: JUMP
0000129f: JUMPDEST
000012a0: PUSH2 0x12c1
000012a3: SWAP2
000012a4: POP
000012a5: PUSH1 0x20
000012a7: RETURNDATASIZE
000012a8: PUSH1 0x20
000012aa: GT
000012ab: PUSH2 0x12c7
000012ae: JUMPI
000012af: JUMPDEST
000012b0: PUSH2 0x12b9
000012b3: DUP2
000012b4: DUP4
000012b5: PUSH2 0x0ca7
000012b8: JUMP
000012b9: JUMPDEST
000012ba: DUP2
000012bb: ADD
000012bc: SWAP1
000012bd: PUSH2 0x1163
000012c0: JUMP
000012c1: JUMPDEST
000012c2: PUSH0
000012c3: PUSH2 0x1299
000012c6: JUMP
000012c7: JUMPDEST
000012c8: POP
000012c9: RETURNDATASIZE
000012ca: PUSH2 0x12af
000012cd: JUMP
000012ce: JUMPDEST
000012cf: PUSH1 0x40
000012d1: MLOAD
000012d2: RETURNDATASIZE
000012d3: PUSH0
000012d4: DUP3
000012d5: RETURNDATACOPY
000012d6: RETURNDATASIZE
000012d7: SWAP1
000012d8: REVERT
000012d9: JUMPDEST
000012da: PUSH2 0x11e9
000012dd: CALLER
000012de: PUSH2 0x1668
000012e1: JUMP
000012e2: JUMPDEST
000012e3: POP
000012e4: PUSH1 0x40
000012e6: MLOAD
000012e7: PUSH4 0x0ccc5749
000012ec: PUSH1 0xe4
000012ee: SHL
000012ef: DUP2
000012f0: MSTORE
000012f1: PUSH32 0x000000000000000000000000f389bcea078acd9516414f5dabe3ddd5f7e39694
00001312: PUSH1 0x01
00001314: PUSH1 0x01
00001316: PUSH1 0xa0
00001318: SHL
00001319: SUB
0000131a: AND
0000131b: SWAP1
0000131c: PUSH1 0x20
0000131e: DUP2
0000131f: PUSH1 0x04
00001321: DUP2
00001322: DUP6
00001323: GAS
00001324: STATICCALL
00001325: SWAP1
00001326: DUP2
00001327: ISZERO
00001328: PUSH2 0x12ce
0000132b: JUMPI
0000132c: PUSH0
0000132d: SWAP2
0000132e: PUSH2 0x1392
00001331: JUMPI
00001332: JUMPDEST
00001333: POP
00001334: PUSH1 0x40
00001336: MLOAD
00001337: PUSH4 0x24745215
0000133c: PUSH1 0xe2
0000133e: SHL
0000133f: DUP2
00001340: MSTORE
00001341: PUSH1 0x04
00001343: DUP2
00001344: ADD
00001345: SWAP2
00001346: SWAP1
00001347: SWAP2
00001348: MSTORE
00001349: CALLER
0000134a: PUSH1 0x24
0000134c: DUP3
0000134d: ADD
0000134e: MSTORE
0000134f: SWAP1
00001350: PUSH1 0x20
00001352: SWAP1
00001353: DUP3
00001354: SWAP1
00001355: DUP2
00001356: DUP1
00001357: PUSH1 0x44
00001359: DUP2
0000135a: ADD
0000135b: JUMPDEST
0000135c: SUB
0000135d: SWAP2
0000135e: GAS
0000135f: STATICCALL
00001360: SWAP1
00001361: DUP2
00001362: ISZERO
00001363: PUSH2 0x12ce
00001366: JUMPI
00001367: PUSH0
00001368: SWAP2
00001369: PUSH2 0x1373
0000136c: JUMPI
0000136d: JUMPDEST
0000136e: POP
0000136f: PUSH2 0x11b3
00001372: JUMP
00001373: JUMPDEST
00001374: PUSH2 0x138c
00001377: SWAP2
00001378: POP
00001379: PUSH1 0x20
0000137b: RETURNDATASIZE
0000137c: PUSH1 0x20
0000137e: GT
0000137f: PUSH2 0x12c7
00001382: JUMPI
00001383: PUSH2 0x12b9
00001386: DUP2
00001387: DUP4
00001388: PUSH2 0x0ca7
0000138b: JUMP
0000138c: JUMPDEST
0000138d: PUSH0
0000138e: PUSH2 0x136d
00001391: JUMP
00001392: JUMPDEST
00001393: SWAP1
00001394: POP
00001395: PUSH1 0x20
00001397: DUP2
00001398: RETURNDATASIZE
00001399: PUSH1 0x20
0000139b: GT
0000139c: PUSH2 0x13be
0000139f: JUMPI
000013a0: JUMPDEST
000013a1: DUP2
000013a2: PUSH2 0x13ad
000013a5: PUSH1 0x20
000013a7: SWAP4
000013a8: DUP4
000013a9: PUSH2 0x0ca7
000013ac: JUMP
000013ad: JUMPDEST
000013ae: DUP2
000013af: ADD
000013b0: SUB
000013b1: SLT
000013b2: PUSH2 0x01a1
000013b5: JUMPI
000013b6: MLOAD
000013b7: PUSH2 0x135b
000013ba: PUSH2 0x1332
000013bd: JUMP
000013be: JUMPDEST
000013bf: RETURNDATASIZE
000013c0: SWAP2
000013c1: POP
000013c2: PUSH2 0x13a0
000013c5: JUMP
000013c6: JUMPDEST
000013c7: PUSH1 0x40
000013c9: MLOAD
000013ca: PUSH4 0x0ccc5749
000013cf: PUSH1 0xe4
000013d1: SHL
000013d2: DUP2
000013d3: MSTORE
000013d4: PUSH32 0x000000000000000000000000f389bcea078acd9516414f5dabe3ddd5f7e39694
000013f5: PUSH1 0x01
000013f7: PUSH1 0x01
000013f9: PUSH1 0xa0
000013fb: SHL
000013fc: SUB
000013fd: AND
000013fe: SWAP1
000013ff: PUSH1 0x20
00001401: DUP2
00001402: PUSH1 0x04
00001404: DUP2
00001405: DUP6
00001406: GAS
00001407: STATICCALL
00001408: SWAP1
00001409: DUP2
0000140a: ISZERO
0000140b: PUSH2 0x12ce
0000140e: JUMPI
0000140f: PUSH0
00001410: SWAP2
00001411: PUSH2 0x14df
00001414: JUMPI
00001415: JUMPDEST
00001416: POP
00001417: PUSH1 0x40
00001419: MLOAD
0000141a: PUSH4 0x24745215
0000141f: PUSH1 0xe2
00001421: SHL
00001422: DUP2
00001423: MSTORE
00001424: PUSH1 0x04
00001426: DUP2
00001427: ADD
00001428: SWAP2
00001429: SWAP1
0000142a: SWAP2
0000142b: MSTORE
0000142c: CALLER
0000142d: PUSH1 0x24
0000142f: DUP3
00001430: ADD
00001431: MSTORE
00001432: SWAP1
00001433: PUSH1 0x20
00001435: SWAP1
00001436: DUP3
00001437: SWAP1
00001438: DUP2
00001439: DUP1
0000143a: PUSH1 0x44
0000143c: DUP2
0000143d: ADD
0000143e: JUMPDEST
0000143f: SUB
00001440: SWAP2
00001441: GAS
00001442: STATICCALL
00001443: SWAP1
00001444: DUP2
00001445: ISZERO
00001446: PUSH2 0x12ce
00001449: JUMPI
0000144a: PUSH0
0000144b: SWAP2
0000144c: PUSH2 0x14c0
0000144f: JUMPI
00001450: JUMPDEST
00001451: POP
00001452: ISZERO
00001453: PUSH2 0x145f
00001456: JUMPI
00001457: PUSH2 0x11e9
0000145a: CALLER
0000145b: PUSH2 0x1668
0000145e: JUMP
0000145f: JUMPDEST
00001460: PUSH1 0x40
00001462: MLOAD
00001463: PUSH3 0x461bcd
00001467: PUSH1 0xe5
00001469: SHL
0000146a: DUP2
0000146b: MSTORE
0000146c: PUSH1 0x20
0000146e: PUSH1 0x04
00001470: DUP3
00001471: ADD
00001472: MSTORE
00001473: PUSH1 0x33
00001475: PUSH1 0x24
00001477: DUP3
00001478: ADD
00001479: MSTORE
0000147a: PUSH32 0x4f6e6c7920676f7665726e6f72732063616e2063616e63656c20677561726469
0000149b: PUSH1 0x44
0000149d: DUP3
0000149e: ADD
0000149f: MSTORE
000014a0: PUSH19 0x616e206578706972792070726f706f73616c73
000014b4: PUSH1 0x68
000014b6: SHL
000014b7: PUSH1 0x64
000014b9: DUP3
000014ba: ADD
000014bb: MSTORE
000014bc: PUSH1 0x84
000014be: SWAP1
000014bf: REVERT
000014c0: JUMPDEST
000014c1: PUSH2 0x14d9
000014c4: SWAP2
000014c5: POP
000014c6: PUSH1 0x20
000014c8: RETURNDATASIZE
000014c9: PUSH1 0x20
000014cb: GT
000014cc: PUSH2 0x12c7
000014cf: JUMPI
000014d0: PUSH2 0x12b9
000014d3: DUP2
000014d4: DUP4
000014d5: PUSH2 0x0ca7
000014d8: JUMP
000014d9: JUMPDEST
000014da: PUSH0
000014db: PUSH2 0x1450
000014de: JUMP
000014df: JUMPDEST
000014e0: SWAP1
000014e1: POP
000014e2: PUSH1 0x20
000014e4: DUP2
000014e5: RETURNDATASIZE
000014e6: PUSH1 0x20
000014e8: GT
000014e9: PUSH2 0x150b
000014ec: JUMPI
000014ed: JUMPDEST
000014ee: DUP2
000014ef: PUSH2 0x14fa
000014f2: PUSH1 0x20
000014f4: SWAP4
000014f5: DUP4
000014f6: PUSH2 0x0ca7
000014f9: JUMP
000014fa: JUMPDEST
000014fb: DUP2
000014fc: ADD
000014fd: SUB
000014fe: SLT
000014ff: PUSH2 0x01a1
00001502: JUMPI
00001503: MLOAD
00001504: PUSH2 0x143e
00001507: PUSH2 0x1415
0000150a: JUMP
0000150b: JUMPDEST
0000150c: RETURNDATASIZE
0000150d: SWAP2
0000150e: POP
0000150f: PUSH2 0x14ed
00001512: JUMP
00001513: JUMPDEST
00001514: SWAP2
00001515: SWAP1
00001516: DUP2
00001517: LT
00001518: ISZERO
00001519: PUSH2 0x0ffd
0000151c: JUMPI
0000151d: PUSH1 0x05
0000151f: SHL
00001520: ADD
00001521: SWAP1
00001522: JUMP
00001523: JUMPDEST
00001524: CALLDATALOAD
00001525: PUSH1 0x01
00001527: PUSH1 0x01
00001529: PUSH1 0xa0
0000152b: SHL
0000152c: SUB
0000152d: DUP2
0000152e: AND
0000152f: DUP2
00001530: SUB
00001531: PUSH2 0x01a1
00001534: JUMPI
00001535: SWAP1
00001536: JUMP
00001537: JUMPDEST
00001538: SWAP3
00001539: SWAP1
0000153a: SWAP4
0000153b: PUSH2 0x1565
0000153e: SWAP3
0000153f: PUSH1 0x80
00001541: SWAP6
00001542: SWAP9
00001543: SWAP8
00001544: SWAP7
00001545: SWAP9
00001546: PUSH1 0x01
00001548: DUP1
00001549: PUSH1 0xa0
0000154b: SHL
0000154c: SUB
0000154d: AND
0000154e: DUP6
0000154f: MSTORE
00001550: PUSH1 0x20
00001552: DUP6
00001553: ADD
00001554: MSTORE
00001555: PUSH1 0xa0
00001557: PUSH1 0x40
00001559: DUP6
0000155a: ADD
0000155b: MSTORE
0000155c: PUSH1 0xa0
0000155e: DUP5
0000155f: ADD
00001560: SWAP2
00001561: PUSH2 0x0e78
00001564: JUMP
00001565: JUMPDEST
00001566: SWAP5
00001567: PUSH1 0x60
00001569: DUP3
0000156a: ADD
0000156b: MSTORE
0000156c: ADD
0000156d: MSTORE
0000156e: JUMP
0000156f: JUMPDEST
00001570: PUSH1 0x01
00001572: PUSH1 0x01
00001574: PUSH1 0xa0
00001576: SHL
00001577: SUB
00001578: DUP2
00001579: AND
0000157a: PUSH0
0000157b: SWAP1
0000157c: DUP2
0000157d: MSTORE
0000157e: PUSH32 0x3412d5605ac6cd444957cedb533e5dacad6378b4bc819ebe3652188a665066d5
0000159f: PUSH1 0x20
000015a1: MSTORE
000015a2: PUSH1 0x40
000015a4: SWAP1
000015a5: KECCAK256
000015a6: SLOAD
000015a7: PUSH1 0xff
000015a9: AND
000015aa: ISZERO
000015ab: PUSH2 0x15b1
000015ae: JUMPI
000015af: POP
000015b0: JUMP
000015b1: JUMPDEST
000015b2: PUSH4 0xe2517d3f
000015b7: PUSH1 0xe0
000015b9: SHL
000015ba: PUSH0
000015bb: SWAP1
000015bc: DUP2
000015bd: MSTORE
000015be: PUSH1 0x01
000015c0: PUSH1 0x01
000015c2: PUSH1 0xa0
000015c4: SHL
000015c5: SUB
000015c6: SWAP2
000015c7: SWAP1
000015c8: SWAP2
000015c9: AND
000015ca: PUSH1 0x04
000015cc: MSTORE
000015cd: PUSH32 0xb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1
000015ee: PUSH1 0x24
000015f0: MSTORE
000015f1: PUSH1 0x44
000015f3: SWAP1
000015f4: REVERT
000015f5: JUMPDEST
000015f6: PUSH1 0x01
000015f8: PUSH1 0x01
000015fa: PUSH1 0xa0
000015fc: SHL
000015fd: SUB
000015fe: DUP2
000015ff: AND
00001600: PUSH0
00001601: SWAP1
00001602: DUP2
00001603: MSTORE
00001604: PUSH32 0xdae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d7069
00001625: PUSH1 0x20
00001627: MSTORE
00001628: PUSH1 0x40
0000162a: SWAP1
0000162b: KECCAK256
0000162c: SLOAD
0000162d: PUSH1 0xff
0000162f: AND
00001630: ISZERO
00001631: PUSH2 0x1637
00001634: JUMPI
00001635: POP
00001636: JUMP
00001637: JUMPDEST
00001638: PUSH4 0xe2517d3f
0000163d: PUSH1 0xe0
0000163f: SHL
00001640: PUSH0
00001641: SWAP1
00001642: DUP2
00001643: MSTORE
00001644: PUSH1 0x01
00001646: PUSH1 0x01
00001648: PUSH1 0xa0
0000164a: SHL
0000164b: SUB
0000164c: SWAP2
0000164d: SWAP1
0000164e: SWAP2
0000164f: AND
00001650: PUSH1 0x04
00001652: MSTORE
00001653: PUSH0
00001654: MLOAD
00001655: PUSH1 0x20
00001657: PUSH2 0x19b0
0000165a: PUSH0
0000165b: CODECOPY
0000165c: PUSH0
0000165d: MLOAD
0000165e: SWAP1
0000165f: PUSH0
00001660: MSTORE
00001661: PUSH1 0x24
00001663: MSTORE
00001664: PUSH1 0x44
00001666: SWAP1
00001667: REVERT
00001668: JUMPDEST
00001669: PUSH1 0x01
0000166b: PUSH1 0x01
0000166d: PUSH1 0xa0
0000166f: SHL
00001670: SUB
00001671: DUP2
00001672: AND
00001673: PUSH0
00001674: SWAP1
00001675: DUP2
00001676: MSTORE
00001677: PUSH0
00001678: MLOAD
00001679: PUSH1 0x20
0000167b: PUSH2 0x1990
0000167e: PUSH0
0000167f: CODECOPY
00001680: PUSH0
00001681: MLOAD
00001682: SWAP1
00001683: PUSH0
00001684: MSTORE
00001685: PUSH1 0x20
00001687: MSTORE
00001688: PUSH1 0x40
0000168a: SWAP1
0000168b: KECCAK256
0000168c: SLOAD
0000168d: PUSH1 0xff
0000168f: AND
00001690: ISZERO
00001691: PUSH2 0x1697
00001694: JUMPI
00001695: POP
00001696: JUMP
00001697: JUMPDEST
00001698: PUSH4 0xe2517d3f
0000169d: PUSH1 0xe0
0000169f: SHL
000016a0: PUSH0
000016a1: SWAP1
000016a2: DUP2
000016a3: MSTORE
000016a4: PUSH1 0x01
000016a6: PUSH1 0x01
000016a8: PUSH1 0xa0
000016aa: SHL
000016ab: SUB
000016ac: SWAP2
000016ad: SWAP1
000016ae: SWAP2
000016af: AND
000016b0: PUSH1 0x04
000016b2: MSTORE
000016b3: PUSH32 0xfd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783
000016d4: PUSH1 0x24
000016d6: MSTORE
000016d7: PUSH1 0x44
000016d9: SWAP1
000016da: REVERT
000016db: JUMPDEST
000016dc: SWAP1
000016dd: DUP2
000016de: PUSH0
000016df: MSTORE
000016e0: PUSH0
000016e1: PUSH1 0x20
000016e3: MSTORE
000016e4: PUSH1 0x40
000016e6: PUSH0
000016e7: KECCAK256
000016e8: PUSH1 0x01
000016ea: DUP1
000016eb: PUSH1 0xa0
000016ed: SHL
000016ee: SUB
000016ef: DUP3
000016f0: AND
000016f1: PUSH0
000016f2: MSTORE
000016f3: PUSH1 0x20
000016f5: MSTORE
000016f6: PUSH1 0xff
000016f8: PUSH1 0x40
000016fa: PUSH0
000016fb: KECCAK256
000016fc: SLOAD
000016fd: AND
000016fe: ISZERO
000016ff: PUSH2 0x1706
00001702: JUMPI
00001703: POP
00001704: POP
00001705: JUMP
00001706: JUMPDEST
00001707: PUSH4 0xe2517d3f
0000170c: PUSH1 0xe0
0000170e: SHL
0000170f: PUSH0
00001710: MSTORE
00001711: PUSH1 0x01
00001713: DUP1
00001714: PUSH1 0xa0
00001716: SHL
00001717: SUB
00001718: AND
00001719: PUSH1 0x04
0000171b: MSTORE
0000171c: PUSH1 0x24
0000171e: MSTORE
0000171f: PUSH1 0x44
00001721: PUSH0
00001722: REVERT
00001723: JUMPDEST
00001724: PUSH2 0x172c
00001727: DUP2
00001728: PUSH2 0x0ebf
0000172b: JUMP
0000172c: JUMPDEST
0000172d: ISZERO
0000172e: PUSH2 0x1764
00001731: JUMPI
00001732: POP
00001733: DUP1
00001734: ISZERO
00001735: ISZERO
00001736: DUP1
00001737: PUSH2 0x1754
0000173a: JUMPI
0000173b: JUMPDEST
0000173c: PUSH2 0x1742
0000173f: JUMPI
00001740: POP
00001741: JUMP
00001742: JUMPDEST
00001743: PUSH4 0x121534c3
00001748: PUSH1 0xe3
0000174a: SHL
0000174b: PUSH0
0000174c: MSTORE
0000174d: PUSH1 0x04
0000174f: MSTORE
00001750: PUSH1 0x24
00001752: PUSH0
00001753: REVERT
00001754: JUMPDEST
00001755: POP
00001756: PUSH2 0x175e
00001759: DUP2
0000175a: PUSH2 0x0ed7
0000175d: JUMP
0000175e: JUMPDEST
0000175f: ISZERO
00001760: PUSH2 0x173b
00001763: JUMP
00001764: JUMPDEST
00001765: PUSH4 0x5ead8eb5
0000176a: PUSH1 0xe0
0000176c: SHL
0000176d: PUSH0
0000176e: MSTORE
0000176f: PUSH1 0x04
00001771: MSTORE
00001772: PUSH1 0x04
00001774: PUSH1 0x24
00001776: MSTORE
00001777: PUSH1 0x44
00001779: PUSH0
0000177a: REVERT
0000177b: JUMPDEST
0000177c: PUSH2 0x17c3
0000177f: SWAP4
00001780: PUSH0
00001781: SWAP4
00001782: SWAP3
00001783: DUP5
00001784: SWAP4
00001785: DUP3
00001786: PUSH1 0x40
00001788: MLOAD
00001789: SWAP4
0000178a: DUP5
0000178b: SWAP3
0000178c: DUP4
0000178d: CALLDATACOPY
0000178e: DUP2
0000178f: ADD
00001790: DUP6
00001791: DUP2
00001792: MSTORE
00001793: SUB
00001794: SWAP3
00001795: GAS
00001796: CALL
00001797: RETURNDATASIZE
00001798: ISZERO
00001799: PUSH2 0x17c6
0000179c: JUMPI
0000179d: RETURNDATASIZE
0000179e: SWAP1
0000179f: PUSH2 0x17a7
000017a2: DUP3
000017a3: PUSH2 0x0cdc
000017a6: JUMP
000017a7: JUMPDEST
000017a8: SWAP2
000017a9: PUSH2 0x17b5
000017ac: PUSH1 0x40
000017ae: MLOAD
000017af: SWAP4
000017b0: DUP5
000017b1: PUSH2 0x0ca7
000017b4: JUMP
000017b5: JUMPDEST
000017b6: DUP3
000017b7: MSTORE
000017b8: RETURNDATASIZE
000017b9: PUSH0
000017ba: PUSH1 0x20
000017bc: DUP5
000017bd: ADD
000017be: RETURNDATACOPY
000017bf: PUSH2 0x1967
000017c2: JUMP
000017c3: JUMPDEST
000017c4: POP
000017c5: JUMP
000017c6: JUMPDEST
000017c7: PUSH1 0x60
000017c9: SWAP1
000017ca: PUSH2 0x1967
000017cd: JUMP
000017ce: JUMPDEST
000017cf: PUSH2 0x17d7
000017d2: DUP2
000017d3: PUSH2 0x0ebf
000017d6: JUMP
000017d7: JUMPDEST
000017d8: ISZERO
000017d9: PUSH2 0x1764
000017dc: JUMPI
000017dd: PUSH0
000017de: MSTORE
000017df: PUSH1 0x01
000017e1: PUSH1 0x20
000017e3: MSTORE
000017e4: PUSH1 0x01
000017e6: PUSH1 0x40
000017e8: PUSH0
000017e9: KECCAK256
000017ea: SSTORE
000017eb: JUMP
000017ec: JUMPDEST
000017ed: PUSH0
000017ee: DUP2
000017ef: DUP2
000017f0: MSTORE
000017f1: PUSH1 0x20
000017f3: DUP2
000017f4: DUP2
000017f5: MSTORE
000017f6: PUSH1 0x40
000017f8: DUP1
000017f9: DUP4
000017fa: KECCAK256
000017fb: PUSH1 0x01
000017fd: PUSH1 0x01
000017ff: PUSH1 0xa0
00001801: SHL
00001802: SUB
00001803: DUP7
00001804: AND
00001805: DUP5
00001806: MSTORE
00001807: SWAP1
00001808: SWAP2
00001809: MSTORE
0000180a: SWAP1
0000180b: KECCAK256
0000180c: SLOAD
0000180d: PUSH1 0xff
0000180f: AND
00001810: PUSH2 0x186e
00001813: JUMPI
00001814: PUSH0
00001815: DUP2
00001816: DUP2
00001817: MSTORE
00001818: PUSH1 0x20
0000181a: DUP2
0000181b: DUP2
0000181c: MSTORE
0000181d: PUSH1 0x40
0000181f: DUP1
00001820: DUP4
00001821: KECCAK256
00001822: PUSH1 0x01
00001824: PUSH1 0x01
00001826: PUSH1 0xa0
00001828: SHL
00001829: SUB
0000182a: SWAP6
0000182b: SWAP1
0000182c: SWAP6
0000182d: AND
0000182e: DUP1
0000182f: DUP5
00001830: MSTORE
00001831: SWAP5
00001832: SWAP1
00001833: SWAP2
00001834: MSTORE
00001835: DUP2
00001836: KECCAK256
00001837: DUP1
00001838: SLOAD
00001839: PUSH1 0xff
0000183b: NOT
0000183c: AND
0000183d: PUSH1 0x01
0000183f: OR
00001840: SWAP1
00001841: SSTORE
00001842: CALLER
00001843: SWAP3
00001844: SWAP2
00001845: SWAP1
00001846: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d
00001867: SWAP1
00001868: DUP1
00001869: LOG4
0000186a: PUSH1 0x01
0000186c: SWAP1
0000186d: JUMP
0000186e: JUMPDEST
0000186f: POP
00001870: POP
00001871: PUSH0
00001872: SWAP1
00001873: JUMP
00001874: JUMPDEST
00001875: PUSH0
00001876: DUP2
00001877: DUP2
00001878: MSTORE
00001879: PUSH1 0x20
0000187b: DUP2
0000187c: DUP2
0000187d: MSTORE
0000187e: PUSH1 0x40
00001880: DUP1
00001881: DUP4
00001882: KECCAK256
00001883: PUSH1 0x01
00001885: PUSH1 0x01
00001887: PUSH1 0xa0
00001889: SHL
0000188a: SUB
0000188b: DUP7
0000188c: AND
0000188d: DUP5
0000188e: MSTORE
0000188f: SWAP1
00001890: SWAP2
00001891: MSTORE
00001892: SWAP1
00001893: KECCAK256
00001894: SLOAD
00001895: PUSH1 0xff
00001897: AND
00001898: ISZERO
00001899: PUSH2 0x186e
0000189c: JUMPI
0000189d: PUSH0
0000189e: DUP2
0000189f: DUP2
000018a0: MSTORE
000018a1: PUSH1 0x20
000018a3: DUP2
000018a4: DUP2
000018a5: MSTORE
000018a6: PUSH1 0x40
000018a8: DUP1
000018a9: DUP4
000018aa: KECCAK256
000018ab: PUSH1 0x01
000018ad: PUSH1 0x01
000018af: PUSH1 0xa0
000018b1: SHL
000018b2: SUB
000018b3: SWAP6
000018b4: SWAP1
000018b5: SWAP6
000018b6: AND
000018b7: DUP1
000018b8: DUP5
000018b9: MSTORE
000018ba: SWAP5
000018bb: SWAP1
000018bc: SWAP2
000018bd: MSTORE
000018be: DUP2
000018bf: KECCAK256
000018c0: DUP1
000018c1: SLOAD
000018c2: PUSH1 0xff
000018c4: NOT
000018c5: AND
000018c6: SWAP1
000018c7: SSTORE
000018c8: CALLER
000018c9: SWAP3
000018ca: SWAP2
000018cb: SWAP1
000018cc: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b
000018ed: SWAP1
000018ee: DUP1
000018ef: LOG4
000018f0: PUSH1 0x01
000018f2: SWAP1
000018f3: JUMP
000018f4: JUMPDEST
000018f5: SWAP1
000018f6: PUSH2 0x18fe
000018f9: DUP3
000018fa: PUSH2 0x0eef
000018fd: JUMP
000018fe: JUMPDEST
000018ff: PUSH2 0x194f
00001902: JUMPI
00001903: PUSH1 0x02
00001905: SLOAD
00001906: DUP1
00001907: DUP3
00001908: LT
00001909: PUSH2 0x1939
0000190c: JUMPI
0000190d: POP
0000190e: TIMESTAMP
0000190f: ADD
00001910: SWAP1
00001911: DUP2
00001912: TIMESTAMP
00001913: GT
00001914: PUSH2 0x1925
00001917: JUMPI
00001918: PUSH0
00001919: MSTORE
0000191a: PUSH1 0x01
0000191c: PUSH1 0x20
0000191e: MSTORE
0000191f: PUSH1 0x40
00001921: PUSH0
00001922: KECCAK256
00001923: SSTORE
00001924: JUMP
00001925: JUMPDEST
00001926: PUSH4 0x4e487b71
0000192b: PUSH1 0xe0
0000192d: SHL
0000192e: PUSH0
0000192f: MSTORE
00001930: PUSH1 0x11
00001932: PUSH1 0x04
00001934: MSTORE
00001935: PUSH1 0x24
00001937: PUSH0
00001938: REVERT
00001939: JUMPDEST
0000193a: SWAP1
0000193b: PUSH4 0x54336609
00001940: PUSH1 0xe0
00001942: SHL
00001943: PUSH0
00001944: MSTORE
00001945: PUSH1 0x04
00001947: MSTORE
00001948: PUSH1 0x24
0000194a: MSTORE
0000194b: PUSH1 0x44
0000194d: PUSH0
0000194e: REVERT
0000194f: JUMPDEST
00001950: POP
00001951: PUSH4 0x5ead8eb5
00001956: PUSH1 0xe0
00001958: SHL
00001959: PUSH0
0000195a: MSTORE
0000195b: PUSH1 0x04
0000195d: MSTORE
0000195e: PUSH1 0x01
00001960: PUSH1 0x24
00001962: MSTORE
00001963: PUSH1 0x44
00001965: PUSH0
00001966: REVERT
00001967: JUMPDEST
00001968: SWAP1
00001969: SWAP2
0000196a: SWAP1
0000196b: PUSH2 0x198d
0000196e: JUMPI
0000196f: POP
00001970: DUP1
00001971: MLOAD
00001972: ISZERO
00001973: PUSH2 0x197e
00001976: JUMPI
00001977: DUP1
00001978: MLOAD
00001979: SWAP1
0000197a: PUSH1 0x20
0000197c: ADD
0000197d: REVERT
0000197e: JUMPDEST
0000197f: PUSH4 0xd6bda275
00001984: PUSH1 0xe0
00001986: SHL
00001987: PUSH0
00001988: MSTORE
00001989: PUSH1 0x04
0000198b: PUSH0
0000198c: REVERT
0000198d: JUMPDEST
0000198e: JUMP
0000198f: INVALID
00001990: UNKNOWN(0xC3)
00001991: UNKNOWN(0xAD)
00001992: CALLER
00001993: UNKNOWN(0xE2)
00001994: SIGNEXTEND
00001995: UNKNOWN(0x0C)
00001996: JUMP
00001997: LOG2
00001998: UNKNOWN(0x23)
00001999: UNKNOWN(0xAD)
0000199a: MLOAD
0000199b: DIV
0000199c: SELFDESTRUCT
0000199d: CALL
0000199e: SLOAD
0000199f: UNKNOWN(0xAA)
000019a0: ADD
000019a1: UNKNOWN(0x0F)
000019a2: DUP8
000019a3: ISZERO
000019a4: UNKNOWN(0xB9)
000019a5: UNKNOWN(0xC9)
000019a6: DUP2
000019a7: REVERT
000019a8: CODESIZE
000019a9: REVERT
000019aa: UNKNOWN(0xC6)
000019ab: EXP
000019ac: UNKNOWN(0x4D)
000019ad: BYTE
000019ae: MSTORE
000019af: UNKNOWN(0xFB)
000019b0: UNKNOWN(0xD8)
000019b1: UNKNOWN(0xAA)
000019b2: UNKNOWN(0x0F)
000019b3: BALANCE
000019b4: SWAP5
000019b5: SWAP8
000019b6: BYTE
000019b7: UNKNOWN(0x2A)
000019b8: GT
000019b9: PUSH7 0x79f7c2090f6939
000019c1: UNKNOWN(0xC8)
000019c2: UNKNOWN(0xD4)
000019c3: UNKNOWN(0xE0)
000019c4: BYTE
000019c5: UNKNOWN(0x2A)
000019c6: DUP14
000019c7: PUSH31 0x41d55e5351469e63a26469706673582212208a78996a7bb2e465906601bda2
000019e7: ADDMOD
000019e8: DUP5
000019e9: UNKNOWN(0xF8)
000019ea: CALLDATALOAD
000019eb: JUMPDEST
000019ec: DUP10
000019ed: STATICCALL
000019ee: UNKNOWN(0xD9)
000019ef: PUSH24

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other cast SELFDESTRUCT present 85 no
view
evidence_json
{
    "notes": "selfdestruct can remove contract code and send funds; review reachability",
    "selfdestruct_count": 1
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x6a730bb1b7a243a756c2a7d958da2304ed33a201503ed113bc7f372b1e2c4b02
call_targets: 0x447bf9d1485abdc4c1778025dfdfbe8b894c3796
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x6a730bb1b7a243a756c2a7d958da2304ed33a201503ed113bc7f372b1e2c4b02",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x447bf9d1485abdc4c1778025dfdfbe8b894c3796"
    ],
    "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": "0x01d5062a",
            "selector": "0x01d5062a",
            "calldata_variants": [
                "0x01d5062a",
                "0x01d5062a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01ffc9a7",
            "selector": "0x01ffc9a7",
            "calldata_variants": [
                "0x01ffc9a7",
                "0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x07bd0265",
            "selector": "0x07bd0265",
            "calldata_variants": [
                "0x07bd0265",
                "0x07bd02650000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x134008d3",
            "selector": "0x134008d3",
            "calldata_variants": [
                "0x134008d3",
                "0x134008d30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x13bc9f20",
            "selector": "0x13bc9f20",
            "calldata_variants": [
                "0x13bc9f20",
                "0x13bc9f200000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x150b7a02",
            "selector": "0x150b7a02",
            "calldata_variants": [
                "0x150b7a02",
                "0x150b7a020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x248a9ca3",
            "selector": "0x248a9ca3",
            "calldata_variants": [
                "0x248a9ca3",
                "0x248a9ca30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2ab0f529",
            "selector": "0x2ab0f529",
            "calldata_variants": [
                "0x2ab0f529",
                "0x2ab0f5290000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 6038,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 6557,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [],
    "untrusted_call_count": 2
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x6a730bb1b7a243a756c2a7d958da2304ed33a201503ed113bc7f372b1e2c4b02
call_targets: 0x447bf9d1485abdc4c1778025dfdfbe8b894c3796
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x6a730bb1b7a243a756c2a7d958da2304ed33a201503ed113bc7f372b1e2c4b02",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x447bf9d1485abdc4c1778025dfdfbe8b894c3796"
    ],
    "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": "0x01d5062a",
            "selector": "0x01d5062a",
            "calldata_variants": [
                "0x01d5062a",
                "0x01d5062a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01ffc9a7",
            "selector": "0x01ffc9a7",
            "calldata_variants": [
                "0x01ffc9a7",
                "0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x07bd0265",
            "selector": "0x07bd0265",
            "calldata_variants": [
                "0x07bd0265",
                "0x07bd02650000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x134008d3",
            "selector": "0x134008d3",
            "calldata_variants": [
                "0x134008d3",
                "0x134008d30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x13bc9f20",
            "selector": "0x13bc9f20",
            "calldata_variants": [
                "0x13bc9f20",
                "0x13bc9f200000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x150b7a02",
            "selector": "0x150b7a02",
            "calldata_variants": [
                "0x150b7a02",
                "0x150b7a020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x248a9ca3",
            "selector": "0x248a9ca3",
            "calldata_variants": [
                "0x248a9ca3",
                "0x248a9ca30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2ab0f529",
            "selector": "0x2ab0f529",
            "calldata_variants": [
                "0x2ab0f529",
                "0x2ab0f5290000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 6038,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 6557,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": []
}
high other detector SELFDESTRUCT reachable 65 no no
view
trace_id: 0xc4b114b43ba156d3f4491f27520118c481e768da8ab00b0719405400b0eb28aa
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0xc4b114b43ba156d3f4491f27520118c481e768da8ab00b0719405400b0eb28aa",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x01d5062a",
            "selector": "0x01d5062a",
            "calldata_variants": [
                "0x01d5062a",
                "0x01d5062a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01ffc9a7",
            "selector": "0x01ffc9a7",
            "calldata_variants": [
                "0x01ffc9a7",
                "0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x07bd0265",
            "selector": "0x07bd0265",
            "calldata_variants": [
                "0x07bd0265",
                "0x07bd02650000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x134008d3",
            "selector": "0x134008d3",
            "calldata_variants": [
                "0x134008d3",
                "0x134008d30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x13bc9f20",
            "selector": "0x13bc9f20",
            "calldata_variants": [
                "0x13bc9f20",
                "0x13bc9f200000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x150b7a02",
            "selector": "0x150b7a02",
            "calldata_variants": [
                "0x150b7a02",
                "0x150b7a020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x248a9ca3",
            "selector": "0x248a9ca3",
            "calldata_variants": [
                "0x248a9ca3",
                "0x248a9ca30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2ab0f529",
            "selector": "0x2ab0f529",
            "calldata_variants": [
                "0x2ab0f529",
                "0x2ab0f5290000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [],
    "selfdestruct_count": 1
}