Files
dekun 16ef0f31e3 User edition: prune docs, license gate, obfuscate core lib.
Keep deploy/basic docs only; integrate sq.bz121.com license client; encrypt strategy/trade/key_monitor/options/hedge_plan for release.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-17 16:30:58 +08:00

13 lines
6.5 KiB
Python

# obfuscated module — do not edit
import base64, marshal, zlib
_B = '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'
_K = '5eb9e6dda894c57a4e02d809ae440d49'
def _d(b, k):
raw = zlib.decompress(base64.b64decode(b))
key = k.encode("utf-8") if isinstance(k, str) else k
out = bytearray(len(raw))
for i, c in enumerate(raw):
out[i] = c ^ key[i % len(key)]
return bytes(out)
exec(marshal.loads(_d(_B, _K)), globals())