Skip to content

Instantly share code, notes, and snippets.

@antiops
Last active March 2, 2023 00:53
Show Gist options
  • Save antiops/6e4eacc8e7376b81c2e348298c96087c to your computer and use it in GitHub Desktop.
Save antiops/6e4eacc8e7376b81c2e348298c96087c to your computer and use it in GitHub Desktop.
DiscordLite + Amoled CSS & Wide GIF Picker

https://github.com/therealcyber71/Discord-Lite

Dependencies

Python3 and pip

python3 -m pip install pyinstaller pythonnet==3.0.0a2 clr-loader==0.1.7

# or
python -m pip install pyinstaller pythonnet==3.0.0a2 clr-loader==0.1.7

Discord Icon

https://discord.com/assets/ec2c34cadd4b5f4594415127380a85e6.ico


Build

Plain DiscordLite

  • Download DiscordLite.py & icon.ico and run:
pyinstaller --onefile -w --icon=icon.ico DiscordLite.py

Modded w/ AMOLED Theme & wide GIF/Emote picker

  • Download DiscordLite-mod.py & icon.ico and run:
pyinstaller --onefile -w --icon=icon.ico DiscordLite-mod.py
  • Your fresh exe will be in the dist folder. you can copy it to wherever youd like

The scuffed

use https://www.base64encode.org/ to easily encode

The custom CSS is already encoded on line 5 but if you want to do it yourself just remove line 5 & uncomment line 4 and:

(you can also just decode the junk on line 5 to confirm its not sus instead of doing all the other shit and just build)

div[class^="drawerSizingWrapper-"] {
    width: 75% !important;
}
  • Remove any = characters from the end of the output
  • Replace BASE64_ENCODED_CSS_HERE with the encoded junk
  • Run pyinstaller command
import webview
def on_loaded():
#webview.windows[0].evaluate_js('document.getElementsByTagName("head")[0].insertAdjacentHTML("beforeend", `<style type="text/css">${atob("BASE64_ENCODED_CSS_HERE")}</style>`)', callback=None)
webview.windows[0].evaluate_js('document.getElementsByTagName("head")[0].insertAdjacentHTML("beforeend", `<style type="text/css">${atob("OnJvb3QsCi50aGVtZS1kYXJrOm5vdCgudXNlclByb2ZpbGVPdXRlclRoZW1lZC0zRWZIbXYpLAoudGhlbWUtbGlnaHQ6bm90KC51c2VyUHJvZmlsZU91dGVyVGhlbWVkLTNFZkhtdiksCi50aGVtZS1hbW9sZWQ6bm90KC51c2VyUHJvZmlsZU91dGVyVGhlbWVkLTNFZkhtdikgewogICAgLS1iYWNrZ3JvdW5kLXByaW1hcnk6IGhzbCgwLCBjYWxjKHZhcigtLXNhdHVyYXRpb24tZmFjdG9yLCAxKSAqIDAlKSwgMCUpOwogICAgLS1iYWNrZ3JvdW5kLXNlY29uZGFyeTogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCA4JSk7CiAgICAtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdDogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCAxMCUpOwogICAgLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5OiBoc2woMCwgY2FsYyh2YXIoLS1zYXR1cmF0aW9uLWZhY3RvciwgMSkgKiAwJSksIDQlKTsKICAgIC0tYmFja2dyb3VuZC1hY2NlbnQ6IGhzbCgwLCBjYWxjKHZhcigtLXNhdHVyYXRpb24tZmFjdG9yLCAxKSAqIDAlKSwgMTIlKTsKICAgIC0tYmFja2dyb3VuZC1mbG9hdGluZzogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCA2JSk7CiAgICAtLWNoYW5uZWx0ZXh0YXJlYS1iYWNrZ3JvdW5kOiBoc2woMCwgY2FsYyh2YXIoLS1zYXR1cmF0aW9uLWZhY3RvciwgMSkgKiAwJSksIDUlKTsKICAgIC0taW5wdXQtYmFja2dyb3VuZDogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCA0JSk7CiAgICAtLWNoYW5uZWxzLWRlZmF1bHQ6IGhzbCgwLCBjYWxjKHZhcigtLXNhdHVyYXRpb24tZmFjdG9yLCAxKSAqIDAlKSwgNTUlKTsKICAgIC0taGVhZGVyLXByaW1hcnk6IGhzbCgwLCBjYWxjKHZhcigtLXNhdHVyYXRpb24tZmFjdG9yLCAxKSAqIDAlKSwgMTAwJSk7CiAgICAtLWhlYWRlci1zZWNvbmRhcnk6IGhzbCgyMTYsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogNCUpLCA3NCUpOwogICAgLS10ZXh0LW5vcm1hbDogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCAxMDAlKTsKICAgIC0tdGV4dC1tdXRlZDogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCA1OSUpOwogICAgLS1zY3JvbGxlci10aHVtYjogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCAxMiUpOwogICAgLS1zY3JvbGxlci10cmFjazogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCA0JSk7CiAgICAtLWJhY2tncm91bmQtbW9kaWZpZXItaHNsOiAwLCBjYWxjKHZhcigtLXNhdHVyYXRpb24tZmFjdG9yLCAxKSAqIDAlKSwgMTYlOwogICAgLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyOiBoc2xhKHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaHNsKSwgMC4zKTsKICAgIC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmU6IGhzbGEodmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1oc2wpLCAwLjQpOwogICAgLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXNlbGVjdGVkOiBoc2xhKHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaHNsKSwgMC41KTsKICAgIC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQ6IGhzbGEodmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1oc2wpLCAwLjQpOwogICAgLS1pbnRlcmFjdGl2ZS1ub3JtYWw6IGhzbCgyMTYsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogNCUpLCA3NCUpOwogICAgLS1pbnRlcmFjdGl2ZS1ob3ZlcjogaHNsKDIxMCwgY2FsYyh2YXIoLS1zYXR1cmF0aW9uLWZhY3RvciwgMSkgKiAzJSksIDg3JSk7CiAgICAtLWludGVyYWN0aXZlLWFjdGl2ZTogaHNsKDAsIGNhbGModmFyKC0tc2F0dXJhdGlvbi1mYWN0b3IsIDEpICogMCUpLCAxMDAlKTsKICAgIC0taW50ZXJhY3RpdmUtbXV0ZWQ6IGhzbCgwLCBjYWxjKHZhcigtLXNhdHVyYXRpb24tZmFjdG9yLCAxKSAqIDAlKSwgMjklKTsKICAgIC0tZWxldmF0aW9uLWxvdzogMCAxcHggMCBoc2xhKDI0MCwgY2FsYyh2YXIoLS1zYXR1cmF0aW9uLWZhY3RvciwgMSkgKiAxMSUpLCAxOCUsIDAuMiksCiAgICAgICAgMCAxLjVweCAwIGhzbGEoMjQwLCBjYWxjKHZhcigtLXNhdHVyYXRpb24tZmFjdG9yLCAxKSAqIDglKSwgMjUlLCAwLjA1KSwKICAgICAgICAwIDJweCAwIGhzbGEoMjQwLCBjYWxjKHZhcigtLXNhdHVyYXRpb24tZmFjdG9yLCAxKSAqIDExJSksIDE4JSwgMC4wNSk7Cn0KZGl2W2NsYXNzXj0iZHJhd2VyU2l6aW5nV3JhcHBlci0iXSB7CiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5pdGVtLTRtLTEySVthcmlhLWNoZWNrZWQ9ZmFsc2VdOm5vdCg6aG92ZXIpIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuY2FyZEZvbGRlci0zSDR1SDQgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQoKI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5hdmF0YXJVcGxvYWRlcklubmVyU3F1YXJlRGlzYWJsZWQtM005ZUpTIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5jb250YWluZXItM0V0QWtEIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNvbnRhaW5lci0zRXRBa0Q6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5jb250YWluZXItM0V0QWtEOmhvdmVyIC5pY29uLTJER3N5ZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuaWNvbi0yREdzeWUgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5wcmltYXJ5LTM4SHMtaDpob3Zlcjpub3QoLmRpc2FibGVkLTE4NC1pbCksCiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuc2Vjb25kYXJ5LTJiektFWCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAucHJpbWFyeS0zOEhzLWg6aG92ZXI6bm90KC5kaXNhYmxlZC0xODQtaWwpOmhvdmVyLAojYXBwLW1vdW50IC5sYXllci04NllLYkYgLnNlY29uZGFyeS0yYnpLRVg6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAucHJldmlld0NvbnRhaW5lci0xR3htQkogewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAucHJldmlld0NvbnRhaW5lci0xeFFBc3cgLnRoZW1lLWxpZ2h0IHsKICAgIGRpc3BsYXk6IG5vbmU7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5wcmV2aWV3Q29udGFpbmVyLTF4UUFzdyAubWVzc2FnZUNvbnRhaW5lci0zYTZnTFIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAudGllckhlYWRlckxvY2tlZC0zME1MbE8sCiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAudGllckhlYWRlclVubG9ja2VkLTFPcE9MZiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC50aWVyQm9keS0xZDNVaVMgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmF1ZGl0TG9nLTFOVkFZMCB7CiAgICBib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmRpdmlkZXItTTNzYVdxLAojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmhlYWRlckV4cGFuZGVkLTEtendEciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5oZWFkZXJDbGlja2FibGUtekdRSnozLAojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmhlYWRlckRlZmF1bHQtMWU2eWpqLAojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNoYW5nZURldGFpbHMtMWtNWnFJIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5jYXJkLVdXTFlETyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuaWNvbk1hc2stMUVZR3J2IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNzcy0xN2UxdGVwLWNvbnRyb2wsCiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuY3NzLTZmem40Ny1jb250cm9sLAojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNzcy1ndmk5YmwtY29udHJvbCwKI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5pbnB1dFdyYXBwZXItM2E0eXdiIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWJhY2tncm91bmQpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAud2VsY29tZUNoYW5uZWwtX1E0cUFBIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KCiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRjpub3QoLmJhc2VMYXllci1XNlM4Y1kpIC5jb3B5SW5wdXQtM0FiS1dCIHsKICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuc2lkZWJhclJlZ2lvblNjcm9sbGVyLUZYaVFPaCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CiNhcHAtbW91bnQgLmhlYWRlci02aDk4WV8gewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQojYXBwLW1vdW50IC5jbG9zZUJ1dHRvbi1QQ1pjbWEgewogICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmNsb3NlQnV0dG9uLVBDWmNtYTpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmtleWJpbmQtMTN2dHE4IHsKICAgIGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7Cn0KI2FwcC1tb3VudCAuc2V0dGluZ0NhcmQteFpTRGpTIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5jYXJkUHJpbWFyeS0zcVJUX18sCiNhcHAtbW91bnQgLmNhcmRQcmltYXJ5RWRpdGFibGUtMm16XzNpIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5pY29uV3JhcHBlci0xc090a0UgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuaXRlbUZpbGxlZC0xY1BidGc6bm90KDpob3Zlcik6bm90KFthcmlhLWNoZWNrZWQ9dHJ1ZV0pIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAuaXRlbUZpbGxlZC0xY1BidGdbYXJpYS1jaGVja2VkPXRydWVdIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpICFpbXBvcnRhbnQ7Cn0KI2FwcC1tb3VudCAuZGVmYXVsdC0xVGtlZWcgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5jb250YWluZXItMzBxWTdFIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0zMHFZN0UuZmlsZVVwbG9hZC0zSnpVN2cgOm5vdCg6aG92ZXIpIHsKICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLm5vdGljZVJlZ2lvbi1xanlVVmcgLmNvbnRhaW5lci0yMFR5SzAgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpICFpbXBvcnRhbnQ7Cn0KI2FwcC1tb3VudCAuYmFyLTFCaG5sOTpub3QoLm1pY3JvcGhvbmUtMlJyclc3LCAuc3BlYWtpbmctMkNycnZ0KSwKI2FwcC1tb3VudCAubWFya0Rhc2gteWsya0otIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KCiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAucHJvZmlsZUJhbm5lclByZXZpZXctM21MSWRPIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuY2FyZFByaW1hcnlPdXRsaW5lLTFvZndWeiB7CiAgICBib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNvbm5lY3RDb250YWluZXItMWh5bFlNIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmFjY291bnRCdXR0b25Jbm5lci0zM3ZDRFk6bm90KDpob3ZlcikgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNvbm5lY3Rpb25IZWFkZXItSXhiYjFzIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNvbm5lY3Rpb24tWU9WSTlqIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5vdXRlci0ySk9IYWUgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAub3V0ZXItMkpPSGFlOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAubm9JY29uLTNnU1g5ViB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuZ2VtSW5kaWNhdG9yQ29udGFpbmVyLVBxQXBiWCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLnByb21vdGlvbkNhcmQtbW83Q2xIIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLnBhZ2luYXRvci0xZXFEMmcsCiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAucGF5bWVudFBhbmUtdXQ1cUtaLAojYXBwLW1vdW50IC5sYXllci04NllLYkYgLnBheW1lbnQtMmJPaDRrIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmhvdmVyYWJsZVBheW1lbnQtbEUxczR0IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmhvdmVyYWJsZVBheW1lbnQtbEUxczR0OmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuYm90dG9tRGl2aWRlci1abVRtLWogewogICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuZXhwYW5kZWRJbmZvLTFXMzFpMyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuY29kZVJlZGVtcHRpb25SZWRpcmVjdC0yaFlNU1EgewogICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLm5vdGNoZXMtMnc3VVpKLmdyYXktM3dQMTM3IHsKICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIGhlaWdodD0nMjAnIHdpZHRoPSc4JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9J2JsYWNrJyUzRSUzQ3BhdGggZD0nTTAgMGg4djIwSDB6bTQgMmEyIDIgMCAwMC0yIDJ2MTJhMiAyIDAgMTA0IDBWNGEyIDIgMCAwMC0yLTJ6JyBmaWxsLXJ1bGU9J2V2ZW5vZGQnLyUzRSUzQy9zdmclM0UiKTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNhbWVyYVdyYXBwZXItM2E3Tmd2IHsKICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuYmFja2dyb3VuZE9wdGlvbklubmVyLVNTejE5TyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLm5vdERldGVjdGVkLU0zR2hoMiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAuZ2FtZS0yZjJ2UEMgewogICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAubGF5ZXItODZZS2JGIC5vcHRpb24tMVFJNGM5Om5vdCguc2VsZWN0ZWQtMThXc3pjKTpub3QoOmhvdmVyKSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmxheWVyLTg2WUtiRiAucG93ZXJjb3JkLWVudGl0aWVzLW1hbmFnZS10YWJzIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5sYXllci04NllLYkYgLmNvbnRhaW5lci0yb050Sm4gewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CgojYXBwLW1vdW50IC5idXR0b24tM1Z5ejY3LAojYXBwLW1vdW50IC5idXR0b24tMUVHR2NQLmJ1dHRvbkNvbG9yLTNiUDNmWCwKI2FwcC1tb3VudCAuYnV0dG9uLTFFR0djUCAuYnV0dG9uQ29sb3ItM2JQM2ZYLAojYXBwLW1vdW50IC5sb29rRmlsbGVkLXlDZmFDTS5jb2xvckdyZXktMmlBRy1CLAojYXBwLW1vdW50IC5sb29rRmlsbGVkLXlDZmFDTS5jb2xvclByaW1hcnktMkF1UVZvIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig0MCwgNDAsIDQwKTsKfQojYXBwLW1vdW50IC5idXR0b24tM1Z5ejY3OmVuYWJsZWQ6aG92ZXIsCiNhcHAtbW91bnQgLmJ1dHRvbi0xRUdHY1AuYnV0dG9uQ29sb3ItM2JQM2ZYOmVuYWJsZWQ6aG92ZXIsCiNhcHAtbW91bnQgLmJ1dHRvbi0xRUdHY1AgLmJ1dHRvbkNvbG9yLTNiUDNmWDplbmFibGVkOmhvdmVyLAojYXBwLW1vdW50IC5sb29rRmlsbGVkLXlDZmFDTS5jb2xvckdyZXktMmlBRy1COmVuYWJsZWQ6aG92ZXIsCiNhcHAtbW91bnQgLmxvb2tGaWxsZWQteUNmYUNNLmNvbG9yUHJpbWFyeS0yQXVRVm86ZW5hYmxlZDpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzAsIDMwLCAzMCk7Cn0KI2FwcC1tb3VudCAuYnV0dG9uLTNWeXo2Nzpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzAsIDMwLCAzMCk7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLTJueC1CUVtzdHlsZT0ib3BhY2l0eTogMTsgYmFja2dyb3VuZC1jb2xvcjogaHNsKDIxOCwgY2FsYyh2YXIoLS1zYXR1cmF0aW9uLWZhY3RvciwgMSkgKiA0LjYlKSwgNDYuOSUpOyJdIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig0MCwgNDAsIDQwKSAhaW1wb3J0YW50Owp9CiNhcHAtbW91bnQgLmNvbG9yYWJsZS0zclZHbmEucHJpbWFyeURhcmstMlVKdDFHIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig0MCwgNDAsIDQwKTsKfQoKLyohCiAgVGhlbWU6IENoYWxrCiAgQXV0aG9yOiBDaHJpcyBLZW1wc29uIChodHRwOi8vY2hyaXNrZW1wc29uLmNvbSkKICBMaWNlbnNlOiB+IE1JVCAob3IgbW9yZSBwZXJtaXNzaXZlKSBbdmlhIGJhc2UxNi1zY2hlbWVzLXNvdXJjZV0KICBNYWludGFpbmVyOiBAaGlnaGxpZ2h0anMvY29yZS10ZWFtCiAgVmVyc2lvbjogMjAyMS4wOS4wCiovCi8qCiAgV0FSTklORzogRE8gTk9UIEVESVQgVEhJUyBGSUxFIERJUkVDVExZLgoKICBUaGlzIHRoZW1lIGZpbGUgd2FzIGF1dG8tZ2VuZXJhdGVkIGZyb20gdGhlIEJhc2UxNiBzY2hlbWUgY2hhbGsKICBieSB0aGUgSGlnaGxpZ2h0LmpzIEJhc2UxNiB0ZW1wbGF0ZSBidWlsZGVyLgoKICAtIGh0dHBzOi8vZ2l0aHViLmNvbS9oaWdobGlnaHRqcy9iYXNlMTYtaGlnaGxpZ2h0anMKKi8KLyoKYmFzZTAwICAjMTUxNTE1ICBEZWZhdWx0IEJhY2tncm91bmQKYmFzZTAxICAjMjAyMDIwICBMaWdodGVyIEJhY2tncm91bmQgKFVzZWQgZm9yIHN0YXR1cyBiYXJzLCBsaW5lIG51bWJlciBhbmQgZm9sZGluZyBtYXJrcykKYmFzZTAyICAjMzAzMDMwICBTZWxlY3Rpb24gQmFja2dyb3VuZApiYXNlMDMgICM1MDUwNTAgIENvbW1lbnRzLCBJbnZpc2libGVzLCBMaW5lIEhpZ2hsaWdodGluZwpiYXNlMDQgICNiMGIwYjAgIERhcmsgRm9yZWdyb3VuZCAoVXNlZCBmb3Igc3RhdHVzIGJhcnMpCmJhc2UwNSAgI2QwZDBkMCAgRGVmYXVsdCBGb3JlZ3JvdW5kLCBDYXJldCwgRGVsaW1pdGVycywgT3BlcmF0b3JzCmJhc2UwNiAgI2UwZTBlMCAgTGlnaHQgRm9yZWdyb3VuZCAoTm90IG9mdGVuIHVzZWQpCmJhc2UwNyAgI2Y1ZjVmNSAgTGlnaHQgQmFja2dyb3VuZCAoTm90IG9mdGVuIHVzZWQpCmJhc2UwOCAgI2ZiOWZiMSAgVmFyaWFibGVzLCBYTUwgVGFncywgTWFya3VwIExpbmsgVGV4dCwgTWFya3VwIExpc3RzLCBEaWZmIERlbGV0ZWQKYmFzZTA5ICAjZWRhOTg3ICBJbnRlZ2VycywgQm9vbGVhbiwgQ29uc3RhbnRzLCBYTUwgQXR0cmlidXRlcywgTWFya3VwIExpbmsgVXJsCmJhc2UwQSAgI2RkYjI2ZiAgQ2xhc3NlcywgTWFya3VwIEJvbGQsIFNlYXJjaCBUZXh0IEJhY2tncm91bmQKYmFzZTBCICAjYWNjMjY3ICBTdHJpbmdzLCBJbmhlcml0ZWQgQ2xhc3MsIE1hcmt1cCBDb2RlLCBEaWZmIEluc2VydGVkCmJhc2UwQyAgIzEyY2ZjMCAgU3VwcG9ydCwgUmVndWxhciBFeHByZXNzaW9ucywgRXNjYXBlIENoYXJhY3RlcnMsIE1hcmt1cCBRdW90ZXMKYmFzZTBEICAjNmZjMmVmICBGdW5jdGlvbnMsIE1ldGhvZHMsIEF0dHJpYnV0ZSBJRHMsIEhlYWRpbmdzCmJhc2UwRSAgI2UxYTNlZSAgS2V5d29yZHMsIFN0b3JhZ2UsIFNlbGVjdG9yLCBNYXJrdXAgSXRhbGljLCBEaWZmIENoYW5nZWQKYmFzZTBGICAjZGVhZjhmICBEZXByZWNhdGVkLCBPcGVuaW5nL0Nsb3NpbmcgRW1iZWRkZWQgTGFuZ3VhZ2UgVGFncywgZS5nLiA8P3BocCA/PgoqLwovKiBwdXJwb3NlbHkgZG8gbm90IGhpZ2hsaWdodCB0aGVzZSB0aGluZ3MgKi8KLyogYmFzZTAzIC0gIzUwNTA1MCAtICBDb21tZW50cywgSW52aXNpYmxlcywgTGluZSBIaWdobGlnaHRpbmcgKi8KLmhsanMtY29tbWVudCB7CiAgICBjb2xvcjogIzUwNTA1MDsKfQoKLyogYmFzZTA0IC0gI2IwYjBiMCAtICBEYXJrIEZvcmVncm91bmQgKFVzZWQgZm9yIHN0YXR1cyBiYXJzKSAqLwouaGxqcy10YWcgewogICAgY29sb3I6ICNiMGIwYjA7Cn0KCi8qIGJhc2UwNSAtICNkMGQwZDAgLSAgRGVmYXVsdCBGb3JlZ3JvdW5kLCBDYXJldCwgRGVsaW1pdGVycywgT3BlcmF0b3JzICovCi5obGpzLXN1YnN0LAouaGxqcy1wdW5jdHVhdGlvbiwKLmhsanMtb3BlcmF0b3IgewogICAgY29sb3I6ICNkMGQwZDA7Cn0KCi5obGpzLW9wZXJhdG9yIHsKICAgIG9wYWNpdHk6IDAuNzsKfQoKLyogYmFzZTA4IC0gVmFyaWFibGVzLCBYTUwgVGFncywgTWFya3VwIExpbmsgVGV4dCwgTWFya3VwIExpc3RzLCBEaWZmIERlbGV0ZWQgKi8KLmhsanMtYnVsbGV0LAouaGxqcy12YXJpYWJsZSwKLmhsanMtdGVtcGxhdGUtdmFyaWFibGUsCi5obGpzLXNlbGVjdG9yLXRhZywKLmhsanMtbmFtZSwKLmhsanMtZGVsZXRpb24gewogICAgY29sb3I6ICNmYjlmYjE7Cn0KCi8qIGJhc2UwOSAtIEludGVnZXJzLCBCb29sZWFuLCBDb25zdGFudHMsIFhNTCBBdHRyaWJ1dGVzLCBNYXJrdXAgTGluayBVcmwgKi8KLmhsanMtc3ltYm9sLAouaGxqcy1udW1iZXIsCi5obGpzLWxpbmssCi5obGpzLWF0dHIsCi5obGpzLXZhcmlhYmxlLmNvbnN0YW50XywKLmhsanMtbGl0ZXJhbCB7CiAgICBjb2xvcjogI2VkYTk4NzsKfQoKLyogYmFzZTBBIC0gQ2xhc3NlcywgTWFya3VwIEJvbGQsIFNlYXJjaCBUZXh0IEJhY2tncm91bmQgKi8KLmhsanMtdGl0bGUsCi5obGpzLWNsYXNzIC5obGpzLXRpdGxlLAouaGxqcy10aXRsZS5jbGFzc18gewogICAgY29sb3I6ICNkZGIyNmY7Cn0KCi5obGpzLXN0cm9uZyB7CiAgICBmb250LXdlaWdodDogYm9sZDsKICAgIGNvbG9yOiAjZGRiMjZmOwp9CgovKiBiYXNlMEIgLSBTdHJpbmdzLCBJbmhlcml0ZWQgQ2xhc3MsIE1hcmt1cCBDb2RlLCBEaWZmIEluc2VydGVkICovCi5obGpzLWNvZGUsCi5obGpzLWFkZGl0aW9uLAouaGxqcy10aXRsZS5jbGFzc18uaW5oZXJpdGVkX18sCi5obGpzLXN0cmluZyB7CiAgICBjb2xvcjogI2FjYzI2NzsKfQoKLyogYmFzZTBDIC0gU3VwcG9ydCwgUmVndWxhciBFeHByZXNzaW9ucywgRXNjYXBlIENoYXJhY3RlcnMsIE1hcmt1cCBRdW90ZXMgKi8KLmhsanMtYnVpbHRfaW4sCi5obGpzLWRvY3RhZywKLmhsanMtcXVvdGUsCi5obGpzLWtleXdvcmQuaGxqcy1hdHJ1bGUsCi5obGpzLXJlZ2V4cCB7CiAgICBjb2xvcjogIzEyY2ZjMDsKfQoKLyogYmFzZTBEIC0gRnVuY3Rpb25zLCBNZXRob2RzLCBBdHRyaWJ1dGUgSURzLCBIZWFkaW5ncyAqLwouaGxqcy1mdW5jdGlvbiAuaGxqcy10aXRsZSwKLmhsanMtYXR0cmlidXRlLAoucnVieSAuaGxqcy1wcm9wZXJ0eSwKLmhsanMtdGl0bGUuZnVuY3Rpb25fLAouaGxqcy1zZWN0aW9uIHsKICAgIGNvbG9yOiAjNmZjMmVmOwp9CgovKiBiYXNlMEUgLSBLZXl3b3JkcywgU3RvcmFnZSwgU2VsZWN0b3IsIE1hcmt1cCBJdGFsaWMsIERpZmYgQ2hhbmdlZCAqLwouaGxqcy10eXBlLAouaGxqcy1zZWxlY3Rvci1pZCwKLmhsanMtc2VsZWN0b3ItY2xhc3MsCi5obGpzLXNlbGVjdG9yLWF0dHIsCi5obGpzLXNlbGVjdG9yLXBzZXVkbywKLmhsanMtdGVtcGxhdGUtdGFnLAouZGlmZiAuaGxqcy1tZXRhLAouaGxqcy1rZXl3b3JkIHsKICAgIGNvbG9yOiAjZTFhM2VlOwp9CgouaGxqcy1lbXBoYXNpcyB7CiAgICBjb2xvcjogI2UxYTNlZTsKICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKfQoKLyogYmFzZTBGIC0gRGVwcmVjYXRlZCwgT3BlbmluZy9DbG9zaW5nIEVtYmVkZGVkIExhbmd1YWdlIFRhZ3MsIGUuZy4gPD9waHAgPz4gKi8KLmhsanMtbWV0YSwKLmhsanMtbWV0YSAuaGxqcy1rZXl3b3JkLAouaGxqcy1tZXRhIC5obGpzLXN0cmluZyB7CiAgICBjb2xvcjogI2RlYWY4ZjsKfQoKLmhsanMtbWV0YSAuaGxqcy1rZXl3b3JkLAouaGxqcy1tZXRhLWtleXdvcmQgewogICAgZm9udC13ZWlnaHQ6IGJvbGQ7Cn0KCi50aGVtZS1saWdodCAjYXBwLW1vdW50OjphZnRlciB7CiAgICBjb250ZW50OiAiVGhpcyB0aGVtZSBpcyBOT1QgbWVhbnQgdG8gYmUgdXNlZCBpbiBMaWdodCBNb2RlLiBQbGVhc2Ugc3dpdGNoIG92ZXIgdG8gRGFyayBNb2RlIGluIFNldHRpbmdzIC0+IEFwcGVhcmFuY2UuIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICB0b3A6IDIycHg7CiAgICByaWdodDogMDsKICAgIGJvdHRvbTogY2FsYygxMDAlIC0gNThweCk7CiAgICBsZWZ0OiA3MnB4OwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogOHB4OwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGZvbnQtc2l6ZTogMTRweDsKICAgIGNvbG9yOiB3aGl0ZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDQyNDU7Cn0KLnRoZW1lLWxpZ2h0ICNhcHAtbW91bnQgLmNvbnRhaW5lci1Za1VrdGwgLmZsZXgtMlMxWEJGIC5idXR0b24tMTJGbXVyOmxhc3QtY2hpbGQgewogICAgLXdlYmtpdC1hbmltYXRpb246IGZsYXNoIDFzIGVhc2UgaW5maW5pdGU7CiAgICAgICAgICAgIGFuaW1hdGlvbjogZmxhc2ggMXMgZWFzZSBpbmZpbml0ZTsKICAgIGNvbG9yOiB3aGl0ZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDQyNDU7Cn0KLnRoZW1lLWxpZ2h0ICNhcHAtbW91bnQgI3VzZXItc2V0dGluZ3MtY29nLUFwcGVhcmFuY2UgewogICAgLXdlYmtpdC1hbmltYXRpb246IGZsYXNoIDFzIGVhc2UgaW5maW5pdGU7CiAgICAgICAgICAgIGFuaW1hdGlvbjogZmxhc2ggMXMgZWFzZSBpbmZpbml0ZTsKICAgIGNvbG9yOiB3aGl0ZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDQyNDUgIWltcG9ydGFudDsKfQoudGhlbWUtbGlnaHQgI2FwcC1tb3VudCBbYXJpYS1hY3RpdmVkZXNjZW5kYW50Xj11c2VyLXNldHRpbmdzLWNvZy1BcHBlYXJhbmNlXSAjdXNlci1zZXR0aW5ncy1jb2ctQXBwZWFyYW5jZS0tZGFyayB7CiAgICAtd2Via2l0LWFuaW1hdGlvbjogZmxhc2ggMXMgZWFzZSBpbmZpbml0ZTsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmbGFzaCAxcyBlYXNlIGluZmluaXRlOwogICAgY29sb3I6IHdoaXRlOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2VkNDI0NSAhaW1wb3J0YW50Owp9Ci50aGVtZS1saWdodCAjYXBwLW1vdW50IFthcmlhLWNvbnRyb2xzPWFwcGVhcmFuY2UtdGFiXSB7CiAgICAtd2Via2l0LWFuaW1hdGlvbjogZmxhc2ggMXMgZWFzZSBpbmZpbml0ZTsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmbGFzaCAxcyBlYXNlIGluZmluaXRlOwogICAgY29sb3I6IHdoaXRlOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2VkNDI0NSAhaW1wb3J0YW50Owp9Ci50aGVtZS1saWdodCAjYXBwLW1vdW50IFthcmlhLWxhYmVsPVVTRVJfU0VUVElOR1NdIFt0YWJpbmRleD0iLTEiXSArIFtjbGFzcz1tYXJnaW5Ub3A0MC1RNG8xdFNdIC5pdGVtLTJpZFc5ODpudGgtb2YtdHlwZSgxKSB7CiAgICAtd2Via2l0LWFuaW1hdGlvbjogZmxhc2ggMXMgZWFzZSBpbmZpbml0ZTsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmbGFzaCAxcyBlYXNlIGluZmluaXRlOwogICAgY29sb3I6IHdoaXRlOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2VkNDI0NSAhaW1wb3J0YW50Owp9Ci50aGVtZS1saWdodCAjYXBwLW1vdW50IC5iYXNlLTJqRGZEVSB7CiAgICBtYXJnaW4tdG9wOiAzNnB4Owp9Ci50aGVtZS1saWdodCAjYXBwLW1vdW50IC5zaWRlYmFyLTF0bldGdSB7CiAgICBib3JkZXItcmFkaXVzOiAwOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmxhc2ggewogICAgMCUgewogICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgyMzcsIDY2LCA2OSwgMC4yKSwgMCAwIDAgMnB4IHJnYmEoMjM3LCA2NSwgNjgsIDAuMSk7CiAgICB9CiAgICA3MCUgewogICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDE1cHggcmdiYSgyMzcsIDY2LCA2OSwgMC4xKSwgMCAwIDAgNnB4IHJnYmEoMjM3LCA2NSwgNjgsIDAuMSk7CiAgICB9CiAgICAxMDAlIHsKICAgICAgICBib3gtc2hhZG93OiAwIDAgMjBweCAxNXB4IHJnYmEoMjM3LCA2NiwgNjksIDApLCAwIDAgMCA2cHggcmdiYSgyMzcsIDY1LCA2OCwgMC4xKTsKICAgIH0KfQoKQGtleWZyYW1lcyBmbGFzaCB7CiAgICAwJSB7CiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMTBweCByZ2JhKDIzNywgNjYsIDY5LCAwLjIpLCAwIDAgMCAycHggcmdiYSgyMzcsIDY1LCA2OCwgMC4xKTsKICAgIH0KICAgIDcwJSB7CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggMTVweCByZ2JhKDIzNywgNjYsIDY5LCAwLjEpLCAwIDAgMCA2cHggcmdiYSgyMzcsIDY1LCA2OCwgMC4xKTsKICAgIH0KICAgIDEwMCUgewogICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDE1cHggcmdiYSgyMzcsIDY2LCA2OSwgMCksIDAgMCAwIDZweCByZ2JhKDIzNywgNjUsIDY4LCAwLjEpOwogICAgfQp9CiNhcHAtbW91bnQgLnNjcm9sbGVyQmFzZS1fYlZBQXQudGhpbi0zMXJsbkQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNjcm9sbGVyLXRodW1iKTsKfQojYXBwLW1vdW50IC5zY3JvbGxlckJhc2UtX2JWQUF0LmF1dG8tMkszVVc1Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zY3JvbGxlci10aHVtYik7Cn0KI2FwcC1tb3VudCAuc2Nyb2xsZXJCYXNlLV9iVkFBdC5hdXRvLTJLM1VXNTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Nyb2xsZXItdHJhY2spOwp9CgoudGl0bGVCYXItMWl0M2JRLnR5cGVXaW5kb3dzLTItZzNVWTo6YWZ0ZXIgewogICAgY29udGVudDogIiI7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgZm9jdXNhYmxlPSJmYWxzZSIgZGF0YS1wcmVmaXg9ImZhciIgZGF0YS1pY29uPSJtb29uIiBjbGFzcz0ic3ZnLWlubGluZS0tZmEgZmEtbW9vbiBmYS13LTE2IiByb2xlPSJpbWciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDUxMiA1MTIiPjxwYXRoIGZpbGw9IiUyMzZiNmI2YiIgZD0iTTI3OS4xMzUgNTEyYzc4Ljc1NiAwIDE1MC45ODItMzUuODA0IDE5OC44NDQtOTQuNzc1IDI4LjI3LTM0LjgzMS0yLjU1OC04NS43MjItNDYuMjQ5LTc3LjQwMS04Mi4zNDggMTUuNjgzLTE1OC4yNzItNDcuMjY4LTE1OC4yNzItMTMwLjc5MiAwLTQ4LjQyNCAyNi4wNi05Mi4yOTIgNjcuNDM0LTExNS44MzYgMzguNzQ1LTIyLjA1IDI4Ljk5OS04MC43ODgtMTUuMDIyLTg4LjkxOUEyNTcuOTM2IDI1Ny45MzYgMCAwIDAgMjc5LjEzNSAwYy0xNDEuMzYgMC0yNTYgMTE0LjU3NS0yNTYgMjU2IDAgMTQxLjM2IDExNC41NzYgMjU2IDI1NiAyNTZ6bTAtNDY0YzEyLjk4NSAwIDI1LjY4OSAxLjIwMSAzOC4wMTYgMy40NzgtNTQuNzYgMzEuMTYzLTkxLjY5MyA5MC4wNDItOTEuNjkzIDE1Ny41NTQgMCAxMTMuODQ4IDEwMy42NDEgMTk5LjIgMjE1LjI1MiAxNzcuOTQ0QzQwMi41NzQgNDMzLjk2NCAzNDQuMzY2IDQ2NCAyNzkuMTM1IDQ2NGMtMTE0Ljg3NSAwLTIwOC05My4xMjUtMjA4LTIwOHM5My4xMjUtMjA4IDIwOC0yMDh6Ij48L3BhdGg+PC9zdmc+JykgY2VudGVyLzEwMCUgbm8tcmVwZWF0OwogICAgd2lkdGg6IDE2cHg7CiAgICBoZWlnaHQ6IDE2cHg7CiAgICBsZWZ0OiA1cHg7CiAgICB0b3A6IDRweDsKfQoudGl0bGVCYXItMWl0M2JRIC53b3JkbWFya1dpbmRvd3MtMmRxNnJ3IHsKICAgIG1hcmdpbi1sZWZ0OiAxM3B4OwogICAgY29sb3I6ICM2YjZiNmI7Cn0KCiNhcHAtbW91bnQgLmNhbGxDb250YWluZXItSHRIRUxmIC50aWxlLTJUY3dpTyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KCiNhcHAtbW91bnQgLmNvbnRhaW5lci0zd0xLRGUgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQojYXBwLW1vdW50IC5jb250YWluZXItM3dMS0RlIC5tYWluQ2FyZC0zS0JzQkksCiNhcHAtbW91bnQgLmNvbnRhaW5lci0zd0xLRGUgLmNvbnRhaW5lci0zYXJwRGwsCiNhcHAtbW91bnQgLmNvbnRhaW5lci0zd0xLRGUgLmNvbnRhaW5lci0yblhVYWgsCiNhcHAtbW91bnQgLmNvbnRhaW5lci0zd0xLRGUgLmNvbnRhaW5lci0yX0o2NjYgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLTN3TEtEZSAuY29udGFpbmVyLTJxVkc2cTphY3RpdmUgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0zd0xLRGUgLnRhZ0ZpbHRlcmVkLTFZV1BsciwKI2FwcC1tb3VudCAuY29udGFpbmVyLTN3TEtEZSAucGlsbC0zcFJRbE8uY2xpY2thYmxlLTNZVGZBcTpub3QoLmRpc2FibGVkLTNSZXphdyk6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7Cn0KCiNhcHAtbW91bnQgLmJhY2tncm91bmQtZmtLclh0IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7Cn0KI2FwcC1tb3VudCAuYmFja2dyb3VuZC1ma0tyWHQgLmNhcmQtM3gyMEhGLAojYXBwLW1vdW50IC5iYWNrZ3JvdW5kLWZrS3JYdCAuY29udGFpbmVyLTJIaTdLbSwKI2FwcC1tb3VudCAuYmFja2dyb3VuZC1ma0tyWHQgLmNvbnRhaW5lci14d096d2ksCiNhcHAtbW91bnQgLmJhY2tncm91bmQtZmtLclh0IC5jb250YWluZXItM3JaM1hBLAojYXBwLW1vdW50IC5iYWNrZ3JvdW5kLWZrS3JYdCAud3JhcHBlci0xNUNLeXkgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuYmFja2dyb3VuZC1ma0tyWHQgLmljb24tMklEVHhmIHsKICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuYmFja2dyb3VuZC1ma0tyWHQgLmVtcHR5U3RhdGVDb250YWluZXIteFdPTVBKLAojYXBwLW1vdW50IC5iYWNrZ3JvdW5kLWZrS3JYdCAuY29udGFpbmVyLTRIcUdCMy5iYWNrZ3JvdW5kLTNYNlVhaywKI2FwcC1tb3VudCAuYmFja2dyb3VuZC1ma0tyWHQgLnByZXZpZXdDb250YWluZXItM0JKTV9TIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5iYWNrZ3JvdW5kLWZrS3JYdCAuaWNvbkNvbnRhaW5lci0yUi0zTTEsCiNhcHAtbW91bnQgLmJhY2tncm91bmQtZmtLclh0IC5tb3JlVXNlcnMtX3Y2VC1MLAojYXBwLW1vdW50IC5iYWNrZ3JvdW5kLWZrS3JYdCAudHlwaW5nSW5kaWNhdG9yLUtGOGhHYSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CiNhcHAtbW91bnQgLmJhY2tncm91bmQtZmtLclh0IC5jb250YWluZXItM0hNVG1zOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpOwp9CkBtZWRpYSAobWF4LXdpZHRoOiAxMzAwcHgpIHsKICAgICNhcHAtbW91bnQgLmJhY2tncm91bmQtZmtLclh0IC5jb250YWluZXIteHdPendpLAojYXBwLW1vdW50IC5iYWNrZ3JvdW5kLWZrS3JYdCAuY29udGFpbmVyLTNyWjNYQSB7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKICAgIH0KICAgICNhcHAtbW91bnQgLmJhY2tncm91bmQtZmtLclh0IC5jb250YWluZXItM0hNVG1zLAojYXBwLW1vdW50IC5iYWNrZ3JvdW5kLWZrS3JYdCAuY29udGFpbmVyLTNITVRtczpob3ZlciwKI2FwcC1tb3VudCAuYmFja2dyb3VuZC1ma0tyWHQgLmljb25Db250YWluZXItMlItM00xIHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKICAgIH0KfQojYXBwLW1vdW50IC5iYWNrZ3JvdW5kLWZrS3JYdCAuaGVhZGVyQmFySW5uZXItMnBjWlNNOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiB1bnNldDsKfQoKI2FwcC1tb3VudCAuY29udGFpbmVyLTJvM3FFVywKI2FwcC1tb3VudCAubWVtYmVyLTQ4WUZfbCwKI2FwcC1tb3VudCAubWVtYmVycy0zV1JDRXggewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQoKI2FwcC1tb3VudCAubWVzc2FnZUxpc3RJdGVtLVpaN3Y2Zzpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpOwp9CiNhcHAtbW91bnQgLndyYXBwZXJBdWRpby0xQnp2X1ogLm1lZGlhQmFyV3JhcHBlci0zM2gxb1ksCiNhcHAtbW91bnQgLndyYXBwZXJBdWRpby0xQnp2X1ogLm1lZGlhQmFyV3JhcHBlci0zM2gxb1k6YWZ0ZXIsCiNhcHAtbW91bnQgLndyYXBwZXJBdWRpby0xQnp2X1ogLm1lZGlhQmFyV3JhcHBlci0zM2gxb1k6YmVmb3JlIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC53cmFwcGVyQXVkaW8tMUJ6dl9aIC5idWZmZXItM2VWcUtLLAojYXBwLW1vdW50IC53cmFwcGVyQXVkaW8tMUJ6dl9aIC5idWZmZXItM2VWcUtLOmFmdGVyLAojYXBwLW1vdW50IC53cmFwcGVyQXVkaW8tMUJ6dl9aIC5idWZmZXItM2VWcUtLOmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2EzYTNhICFpbXBvcnRhbnQ7Cn0KI2FwcC1tb3VudCAuZ3VpbGRJY29uSW1hZ2UtNzRPZG1NIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC53cmFwcGVyLTJ2SU1rVCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAudXBsb2FkLXZMYnF1LSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CgojYXBwLW1vdW50IC5jb250YWluZXItY0g2UW9ZIC5jYWxsQ29udGFpbmVyLUJHSW5nRywKI2FwcC1tb3VudCAuY29udGFpbmVyLWNINlFvWSAuc2Nyb2xsZXItMzV0dnBlLAojYXBwLW1vdW50IC5jb250YWluZXItY0g2UW9ZIC5jb250YWluZXItM3I3bWZjLAojYXBwLW1vdW50IC5jb250YWluZXItY0g2UW9ZIC5wYXJ0aWNpcGFudHMtM2hrM05ELAojYXBwLW1vdW50IC5jb250YWluZXItY0g2UW9ZIC5yb3dDb250YWluZXItakR2eUE0IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLWNINlFvWSAudGlsZUNvbnRhaW5lci1PczA4NUYgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQojYXBwLW1vdW50IC5jb250YWluZXItY0g2UW9ZIC50aWxlQ29udGFpbmVyLU9zMDg1Rjpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci1jSDZRb1kgLmRpdmlkZXItdnZfaUhoLAojYXBwLW1vdW50IC5jb250YWluZXItY0g2UW9ZIC5zZXBhcmF0b3ItM0ZER1E0IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci1jSDZRb1kgLmNvbnRhaW5lci0xSXlqalkgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci1jSDZRb1kgLmNvbnRhaW5lci0xSXlqalk6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLWNINlFvWSAuaWNvbkJhY2tncm91bmQtM3FTWGlNIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KCiNhcHAtbW91bnQgLmNvbnRhaW5lci0xUlpKWk0gLmNoYW5uZWxUZXh0QXJlYUlubmVyLUlUcDVrVyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1iYWNrZ3JvdW5kKTsKfQoKI2FwcC1tb3VudCAuZm9sZGVyLTI0MUpveSAuZm9sZGVySWNvbldyYXBwZXItMW9SSVpyOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAuZm9sZGVyLTI0MUpveSAubm9JY29uLTNnU1g5ViB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9Cgoud3JhcHBlci0xX0hhRWkgLmNoaWxkV3JhcHBlci0xal8xdWIsCi53cmFwcGVyLTFfSGFFaSBbY2xhc3M9Y2lyY2xlSWNvbkJ1dHRvbi0xVnhEcmddIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KCiNhcHAtbW91bnQgLmRpcmVjdG9yeU1vZGFsLVlKc09NdiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CgojYXBwLW1vdW50IC5rZXlib2FyZFNob3J0Y3V0c01vZGFsLTJDUm1DbSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAua2V5YmluZFNob3J0Y3V0LTN6RjFQOSBzcGFuIHsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTRweCAwIHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwogICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KCiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIHsKICAgIGJveC1zaGFkb3c6IDAgMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMik7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMuY2Fyb3VzZWxNb2RhbC0xZVVGb3EgewogICAgYm94LXNoYWRvdzogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Owp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5mb290ZXItMzFJZWtaLAojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuZm9vdGVyLTNHdV9UbCwKI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmZvb3Rlci1WQ3NKUVkgewogICAgYm94LXNoYWRvdzogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5mb290ZXItMWhUUlJaIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuaW5wdXQtM3I1elpZIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWJhY2tncm91bmQpOwp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5zY3JvbGxlci0yR2t2Q3EgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAucmVhY3Rpb25TZWxlY3RlZC0xYU1iMksgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1zZWxlY3RlZCk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmNvbnRhaW5lci1LTThCVTYsCiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5yZWFjdG9ycy0xVlhjYTcgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5yZWFjdG9yRGVmYXVsdC0zR1N5YVYgewogICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuaXRlbS0yT3lpblEsCiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5xdWFsaXR5U2V0dGluZ3NDb250YWluZXItMkxqa2ZNIHsKICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmNhcmQtbTdWZ1o4LAojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuaXRlbS0yT3lpblE6bm90KC5zZWxlY3RvckJ1dHRvblNlbGVjdGVkLTNjUVVuaiwgLnNlbGVjdG9yQnV0dG9uU2VsZWN0ZWQtMVZaNmh6KSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5tZXNzYWdlLUc2Ty1XdiB7CiAgICBib3gtc2hhZG93OiBub25lOwogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLm9wdGlvbkNvbnRhaW5lci15T3BhTHEgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLm9wdGlvbkNvbnRhaW5lci15T3BhTHE6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAucHJldmlld0xpZ2h0LUlPekZoaSB7CiAgICBkaXNwbGF5OiBub25lOwp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5wcmV2aWV3RGFyay0zWHAzVUIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5wZXJrcy0ySUliV1EgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuZXZlbnRDYXJkLTJaTDlHRCwKI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmNoaWxkQnV0dG9uLTNvX2RsZyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuZXZlbnRDYXJkLTJaTDlHRDpob3ZlciwKI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmNoaWxkQnV0dG9uLTNvX2RsZzpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5jb250ZW50Q29udGFpbmVyLUJXQWF1NSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmNvbnRhaW5lci0zelprS2gsCiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5yc3ZwQ291bnQtaUNrT2JsIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLnNpZGViYXJDb250YWluZXItZ1VLaHRMIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmNvbnRlbnRXcmFwcGVyLTNveTRYbyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLnJvb3QtY3c5cldRIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLm1vZGFsLTJUT1l0cSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmZvcm1GaWVsZFdyYXBwZXItMkxWM1M2LAojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuZ3VpbGRTaWRlYmFyLVVIblFxcyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5hdXRoQm94LTFIUjZIYSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmxpc3QtMy1XQVlCIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLm5hdlJvdy1kRy1YWDggewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmludml0ZUJhbm5lclVwc2VsbC0xdF9MWU0gewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuY3RhU2VjdGlvbi0zTHFieFEgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuZm9ybVNlY3Rpb24tMjNlY05sIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAudXNhZ2VQaWxsLVAtQ21jdiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmNoYW5uZWxzV3JhcHBlci01MUlVRlIsCiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5yb2xlc1dyYXBwZXItMUxMWnJVIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmF1dGhvcml6ZS0yeFRUci0gewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CgojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuY29udGFpbmVyLXg4WTFpeCwKI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmd1aWxkUm93LTNmSm5HNiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmNvbnRhaW5lci14OFkxaXg6aG92ZXIsCiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5ndWlsZFJvdy0zZkpuRzY6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLnJvd0NvbnRhaW5lci0zdDc0ODYgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLnJvd0NvbnRhaW5lci0zdDc0ODY6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAubG9va0xpbmstMTVtRm96LmNvbG9yUHJpbWFyeS0yQXVRVm8sCiNhcHAtbW91bnQgLnJvb3QtZzE0bWpTIC5sb29rQmxhbmstMjFCQ3JvIHsKICAgIGNvbG9yOiB2YXIoLS1oZWFkZXItcHJpbWFyeSk7Cn0KI2FwcC1tb3VudCAucm9vdC1nMTRtalMgLmZvcm1UaXRsZS0yWVF5aGogewogICAgY29sb3I6IHZhcigtLWhlYWRlci1wcmltYXJ5KTsKfQojYXBwLW1vdW50IC5yb290LWcxNG1qUyAuc2FtcGxlTGluay01QldOeTkgewogICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOwp9CgojYXBwLW1vdW50IC5wZXJrc01vZGFsLUNMY1IxYyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CiNhcHAtbW91bnQgLnBlcmtzTW9kYWwtQ0xjUjFjIC50aWVyTWFya2VyQmFja2dyb3VuZC1HOEZvTjQgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQojYXBwLW1vdW50IC5wZXJrc01vZGFsLUNMY1IxYyAudGllckhlYWRlckxvY2tlZC0zSXRIWW4gewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAucGVya3NNb2RhbC1DTGNSMWMgLnRpZXJCb2R5LTNqdS1yYyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAucGVya3NNb2RhbC1DTGNSMWMgLnBlcmstMTlEX0hOIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KCiNhcHAtbW91bnQgLnBhZ2VXcmFwcGVyLTJQd0RvUyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CiNhcHAtbW91bnQgLnBhZ2VXcmFwcGVyLTJQd0RvUyAuc2VhcmNoQm94LXB5SUpKajpub3QoLnNlYXJjaEJveC0zMVp2OWgpIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQoKI2FwcC1tb3VudCAuY29udGFpbmVyLTJjZDhNeiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0yY2Q4TXogLmNvbnRhaW5lci0yb050Sm4gewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0yY2Q4TXogLndyYXBwZXItMlJyWERnIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0yY2Q4TXogLndyYXBwZXItMlJyWERnOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5jb250YWluZXItMmNkOE16IC53cmFwcGVyLTJSclhEZzpob3ZlciAuc2VjdGlvbi0zRzlhTFcgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLTJjZDhNeiAucGVvcGxlTGlzdEl0ZW0tdTZkR3hGOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0yY2Q4TXogLnBlb3BsZUxpc3RJdGVtLXU2ZEd4Rjpob3ZlciAuYWN0aW9uQnV0dG9uLTMtQjJ4LSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0yY2Q4TXogLmFkZEZyaWVuZElucHV0V3JhcHBlci1ra29TVjkgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CgojYXBwLW1vdW50IC5kZWZhdWx0SW5kaWNhdG9yLTFBeEVycyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWFjY2VudCk7Cn0KI2FwcC1tb3VudCAuaW5zdGFsbGF0aW9uUGF0aC0yUGJhUkMgewogICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5oaWRkZW5MaWJyYXJ5QXBwbGljYXRpb24tbGZ3MWFiIHsKICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5oaWRkZW5MaWJyYXJ5QXBwbGljYXRpb24tbGZ3MWFiOjpiZWZvcmUgewogICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KCiNhcHAtbW91bnQgLmZlYXR1cmUtMklVY0JJIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQoKI2FwcC1tb3VudCAuYXV0b2NvbXBsZXRlLTNOUlhHOCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAuYXV0b2NvbXBsZXRlLTNOUlhHOCAuc2VsZWN0ZWQtM0gzLVJDIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAuYXV0b2NvbXBsZXRlLTNOUlhHOCAuY2F0ZWdvcnlIZWFkZXItT3BKMUx5IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5hdXRvY29tcGxldGUtM05SWEc4IC53cmFwcGVyLTN6N0R1RywKI2FwcC1tb3VudCAuYXV0b2NvbXBsZXRlLTNOUlhHOCAud3JhcHBlci0yMnJxdzYgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuYXV0b2NvbXBsZXRlLTNOUlhHOCAuc2VsZWN0ZWQtM0IydzF6LAojYXBwLW1vdW50IC5hdXRvY29tcGxldGUtM05SWEc4IC5zZWxlY3RlZC0zQjJ3MXo6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQoKI2FwcC1tb3VudCAuY29udGVudFdyYXBwZXItM3ZITlAyLAojYXBwLW1vdW50IC5lbW9qaVBpY2tlci02WUNrOGEgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuY29udGVudFdyYXBwZXItM3ZITlAyIC53cmFwcGVyLTFOTmFXRywKI2FwcC1tb3VudCAuZW1vamlQaWNrZXItNllDazhhIC53cmFwcGVyLTFOTmFXRyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC5jb250ZW50V3JhcHBlci0zdkhOUDIgLmNhdGVnb3J5SXRlbURlZmF1bHRDYXRlZ29yeVNlbGVjdGVkLTJZZVJVdSwKI2FwcC1tb3VudCAuY29udGVudFdyYXBwZXItM3ZITlAyIC5zdGlja2VyQ2F0ZWdvcnlHZW5lcmljU2VsZWN0ZWQtRG5PMks4LAojYXBwLW1vdW50IC5jb250ZW50V3JhcHBlci0zdkhOUDIgLmNhdGVnb3J5SXRlbURlZmF1bHRDYXRlZ29yeVNlbGVjdGVkLTJZZVJVdTpob3ZlciwKI2FwcC1tb3VudCAuY29udGVudFdyYXBwZXItM3ZITlAyIC5zdGlja2VyQ2F0ZWdvcnlHZW5lcmljU2VsZWN0ZWQtRG5PMks4OmhvdmVyLAojYXBwLW1vdW50IC5jb250ZW50V3JhcHBlci0zdkhOUDIgLnN0aWNrZXJDYXRlZ29yeUdlbmVyaWMtMjlKaVoyOmhvdmVyLAojYXBwLW1vdW50IC5lbW9qaVBpY2tlci02WUNrOGEgLmNhdGVnb3J5SXRlbURlZmF1bHRDYXRlZ29yeVNlbGVjdGVkLTJZZVJVdSwKI2FwcC1tb3VudCAuZW1vamlQaWNrZXItNllDazhhIC5zdGlja2VyQ2F0ZWdvcnlHZW5lcmljU2VsZWN0ZWQtRG5PMks4LAojYXBwLW1vdW50IC5lbW9qaVBpY2tlci02WUNrOGEgLmNhdGVnb3J5SXRlbURlZmF1bHRDYXRlZ29yeVNlbGVjdGVkLTJZZVJVdTpob3ZlciwKI2FwcC1tb3VudCAuZW1vamlQaWNrZXItNllDazhhIC5zdGlja2VyQ2F0ZWdvcnlHZW5lcmljU2VsZWN0ZWQtRG5PMks4OmhvdmVyLAojYXBwLW1vdW50IC5lbW9qaVBpY2tlci02WUNrOGEgLnN0aWNrZXJDYXRlZ29yeUdlbmVyaWMtMjlKaVoyOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAuY29udGVudFdyYXBwZXItM3ZITlAyIC5pbnNwZWN0b3ItREZLWHdCLAojYXBwLW1vdW50IC5lbW9qaVBpY2tlci02WUNrOGEgLmluc3BlY3Rvci1ERktYd0IgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5jb250ZW50V3JhcHBlci0zdkhOUDIgLm5hdkJ1dHRvbkFjdGl2ZS0xRXFDNWwsCiNhcHAtbW91bnQgLmVtb2ppUGlja2VyLTZZQ2s4YSAubmF2QnV0dG9uQWN0aXZlLTFFcUM1bCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXNlbGVjdGVkKTsKfQojYXBwLW1vdW50IC5jb250ZW50V3JhcHBlci0zdkhOUDIgLmNvbnRhaW5lci0yb050Sm4sCiNhcHAtbW91bnQgLmNvbnRlbnRXcmFwcGVyLTN2SE5QMiAuY29udGFpbmVyLTFTWDlWQywKI2FwcC1tb3VudCAuZW1vamlQaWNrZXItNllDazhhIC5jb250YWluZXItMm9OdEpuLAojYXBwLW1vdW50IC5lbW9qaVBpY2tlci02WUNrOGEgLmNvbnRhaW5lci0xU1g5VkMgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRlbnRXcmFwcGVyLTN2SE5QMiAudXBzZWxsLTNCMWxuTiwKI2FwcC1tb3VudCAuZW1vamlQaWNrZXItNllDazhhIC51cHNlbGwtM0IxbG5OIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC53cmFwcGVyLTIycnF3NiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KCiNhcHAtbW91bnQgLnRlcnRpYXJ5LTFlLWxBUCwKI2FwcC1tb3VudCAucHJpbWFyeS0zOEhzLWg6aG92ZXI6bm90KC5kaXNhYmxlZC0xODQtaWwpLAojYXBwLW1vdW50IC5zZWNvbmRhcnktMmJ6S0VYIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAudGVydGlhcnktMWUtbEFQOmhvdmVyLAojYXBwLW1vdW50IC5wcmltYXJ5LTM4SHMtaDpob3Zlcjpub3QoLmRpc2FibGVkLTE4NC1pbCk6aG92ZXIsCiNhcHAtbW91bnQgLnNlY29uZGFyeS0yYnpLRVg6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQojYXBwLW1vdW50IC5tZXNzYWdlQ29udGFpbmVyLTNWVFhCQywKI2FwcC1tb3VudCAubWVzc2FnZXMtMjNjYW4wIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAubWVzc2FnZXMtMjNjYW4wIC5jb250ZW50LTNzcHZkZCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLnR1dG9yaWFsSWNvbi0yNVZGM1EgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5pY29uLTJ5aG1pOCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CgojYXBwLW1vdW50IC5tZXNzYWdlR3JvdXBXcmFwcGVyLTFqZl83QyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CgojYXBwLW1vdW50IC5sYXllci0yYUNPSjMgLmhlYWRlci0xdzlROTMgKyBkaXYgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmxheWVyLTJhQ09KMyAudGFiLVRSclBDOC5hY3RpdmUtMWdyUHl5IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc2VsZWN0ZWQpOwp9CiNhcHAtbW91bnQgLnBvcG91dC0xS0hOQXEgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5vdmVyZmxvd1JvbGVzUG9wb3V0LTFQdWl1cSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC5jb250YWluZXItMnJ6S0tBIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwogICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC5jb250YWluZXItMnJ6S0tBOmhvdmVyIHsKICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLm5vdGNoZXMtMnc3VVpKLmJsYWNrLTExTWF4SiB7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyBoZWlnaHQ9JzIwJyB3aWR0aD0nOCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSdyZ2IoMTIsIDEyLCAxMiknJTNFJTNDcGF0aCBkPSdNMCAwaDh2MjBIMHptNCAyYTIgMiAwIDAwLTIgMnYxMmEyIDIgMCAxMDQgMFY0YTIgMiAwIDAwLTItMnonIGZpbGwtcnVsZT0nZXZlbm9kZCcvJTNFJTNDL3N2ZyUzRSIpOwp9CiNhcHAtbW91bnQgLmNvbG9yUGlja2VyQ3VzdG9tLTFzd1VLRiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7CiAgICBib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAudG9vbHRpcEdyZXktbHBMWmpoIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC50b29sdGlwR3JleS1scExaamggLnRvb2x0aXBQb2ludGVyLTNMNDl4YiB7CiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KCiNhcHAtbW91bnQgLnNlYXJjaFJlc3VsdC1POU5EamkgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsKfQojYXBwLW1vdW50IC5idXR0b24tY2ZPdnYtIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsKfQojYXBwLW1vdW50IC5zZWFyY2hBbnN3ZXItMjN3LUNILAojYXBwLW1vdW50IC5zZWFyY2hGaWx0ZXItMlVmc0RrIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLTJNY3FrRiB7CiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSksIDAgMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMik7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC5jb250YWluZXItMk1jcWtGIC5mb2N1c2VkLTJGVTBZSCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC5jb250YWluZXItMk1jcWtGIC5vcHRpb24tYXlVb2FxOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiBub25lOwp9CiNhcHAtbW91bnQgLmNhbGVuZGFyUGlja2VyLXNEaHpkaSAucmVhY3QtZGF0ZXBpY2tlciwKI2FwcC1tb3VudCAuY2FsZW5kYXJQaWNrZXItc0RoemRpIC5yZWFjdC1kYXRlcGlja2VyX19oZWFkZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7Cn0KI2FwcC1tb3VudCAuY2FsZW5kYXJQaWNrZXItc0RoemRpIC5yZWFjdC1kYXRlcGlja2VyX19uYXZpZ2F0aW9uLnJlYWN0LWRhdGVwaWNrZXJfX25hdmlnYXRpb24tLW5leHQsCiNhcHAtbW91bnQgLmNhbGVuZGFyUGlja2VyLXNEaHpkaSAucmVhY3QtZGF0ZXBpY2tlcl9fbmF2aWdhdGlvbi5yZWFjdC1kYXRlcGlja2VyX19uYXZpZ2F0aW9uLS1wcmV2aW91cyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAuY2FsZW5kYXJQaWNrZXItc0RoemRpIC5yZWFjdC1kYXRlcGlja2VyX19kYXktLWRpc2FibGVkLAojYXBwLW1vdW50IC5jYWxlbmRhclBpY2tlci1zRGh6ZGkgLnJlYWN0LWRhdGVwaWNrZXJfX2RheS0tb3V0c2lkZS1tb250aCwKI2FwcC1tb3VudCAuY2FsZW5kYXJQaWNrZXItc0RoemRpIC5yZWFjdC1kYXRlcGlja2VyX19kYXkucmVhY3QtZGF0ZXBpY2tlcl9fZGF5LS1kaXNhYmxlZCwKI2FwcC1tb3VudCAuY2FsZW5kYXJQaWNrZXItc0RoemRpIC5yZWFjdC1kYXRlcGlja2VyX19kYXkucmVhY3QtZGF0ZXBpY2tlcl9fZGF5LS1kaXNhYmxlZDpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAuY2FsZW5kYXJQaWNrZXItc0RoemRpIC5yZWFjdC1kYXRlcGlja2VyX19kYXksCiNhcHAtbW91bnQgLmNhbGVuZGFyUGlja2VyLXNEaHpkaSAucmVhY3QtZGF0ZXBpY2tlcl9fZGF5Omxhc3Qtb2YtdHlwZSB7CiAgICBib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7Cn0KCiNhcHAtbW91bnQgLnVzZXJQb3BvdXQtMmoxZ000IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLnVzZXJQb3BvdXQtMmoxZ000IC5hdmF0YXItMlZuZHRfIHsKICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC10ZXJ0aWFyeSk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTsKfQojYXBwLW1vdW50IC51c2VyUG9wb3V0LTJqMWdNNCAuYm9keUlubmVyV3JhcHBlci0yYlFzMWssCiNhcHAtbW91bnQgLnVzZXJQb3BvdXQtMmoxZ000IC5mb290ZXItM25hVkJ3IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtdGVydGlhcnkpOwp9CiNhcHAtbW91bnQgLnVzZXJQb3BvdXQtMmoxZ000IC5pbnB1dC0yejQyb0MgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CgojYXBwLW1vdW50IC5jb250YWluZXItMU5YRXRkIC5zZWxlY3RlZC0xR3RBQzUgLmhlYWRlci0zT3NRZUssCiNhcHAtbW91bnQgLmNvbnRhaW5lci0xTlhFdGQgLmhlYWRlci0zT3NRZUs6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0xTlhFdGQgLmhhc0Jhbm5lci0ySXJZaWggLmhlYWRlci0zT3NRZUsgewogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLTFOWEV0ZCAuY2hhbm5lbE5vdGljZS1LNFVmWlkgewogICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLTFOWEV0ZCAuYXVkaWVuY2VWb2ljZVVzZXJJY29uQ29udGFpbmVyLTFhUUdMRiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7Cn0KI2FwcC1tb3VudCAuY29udGFpbmVyLTFOWEV0ZCAud3JhcHBlci0yZkVtd1cgLnVzZXJzLTJKb3lHTCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0xTlhFdGQgLndyYXBwZXItMmZFbXdXIC50b3RhbC0xYzVLQ04gewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CiNhcHAtbW91bnQgLmNvbnRhaW5lci0xTlhFdGQgLndyYXBwZXItMmZFbXdXIC50b3RhbC0xYzVLQ046OmFmdGVyIHsKICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpOwp9CgojYXBwLW1vdW50IC5zY3JvbGxlci1XU21odDMgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQoKI2FwcC1tb3VudCAuY29udGVudC0xU2dwV1kgLnNpZGViYXItMXRuV0Z1IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7Cn0KI2FwcC1tb3VudCAuY29udGVudC0xU2dwV1kgLnNpZGViYXItMXRuV0Z1ID4gbmF2IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7Cn0KCiNhcHAtbW91bnQgLnBhbmVscy0zd0Z0TUQgewogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsKfQ")}</style>`)', callback=None)
# unsubscribe event listener
webview.windows[0].loaded -= on_loaded
if __name__ == '__main__':
window = webview.create_window('Discord Lite', 'https://discord.com/app')
window.events.loaded += on_loaded
webview.start(debug=False)
import webview
if __name__ == '__main__':
window = webview.create_window('Discord Lite', 'https://discord.com/app')
webview.start(debug=False)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment