Skip to content
KernelIndex
Search⌘K

submission 709833

liang · python · License unknown

Use it

Vendorable · source mirrored · license unknownView source →

No package. Vendor the mirrored source: 152 lines, June 9 Researcher Reciprocity License v1.0.

submission_gluon_v17_ly_embedded.py
curl "https://kernelindex.com/api/v1/implementations/kernelbot-amd-mixed-mla-709833?include=source"
interfacepython
Compatibility
measured onAMD Instinct MI355X
declared hardwareAMD Instinct MI355X
architecturesgfx950
dtypesbf16, int32

Benchmark evidence

1 measurement across 1 GPU, fastest first.

Operation / workload
Hardware
Latency
Rank
Observed
AMD Instinct MI355X
56.8µs
#205 of 766
2026-04-03

Reported · How evidence levels are derived →

Source and license

sourceavailable
revision digestsha256:5a27d664d0eba4186c1de04d718d6d2a3e3d876415614fe50063b17aa9c6fea0
license declaredunknown
license concludedunknown
authorsliang
imported2026-08-15

Kernel source

submission_gluon_v17_ly_embedded.py152 lines
import os, sys, struct, base64, ctypes
sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), ".."))
import torch
from task import input_t, output_t
from aiter import dtypes as aiter_dtypes
FP8_DTYPE = aiter_dtypes.fp8

S1_NAME = "_gluon_mla_decode_stage1_v17"
_S1_0ade71b6 = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAAFg1AAAAAAAATwUAAEAAOAAIAEAAFgAUAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADABwAAAAAAAMAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAIAAAAAAAAABgAAAAAAAAAGAAAAAAAAIAeAAAAAAAAgB4AAAAAAAAAEAAAAAAAAAEAAAAGAAAAgCYAAAAAAACARgAAAAAAAIBGAAAAAAAAcAAAAAAAAACACQAAAAAAAAAQAAAAAAAAAgAAAAYAAACAJgAAAAAAAIBGAAAAAAAAgEYAAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAIAmAAAAAAAAgEYAAAAAAACARgAAAAAAAHAAAAAAAAAAgAkAAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAACYBAAAAAAAAJgEAAAAAAAABAAAAAAAAAAHAAAAggQAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc56Eri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0GKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQgpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyg6cub2Zmc2V0KKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQspS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldDClLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0NKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQ4pS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldDylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0QKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0SKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXRQpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyuS5ncm91cF9zZWdtZW50X2ZpeGVkX3NpemUAti5rZXJuYXJnX3NlZ21lbnRfYWxpZ24ItS5rZXJuYXJnX3NlZ21lbnRfc2l6ZVi4Lm1heF9mbGF0X3dvcmtncm91cF9zaXplzQEApS5uYW1lvF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTe7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudCixLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y/X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5rZLgudW5pZm9ybV93b3JrX2dyb3VwX3NpemUBsy51c2VzX2R5bmFtaWNfc3RhY2vCqy52Z3ByX2NvdW50zJKxLnZncHJfc3BpbGxfY291bnQAry53YXZlZnJvbnRfc2l6ZUCtYW1kaHNhLnRhcmdldLlhbWRnY24tYW1kLWFtZGhzYS0tZ2Z4OTUwrmFtZGhzYS52ZXJzaW9ukgECAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAYAAAAAAAAbBoAAAAAAAAeAAAAEQAGAIAHAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAQAAAYAgAAAABAAAARq6UdGMipXsDAAAA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AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwYAAAAAAAAAmAYAAAAAAAALAAAAAAAAABgAAAAAAAAABQAAAAAAAAAkBwAA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AAAAAAAAAAAAAAAAAAAAAFsBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAIYBAAAAAPH/AAAAAAAAAAAAAAAAAAAAALUBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAMkBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAN0BAAAAAPH/AAAAAAAAAAAAAAAAAAAAAPEBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAEsCAAAAAggAgEYAAAAAAAAAAAAAAAAAAA4CAAASAwcAABgAAAAAAABsGgAAAAAAACsCAAARAAYAgAcAAAAAAABAAAAAAAAAAAAubm90ZQAuZHluc3ltAC5nbnUuaGFzaAAuaGFzaAAuZHluc3RyAC5yb2RhdGEALnRleHQALmR5bmFtaWMALnJlbHJvX3BhZGRpbmcALkFNREdQVS5jc2RhdGEALkFNREdQVS5ncHJfbWF4aW11bXMALmRlYnVnX2FiYnJldgAuZGVidWdfaW5mbwAuZGVidWdfcmFuZ2VzAC5kZWJ1Z19zdHIALmRlYnVnX2xpbmUALmRlYnVnX2ZyYW1lAC5jb21tZW50AC5zeW10YWIALnNoc3RydGFiAC5zdHJ0YWIAAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcubnVtX3ZncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5udW1fYWdwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3Lm51bWJlcmVkX3NncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5udW1fbmFtZWRfYmFycmllcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3LnByaXZhdGVfc2VnX3NpemUAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy51c2VzX3ZjYwBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3LnVzZXNfZmxhdF9zY3JhdGNoAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcuaGFzX2R5bl9zaXplZF9zdGFjawBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3Lmhhc19yZWN1cnNpb24AX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5oYXNfaW5kaXJlY3RfY2FsbABhbWRncHUubWF4X251bV92Z3ByAGFtZGdwdS5tYXhfbnVtX2FncHIAYW1kZ3B1Lm1heF9udW1fc2dwcgBhbWRncHUubWF4X251bV9uYW1lZF9iYXJyaWVyAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5rZABfRFlOQU1JQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAHAAAAAgAAAAAAAAAAAgAAAAAAAAACAAAAAAAAmAQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAHAAAACwAAAAIAAAAAAAAAmAYAAAAAAACYBgAAAAAAAEgAAAAAAAAABQAAAAEAAAAIAAAAAAAAABgAAAAAAAAADwAAAPb//28CAAAAAAAAAOAGAAAAAAAA4AYAAAAAAAAkAAAAAAAAAAIAAAAAAAAACAAAAAAAAAAAAAAAAAAAABkAAAAFAAAAAgAAAAAAAAAEBwAAAAAAAAQHAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAfAAAAAwAAAAIAAAAAAAAAJAcAAAAAAAAkBwAAAAAAAD4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAJwAAAAEAAAACAAAAAAAAAIAHAAAAAAAAgAcAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAC8AAAABAAAABgAAAAAAAAAAGAAAAAAAAAAIAAAAAAAAgB4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAA1AAAABgAAAAMAAAAAAAAAgEYAAAAAAACAJgAAAAAAAHAAAAAAAAAABQAAAAAAAAAIAAAAAAAAABAAAAAAAAAAPgAAAAgAAAADAAAAAAAAAPBGAAAAAAAA8CYAAAAAAAAQCQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAE0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAPAmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABcAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADwJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAcQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAA8CYAAAAAAABmAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAH8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAFYnAAAAAAAAmAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACLAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADuJwAAAAAAANABAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAmQAAAAEAAAAwAAAAAAAAAAAAAAAAAAAAvikAAAAAAAB+AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAKQAAAABAAAAAAAAAAAAAAAAAAAAAAAAADwqAAAAAAAAogUAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACwAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADgLwAAAAAAACgAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAvQAAAAEAAAAwAAAAAAAAAAAAAAAAAAAACDAAAAAAAABnAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAMYAAAACAAAAAAAAAAAAAAAAAAAAAAAAAHAwAAAAAAAAsAEAAAAAAAAVAAAAEAAAAAgAAAAAAAAAGAAAAAAAAADOAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAgMgAAAAAAAOAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA2AAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAADMAAAAAAABUAgAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA=="""
_S1_153a51e6 = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAAFg1AAAAAAAATwUAAEAAOAAIAEAAFgAUAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADABwAAAAAAAMAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAIAAAAAAAAABgAAAAAAAAAGAAAAAAAAIAeAAAAAAAAgB4AAAAAAAAAEAAAAAAAAAEAAAAGAAAAgCYAAAAAAACARgAAAAAAAIBGAAAAAAAAcAAAAAAAAACACQAAAAAAAAAQAAAAAAAAAgAAAAYAAACAJgAAAAAAAIBGAAAAAAAAgEYAAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAIAmAAAAAAAAgEYAAAAAAACARgAAAAAAAHAAAAAAAAAAgAkAAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAACYBAAAAAAAAJgEAAAAAAAABAAAAAAAAAAHAAAAggQAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc56Eri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0GKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQgpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyg6cub2Zmc2V0KKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQspS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldDClLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0NKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQ4pS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldDylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0QKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0SKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXRQpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyuS5ncm91cF9zZWdtZW50X2ZpeGVkX3NpemUAti5rZXJuYXJnX3NlZ21lbnRfYWxpZ24ItS5rZXJuYXJnX3NlZ21lbnRfc2l6ZVi4Lm1heF9mbGF0X3dvcmtncm91cF9zaXplzQEApS5uYW1lvF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTe7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudCixLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y/X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5rZLgudW5pZm9ybV93b3JrX2dyb3VwX3NpemUBsy51c2VzX2R5bmFtaWNfc3RhY2vCqy52Z3ByX2NvdW50zJKxLnZncHJfc3BpbGxfY291bnQAry53YXZlZnJvbnRfc2l6ZUCtYW1kaHNhLnRhcmdldLlhbWRnY24tYW1kLWFtZGhzYS0tZ2Z4OTUwrmFtZGhzYS52ZXJzaW9ukgECAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAYAAAAAAAAZBoAAAAAAAAeAAAAEQAGAIAHAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAQAAAYAgAAAABAAAARq6UdGMipXsDAAAA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AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwYAAAAAAAAAmAYAAAAAAAALAAAAAAAAABgAAAAAAAAABQAAAAAAAAAkBwAA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AAAAAAAAAAAAAAAAAAAAAFsBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAIYBAAAAAPH/AAAAAAAAAAAAAAAAAAAAALUBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAMkBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAN0BAAAAAPH/AAAAAAAAAAAAAAAAAAAAAPEBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAEsCAAAAAggAgEYAAAAAAAAAAAAAAAAAAA4CAAASAwcAABgAAAAAAABkGgAAAAAAACsCAAARAAYAgAcAAAAAAABAAAAAAAAAAAAubm90ZQAuZHluc3ltAC5nbnUuaGFzaAAuaGFzaAAuZHluc3RyAC5yb2RhdGEALnRleHQALmR5bmFtaWMALnJlbHJvX3BhZGRpbmcALkFNREdQVS5jc2RhdGEALkFNREdQVS5ncHJfbWF4aW11bXMALmRlYnVnX2FiYnJldgAuZGVidWdfaW5mbwAuZGVidWdfcmFuZ2VzAC5kZWJ1Z19zdHIALmRlYnVnX2xpbmUALmRlYnVnX2ZyYW1lAC5jb21tZW50AC5zeW10YWIALnNoc3RydGFiAC5zdHJ0YWIAAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcubnVtX3ZncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5udW1fYWdwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3Lm51bWJlcmVkX3NncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5udW1fbmFtZWRfYmFycmllcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3LnByaXZhdGVfc2VnX3NpemUAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy51c2VzX3ZjYwBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3LnVzZXNfZmxhdF9zY3JhdGNoAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcuaGFzX2R5bl9zaXplZF9zdGFjawBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3Lmhhc19yZWN1cnNpb24AX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5oYXNfaW5kaXJlY3RfY2FsbABhbWRncHUubWF4X251bV92Z3ByAGFtZGdwdS5tYXhfbnVtX2FncHIAYW1kZ3B1Lm1heF9udW1fc2dwcgBhbWRncHUubWF4X251bV9uYW1lZF9iYXJyaWVyAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5rZABfRFlOQU1JQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAHAAAAAgAAAAAAAAAAAgAAAAAAAAACAAAAAAAAmAQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAHAAAACwAAAAIAAAAAAAAAmAYAAAAAAACYBgAAAAAAAEgAAAAAAAAABQAAAAEAAAAIAAAAAAAAABgAAAAAAAAADwAAAPb//28CAAAAAAAAAOAGAAAAAAAA4AYAAAAAAAAkAAAAAAAAAAIAAAAAAAAACAAAAAAAAAAAAAAAAAAAABkAAAAFAAAAAgAAAAAAAAAEBwAAAAAAAAQHAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAfAAAAAwAAAAIAAAAAAAAAJAcAAAAAAAAkBwAAAAAAAD4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAJwAAAAEAAAACAAAAAAAAAIAHAAAAAAAAgAcAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAC8AAAABAAAABgAAAAAAAAAAGAAAAAAAAAAIAAAAAAAAgB4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAA1AAAABgAAAAMAAAAAAAAAgEYAAAAAAACAJgAAAAAAAHAAAAAAAAAABQAAAAAAAAAIAAAAAAAAABAAAAAAAAAAPgAAAAgAAAADAAAAAAAAAPBGAAAAAAAA8CYAAAAAAAAQCQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAE0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAPAmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABcAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADwJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAcQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAA8CYAAAAAAABmAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAH8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAFYnAAAAAAAAmAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACLAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADuJwAAAAAAANABAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAmQAAAAEAAAAwAAAAAAAAAAAAAAAAAAAAvikAAAAAAAB+AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAKQAAAABAAAAAAAAAAAAAAAAAAAAAAAAADwqAAAAAAAAogUAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACwAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADgLwAAAAAAACgAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAvQAAAAEAAAAwAAAAAAAAAAAAAAAAAAAACDAAAAAAAABnAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAMYAAAACAAAAAAAAAAAAAAAAAAAAAAAAAHAwAAAAAAAAsAEAAAAAAAAVAAAAEAAAAAgAAAAAAAAAGAAAAAAAAADOAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAgMgAAAAAAAOAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA2AAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAADMAAAAAAABUAgAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA=="""
_S1_80ac8f28 = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAAFg1AAAAAAAATwUAAEAAOAAIAEAAFgAUAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADABwAAAAAAAMAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAIAAAAAAAAABgAAAAAAAAAGAAAAAAAAIAeAAAAAAAAgB4AAAAAAAAAEAAAAAAAAAEAAAAGAAAAgCYAAAAAAACARgAAAAAAAIBGAAAAAAAAcAAAAAAAAACACQAAAAAAAAAQAAAAAAAAAgAAAAYAAACAJgAAAAAAAIBGAAAAAAAAgEYAAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAIAmAAAAAAAAgEYAAAAAAACARgAAAAAAAHAAAAAAAAAAgAkAAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAACYBAAAAAAAAJgEAAAAAAAABAAAAAAAAAAHAAAAggQAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc56Eri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0GKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQgpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyg6cub2Zmc2V0KKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQspS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldDClLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0NKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQ4pS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldDylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0QKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0SKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXRQpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyuS5ncm91cF9zZWdtZW50X2ZpeGVkX3NpemUAti5rZXJuYXJnX3NlZ21lbnRfYWxpZ24ItS5rZXJuYXJnX3NlZ21lbnRfc2l6ZVi4Lm1heF9mbGF0X3dvcmtncm91cF9zaXplzQEApS5uYW1lvF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTe7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudCixLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y/X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5rZLgudW5pZm9ybV93b3JrX2dyb3VwX3NpemUBsy51c2VzX2R5bmFtaWNfc3RhY2vCqy52Z3ByX2NvdW50zJKxLnZncHJfc3BpbGxfY291bnQAry53YXZlZnJvbnRfc2l6ZUCtYW1kaHNhLnRhcmdldLlhbWRnY24tYW1kLWFtZGhzYS0tZ2Z4OTUwrmFtZGhzYS52ZXJzaW9ukgECAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAYAAAAAAAAbBoAAAAAAAAeAAAAEQAGAIAHAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAQAAAYAgAAAABAAAARq6UdGMipXsDAAAA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AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwYAAAAAAAAAmAYAAAAAAAALAAAAAAAAABgAAAAAAAAABQAAAAAAAAAkBwAA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AAAAAAAAAAAAAAAAAAAAAFsBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAIYBAAAAAPH/AAAAAAAAAAAAAAAAAAAAALUBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAMkBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAN0BAAAAAPH/AAAAAAAAAAAAAAAAAAAAAPEBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAEsCAAAAAggAgEYAAAAAAAAAAAAAAAAAAA4CAAASAwcAABgAAAAAAABsGgAAAAAAACsCAAARAAYAgAcAAAAAAABAAAAAAAAAAAAubm90ZQAuZHluc3ltAC5nbnUuaGFzaAAuaGFzaAAuZHluc3RyAC5yb2RhdGEALnRleHQALmR5bmFtaWMALnJlbHJvX3BhZGRpbmcALkFNREdQVS5jc2RhdGEALkFNREdQVS5ncHJfbWF4aW11bXMALmRlYnVnX2FiYnJldgAuZGVidWdfaW5mbwAuZGVidWdfcmFuZ2VzAC5kZWJ1Z19zdHIALmRlYnVnX2xpbmUALmRlYnVnX2ZyYW1lAC5jb21tZW50AC5zeW10YWIALnNoc3RydGFiAC5zdHJ0YWIAAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcubnVtX3ZncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5udW1fYWdwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3Lm51bWJlcmVkX3NncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5udW1fbmFtZWRfYmFycmllcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3LnByaXZhdGVfc2VnX3NpemUAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy51c2VzX3ZjYwBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3LnVzZXNfZmxhdF9zY3JhdGNoAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcuaGFzX2R5bl9zaXplZF9zdGFjawBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3Lmhhc19yZWN1cnNpb24AX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5oYXNfaW5kaXJlY3RfY2FsbABhbWRncHUubWF4X251bV92Z3ByAGFtZGdwdS5tYXhfbnVtX2FncHIAYW1kZ3B1Lm1heF9udW1fc2dwcgBhbWRncHUubWF4X251bV9uYW1lZF9iYXJyaWVyAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5rZABfRFlOQU1JQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAHAAAAAgAAAAAAAAAAAgAAAAAAAAACAAAAAAAAmAQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAHAAAACwAAAAIAAAAAAAAAmAYAAAAAAACYBgAAAAAAAEgAAAAAAAAABQAAAAEAAAAIAAAAAAAAABgAAAAAAAAADwAAAPb//28CAAAAAAAAAOAGAAAAAAAA4AYAAAAAAAAkAAAAAAAAAAIAAAAAAAAACAAAAAAAAAAAAAAAAAAAABkAAAAFAAAAAgAAAAAAAAAEBwAAAAAAAAQHAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAfAAAAAwAAAAIAAAAAAAAAJAcAAAAAAAAkBwAAAAAAAD4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAJwAAAAEAAAACAAAAAAAAAIAHAAAAAAAAgAcAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAC8AAAABAAAABgAAAAAAAAAAGAAAAAAAAAAIAAAAAAAAgB4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAA1AAAABgAAAAMAAAAAAAAAgEYAAAAAAACAJgAAAAAAAHAAAAAAAAAABQAAAAAAAAAIAAAAAAAAABAAAAAAAAAAPgAAAAgAAAADAAAAAAAAAPBGAAAAAAAA8CYAAAAAAAAQCQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAE0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAPAmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABcAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADwJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAcQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAA8CYAAAAAAABmAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAH8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAFYnAAAAAAAAmAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACLAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADuJwAAAAAAANABAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAmQAAAAEAAAAwAAAAAAAAAAAAAAAAAAAAvikAAAAAAAB+AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAKQAAAABAAAAAAAAAAAAAAAAAAAAAAAAADwqAAAAAAAAogUAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACwAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADgLwAAAAAAACgAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAvQAAAAEAAAAwAAAAAAAAAAAAAAAAAAAACDAAAAAAAABnAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAMYAAAACAAAAAAAAAAAAAAAAAAAAAAAAAHAwAAAAAAAAsAEAAAAAAAAVAAAAEAAAAAgAAAAAAAAAGAAAAAAAAADOAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAgMgAAAAAAAOAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA2AAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAADMAAAAAAABUAgAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA=="""
_S1_b9f6dc9b = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAAFg1AAAAAAAATwUAAEAAOAAIAEAAFgAUAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADABwAAAAAAAMAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAIAAAAAAAAABgAAAAAAAAAGAAAAAAAAIAeAAAAAAAAgB4AAAAAAAAAEAAAAAAAAAEAAAAGAAAAgCYAAAAAAACARgAAAAAAAIBGAAAAAAAAcAAAAAAAAACACQAAAAAAAAAQAAAAAAAAAgAAAAYAAACAJgAAAAAAAIBGAAAAAAAAgEYAAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAIAmAAAAAAAAgEYAAAAAAACARgAAAAAAAHAAAAAAAAAAgAkAAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAACYBAAAAAAAAJgEAAAAAAAABAAAAAAAAAAHAAAAggQAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc56Eri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0GKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQgpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyg6cub2Zmc2V0KKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQspS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldDClLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0NKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQ4pS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldDylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0QKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0SKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXRQpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyuS5ncm91cF9zZWdtZW50X2ZpeGVkX3NpemUAti5rZXJuYXJnX3NlZ21lbnRfYWxpZ24ItS5rZXJuYXJnX3NlZ21lbnRfc2l6ZVi4Lm1heF9mbGF0X3dvcmtncm91cF9zaXplzQEApS5uYW1lvF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTe7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudCixLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y/X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5rZLgudW5pZm9ybV93b3JrX2dyb3VwX3NpemUBsy51c2VzX2R5bmFtaWNfc3RhY2vCqy52Z3ByX2NvdW50zJKxLnZncHJfc3BpbGxfY291bnQAry53YXZlZnJvbnRfc2l6ZUCtYW1kaHNhLnRhcmdldLlhbWRnY24tYW1kLWFtZGhzYS0tZ2Z4OTUwrmFtZGhzYS52ZXJzaW9ukgECAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAYAAAAAAAAbBoAAAAAAAAeAAAAEQAGAIAHAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAQAAAYAgAAAABAAAARq6UdGMipXsDAAAA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AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwYAAAAAAAAAmAYAAAAAAAALAAAAAAAAABgAAAAAAAAABQAAAAAAAAAkBwAA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AAAAAAAAAAAAAAAAAAAAAFsBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAIYBAAAAAPH/AAAAAAAAAAAAAAAAAAAAALUBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAMkBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAN0BAAAAAPH/AAAAAAAAAAAAAAAAAAAAAPEBAAAAAPH/AAAAAAAAAAAAAAAAAAAAAEsCAAAAAggAgEYAAAAAAAAAAAAAAAAAAA4CAAASAwcAABgAAAAAAABsGgAAAAAAACsCAAARAAYAgAcAAAAAAABAAAAAAAAAAAAubm90ZQAuZHluc3ltAC5nbnUuaGFzaAAuaGFzaAAuZHluc3RyAC5yb2RhdGEALnRleHQALmR5bmFtaWMALnJlbHJvX3BhZGRpbmcALkFNREdQVS5jc2RhdGEALkFNREdQVS5ncHJfbWF4aW11bXMALmRlYnVnX2FiYnJldgAuZGVidWdfaW5mbwAuZGVidWdfcmFuZ2VzAC5kZWJ1Z19zdHIALmRlYnVnX2xpbmUALmRlYnVnX2ZyYW1lAC5jb21tZW50AC5zeW10YWIALnNoc3RydGFiAC5zdHJ0YWIAAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcubnVtX3ZncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5udW1fYWdwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3Lm51bWJlcmVkX3NncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5udW1fbmFtZWRfYmFycmllcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3LnByaXZhdGVfc2VnX3NpemUAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy51c2VzX3ZjYwBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3LnVzZXNfZmxhdF9zY3JhdGNoAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcuaGFzX2R5bl9zaXplZF9zdGFjawBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTFfdjE3Lmhhc19yZWN1cnNpb24AX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5oYXNfaW5kaXJlY3RfY2FsbABhbWRncHUubWF4X251bV92Z3ByAGFtZGdwdS5tYXhfbnVtX2FncHIAYW1kZ3B1Lm1heF9udW1fc2dwcgBhbWRncHUubWF4X251bV9uYW1lZF9iYXJyaWVyAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMV92MTcAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UxX3YxNy5rZABfRFlOQU1JQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAHAAAAAgAAAAAAAAAAAgAAAAAAAAACAAAAAAAAmAQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAHAAAACwAAAAIAAAAAAAAAmAYAAAAAAACYBgAAAAAAAEgAAAAAAAAABQAAAAEAAAAIAAAAAAAAABgAAAAAAAAADwAAAPb//28CAAAAAAAAAOAGAAAAAAAA4AYAAAAAAAAkAAAAAAAAAAIAAAAAAAAACAAAAAAAAAAAAAAAAAAAABkAAAAFAAAAAgAAAAAAAAAEBwAAAAAAAAQHAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAfAAAAAwAAAAIAAAAAAAAAJAcAAAAAAAAkBwAAAAAAAD4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAJwAAAAEAAAACAAAAAAAAAIAHAAAAAAAAgAcAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAC8AAAABAAAABgAAAAAAAAAAGAAAAAAAAAAIAAAAAAAAgB4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAA1AAAABgAAAAMAAAAAAAAAgEYAAAAAAACAJgAAAAAAAHAAAAAAAAAABQAAAAAAAAAIAAAAAAAAABAAAAAAAAAAPgAAAAgAAAADAAAAAAAAAPBGAAAAAAAA8CYAAAAAAAAQCQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAE0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAPAmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABcAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADwJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAcQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAA8CYAAAAAAABmAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAH8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAFYnAAAAAAAAmAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACLAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADuJwAAAAAAANABAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAmQAAAAEAAAAwAAAAAAAAAAAAAAAAAAAAvikAAAAAAAB+AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAKQAAAABAAAAAAAAAAAAAAAAAAAAAAAAADwqAAAAAAAAogUAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACwAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADgLwAAAAAAACgAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAvQAAAAEAAAAwAAAAAAAAAAAAAAAAAAAACDAAAAAAAABnAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAMYAAAACAAAAAAAAAAAAAAAAAAAAAAAAAHAwAAAAAAAAsAEAAAAAAAAVAAAAEAAAAAgAAAAAAAAAGAAAAAAAAADOAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAgMgAAAAAAAOAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA2AAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAADMAAAAAAABUAgAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA=="""
S1_VARIANTS = {
    (4, 16): (69912, _S1_80ac8f28),
    (4, 32): (69912, _S1_b9f6dc9b),
    (32, 16): (69912, _S1_80ac8f28),
    (64, 8): (69912, _S1_0ade71b6),
    (256, 2): (69912, _S1_153a51e6),
}

S2_NAME = "_gluon_mla_decode_stage2"
_S2_22a953e7 = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAABgrAAAAAAAATwUAAEAAOAAIAEAAFQATAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAHAAAAAAAAABcAAAAAAAAAFwAAAAAAAMAXAAAAAAAAwBcAAAAAAAAAEAAAAAAAAAEAAAAGAAAAwB4AAAAAAADAPgAAAAAAAMA+AAAAAAAAcAAAAAAAAABAAQAAAAAAAAAQAAAAAAAAAgAAAAYAAADAHgAAAAAAAMA+AAAAAAAAwD4AAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAMAeAAAAAAAAwD4AAAAAAADAPgAAAAAAAHAAAAAAAAAAQAEAAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAADAAwAAAAAAAMADAAAAAAAABAAAAAAAAAAHAAAAqwMAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc5qEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKDpy5vZmZzZXQYpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldBylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0IKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQkpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldCilLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldDClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0OKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcrkuZ3JvdXBfc2VnbWVudF9maXhlZF9zaXplALYua2VybmFyZ19zZWdtZW50X2FsaWduCLUua2VybmFyZ19zZWdtZW50X3NpemVAuC5tYXhfZmxhdF93b3JrZ3JvdXBfc2l6Zc0BAKUubmFtZbhfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTK7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudB6xLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y7X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkuC51bmlmb3JtX3dvcmtfZ3JvdXBfc2l6ZQGzLnVzZXNfZHluYW1pY19zdGFja8KrLnZncHJfY291bnQOsS52Z3ByX3NwaWxsX2NvdW50AK8ud2F2ZWZyb250X3NpemVArWFtZGhzYS50YXJnZXS5YW1kZ2NuLWFtZC1hbWRoc2EtLWdmeDk1MK5hbWRoc2EudmVyc2lvbpIBAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAXAAAAAAAAkBMAAAAAAAAaAAAAEQAGAMAGAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAAAQAAYEAAAABAAAASh3vgudin2ADAAAAAwAAAAAAAAABAAAAAgAAAAAAAAAAAAAAAAAAAABfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAwQCvAKAAAAAIAA4AAAAAAIAABsAAAAAA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AAAAAAAAAAAAAAAARQAAAAAA8f8YAAAAAAAAAAAAAAAAAAAAbAAAAAAA8f8AAAAAAAAAAAAAAAAAAAAAlwAAAAAA8f8AAAAAAAAAAAAAAAAAAAAAwQAAAAAA8f8BAAAAAAAAAAAAAAAAAAAA4wAAAAAA8f8AAAAAAAAAAAAAAAAAAAAADgEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAOwEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAYgEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAjQEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAoQEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAtQEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAyQEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAGwIAAAACCADAPgAAAAAAAAAAAAAAAAAA5gEAABIDBwAAFwAAAAAAAJATAAAAAAAA/wEAABEABgDABgAAAAAAAEAAAAAAAAAAAC5ub3RlAC5keW5zeW0ALmdudS5oYXNoAC5oYXNoAC5keW5zdHIALnJvZGF0YQAudGV4dAAuZHluYW1pYwAucmVscm9fcGFkZGluZwAuQU1ER1BVLmNzZGF0YQAuQU1ER1BVLmdwcl9tYXhpbXVtcwAuZGVidWdfYWJicmV2AC5kZWJ1Z19pbmZvAC5kZWJ1Z19zdHIALmRlYnVnX2xpbmUALmRlYnVnX2ZyYW1lAC5jb21tZW50AC5zeW10YWIALnNoc3RydGFiAC5zdHJ0YWIAAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi5udW1fdmdwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIubnVtX2FncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLm51bWJlcmVkX3NncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLm51bV9uYW1lZF9iYXJyaWVyAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi5wcml2YXRlX3NlZ19zaXplAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi51c2VzX3ZjYwBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIudXNlc19mbGF0X3NjcmF0Y2gAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmhhc19keW5fc2l6ZWRfc3RhY2sAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmhhc19yZWN1cnNpb24AX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmhhc19pbmRpcmVjdF9jYWxsAGFtZGdwdS5tYXhfbnVtX3ZncHIAYW1kZ3B1Lm1heF9udW1fYWdwcgBhbWRncHUubWF4X251bV9zZ3ByAGFtZGdwdS5tYXhfbnVtX25hbWVkX2JhcnJpZXIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi5rZABfRFlOQU1JQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAABwAAAAIAAAAAAAAAAAIAAAAAAAAAAgAAAAAAAMADAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABwAAAAsAAAACAAAAAAAAAMAFAAAAAAAAwAUAAAAAAABIAAAAAAAAAAUAAAABAAAACAAAAAAAAAAYAAAAAAAAAA8AAAD2//9vAgAAAAAAAAAIBgAAAAAAAAgGAAAAAAAAJAAAAAAAAAACAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAZAAAABQAAAAIAAAAAAAAALAYAAAAAAAAsBgAAAAAAACAAAAAAAAAAAgAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAHwAAAAMAAAACAAAAAAAAAEwGAAAAAAAATAYAAAAAAAA2AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAACcAAAABAAAAAgAAAAAAAADABgAAAAAAAMAGAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAvAAAAAQAAAAYAAAAAAAAAABcAAAAAAAAABwAAAAAAAMAXAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAANQAAAAYAAAADAAAAAAAAAMA+AAAAAAAAwB4AAAAAAABwAAAAAAAAAAUAAAAAAAAACAAAAAAAAAAQAAAAAAAAAD4AAAAIAAAAAwAAAAAAAAAwPwAAAAAAADAfAAAAAAAA0AAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABNAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAwHwAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAXAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAMB8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAHEAAAABAAAAAAAAAAAAAAAAAAAAAAAAADAfAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAB/AAAAAQAAAAAAAAAAAAAAAAAAAAAAAABEHwAAAAAAACoAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAiwAAAAEAAAAwAAAAAAAAAAAAAAAAAAAAbh8AAAAAAABhAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAJYAAAABAAAAAAAAAAAAAAAAAAAAAAAAAM8fAAAAAAAADAYAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACiAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADgJQAAAAAAACgAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAArwAAAAEAAAAwAAAAAAAAAAAAAAAAAAAACCYAAAAAAABnAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAALgAAAACAAAAAAAAAAAAAAAAAAAAAAAAAHAmAAAAAAAAsAEAAAAAAAAUAAAAEAAAAAgAAAAAAAAAGAAAAAAAAADAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAgKAAAAAAAANIAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAygAAAAMAAAAAAAAAAAAAAAAAAAAAAAAA8igAAAAAAAAkAgAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA=="""
_S2_8c72a399 = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAABgrAAAAAAAATwUAAEAAOAAIAEAAFQATAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAHAAAAAAAAABcAAAAAAAAAFwAAAAAAAMAXAAAAAAAAwBcAAAAAAAAAEAAAAAAAAAEAAAAGAAAAwB4AAAAAAADAPgAAAAAAAMA+AAAAAAAAcAAAAAAAAABAAQAAAAAAAAAQAAAAAAAAAgAAAAYAAADAHgAAAAAAAMA+AAAAAAAAwD4AAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAMAeAAAAAAAAwD4AAAAAAADAPgAAAAAAAHAAAAAAAAAAQAEAAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAADAAwAAAAAAAMADAAAAAAAABAAAAAAAAAAHAAAAqwMAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc5qEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKDpy5vZmZzZXQYpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldBylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0IKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQkpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldCilLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldDClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0OKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcrkuZ3JvdXBfc2VnbWVudF9maXhlZF9zaXplALYua2VybmFyZ19zZWdtZW50X2FsaWduCLUua2VybmFyZ19zZWdtZW50X3NpemVAuC5tYXhfZmxhdF93b3JrZ3JvdXBfc2l6Zc0BAKUubmFtZbhfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTK7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudB6xLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y7X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkuC51bmlmb3JtX3dvcmtfZ3JvdXBfc2l6ZQGzLnVzZXNfZHluYW1pY19zdGFja8KrLnZncHJfY291bnQOsS52Z3ByX3NwaWxsX2NvdW50AK8ud2F2ZWZyb250X3NpemVArWFtZGhzYS50YXJnZXS5YW1kZ2NuLWFtZC1hbWRoc2EtLWdmeDk1MK5hbWRoc2EudmVyc2lvbpIBAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAXAAAAAAAAkBMAAAAAAAAaAAAAEQAGAMAGAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAAAQAAYEAAAABAAAASh3vgudin2ADAAAAAwAAAAAAAAABAAAAAgAAAAAAAAAAAAAAAAAAAABfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAwQCvAKAAAAAIAA4AAAAAAIAABsAAAAAA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AAAAAAAAAAAAAAAARQAAAAAA8f8YAAAAAAAAAAAAAAAAAAAAbAAAAAAA8f8AAAAAAAAAAAAAAAAAAAAAlwAAAAAA8f8AAAAAAAAAAAAAAAAAAAAAwQAAAAAA8f8BAAAAAAAAAAAAAAAAAAAA4wAAAAAA8f8AAAAAAAAAAAAAAAAAAAAADgEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAOwEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAYgEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAjQEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAoQEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAtQEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAyQEAAAAA8f8AAAAAAAAAAAAAAAAAAAAAGwIAAAACCADAPgAAAAAAAAAAAAAAAAAA5gEAABIDBwAAFwAAAAAAAJATAAAAAAAA/wEAABEABgDABgAAAAAAAEAAAAAAAAAAAC5ub3RlAC5keW5zeW0ALmdudS5oYXNoAC5oYXNoAC5keW5zdHIALnJvZGF0YQAudGV4dAAuZHluYW1pYwAucmVscm9fcGFkZGluZwAuQU1ER1BVLmNzZGF0YQAuQU1ER1BVLmdwcl9tYXhpbXVtcwAuZGVidWdfYWJicmV2AC5kZWJ1Z19pbmZvAC5kZWJ1Z19zdHIALmRlYnVnX2xpbmUALmRlYnVnX2ZyYW1lAC5jb21tZW50AC5zeW10YWIALnNoc3RydGFiAC5zdHJ0YWIAAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi5udW1fdmdwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIubnVtX2FncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLm51bWJlcmVkX3NncHIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLm51bV9uYW1lZF9iYXJyaWVyAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi5wcml2YXRlX3NlZ19zaXplAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi51c2VzX3ZjYwBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIudXNlc19mbGF0X3NjcmF0Y2gAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmhhc19keW5fc2l6ZWRfc3RhY2sAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmhhc19yZWN1cnNpb24AX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmhhc19pbmRpcmVjdF9jYWxsAGFtZGdwdS5tYXhfbnVtX3ZncHIAYW1kZ3B1Lm1heF9udW1fYWdwcgBhbWRncHUubWF4X251bV9zZ3ByAGFtZGdwdS5tYXhfbnVtX25hbWVkX2JhcnJpZXIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi5rZABfRFlOQU1JQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAABwAAAAIAAAAAAAAAAAIAAAAAAAAAAgAAAAAAAMADAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABwAAAAsAAAACAAAAAAAAAMAFAAAAAAAAwAUAAAAAAABIAAAAAAAAAAUAAAABAAAACAAAAAAAAAAYAAAAAAAAAA8AAAD2//9vAgAAAAAAAAAIBgAAAAAAAAgGAAAAAAAAJAAAAAAAAAACAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAZAAAABQAAAAIAAAAAAAAALAYAAAAAAAAsBgAAAAAAACAAAAAAAAAAAgAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAHwAAAAMAAAACAAAAAAAAAEwGAAAAAAAATAYAAAAAAAA2AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAACcAAAABAAAAAgAAAAAAAADABgAAAAAAAMAGAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAvAAAAAQAAAAYAAAAAAAAAABcAAAAAAAAABwAAAAAAAMAXAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAANQAAAAYAAAADAAAAAAAAAMA+AAAAAAAAwB4AAAAAAABwAAAAAAAAAAUAAAAAAAAACAAAAAAAAAAQAAAAAAAAAD4AAAAIAAAAAwAAAAAAAAAwPwAAAAAAADAfAAAAAAAA0AAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABNAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAwHwAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAXAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAMB8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAHEAAAABAAAAAAAAAAAAAAAAAAAAAAAAADAfAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAB/AAAAAQAAAAAAAAAAAAAAAAAAAAAAAABEHwAAAAAAACoAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAiwAAAAEAAAAwAAAAAAAAAAAAAAAAAAAAbh8AAAAAAABhAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAJYAAAABAAAAAAAAAAAAAAAAAAAAAAAAAM8fAAAAAAAADAYAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACiAAAAAQAAAAAAAAAAAAAAAAAAAAAAAADgJQAAAAAAACgAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAArwAAAAEAAAAwAAAAAAAAAAAAAAAAAAAACCYAAAAAAABnAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAALgAAAACAAAAAAAAAAAAAAAAAAAAAAAAAHAmAAAAAAAAsAEAAAAAAAAUAAAAEAAAAAgAAAAAAAAAGAAAAAAAAADAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAgKAAAAAAAANIAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAygAAAAMAAAAAAAAAAAAAAAAAAAAAAAAA8igAAAAAAAAkAgAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA=="""
_S2_994e8c9c = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAACggAAAAAAAATwUAAEAAOAAIAEAAFQATAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAHAAAAAAAAABcAAAAAAAAAFwAAAAAAAEAPAAAAAAAAQA8AAAAAAAAAEAAAAAAAAAEAAAAGAAAAQBYAAAAAAABANgAAAAAAAEA2AAAAAAAAcAAAAAAAAADACQAAAAAAAAAQAAAAAAAAAgAAAAYAAABAFgAAAAAAAEA2AAAAAAAAQDYAAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAEAWAAAAAAAAQDYAAAAAAABANgAAAAAAAHAAAAAAAAAAwAkAAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAADAAwAAAAAAAMADAAAAAAAABAAAAAAAAAAHAAAAqwMAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc5qEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKDpy5vZmZzZXQYpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldBylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0IKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQkpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldCilLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldDClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0OKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcrkuZ3JvdXBfc2VnbWVudF9maXhlZF9zaXplALYua2VybmFyZ19zZWdtZW50X2FsaWduCLUua2VybmFyZ19zZWdtZW50X3NpemVAuC5tYXhfZmxhdF93b3JrZ3JvdXBfc2l6Zc0BAKUubmFtZbhfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTK7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudB6xLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y7X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkuC51bmlmb3JtX3dvcmtfZ3JvdXBfc2l6ZQGzLnVzZXNfZHluYW1pY19zdGFja8KrLnZncHJfY291bnQOsS52Z3ByX3NwaWxsX2NvdW50AK8ud2F2ZWZyb250X3NpemVArWFtZGhzYS50YXJnZXS5YW1kZ2NuLWFtZC1hbWRoc2EtLWdmeDk1MK5hbWRoc2EudmVyc2lvbpIBAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAXAAAAAAAAQAsAAAAAAAAaAAAAEQAGAMAGAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAAAQAAYEAAAABAAAASh3vgudin2ADAAAAAwAAAAAAAAABAAAAAgAAAAAAAAAAAAAAAAAAAABfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAwQCvAKAAAAAIAA4AAAAAAIAABsAAAAAA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gBIWAAkAANGAEgoA/w4WdjuquD//EBJ2O6q4PwtBDn4JQRJ+/4APhcD///8CfoKG/4AChcD///8IAIjSBx8AAAkAiNIJBQAACQMWfgwDDn5xD4y/ChMUCnAPjL8CQLHTAhECGABAsNMAESoMAgcEAgmDAo4CDQKDAgsFvz/+hL98/oK/gAIAfgADAn6AAgR+/wIOfgAAgP8JgQ+ODw0CgwIJBb/f/YS/HP6CvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/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AAAAAAAAAADjAAAAAADx/wAAAAAAAAAAAAAAAAAAAAAOAQAAAADx/wAAAAAAAAAAAAAAAAAAAAA7AQAAAADx/wAAAAAAAAAAAAAAAAAAAABiAQAAAADx/wAAAAAAAAAAAAAAAAAAAACNAQAAAADx/wAAAAAAAAAAAAAAAAAAAAChAQAAAADx/wAAAAAAAAAAAAAAAAAAAAC1AQAAAADx/wAAAAAAAAAAAAAAAAAAAADJAQAAAADx/wAAAAAAAAAAAAAAAAAAAAAbAgAAAAIIAEA2AAAAAAAAAAAAAAAAAADmAQAAEgMHAAAXAAAAAAAAQAsAAAAAAAD/AQAAEQAGAMAGAAAAAAAAQAAAAAAAAAAALm5vdGUALmR5bnN5bQAuZ251Lmhhc2gALmhhc2gALmR5bnN0cgAucm9kYXRhAC50ZXh0AC5keW5hbWljAC5yZWxyb19wYWRkaW5nAC5BTURHUFUuY3NkYXRhAC5BTURHUFUuZ3ByX21heGltdW1zAC5kZWJ1Z19hYmJyZXYALmRlYnVnX2luZm8ALmRlYnVnX3N0cgAuZGVidWdfbGluZQAuZGVidWdfZnJhbWUALmNvbW1lbnQALnN5bXRhYgAuc2hzdHJ0YWIALnN0cnRhYgAAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLm51bV92Z3ByAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi5udW1fYWdwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIubnVtYmVyZWRfc2dwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIubnVtX25hbWVkX2JhcnJpZXIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLnByaXZhdGVfc2VnX3NpemUAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLnVzZXNfdmNjAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi51c2VzX2ZsYXRfc2NyYXRjaABfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIuaGFzX2R5bl9zaXplZF9zdGFjawBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIuaGFzX3JlY3Vyc2lvbgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIuaGFzX2luZGlyZWN0X2NhbGwAYW1kZ3B1Lm1heF9udW1fdmdwcgBhbWRncHUubWF4X251bV9hZ3ByAGFtZGdwdS5tYXhfbnVtX3NncHIAYW1kZ3B1Lm1heF9udW1fbmFtZWRfYmFycmllcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkAF9EWU5BTUlDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAHAAAAAgAAAAAAAAAAAgAAAAAAAAACAAAAAAAAwAMAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAHAAAACwAAAAIAAAAAAAAAwAUAAAAAAADABQAAAAAAAEgAAAAAAAAABQAAAAEAAAAIAAAAAAAAABgAAAAAAAAADwAAAPb//28CAAAAAAAAAAgGAAAAAAAACAYAAAAAAAAkAAAAAAAAAAIAAAAAAAAACAAAAAAAAAAAAAAAAAAAABkAAAAFAAAAAgAAAAAAAAAsBgAAAAAAACwGAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAfAAAAAwAAAAIAAAAAAAAATAYAAAAAAABMBgAAAAAAADYAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAJwAAAAEAAAACAAAAAAAAAMAGAAAAAAAAwAYAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAC8AAAABAAAABgAAAAAAAAAAFwAAAAAAAAAHAAAAAAAAQA8AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAA1AAAABgAAAAMAAAAAAAAAQDYAAAAAAABAFgAAAAAAAHAAAAAAAAAABQAAAAAAAAAIAAAAAAAAABAAAAAAAAAAPgAAAAgAAAADAAAAAAAAALA2AAAAAAAAsBYAAAAAAABQCQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAE0AAAABAAAAAAAAAAAAAAAAAAAAAAAAALAWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABcAAAAAQAAAAAAAAAAAAAAAAAAAAAAAACwFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAcQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAsBYAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAH8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAMQWAAAAAAAAKgAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACLAAAAAQAAADAAAAAAAAAAAAAAAAAAAADuFgAAAAAAAGEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAlgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAATxcAAAAAAACfAwAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAKIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAPAaAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAACvAAAAAQAAADAAAAAAAAAAAAAAAAAAAAAYGwAAAAAAAGcAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAuAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAgBsAAAAAAACwAQAAAAAAABQAAAAQAAAACAAAAAAAAAAYAAAAAAAAAMAAAAADAAAAAAAAAAAAAAAAAAAAAAAAADAdAAAAAAAA0gAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAADKAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAACHgAAAAAAACQCAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA"""
_S2_9f4d19a7 = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAABAaAAAAAAAATwUAAEAAOAAIAEAAFQATAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAHAAAAAAAAABcAAAAAAAAAFwAAAAAAAMAKAAAAAAAAwAoAAAAAAAAAEAAAAAAAAAEAAAAGAAAAwBEAAAAAAADAMQAAAAAAAMAxAAAAAAAAcAAAAAAAAABADgAAAAAAAAAQAAAAAAAAAgAAAAYAAADAEQAAAAAAAMAxAAAAAAAAwDEAAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAMARAAAAAAAAwDEAAAAAAADAMQAAAAAAAHAAAAAAAAAAQA4AAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAADAAwAAAAAAAMADAAAAAAAABAAAAAAAAAAHAAAAqwMAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc5qEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKDpy5vZmZzZXQYpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldBylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0IKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQkpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldCilLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldDClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0OKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcrkuZ3JvdXBfc2VnbWVudF9maXhlZF9zaXplALYua2VybmFyZ19zZWdtZW50X2FsaWduCLUua2VybmFyZ19zZWdtZW50X3NpemVAuC5tYXhfZmxhdF93b3JrZ3JvdXBfc2l6Zc0BAKUubmFtZbhfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTK7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudCyxLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y7X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkuC51bmlmb3JtX3dvcmtfZ3JvdXBfc2l6ZQGzLnVzZXNfZHluYW1pY19zdGFja8KrLnZncHJfY291bnQOsS52Z3ByX3NwaWxsX2NvdW50AK8ud2F2ZWZyb250X3NpemVArWFtZGhzYS50YXJnZXS5YW1kZ2NuLWFtZC1hbWRoc2EtLWdmeDk1MK5hbWRoc2EudmVyc2lvbpIBAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAXAAAAAAAAsAYAAAAAAAAaAAAAEQAGAMAGAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAAAQAAYEAAAABAAAASh3vgudin2ADAAAAAwAAAAAAAAABAAAAAgAAAAAAAAAAAAAAAAAAAABfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAQQGvAKAAAAAIAA4AAAAAAIAABsAAAAAA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AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/AACAvwAAgL8AAIC/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wDEAAAAAAADAEQAAAAAAAHAAAAAAAAAABQAAAAAAAAAIAAAAAAAAABAAAAAAAAAAPgAAAAgAAAADAAAAAAAAADAyAAAAAAAAMBIAAAAAAADQDQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAE0AAAABAAAAAAAAAAAAAAAAAAAAAAAAADASAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABcAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAwEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAcQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAMBIAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAH8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAEQSAAAAAAAAKgAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACLAAAAAQAAADAAAAAAAAAAAAAAAAAAAABuEgAAAAAAAGEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAlgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAzxIAAAAAAAAJAgAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAKIAAAABAAAAAAAAAAAAAAAAAAAAAAAAANgUAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAACvAAAAAQAAADAAAAAAAAAAAAAAAAAAAAAAFQAAAAAAAGcAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAuAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAaBUAAAAAAACwAQAAAAAAABQAAAAQAAAACAAAAAAAAAAYAAAAAAAAAMAAAAADAAAAAAAAAAAAAAAAAAAAAAAAABgXAAAAAAAA0gAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAADKAAAAAwAAAAAAAAAAAAAAAAAAAAAAAADqFwAAAAAAACQCAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA"""
_S2_bb7c25cc = """f0VMRgIBAUADAAAAAAAAAAMA4AABAAAAAAAAAAAAAABAAAAAAAAAAKAXAAAAAAAATwUAAEAAOAAIAEAAFQATAAYAAAAEAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAEAAAAAAADAAQAAAAAAAAgAAAAAAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAHAAAAAAAAABAAAAAAAAABAAAABQAAAAAHAAAAAAAAABcAAAAAAAAAFwAAAAAAAMAIAAAAAAAAwAgAAAAAAAAAEAAAAAAAAAEAAAAGAAAAwA8AAAAAAADALwAAAAAAAMAvAAAAAAAAcAAAAAAAAABAEAAAAAAAAAAQAAAAAAAAAgAAAAYAAADADwAAAAAAAMAvAAAAAAAAwC8AAAAAAABwAAAAAAAAAHAAAAAAAAAACAAAAAAAAABS5XRkBAAAAMAPAAAAAAAAwC8AAAAAAADALwAAAAAAAHAAAAAAAAAAQBAAAAAAAAABAAAAAAAAAFHldGQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAADAAwAAAAAAAMADAAAAAAAABAAAAAAAAAAHAAAAqwMAACAAAABBTURHUFUAAIOuYW1kaHNhLmtlcm5lbHOR3gAQqy5hZ3ByX2NvdW50AKUuYXJnc5qEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0AKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcoSuLmFkZHJlc3Nfc3BhY2WmZ2xvYmFspy5vZmZzZXQIpS5zaXplCKsudmFsdWVfa2luZK1nbG9iYWxfYnVmZmVyhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldBClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKDpy5vZmZzZXQYpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldBylLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlg6cub2Zmc2V0IKUuc2l6ZQSrLnZhbHVlX2tpbmSoYnlfdmFsdWWDpy5vZmZzZXQkpS5zaXplBKsudmFsdWVfa2luZKhieV92YWx1ZYOnLm9mZnNldCilLnNpemUEqy52YWx1ZV9raW5kqGJ5X3ZhbHVlhK4uYWRkcmVzc19zcGFjZaZnbG9iYWynLm9mZnNldDClLnNpemUIqy52YWx1ZV9raW5krWdsb2JhbF9idWZmZXKEri5hZGRyZXNzX3NwYWNlpmdsb2JhbKcub2Zmc2V0OKUuc2l6ZQirLnZhbHVlX2tpbmStZ2xvYmFsX2J1ZmZlcrkuZ3JvdXBfc2VnbWVudF9maXhlZF9zaXplALYua2VybmFyZ19zZWdtZW50X2FsaWduCLUua2VybmFyZ19zZWdtZW50X3NpemVAuC5tYXhfZmxhdF93b3JrZ3JvdXBfc2l6Zc0BAKUubmFtZbhfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTK7LnByaXZhdGVfc2VnbWVudF9maXhlZF9zaXplAKsuc2dwcl9jb3VudB6xLnNncHJfc3BpbGxfY291bnQApy5zeW1ib2y7X2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkuC51bmlmb3JtX3dvcmtfZ3JvdXBfc2l6ZQGzLnVzZXNfZHluYW1pY19zdGFja8KrLnZncHJfY291bnQMsS52Z3ByX3NwaWxsX2NvdW50AK8ud2F2ZWZyb250X3NpemVArWFtZGhzYS50YXJnZXS5YW1kZ2NuLWFtZC1hbWRoc2EtLWdmeDk1MK5hbWRoc2EudmVyc2lvbpIBAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAEgMHAAAXAAAAAAAApAQAAAAAAAAaAAAAEQAGAMAGAAAAAAAAQAAAAAAAAAABAAAAAQAAAAEAAAAaAAAAAAQAAYEAAAABAAAASh3vgudin2ADAAAAAwAAAAAAAAABAAAAAgAAAAAAAAAAAAAAAAAAAABfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAwQCvAKAAAAAIAA4AAAAAAIAABsAAAAAA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AC5kZWJ1Z19hYmJyZXYALmRlYnVnX2luZm8ALmRlYnVnX3N0cgAuZGVidWdfbGluZQAuZGVidWdfZnJhbWUALmNvbW1lbnQALnN5bXRhYgAuc2hzdHJ0YWIALnN0cnRhYgAAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLm51bV92Z3ByAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi5udW1fYWdwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIubnVtYmVyZWRfc2dwcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIubnVtX25hbWVkX2JhcnJpZXIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLnByaXZhdGVfc2VnX3NpemUAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLnVzZXNfdmNjAF9nbHVvbl9tbGFfZGVjb2RlX3N0YWdlMi51c2VzX2ZsYXRfc2NyYXRjaABfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIuaGFzX2R5bl9zaXplZF9zdGFjawBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIuaGFzX3JlY3Vyc2lvbgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIuaGFzX2luZGlyZWN0X2NhbGwAYW1kZ3B1Lm1heF9udW1fdmdwcgBhbWRncHUubWF4X251bV9hZ3ByAGFtZGdwdS5tYXhfbnVtX3NncHIAYW1kZ3B1Lm1heF9udW1fbmFtZWRfYmFycmllcgBfZ2x1b25fbWxhX2RlY29kZV9zdGFnZTIAX2dsdW9uX21sYV9kZWNvZGVfc3RhZ2UyLmtkAF9EWU5BTUlDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAHAAAAAgAAAAAAAAAAAgAAAAAAAAACAAAAAAAAwAMAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAHAAAACwAAAAIAAAAAAAAAwAUAAAAAAADABQAAAAAAAEgAAAAAAAAABQAAAAEAAAAIAAAAAAAAABgAAAAAAAAADwAAAPb//28CAAAAAAAAAAgGAAAAAAAACAYAAAAAAAAkAAAAAAAAAAIAAAAAAAAACAAAAAAAAAAAAAAAAAAAABkAAAAFAAAAAgAAAAAAAAAsBgAAAAAAACwGAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAfAAAAAwAAAAIAAAAAAAAATAYAAAAAAABMBgAAAAAAADYAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAJwAAAAEAAAACAAAAAAAAAMAGAAAAAAAAwAYAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAC8AAAABAAAABgAAAAAAAAAAFwAAAAAAAAAHAAAAAAAAwAgAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAA1AAAABgAAAAMAAAAAAAAAwC8AAAAAAADADwAAAAAAAHAAAAAAAAAABQAAAAAAAAAIAAAAAAAAABAAAAAAAAAAPgAAAAgAAAADAAAAAAAAADAwAAAAAAAAMBAAAAAAAADQDwAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAE0AAAABAAAAAAAAAAAAAAAAAAAAAAAAADAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABcAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAcQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAMBAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAH8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAEQQAAAAAAAAKgAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAACLAAAAAQAAADAAAAAAAAAAAAAAAAAAAABuEAAAAAAAAGEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAlgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAzxAAAAAAAACWAQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAKIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAGgSAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAACvAAAAAQAAADAAAAAAAAAAAAAAAAAAAACQEgAAAAAAAGcAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAuAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAA+BIAAAAAAACwAQAAAAAAABQAAAAQAAAACAAAAAAAAAAYAAAAAAAAAMAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAKgUAAAAAAAA0gAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAADKAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAB6FQAAAAAAACQCAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA"""
S2_VARIANTS = {
    (4, 16): (0, _S2_22a953e7),
    (4, 32): (0, _S2_9f4d19a7),
    (32, 16): (0, _S2_8c72a399),
    (64, 8): (0, _S2_994e8c9c),
    (256, 2): (0, _S2_bb7c25cc),
}

HIP_LAUNCH_PARAM_BUFFER_POINTER = ctypes.c_void_p(0x01)
HIP_LAUNCH_PARAM_BUFFER_SIZE = ctypes.c_void_p(0x02)
HIP_LAUNCH_PARAM_END = ctypes.c_void_p(0x03)
_hip = None
_loaded = {}

def _get_hip():
    global _hip
    if _hip is not None: return _hip
    _hip = ctypes.CDLL("libamdhip64.so.7")
    _hip.hipModuleLoadData.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
    _hip.hipModuleLoadData.restype = ctypes.c_int
    _hip.hipModuleGetFunction.argtypes = [ctypes.c_void_p, ctypes.c_void_p, ctypes.c_char_p]
    _hip.hipModuleGetFunction.restype = ctypes.c_int
    _hip.hipModuleLaunchKernel.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_uint, ctypes.c_uint, ctypes.c_uint, ctypes.c_uint, ctypes.c_uint, ctypes.c_uint, ctypes.c_void_p, ctypes.c_void_p, ctypes.c_void_p]
    _hip.hipModuleLaunchKernel.restype = ctypes.c_int
    _hip.hipSetDevice.argtypes = [ctypes.c_int]
    _hip.hipSetDevice.restype = ctypes.c_int
    return _hip

def _load_kernel(b64_data, kernel_name, variant_id):
    cache_key = f"{variant_id}_{kernel_name}"
    if cache_key in _loaded: return _loaded[cache_key]
    hip = _get_hip()
    binary = base64.b64decode(b64_data)
    buf = ctypes.create_string_buffer(len(binary))
    ctypes.memmove(buf, binary, len(binary))
    mod = ctypes.c_void_p()
    err = hip.hipModuleLoadData(ctypes.byref(mod), buf)
    if err != 0: raise RuntimeError(f"hipModuleLoadData error {err}")
    func = ctypes.c_void_p()
    err = hip.hipModuleGetFunction(ctypes.byref(func), mod, kernel_name.encode())
    if err != 0: raise RuntimeError(f"hipModuleGetFunction error {err}")
    _loaded[cache_key] = (mod, func)
    return mod, func

def _launch_kernel(func, grid, block, shared_mem, kernarg_bytes):
    hip = _get_hip()
    argbuf = (ctypes.c_uint8 * len(kernarg_bytes))()
    ctypes.memmove(argbuf, kernarg_bytes, len(kernarg_bytes))
    buf_size = ctypes.c_size_t(len(kernarg_bytes))
    extra = (ctypes.c_void_p * 6)(HIP_LAUNCH_PARAM_BUFFER_POINTER, ctypes.c_void_p(ctypes.addressof(argbuf)), HIP_LAUNCH_PARAM_BUFFER_SIZE, ctypes.c_void_p(ctypes.addressof(buf_size)), HIP_LAUNCH_PARAM_END, None)
    gx, gy, gz = grid[0], grid[1] if len(grid) > 1 else 1, grid[2] if len(grid) > 2 else 1
    bx, by, bz = block[0], block[1] if len(block) > 1 else 1, block[2] if len(block) > 2 else 1
    err = hip.hipModuleLaunchKernel(func, gx, gy, gz, bx, by, bz, shared_mem, None, None, extra)
    if err != 0: raise RuntimeError(f"HIP launch error {err}")

class _PtrArg:
    __slots__ = ("value",)
    def __init__(self, v): self.value = v
class _F32Arg:
    __slots__ = ("value",)
    def __init__(self, v): self.value = v
class _I32Arg:
    __slots__ = ("value",)
    def __init__(self, v): self.value = v
def ptr(v): return _PtrArg(v)
def f32(v): return _F32Arg(v)
def i32(v): return _I32Arg(v)

def _build_kernarg(items):
    argbuf = bytearray(256)
    offset = 0
    for item in items:
        if isinstance(item, _PtrArg):
            if offset % 8 != 0: offset += 8 - (offset % 8)
            struct.pack_into("Q", argbuf, offset, item.value)
            offset += 8
        elif isinstance(item, _F32Arg):
            if offset % 4 != 0: offset += 4 - (offset % 4)
            struct.pack_into("f", argbuf, offset, item.value)
            offset += 4
        elif isinstance(item, _I32Arg):
            if offset % 4 != 0: offset += 4 - (offset % 4)
            struct.pack_into("i", argbuf, offset, item.value)
            offset += 4
    while offset % 8 != 0: offset += 8 - (offset % 8)
    return bytes(argbuf[:offset])

def _launch_stage1(q, kv_buffer_fp8, kv_scale, kv_indptr, att_out, sm_scale, stride_q_token, stride_q_head, stride_kv_token, stride_mid_b, stride_mid_h, stride_mid_s, batch, num_heads, NUM_KV_SPLITS, grid, block):
    shared_mem, b64_data = S1_VARIANTS[(batch, NUM_KV_SPLITS)]
    mod, func = _load_kernel(b64_data, S1_NAME, f"s1_{batch}_{NUM_KV_SPLITS}")
    kernarg = _build_kernarg([ptr(q.data_ptr()), ptr(kv_buffer_fp8.data_ptr()), ptr(kv_scale.data_ptr()), ptr(kv_indptr.data_ptr()), ptr(att_out.data_ptr()), f32(sm_scale), i32(stride_q_token), i32(stride_q_head), i32(stride_kv_token), i32(stride_mid_b), i32(stride_mid_h), i32(stride_mid_s), ptr(0), ptr(0)])
    _launch_kernel(func, grid, block, shared_mem, kernarg)

def _launch_stage2(mid_o, output, kv_indptr, stride_mid_b, stride_mid_h, stride_mid_s, stride_o_token, stride_o_head, batch, num_heads, NUM_KV_SPLITS, grid, block):
    shared_mem, b64_data = S2_VARIANTS[(batch, NUM_KV_SPLITS)]
    mod, func = _load_kernel(b64_data, S2_NAME, f"s2_{batch}_{NUM_KV_SPLITS}")
    kernarg = _build_kernarg([ptr(mid_o.data_ptr()), ptr(output.data_ptr()), ptr(kv_indptr.data_ptr()), i32(stride_mid_b), i32(stride_mid_h), i32(stride_mid_s), i32(stride_o_token), i32(stride_o_head), ptr(0), ptr(0)])
    _launch_kernel(func, grid, block, shared_mem, kernarg)

def _get_split_config(batch_size, num_heads, BLOCK_H, BLOCK_N, kv_seq_len):
    num_head_blocks = (num_heads + BLOCK_H - 1) // BLOCK_H
    batch_parallelism = batch_size * num_head_blocks
    if batch_parallelism <=16 and kv_seq_len > 4096:
        return 32, num_head_blocks
    if batch_parallelism <= 32: return 16, num_head_blocks
    elif batch_parallelism <= 64: return 8, num_head_blocks
    elif batch_parallelism <= 128: return 4, num_head_blocks
    elif batch_parallelism <= 256:
        if kv_seq_len < 4096: return 2, num_head_blocks
        else: return 2, num_head_blocks
    else: return 1, num_head_blocks

def custom_kernel(data: input_t) -> output_t:
    q, kv_data, qo_indptr, kv_indptr, config = data
    BLOCK_H, BLOCK_N, BLOCK_C, BLOCK_R = 16, 64, 512, 64
    batch_size, num_heads = config["batch_size"], config["num_heads"]
    v_head_dim, sm_scale, kv_lora_rank = config["v_head_dim"], config["sm_scale"], config["kv_lora_rank"]
    kv_buffer_fp8, kv_scale = kv_data["fp8"]
    NUM_KV_SPLITS, num_head_blocks = _get_split_config(batch_size, num_heads, BLOCK_H, BLOCK_N, config["kv_seq_len"])
    output = torch.empty(q.shape[0], num_heads, v_head_dim, dtype=torch.bfloat16, device=q.device)
    mid_o = torch.empty(batch_size, num_heads, NUM_KV_SPLITS, kv_lora_rank + 1, dtype=torch.float32, device=q.device)
    grid1 = (batch_size * num_head_blocks * NUM_KV_SPLITS,)
    _launch_stage1(q, kv_buffer_fp8, kv_scale, kv_indptr, mid_o, sm_scale, q.stride(0), q.stride(1), kv_buffer_fp8.stride(0), mid_o.stride(0), mid_o.stride(1), mid_o.stride(2), batch=batch_size, num_heads=num_heads, NUM_KV_SPLITS=NUM_KV_SPLITS, grid=grid1, block=(256,))
    grid2 = (batch_size * num_heads,)
    _launch_stage2(mid_o, output, kv_indptr, mid_o.stride(0), mid_o.stride(1), mid_o.stride(2), output.stride(0), output.stride(1), batch=batch_size, num_heads=num_heads, NUM_KV_SPLITS=NUM_KV_SPLITS, grid=grid2, block=(256,))
    return output
scrolls · 152 lines total

Source code from GPU Mode and the KernelBot dataset · June 9 Researcher Reciprocity License v1.0

Best evidence level for this revision: reported

JSON