home.svg
Home
EV
List
A
About
Album
Animation
API
B
BIO
Blog
m_blog
C
Category
Church
Contact
CTA
DE
Dev
Email
Events
FG
Google
FAQ
Flash Messages
Footer
Form
HIL
Headings
Home-Page
Info
Integrations
MN
Misc
Modules
OP
Pagination
Portfolio
Product
QR
Quote
Restaurant
ST
Team
Test
Testimonials
Service
Shopping
U-Z
yii2
OpenCart
OpenCartCP
Cart
Svelte
Copy the OpenCart's records here.
ezI6IHsnZW4nOiB7J0luc3RydWN0aW9ucyc6ICdBY3Rpb24gcmVxdWlyZWQ6XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJzEuIFVzZSB0aGUgc3ZnIGVkaXRvciB0byB1cGRhdGVcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJzIuIENsaWNrIFNhdmVUb1NWR0ZpbGUgdG8gc2F2ZSBhIHN2ZyBmaWxlIHRoZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZmlyc3Qgb25lIG9uIHRoZSBsaXN0XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICczLiBDb3B5IHRoZSBuZXdseSBzYXZlIHN2ZyBmaWxlIHBhdGggYW5kIHBhc3RlZCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG8gbG9nb0ZpbGVcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJzQuIFVwb24gdWRhdGUsIHRoZSBfTE9HT18gaW4gaGVhZGVyLnBocCB3aWxsIGJlICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdyZXBsYWNlZCB3aXRoIGxvZ29QYXRoLiBoZWFkZXIudHdpZyB3aWxsIHJlZmxlY3QgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RoZSBjaGFuZ2UuJywKICAgICAgICAgICAgJ0lzVGV4dCc6ICcnLAogICAgICAgICAgICAnUmVtb3ZlQWZ0ZXJDb3B5JzogJycsCiAgICAgICAgICAgICdTbGlkZVR5cGUnOiAnU1ZHRURJVCcsCiAgICAgICAgICAgICdhTGFiZWwnOiAnQWN0aW9uIFJlcXVpcmVkOiBMb2dvJywKICAgICAgICAgICAgJ2V4dHJhR3JvdXAnOiAnJywKICAgICAgICAgICAgJ2xvZ28nOiAnL2RlZmF1bHQvbWVkaWEvbmF2NmgzL1NUL1Nob3BwaW5nL3MvT3BlbkNhcnQvQTAwMDAwMTAyNjAwMTAwMS9vcGVuY2FydDMvc3ZnOTk3MzIxLnN2ZycsCiAgICAgICAgICAgICdsb2dvUGF0aCc6ICcvZGVmYXVsdC9tZWRpYS9uYXY2aDMvU1QvU2hvcHBpbmcvcy9PcGVuQ2FydC9BMDAwMDAxMDI2MDAxMDAxL29wZW5jYXJ0My9zdmc5OTczMjEuc3ZnJywKICAgICAgICAgICAgJ3N2Zyc6ICc8c3ZnIHdpZHRoPSIzNzAiIGhlaWdodD0iNzIiICcKICAgICAgICAgICAgICAgICAgICd4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciICcKICAgICAgICAgICAgICAgICAgICd4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAnCiAgICAgICAgICAgICAgICAgICAncHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+XHJcbicKICAgICAgICAgICAgICAgICAgICcgPHN0eWxlPnN2ZyB7Zm9udC1zaXplOiAxNnB4O308L3N0eWxlPlxyXG4nCiAgICAgICAgICAgICAgICAgICAnIDxnIGNsYXNzPSJsYXllciI+XHJcbicKICAgICAgICAgICAgICAgICAgICcgIDx0aXRsZT5MYXllciAxPC90aXRsZT5cclxuJwogICAgICAgICAgICAgICAgICAgJyAgPHRleHQgc3Ryb2tlPSIjMDAwMDAwIiAnCiAgICAgICAgICAgICAgICAgICAndHJhbnNmb3JtPSJtYXRyaXgoMS42OTY3MTU3MTI1NDczMDIyLDAsMCwxLjQ2MTQ4Mjg4MjQ5OTY5NDgsLTE3LjQ0ODQ1ODM3NzA4MzM5OCwtNy4yNDkwNjM0MjQyMDE2MDg1KSAnCiAgICAgICAgICAgICAgICAgICAnIiB4bWw6c3BhY2U9InByZXNlcnZlIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiAnCiAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHk9InNlcmlmIiBmb250LXNpemU9IjI0IiBpZD0iaWQxMy0zMzdzZ18xIiAnCiAgICAgICAgICAgICAgICAgICAneT0iMzcuMzcwODgiIHg9IjkwLjM3NzM0IiBzdHJva2Utd2lkdGg9IjAiICcKICAgICAgICAgICAgICAgICAgICdmaWxsPSIjMDAwMDAwIj5TaG9wUmVkZGluZzwvdGV4dD5cclxuJwogICAgICAgICAgICAgICAgICAgJyAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utb3BhY2l0eT0iMCIgJwogICAgICAgICAgICAgICAgICAgJ2lkPSJpZDEzLTMzN3NnXzIiICcKICAgICAgICAgICAgICAgICAgICdkPSJtMzE0LjIxMDEzLDIyLjYzNzMybC0xNC42MzIzOCwwbC0xMS45NzAwNiw1LjQ5MDAzbDAsNi43MTEwOWwzNi4xMzMzOSwxNi41NzI0NmwyNi42MDI0NCwtMTIuMjAyMThsLTM2LjEzMzM5LC0xNi41NzE0MXptLTE3Ljg3NDU2LDYuMzY3MDRjLTEuNDI0MzUsLTAuNjUzMjcgJwogICAgICAgICAgICAgICAgICAgJy0xLjQyNDM1LC0xLjcxMTgxIDAsLTIuMzY0MDNjMS40MjQzNSwtMC42NTMyNyAnCiAgICAgICAgICAgICAgICAgICAnMy43MzIzLC0wLjY1MzI3IDUuMTU2NjUsMGMxLjQyNjY1LDAuNjU0MzMgMS40MjQzNSwxLjcxMDc1ICcKICAgICAgICAgICAgICAgICAgICcwLDIuMzY1MDhjLTEuNDI0MzUsMC42NTMyNyAtMy43MzIzLDAuNjUzMjcgJwogICAgICAgICAgICAgICAgICAgJy01LjE1NjY1LC0wLjAwMTA2eiIgc3Ryb2tlLXdpZHRoPSI1IiBmaWxsPSIjYmYwMDVmIi8+XHJcbicKICAgICAgICAgICAgICAgICAgICcgPC9nPlxyXG4nCiAgICAgICAgICAgICAgICAgICAnPC9zdmc+J30sCiAgICAgJ2VuLVVTJzogeydJbnN0cnVjdGlvbnMnOiAnQWN0aW9uIHJlcXVpcmVkOlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcxLiBVc2UgdGhlIHN2ZyBlZGl0b3IgdG8gdXBkYXRlXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcyLiBDbGljayBTYXZlVG9TVkdGaWxlIHRvIHNhdmUgYSBzdmcgZmlsZSB0aGUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZpcnN0IG9uZSBvbiB0aGUgbGlzdFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnMy4gQ29weSB0aGUgbmV3bHkgc2F2ZSBzdmcgZmlsZSBwYXRoIGFuZCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncGFzdGVkIHRvIGxvZ29GaWxlXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc0LiBVcG9uIHVkYXRlLCB0aGUgX0xPR09fIGluIGhlYWRlci5waHAgd2lsbCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYmUgcmVwbGFjZWQgd2l0aCBsb2dvUGF0aC4gaGVhZGVyLnR3aWcgd2lsbCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncmVmbGVjdCB0aGUgY2hhbmdlLicsCiAgICAgICAgICAgICAgICdJc1RleHQnOiAnJywKICAgICAgICAgICAgICAgJ1JlbW92ZUFmdGVyQ29weSc6ICcnLAogICAgICAgICAgICAgICAnU2xpZGVUeXBlJzogJ1NWR0VESVQnLAogICAgICAgICAgICAgICAnYUxhYmVsJzogJ0FjdGlvbiBSZXF1aXJlZDogTG9nbycsCiAgICAgICAgICAgICAgICdleHRyYUdyb3VwJzogJycsCiAgICAgICAgICAgICAgICdsb2dvJzogJy9kZWZhdWx0L21lZGlhL25hdjZoMy9TVC9TaG9wcGluZy9zL09wZW5DYXJ0L0EwMDAwMDEwMjYwMDEwMDEvb3BlbmNhcnQzL3N2Zzk5NzMyMS5zdmcnLAogICAgICAgICAgICAgICAnbG9nb1BhdGgnOiAnL2RlZmF1bHQvbWVkaWEvbmF2NmgzL1NUL1Nob3BwaW5nL3MvT3BlbkNhcnQvQTAwMDAwMTAyNjAwMTAwMS9vcGVuY2FydDMvc3ZnOTk3MzIxLnN2ZycsCiAgICAgICAgICAgICAgICdzdmcnOiAnPHN2ZyB3aWR0aD0iMzcwIiBoZWlnaHQ9IjcyIiAnCiAgICAgICAgICAgICAgICAgICAgICAneG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAnCiAgICAgICAgICAgICAgICAgICAgICAneG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgJwogICAgICAgICAgICAgICAgICAgICAgJ3ByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAnIDxzdHlsZT5zdmcge2ZvbnQtc2l6ZTogMTZweDt9PC9zdHlsZT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgJyA8ZyBjbGFzcz0ibGF5ZXIiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAnICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICcgIDx0ZXh0IHN0cm9rZT0iIzAwMDAwMCIgJwogICAgICAgICAgICAgICAgICAgICAgJ3RyYW5zZm9ybT0ibWF0cml4KDEuNjk2NzE1NzEyNTQ3MzAyMiwwLDAsMS40NjE0ODI4ODI0OTk2OTQ4LC0xNy40NDg0NTgzNzcwODMzOTgsLTcuMjQ5MDYzNDI0MjAxNjA4NSkgJwogICAgICAgICAgICAgICAgICAgICAgJyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgJwogICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5PSJzZXJpZiIgZm9udC1zaXplPSIyNCIgaWQ9ImlkMTMtMzM3c2dfMSIgJwogICAgICAgICAgICAgICAgICAgICAgJ3k9IjM3LjM3MDg4IiB4PSI5MC4zNzczNCIgc3Ryb2tlLXdpZHRoPSIwIiAnCiAgICAgICAgICAgICAgICAgICAgICAnZmlsbD0iIzAwMDAwMCI+U2hvcFJlZGRpbmc8L3RleHQ+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICcgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAiICcKICAgICAgICAgICAgICAgICAgICAgICdpZD0iaWQxMy0zMzdzZ18yIiAnCiAgICAgICAgICAgICAgICAgICAgICAnZD0ibTMxNC4yMTAxMywyMi42MzczMmwtMTQuNjMyMzgsMGwtMTEuOTcwMDYsNS40OTAwM2wwLDYuNzExMDlsMzYuMTMzMzksMTYuNTcyNDZsMjYuNjAyNDQsLTEyLjIwMjE4bC0zNi4xMzMzOSwtMTYuNTcxNDF6bS0xNy44NzQ1Niw2LjM2NzA0Yy0xLjQyNDM1LC0wLjY1MzI3ICcKICAgICAgICAgICAgICAgICAgICAgICctMS40MjQzNSwtMS43MTE4MSAwLC0yLjM2NDAzYzEuNDI0MzUsLTAuNjUzMjcgJwogICAgICAgICAgICAgICAgICAgICAgJzMuNzMyMywtMC42NTMyNyA1LjE1NjY1LDBjMS40MjY2NSwwLjY1NDMzICcKICAgICAgICAgICAgICAgICAgICAgICcxLjQyNDM1LDEuNzEwNzUgMCwyLjM2NTA4Yy0xLjQyNDM1LDAuNjUzMjcgJwogICAgICAgICAgICAgICAgICAgICAgJy0zLjczMjMsMC42NTMyNyAtNS4xNTY2NSwtMC4wMDEwNnoiIHN0cm9rZS13aWR0aD0iNSIgJwogICAgICAgICAgICAgICAgICAgICAgJ2ZpbGw9IiNiZjAwNWYiLz5cclxuJwogICAgICAgICAgICAgICAgICAgICAgJyA8L2c+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICc8L3N2Zz4nfX0sCiAzOiB7J2VuJzogeydBYnNvbHV0ZVBhdGgnOiAwLAogICAgICAgICAgICAnQ29udGVudCc6ICc8P3BocFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ25hbWVzcGFjZSBNYWlsO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzIFNtdHAgZXh0ZW5kcyBcXHN0ZENsYXNzIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdHB1YmxpYyAkc210cF9ob3N0bmFtZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdHB1YmxpYyAkc210cF91c2VybmFtZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdHB1YmxpYyAkc210cF9wYXNzd29yZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdHB1YmxpYyAkc210cF9wb3J0ID0gMjU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgJHNtdHBfdGltZW91dCA9IDU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgJG1heF9hdHRlbXB0cyA9IDM7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgJHZlcnAgPSBmYWxzZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdHB1YmxpYyBmdW5jdGlvbiBzZW5kKCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRpZiAoaXNfYXJyYXkoJHRoaXMtPnRvKSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCR0byA9IGltcGxvZGUoJywnLCAkdGhpcy0+dG8pO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCR0byA9ICR0aGlzLT50bztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcclxuJwogICAgICAgICAgICAgICAgICAgICAgICIgICAgICAgICAjJHRoaXMtPmZyb20gPSAnbm8tcmVwbHktYUBhc29uZWxpc3QuY29tJztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGJvdW5kYXJ5ID0gJy0tLS09X05leHRQYXJ0XycgLiBtZDUodGltZSgpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGhlYWRlciA9ICdNSU1FLVZlcnNpb246IDEuMCcgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkaGVhZGVyIC49ICdUbzogPCcgLiAkdG8gLiAnPicgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkaGVhZGVyIC49ICdTdWJqZWN0OiA9P1VURi04P0I/JyAuICIKICAgICAgICAgICAgICAgICAgICAgICAiYmFzZTY0X2VuY29kZSgkdGhpcy0+c3ViamVjdCkgLiAnPz0nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGhlYWRlciAuPSAnRGF0ZTogJyAuIGRhdGUoJ0QsIGQgTSBZIEg6aTpzIE8nKSAuICIKICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGhlYWRlciAuPSAnRnJvbTogPT9VVEYtOD9CPycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgImJhc2U2NF9lbmNvZGUoJHRoaXMtPnNlbmRlcikgLiAnPz0gPCcgLiAkdGhpcy0+ZnJvbSAuICIKICAgICAgICAgICAgICAgICAgICAgICAiJz4nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKCEkdGhpcy0+cmVwbHlfdG8pIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkaGVhZGVyIC49ICdSZXBseS1UbzogPT9VVEYtOD9CPycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgImJhc2U2NF9lbmNvZGUoJHRoaXMtPnNlbmRlcikgLiAnPz0gPCcgLiAkdGhpcy0+ZnJvbSAuICIKICAgICAgICAgICAgICAgICAgICAgICAiJz4nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkaGVhZGVyIC49ICdSZXBseS1UbzogPT9VVEYtOD9CPycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgImJhc2U2NF9lbmNvZGUoJHRoaXMtPnJlcGx5X3RvKSAuICc/PSA8JyAuICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnJlcGx5X3RvIC4gJz4nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkaGVhZGVyIC49ICdSZXR1cm4tUGF0aDogJyAuICR0aGlzLT5mcm9tIC4gIgogICAgICAgICAgICAgICAgICAgICAgICdQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkaGVhZGVyIC49ICdYLU1haWxlcjogUEhQLycgLiBwaHB2ZXJzaW9uKCkgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgJ1BIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRoZWFkZXIgLj0gJ0NvbnRlbnQtVHlwZTogbXVsdGlwYXJ0L21peGVkOyAiCiAgICAgICAgICAgICAgICAgICAgICAgJ2JvdW5kYXJ5PSJcJyAuICRib3VuZGFyeSAuIFwnIlwnIC4gUEhQX0VPTCAuICcKICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKCEkdGhpcy0+aHRtbCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRtZXNzYWdlID0gJy0tJyAuICRib3VuZGFyeSAuIFBIUF9FT0w7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgIgogICAgICAgICAgICAgICAgICAgICAgICdjaGFyc2V0PSJ1dGYtOCJcJyAuIFBIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJhc2U2NCcgIgogICAgICAgICAgICAgICAgICAgICAgICcuIFBIUF9FT0wgLiBQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtZXNzYWdlIC49ICcKICAgICAgICAgICAgICAgICAgICAgICAnY2h1bmtfc3BsaXQoYmFzZTY0X2VuY29kZSgkdGhpcy0+dGV4dCkpIC4gUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkbWVzc2FnZSA9ICctLScgLiAkYm91bmRhcnkgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRtZXNzYWdlIC49ICdDb250ZW50LVR5cGU6ICIKICAgICAgICAgICAgICAgICAgICAgICAnbXVsdGlwYXJ0L2FsdGVybmF0aXZlOyBib3VuZGFyeT0iXCcgLiAkYm91bmRhcnkgLiAnCiAgICAgICAgICAgICAgICAgICAgICAgJ1wnX2FsdCJcJyAuIFBIUF9FT0wgLiBQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRtZXNzYWdlIC49ICctLScgLiAkYm91bmRhcnkgLiAnX2FsdCcgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgJ1BIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgIgogICAgICAgICAgICAgICAgICAgICAgICdjaGFyc2V0PSJ1dGYtOCJcJyAuIFBIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJhc2U2NCcgIgogICAgICAgICAgICAgICAgICAgICAgICcuIFBIUF9FT0wgLiBQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGlmICgkdGhpcy0+dGV4dCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0JG1lc3NhZ2UgLj0gJwogICAgICAgICAgICAgICAgICAgICAgICdjaHVua19zcGxpdChiYXNlNjRfZW5jb2RlKCR0aGlzLT50ZXh0KSkgLiBQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkbWVzc2FnZSAuPSBjaHVua19zcGxpdChiYXNlNjRfZW5jb2RlKCdUaGlzIGlzICIKICAgICAgICAgICAgICAgICAgICAgICAnYSBIVE1MIGVtYWlsIGFuZCB5b3VyIGVtYWlsIGNsaWVudCBzb2Z0d2FyZSBkb2VzIG5vdCAnCiAgICAgICAgICAgICAgICAgICAgICAgInN1cHBvcnQgSFRNTCBlbWFpbCEnKSkgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkbWVzc2FnZSAuPSAnLS0nIC4gJGJvdW5kYXJ5IC4gJ19hbHQnIC4gIgogICAgICAgICAgICAgICAgICAgICAgICdQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRtZXNzYWdlIC49ICdDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgIgogICAgICAgICAgICAgICAgICAgICAgICdjaGFyc2V0PSJ1dGYtOCJcJyAuIFBIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJhc2U2NCcgIgogICAgICAgICAgICAgICAgICAgICAgICcuIFBIUF9FT0wgLiBQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtZXNzYWdlIC49ICcKICAgICAgICAgICAgICAgICAgICAgICAnY2h1bmtfc3BsaXQoYmFzZTY0X2VuY29kZSgkdGhpcy0+aHRtbCkpIC4gUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkbWVzc2FnZSAuPSAnLS0nIC4gJGJvdW5kYXJ5IC4gJ19hbHQtLScgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgJ1BIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0Zm9yZWFjaCAoJHRoaXMtPmF0dGFjaG1lbnRzIGFzICRhdHRhY2htZW50KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0aWYgKGZpbGVfZXhpc3RzKCRhdHRhY2htZW50KSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JGhhbmRsZSA9IGZvcGVuKCRhdHRhY2htZW50LCAncicpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0JGNvbnRlbnQgPSBmcmVhZCgkaGFuZGxlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2ZpbGVzaXplKCRhdHRhY2htZW50KSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRmY2xvc2UoJGhhbmRsZSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkbWVzc2FnZSAuPSAnLS0nIC4gJGJvdW5kYXJ5IC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCRtZXNzYWdlIC49ICdDb250ZW50LVR5cGU6ICIKICAgICAgICAgICAgICAgICAgICAgICAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtOyBuYW1lPSJcJyAuICcKICAgICAgICAgICAgICAgICAgICAgICAnYmFzZW5hbWUoJGF0dGFjaG1lbnQpIC4gXCciXCcgLiBQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6ICIKICAgICAgICAgICAgICAgICAgICAgICAiYmFzZTY0JyAuIFBIUF9FT0w7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkbWVzc2FnZSAuPSAnQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgIgogICAgICAgICAgICAgICAgICAgICAgICdmaWxlbmFtZT0iXCcgLiBiYXNlbmFtZSgkYXR0YWNobWVudCkgLiBcJyJcJyAuICcKICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCRtZXNzYWdlIC49ICdDb250ZW50LUlEOiA8JyAuICIKICAgICAgICAgICAgICAgICAgICAgICAidXJsZW5jb2RlKGJhc2VuYW1lKCRhdHRhY2htZW50KSkgLiAnPicgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JG1lc3NhZ2UgLj0gJ1gtQXR0YWNobWVudC1JZDogJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAndXJsZW5jb2RlKGJhc2VuYW1lKCRhdHRhY2htZW50KSkgLiBQSFBfRU9MIC4gJwogICAgICAgICAgICAgICAgICAgICAgICdQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0JG1lc3NhZ2UgLj0gJwogICAgICAgICAgICAgICAgICAgICAgICdjaHVua19zcGxpdChiYXNlNjRfZW5jb2RlKCRjb250ZW50KSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRtZXNzYWdlIC49ICctLScgLiAkYm91bmRhcnkgLiAnLS0nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKHN1YnN0cigkdGhpcy0+c210cF9ob3N0bmFtZSwgMCwgMykgPT0gJ3RscycpICIKICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRob3N0bmFtZSA9IHN1YnN0cigkdGhpcy0+c210cF9ob3N0bmFtZSwgNik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JGhvc3RuYW1lID0gJHRoaXMtPnNtdHBfaG9zdG5hbWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0JGhhbmRsZSA9IGZzb2Nrb3BlbigkaG9zdG5hbWUsICR0aGlzLT5zbXRwX3BvcnQsICcKICAgICAgICAgICAgICAgICAgICAgICAnJGVycm5vLCAkZXJyc3RyLCAkdGhpcy0+c210cF90aW1lb3V0KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKCEkaGFuZGxlKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0dGhyb3cgbmV3IFxcRXhjZXB0aW9uKCdFcnJvcjogJyAuICRlcnJzdHIgLiAnICgnICIKICAgICAgICAgICAgICAgICAgICAgICAiLiAkZXJybm8gLiAnKScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdGlmIChzdWJzdHIoUEhQX09TLCAwLCAzKSAhPSAnV0lOJykge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0c29ja2V0X3NldF90aW1lb3V0KCRoYW5kbGUsICcKICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPnNtdHBfdGltZW91dCwgMCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdHdoaWxlICgkbGluZSA9IGZnZXRzKCRoYW5kbGUsIDUxNSkpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdGlmIChzdWJzdHIoJGxpbmUsIDMsIDEpID09ICcgJykge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0XHRicmVhaztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0ZnB1dHMoJGhhbmRsZSwgJ0VITE8gJyAuIGdldGVudignU0VSVkVSX05BTUUnKSAuICIKICAgICAgICAgICAgICAgICAgICAgICAnIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRyZXBseSA9ICcnO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdHdoaWxlICgkbGluZSA9IGZnZXRzKCRoYW5kbGUsIDUxNSkpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdCRyZXBseSAuPSAkbGluZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdC8vc29tZSBTTVRQIHNlcnZlcnMgcmVzcG9uZCB3aXRoIDIyMCBjb2RlICcKICAgICAgICAgICAgICAgICAgICAgICAnYmVmb3JlIHJlc3BvbmRpbmcgd2l0aCAyNTAuIGhlbmNlLCB3ZSBuZWVkIHRvIGlnbm9yZSAnCiAgICAgICAgICAgICAgICAgICAgICAgJzIyMCByZXNwb25zZSBzdHJpbmdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdGlmIChzdWJzdHIoJHJlcGx5LCAwLCAzKSA9PSAyMjAgJiYgJwogICAgICAgICAgICAgICAgICAgICAgICJzdWJzdHIoJGxpbmUsIDMsIDEpID09ICcgJykge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQkcmVwbHkgPSAnJztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdFx0Y29udGludWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHR9IGVsc2UgaWYgKHN1YnN0cigkbGluZSwgMywgMSkgPT0gJyAnKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRcdGJyZWFrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRpZiAoc3Vic3RyKCRyZXBseSwgMCwgMykgIT0gMjUwKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHR0aHJvdyBuZXcgXFxFeGNlcHRpb24oJ0Vycm9yOiBFSExPIG5vdCAiCiAgICAgICAgICAgICAgICAgICAgICAgImFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRpZiAoc3Vic3RyKCR0aGlzLT5zbXRwX2hvc3RuYW1lLCAwLCAzKSA9PSAndGxzJykgIgogICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRmcHV0cygkaGFuZGxlLCBcJ1NUQVJUVExTXCcgLiAiXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkdGhpcy0+aGFuZGxlUmVwbHkoJGhhbmRsZSwgMjIwLCAnRXJyb3I6ICIKICAgICAgICAgICAgICAgICAgICAgICAiU1RBUlRUTFMgbm90IGFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0aWYgKHN0cmVhbV9zb2NrZXRfZW5hYmxlX2NyeXB0bygkaGFuZGxlLCB0cnVlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ1NUUkVBTV9DUllQVE9fTUVUSE9EX1RMU19DTElFTlQpICE9PSB0cnVlKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRcdHRocm93IG5ldyBcXEV4Y2VwdGlvbignRXJyb3I6IFRMUyBjb3VsZCBub3QgIgogICAgICAgICAgICAgICAgICAgICAgICJiZSBlc3RhYmxpc2hlZCEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdGZwdXRzKCRoYW5kbGUsICdFSExPICcgLiBnZXRlbnYoJ1NFUlZFUl9OQU1FJykgIgogICAgICAgICAgICAgICAgICAgICAgICcuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAyNTAsICdFcnJvcjogRUhMTyAiCiAgICAgICAgICAgICAgICAgICAgICAgIm5vdCBhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0aWYgKCFlbXB0eSgkdGhpcy0+c210cF91c2VybmFtZSkgJiYgJwogICAgICAgICAgICAgICAgICAgICAgICchZW1wdHkoJHRoaXMtPnNtdHBfcGFzc3dvcmQpKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRmcHV0cygkaGFuZGxlLCBcJ0FVVEggTE9HSU5cJyAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAzMzQsICdFcnJvcjogQVVUSCAiCiAgICAgICAgICAgICAgICAgICAgICAgIkxPR0lOIG5vdCBhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdGZwdXRzKCRoYW5kbGUsICcKICAgICAgICAgICAgICAgICAgICAgICAnYmFzZTY0X2VuY29kZSgkdGhpcy0+c210cF91c2VybmFtZSkgLiAiXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkdGhpcy0+aGFuZGxlUmVwbHkoJGhhbmRsZSwgMzM0LCAnRXJyb3I6ICIKICAgICAgICAgICAgICAgICAgICAgICAiVXNlcm5hbWUgbm90IGFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0ZnB1dHMoJGhhbmRsZSwgJwogICAgICAgICAgICAgICAgICAgICAgICdiYXNlNjRfZW5jb2RlKCR0aGlzLT5zbXRwX3Bhc3N3b3JkKSAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAyMzUsICdFcnJvcjogIgogICAgICAgICAgICAgICAgICAgICAgICJQYXNzd29yZCBub3QgYWNjZXB0ZWQgZnJvbSBzZXJ2ZXIhJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdGZwdXRzKCRoYW5kbGUsICdIRUxPICcgLiBnZXRlbnYoJ1NFUlZFUl9OQU1FJykgIgogICAgICAgICAgICAgICAgICAgICAgICcuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAyNTAsICdFcnJvcjogSEVMTyAiCiAgICAgICAgICAgICAgICAgICAgICAgIm5vdCBhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0aWYgKCR0aGlzLT52ZXJwKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnTUFJTCBGUk9NOiA8JyAuICR0aGlzLT5mcm9tIC4gIgogICAgICAgICAgICAgICAgICAgICAgICdcJz5YVkVSUFwnIC4gIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnTUFJTCBGUk9NOiA8JyAuICR0aGlzLT5mcm9tIC4gIgogICAgICAgICAgICAgICAgICAgICAgICdcJz5cJyAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JHRoaXMtPmhhbmRsZVJlcGx5KCRoYW5kbGUsIDI1MCwgJ0Vycm9yOiBNQUlMICIKICAgICAgICAgICAgICAgICAgICAgICAiRlJPTSBub3QgYWNjZXB0ZWQgZnJvbSBzZXJ2ZXIhJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0aWYgKCFpc19hcnJheSgkdGhpcy0+dG8pKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnUkNQVCBUTzogPCcgLiAkdGhpcy0+dG8gLiAnPicgIgogICAgICAgICAgICAgICAgICAgICAgICcuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdCRyZXBseSA9ICR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCBmYWxzZSwgJwogICAgICAgICAgICAgICAgICAgICAgICInUkNQVCBUTyBbIWFycmF5XScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0aWYgKChzdWJzdHIoJHJlcGx5LCAwLCAzKSAhPSAyNTApICYmICcKICAgICAgICAgICAgICAgICAgICAgICAnKHN1YnN0cigkcmVwbHksIDAsIDMpICE9IDI1MSkpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdFx0dGhyb3cgbmV3IFxcRXhjZXB0aW9uKCdFcnJvcjogUkNQVCBUTyBub3QgIgogICAgICAgICAgICAgICAgICAgICAgICJhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0Zm9yZWFjaCAoJHRoaXMtPnRvIGFzICRyZWNpcGllbnQpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdFx0ZnB1dHMoJGhhbmRsZSwgJ1JDUFQgVE86IDwnIC4gJHJlY2lwaWVudCAuICIKICAgICAgICAgICAgICAgICAgICAgICAnXCc+XCcgLiAiXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRcdCRyZXBseSA9ICR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCBmYWxzZSwgJwogICAgICAgICAgICAgICAgICAgICAgICInUkNQVCBUTyBbYXJyYXldJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRcdGlmICgoc3Vic3RyKCRyZXBseSwgMCwgMykgIT0gMjUwKSAmJiAnCiAgICAgICAgICAgICAgICAgICAgICAgJyhzdWJzdHIoJHJlcGx5LCAwLCAzKSAhPSAyNTEpKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRcdFx0dGhyb3cgbmV3IFxcRXhjZXB0aW9uKCdFcnJvcjogUkNQVCBUTyBub3QgIgogICAgICAgICAgICAgICAgICAgICAgICJhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRmcHV0cygkaGFuZGxlLCBcJ0RBVEFcJyAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkdGhpcy0+aGFuZGxlUmVwbHkoJGhhbmRsZSwgMzU0LCAnRXJyb3I6IERBVEEgIgogICAgICAgICAgICAgICAgICAgICAgICJub3QgYWNjZXB0ZWQgZnJvbSBzZXJ2ZXIhJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0Ly8gQWNjb3JkaW5nIHRvIHJmYyA4MjEgd2Ugc2hvdWxkIG5vdCBzZW5kIG1vcmUgJwogICAgICAgICAgICAgICAgICAgICAgICd0aGFuIDEwMDAgaW5jbHVkaW5nIHRoZSBDUkxGXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JG1lc3NhZ2UgPSBzdHJfcmVwbGFjZSgiXFxyXFxuIiwgIlxcbiIsICRoZWFkZXIgJwogICAgICAgICAgICAgICAgICAgICAgICcuICRtZXNzYWdlKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbWVzc2FnZSA9IHN0cl9yZXBsYWNlKCJcXHIiLCAiXFxuIiwgJwogICAgICAgICAgICAgICAgICAgICAgICckbWVzc2FnZSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JGxpbmVzID0gZXhwbG9kZSgiXFxuIiwgJG1lc3NhZ2UpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGZvcmVhY2ggKCRsaW5lcyBhcyAkbGluZSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0Ly8gJHJlc3VsdHMgPSBzdHJfc3BsaXQoJGxpbmUsICRsZW5ndGgpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0Ly8gc2VlICcKICAgICAgICAgICAgICAgICAgICAgICAnaHR0cHM6Ly9waHAud2F0Y2gvdmVyc2lvbnMvOC4yL3N0cl9zcGxpdC1lbXB0eS1zdHJpbmctZW1wdHktYXJyYXlcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCRyZXN1bHRzID0gKCRsaW5lID09PSAnJykgPyBbJyddIDogIgogICAgICAgICAgICAgICAgICAgICAgICdzdHJfc3BsaXQoJGxpbmUsIDk5OCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRmb3JlYWNoICgkcmVzdWx0cyBhcyAkcmVzdWx0KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRcdGZwdXRzKCRoYW5kbGUsICRyZXN1bHQgLiAiXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGZwdXRzKCRoYW5kbGUsIFwnLlwnIC4gIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAyNTAsICdFcnJvcjogREFUQSAiCiAgICAgICAgICAgICAgICAgICAgICAgIm5vdCBhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRmcHV0cygkaGFuZGxlLCBcJ1FVSVRcJyAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkdGhpcy0+aGFuZGxlUmVwbHkoJGhhbmRsZSwgMjIxLCAnRXJyb3I6IFFVSVQgIgogICAgICAgICAgICAgICAgICAgICAgICJub3QgYWNjZXB0ZWQgZnJvbSBzZXJ2ZXIhJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0ZmNsb3NlKCRoYW5kbGUpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRwcml2YXRlIGZ1bmN0aW9uIGhhbmRsZVJlcGx5KCRoYW5kbGUsICRzdGF0dXNfY29kZSA9ICcKICAgICAgICAgICAgICAgICAgICAgICAnZmFsc2UsICRlcnJvcl90ZXh0ID0gZmFsc2UsICRjb3VudGVyID0gMCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkcmVwbHkgPSAnJztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0d2hpbGUgKCgkbGluZSA9IGZnZXRzKCRoYW5kbGUsIDUxNSkpICE9PSBmYWxzZSkgJwogICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JHJlcGx5IC49ICRsaW5lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdGlmIChzdWJzdHIoJGxpbmUsIDMsIDEpID09ICcgJykge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0YnJlYWs7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdC8vIEhhbmRsZSBzbG93aXNoIHNlcnZlciByZXNwb25zZXMgKGdlbmVyYWxseSBkdWUgJwogICAgICAgICAgICAgICAgICAgICAgICd0byBwb2xpY3kgc2VydmVycylcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKCEkbGluZSAmJiBlbXB0eSgkcmVwbHkpICYmICRjb3VudGVyIDwgJwogICAgICAgICAgICAgICAgICAgICAgICckdGhpcy0+bWF4X2F0dGVtcHRzKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0c2xlZXAoMSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JGNvdW50ZXIrKztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRyZXR1cm4gJHRoaXMtPmhhbmRsZVJlcGx5KCRoYW5kbGUsICRzdGF0dXNfY29kZSwgJwogICAgICAgICAgICAgICAgICAgICAgICckZXJyb3JfdGV4dCwgJGNvdW50ZXIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGlmICgkc3RhdHVzX2NvZGUpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRpZiAoc3Vic3RyKCRyZXBseSwgMCwgMykgIT0gJHN0YXR1c19jb2RlKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHR0aHJvdyBuZXcgXFxFeGNlcHRpb24oJGVycm9yX3RleHQpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRyZXR1cm4gJHJlcGx5O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJywKICAgICAgICAgICAgJ0NvcHlUb015UGFnZU9ubHknOiAxLAogICAgICAgICAgICAnRGVzdFBhdGgnOiAnJywKICAgICAgICAgICAgJ0ZpbGVOYW1lJzogJ3VwbG9hZC9zeXN0ZW0vbGlicmFyeS9tYWlsL3NtdHAucGhwJywKICAgICAgICAgICAgJ0luc3RydWN0aW9ucyc6ICcxLiBVc2UgdHVyYmlmeSBlbWFpbFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgVW5jb21tZW50IG91dCBsaW5lIDE5XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICBhLiBHb3RvIFN5c3RlbSAtPiBTZXR0aW5nXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBiLiBjbGljayB0aGUgU3RvcmUncyBBY3Rpb24gaWNvblxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgYy4gY2xpY2sgTWFpbCB0YWIgYW5kIGVudGVyIHRoZSBmb2xsb3dpbmc6XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIFNNVFAgSG9zdG5hbWUgICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzc2w6Ly9zbXRwLmJpem1haWwueWFob28uY29tXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIFNNVFAgVXNlcm5hbWUgICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICduby1yZXBseS1hQGFzb25lbGlzdC5jb21cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgU01UUCBQYXNzd29yZCAgVXNlIGFueSBvZiBwYXNzd29yZDEtNVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgICAgcGFzc3dvcmQxOiBjbHpjYW1oZWNndWpzd3VyXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICAgICBwYXNzd29yZDI6IGpqeG1rb2JuZWRnc3NoanZcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgICAgIHBhc3N3b3JkMzogdmZ4aHpzd3hrbXhhZXNyblxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgICAgcGFzc3dyb2Q0OiB2ZGVvZ3JjaHFiY2dnd2F5XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICAgICBwYXNzd3JvZDU6IHBoY2NrdWduZWhxbWt3YmxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgU01QVCBQb3J0OiA0NjUnLAogICAgICAgICAgICAnSXNUZXh0JzogMSwKICAgICAgICAgICAgJ1JlbW92ZUFmdGVyQ29weSc6IDAsCiAgICAgICAgICAgICdTbGlkZVR5cGUnOiAnSW5jbHVkZScsCiAgICAgICAgICAgICdhTGFiZWwnOiAnQWN0aW9uIHJlcXVpcmVkOiBzbm1wLnBocCBlbWFpbCBzZXR1cCd9LAogICAgICdlbi1VUyc6IHsnQWJzb2x1dGVQYXRoJzogMCwKICAgICAgICAgICAgICAgJ0NvbnRlbnQnOiAnPD9waHBcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICduYW1lc3BhY2UgTWFpbDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdjbGFzcyBTbXRwIGV4dGVuZHMgXFxzdGRDbGFzcyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgJHNtdHBfaG9zdG5hbWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgJHNtdHBfdXNlcm5hbWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgJHNtdHBfcGFzc3dvcmQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgJHNtdHBfcG9ydCA9IDI1O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHVibGljICRzbXRwX3RpbWVvdXQgPSA1O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHVibGljICRtYXhfYXR0ZW1wdHMgPSAzO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHVibGljICR2ZXJwID0gZmFsc2U7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgZnVuY3Rpb24gc2VuZCgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKGlzX2FycmF5KCR0aGlzLT50bykpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkdG8gPSBpbXBsb2RlKCcsJywgJHRoaXMtPnRvKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkdG8gPSAkdGhpcy0+dG87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgIyR0aGlzLT5mcm9tID0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICInbm8tcmVwbHktYUBhc29uZWxpc3QuY29tJztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGJvdW5kYXJ5ID0gJy0tLS09X05leHRQYXJ0XycgLiBtZDUodGltZSgpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGhlYWRlciA9ICdNSU1FLVZlcnNpb246IDEuMCcgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkaGVhZGVyIC49ICdUbzogPCcgLiAkdG8gLiAnPicgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkaGVhZGVyIC49ICdTdWJqZWN0OiA9P1VURi04P0I/JyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiYmFzZTY0X2VuY29kZSgkdGhpcy0+c3ViamVjdCkgLiAnPz0nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGhlYWRlciAuPSAnRGF0ZTogJyAuIGRhdGUoJ0QsIGQgTSBZIEg6aTpzIE8nKSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy4gUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGhlYWRlciAuPSAnRnJvbTogPT9VVEYtOD9CPycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgImJhc2U2NF9lbmNvZGUoJHRoaXMtPnNlbmRlcikgLiAnPz0gPCcgLiAkdGhpcy0+ZnJvbSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIi4gJz4nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKCEkdGhpcy0+cmVwbHlfdG8pIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkaGVhZGVyIC49ICdSZXBseS1UbzogPT9VVEYtOD9CPycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgImJhc2U2NF9lbmNvZGUoJHRoaXMtPnNlbmRlcikgLiAnPz0gPCcgLiAkdGhpcy0+ZnJvbSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIi4gJz4nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkaGVhZGVyIC49ICdSZXBseS1UbzogPT9VVEYtOD9CPycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgImJhc2U2NF9lbmNvZGUoJHRoaXMtPnJlcGx5X3RvKSAuICc/PSA8JyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnJlcGx5X3RvIC4gJz4nIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkaGVhZGVyIC49ICdSZXR1cm4tUGF0aDogJyAuICR0aGlzLT5mcm9tIC4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICdQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkaGVhZGVyIC49ICdYLU1haWxlcjogUEhQLycgLiBwaHB2ZXJzaW9uKCkgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1BIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRoZWFkZXIgLj0gJ0NvbnRlbnQtVHlwZTogbXVsdGlwYXJ0L21peGVkOyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JvdW5kYXJ5PSJcJyAuICRib3VuZGFyeSAuIFwnIlwnIC4gUEhQX0VPTCAuICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKCEkdGhpcy0+aHRtbCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRtZXNzYWdlID0gJy0tJyAuICRib3VuZGFyeSAuIFBIUF9FT0w7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgIgogICAgICAgICAgICAgICAgICAgICAgICAgICdjaGFyc2V0PSJ1dGYtOCJcJyAuIFBIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiYmFzZTY0JyAuIFBIUF9FT0wgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtZXNzYWdlIC49ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnY2h1bmtfc3BsaXQoYmFzZTY0X2VuY29kZSgkdGhpcy0+dGV4dCkpIC4gJwogICAgICAgICAgICAgICAgICAgICAgICAgICdQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRtZXNzYWdlID0gJy0tJyAuICRib3VuZGFyeSAuIFBIUF9FT0w7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHlwZTogIgogICAgICAgICAgICAgICAgICAgICAgICAgICdtdWx0aXBhcnQvYWx0ZXJuYXRpdmU7IGJvdW5kYXJ5PSJcJyAuICRib3VuZGFyeSAuICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnXCdfYWx0IlwnIC4gUEhQX0VPTCAuIFBIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJy0tJyAuICRib3VuZGFyeSAuICdfYWx0JyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkbWVzc2FnZSAuPSAnQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NoYXJzZXQ9InV0Zi04IlwnIC4gUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkbWVzc2FnZSAuPSAnQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogIgogICAgICAgICAgICAgICAgICAgICAgICAgICJiYXNlNjQnIC4gUEhQX0VPTCAuIFBIUF9FT0w7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0aWYgKCR0aGlzLT50ZXh0KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHQkbWVzc2FnZSAuPSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NodW5rX3NwbGl0KGJhc2U2NF9lbmNvZGUoJHRoaXMtPnRleHQpKSAuICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JG1lc3NhZ2UgLj0gY2h1bmtfc3BsaXQoYmFzZTY0X2VuY29kZSgnVGhpcyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lzIGEgSFRNTCBlbWFpbCBhbmQgeW91ciBlbWFpbCBjbGllbnQgc29mdHdhcmUgZG9lcyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vdCBzdXBwb3J0IEhUTUwgZW1haWwhJykpIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JG1lc3NhZ2UgLj0gJy0tJyAuICRib3VuZGFyeSAuICdfYWx0JyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkbWVzc2FnZSAuPSAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnY2hhcnNldD0idXRmLTgiXCcgLiBQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRtZXNzYWdlIC49ICdDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgImJhc2U2NCcgLiBQSFBfRU9MIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbWVzc2FnZSAuPSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NodW5rX3NwbGl0KGJhc2U2NF9lbmNvZGUoJHRoaXMtPmh0bWwpKSAuICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkbWVzc2FnZSAuPSAnLS0nIC4gJGJvdW5kYXJ5IC4gJ19hbHQtLScgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1BIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Zm9yZWFjaCAoJHRoaXMtPmF0dGFjaG1lbnRzIGFzICRhdHRhY2htZW50KSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3tcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRpZiAoZmlsZV9leGlzdHMoJGF0dGFjaG1lbnQpKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkaGFuZGxlID0gZm9wZW4oJGF0dGFjaG1lbnQsICdyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHQkY29udGVudCA9IGZyZWFkKCRoYW5kbGUsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnZmlsZXNpemUoJGF0dGFjaG1lbnQpKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdGZjbG9zZSgkaGFuZGxlKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCRtZXNzYWdlIC49ICctLScgLiAkYm91bmRhcnkgLiBQSFBfRU9MO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtVHlwZTogIgogICAgICAgICAgICAgICAgICAgICAgICAgICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07IG5hbWU9IlwnIC4gJwogICAgICAgICAgICAgICAgICAgICAgICAgICdiYXNlbmFtZSgkYXR0YWNobWVudCkgLiBcJyJcJyAuIFBIUF9FT0w7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkbWVzc2FnZSAuPSAnQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogIgogICAgICAgICAgICAgICAgICAgICAgICAgICJiYXNlNjQnIC4gUEhQX0VPTDtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCRtZXNzYWdlIC49ICdDb250ZW50LURpc3Bvc2l0aW9uOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2F0dGFjaG1lbnQ7IGZpbGVuYW1lPSJcJyAuIGJhc2VuYW1lKCRhdHRhY2htZW50KSAuICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnXCciXCcgLiBQSFBfRU9MO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JG1lc3NhZ2UgLj0gJ0NvbnRlbnQtSUQ6IDwnIC4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICJ1cmxlbmNvZGUoYmFzZW5hbWUoJGF0dGFjaG1lbnQpKSAuICc+JyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCRtZXNzYWdlIC49ICdYLUF0dGFjaG1lbnQtSWQ6ICcgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3VybGVuY29kZShiYXNlbmFtZSgkYXR0YWNobWVudCkpIC4gUEhQX0VPTCAuICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdCRtZXNzYWdlIC49ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnY2h1bmtfc3BsaXQoYmFzZTY0X2VuY29kZSgkY29udGVudCkpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkbWVzc2FnZSAuPSAnLS0nIC4gJGJvdW5kYXJ5IC4gJy0tJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnUEhQX0VPTDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKHN1YnN0cigkdGhpcy0+c210cF9ob3N0bmFtZSwgMCwgMykgPT0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICIndGxzJykge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRob3N0bmFtZSA9IHN1YnN0cigkdGhpcy0+c210cF9ob3N0bmFtZSwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICc2KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkaG9zdG5hbWUgPSAkdGhpcy0+c210cF9ob3N0bmFtZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQkaGFuZGxlID0gZnNvY2tvcGVuKCRob3N0bmFtZSwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICckdGhpcy0+c210cF9wb3J0LCAkZXJybm8sICRlcnJzdHIsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPnNtdHBfdGltZW91dCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGlmICghJGhhbmRsZSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdHRocm93IG5ldyBcXEV4Y2VwdGlvbignRXJyb3I6ICcgLiAkZXJyc3RyIC4gJyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIignIC4gJGVycm5vIC4gJyknKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRpZiAoc3Vic3RyKFBIUF9PUywgMCwgMykgIT0gJ1dJTicpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdHNvY2tldF9zZXRfdGltZW91dCgkaGFuZGxlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyR0aGlzLT5zbXRwX3RpbWVvdXQsIDApO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR3aGlsZSAoJGxpbmUgPSBmZ2V0cygkaGFuZGxlLCA1MTUpKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRpZiAoc3Vic3RyKCRsaW5lLCAzLCAxKSA9PSAnICcpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdFx0YnJlYWs7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdGZwdXRzKCRoYW5kbGUsICdFSExPICcgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dldGVudihcJ1NFUlZFUl9OQU1FXCcpIC4gIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRyZXBseSA9ICcnO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdHdoaWxlICgkbGluZSA9IGZnZXRzKCRoYW5kbGUsIDUxNSkpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdCRyZXBseSAuPSAkbGluZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdC8vc29tZSBTTVRQIHNlcnZlcnMgcmVzcG9uZCB3aXRoIDIyMCBjb2RlICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnYmVmb3JlIHJlc3BvbmRpbmcgd2l0aCAyNTAuIGhlbmNlLCB3ZSBuZWVkIHRvICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnaWdub3JlIDIyMCByZXNwb25zZSBzdHJpbmdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdGlmIChzdWJzdHIoJHJlcGx5LCAwLCAzKSA9PSAyMjAgJiYgJwogICAgICAgICAgICAgICAgICAgICAgICAgICJzdWJzdHIoJGxpbmUsIDMsIDEpID09ICcgJykge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQkcmVwbHkgPSAnJztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdFx0Y29udGludWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHR9IGVsc2UgaWYgKHN1YnN0cigkbGluZSwgMywgMSkgPT0gJyAnKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRcdGJyZWFrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRpZiAoc3Vic3RyKCRyZXBseSwgMCwgMykgIT0gMjUwKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHR0aHJvdyBuZXcgXFxFeGNlcHRpb24oJ0Vycm9yOiBFSExPIG5vdCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgImFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRpZiAoc3Vic3RyKCR0aGlzLT5zbXRwX2hvc3RuYW1lLCAwLCAzKSA9PSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIid0bHMnKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRmcHV0cygkaGFuZGxlLCBcJ1NUQVJUVExTXCcgLiAiXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkdGhpcy0+aGFuZGxlUmVwbHkoJGhhbmRsZSwgMjIwLCAnRXJyb3I6ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiU1RBUlRUTFMgbm90IGFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0aWYgKHN0cmVhbV9zb2NrZXRfZW5hYmxlX2NyeXB0bygkaGFuZGxlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RydWUsIFNUUkVBTV9DUllQVE9fTUVUSE9EX1RMU19DTElFTlQpICE9PSB0cnVlKSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3tcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdFx0dGhyb3cgbmV3IFxcRXhjZXB0aW9uKCdFcnJvcjogVExTIGNvdWxkICIKICAgICAgICAgICAgICAgICAgICAgICAgICAibm90IGJlIGVzdGFibGlzaGVkIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0ZnB1dHMoJGhhbmRsZSwgJ0VITE8gJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnZ2V0ZW52KFwnU0VSVkVSX05BTUVcJykgLiAiXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkdGhpcy0+aGFuZGxlUmVwbHkoJGhhbmRsZSwgMjUwLCAnRXJyb3I6ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiRUhMTyBub3QgYWNjZXB0ZWQgZnJvbSBzZXJ2ZXIhJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGlmICghZW1wdHkoJHRoaXMtPnNtdHBfdXNlcm5hbWUpICYmICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnIWVtcHR5KCR0aGlzLT5zbXRwX3Bhc3N3b3JkKSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0ZnB1dHMoJGhhbmRsZSwgJ0FVVEggTE9HSU4nIC4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICciXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkdGhpcy0+aGFuZGxlUmVwbHkoJGhhbmRsZSwgMzM0LCAnRXJyb3I6ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiQVVUSCBMT0dJTiBub3QgYWNjZXB0ZWQgZnJvbSBzZXJ2ZXIhJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Jhc2U2NF9lbmNvZGUoJHRoaXMtPnNtdHBfdXNlcm5hbWUpIC4gIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JHRoaXMtPmhhbmRsZVJlcGx5KCRoYW5kbGUsIDMzNCwgJ0Vycm9yOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlVzZXJuYW1lIG5vdCBhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdGZwdXRzKCRoYW5kbGUsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnYmFzZTY0X2VuY29kZSgkdGhpcy0+c210cF9wYXNzd29yZCkgLiAiXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkdGhpcy0+aGFuZGxlUmVwbHkoJGhhbmRsZSwgMjM1LCAnRXJyb3I6ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiUGFzc3dvcmQgbm90IGFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnSEVMTyAnIC4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICdnZXRlbnYoXCdTRVJWRVJfTkFNRVwnKSAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAyNTAsICdFcnJvcjogIgogICAgICAgICAgICAgICAgICAgICAgICAgICJIRUxPIG5vdCBhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0aWYgKCR0aGlzLT52ZXJwKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnTUFJTCBGUk9NOiA8JyAuICR0aGlzLT5mcm9tICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnLiBcJz5YVkVSUFwnIC4gIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnTUFJTCBGUk9NOiA8JyAuICR0aGlzLT5mcm9tICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnLiBcJz5cJyAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JHRoaXMtPmhhbmRsZVJlcGx5KCRoYW5kbGUsIDI1MCwgJ0Vycm9yOiBNQUlMICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiRlJPTSBub3QgYWNjZXB0ZWQgZnJvbSBzZXJ2ZXIhJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0aWYgKCFpc19hcnJheSgkdGhpcy0+dG8pKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnUkNQVCBUTzogPCcgLiAkdGhpcy0+dG8gLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1wnPlwnIC4gIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0JHJlcGx5ID0gJHRoaXMtPmhhbmRsZVJlcGx5KCRoYW5kbGUsIGZhbHNlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIidSQ1BUIFRPIFshYXJyYXldJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRpZiAoKHN1YnN0cigkcmVwbHksIDAsIDMpICE9IDI1MCkgJiYgJwogICAgICAgICAgICAgICAgICAgICAgICAgICcoc3Vic3RyKCRyZXBseSwgMCwgMykgIT0gMjUxKSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHR0aHJvdyBuZXcgXFxFeGNlcHRpb24oJ0Vycm9yOiBSQ1BUIFRPIG5vdCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgImFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRmb3JlYWNoICgkdGhpcy0+dG8gYXMgJHJlY2lwaWVudCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHRmcHV0cygkaGFuZGxlLCAnUkNQVCBUTzogPCcgLiAkcmVjaXBpZW50ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnLiBcJz5cJyAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdFx0JHJlcGx5ID0gJHRoaXMtPmhhbmRsZVJlcGx5KCRoYW5kbGUsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiZmFsc2UsICdSQ1BUIFRPIFthcnJheV0nKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdFx0aWYgKChzdWJzdHIoJHJlcGx5LCAwLCAzKSAhPSAyNTApICYmICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnKHN1YnN0cigkcmVwbHksIDAsIDMpICE9IDI1MSkpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdFx0XHR0aHJvdyBuZXcgXFxFeGNlcHRpb24oJ0Vycm9yOiBSQ1BUIFRPICIKICAgICAgICAgICAgICAgICAgICAgICAgICAibm90IGFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGZwdXRzKCRoYW5kbGUsIFwnREFUQVwnIC4gIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAzNTQsICdFcnJvcjogREFUQSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vdCBhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQvLyBBY2NvcmRpbmcgdG8gcmZjIDgyMSB3ZSBzaG91bGQgbm90IHNlbmQgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdtb3JlIHRoYW4gMTAwMCBpbmNsdWRpbmcgdGhlIENSTEZcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbWVzc2FnZSA9IHN0cl9yZXBsYWNlKCJcXHJcXG4iLCAiXFxuIiwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICckaGVhZGVyIC4gJG1lc3NhZ2UpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtZXNzYWdlID0gc3RyX3JlcGxhY2UoIlxcciIsICJcXG4iLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyRtZXNzYWdlKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbGluZXMgPSBleHBsb2RlKCJcXG4iLCAkbWVzc2FnZSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0Zm9yZWFjaCAoJGxpbmVzIGFzICRsaW5lKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHQvLyAkcmVzdWx0cyA9IHN0cl9zcGxpdCgkbGluZSwgJGxlbmd0aCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHQvLyBzZWUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdodHRwczovL3BocC53YXRjaC92ZXJzaW9ucy84LjIvc3RyX3NwbGl0LWVtcHR5LXN0cmluZy1lbXB0eS1hcnJheVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JHJlc3VsdHMgPSAoJGxpbmUgPT09ICcnKSA/IFsnJ10gOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cl9zcGxpdCgkbGluZSwgOTk4KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdGZvcmVhY2ggKCRyZXN1bHRzIGFzICRyZXN1bHQpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdFx0ZnB1dHMoJGhhbmRsZSwgJHJlc3VsdCAuICJcXHJcXG4iKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0ZnB1dHMoJGhhbmRsZSwgXCcuXCcgLiAiXFxyXFxuIik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JHRoaXMtPmhhbmRsZVJlcGx5KCRoYW5kbGUsIDI1MCwgJ0Vycm9yOiBEQVRBICIKICAgICAgICAgICAgICAgICAgICAgICAgICAibm90IGFjY2VwdGVkIGZyb20gc2VydmVyIScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGZwdXRzKCRoYW5kbGUsIFwnUVVJVFwnIC4gIlxcclxcbiIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAyMjEsICdFcnJvcjogUVVJVCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vdCBhY2NlcHRlZCBmcm9tIHNlcnZlciEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRmY2xvc2UoJGhhbmRsZSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlUmVwbHkoJGhhbmRsZSwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICckc3RhdHVzX2NvZGUgPSBmYWxzZSwgJGVycm9yX3RleHQgPSBmYWxzZSwgJGNvdW50ZXIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICc9IDApIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JHJlcGx5ID0gJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdHdoaWxlICgoJGxpbmUgPSBmZ2V0cygkaGFuZGxlLCA1MTUpKSAhPT0gZmFsc2UpICcKICAgICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRyZXBseSAuPSAkbGluZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRpZiAoc3Vic3RyKCRsaW5lLCAzLCAxKSA9PSAnICcpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdGJyZWFrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQvLyBIYW5kbGUgc2xvd2lzaCBzZXJ2ZXIgcmVzcG9uc2VzIChnZW5lcmFsbHkgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdkdWUgdG8gcG9saWN5IHNlcnZlcnMpXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGlmICghJGxpbmUgJiYgZW1wdHkoJHJlcGx5KSAmJiAkY291bnRlciA8ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPm1heF9hdHRlbXB0cykge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdHNsZWVwKDEpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRjb3VudGVyKys7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0cmV0dXJuICR0aGlzLT5oYW5kbGVSZXBseSgkaGFuZGxlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyRzdGF0dXNfY29kZSwgJGVycm9yX3RleHQsICRjb3VudGVyKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRpZiAoJHN0YXR1c19jb2RlKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0aWYgKHN1YnN0cigkcmVwbHksIDAsIDMpICE9ICRzdGF0dXNfY29kZSkgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHR0aHJvdyBuZXcgXFxFeGNlcHRpb24oJGVycm9yX3RleHQpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRyZXR1cm4gJHJlcGx5O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJywKICAgICAgICAgICAgICAgJ0NvcHlUb015UGFnZU9ubHknOiAxLAogICAgICAgICAgICAgICAnRGVzdFBhdGgnOiAnJywKICAgICAgICAgICAgICAgJ0ZpbGVOYW1lJzogJ3VwbG9hZC9zeXN0ZW0vbGlicmFyeS9tYWlsL3NtdHAucGhwJywKICAgICAgICAgICAgICAgJ0luc3RydWN0aW9ucyc6ICcxLiBVc2UgdHVyYmlmeSBlbWFpbFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgVW5jb21tZW50IG91dCBsaW5lIDE5XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICBhLiBHb3RvIFN5c3RlbSAtPiBTZXR0aW5nXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBiLiBjbGljayB0aGUgU3RvcmUncyBBY3Rpb24gaWNvblxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgYy4gY2xpY2sgTWFpbCB0YWIgYW5kIGVudGVyIHRoZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9sbG93aW5nOlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICBTTVRQIEhvc3RuYW1lICAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3NsOi8vc210cC5iaXptYWlsLnlhaG9vLmNvbVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICBTTVRQIFVzZXJuYW1lICAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbm8tcmVwbHktYUBhc29uZWxpc3QuY29tXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIFNNVFAgUGFzc3dvcmQgIFVzZSBhbnkgb2YgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bhc3N3b3JkMS01XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICAgICBwYXNzd29yZDE6IGNsemNhbWhlY2d1anN3dXJcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgICAgIHBhc3N3b3JkMjogamp4bWtvYm5lZGdzc2hqdlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgICAgcGFzc3dvcmQzOiB2ZnhoenN3eGtteGFlc3JuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICAgICBwYXNzd3JvZDQ6IHZkZW9ncmNocWJjZ2d3YXlcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgICAgIHBhc3N3cm9kNTogcGhjY2t1Z25laHFta3dibFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICBTTVBUIFBvcnQ6IDQ2NScsCiAgICAgICAgICAgICAgICdJc1RleHQnOiAxLAogICAgICAgICAgICAgICAnUmVtb3ZlQWZ0ZXJDb3B5JzogMCwKICAgICAgICAgICAgICAgJ1NsaWRlVHlwZSc6ICdJbmNsdWRlJywKICAgICAgICAgICAgICAgJ2FMYWJlbCc6ICdBY3Rpb24gcmVxdWlyZWQ6IHNubXAucGhwIGVtYWlsIHNldHVwJ319LAogNDogeydlbic6IHsnQWJzb2x1dGVQYXRoJzogMCwKICAgICAgICAgICAgJ0NvbnRlbnQnOiAnIyAxLlRvIHVzZSBVUkwgQWxpYXMgeW91IG5lZWQgdG8gYmUgcnVubmluZyBhcGFjaGUgJwogICAgICAgICAgICAgICAgICAgICAgICd3aXRoIG1vZF9yZXdyaXRlIGVuYWJsZWQuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnIyAyLiBJbiB5b3VyIG9wZW5jYXJ0IGRpcmVjdG9yeSByZW5hbWUgaHRhY2Nlc3MudHh0IHRvICcKICAgICAgICAgICAgICAgICAgICAgICAnLmh0YWNjZXNzLlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyMgRm9yIGFueSBzdXBwb3J0IGlzc3VlcyBwbGVhc2UgdmlzaXQ6ICcKICAgICAgICAgICAgICAgICAgICAgICAnaHR0cDovL3d3dy5vcGVuY2FydC5jb21cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdPcHRpb25zICtGb2xsb3dTeW1saW5rc1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyMgUHJldmVudCBEaXJlY3RvcnkgbGlzdGluZ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ09wdGlvbnMgLUluZGV4ZXNcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIFByZXZlbnQgRGlyZWN0IEFjY2VzcyB0byBmaWxlc1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzxGaWxlc01hdGNoICcKICAgICAgICAgICAgICAgICAgICAgICAnIig/aSkoKFxcLnRwbHxcXC50d2lnfFxcLmluaXxcXC5sb2d8KD88IXJvYm90cylcXC50eHQpKSI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnIFJlcXVpcmUgYWxsIGRlbmllZFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyMjIEZvciBhcGFjaGUgMi4yIGFuZCBvbGRlciwgcmVwbGFjZSAiUmVxdWlyZSBhbGwgJwogICAgICAgICAgICAgICAgICAgICAgICdkZW5pZWQiIHdpdGggdGhlc2UgdHdvIGxpbmVzIDpcclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIE9yZGVyIGRlbnksYWxsb3dcclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIERlbnkgZnJvbSBhbGxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8L0ZpbGVzTWF0Y2g+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnIyBTRU8gVVJMIFNldHRpbmdzXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnUmV3cml0ZUVuZ2luZSBPblxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyMgSWYgeW91ciBvcGVuY2FydCBpbnN0YWxsYXRpb24gZG9lcyBub3QgcnVuIGluIHRoZSAnCiAgICAgICAgICAgICAgICAgICAgICAgJ21haW4gd2ViIGZvbGRlciBtYWtlIHN1cmUgdGhlIGZvbGxvd2luZyBpcyBzZXQgdG8gdGhlICcKICAgICAgICAgICAgICAgICAgICAgICAnZm9sZGVyIGl0IGRvZXMgcnVuIGluLCBpLmUuIC8gYmVjb21lcyAvc2hvcC9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdSZXdyaXRlQmFzZSBfUFBhdGhfXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnUmV3cml0ZVJ1bGUgXnNpdGVtYXAueG1sJCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2luZGV4LnBocD9yb3V0ZT1leHRlbnNpb24vZmVlZC9nb29nbGVfc2l0ZW1hcCBbTF1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdSZXdyaXRlUnVsZSBeZ29vZ2xlYmFzZS54bWwkICcKICAgICAgICAgICAgICAgICAgICAgICAnaW5kZXgucGhwP3JvdXRlPWV4dGVuc2lvbi9mZWVkL2dvb2dsZV9iYXNlIFtMXVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1Jld3JpdGVSdWxlIF5zeXN0ZW0vc3RvcmFnZS8oLiopICcKICAgICAgICAgICAgICAgICAgICAgICAnaW5kZXgucGhwP3JvdXRlPWVycm9yL25vdF9mb3VuZCBbTF1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdSZXdyaXRlQ29uZCAle1JFUVVFU1RfRklMRU5BTUV9ICEtZlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1Jld3JpdGVDb25kICV7UkVRVUVTVF9GSUxFTkFNRX0gIS1kXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnUmV3cml0ZUNvbmQgJXtSRVFVRVNUX1VSSX0gJwogICAgICAgICAgICAgICAgICAgICAgICchLipcXC4oaWNvfGdpZnxqcGd8anBlZ3xwbmd8d2VicHxqc3xjc3MpXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnUmV3cml0ZVJ1bGUgXihbXj9dKikgaW5kZXgucGhwP19yb3V0ZV89JDEgW0wsUVNBXVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyMjIyBBZGRpdGlvbmFsIFNldHRpbmdzIHRoYXQgbWF5IG5lZWQgdG8gYmUgZW5hYmxlZCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2ZvciBzb21lIHNlcnZlcnNcclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIyMgVW5jb21tZW50IHRoZSBjb21tYW5kcyBieSByZW1vdmluZyB0aGUgIyBzaWduIGluICcKICAgICAgICAgICAgICAgICAgICAgICAnZnJvbnQgb2YgaXQuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnIyMjIElmIHlvdSBnZXQgYW4gIkludGVybmFsIFNlcnZlciBFcnJvciA1MDAiIGFmdGVyICcKICAgICAgICAgICAgICAgICAgICAgICAnZW5hYmxpbmcgYW55IG9mIHRoZSBmb2xsb3dpbmcgc2V0dGluZ3MsIHJlc3RvcmUgdGhlICMgJwogICAgICAgICAgICAgICAgICAgICAgICJhcyB0aGlzIG1lYW5zIHlvdXIgaG9zdCBkb2Vzbid0IGFsbG93IHRoYXQuXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnIyAxLiBTZXQgbWF4IHVwbG9hZCBmaWxlIHNpemUuIE1vc3QgaG9zdHMgd2lsbCBsaW1pdCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ3RoaXMgYW5kIG5vdCBhbGxvdyBpdCB0byBiZSBvdmVycmlkZGVuIGJ1dCB5b3UgY2FuICcKICAgICAgICAgICAgICAgICAgICAgICAndHJ5LlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyMgcGhwX3ZhbHVlIHVwbG9hZF9tYXhfZmlsZXNpemUgOTk5TVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyMgMi4gU2V0IG1heCBwb3N0IHNpemUuIFVuY29tbWVudCB0aGlzIGxpbmUgaWYgeW91ICcKICAgICAgICAgICAgICAgICAgICAgICAnaGF2ZSBhIGxvdCBvZiBwcm9kdWN0IG9wdGlvbnMgb3IgYXJlIGdldHRpbmcgZXJyb3JzICcKICAgICAgICAgICAgICAgICAgICAgICAnd2hlcmUgZm9ybXMgYXJlIG5vdCBzYXZpbmcgYWxsIGZpZWxkcy5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIHBocF92YWx1ZSBwb3N0X21heF9zaXplIDk5OU1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIDMuIFNldCBtYXggdGltZSBzY3JpcHQgY2FuIHRha2UuIFVuY29tbWVudCB0aGlzIGxpbmUgJwogICAgICAgICAgICAgICAgICAgICAgICdpZiB5b3UgaGF2ZSBhIGxvdCBvZiBwcm9kdWN0IG9wdGlvbnMgb3IgYXJlIGdldHRpbmcgJwogICAgICAgICAgICAgICAgICAgICAgICdlcnJvcnMgd2hlcmUgZm9ybXMgYXJlIG5vdCBzYXZpbmcgYWxsIGZpZWxkcy5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIHBocF92YWx1ZSBtYXhfZXhlY3V0aW9uX3RpbWUgMjAwXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnIyA0LiBTZXQgbWF4IHRpbWUgZm9yIGlucHV0IHRvIGJlIHJlY2VpdmVkLiBVbmNvbW1lbnQgJwogICAgICAgICAgICAgICAgICAgICAgICd0aGlzIGxpbmUgaWYgeW91IGhhdmUgYSBsb3Qgb2YgcHJvZHVjdCBvcHRpb25zIG9yIGFyZSAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2dldHRpbmcgZXJyb3JzIHdoZXJlIGZvcm1zIGFyZSBub3Qgc2F2aW5nIGFsbCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2ZpZWxkcy5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIHBocF92YWx1ZSBtYXhfaW5wdXRfdGltZSAyMDBcclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIDUuIERpc2FibGUgb3Blbl9iYXNlZGlyIGxpbWl0YXRpb25zLiBNb3N0IGhvc3RzIHdpbGwgJwogICAgICAgICAgICAgICAgICAgICAgICdsaW1pdCB0aGlzIGFuZCBub3QgYWxsb3cgaXQgdG8gYmUgb3ZlcnJpZGRlbiBidXQgeW91ICcKICAgICAgICAgICAgICAgICAgICAgICAnY2FuIHRyeS5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcjIHBocF92YWx1ZSBvcGVuX2Jhc2VkaXIgbm9uZVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzxGaWxlc01hdGNoICcKICAgICAgICAgICAgICAgICAgICAgICAnIlxcLih0dGZ8dHRjfG90Znxlb3R8d29mZnx3b2ZmMnxmb250LmNzc3xjc3MpJCI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPElmTW9kdWxlIG1vZF9oZWFkZXJzLmM+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnSGVhZGVyIHNldCBBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4gIioiXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPC9JZk1vZHVsZT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8L0ZpbGVzTWF0Y2g+XHJcbicsCiAgICAgICAgICAgICdDb3B5VG9NeVBhZ2VPbmx5JzogMSwKICAgICAgICAgICAgJ0Rlc3RQYXRoJzogJycsCiAgICAgICAgICAgICdGaWxlTmFtZSc6ICd1cGxvYWQvLmh0YWNjZXNzJywKICAgICAgICAgICAgJ0luc3RydWN0aW9ucyc6ICdVcGRhdGUgdGhlIFJld3JpdGVCYXNlIHRvIHRoZSBkaXIgb2YgdGhlIHBhZ2UgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RoYXQgb3BlbmNhcnQgcmVzaWRlLlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnVGhlIF9QUGF0aF8gd2lsbCByZXBsYWNlZCB3aXRoIHBhZ2UgcGF0aFxyXG4nLAogICAgICAgICAgICAnSXNUZXh0JzogMSwKICAgICAgICAgICAgJ1JlbW92ZUFmdGVyQ29weSc6IDAsCiAgICAgICAgICAgICdTbGlkZVR5cGUnOiAnSW5jbHVkZScsCiAgICAgICAgICAgICdhTGFiZWwnOiAnaHRhY2Nlc3MnfSwKICAgICAnZW4tVVMnOiB7J0Fic29sdXRlUGF0aCc6IDAsCiAgICAgICAgICAgICAgICdDb250ZW50JzogJyMgMS5UbyB1c2UgVVJMIEFsaWFzIHlvdSBuZWVkIHRvIGJlIHJ1bm5pbmcgYXBhY2hlICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnd2l0aCBtb2RfcmV3cml0ZSBlbmFibGVkLlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyMgMi4gSW4geW91ciBvcGVuY2FydCBkaXJlY3RvcnkgcmVuYW1lIGh0YWNjZXNzLnR4dCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvIC5odGFjY2Vzcy5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcjIEZvciBhbnkgc3VwcG9ydCBpc3N1ZXMgcGxlYXNlIHZpc2l0OiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h0dHA6Ly93d3cub3BlbmNhcnQuY29tXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnT3B0aW9ucyArRm9sbG93U3ltbGlua3NcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcjIFByZXZlbnQgRGlyZWN0b3J5IGxpc3RpbmdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdPcHRpb25zIC1JbmRleGVzXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyBQcmV2ZW50IERpcmVjdCBBY2Nlc3MgdG8gZmlsZXNcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8RmlsZXNNYXRjaCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyIoP2kpKChcXC50cGx8XFwudHdpZ3xcXC5pbml8XFwubG9nfCg/PCFyb2JvdHMpXFwudHh0KSkiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyBSZXF1aXJlIGFsbCBkZW5pZWRcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcjIyBGb3IgYXBhY2hlIDIuMiBhbmQgb2xkZXIsIHJlcGxhY2UgIlJlcXVpcmUgYWxsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVuaWVkIiB3aXRoIHRoZXNlIHR3byBsaW5lcyA6XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyBPcmRlciBkZW55LGFsbG93XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyBEZW55IGZyb20gYWxsXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPC9GaWxlc01hdGNoPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyMgU0VPIFVSTCBTZXR0aW5nc1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1Jld3JpdGVFbmdpbmUgT25cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcjIElmIHlvdXIgb3BlbmNhcnQgaW5zdGFsbGF0aW9uIGRvZXMgbm90IHJ1biBpbiB0aGUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdtYWluIHdlYiBmb2xkZXIgbWFrZSBzdXJlIHRoZSBmb2xsb3dpbmcgaXMgc2V0IHRvICcKICAgICAgICAgICAgICAgICAgICAgICAgICAndGhlIGZvbGRlciBpdCBkb2VzIHJ1biBpbiwgaS5lLiAvIGJlY29tZXMgL3Nob3AvXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnUmV3cml0ZUJhc2UgX1BQYXRoX1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1Jld3JpdGVSdWxlIF5zaXRlbWFwLnhtbCQgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdpbmRleC5waHA/cm91dGU9ZXh0ZW5zaW9uL2ZlZWQvZ29vZ2xlX3NpdGVtYXAgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdbTF1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdSZXdyaXRlUnVsZSBeZ29vZ2xlYmFzZS54bWwkICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5kZXgucGhwP3JvdXRlPWV4dGVuc2lvbi9mZWVkL2dvb2dsZV9iYXNlIFtMXVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1Jld3JpdGVSdWxlIF5zeXN0ZW0vc3RvcmFnZS8oLiopICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5kZXgucGhwP3JvdXRlPWVycm9yL25vdF9mb3VuZCBbTF1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdSZXdyaXRlQ29uZCAle1JFUVVFU1RfRklMRU5BTUV9ICEtZlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1Jld3JpdGVDb25kICV7UkVRVUVTVF9GSUxFTkFNRX0gIS1kXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnUmV3cml0ZUNvbmQgJXtSRVFVRVNUX1VSSX0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICchLipcXC4oaWNvfGdpZnxqcGd8anBlZ3xwbmd8d2VicHxqc3xjc3MpXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnUmV3cml0ZVJ1bGUgXihbXj9dKikgaW5kZXgucGhwP19yb3V0ZV89JDEgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdbTCxRU0FdXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyMjIEFkZGl0aW9uYWwgU2V0dGluZ3MgdGhhdCBtYXkgbmVlZCB0byBiZSBlbmFibGVkICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9yIHNvbWUgc2VydmVyc1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyMjIyBVbmNvbW1lbnQgdGhlIGNvbW1hbmRzIGJ5IHJlbW92aW5nIHRoZSAjIHNpZ24gJwogICAgICAgICAgICAgICAgICAgICAgICAgICdpbiBmcm9udCBvZiBpdC5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcjIyMgSWYgeW91IGdldCBhbiAiSW50ZXJuYWwgU2VydmVyIEVycm9yIDUwMCIgYWZ0ZXIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdlbmFibGluZyBhbnkgb2YgdGhlIGZvbGxvd2luZyBzZXR0aW5ncywgcmVzdG9yZSB0aGUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICIjIGFzIHRoaXMgbWVhbnMgeW91ciBob3N0IGRvZXNuJ3QgYWxsb3cgdGhhdC5cclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcjIDEuIFNldCBtYXggdXBsb2FkIGZpbGUgc2l6ZS4gTW9zdCBob3N0cyB3aWxsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnbGltaXQgdGhpcyBhbmQgbm90IGFsbG93IGl0IHRvIGJlIG92ZXJyaWRkZW4gYnV0ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAneW91IGNhbiB0cnkuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyBwaHBfdmFsdWUgdXBsb2FkX21heF9maWxlc2l6ZSA5OTlNXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyAyLiBTZXQgbWF4IHBvc3Qgc2l6ZS4gVW5jb21tZW50IHRoaXMgbGluZSBpZiB5b3UgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdoYXZlIGEgbG90IG9mIHByb2R1Y3Qgb3B0aW9ucyBvciBhcmUgZ2V0dGluZyBlcnJvcnMgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd3aGVyZSBmb3JtcyBhcmUgbm90IHNhdmluZyBhbGwgZmllbGRzLlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyMgcGhwX3ZhbHVlIHBvc3RfbWF4X3NpemUgOTk5TVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyMgMy4gU2V0IG1heCB0aW1lIHNjcmlwdCBjYW4gdGFrZS4gVW5jb21tZW50IHRoaXMgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdsaW5lIGlmIHlvdSBoYXZlIGEgbG90IG9mIHByb2R1Y3Qgb3B0aW9ucyBvciBhcmUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdnZXR0aW5nIGVycm9ycyB3aGVyZSBmb3JtcyBhcmUgbm90IHNhdmluZyBhbGwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdmaWVsZHMuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyBwaHBfdmFsdWUgbWF4X2V4ZWN1dGlvbl90aW1lIDIwMFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyMgNC4gU2V0IG1heCB0aW1lIGZvciBpbnB1dCB0byBiZSByZWNlaXZlZC4gJwogICAgICAgICAgICAgICAgICAgICAgICAgICdVbmNvbW1lbnQgdGhpcyBsaW5lIGlmIHlvdSBoYXZlIGEgbG90IG9mIHByb2R1Y3QgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdvcHRpb25zIG9yIGFyZSBnZXR0aW5nIGVycm9ycyB3aGVyZSBmb3JtcyBhcmUgbm90ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnc2F2aW5nIGFsbCBmaWVsZHMuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyBwaHBfdmFsdWUgbWF4X2lucHV0X3RpbWUgMjAwXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyA1LiBEaXNhYmxlIG9wZW5fYmFzZWRpciBsaW1pdGF0aW9ucy4gTW9zdCBob3N0cyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpbGwgbGltaXQgdGhpcyBhbmQgbm90IGFsbG93IGl0IHRvIGJlIG92ZXJyaWRkZW4gJwogICAgICAgICAgICAgICAgICAgICAgICAgICdidXQgeW91IGNhbiB0cnkuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnIyBwaHBfdmFsdWUgb3Blbl9iYXNlZGlyIG5vbmVcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8RmlsZXNNYXRjaCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyJcXC4odHRmfHR0Y3xvdGZ8ZW90fHdvZmZ8d29mZjJ8Zm9udC5jc3N8Y3NzKSQiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxJZk1vZHVsZSBtb2RfaGVhZGVycy5jPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ0hlYWRlciBzZXQgQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luICIqIlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzwvSWZNb2R1bGU+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPC9GaWxlc01hdGNoPlxyXG4nLAogICAgICAgICAgICAgICAnQ29weVRvTXlQYWdlT25seSc6IDEsCiAgICAgICAgICAgICAgICdEZXN0UGF0aCc6ICcnLAogICAgICAgICAgICAgICAnRmlsZU5hbWUnOiAndXBsb2FkLy5odGFjY2VzcycsCiAgICAgICAgICAgICAgICdJbnN0cnVjdGlvbnMnOiAnVXBkYXRlIHRoZSBSZXdyaXRlQmFzZSB0byB0aGUgZGlyIG9mIHRoZSBwYWdlICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aGF0IG9wZW5jYXJ0IHJlc2lkZS5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1RoZSBfUFBhdGhfIHdpbGwgcmVwbGFjZWQgd2l0aCBwYWdlIHBhdGhcclxuJywKICAgICAgICAgICAgICAgJ0lzVGV4dCc6IDEsCiAgICAgICAgICAgICAgICdSZW1vdmVBZnRlckNvcHknOiAwLAogICAgICAgICAgICAgICAnU2xpZGVUeXBlJzogJ0luY2x1ZGUnLAogICAgICAgICAgICAgICAnYUxhYmVsJzogJ2h0YWNjZXNzJ319LAogNTogeydlbic6IHsnQWJzb2x1dGVQYXRoJzogMCwKICAgICAgICAgICAgJ0NvbnRlbnQnOiAnPHN0eWxlPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAjYXNvbmVuYXYge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ0BtZWRpYSAobWluLXdpZHRoOiA3NjhweCl7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgI2Fzb25lbmF2IC5uYXZiYXItbmF2e1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgZmxvYXQ6bm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE2cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICB9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzwvc3R5bGU+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPG5hdiBpZD0iYXNvbmVuYXYiIGNsYXNzPSJuYXZiYXIgbmF2YmFyLWludmVyc2UgJwogICAgICAgICAgICAgICAgICAgICAgICduYXZiYXItZGVmYXVsdCBuYXZiYXItc3RhdGljLXRvcCI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhci1oZWFkZXIiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im5hdmJhci10b2dnbGUgJwogICAgICAgICAgICAgICAgICAgICAgICdjb2xsYXBzZWQiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgJwogICAgICAgICAgICAgICAgICAgICAgICdkYXRhLXRhcmdldD0iI25hdmJhciIgYXJpYS1leHBhbmRlZD0iZmFsc2UiICcKICAgICAgICAgICAgICAgICAgICAgICAnYXJpYS1jb250cm9scz0ibmF2YmFyIj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3Itb25seSI+VG9nZ2xlICcKICAgICAgICAgICAgICAgICAgICAgICAnbmF2aWdhdGlvbjwvc3Bhbj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgPC9idXR0b24+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgIDxhIGNsYXNzPSJuYXZiYXItYnJhbmQiIGhyZWY9IiMiPjwvYT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPGRpdiBpZD0ibmF2YmFyIiBjbGFzcz0iY29sbGFwc2UgJwogICAgICAgICAgICAgICAgICAgICAgICduYXZiYXItY29sbGFwc2UiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXZiYXItbmF2Ij5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICBfTkFWX1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICA8L3VsPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPC9kaXY+PCEtLS8ubmF2LWNvbGxhcHNlIC0tPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICA8L25hdj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8IS0tLVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIDxkaXYgY2xhc3M9InN0YXJ0ZXItdGVtcGxhdGUiPiAgICAgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICA8L2Rpdj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICctLT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJywKICAgICAgICAgICAgJ0NvcHlUb015UGFnZU9ubHknOiAxLAogICAgICAgICAgICAnRGVzdFBhdGgnOiAnJywKICAgICAgICAgICAgJ0ZpbGVOYW1lJzogJ3VwbG9hZC9hc29uZS5odG1sJywKICAgICAgICAgICAgJ0luc3RydWN0aW9ucyc6ICdhc29uZS5odG1sIGlzIHRoZSBuYXZpZ2F0aW9uIG9mIHRoZSBlbnRpcmUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dlYnNpdGUuIEl0IHdpbGwgYmUgaW5zZXJ0ZWQgYXQgdGhlIHRvcC5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1RoZSBvcGVuY2FydCBpcyB1c2luZyBib290c3RyYXAgMyBhbmQgV2ViQXNPbmUgaXMgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3VzaW5nIGJvb3RzdHJhcCA0LlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQ2FuIGJlIGN1c3RvbWl6ZSBhY2NvcmRpbmdseS5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ09wZW5DYXJ0IGlzIGluc2VydGVkIGludG8gYW4gYXJlYSBvZiB0aGUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Jvb3RzdHJhcCA0IHdlYnNpdGUuXHJcbicsCiAgICAgICAgICAgICdJc1RleHQnOiAxLAogICAgICAgICAgICAnUmVtb3ZlQWZ0ZXJDb3B5JzogMCwKICAgICAgICAgICAgJ1NsaWRlVHlwZSc6ICdJbmNsdWRlJywKICAgICAgICAgICAgJ2FMYWJlbCc6ICdhc29uZS5odG1sJ30sCiAgICAgJ2VuLVVTJzogeydBYnNvbHV0ZVBhdGgnOiAwLAogICAgICAgICAgICAgICAnQ29udGVudCc6ICc8c3R5bGU+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICNhc29uZW5hdiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICB9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KXtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAjYXNvbmVuYXYgLm5hdmJhci1uYXZ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICBmbG9hdDpub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTZweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPC9zdHlsZT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8bmF2IGlkPSJhc29uZW5hdiIgY2xhc3M9Im5hdmJhciBuYXZiYXItaW52ZXJzZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ25hdmJhci1kZWZhdWx0IG5hdmJhci1zdGF0aWMtdG9wIj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPGRpdiBjbGFzcz0ibmF2YmFyLWhlYWRlciI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzPSJuYXZiYXItdG9nZ2xlIGNvbGxhcHNlZCIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmF2YmFyIiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWNvbnRyb2xzPSJuYXZiYXIiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5Ub2dnbGUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICduYXZpZ2F0aW9uPC9zcGFuPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICA8L2J1dHRvbj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgPGEgY2xhc3M9Im5hdmJhci1icmFuZCIgaHJlZj0iIyI+PC9hPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPC9kaXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICA8ZGl2IGlkPSJuYXZiYXIiIGNsYXNzPSJjb2xsYXBzZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ25hdmJhci1jb2xsYXBzZSI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdmJhci1uYXYiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIF9OQVZfXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgIDwvdWw+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICA8L2Rpdj48IS0tLy5uYXYtY29sbGFwc2UgLS0+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgPC9kaXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIDwvbmF2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzwhLS0tXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgPGRpdiBjbGFzcz0ic3RhcnRlci10ZW1wbGF0ZSI+ICAgICAgPC9kaXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy0tPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nLAogICAgICAgICAgICAgICAnQ29weVRvTXlQYWdlT25seSc6IDEsCiAgICAgICAgICAgICAgICdEZXN0UGF0aCc6ICcnLAogICAgICAgICAgICAgICAnRmlsZU5hbWUnOiAndXBsb2FkL2Fzb25lLmh0bWwnLAogICAgICAgICAgICAgICAnSW5zdHJ1Y3Rpb25zJzogJ2Fzb25lLmh0bWwgaXMgdGhlIG5hdmlnYXRpb24gb2YgdGhlIGVudGlyZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2Vic2l0ZS4gSXQgd2lsbCBiZSBpbnNlcnRlZCBhdCB0aGUgdG9wLlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnVGhlIG9wZW5jYXJ0IGlzIHVzaW5nIGJvb3RzdHJhcCAzIGFuZCBXZWJBc09uZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaXMgdXNpbmcgYm9vdHN0cmFwIDQuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdDYW4gYmUgY3VzdG9taXplIGFjY29yZGluZ2x5LlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnT3BlbkNhcnQgaXMgaW5zZXJ0ZWQgaW50byBhbiBhcmVhIG9mIHRoZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYm9vdHN0cmFwIDQgd2Vic2l0ZS5cclxuJywKICAgICAgICAgICAgICAgJ0lzVGV4dCc6IDEsCiAgICAgICAgICAgICAgICdSZW1vdmVBZnRlckNvcHknOiAwLAogICAgICAgICAgICAgICAnU2xpZGVUeXBlJzogJ0luY2x1ZGUnLAogICAgICAgICAgICAgICAnYUxhYmVsJzogJ2Fzb25lLmh0bWwnfX0sCiA2OiB7J2VuJzogeydBYnNvbHV0ZVBhdGgnOiAwLAogICAgICAgICAgICAnQ29udGVudCc6ICc8P3BocFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzIENvbnRyb2xsZXJJbmZvcm1hdGlvbkNvbnRhY3QgZXh0ZW5kcyBDb250cm9sbGVyICcKICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHJpdmF0ZSAkZXJyb3IgPSBhcnJheSgpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHVibGljIGZ1bmN0aW9uIGluZGV4KCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkdGhpcy0+bG9hZC0+bGFuZ3VhZ2UoJ2luZm9ybWF0aW9uL2NvbnRhY3QnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0JwogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+ZG9jdW1lbnQtPnNldFRpdGxlKCR0aGlzLT5sYW5ndWFnZS0+Z2V0KCdoZWFkaW5nX3RpdGxlJykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRpZiAoKCR0aGlzLT5yZXF1ZXN0LT5zZXJ2ZXJbJ1JFUVVFU1RfTUVUSE9EJ10gPT0gIgogICAgICAgICAgICAgICAgICAgICAgICInUE9TVCcpICYmICR0aGlzLT52YWxpZGF0ZSgpKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JG1haWwgPSBuZXcgJwogICAgICAgICAgICAgICAgICAgICAgICJNYWlsKCR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX21haWxfZW5naW5lJykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtYWlsLT5wYXJhbWV0ZXIgPSAnCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX21haWxfcGFyYW1ldGVyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JG1haWwtPnNtdHBfaG9zdG5hbWUgPSAnCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX21haWxfc210cF9ob3N0bmFtZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtYWlsLT5zbXRwX3VzZXJuYW1lID0gJwogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19tYWlsX3NtdHBfdXNlcm5hbWUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbWFpbC0+c210cF9wYXNzd29yZCA9ICcKICAgICAgICAgICAgICAgICAgICAgICAiaHRtbF9lbnRpdHlfZGVjb2RlKCR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX21haWxfc210cF9wYXNzd29yZCcpLCAiCiAgICAgICAgICAgICAgICAgICAgICAgIkVOVF9RVU9URVMsICdVVEYtOCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtYWlsLT5zbXRwX3BvcnQgPSAnCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX21haWxfc210cF9wb3J0Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JG1haWwtPnNtdHBfdGltZW91dCA9ICcKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbWFpbF9zbXRwX3RpbWVvdXQnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQnCiAgICAgICAgICAgICAgICAgICAgICAgIiRtYWlsLT5zZXRUbygkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19lbWFpbCcpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQnCiAgICAgICAgICAgICAgICAgICAgICAgIiRtYWlsLT5zZXRGcm9tKCR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2VtYWlsJykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAiLy8kbWFpbC0+c2V0UmVwbHlUbygkdGhpcy0+cmVxdWVzdC0+cG9zdFsnZW1haWwnXSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHQgICAgICAgICR1c2VybWFpbCA9ICcKICAgICAgICAgICAgICAgICAgICAgICAiaHRtbF9lbnRpdHlfZGVjb2RlKCR0aGlzLT5yZXF1ZXN0LT5wb3N0WydlbWFpbCddLCAiCiAgICAgICAgICAgICAgICAgICAgICAgIkVOVF9RVU9URVMsICdVVEYtOCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCR1c2VybmFtZSA9ICcKICAgICAgICAgICAgICAgICAgICAgICAiaHRtbF9lbnRpdHlfZGVjb2RlKCR0aGlzLT5yZXF1ZXN0LT5wb3N0WyduYW1lJ10sICIKICAgICAgICAgICAgICAgICAgICAgICAiRU5UX1FVT1RFUywgJ1VURi04Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JwogICAgICAgICAgICAgICAgICAgICAgICIkbWFpbC0+c2V0U2VuZGVyKGh0bWxfZW50aXR5X2RlY29kZSgkdGhpcy0+cmVxdWVzdC0+cG9zdFsnbmFtZSddLCAiCiAgICAgICAgICAgICAgICAgICAgICAgIkVOVF9RVU9URVMsICdVVEYtOCcpLicoJy4kdXNlcm1haWwuJyknKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQnCiAgICAgICAgICAgICAgICAgICAgICAgIiRtYWlsLT5zZXRTdWJqZWN0KGh0bWxfZW50aXR5X2RlY29kZShzcHJpbnRmKCR0aGlzLT5sYW5ndWFnZS0+Z2V0KCdlbWFpbF9zdWJqZWN0JyksICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ25hbWUnXSksIEVOVF9RVU9URVMsICIKICAgICAgICAgICAgICAgICAgICAgICAiJ1VURi04JykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtYWlsLT5zZXRUZXh0KCJVc2VyOiAiLiR1c2VybmFtZS4iXFxuRW1haWw6ICcKICAgICAgICAgICAgICAgICAgICAgICAnIi4kdXNlcm1haWwuIlxcbk1lc3NhZ2VzOiAnCiAgICAgICAgICAgICAgICAgICAgICAgJ1xcbiIuJHRoaXMtPnJlcXVlc3QtPnBvc3RbXCdlbnF1aXJ5XCddKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbWFpbC0+c2VuZCgpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnJlc3BvbnNlLT5yZWRpcmVjdCgkdGhpcy0+dXJsLT5saW5rKCdpbmZvcm1hdGlvbi9jb250YWN0L3N1Y2Nlc3MnKSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2JyZWFkY3J1bWJzJ10gPSBhcnJheSgpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYnJlYWRjcnVtYnMnXVtdID0gYXJyYXkoXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0J3RleHQnID0+ICR0aGlzLT5sYW5ndWFnZS0+Z2V0KCd0ZXh0X2hvbWUnKSxcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQnaHJlZicgPT4gJHRoaXMtPnVybC0+bGluaygnY29tbW9uL2hvbWUnKVxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYnJlYWRjcnVtYnMnXVtdID0gYXJyYXkoXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0J3RleHQnID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2hlYWRpbmdfdGl0bGUnKSxcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQnaHJlZicgPT4gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdpbmZvcm1hdGlvbi9jb250YWN0JylcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKGlzc2V0KCR0aGlzLT5lcnJvclsnbmFtZSddKSkge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydlcnJvcl9uYW1lJ10gPSAkdGhpcy0+ZXJyb3JbJ25hbWUnXTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZXJyb3JfbmFtZSddID0gJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKGlzc2V0KCR0aGlzLT5lcnJvclsnZW1haWwnXSkpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZXJyb3JfZW1haWwnXSA9ICR0aGlzLT5lcnJvclsnZW1haWwnXTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZXJyb3JfZW1haWwnXSA9ICcnO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmIChpc3NldCgkdGhpcy0+ZXJyb3JbJ2VucXVpcnknXSkpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZXJyb3JfZW5xdWlyeSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+ZXJyb3JbJ2VucXVpcnknXTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZXJyb3JfZW5xdWlyeSddID0gJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2J1dHRvbl9zdWJtaXQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2J1dHRvbl9zdWJtaXQnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2FjdGlvbiddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdpbmZvcm1hdGlvbi9jb250YWN0JywgJycsIHRydWUpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkdGhpcy0+bG9hZC0+bW9kZWwoJ3Rvb2wvaW1hZ2UnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKCR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2ltYWdlJykpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnaW1hZ2UnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPm1vZGVsX3Rvb2xfaW1hZ2UtPnJlc2l6ZSgkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19pbWFnZScpLCAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgndGhlbWVfJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfdGhlbWUnKSAuICIKICAgICAgICAgICAgICAgICAgICAgICAiJ19pbWFnZV9sb2NhdGlvbl93aWR0aCcpLCAkdGhpcy0+Y29uZmlnLT5nZXQoJ3RoZW1lXycgIgogICAgICAgICAgICAgICAgICAgICAgICIuICR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX3RoZW1lJykgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgIidfaW1hZ2VfbG9jYXRpb25faGVpZ2h0JykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydpbWFnZSddID0gZmFsc2U7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ3N0b3JlJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX25hbWUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2FkZHJlc3MnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAibmwyYnIoJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfYWRkcmVzcycpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2dlb2NvZGUnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfZ2VvY29kZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZ2VvY29kZV9obCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19sYW5ndWFnZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsndGVsZXBob25lJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX3RlbGVwaG9uZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZmF4J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2ZheCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnb3BlbiddID0gIgogICAgICAgICAgICAgICAgICAgICAgICJubDJicigkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19vcGVuJykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29tbWVudCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jb21tZW50Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydsb2NhdGlvbnMnXSA9IGFycmF5KCk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCR0aGlzLT5sb2FkLT5tb2RlbCgnbG9jYWxpc2F0aW9uL2xvY2F0aW9uJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAiZm9yZWFjaCgoYXJyYXkpJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbG9jYXRpb24nKSAiCiAgICAgICAgICAgICAgICAgICAgICAgJ2FzICRsb2NhdGlvbl9pZCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRsb2NhdGlvbl9pbmZvID0gJwogICAgICAgICAgICAgICAgICAgICAgICckdGhpcy0+bW9kZWxfbG9jYWxpc2F0aW9uX2xvY2F0aW9uLT5nZXRMb2NhdGlvbigkbG9jYXRpb25faWQpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGlmICgkbG9jYXRpb25faW5mbykge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0aWYgKCRsb2NhdGlvbl9pbmZvWydpbWFnZSddKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRcdCRpbWFnZSA9ICcKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPm1vZGVsX3Rvb2xfaW1hZ2UtPnJlc2l6ZSgkbG9jYXRpb25faW5mb1snaW1hZ2UnXSwgIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ3RoZW1lXycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX3RoZW1lJykgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgIidfaW1hZ2VfbG9jYXRpb25fd2lkdGgnKSwgJHRoaXMtPmNvbmZpZy0+Z2V0KCd0aGVtZV8nICIKICAgICAgICAgICAgICAgICAgICAgICAiLiAkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ190aGVtZScpIC4gIgogICAgICAgICAgICAgICAgICAgICAgICInX2ltYWdlX2xvY2F0aW9uX2hlaWdodCcpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRcdCRpbWFnZSA9IGZhbHNlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JGRhdGFbJ2xvY2F0aW9ucyddW10gPSBhcnJheShcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdFx0J2xvY2F0aW9uX2lkJyA9PiAiCiAgICAgICAgICAgICAgICAgICAgICAgIiRsb2NhdGlvbl9pbmZvWydsb2NhdGlvbl9pZCddLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQnbmFtZScgICAgICAgID0+ICRsb2NhdGlvbl9pbmZvWyduYW1lJ10sXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRcdCdhZGRyZXNzJyAgICAgPT4gIgogICAgICAgICAgICAgICAgICAgICAgICJubDJicigkbG9jYXRpb25faW5mb1snYWRkcmVzcyddKSxcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdFx0J2dlb2NvZGUnICAgICA9PiAiCiAgICAgICAgICAgICAgICAgICAgICAgIiRsb2NhdGlvbl9pbmZvWydnZW9jb2RlJ10sXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRcdCd0ZWxlcGhvbmUnICAgPT4gIgogICAgICAgICAgICAgICAgICAgICAgICIkbG9jYXRpb25faW5mb1sndGVsZXBob25lJ10sXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRcdCdmYXgnICAgICAgICAgPT4gJGxvY2F0aW9uX2luZm9bJ2ZheCddLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQnaW1hZ2UnICAgICAgID0+ICRpbWFnZSxcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdFx0J29wZW4nICAgICAgICA9PiAiCiAgICAgICAgICAgICAgICAgICAgICAgIm5sMmJyKCRsb2NhdGlvbl9pbmZvWydvcGVuJ10pLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQnY29tbWVudCcgICAgID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAiJGxvY2F0aW9uX2luZm9bJ2NvbW1lbnQnXVxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKGlzc2V0KCR0aGlzLT5yZXF1ZXN0LT5wb3N0WyduYW1lJ10pKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ25hbWUnXSA9ICR0aGlzLT5yZXF1ZXN0LT5wb3N0WyduYW1lJ107XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ25hbWUnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPmN1c3RvbWVyLT5nZXRGaXJzdE5hbWUoKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRpZiAoaXNzZXQoJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ2VtYWlsJ10pKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ2VtYWlsJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5yZXF1ZXN0LT5wb3N0WydlbWFpbCddO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydlbWFpbCddID0gJHRoaXMtPmN1c3RvbWVyLT5nZXRFbWFpbCgpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmIChpc3NldCgkdGhpcy0+cmVxdWVzdC0+cG9zdFsnZW5xdWlyeSddKSkge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydlbnF1aXJ5J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5yZXF1ZXN0LT5wb3N0WydlbnF1aXJ5J107XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ2VucXVpcnknXSA9ICcnO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdC8vIENhcHRjaGFcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKCR0aGlzLT5jb25maWctPmdldCgnY2FwdGNoYV8nIC4gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jYXB0Y2hhJykgLiAnX3N0YXR1cycpICYmICIKICAgICAgICAgICAgICAgICAgICAgICAiaW5fYXJyYXkoJ2NvbnRhY3QnLCAiCiAgICAgICAgICAgICAgICAgICAgICAgIihhcnJheSkkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jYXB0Y2hhX3BhZ2UnKSkpICIKICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydjYXB0Y2hhJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdleHRlbnNpb24vY2FwdGNoYS8nIC4gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jYXB0Y2hhJyksICIKICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPmVycm9yKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnY2FwdGNoYSddID0gJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbHVtbl9sZWZ0J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vY29sdW1uX2xlZnQnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbHVtbl9yaWdodCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2NvbHVtbl9yaWdodCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29udGVudF90b3AnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jb250ZW50X3RvcCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29udGVudF9ib3R0b20nXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jb250ZW50X2JvdHRvbScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZm9vdGVyJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vZm9vdGVyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydoZWFkZXInXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9oZWFkZXInKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0JwogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+cmVzcG9uc2UtPnNldE91dHB1dCgkdGhpcy0+bG9hZC0+dmlldygnaW5mb3JtYXRpb24vY29udGFjdCcsICIKICAgICAgICAgICAgICAgICAgICAgICAnJGRhdGEpKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdHByb3RlY3RlZCBmdW5jdGlvbiB2YWxpZGF0ZSgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKCh1dGY4X3N0cmxlbigkdGhpcy0+cmVxdWVzdC0+cG9zdFsnbmFtZSddKSA8ICIKICAgICAgICAgICAgICAgICAgICAgICAiMykgfHwgKHV0Zjhfc3RybGVuKCR0aGlzLT5yZXF1ZXN0LT5wb3N0WyduYW1lJ10pID4gIgogICAgICAgICAgICAgICAgICAgICAgICczMikpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkdGhpcy0+ZXJyb3JbJ25hbWUnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2Vycm9yX25hbWUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRpZiAoIWZpbHRlcl92YXIoJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ2VtYWlsJ10sICIKICAgICAgICAgICAgICAgICAgICAgICAnRklMVEVSX1ZBTElEQVRFX0VNQUlMKSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCR0aGlzLT5lcnJvclsnZW1haWwnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2Vycm9yX2VtYWlsJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKCh1dGY4X3N0cmxlbigkdGhpcy0+cmVxdWVzdC0+cG9zdFsnZW5xdWlyeSddKSAiCiAgICAgICAgICAgICAgICAgICAgICAgIjwgMTApIHx8ICh1dGY4X3N0cmxlbigkdGhpcy0+cmVxdWVzdC0+cG9zdFsnZW5xdWlyeSddKSAiCiAgICAgICAgICAgICAgICAgICAgICAgJz4gMzAwMCkpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkdGhpcy0+ZXJyb3JbJ2VucXVpcnknXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2Vycm9yX2VucXVpcnknKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQvLyBDYXB0Y2hhXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmICgkdGhpcy0+Y29uZmlnLT5nZXQoJ2NhcHRjaGFfJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfY2FwdGNoYScpIC4gJ19zdGF0dXMnKSAmJiAiCiAgICAgICAgICAgICAgICAgICAgICAgImluX2FycmF5KCdjb250YWN0JywgIgogICAgICAgICAgICAgICAgICAgICAgICIoYXJyYXkpJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfY2FwdGNoYV9wYWdlJykpKSAiCiAgICAgICAgICAgICAgICAgICAgICAgJ3tcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkY2FwdGNoYSA9ICcKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2V4dGVuc2lvbi9jYXB0Y2hhLycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2NhcHRjaGEnKSAuICIKICAgICAgICAgICAgICAgICAgICAgICAiJy92YWxpZGF0ZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGlmICgkY2FwdGNoYSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JHRoaXMtPmVycm9yWydjYXB0Y2hhJ10gPSAkY2FwdGNoYTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0cmV0dXJuICEkdGhpcy0+ZXJyb3I7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRwdWJsaWMgZnVuY3Rpb24gc3VjY2VzcygpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JHRoaXMtPmxvYWQtPmxhbmd1YWdlKCdpbmZvcm1hdGlvbi9jb250YWN0Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmRvY3VtZW50LT5zZXRUaXRsZSgkdGhpcy0+bGFuZ3VhZ2UtPmdldCgnaGVhZGluZ190aXRsZScpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2JyZWFkY3J1bWJzJ10gPSBhcnJheSgpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYnJlYWRjcnVtYnMnXVtdID0gYXJyYXkoXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0J3RleHQnID0+ICR0aGlzLT5sYW5ndWFnZS0+Z2V0KCd0ZXh0X2hvbWUnKSxcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQnaHJlZicgPT4gJHRoaXMtPnVybC0+bGluaygnY29tbW9uL2hvbWUnKVxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYnJlYWRjcnVtYnMnXVtdID0gYXJyYXkoXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0J3RleHQnID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2hlYWRpbmdfdGl0bGUnKSxcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQnaHJlZicgPT4gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdpbmZvcm1hdGlvbi9jb250YWN0JylcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICIgXHRcdCRkYXRhWyd0ZXh0X21lc3NhZ2UnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ3RleHRfbWVzc2FnZScpOyBcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbnRpbnVlJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2NvbW1vbi9ob21lJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydjb2x1bW5fbGVmdCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2NvbHVtbl9sZWZ0Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydjb2x1bW5fcmlnaHQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jb2x1bW5fcmlnaHQnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbnRlbnRfdG9wJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vY29udGVudF90b3AnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbnRlbnRfYm90dG9tJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vY29udGVudF9ib3R0b20nKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2Zvb3RlciddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2Zvb3RlcicpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnaGVhZGVyJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vaGVhZGVyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnJlc3BvbnNlLT5zZXRPdXRwdXQoJHRoaXMtPmxvYWQtPnZpZXcoJ2NvbW1vbi9zdWNjZXNzJywgIgogICAgICAgICAgICAgICAgICAgICAgICckZGF0YSkpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJywKICAgICAgICAgICAgJ0NvcHlUb015UGFnZU9ubHknOiAxLAogICAgICAgICAgICAnRGVzdFBhdGgnOiAnJywKICAgICAgICAgICAgJ0ZpbGVOYW1lJzogJ3VwbG9hZC9jYXRhbG9nL2NvbnRyb2xsZXIvaW5mb3JtYXRpb24vY29udGFjdC5waHAnLAogICAgICAgICAgICAnSW5zdHJ1Y3Rpb25zJzogJzEuIENvbW1lbnQgb3V0IGxpbmUgMjIsIGJlY2F1c2UgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3R1cmJpZnkveWFob29idXNpbmVzcyBlbWFpbCB3aWxsIG5vdCBhY2NlY3B0IHRoaXMgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29wdGlvbi5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICBUdXJiaWZ5IGVtYWlsIGlzIGEgY2hlYXAgc29sdXRpb24gZGVsaXZlcnkgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5c3RlbS4gVGhlIGVtYWlsIGhhdmUgdG8gc2V0IHNlbmQgZnJvbSB0aGUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgInR1cmJpZnkncyBlbWFpbC4gXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICAgVGhlIHNlbmRlcidzIGVtYWlsIGlzIGhhcmQgY29kZWQgaW4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NubXAucGhwXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICcyLiBUbyBzZW5kTGF5ZXIgZW1haWwsIGNhbiB1bmNvbW1lbnQgb3V0IGxpbmUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJzIyLlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnMy4gc25tcC5waHAgZm9yIGZ1cnR1cmUgaW5zdHJ1Y3Rpb25zIGZvciAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb3BlbmNhcnRcclxuJywKICAgICAgICAgICAgJ0lzVGV4dCc6IDEsCiAgICAgICAgICAgICdSZW1vdmVBZnRlckNvcHknOiAwLAogICAgICAgICAgICAnU2xpZGVUeXBlJzogJ0luY2x1ZGUnLAogICAgICAgICAgICAnYUxhYmVsJzogJ0NvbnRhY3QucGhwJ30sCiAgICAgJ2VuLVVTJzogeydBYnNvbHV0ZVBhdGgnOiAwLAogICAgICAgICAgICAgICAnQ29udGVudCc6ICc8P3BocFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzIENvbnRyb2xsZXJJbmZvcm1hdGlvbkNvbnRhY3QgZXh0ZW5kcyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ0NvbnRyb2xsZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHJpdmF0ZSAkZXJyb3IgPSBhcnJheSgpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHVibGljIGZ1bmN0aW9uIGluZGV4KCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5sYW5ndWFnZSgnaW5mb3JtYXRpb24vY29udGFjdCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5kb2N1bWVudC0+c2V0VGl0bGUoJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2hlYWRpbmdfdGl0bGUnKSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmICgoJHRoaXMtPnJlcXVlc3QtPnNlcnZlclsnUkVRVUVTVF9NRVRIT0QnXSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIj09ICdQT1NUJykgJiYgJHRoaXMtPnZhbGlkYXRlKCkpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbWFpbCA9IG5ldyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIk1haWwoJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbWFpbF9lbmdpbmUnKSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JG1haWwtPnBhcmFtZXRlciA9ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbWFpbF9wYXJhbWV0ZXInKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbWFpbC0+c210cF9ob3N0bmFtZSA9ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbWFpbF9zbXRwX2hvc3RuYW1lJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JG1haWwtPnNtdHBfdXNlcm5hbWUgPSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX21haWxfc210cF91c2VybmFtZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtYWlsLT5zbXRwX3Bhc3N3b3JkID0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICJodG1sX2VudGl0eV9kZWNvZGUoJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbWFpbF9zbXRwX3Bhc3N3b3JkJyksICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiRU5UX1FVT1RFUywgJ1VURi04Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JG1haWwtPnNtdHBfcG9ydCA9ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbWFpbF9zbXRwX3BvcnQnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkbWFpbC0+c210cF90aW1lb3V0ID0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19tYWlsX3NtdHBfdGltZW91dCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJG1haWwtPnNldFRvKCR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2VtYWlsJykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJG1haWwtPnNldEZyb20oJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfZW1haWwnKSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JwogICAgICAgICAgICAgICAgICAgICAgICAgICIvLyRtYWlsLT5zZXRSZXBseVRvKCR0aGlzLT5yZXF1ZXN0LT5wb3N0WydlbWFpbCddKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdCAgICAgICAgJHVzZXJtYWlsID0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICJodG1sX2VudGl0eV9kZWNvZGUoJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ2VtYWlsJ10sICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiRU5UX1FVT1RFUywgJ1VURi04Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JHVzZXJuYW1lID0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICJodG1sX2VudGl0eV9kZWNvZGUoJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ25hbWUnXSwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICJFTlRfUVVPVEVTLCAnVVRGLTgnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiRtYWlsLT5zZXRTZW5kZXIoaHRtbF9lbnRpdHlfZGVjb2RlKCR0aGlzLT5yZXF1ZXN0LT5wb3N0WyduYW1lJ10sICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiRU5UX1FVT1RFUywgJ1VURi04JykuJygnLiR1c2VybWFpbC4nKScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJG1haWwtPnNldFN1YmplY3QoaHRtbF9lbnRpdHlfZGVjb2RlKHNwcmludGYoJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2VtYWlsX3N1YmplY3QnKSwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+cmVxdWVzdC0+cG9zdFsnbmFtZSddKSwgRU5UX1FVT1RFUywgIgogICAgICAgICAgICAgICAgICAgICAgICAgICInVVRGLTgnKSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JG1haWwtPnNldFRleHQoIlVzZXI6ICIuJHVzZXJuYW1lLiJcXG5FbWFpbDogJwogICAgICAgICAgICAgICAgICAgICAgICAgICciLiR1c2VybWFpbC4iXFxuTWVzc2FnZXM6ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnXFxuIi4kdGhpcy0+cmVxdWVzdC0+cG9zdFtcJ2VucXVpcnlcJ10pO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRtYWlsLT5zZW5kKCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JwogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+cmVzcG9uc2UtPnJlZGlyZWN0KCR0aGlzLT51cmwtPmxpbmsoJ2luZm9ybWF0aW9uL2NvbnRhY3Qvc3VjY2VzcycpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYnJlYWRjcnVtYnMnXSA9IGFycmF5KCk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydicmVhZGNydW1icyddW10gPSBhcnJheShcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQndGV4dCcgPT4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bGFuZ3VhZ2UtPmdldCgndGV4dF9ob21lJyksXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0J2hyZWYnID0+ICR0aGlzLT51cmwtPmxpbmsoJ2NvbW1vbi9ob21lJylcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2JyZWFkY3J1bWJzJ11bXSA9IGFycmF5KFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCd0ZXh0JyA9PiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sYW5ndWFnZS0+Z2V0KCdoZWFkaW5nX3RpdGxlJyksXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0J2hyZWYnID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnaW5mb3JtYXRpb24vY29udGFjdCcpXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmIChpc3NldCgkdGhpcy0+ZXJyb3JbJ25hbWUnXSkpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZXJyb3JfbmFtZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+ZXJyb3JbJ25hbWUnXTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZXJyb3JfbmFtZSddID0gJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKGlzc2V0KCR0aGlzLT5lcnJvclsnZW1haWwnXSkpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZXJyb3JfZW1haWwnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmVycm9yWydlbWFpbCddO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydlcnJvcl9lbWFpbCddID0gJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKGlzc2V0KCR0aGlzLT5lcnJvclsnZW5xdWlyeSddKSkge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydlcnJvcl9lbnF1aXJ5J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5lcnJvclsnZW5xdWlyeSddO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydlcnJvcl9lbnF1aXJ5J10gPSAnJztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYnV0dG9uX3N1Ym1pdCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bGFuZ3VhZ2UtPmdldCgnYnV0dG9uX3N1Ym1pdCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYWN0aW9uJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2luZm9ybWF0aW9uL2NvbnRhY3QnLCAnJywgIgogICAgICAgICAgICAgICAgICAgICAgICAgICd0cnVlKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JHRoaXMtPmxvYWQtPm1vZGVsKCd0b29sL2ltYWdlJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmICgkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19pbWFnZScpKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ2ltYWdlJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5tb2RlbF90b29sX2ltYWdlLT5yZXNpemUoJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfaW1hZ2UnKSwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ3RoZW1lXycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX3RoZW1lJykgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIidfaW1hZ2VfbG9jYXRpb25fd2lkdGgnKSwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ3RoZW1lXycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX3RoZW1lJykgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIidfaW1hZ2VfbG9jYXRpb25faGVpZ2h0JykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydpbWFnZSddID0gZmFsc2U7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ3N0b3JlJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX25hbWUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2FkZHJlc3MnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAibmwyYnIoJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfYWRkcmVzcycpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2dlb2NvZGUnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfZ2VvY29kZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZ2VvY29kZV9obCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19sYW5ndWFnZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsndGVsZXBob25lJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX3RlbGVwaG9uZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZmF4J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2ZheCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnb3BlbiddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICJubDJicigkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19vcGVuJykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29tbWVudCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jb21tZW50Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydsb2NhdGlvbnMnXSA9IGFycmF5KCk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCR0aGlzLT5sb2FkLT5tb2RlbCgnbG9jYWxpc2F0aW9uL2xvY2F0aW9uJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAgICAiZm9yZWFjaCgoYXJyYXkpJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbG9jYXRpb24nKSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FzICRsb2NhdGlvbl9pZCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRsb2NhdGlvbl9pbmZvID0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICckdGhpcy0+bW9kZWxfbG9jYWxpc2F0aW9uX2xvY2F0aW9uLT5nZXRMb2NhdGlvbigkbG9jYXRpb25faWQpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdGlmICgkbG9jYXRpb25faW5mbykge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0aWYgKCRsb2NhdGlvbl9pbmZvWydpbWFnZSddKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHRcdCRpbWFnZSA9ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPm1vZGVsX3Rvb2xfaW1hZ2UtPnJlc2l6ZSgkbG9jYXRpb25faW5mb1snaW1hZ2UnXSwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ3RoZW1lXycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX3RoZW1lJykgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIidfaW1hZ2VfbG9jYXRpb25fd2lkdGgnKSwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ3RoZW1lXycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX3RoZW1lJykgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIidfaW1hZ2VfbG9jYXRpb25faGVpZ2h0JykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRcdFx0JGltYWdlID0gZmFsc2U7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkZGF0YVsnbG9jYXRpb25zJ11bXSA9IGFycmF5KFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQnbG9jYXRpb25faWQnID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJGxvY2F0aW9uX2luZm9bJ2xvY2F0aW9uX2lkJ10sXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRcdCduYW1lJyAgICAgICAgPT4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkbG9jYXRpb25faW5mb1snbmFtZSddLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQnYWRkcmVzcycgICAgID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAibmwyYnIoJGxvY2F0aW9uX2luZm9bJ2FkZHJlc3MnXSksXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHRcdCdnZW9jb2RlJyAgICAgPT4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkbG9jYXRpb25faW5mb1snZ2VvY29kZSddLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQndGVsZXBob25lJyAgID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJGxvY2F0aW9uX2luZm9bJ3RlbGVwaG9uZSddLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQnZmF4JyAgICAgICAgID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJGxvY2F0aW9uX2luZm9bJ2ZheCddLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQnaW1hZ2UnICAgICAgID0+ICRpbWFnZSxcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdFx0J29wZW4nICAgICAgICA9PiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5sMmJyKCRsb2NhdGlvbl9pbmZvWydvcGVuJ10pLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0XHQnY29tbWVudCcgICAgID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJGxvY2F0aW9uX2luZm9bJ2NvbW1lbnQnXVxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdFx0KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKGlzc2V0KCR0aGlzLT5yZXF1ZXN0LT5wb3N0WyduYW1lJ10pKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ25hbWUnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ25hbWUnXTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnbmFtZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICckdGhpcy0+Y3VzdG9tZXItPmdldEZpcnN0TmFtZSgpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmIChpc3NldCgkdGhpcy0+cmVxdWVzdC0+cG9zdFsnZW1haWwnXSkpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnZW1haWwnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ2VtYWlsJ107XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ2VtYWlsJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyR0aGlzLT5jdXN0b21lci0+Z2V0RW1haWwoKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRpZiAoaXNzZXQoJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ2VucXVpcnknXSkpICIKICAgICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydlbnF1aXJ5J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5yZXF1ZXN0LT5wb3N0WydlbnF1aXJ5J107XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ2VucXVpcnknXSA9ICcnO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdC8vIENhcHRjaGFcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKCR0aGlzLT5jb25maWctPmdldCgnY2FwdGNoYV8nIC4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jYXB0Y2hhJykgLiAnX3N0YXR1cycpICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJiYgaW5fYXJyYXkoJ2NvbnRhY3QnLCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIihhcnJheSkkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jYXB0Y2hhX3BhZ2UnKSkpICIKICAgICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydjYXB0Y2hhJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdleHRlbnNpb24vY2FwdGNoYS8nIC4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jYXB0Y2hhJyksICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPmVycm9yKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnY2FwdGNoYSddID0gJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbHVtbl9sZWZ0J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vY29sdW1uX2xlZnQnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbHVtbl9yaWdodCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2NvbHVtbl9yaWdodCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29udGVudF90b3AnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jb250ZW50X3RvcCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29udGVudF9ib3R0b20nXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jb250ZW50X2JvdHRvbScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZm9vdGVyJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vZm9vdGVyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydoZWFkZXInXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9oZWFkZXInKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0JwogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+cmVzcG9uc2UtPnNldE91dHB1dCgkdGhpcy0+bG9hZC0+dmlldygnaW5mb3JtYXRpb24vY29udGFjdCcsICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnJGRhdGEpKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdHByb3RlY3RlZCBmdW5jdGlvbiB2YWxpZGF0ZSgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0aWYgKCh1dGY4X3N0cmxlbigkdGhpcy0+cmVxdWVzdC0+cG9zdFsnbmFtZSddKSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIjwgMykgfHwgKHV0Zjhfc3RybGVuKCR0aGlzLT5yZXF1ZXN0LT5wb3N0WyduYW1lJ10pICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnPiAzMikpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkdGhpcy0+ZXJyb3JbJ25hbWUnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2Vycm9yX25hbWUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRpZiAoIWZpbHRlcl92YXIoJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ2VtYWlsJ10sICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnRklMVEVSX1ZBTElEQVRFX0VNQUlMKSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCR0aGlzLT5lcnJvclsnZW1haWwnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2Vycm9yX2VtYWlsJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgJwogICAgICAgICAgICAgICAgICAgICAgICAgICIoKHV0Zjhfc3RybGVuKCR0aGlzLT5yZXF1ZXN0LT5wb3N0WydlbnF1aXJ5J10pIDwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICcxMCkgfHwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICIodXRmOF9zdHJsZW4oJHRoaXMtPnJlcXVlc3QtPnBvc3RbJ2VucXVpcnknXSkgPiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzMwMDApKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JHRoaXMtPmVycm9yWydlbnF1aXJ5J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sYW5ndWFnZS0+Z2V0KCdlcnJvcl9lbnF1aXJ5Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Ly8gQ2FwdGNoYVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRpZiAoJHRoaXMtPmNvbmZpZy0+Z2V0KCdjYXB0Y2hhXycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2NhcHRjaGEnKSAuICdfc3RhdHVzJykgIgogICAgICAgICAgICAgICAgICAgICAgICAgICImJiBpbl9hcnJheSgnY29udGFjdCcsICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiKGFycmF5KSR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2NhcHRjaGFfcGFnZScpKSkgIgogICAgICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JGNhcHRjaGEgPSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdleHRlbnNpb24vY2FwdGNoYS8nIC4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19jYXB0Y2hhJykgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIicvdmFsaWRhdGUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHRpZiAoJGNhcHRjaGEpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRcdCR0aGlzLT5lcnJvclsnY2FwdGNoYSddID0gJGNhcHRjaGE7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdHJldHVybiAhJHRoaXMtPmVycm9yO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHVibGljIGZ1bmN0aW9uIHN1Y2Nlc3MoKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmxhbmd1YWdlKCdpbmZvcm1hdGlvbi9jb250YWN0Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmRvY3VtZW50LT5zZXRUaXRsZSgkdGhpcy0+bGFuZ3VhZ2UtPmdldCgnaGVhZGluZ190aXRsZScpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2JyZWFkY3J1bWJzJ10gPSBhcnJheSgpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYnJlYWRjcnVtYnMnXVtdID0gYXJyYXkoXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0J3RleHQnID0+ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ3RleHRfaG9tZScpLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCdocmVmJyA9PiAkdGhpcy0+dXJsLT5saW5rKCdjb21tb24vaG9tZScpXHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydicmVhZGNydW1icyddW10gPSBhcnJheShcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQndGV4dCcgPT4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bGFuZ3VhZ2UtPmdldCgnaGVhZGluZ190aXRsZScpLFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCdocmVmJyA9PiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2luZm9ybWF0aW9uL2NvbnRhY3QnKVxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiBcdFx0JGRhdGFbJ3RleHRfbWVzc2FnZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bGFuZ3VhZ2UtPmdldCgndGV4dF9tZXNzYWdlJyk7IFxyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29udGludWUnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnY29tbW9uL2hvbWUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbHVtbl9sZWZ0J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vY29sdW1uX2xlZnQnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NvbHVtbl9yaWdodCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2NvbHVtbl9yaWdodCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29udGVudF90b3AnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jb250ZW50X3RvcCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY29udGVudF9ib3R0b20nXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jb250ZW50X2JvdHRvbScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZm9vdGVyJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vZm9vdGVyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydoZWFkZXInXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9oZWFkZXInKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0JwogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+cmVzcG9uc2UtPnNldE91dHB1dCgkdGhpcy0+bG9hZC0+dmlldygnY29tbW9uL3N1Y2Nlc3MnLCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyRkYXRhKSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nLAogICAgICAgICAgICAgICAnQ29weVRvTXlQYWdlT25seSc6IDEsCiAgICAgICAgICAgICAgICdEZXN0UGF0aCc6ICcnLAogICAgICAgICAgICAgICAnRmlsZU5hbWUnOiAndXBsb2FkL2NhdGFsb2cvY29udHJvbGxlci9pbmZvcm1hdGlvbi9jb250YWN0LnBocCcsCiAgICAgICAgICAgICAgICdJbnN0cnVjdGlvbnMnOiAnMS4gQ29tbWVudCBvdXQgbGluZSAyMiwgYmVjYXVzZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndHVyYmlmeS95YWhvb2J1c2luZXNzIGVtYWlsIHdpbGwgbm90IGFjY2VjcHQgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RoaXMgb3B0aW9uLlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIFR1cmJpZnkgZW1haWwgaXMgYSBjaGVhcCBzb2x1dGlvbiBkZWxpdmVyeSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3lzdGVtLiBUaGUgZW1haWwgaGF2ZSB0byBzZXQgc2VuZCBmcm9tIHRoZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHVyYmlmeSdzIGVtYWlsLiBcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiAgICBUaGUgc2VuZGVyJ3MgZW1haWwgaXMgaGFyZCBjb2RlZCBpbiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc25tcC5waHBcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJzIuIFRvIHNlbmRMYXllciBlbWFpbCwgY2FuIHVuY29tbWVudCBvdXQgbGluZSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnMjIuXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICczLiBzbm1wLnBocCBmb3IgZnVydHVyZSBpbnN0cnVjdGlvbnMgZm9yICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcGVuY2FydFxyXG4nLAogICAgICAgICAgICAgICAnSXNUZXh0JzogMSwKICAgICAgICAgICAgICAgJ1JlbW92ZUFmdGVyQ29weSc6IDAsCiAgICAgICAgICAgICAgICdTbGlkZVR5cGUnOiAnSW5jbHVkZScsCiAgICAgICAgICAgICAgICdhTGFiZWwnOiAnQ29udGFjdC5waHAnfX0sCiA3OiB7J2VuJzogeydBYnNvbHV0ZVBhdGgnOiAwLAogICAgICAgICAgICAnQ29udGVudCc6ICc8P3BocFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzIENvbnRyb2xsZXJDb21tb25IZWFkZXIgZXh0ZW5kcyBDb250cm9sbGVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdHB1YmxpYyBmdW5jdGlvbiBpbmRleCgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0Ly8kZGF0YVsncG9zaXRpb24xJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vcG9zaXRpb24xJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdC8vJGRhdGFbXCdwb3NpdGlvbjFcJ10gPSI8aDE+IEhlbGxvIHdvcmxkICcKICAgICAgICAgICAgICAgICAgICAgICAnPC9oMT4iO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQvLyBBbmFseXRpY3NcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JHRoaXMtPmxvYWQtPm1vZGVsKCdzZXR0aW5nL2V4dGVuc2lvbicpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHQvLyBhdCB0aGUgdXBsb2FkIGRpclxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRpZiAoZmlsZV9leGlzdHMoJ2Fzb25lLmh0bWwnKSkge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydhc29uZWh0bWwnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiZmlsZV9nZXRfY29udGVudHMoJ2Fzb25lLmh0bWwnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHQkZGF0YVtcJ2Fzb25laHRtbFwnXSA9ICI8aDE+IE5vIEFzb25laHRtbCA8L2gxPiIgJwogICAgICAgICAgICAgICAgICAgICAgICcuIGdldGN3ZCgpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydhbmFseXRpY3MnXSA9IGFycmF5KCk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdCRhbmFseXRpY3MgPSAnCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5tb2RlbF9zZXR0aW5nX2V4dGVuc2lvbi0+Z2V0RXh0ZW5zaW9ucygnYW5hbHl0aWNzJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGZvcmVhY2ggKCRhbmFseXRpY3MgYXMgJGFuYWx5dGljKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0aWYgKCR0aGlzLT5jb25maWctPmdldCgnYW5hbHl0aWNzXycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgIiRhbmFseXRpY1snY29kZSddIC4gJ19zdGF0dXMnKSkge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdFx0JGRhdGFbJ2FuYWx5dGljcyddW10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdleHRlbnNpb24vYW5hbHl0aWNzLycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgIiRhbmFseXRpY1snY29kZSddLCAkdGhpcy0+Y29uZmlnLT5nZXQoJ2FuYWx5dGljc18nIC4gIgogICAgICAgICAgICAgICAgICAgICAgICIkYW5hbHl0aWNbJ2NvZGUnXSAuICdfc3RhdHVzJykpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRpZiAoJHRoaXMtPnJlcXVlc3QtPnNlcnZlclsnSFRUUFMnXSkge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRzZXJ2ZXIgPSAkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19zc2wnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkc2VydmVyID0gJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfdXJsJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKGlzX2ZpbGUoRElSX0lNQUdFIC4gJwogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19pY29uJykpKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JHRoaXMtPmRvY3VtZW50LT5hZGRMaW5rKCRzZXJ2ZXIgLiAnaW1hZ2UvJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfaWNvbicpLCAnaWNvbicpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWyd0aXRsZSddID0gJHRoaXMtPmRvY3VtZW50LT5nZXRUaXRsZSgpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYmFzZSddID0gJHNlcnZlcjtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2Rlc2NyaXB0aW9uJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgJyR0aGlzLT5kb2N1bWVudC0+Z2V0RGVzY3JpcHRpb24oKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2tleXdvcmRzJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgJyR0aGlzLT5kb2N1bWVudC0+Z2V0S2V5d29yZHMoKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2xpbmtzJ10gPSAkdGhpcy0+ZG9jdW1lbnQtPmdldExpbmtzKCk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydzdHlsZXMnXSA9ICR0aGlzLT5kb2N1bWVudC0+Z2V0U3R5bGVzKCk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydzY3JpcHRzJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5kb2N1bWVudC0+Z2V0U2NyaXB0cygnaGVhZGVyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydsYW5nJ10gPSAkdGhpcy0+bGFuZ3VhZ2UtPmdldCgnY29kZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZGlyZWN0aW9uJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sYW5ndWFnZS0+Z2V0KCdkaXJlY3Rpb24nKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ25hbWUnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbmFtZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIiAgICAgICAgJGFzb25lTG9nbyA9ICdfTE9HT18nO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRpZiAoaXNfZmlsZShESVJfSU1BR0UgLiAnCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2xvZ28nKSkpIHtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnbG9nbyddID0gJHNlcnZlciAuICdpbWFnZS8nIC4gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19sb2dvJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ2xvZ28nXSA9ICcnO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICBpZiAoJGFzb25lTG9nbykge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIiAgICAgICAgICAkZGF0YVsnbG9nbyddID0gJGFzb25lTG9nbztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICBcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JHRoaXMtPmxvYWQtPmxhbmd1YWdlKCdjb21tb24vaGVhZGVyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdC8vIFdpc2hsaXN0XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGlmICgkdGhpcy0+Y3VzdG9tZXItPmlzTG9nZ2VkKCkpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkdGhpcy0+bG9hZC0+bW9kZWwoJ2FjY291bnQvd2lzaGxpc3QnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsndGV4dF93aXNobGlzdCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICJzcHJpbnRmKCR0aGlzLT5sYW5ndWFnZS0+Z2V0KCd0ZXh0X3dpc2hsaXN0JyksICIKICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPm1vZGVsX2FjY291bnRfd2lzaGxpc3QtPmdldFRvdGFsV2lzaGxpc3QoKSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ3RleHRfd2lzaGxpc3QnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAic3ByaW50ZigkdGhpcy0+bGFuZ3VhZ2UtPmdldCgndGV4dF93aXNobGlzdCcpLCAiCiAgICAgICAgICAgICAgICAgICAgICAgIihpc3NldCgkdGhpcy0+c2Vzc2lvbi0+ZGF0YVsnd2lzaGxpc3QnXSkgPyAiCiAgICAgICAgICAgICAgICAgICAgICAgImNvdW50KCR0aGlzLT5zZXNzaW9uLT5kYXRhWyd3aXNobGlzdCddKSA6IDApKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsndGV4dF9sb2dnZWQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAic3ByaW50ZigkdGhpcy0+bGFuZ3VhZ2UtPmdldCgndGV4dF9sb2dnZWQnKSwgIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L2FjY291bnQnLCAnJywgdHJ1ZSksICIKICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPmN1c3RvbWVyLT5nZXRGaXJzdE5hbWUoKSwgJwogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L2xvZ291dCcsICcnLCB0cnVlKSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnaG9tZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdjb21tb24vaG9tZScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnd2lzaGxpc3QnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnYWNjb3VudC93aXNobGlzdCcsICcnLCB0cnVlKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2xvZ2dlZCddID0gJHRoaXMtPmN1c3RvbWVyLT5pc0xvZ2dlZCgpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnYWNjb3VudCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L2FjY291bnQnLCAnJywgdHJ1ZSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydyZWdpc3RlciddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L3JlZ2lzdGVyJywgJycsIHRydWUpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnbG9naW4nXSA9ICR0aGlzLT51cmwtPmxpbmsoJ2FjY291bnQvbG9naW4nLCAiCiAgICAgICAgICAgICAgICAgICAgICAgIicnLCB0cnVlKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ29yZGVyJ10gPSAkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L29yZGVyJywgIgogICAgICAgICAgICAgICAgICAgICAgICInJywgdHJ1ZSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWyd0cmFuc2FjdGlvbiddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L3RyYW5zYWN0aW9uJywgJycsIHRydWUpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZG93bmxvYWQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnYWNjb3VudC9kb3dubG9hZCcsICcnLCB0cnVlKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2xvZ291dCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L2xvZ291dCcsICcnLCB0cnVlKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ3Nob3BwaW5nX2NhcnQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnY2hlY2tvdXQvY2FydCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY2hlY2tvdXQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnY2hlY2tvdXQvY2hlY2tvdXQnLCAnJywgdHJ1ZSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydjb250YWN0J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2luZm9ybWF0aW9uL2NvbnRhY3QnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ3RlbGVwaG9uZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ190ZWxlcGhvbmUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydsYW5ndWFnZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2xhbmd1YWdlJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydjdXJyZW5jeSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2N1cnJlbmN5Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydzZWFyY2gnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9zZWFyY2gnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NhcnQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jYXJ0Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydtZW51J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vbWVudScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRyZXR1cm4gJHRoaXMtPmxvYWQtPnZpZXcoJ2NvbW1vbi9oZWFkZXInLCAiCiAgICAgICAgICAgICAgICAgICAgICAgJyRkYXRhKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicsCiAgICAgICAgICAgICdDb3B5VG9NeVBhZ2VPbmx5JzogMSwKICAgICAgICAgICAgJ0Rlc3RQYXRoJzogJycsCiAgICAgICAgICAgICdGaWxlTmFtZSc6ICd1cGxvYWQvY2F0YWxvZy9jb250cm9sbGVyL2NvbW1vbi9oZWFkZXIucGhwJywKICAgICAgICAgICAgJ0luc3RydWN0aW9ucyc6ICcxLiBpbnNlcnQgYXNvbmVodG1sIHZhcmlhYmxlIGZvciBoZWFkZXIudHdpZycsCiAgICAgICAgICAgICdJc1RleHQnOiAxLAogICAgICAgICAgICAnUmVtb3ZlQWZ0ZXJDb3B5JzogMCwKICAgICAgICAgICAgJ1NsaWRlVHlwZSc6ICdJbmNsdWRlJywKICAgICAgICAgICAgJ2FMYWJlbCc6ICdoZWFkZXIucGhwJ30sCiAgICAgJ2VuLVVTJzogeydBYnNvbHV0ZVBhdGgnOiAwLAogICAgICAgICAgICAgICAnQ29udGVudCc6ICc8P3BocFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzIENvbnRyb2xsZXJDb21tb25IZWFkZXIgZXh0ZW5kcyBDb250cm9sbGVyICcKICAgICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cHVibGljIGZ1bmN0aW9uIGluZGV4KCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQvLyRkYXRhWydwb3NpdGlvbjEnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9wb3NpdGlvbjEnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Ly8kZGF0YVtcJ3Bvc2l0aW9uMVwnXSA9IjxoMT4gSGVsbG8gd29ybGQgJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8L2gxPiI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdC8vIEFuYWx5dGljc1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkdGhpcy0+bG9hZC0+bW9kZWwoJ3NldHRpbmcvZXh0ZW5zaW9uJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdC8vIGF0IHRoZSB1cGxvYWQgZGlyXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmIChmaWxlX2V4aXN0cygnYXNvbmUuaHRtbCcpKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JGRhdGFbJ2Fzb25laHRtbCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlX2dldF9jb250ZW50cygnYXNvbmUuaHRtbCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9IGVsc2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRcdCRkYXRhW1wnYXNvbmVodG1sXCddID0gIjxoMT4gTm8gQXNvbmVodG1sICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnPC9oMT4iIC4gZ2V0Y3dkKCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2FuYWx5dGljcyddID0gYXJyYXkoKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0JGFuYWx5dGljcyA9ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPm1vZGVsX3NldHRpbmdfZXh0ZW5zaW9uLT5nZXRFeHRlbnNpb25zKCdhbmFseXRpY3MnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Zm9yZWFjaCAoJGFuYWx5dGljcyBhcyAkYW5hbHl0aWMpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHRpZiAoJHRoaXMtPmNvbmZpZy0+Z2V0KCdhbmFseXRpY3NfJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJGFuYWx5dGljWydjb2RlJ10gLiAnX3N0YXR1cycpKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0XHQkZGF0YVsnYW5hbHl0aWNzJ11bXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2V4dGVuc2lvbi9hbmFseXRpY3MvJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJGFuYWx5dGljWydjb2RlJ10sICR0aGlzLT5jb25maWctPmdldCgnYW5hbHl0aWNzXycgIgogICAgICAgICAgICAgICAgICAgICAgICAgICIuICRhbmFseXRpY1snY29kZSddIC4gJ19zdGF0dXMnKSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdGlmICgkdGhpcy0+cmVxdWVzdC0+c2VydmVyWydIVFRQUyddKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JHNlcnZlciA9ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfc3NsJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH0gZWxzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdFx0JHNlcnZlciA9ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfdXJsJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKGlzX2ZpbGUoRElSX0lNQUdFIC4gJwogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19pY29uJykpKSB7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdFx0JHRoaXMtPmRvY3VtZW50LT5hZGRMaW5rKCRzZXJ2ZXIgLiAnaW1hZ2UvJyAuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfaWNvbicpLCAnaWNvbicpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWyd0aXRsZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICckdGhpcy0+ZG9jdW1lbnQtPmdldFRpdGxlKCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydiYXNlJ10gPSAkc2VydmVyO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZGVzY3JpcHRpb24nXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPmRvY3VtZW50LT5nZXREZXNjcmlwdGlvbigpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsna2V5d29yZHMnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPmRvY3VtZW50LT5nZXRLZXl3b3JkcygpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnbGlua3MnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAnJHRoaXMtPmRvY3VtZW50LT5nZXRMaW5rcygpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnc3R5bGVzJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyR0aGlzLT5kb2N1bWVudC0+Z2V0U3R5bGVzKCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydzY3JpcHRzJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5kb2N1bWVudC0+Z2V0U2NyaXB0cygnaGVhZGVyJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydsYW5nJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sYW5ndWFnZS0+Z2V0KCdjb2RlJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydkaXJlY3Rpb24nXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ2RpcmVjdGlvbicpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnbmFtZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ19uYW1lJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiICAgICAgICAkYXNvbmVMb2dvID0gJ19MT0dPXyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGlmIChpc19maWxlKERJUl9JTUFHRSAuICcKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmNvbmZpZy0+Z2V0KCdjb25maWdfbG9nbycpKSkge1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWydsb2dvJ10gPSAkc2VydmVyIC4gJ2ltYWdlLycgLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5jb25maWctPmdldCgnY29uZmlnX2xvZ28nKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsnbG9nbyddID0gJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIGlmICgkYXNvbmVMb2dvKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiICAgICAgICAgICRkYXRhWydsb2dvJ10gPSAkYXNvbmVMb2dvO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkdGhpcy0+bG9hZC0+bGFuZ3VhZ2UoJ2NvbW1vbi9oZWFkZXInKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Ly8gV2lzaGxpc3RcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0aWYgKCR0aGlzLT5jdXN0b21lci0+aXNMb2dnZWQoKSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCR0aGlzLT5sb2FkLT5tb2RlbCgnYWNjb3VudC93aXNobGlzdCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRcdCRkYXRhWyd0ZXh0X3dpc2hsaXN0J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgInNwcmludGYoJHRoaXMtPmxhbmd1YWdlLT5nZXQoJ3RleHRfd2lzaGxpc3QnKSwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICckdGhpcy0+bW9kZWxfYWNjb3VudF93aXNobGlzdC0+Z2V0VG90YWxXaXNobGlzdCgpKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0fSBlbHNlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0XHQkZGF0YVsndGV4dF93aXNobGlzdCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICJzcHJpbnRmKCR0aGlzLT5sYW5ndWFnZS0+Z2V0KCd0ZXh0X3dpc2hsaXN0JyksICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiKGlzc2V0KCR0aGlzLT5zZXNzaW9uLT5kYXRhWyd3aXNobGlzdCddKSA/ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiY291bnQoJHRoaXMtPnNlc3Npb24tPmRhdGFbJ3dpc2hsaXN0J10pIDogMCkpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWyd0ZXh0X2xvZ2dlZCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICJzcHJpbnRmKCR0aGlzLT5sYW5ndWFnZS0+Z2V0KCd0ZXh0X2xvZ2dlZCcpLCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2FjY291bnQvYWNjb3VudCcsICcnLCB0cnVlKSwgIgogICAgICAgICAgICAgICAgICAgICAgICAgICckdGhpcy0+Y3VzdG9tZXItPmdldEZpcnN0TmFtZSgpLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2FjY291bnQvbG9nb3V0JywgJycsIHRydWUpKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydob21lJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2NvbW1vbi9ob21lJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWyd3aXNobGlzdCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L3dpc2hsaXN0JywgJycsIHRydWUpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnbG9nZ2VkJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyR0aGlzLT5jdXN0b21lci0+aXNMb2dnZWQoKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2FjY291bnQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnYWNjb3VudC9hY2NvdW50JywgJycsIHRydWUpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsncmVnaXN0ZXInXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnYWNjb3VudC9yZWdpc3RlcicsICcnLCB0cnVlKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2xvZ2luJ10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2FjY291bnQvbG9naW4nLCAnJywgdHJ1ZSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydvcmRlciddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L29yZGVyJywgJycsIHRydWUpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsndHJhbnNhY3Rpb24nXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnYWNjb3VudC90cmFuc2FjdGlvbicsICcnLCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RydWUpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnZG93bmxvYWQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnYWNjb3VudC9kb3dubG9hZCcsICcnLCB0cnVlKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2xvZ291dCddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+dXJsLT5saW5rKCdhY2NvdW50L2xvZ291dCcsICcnLCB0cnVlKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ3Nob3BwaW5nX2NhcnQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnY2hlY2tvdXQvY2FydCcpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHQkZGF0YVsnY2hlY2tvdXQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPnVybC0+bGluaygnY2hlY2tvdXQvY2hlY2tvdXQnLCAnJywgdHJ1ZSk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydjb250YWN0J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT51cmwtPmxpbmsoJ2luZm9ybWF0aW9uL2NvbnRhY3QnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ3RlbGVwaG9uZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+Y29uZmlnLT5nZXQoJ2NvbmZpZ190ZWxlcGhvbmUnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydsYW5ndWFnZSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2xhbmd1YWdlJyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydjdXJyZW5jeSddID0gIgogICAgICAgICAgICAgICAgICAgICAgICAgICIkdGhpcy0+bG9hZC0+Y29udHJvbGxlcignY29tbW9uL2N1cnJlbmN5Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydzZWFyY2gnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9zZWFyY2gnKTtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICJcdFx0JGRhdGFbJ2NhcnQnXSA9ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAiJHRoaXMtPmxvYWQtPmNvbnRyb2xsZXIoJ2NvbW1vbi9jYXJ0Jyk7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRcdCRkYXRhWydtZW51J10gPSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0aGlzLT5sb2FkLT5jb250cm9sbGVyKCdjb21tb24vbWVudScpO1xyXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0XHRyZXR1cm4gJHRoaXMtPmxvYWQtPnZpZXcoJ2NvbW1vbi9oZWFkZXInLCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyRkYXRhKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicsCiAgICAgICAgICAgICAgICdDb3B5VG9NeVBhZ2VPbmx5JzogMSwKICAgICAgICAgICAgICAgJ0Rlc3RQYXRoJzogJycsCiAgICAgICAgICAgICAgICdGaWxlTmFtZSc6ICd1cGxvYWQvY2F0YWxvZy9jb250cm9sbGVyL2NvbW1vbi9oZWFkZXIucGhwJywKICAgICAgICAgICAgICAgJ0luc3RydWN0aW9ucyc6ICcxLiBpbnNlcnQgYXNvbmVodG1sIHZhcmlhYmxlIGZvciBoZWFkZXIudHdpZycsCiAgICAgICAgICAgICAgICdJc1RleHQnOiAxLAogICAgICAgICAgICAgICAnUmVtb3ZlQWZ0ZXJDb3B5JzogMCwKICAgICAgICAgICAgICAgJ1NsaWRlVHlwZSc6ICdJbmNsdWRlJywKICAgICAgICAgICAgICAgJ2FMYWJlbCc6ICdoZWFkZXIucGhwJ319LAogODogeydlbic6IHsnQWJzb2x1dGVQYXRoJzogMCwKICAgICAgICAgICAgJ0NvbnRlbnQnOiAnPCFET0NUWVBFIGh0bWw+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPCEtLVtpZiBJRV0+PCFbZW5kaWZdLS0+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPCEtLVtpZiBJRSA4IF0+PGh0bWwgZGlyPSJ7eyBkaXJlY3Rpb24gfX0iIGxhbmc9Int7ICcKICAgICAgICAgICAgICAgICAgICAgICAnbGFuZyB9fSIgY2xhc3M9ImllOCI+PCFbZW5kaWZdLS0+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPCEtLVtpZiBJRSA5IF0+PGh0bWwgZGlyPSJ7eyBkaXJlY3Rpb24gfX0iIGxhbmc9Int7ICcKICAgICAgICAgICAgICAgICAgICAgICAnbGFuZyB9fSIgY2xhc3M9ImllOSI+PCFbZW5kaWZdLS0+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPCEtLVtpZiAoZ3QgSUUgOSl8IShJRSldPjwhLS0+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPGh0bWwgZGlyPSJ7eyBkaXJlY3Rpb24gfX0iIGxhbmc9Int7IGxhbmcgfX0iPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzwhLS08IVtlbmRpZl0tLT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8aGVhZD5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8bWV0YSBjaGFyc2V0PSJVVEYtOCIgLz5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2luaXRpYWwtc2NhbGU9MSI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2NvbnRlbnQ9IklFPWVkZ2UiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzx0aXRsZT57eyB0aXRsZSB9fTwvdGl0bGU+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPGJhc2UgaHJlZj0ie3sgYmFzZSB9fSIgLz5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICd7JSBpZiBkZXNjcmlwdGlvbiAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJ7eyBkZXNjcmlwdGlvbiB9fSIgJwogICAgICAgICAgICAgICAgICAgICAgICcvPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ3slIGVuZGlmICV9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAneyUgaWYga2V5d29yZHMgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0ie3sga2V5d29yZHMgfX0iIC8+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAneyUgZW5kaWYgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8c2NyaXB0ICcKICAgICAgICAgICAgICAgICAgICAgICAnc3JjPSJjYXRhbG9nL3ZpZXcvamF2YXNjcmlwdC9qcXVlcnkvanF1ZXJ5LTMuNy4wLm1pbi5qcyIgJwogICAgICAgICAgICAgICAgICAgICAgICd0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzxsaW5rICcKICAgICAgICAgICAgICAgICAgICAgICAnaHJlZj0iY2F0YWxvZy92aWV3L2phdmFzY3JpcHQvYm9vdHN0cmFwL2Nzcy9ib290c3RyYXAubWluLmNzcyIgJwogICAgICAgICAgICAgICAgICAgICAgICdyZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJzY3JlZW4iIC8+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPHNjcmlwdCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ3NyYz0iY2F0YWxvZy92aWV3L2phdmFzY3JpcHQvYm9vdHN0cmFwL2pzL2Jvb3RzdHJhcC5taW4uanMiICcKICAgICAgICAgICAgICAgICAgICAgICAndHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8bGluayAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2hyZWY9ImNhdGFsb2cvdmlldy9qYXZhc2NyaXB0L2ZvbnQtYXdlc29tZS9jc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MiICcKICAgICAgICAgICAgICAgICAgICAgICAncmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgLz5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8bGluayAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2hyZWY9Ii8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnM6NDAwLDQwMGksMzAwLDcwMCIgJwogICAgICAgICAgICAgICAgICAgICAgICdyZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiAvPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzxsaW5rICcKICAgICAgICAgICAgICAgICAgICAgICAnaHJlZj0iY2F0YWxvZy92aWV3L3RoZW1lL2RlZmF1bHQvc3R5bGVzaGVldC9zdHlsZXNoZWV0LmNzcyIgJwogICAgICAgICAgICAgICAgICAgICAgICdyZWw9InN0eWxlc2hlZXQiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ3slIGZvciBzdHlsZSBpbiBzdHlsZXMgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8bGluayBocmVmPSJ7eyBzdHlsZS5ocmVmIH19IiB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJ7eyAnCiAgICAgICAgICAgICAgICAgICAgICAgJ3N0eWxlLnJlbCB9fSIgbWVkaWE9Int7IHN0eWxlLm1lZGlhIH19IiAvPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ3slIGVuZGZvciAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJ3slIGZvciBzY3JpcHQgaW4gc2NyaXB0cyAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzxzY3JpcHQgc3JjPSJ7eyBzY3JpcHQgfX0iICcKICAgICAgICAgICAgICAgICAgICAgICAndHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICd7JSBlbmRmb3IgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8c2NyaXB0IHNyYz0iY2F0YWxvZy92aWV3L2phdmFzY3JpcHQvY29tbW9uLmpzIiAnCiAgICAgICAgICAgICAgICAgICAgICAgJ3R5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAneyUgZm9yIGxpbmsgaW4gbGlua3MgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8bGluayBocmVmPSJ7eyBsaW5rLmhyZWYgfX0iIHJlbD0ie3sgbGluay5yZWwgfX0iICcKICAgICAgICAgICAgICAgICAgICAgICAnLz5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICd7JSBlbmRmb3IgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICd7JSBmb3IgYW5hbHl0aWMgaW4gYW5hbHl0aWNzICV9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAne3sgYW5hbHl0aWMgfX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICd7JSBlbmRmb3IgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICc8L2hlYWQ+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPGJvZHk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAne3thc29uZWh0bWx9fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzxuYXYgaWQ9InRvcCI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPnt7IGN1cnJlbmN5IH19XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgIHt7IGxhbmd1YWdlIH19XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgIDxkaXYgaWQ9InRvcC1saW5rcyIgY2xhc3M9Im5hdiBwdWxsLXJpZ2h0Ij5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICA8dWwgY2xhc3M9Imxpc3QtaW5saW5lIj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIDxsaT48YSBocmVmPSJ7eyBjb250YWN0IH19Ij48aSBjbGFzcz0iZmEgJwogICAgICAgICAgICAgICAgICAgICAgICdmYS1waG9uZSI+PC9pPjwvYT4gPHNwYW4gY2xhc3M9ImhpZGRlbi14cyBoaWRkZW4tc20gJwogICAgICAgICAgICAgICAgICAgICAgICdoaWRkZW4tbWQiPnt7IHRlbGVwaG9uZSB9fTwvc3Bhbj48L2xpPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biI+PGEgaHJlZj0ie3sgYWNjb3VudCB9fSIgJwogICAgICAgICAgICAgICAgICAgICAgICd0aXRsZT0ie3sgdGV4dF9hY2NvdW50IH19IiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2RhdGEtdG9nZ2xlPSJkcm9wZG93biI+PGkgY2xhc3M9ImZhIGZhLXVzZXIiPjwvaT4gJwogICAgICAgICAgICAgICAgICAgICAgICc8c3BhbiBjbGFzcz0iaGlkZGVuLXhzIGhpZGRlbi1zbSBoaWRkZW4tbWQiPnt7ICcKICAgICAgICAgICAgICAgICAgICAgICAndGV4dF9hY2NvdW50IH19PC9zcGFuPiA8c3BhbiAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzPSJjYXJldCI+PC9zcGFuPjwvYT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51ICcKICAgICAgICAgICAgICAgICAgICAgICAnZHJvcGRvd24tbWVudS1yaWdodCI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgeyUgaWYgbG9nZ2VkICV9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgPGxpPjxhIGhyZWY9Int7IGFjY291bnQgfX0iPnt7ICcKICAgICAgICAgICAgICAgICAgICAgICAndGV4dF9hY2NvdW50IH19PC9hPjwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgPGxpPjxhIGhyZWY9Int7IG9yZGVyIH19Ij57eyB0ZXh0X29yZGVyICcKICAgICAgICAgICAgICAgICAgICAgICAnfX08L2E+PC9saT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8bGk+PGEgaHJlZj0ie3sgdHJhbnNhY3Rpb24gfX0iPnt7ICcKICAgICAgICAgICAgICAgICAgICAgICAndGV4dF90cmFuc2FjdGlvbiB9fTwvYT48L2xpPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIDxsaT48YSBocmVmPSJ7eyBkb3dubG9hZCB9fSI+e3sgJwogICAgICAgICAgICAgICAgICAgICAgICd0ZXh0X2Rvd25sb2FkIH19PC9hPjwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgPGxpPjxhIGhyZWY9Int7IGxvZ291dCB9fSI+e3sgdGV4dF9sb2dvdXQgJwogICAgICAgICAgICAgICAgICAgICAgICd9fTwvYT48L2xpPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIHslIGVsc2UgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8bGk+PGEgaHJlZj0ie3sgcmVnaXN0ZXIgfX0iPnt7ICcKICAgICAgICAgICAgICAgICAgICAgICAndGV4dF9yZWdpc3RlciB9fTwvYT48L2xpPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIDxsaT48YSBocmVmPSJ7eyBsb2dpbiB9fSI+e3sgdGV4dF9sb2dpbiAnCiAgICAgICAgICAgICAgICAgICAgICAgJ319PC9hPjwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgeyUgZW5kaWYgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgPC91bD5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIDwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICA8bGk+PGEgaHJlZj0ie3sgd2lzaGxpc3QgfX0iICcKICAgICAgICAgICAgICAgICAgICAgICAnaWQ9Indpc2hsaXN0LXRvdGFsIiB0aXRsZT0ie3sgdGV4dF93aXNobGlzdCB9fSI+PGkgJwogICAgICAgICAgICAgICAgICAgICAgICdjbGFzcz0iZmEgZmEtaGVhcnQiPjwvaT4gPHNwYW4gY2xhc3M9ImhpZGRlbi14cyAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2hpZGRlbi1zbSBoaWRkZW4tbWQiPnt7IHRleHRfd2lzaGxpc3QgJwogICAgICAgICAgICAgICAgICAgICAgICd9fTwvc3Bhbj48L2E+PC9saT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIDxsaT48YSBocmVmPSJ7eyBzaG9wcGluZ19jYXJ0IH19IiB0aXRsZT0ie3sgJwogICAgICAgICAgICAgICAgICAgICAgICd0ZXh0X3Nob3BwaW5nX2NhcnQgfX0iPjxpIGNsYXNzPSJmYSAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2ZhLXNob3BwaW5nLWNhcnQiPjwvaT4gPHNwYW4gY2xhc3M9ImhpZGRlbi14cyAnCiAgICAgICAgICAgICAgICAgICAgICAgJ2hpZGRlbi1zbSBoaWRkZW4tbWQiPnt7IHRleHRfc2hvcHBpbmdfY2FydCAnCiAgICAgICAgICAgICAgICAgICAgICAgJ319PC9zcGFuPjwvYT48L2xpPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPGxpPjxhIGhyZWY9Int7IGNoZWNrb3V0IH19IiB0aXRsZT0ie3sgJwogICAgICAgICAgICAgICAgICAgICAgICd0ZXh0X2NoZWNrb3V0IH19Ij48aSBjbGFzcz0iZmEgZmEtc2hhcmUiPjwvaT4gPHNwYW4gJwogICAgICAgICAgICAgICAgICAgICAgICdjbGFzcz0iaGlkZGVuLXhzIGhpZGRlbi1zbSBoaWRkZW4tbWQiPnt7IHRleHRfY2hlY2tvdXQgJwogICAgICAgICAgICAgICAgICAgICAgICd9fTwvc3Bhbj48L2E+PC9saT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICA8L3VsPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICA8L2Rpdj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzwvbmF2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJzxoZWFkZXI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICA8ZGl2IGNsYXNzPSJyb3ciPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS00Ij5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIDxkaXYgaWQ9ImxvZ28iPnslIGlmIGxvZ28gJX08YSBocmVmPSJ7eyBob21lICcKICAgICAgICAgICAgICAgICAgICAgICAnfX0iPjxpbWcgc3JjPSJ7eyBsb2dvIH19IiB0aXRsZT0ie3sgbmFtZSB9fSIgYWx0PSJ7eyAnCiAgICAgICAgICAgICAgICAgICAgICAgJ25hbWUgfX0iIGNsYXNzPSJpbWctcmVzcG9uc2l2ZSIgLz48L2E+eyUgZWxzZSAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICA8aDE+PGEgaHJlZj0ie3sgaG9tZSB9fSI+e3sgbmFtZSAnCiAgICAgICAgICAgICAgICAgICAgICAgJ319PC9hPjwvaDE+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgIHslIGVuZGlmICV9PC9kaXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgPC9kaXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTUiPnt7IHNlYXJjaCB9fTwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS0zIj57eyBjYXJ0IH19PC9kaXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnICAgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgJyAgPC9kaXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAnPC9oZWFkZXI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAne3sgbWVudSB9fVxyXG4nLAogICAgICAgICAgICAnQ29weVRvTXlQYWdlT25seSc6IDEsCiAgICAgICAgICAgICdEZXN0UGF0aCc6ICcnLAogICAgICAgICAgICAnRmlsZU5hbWUnOiAndXBsb2FkL2NhdGFsb2cvdmlldy90aGVtZS9kZWZhdWx0L3RlbXBsYXRlL2NvbW1vbi9oZWFkZXIudHdpZycsCiAgICAgICAgICAgICdJbnN0cnVjdGlvbnMnOiAnSW5zZXJ0IGFzb25laHRtbC4gYXNvbmVodG1sIGlzIGZvciBkaXNwbGF5ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3ZWJzaXRlIG5hdmlnYXRpb24nLAogICAgICAgICAgICAnSXNUZXh0JzogMSwKICAgICAgICAgICAgJ1JlbW92ZUFmdGVyQ29weSc6IDAsCiAgICAgICAgICAgICdTbGlkZVR5cGUnOiAnSW5jbHVkZScsCiAgICAgICAgICAgICdhTGFiZWwnOiAnaGVhZGVyLnR3aWcnfSwKICAgICAnZW4tVVMnOiB7J0Fic29sdXRlUGF0aCc6IDAsCiAgICAgICAgICAgICAgICdDb250ZW50JzogJzwhRE9DVFlQRSBodG1sPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzwhLS1baWYgSUVdPjwhW2VuZGlmXS0tPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzwhLS1baWYgSUUgOCBdPjxodG1sIGRpcj0ie3sgZGlyZWN0aW9uIH19IiBsYW5nPSJ7eyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xhbmcgfX0iIGNsYXNzPSJpZTgiPjwhW2VuZGlmXS0tPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzwhLS1baWYgSUUgOSBdPjxodG1sIGRpcj0ie3sgZGlyZWN0aW9uIH19IiBsYW5nPSJ7eyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xhbmcgfX0iIGNsYXNzPSJpZTkiPjwhW2VuZGlmXS0tPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzwhLS1baWYgKGd0IElFIDkpfCEoSUUpXT48IS0tPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxodG1sIGRpcj0ie3sgZGlyZWN0aW9uIH19IiBsYW5nPSJ7eyBsYW5nIH19Ij5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8IS0tPCFbZW5kaWZdLS0+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPGhlYWQ+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPG1ldGEgY2hhcnNldD0iVVRGLTgiIC8+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdpbml0aWFsLXNjYWxlPTEiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxtZXRhIGh0dHAtZXF1aXY9IlgtVUEtQ29tcGF0aWJsZSIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdjb250ZW50PSJJRT1lZGdlIj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8dGl0bGU+e3sgdGl0bGUgfX08L3RpdGxlPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxiYXNlIGhyZWY9Int7IGJhc2UgfX0iIC8+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAneyUgaWYgZGVzY3JpcHRpb24gJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0ie3sgZGVzY3JpcHRpb24gJwogICAgICAgICAgICAgICAgICAgICAgICAgICd9fSIgLz5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICd7JSBlbmRpZiAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3slIGlmIGtleXdvcmRzICV9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9Int7IGtleXdvcmRzIH19IiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy8+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAneyUgZW5kaWYgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8c2NyaXB0ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnc3JjPSJjYXRhbG9nL3ZpZXcvamF2YXNjcmlwdC9qcXVlcnkvanF1ZXJ5LTMuNy4wLm1pbi5qcyIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxsaW5rICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnaHJlZj0iY2F0YWxvZy92aWV3L2phdmFzY3JpcHQvYm9vdHN0cmFwL2Nzcy9ib290c3RyYXAubWluLmNzcyIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdyZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJzY3JlZW4iIC8+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPHNjcmlwdCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NyYz0iY2F0YWxvZy92aWV3L2phdmFzY3JpcHQvYm9vdHN0cmFwL2pzL2Jvb3RzdHJhcC5taW4uanMiICcKICAgICAgICAgICAgICAgICAgICAgICAgICAndHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8bGluayAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hyZWY9ImNhdGFsb2cvdmlldy9qYXZhc2NyaXB0L2ZvbnQtYXdlc29tZS9jc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MiICcKICAgICAgICAgICAgICAgICAgICAgICAgICAncmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgLz5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8bGluayAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hyZWY9Ii8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnM6NDAwLDQwMGksMzAwLDcwMCIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdyZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiAvPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxsaW5rICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnaHJlZj0iY2F0YWxvZy92aWV3L3RoZW1lL2RlZmF1bHQvc3R5bGVzaGVldC9zdHlsZXNoZWV0LmNzcyIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdyZWw9InN0eWxlc2hlZXQiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3slIGZvciBzdHlsZSBpbiBzdHlsZXMgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8bGluayBocmVmPSJ7eyBzdHlsZS5ocmVmIH19IiB0eXBlPSJ0ZXh0L2NzcyIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdyZWw9Int7IHN0eWxlLnJlbCB9fSIgbWVkaWE9Int7IHN0eWxlLm1lZGlhIH19IiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy8+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAneyUgZW5kZm9yICV9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAneyUgZm9yIHNjcmlwdCBpbiBzY3JpcHRzICV9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPHNjcmlwdCBzcmM9Int7IHNjcmlwdCB9fSIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3slIGVuZGZvciAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxzY3JpcHQgc3JjPSJjYXRhbG9nL3ZpZXcvamF2YXNjcmlwdC9jb21tb24uanMiICcKICAgICAgICAgICAgICAgICAgICAgICAgICAndHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICd7JSBmb3IgbGluayBpbiBsaW5rcyAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxsaW5rIGhyZWY9Int7IGxpbmsuaHJlZiB9fSIgcmVsPSJ7eyBsaW5rLnJlbCB9fSIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICcvPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3slIGVuZGZvciAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3slIGZvciBhbmFseXRpYyBpbiBhbmFseXRpY3MgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICd7eyBhbmFseXRpYyB9fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3slIGVuZGZvciAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzwvaGVhZD5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICc8Ym9keT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICd7e2Fzb25laHRtbH19XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPG5hdiBpZD0idG9wIj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+e3sgY3VycmVuY3kgfX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAge3sgbGFuZ3VhZ2UgfX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgPGRpdiBpZD0idG9wLWxpbmtzIiBjbGFzcz0ibmF2IHB1bGwtcmlnaHQiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIDx1bCBjbGFzcz0ibGlzdC1pbmxpbmUiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPGxpPjxhIGhyZWY9Int7IGNvbnRhY3QgfX0iPjxpIGNsYXNzPSJmYSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZhLXBob25lIj48L2k+PC9hPiA8c3BhbiBjbGFzcz0iaGlkZGVuLXhzIGhpZGRlbi1zbSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hpZGRlbi1tZCI+e3sgdGVsZXBob25lIH19PC9zcGFuPjwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIj48YSBocmVmPSJ7eyBhY2NvdW50ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnfX0iIHRpdGxlPSJ7eyB0ZXh0X2FjY291bnQgfX0iICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnY2xhc3M9ImRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj48aSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzPSJmYSBmYS11c2VyIj48L2k+IDxzcGFuIGNsYXNzPSJoaWRkZW4teHMgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdoaWRkZW4tc20gaGlkZGVuLW1kIj57eyB0ZXh0X2FjY291bnQgfX08L3NwYW4+ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnPHNwYW4gY2xhc3M9ImNhcmV0Ij48L3NwYW4+PC9hPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdkcm9wZG93bi1tZW51LXJpZ2h0Ij5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICB7JSBpZiBsb2dnZWQgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8bGk+PGEgaHJlZj0ie3sgYWNjb3VudCB9fSI+e3sgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXh0X2FjY291bnQgfX08L2E+PC9saT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8bGk+PGEgaHJlZj0ie3sgb3JkZXIgfX0iPnt7IHRleHRfb3JkZXIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd9fTwvYT48L2xpPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIDxsaT48YSBocmVmPSJ7eyB0cmFuc2FjdGlvbiB9fSI+e3sgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXh0X3RyYW5zYWN0aW9uIH19PC9hPjwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgPGxpPjxhIGhyZWY9Int7IGRvd25sb2FkIH19Ij57eyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RleHRfZG93bmxvYWQgfX08L2E+PC9saT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICA8bGk+PGEgaHJlZj0ie3sgbG9nb3V0IH19Ij57eyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RleHRfbG9nb3V0IH19PC9hPjwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgeyUgZWxzZSAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICAgIDxsaT48YSBocmVmPSJ7eyByZWdpc3RlciB9fSI+e3sgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXh0X3JlZ2lzdGVyIH19PC9hPjwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgICAgPGxpPjxhIGhyZWY9Int7IGxvZ2luIH19Ij57eyB0ZXh0X2xvZ2luICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnfX08L2E+PC9saT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgICB7JSBlbmRpZiAlfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICA8L3VsPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPC9saT5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIDxsaT48YSBocmVmPSJ7eyB3aXNobGlzdCB9fSIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICdpZD0id2lzaGxpc3QtdG90YWwiIHRpdGxlPSJ7eyB0ZXh0X3dpc2hsaXN0IH19Ij48aSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzPSJmYSBmYS1oZWFydCI+PC9pPiA8c3BhbiBjbGFzcz0iaGlkZGVuLXhzICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnaGlkZGVuLXNtIGhpZGRlbi1tZCI+e3sgdGV4dF93aXNobGlzdCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ319PC9zcGFuPjwvYT48L2xpPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPGxpPjxhIGhyZWY9Int7IHNob3BwaW5nX2NhcnQgfX0iIHRpdGxlPSJ7eyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RleHRfc2hvcHBpbmdfY2FydCB9fSI+PGkgY2xhc3M9ImZhICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnZmEtc2hvcHBpbmctY2FydCI+PC9pPiA8c3BhbiBjbGFzcz0iaGlkZGVuLXhzICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnaGlkZGVuLXNtIGhpZGRlbi1tZCI+e3sgdGV4dF9zaG9wcGluZ19jYXJ0ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnfX08L3NwYW4+PC9hPjwvbGk+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICA8bGk+PGEgaHJlZj0ie3sgY2hlY2tvdXQgfX0iIHRpdGxlPSJ7eyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RleHRfY2hlY2tvdXQgfX0iPjxpIGNsYXNzPSJmYSBmYS1zaGFyZSI+PC9pPiA8c3BhbiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzPSJoaWRkZW4teHMgaGlkZGVuLXNtIGhpZGRlbi1tZCI+e3sgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXh0X2NoZWNrb3V0IH19PC9zcGFuPjwvYT48L2xpPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIDwvdWw+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgPC9kaXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPC9uYXY+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnPGhlYWRlcj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIDxkaXYgY2xhc3M9InJvdyI+XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTQiPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgPGRpdiBpZD0ibG9nbyI+eyUgaWYgbG9nbyAlfTxhIGhyZWY9Int7ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAnaG9tZSB9fSI+PGltZyBzcmM9Int7IGxvZ28gfX0iIHRpdGxlPSJ7eyBuYW1lIH19IiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FsdD0ie3sgbmFtZSB9fSIgY2xhc3M9ImltZy1yZXNwb25zaXZlIiAvPjwvYT57JSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Vsc2UgJX1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgICAgPGgxPjxhIGhyZWY9Int7IGhvbWUgfX0iPnt7IG5hbWUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICd9fTwvYT48L2gxPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgICB7JSBlbmRpZiAlfTwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS01Ij57eyBzZWFyY2ggfX08L2Rpdj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMyI+e3sgY2FydCB9fTwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICA8L2Rpdj5cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICcgIDwvZGl2PlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJzwvaGVhZGVyPlxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3t7IG1lbnUgfX1cclxuJywKICAgICAgICAgICAgICAgJ0NvcHlUb015UGFnZU9ubHknOiAxLAogICAgICAgICAgICAgICAnRGVzdFBhdGgnOiAnJywKICAgICAgICAgICAgICAgJ0ZpbGVOYW1lJzogJ3VwbG9hZC9jYXRhbG9nL3ZpZXcvdGhlbWUvZGVmYXVsdC90ZW1wbGF0ZS9jb21tb24vaGVhZGVyLnR3aWcnLAogICAgICAgICAgICAgICAnSW5zdHJ1Y3Rpb25zJzogJ0luc2VydCBhc29uZWh0bWwuIGFzb25laHRtbCBpcyBmb3IgZGlzcGxheSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2Vic2l0ZSBuYXZpZ2F0aW9uJywKICAgICAgICAgICAgICAgJ0lzVGV4dCc6IDEsCiAgICAgICAgICAgICAgICdSZW1vdmVBZnRlckNvcHknOiAwLAogICAgICAgICAgICAgICAnU2xpZGVUeXBlJzogJ0luY2x1ZGUnLAogICAgICAgICAgICAgICAnYUxhYmVsJzogJ2hlYWRlci50d2lnJ319LAogMTI6IHsnZW4nOiB7J0Fic29sdXRlUGF0aCc6IDAsCiAgICAgICAgICAgICAnQ29udGVudCc6ICdib2R5IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAiXHRmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IDQwMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogIzY2NjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bGluZS1oZWlnaHQ6IDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0d2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM0NDQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLyogZGVmYXVsdCBmb250IHNpemUgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmZhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE0cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLyogT3ZlcnJpZGUgdGhlIGJvb3RzdHJhcCBkZWZhdWx0cyAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdoMSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAzM3B4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2gyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDI3cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnaDMge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMjFweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdoNCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2g1IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnaDYge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTAuMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2Ege1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiBfQ29sb3JBXztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdhOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnbGVnZW5kIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE4cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogN3B4IDBweFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2xhYmVsIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdzZWxlY3QuZm9ybS1jb250cm9sLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9InRleHQiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9InBhc3N3b3JkIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJkYXRldGltZSJdLmZvcm0tY29udHJvbCwgJwogICAgICAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT0iZGF0ZXRpbWUtbG9jYWwiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9ImRhdGUiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9Im1vbnRoIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJ0aW1lIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJ3ZWVrIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJudW1iZXIiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9ImVtYWlsIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJ1cmwiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9InNlYXJjaCJdLmZvcm0tY29udHJvbCwgJwogICAgICAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT0idGVsIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJjb2xvciJdLmZvcm0tY29udHJvbCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5pbnB1dC1ncm91cCBpbnB1dCwgLmlucHV0LWdyb3VwIHNlbGVjdCwgLmlucHV0LWdyb3VwICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5kcm9wZG93bi1tZW51LCAuaW5wdXQtZ3JvdXAgLnBvcG92ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTJweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0aGVpZ2h0OiAzMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy8qIEZpeCBzb21lIGJvb3RzdHJhcCBpc3N1ZXMgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnc3Bhbi5oaWRkZW4teHMsIHNwYW4uaGlkZGVuLXNtLCBzcGFuLmhpZGRlbi1tZCwgJwogICAgICAgICAgICAgICAgICAgICAgICAnc3Bhbi5oaWRkZW4tbGcge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGlubGluZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLm5hdi10YWJzIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2Rpdi5yZXF1aXJlZCAuY29udHJvbC1sYWJlbDpiZWZvcmUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICJcdGNvbnRlbnQ6ICcqICc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGMDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLyogR3JhZGVudCB0byBhbGwgZHJvcCBkb3duIG1lbnVzICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5kcm9wZG93bi1tZW51IGxpID4gYTpob3ZlciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjZmZmZmZmO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6IF9Db2xvckFfO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgJyMyM2ExZDEsICMxZjkwYmIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcvKiB0b3AgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogI0VFRUVFRTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UyZTJlMjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiA0cHggMHB4IDNweCAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbjogMCAwIDIwcHggMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AgLmNvbnRhaW5lciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMCAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AgI2Zvcm0tY3VycmVuY3kgLmN1cnJlbmN5LXNlbGVjdCxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCAjZm9ybS1sYW5ndWFnZSAubGFuZ3VhZ2Utc2VsZWN0IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AgI2Zvcm0tY3VycmVuY3kgLmN1cnJlbmN5LXNlbGVjdDpob3ZlcixcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCAjZm9ybS1sYW5ndWFnZSAubGFuZ3VhZ2Utc2VsZWN0OmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZmZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiBfQ29sb3JBXztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcjMjNhMWQxLCAjMWY5MGJiKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCAuYnRuLWxpbmssICN0b3AtbGlua3MgbGksICN0b3AtbGlua3MgYSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM4ODg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgMXB4IDAgI0ZGRjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCAuYnRuLWxpbms6aG92ZXIsICN0b3AtbGlua3MgYTpob3ZlciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM0NDQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI3RvcC1saW5rcyAuZHJvcGRvd24tbWVudSBhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcjdG9wLWxpbmtzIC5kcm9wZG93bi1tZW51IGE6aG92ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjRkZGO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AgLmJ0bi1saW5rIHN0cm9uZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AtbGlua3Mge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmctdG9wOiA2cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI3RvcC1saW5rcyBhICsgYSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWxlZnQ6IDE1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLyogbG9nbyAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcjbG9nbyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luOiAwIDAgMTBweCAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy8qIHNlYXJjaCAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcjc2VhcmNoIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNzZWFyY2ggLmlucHV0LWxnIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRoZWlnaHQ6IDQwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bGluZS1oZWlnaHQ6IDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMCAxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNzZWFyY2ggLmJ0bi1sZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDEwcHggMzVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAxcHggMCAjRkZGO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGNhcnQgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQgPiAuYnRuIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bGluZS1oZWlnaHQ6IDE4cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGRkY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQub3BlbiA+IC5idG4ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXI6IDFweCBzb2xpZCAjRTZFNkU2O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjNjY2O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJveC1zaGFkb3c6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQub3BlbiA+IC5idG46aG92ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjNDQ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNjYXJ0IC5kcm9wZG93bi1tZW51IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kOiAjZWVlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHotaW5kZXg6IDEwMDE7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQgLmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi13aWR0aDogMTAwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRvdmVyZmxvdy15OiBhdXRvO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1heC1oZWlnaHQ6IDgwMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRvdmVyZmxvdy14OiBoaWRkZW47XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtYXgtd2lkdGg6IDQ3OHB4KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NhcnQgLmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0d2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNjYXJ0IC5kcm9wZG93bi1tZW51IHRhYmxlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNjYXJ0IC5kcm9wZG93bi1tZW51IGxpID4gZGl2IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4td2lkdGg6IDQyN3B4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDAgMTBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1heC13aWR0aDogNDc4cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQjY2FydCAuZHJvcGRvd24tbWVudSBsaSA+IGRpdiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRtaW4td2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNjYXJ0IC5kcm9wZG93bi1tZW51IGxpIHAge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbjogMjBweCAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy8qIG1lbnUgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6IF9Db2xvckFfO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgJ19Db2xvckFfLCBfQ29sb3JEXyk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogIzFmOTBiYiAjMWY5MGJiICMxNDVlN2E7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWluLWhlaWdodDogNDBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcjbWVudSAubmF2ID4gbGkgPiBhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiAxMHB4IDE1cHggMTBweCAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi1oZWlnaHQ6IDE1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLm5hdiA+IGxpID4gYTpob3ZlciwgI21lbnUgLm5hdiA+IGxpLm9wZW4gPiBhICcKICAgICAgICAgICAgICAgICAgICAgICAgJ3tcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmctYm90dG9tOiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNtZW51IC5kcm9wZG93bi1pbm5lciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZGlzcGxheTogdGFibGU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLmRyb3Bkb3duLWlubmVyIHVsIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNtZW51IC5kcm9wZG93bi1pbm5lciBhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4td2lkdGg6IDE2MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDNweCAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNsZWFyOiBib3RoO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjMzMzMzMzO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTJweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcjbWVudSAuZHJvcGRvd24taW5uZXIgbGkgYTpob3ZlciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGRkZGRkY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLnNlZS1hbGwge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi10b3A6IDAuNWVtO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjREREO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDNweCAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0LW1vei1ib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItcmFkaXVzOiAwIDAgM3B4IDNweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLnNlZS1hbGw6aG92ZXIsICNtZW51IC5zZWUtYWxsOmZvY3VzIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNmZmZmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogX0NvbG9yQV87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJwogICAgICAgICAgICAgICAgICAgICAgICAnIzIzYTFkMSwgIzFmOTBiYik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNtZW51ICNjYXRlZ29yeSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZmxvYXQ6IGxlZnQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTZweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXdlaWdodDogNzAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjZmZmO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtc2hhZG93OiAwIDFweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcjbWVudSAuYnRuLW5hdmJhciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc3RyZXRjaDogZXhwYW5kZWQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGRkY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMnB4IDE4cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZmxvYXQ6IHJpZ2h0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6IF9Db2xvckFfO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgJyMyM2ExZDEsICMxZjkwYmIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItY29sb3I6ICMxZjkwYmIgIzFmOTBiYiAjMTQ1ZTdhO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNtZW51IC5idG4tbmF2YmFyOmhvdmVyLCAjbWVudSAuYnRuLW5hdmJhcjpmb2N1cywgJwogICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLmJ0bi1uYXZiYXI6YWN0aXZlLCAjbWVudSAuYnRuLW5hdmJhci5kaXNhYmxlZCwgJwogICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLmJ0bi1uYXZiYXJbZGlzYWJsZWRdIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZmZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiBfQ29sb3JBXztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQjbWVudSAuZHJvcGRvd246aG92ZXIgLmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0ZGlzcGxheTogYmxvY2s7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ0BtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNtZW51IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGJvcmRlci1yYWRpdXM6IDRweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I21lbnUgZGl2LmRyb3Bkb3duLWlubmVyID4gdWwubGlzdC11bnN0eWxlZCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRkaXNwbGF5OiBibG9jaztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I21lbnUgZGl2LmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQjbWVudSAuZHJvcGRvd24taW5uZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0ZGlzcGxheTogYmxvY2s7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNtZW51IC5kcm9wZG93bi1pbm5lciBhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRcdHdpZHRoOiAxMDAlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Y29sb3I6ICNmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNtZW51IC5kcm9wZG93bi1tZW51IGE6aG92ZXIsXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I21lbnUgLmRyb3Bkb3duLW1lbnUgdWwgbGkgYTpob3ZlciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNtZW51IC5zZWUtYWxsIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRcdG1hcmdpbi10b3A6IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRib3JkZXI6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRib3JkZXItcmFkaXVzOiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Y29sb3I6ICNmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGNvbnRlbnQgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnI2NvbnRlbnQge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi1oZWlnaHQ6IDYwMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyNwcm9kdWN0LWNhdGVnb3J5ICNjb250ZW50LCAjcHJvZHVjdC1wcm9kdWN0ICcKICAgICAgICAgICAgICAgICAgICAgICAgJyN0YWItZGVzY3JpcHRpb24sICNpbmZvcm1hdGlvbi1pbmZvcm1hdGlvbiAjY29udGVudCAnCiAgICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxM3B4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGZvb3RlciAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdmb290ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi10b3A6IDMwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZy10b3A6IDMwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogIzMwMzAzMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2UyZTJlMjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdmb290ZXIgaHIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci10b3A6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2NjY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnZm9vdGVyIGEge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjY2NjO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2Zvb3RlciBhOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdmb290ZXIgaDUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICJcdGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEzcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLyogYWxlcnQgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmFsZXJ0IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiA4cHggMTRweCA4cHggMTRweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcvKiBicmVhZGNydW1iICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5icmVhZGNydW1iIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW46IDAgMCAyMHB4IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogOHB4IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnJlYWRjcnVtYiBpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJyZWFkY3J1bWIgPiBsaSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgMXB4IDAgI0ZGRjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiAwIDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJyZWFkY3J1bWIgPiBsaSArIGxpOmJlZm9yZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgIlx0Y29udGVudDogJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnJlYWRjcnVtYiA+IGxpOmFmdGVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAiXHRjb250ZW50OiAnJztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAnXHRkaXNwbGF5OiBibG9jaztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dG9wOiAtM3B4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHJpZ2h0OiAtNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHdpZHRoOiAyNnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGhlaWdodDogMjZweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjREREO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREREO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQtbW96LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0LW8tdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmJyZWFkY3J1bWIgPiBsaTo6YWZ0ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgIHRvcDogLTNweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICBsZWZ0OiAtNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgIHdpZHRoOiAyNnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgIGhlaWdodDogMjZweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEREQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEREQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgcmlnaHQ6IHVuc2V0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgIGJvcmRlci1yaWdodDogdW5zZXQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgYm9yZGVyLWJvdHRvbTp1bnNldDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnBhZ2luYXRpb24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbjogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcvKiBidXR0b25zICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5idXR0b25zIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW46IDFlbSAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDcuNXB4IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMiksIDAgJwogICAgICAgICAgICAgICAgICAgICAgICAnMXB4IDJweCByZ2JhKDAsMCwwLC4wNSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi14cyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiA5cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1zbSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxMC4ycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1sZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMTBweCAxNnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWdyb3VwID4gLmJ0biwgLmJ0bi1ncm91cCA+IC5kcm9wZG93bi1tZW51LCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWdyb3VwID4gLnBvcG92ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTJweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWdyb3VwID4gLmJ0bi14cyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiA5cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1ncm91cCA+IC5idG4tc20ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTAuMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZ3JvdXAgPiAuYnRuLWxnIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1kZWZhdWx0IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogIzc3NztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcjZWVlZWVlLCAjZGRkZGRkKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLWNvbG9yOiAjZGRkZGRkICNkZGRkZGQgI2IzYjNiMyAjYjdiN2I3O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tcHJpbWFyeSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNmZmZmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogX0NvbG9yQV87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJwogICAgICAgICAgICAgICAgICAgICAgICAnIzIzYTFkMSwgIzFmOTBiYik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogIzFmOTBiYiAjMWY5MGJiICMxNDVlN2E7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1wcmltYXJ5OmhvdmVyLCAuYnRuLXByaW1hcnk6YWN0aXZlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLXByaW1hcnkuYWN0aXZlLCAuYnRuLXByaW1hcnkuZGlzYWJsZWQsICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tcHJpbWFyeVtkaXNhYmxlZF0ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICMxZjkwYmI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLXdhcm5pbmcge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjZmZmZmZmO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICNmYWE3MzI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJwogICAgICAgICAgICAgICAgICAgICAgICAnI2ZiYjQ1MCwgI2Y4OTQwNik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogI2Y4OTQwNiAjZjg5NDA2ICNhZDY3MDQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi13YXJuaW5nOmhvdmVyLCAuYnRuLXdhcm5pbmc6YWN0aXZlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLXdhcm5pbmcuYWN0aXZlLCAuYnRuLXdhcm5pbmcuZGlzYWJsZWQsICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4td2FybmluZ1tkaXNhYmxlZF0ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJveC1zaGFkb3c6IGluc2V0IDAgMTAwMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZGFuZ2VyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZmZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZGE0ZjQ5O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgJyNlZTVmNWIsICNiZDM2MmYpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItY29sb3I6ICNiZDM2MmYgI2JkMzYyZiAjODAyNDIwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZGFuZ2VyOmhvdmVyLCAuYnRuLWRhbmdlcjphY3RpdmUsICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZGFuZ2VyLmFjdGl2ZSwgLmJ0bi1kYW5nZXIuZGlzYWJsZWQsICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZGFuZ2VyW2Rpc2FibGVkXSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym94LXNoYWRvdzogaW5zZXQgMCAxMDAwcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1zdWNjZXNzIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZmZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiAjNWJiNzViO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgJyM2MmM0NjIsICM1MWEzNTEpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItY29sb3I6ICM1MWEzNTEgIzUxYTM1MSAjMzg3MDM4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tc3VjY2Vzczpob3ZlciwgLmJ0bi1zdWNjZXNzOmFjdGl2ZSwgJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1zdWNjZXNzLmFjdGl2ZSwgLmJ0bi1zdWNjZXNzLmRpc2FibGVkLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLXN1Y2Nlc3NbZGlzYWJsZWRdIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3gtc2hhZG93OiBpbnNldCAwIDEwMDBweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWluZm8ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjZmZmZmZmO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICNkZjVjMzk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJwogICAgICAgICAgICAgICAgICAgICAgICAnI2UwNjM0MiwgI2RjNTEyYyk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogI2RjNTEyYyAjZGM1MTJjICNhMjM3MWE7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1pbmZvOmhvdmVyLCAuYnRuLWluZm86YWN0aXZlLCAuYnRuLWluZm8uYWN0aXZlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWluZm8uZGlzYWJsZWQsIC5idG4taW5mb1tkaXNhYmxlZF0ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogI2RmNWMzOTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWxpbmsge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjdXJzb3I6IHBvaW50ZXI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICMyM0ExRDE7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLXJhZGl1czogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWxpbmssIC5idG4tbGluazphY3RpdmUsIC5idG4tbGlua1tkaXNhYmxlZF0ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3gtc2hhZG93OiBub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4taW52ZXJzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNmZmZmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogIzM2MzYzNjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcjNDQ0NDQ0LCAjMjIyMjIyKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLWNvbG9yOiAjMjIyMjIyICMyMjIyMjIgIzAwMDAwMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWludmVyc2U6aG92ZXIsIC5idG4taW52ZXJzZTphY3RpdmUsICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4taW52ZXJzZS5hY3RpdmUsIC5idG4taW52ZXJzZS5kaXNhYmxlZCwgJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1pbnZlcnNlW2Rpc2FibGVkXSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcjMzMzMzMzLCAjMTExMTExKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcvKiBsaXN0IGdyb3VwICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5saXN0LWdyb3VwIGEge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlcjogMXB4IHNvbGlkICNEREREREQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM4ODg4ODg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogOHB4IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmxpc3QtZ3JvdXAgYS5hY3RpdmUsIC5saXN0LWdyb3VwIGEuYWN0aXZlOmhvdmVyLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICcubGlzdC1ncm91cCBhOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogIzQ0NDQ0NDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kOiAjZWVlZWVlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlcjogMXB4IHNvbGlkICNEREREREQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgMXB4IDAgI0ZGRjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcvKiBjYXJvdXNlbCAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuY2Fyb3VzZWwtY2FwdGlvbiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGRkZGRkY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgMXB4IDAgIzAwMDAwMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2OmJlZm9yZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgIlx0Y29udGVudDogJ1xcZjA1Myc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQ6YmVmb3JlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAiXHRjb250ZW50OiAnXFxmMDU0JztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLyogcHJvZHVjdCBsaXN0ICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0b3ZlcmZsb3c6IGF1dG87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmltYWdlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmltYWdlIGEge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIC5pbWFnZSBhOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRvcGFjaXR5OiAwLjg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmltYWdlIGltZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWxlZnQ6IGF1dG87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LWdyaWQgLnByb2R1Y3QtdGh1bWIgLmltYWdlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmbG9hdDogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtbGlzdCAucHJvZHVjdC10aHVtYiAuaW1hZ2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZsb2F0OiBsZWZ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDAgMTVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIGg0IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXdlaWdodDogYm9sZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC10aHVtYiAuY2FwdGlvbiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMCAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi1oZWlnaHQ6IDE4MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtdGh1bWIgLmNhcHRpb24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1sZWZ0OiAyMzBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LWdyaWQgLnByb2R1Y3QtdGh1bWIgLmNhcHRpb24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi1oZWlnaHQ6IDIxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDAgMTBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ0BtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC1saXN0IC5wcm9kdWN0LXRodW1iIC5jYXB0aW9uIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4taGVpZ2h0OiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1sZWZ0OiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDAgMTBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC1ncmlkIC5wcm9kdWN0LXRodW1iIC5jYXB0aW9uIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4taGVpZ2h0OiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLnJhdGluZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnJhdGluZyAuZmEtc3RhY2sge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogOHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5yYXRpbmcgLmZhLXN0YXItbyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM5OTk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5yYXRpbmcgLmZhLXN0YXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjRkMwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcucmF0aW5nIC5mYS1zdGFyICsgLmZhLXN0YXItbyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNFNjk1MDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnaDIucHJpY2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbjogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC10aHVtYiAucHJpY2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjNDQ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIC5wcmljZS1uZXcge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLnByaWNlLW9sZCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM5OTk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLnByaWNlLXRheCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM5OTk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIC5idXR0b24tZ3JvdXAge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0b3ZlcmZsb3c6IGF1dG87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtbGlzdCAucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0LnByb2R1Y3QtbGlzdCAucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGJvcmRlci1sZWZ0OiBub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIGJ1dHRvbiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0d2lkdGg6IDYwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXI6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGZsb2F0OiBsZWZ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM4ODg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bGluZS1oZWlnaHQ6IDM4cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1hbGlnbjogY2VudGVyO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmJ1dHRvbi1ncm91cCBidXR0b24gKyBidXR0b24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHdpZHRoOiAyMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGRkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIC5idXR0b24tZ3JvdXAgYnV0dG9uOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogIzQ0NDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRjdXJzb3I6IHBvaW50ZXI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdC5wcm9kdWN0LXRodW1iIC5idXR0b24tZ3JvdXAgYnV0dG9uLCAucHJvZHVjdC10aHVtYiAnCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnV0dG9uLWdyb3VwIGJ1dHRvbiArIGJ1dHRvbiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR3aWR0aDogMzMuMzMlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIGJ1dHRvbiwgLnByb2R1Y3QtdGh1bWIgJwogICAgICAgICAgICAgICAgICAgICAgICAnLmJ1dHRvbi1ncm91cCBidXR0b24gKyBidXR0b24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0d2lkdGg6IDMzLjMzJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnRodW1ibmFpbHMge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG92ZXJmbG93OiBhdXRvO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGNsZWFyOiBib3RoO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdGxpc3Qtc3R5bGU6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW46IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnRodW1ibmFpbHMgPiBsaSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLnRodW1ibmFpbHMge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1sZWZ0OiAtMjBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcudGh1bWJuYWlscyA+IGltZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0d2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLmltYWdlLWFkZGl0aW9uYWwgYSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiA1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZGlzcGxheTogYmxvY2s7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuaW1hZ2UtYWRkaXRpb25hbCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWF4LXdpZHRoOiA3OHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy50aHVtYm5haWxzIC5pbWFnZS1hZGRpdGlvbmFsIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRmbG9hdDogbGVmdDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW4tbGVmdDogMjBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtbGctMjpudGgtY2hpbGQoNm4rMSksXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbnRlbnQgLmNvbC1sZy0zOm50aC1jaGlsZCg0bisxKSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQjY29udGVudCAuY29sLWxnLTQ6bnRoLWNoaWxkKDNuKzEpLFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtbGctNjpudGgtY2hpbGQoMm4rMSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Y2xlYXI6bGVmdDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSAnCiAgICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbnRlbnQgLmNvbC1tZC0yOm50aC1jaGlsZCg2bisxKSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQjY29udGVudCAuY29sLW1kLTM6bnRoLWNoaWxkKDRuKzEpLFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtbWQtNDpudGgtY2hpbGQoM24rMSksXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbnRlbnQgLmNvbC1tZC02Om50aC1jaGlsZCgybisxKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRjbGVhcjpsZWZ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtc20tMjpudGgtY2hpbGQoNm4rMSksXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbnRlbnQgLmNvbC1zbS0zOm50aC1jaGlsZCg0bisxKSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQjY29udGVudCAuY29sLXNtLTQ6bnRoLWNoaWxkKDNuKzEpLFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtc20tNjpudGgtY2hpbGQoMm4rMSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Y2xlYXI6bGVmdDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGZpeGVkIGNvbHVtIGxlZnQgKyBjb250ZW50ICsgcmlnaHQqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgICNjb2x1bW4tbGVmdCAgLnByb2R1Y3QtbGF5b3V0IC5jb2wtbWQtMyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICB3aWR0aDogMTAwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbHVtbi1sZWZ0ICsgI2NvbnRlbnQgLnByb2R1Y3QtbGF5b3V0IC5jb2wtbWQtMyAnCiAgICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICB3aWR0aDogNTAlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHQjY29sdW1uLWxlZnQgKyAjY29udGVudCArICNjb2x1bW4tcmlnaHQgJwogICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtbGF5b3V0IC5jb2wtbWQtMyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICB3aWR0aDogMTAwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAjY29udGVudCArICNjb2x1bW4tcmlnaHQgLnByb2R1Y3QtbGF5b3V0ICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5jb2wtbWQtMyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICB3aWR0aDogMTAwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnLyogZml4ZWQgcHJvZHVjdCBsYXlvdXRzIHVzZWQgaW4gbGVmdCBhbmQgcmlnaHQgJwogICAgICAgICAgICAgICAgICAgICAgICAnY29sdW1ucyAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcjY29sdW1uLWxlZnQgLnByb2R1Y3QtbGF5b3V0LCAjY29sdW1uLXJpZ2h0ICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LWxheW91dCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0d2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGZpeGVkIG1vYmlsZSBjYXJ0IHF1YW50aXR5IGlucHV0ICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJy5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sW25hbWVePXF1YW50aXR5XSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWluLXdpZHRoOiA1MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcvKiBNaXNzaW5nIGZvY3VzIGFuZCBib3JkZXIgY29sb3IgdG8gb3ZlcndyaXRlICcKICAgICAgICAgICAgICAgICAgICAgICAgJ2Jvb3RzdHJhcCAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWluZm86aG92ZXIsIC5idG4taW5mbzphY3RpdmUsIC5idG4taW5mby5hY3RpdmUsICcKICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4taW5mby5kaXNhYmxlZCwgLmJ0bi1pbmZvW2Rpc2FibGVkXSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgYmFja2dyb3VuZC1jb2xvcjogI2RmNWMzOTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdodG1sW2Rpcj1ydGxdIC5jaGVja2JveCBpbnB1dFt0eXBlPSJjaGVja2JveCJdLFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICdodG1sW2Rpcj1ydGxdIC5jaGVja2JveC1pbmxpbmUgJwogICAgICAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT0iY2hlY2tib3giXSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnaHRtbFtkaXI9cnRsXSAucmFkaW8gaW5wdXRbdHlwZT0icmFkaW8iXSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnaHRtbFtkaXI9cnRsXSAucmFkaW8taW5saW5lIGlucHV0W3R5cGU9InJhZGlvIl0ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgbWFyZ2luLXRvcDogNHB4XFw5O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0biB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQgJwogICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB1bnNldDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHVuc2V0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmNvbnRhaW5lciAucm93OmZpcnN0LWNoaWxkICAuY29sLXNtLTQsICcKICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmNvbnRhaW5lciAucm93OmZpcnN0LWNoaWxkICAuY29sLXNtLTUgJwogICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgIGZsb2F0OiByaWdodDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnaHRtbFtkaXI9cnRsXSAjY2FydCAuZHJvcGRvd24tbWVudSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgbGVmdDogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICByaWdodDogYXV0bztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgIFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgaHRtbFtkaXI9cnRsXSAubmF2YmFyLW5hdiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIG1hcmdpbjogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgIFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICcgICAgaHRtbFtkaXI9cnRsXSAubmF2YmFyLW5hdiA+IGxpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgICB9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJyAgIFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nLAogICAgICAgICAgICAgJ0NvcHlUb015UGFnZU9ubHknOiAxLAogICAgICAgICAgICAgJ0Rlc3RQYXRoJzogJycsCiAgICAgICAgICAgICAnRmlsZU5hbWUnOiAndXBsb2FkL2NhdGFsb2cvdmlldy90aGVtZS9kZWZhdWx0L3N0eWxlc2hlZXQvc3R5bGVzaGVldC5jc3MnLAogICAgICAgICAgICAgJ0luc3RydWN0aW9ucyc6ICd0byBjdXN0b21pemUgYm9vdHN0cmFwMyBzdHlsZXNoZWV0JywKICAgICAgICAgICAgICdJc1RleHQnOiAxLAogICAgICAgICAgICAgJ1JlbW92ZUFmdGVyQ29weSc6IDAsCiAgICAgICAgICAgICAnU2xpZGVUeXBlJzogJ0luY2x1ZGUnLAogICAgICAgICAgICAgJ2FMYWJlbCc6ICdzdHlsZXNoZWV0LmNzcyd9LAogICAgICAnZW4tVVMnOiB7J0Fic29sdXRlUGF0aCc6IDAsCiAgICAgICAgICAgICAgICAnQ29udGVudCc6ICdib2R5IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IDQwMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogIzY2NjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bGluZS1oZWlnaHQ6IDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0d2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM0NDQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLyogZGVmYXVsdCBmb250IHNpemUgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmZhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE0cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLyogT3ZlcnJpZGUgdGhlIGJvb3RzdHJhcCBkZWZhdWx0cyAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdoMSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAzM3B4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2gyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDI3cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaDMge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMjFweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdoNCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2g1IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaDYge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTAuMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ege1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiBfQ29sb3JBXztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdhOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVnZW5kIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE4cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogN3B4IDBweFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xhYmVsIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdzZWxlY3QuZm9ybS1jb250cm9sLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9InRleHQiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9InBhc3N3b3JkIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJkYXRldGltZSJdLmZvcm0tY29udHJvbCwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT0iZGF0ZXRpbWUtbG9jYWwiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9ImRhdGUiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9Im1vbnRoIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJ0aW1lIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJ3ZWVrIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJudW1iZXIiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9ImVtYWlsIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJ1cmwiXS5mb3JtLWNvbnRyb2wsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9InNlYXJjaCJdLmZvcm0tY29udHJvbCwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT0idGVsIl0uZm9ybS1jb250cm9sLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPSJjb2xvciJdLmZvcm0tY29udHJvbCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5pbnB1dC1ncm91cCBpbnB1dCwgLmlucHV0LWdyb3VwIHNlbGVjdCwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmlucHV0LWdyb3VwIC5kcm9wZG93bi1tZW51LCAuaW5wdXQtZ3JvdXAgLnBvcG92ZXIgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTJweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFkZG9uIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0aGVpZ2h0OiAzMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy8qIEZpeCBzb21lIGJvb3RzdHJhcCBpc3N1ZXMgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnc3Bhbi5oaWRkZW4teHMsIHNwYW4uaGlkZGVuLXNtLCBzcGFuLmhpZGRlbi1tZCwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnc3Bhbi5oaWRkZW4tbGcge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGlubGluZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLm5hdi10YWJzIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Rpdi5yZXF1aXJlZCAuY29udHJvbC1sYWJlbDpiZWZvcmUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJcdGNvbnRlbnQ6ICcqICc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGMDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLyogR3JhZGVudCB0byBhbGwgZHJvcCBkb3duIG1lbnVzICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5kcm9wZG93bi1tZW51IGxpID4gYTpob3ZlciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjZmZmZmZmO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6IF9Db2xvckFfO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyMyM2ExZDEsICMxZjkwYmIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcvKiB0b3AgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogI0VFRUVFRTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UyZTJlMjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiA0cHggMHB4IDNweCAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbjogMCAwIDIwcHggMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AgLmNvbnRhaW5lciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMCAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AgI2Zvcm0tY3VycmVuY3kgLmN1cnJlbmN5LXNlbGVjdCxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCAjZm9ybS1sYW5ndWFnZSAubGFuZ3VhZ2Utc2VsZWN0IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AgI2Zvcm0tY3VycmVuY3kgLmN1cnJlbmN5LXNlbGVjdDpob3ZlcixcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCAjZm9ybS1sYW5ndWFnZSAubGFuZ3VhZ2Utc2VsZWN0OmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZmZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiBfQ29sb3JBXztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjMjNhMWQxLCAjMWY5MGJiKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCAuYnRuLWxpbmssICN0b3AtbGlua3MgbGksICN0b3AtbGlua3MgYSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM4ODg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgMXB4IDAgI0ZGRjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI3RvcCAuYnRuLWxpbms6aG92ZXIsICN0b3AtbGlua3MgYTpob3ZlciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM0NDQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI3RvcC1saW5rcyAuZHJvcGRvd24tbWVudSBhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjdG9wLWxpbmtzIC5kcm9wZG93bi1tZW51IGE6aG92ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjRkZGO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AgLmJ0bi1saW5rIHN0cm9uZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyN0b3AtbGlua3Mge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmctdG9wOiA2cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI3RvcC1saW5rcyBhICsgYSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWxlZnQ6IDE1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLyogbG9nbyAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjbG9nbyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luOiAwIDAgMTBweCAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy8qIHNlYXJjaCAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjc2VhcmNoIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNzZWFyY2ggLmlucHV0LWxnIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRoZWlnaHQ6IDQwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bGluZS1oZWlnaHQ6IDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMCAxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNzZWFyY2ggLmJ0bi1sZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDEwcHggMzVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAxcHggMCAjRkZGO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGNhcnQgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQgPiAuYnRuIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bGluZS1oZWlnaHQ6IDE4cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGRkY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQub3BlbiA+IC5idG4ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXI6IDFweCBzb2xpZCAjRTZFNkU2O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjNjY2O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJveC1zaGFkb3c6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQub3BlbiA+IC5idG46aG92ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjNDQ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNjYXJ0IC5kcm9wZG93bi1tZW51IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kOiAjZWVlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHotaW5kZXg6IDEwMDE7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI2NhcnQgLmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi13aWR0aDogMTAwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRvdmVyZmxvdy15OiBhdXRvO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1heC1oZWlnaHQ6IDgwMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRvdmVyZmxvdy14OiBoaWRkZW47XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtYXgtd2lkdGg6IDQ3OHB4KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NhcnQgLmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0d2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNjYXJ0IC5kcm9wZG93bi1tZW51IHRhYmxlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNjYXJ0IC5kcm9wZG93bi1tZW51IGxpID4gZGl2IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4td2lkdGg6IDQyN3B4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDAgMTBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1heC13aWR0aDogNDc4cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQjY2FydCAuZHJvcGRvd24tbWVudSBsaSA+IGRpdiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRtaW4td2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNjYXJ0IC5kcm9wZG93bi1tZW51IGxpIHAge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbjogMjBweCAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy8qIG1lbnUgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6IF9Db2xvckFfO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19Db2xvckFfLCBfQ29sb3JEXyk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogIzFmOTBiYiAjMWY5MGJiICMxNDVlN2E7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWluLWhlaWdodDogNDBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjbWVudSAubmF2ID4gbGkgPiBhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiAxMHB4IDE1cHggMTBweCAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi1oZWlnaHQ6IDE1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLm5hdiA+IGxpID4gYTpob3ZlciwgI21lbnUgLm5hdiA+IGxpLm9wZW4gPiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmctYm90dG9tOiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNtZW51IC5kcm9wZG93bi1pbm5lciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZGlzcGxheTogdGFibGU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLmRyb3Bkb3duLWlubmVyIHVsIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNtZW51IC5kcm9wZG93bi1pbm5lciBhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4td2lkdGg6IDE2MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDNweCAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNsZWFyOiBib3RoO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjMzMzMzMzO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTJweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjbWVudSAuZHJvcGRvd24taW5uZXIgbGkgYTpob3ZlciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGRkZGRkY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLnNlZS1hbGwge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi10b3A6IDAuNWVtO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjREREO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDNweCAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0LW1vei1ib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItcmFkaXVzOiAwIDAgM3B4IDNweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLnNlZS1hbGw6aG92ZXIsICNtZW51IC5zZWUtYWxsOmZvY3VzIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNmZmZmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogX0NvbG9yQV87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnIzIzYTFkMSwgIzFmOTBiYik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNtZW51ICNjYXRlZ29yeSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZmxvYXQ6IGxlZnQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTZweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXdlaWdodDogNzAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjZmZmO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtc2hhZG93OiAwIDFweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjbWVudSAuYnRuLW5hdmJhciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc3RyZXRjaDogZXhwYW5kZWQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGRkY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMnB4IDE4cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZmxvYXQ6IHJpZ2h0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6IF9Db2xvckFfO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyMyM2ExZDEsICMxZjkwYmIpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItY29sb3I6ICMxZjkwYmIgIzFmOTBiYiAjMTQ1ZTdhO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNtZW51IC5idG4tbmF2YmFyOmhvdmVyLCAjbWVudSAuYnRuLW5hdmJhcjpmb2N1cywgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI21lbnUgLmJ0bi1uYXZiYXI6YWN0aXZlLCAjbWVudSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLW5hdmJhci5kaXNhYmxlZCwgI21lbnUgLmJ0bi1uYXZiYXJbZGlzYWJsZWRdICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3tcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZmZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiBfQ29sb3JBXztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQjbWVudSAuZHJvcGRvd246aG92ZXIgLmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0ZGlzcGxheTogYmxvY2s7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0BtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNtZW51IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGJvcmRlci1yYWRpdXM6IDRweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I21lbnUgZGl2LmRyb3Bkb3duLWlubmVyID4gdWwubGlzdC11bnN0eWxlZCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRkaXNwbGF5OiBibG9jaztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I21lbnUgZGl2LmRyb3Bkb3duLW1lbnUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQjbWVudSAuZHJvcGRvd24taW5uZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0ZGlzcGxheTogYmxvY2s7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNtZW51IC5kcm9wZG93bi1pbm5lciBhIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdHdpZHRoOiAxMDAlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Y29sb3I6ICNmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNtZW51IC5kcm9wZG93bi1tZW51IGE6aG92ZXIsXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I21lbnUgLmRyb3Bkb3duLW1lbnUgdWwgbGkgYTpob3ZlciB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNtZW51IC5zZWUtYWxsIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdG1hcmdpbi10b3A6IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRib3JkZXI6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRib3JkZXItcmFkaXVzOiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Y29sb3I6ICNmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0fVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGNvbnRlbnQgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI2NvbnRlbnQge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi1oZWlnaHQ6IDYwMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNwcm9kdWN0LWNhdGVnb3J5ICNjb250ZW50LCAjcHJvZHVjdC1wcm9kdWN0ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyN0YWItZGVzY3JpcHRpb24sICNpbmZvcm1hdGlvbi1pbmZvcm1hdGlvbiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjY29udGVudCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxM3B4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGZvb3RlciAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb290ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi10b3A6IDMwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZy10b3A6IDMwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogIzMwMzAzMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2UyZTJlMjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb290ZXIgaHIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci10b3A6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2NjY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9vdGVyIGEge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjY2NjO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Zvb3RlciBhOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb290ZXIgaDUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJcdGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDEzcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLyogYWxlcnQgKi9cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmFsZXJ0IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiA4cHggMTRweCA4cHggMTRweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcvKiBicmVhZGNydW1iICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5icmVhZGNydW1iIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW46IDAgMCAyMHB4IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogOHB4IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnJlYWRjcnVtYiBpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJyZWFkY3J1bWIgPiBsaSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgMXB4IDAgI0ZGRjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiAwIDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJyZWFkY3J1bWIgPiBsaSArIGxpOmJlZm9yZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0Y29udGVudDogJyc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnJlYWRjcnVtYiA+IGxpOmFmdGVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRjb250ZW50OiAnJztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRkaXNwbGF5OiBibG9jaztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dG9wOiAtM3B4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHJpZ2h0OiAtNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHdpZHRoOiAyNnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGhlaWdodDogMjZweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjREREO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREREO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQtbW96LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0LW8tdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmJyZWFkY3J1bWIgPiBsaTo6YWZ0ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgIHRvcDogLTNweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICBsZWZ0OiAtNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgIHdpZHRoOiAyNnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgIGhlaWdodDogMjZweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEREQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEREQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgcmlnaHQ6IHVuc2V0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgIGJvcmRlci1yaWdodDogdW5zZXQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgYm9yZGVyLWJvdHRvbTp1bnNldDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnBhZ2luYXRpb24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbjogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcvKiBidXR0b25zICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idXR0b25zIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW46IDFlbSAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDcuNXB4IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMiksICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJzAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi14cyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiA5cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1zbSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxMC4ycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1sZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMTBweCAxNnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWdyb3VwID4gLmJ0biwgLmJ0bi1ncm91cCA+IC5kcm9wZG93bi1tZW51LCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWdyb3VwID4gLnBvcG92ZXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTJweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWdyb3VwID4gLmJ0bi14cyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiA5cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1ncm91cCA+IC5idG4tc20ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTAuMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZ3JvdXAgPiAuYnRuLWxnIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXNpemU6IDE1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1kZWZhdWx0IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogIzc3NztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJzAuNSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjZWVlZWVlLCAjZGRkZGRkKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLWNvbG9yOiAjZGRkZGRkICNkZGRkZGQgI2IzYjNiMyAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjYjdiN2I3O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tcHJpbWFyeSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNmZmZmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogX0NvbG9yQV87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnIzIzYTFkMSwgIzFmOTBiYik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogIzFmOTBiYiAjMWY5MGJiICMxNDVlN2E7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1wcmltYXJ5OmhvdmVyLCAuYnRuLXByaW1hcnk6YWN0aXZlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLXByaW1hcnkuYWN0aXZlLCAuYnRuLXByaW1hcnkuZGlzYWJsZWQsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tcHJpbWFyeVtkaXNhYmxlZF0ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICMxZjkwYmI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLXdhcm5pbmcge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjZmZmZmZmO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICNmYWE3MzI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI2ZiYjQ1MCwgI2Y4OTQwNik7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogI2Y4OTQwNiAjZjg5NDA2ICNhZDY3MDQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi13YXJuaW5nOmhvdmVyLCAuYnRuLXdhcm5pbmc6YWN0aXZlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLXdhcm5pbmcuYWN0aXZlLCAuYnRuLXdhcm5pbmcuZGlzYWJsZWQsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4td2FybmluZ1tkaXNhYmxlZF0ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJveC1zaGFkb3c6IGluc2V0IDAgMTAwMHB4IDAgcmdiYSgwLCAwLCAwLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcwLjEpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZGFuZ2VyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZmZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZGE0ZjQ5O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNlZTVmNWIsICNiZDM2MmYpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItY29sb3I6ICNiZDM2MmYgI2JkMzYyZiAjODAyNDIwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZGFuZ2VyOmhvdmVyLCAuYnRuLWRhbmdlcjphY3RpdmUsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZGFuZ2VyLmFjdGl2ZSwgLmJ0bi1kYW5nZXIuZGlzYWJsZWQsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tZGFuZ2VyW2Rpc2FibGVkXSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym94LXNoYWRvdzogaW5zZXQgMCAxMDAwcHggMCByZ2JhKDAsIDAsIDAsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJzAuMSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1zdWNjZXNzIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogI2ZmZmZmZjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiAjNWJiNzViO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyM2MmM0NjIsICM1MWEzNTEpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItY29sb3I6ICM1MWEzNTEgIzUxYTM1MSAjMzg3MDM4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4tc3VjY2Vzczpob3ZlciwgLmJ0bi1zdWNjZXNzOmFjdGl2ZSwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1zdWNjZXNzLmFjdGl2ZSwgLmJ0bi1zdWNjZXNzLmRpc2FibGVkLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLXN1Y2Nlc3NbZGlzYWJsZWRdIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3gtc2hhZG93OiBpbnNldCAwIDEwMDBweCAwIHJnYmEoMCwgMCwgMCwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnMC4xKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWluZm8ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjZmZmZmZmO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICNkZjVjMzk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnI2UwNjM0MiwgI2RjNTEyYyk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogI2RjNTEyYyAjZGM1MTJjICNhMjM3MWE7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1pbmZvOmhvdmVyLCAuYnRuLWluZm86YWN0aXZlLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWluZm8uYWN0aXZlLCAuYnRuLWluZm8uZGlzYWJsZWQsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4taW5mb1tkaXNhYmxlZF0ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogI2RmNWMzOTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWxpbmsge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjdXJzb3I6IHBvaW50ZXI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICMyM0ExRDE7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLXJhZGl1czogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWxpbmssIC5idG4tbGluazphY3RpdmUsIC5idG4tbGlua1tkaXNhYmxlZF0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3gtc2hhZG93OiBub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4taW52ZXJzZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNmZmZmZmY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogIzM2MzYzNjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjNDQ0NDQ0LCAjMjIyMjIyKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLWNvbG9yOiAjMjIyMjIyICMyMjIyMjIgIzAwMDAwMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWludmVyc2U6aG92ZXIsIC5idG4taW52ZXJzZTphY3RpdmUsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4taW52ZXJzZS5hY3RpdmUsIC5idG4taW52ZXJzZS5kaXNhYmxlZCwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1pbnZlcnNlW2Rpc2FibGVkXSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0YmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjMzMzMzMzLCAjMTExMTExKTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcvKiBsaXN0IGdyb3VwICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5saXN0LWdyb3VwIGEge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlcjogMXB4IHNvbGlkICNEREREREQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM4ODg4ODg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogOHB4IDEycHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmxpc3QtZ3JvdXAgYS5hY3RpdmUsIC5saXN0LWdyb3VwIGEuYWN0aXZlOmhvdmVyLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcubGlzdC1ncm91cCBhOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogIzQ0NDQ0NDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kOiAjZWVlZWVlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlcjogMXB4IHNvbGlkICNEREREREQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgMXB4IDAgI0ZGRjtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcvKiBjYXJvdXNlbCAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuY2Fyb3VzZWwtY2FwdGlvbiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNGRkZGRkY7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1zaGFkb3c6IDAgMXB4IDAgIzAwMDAwMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2OmJlZm9yZSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgIlx0Y29udGVudDogJ1xcZjA1Myc7XHJcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQ6YmVmb3JlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAiXHRjb250ZW50OiAnXFxmMDU0JztcclxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLyogcHJvZHVjdCBsaXN0ICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0b3ZlcmZsb3c6IGF1dG87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmltYWdlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmltYWdlIGEge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIC5pbWFnZSBhOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRvcGFjaXR5OiAwLjg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmltYWdlIGltZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWxlZnQ6IGF1dG87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LWdyaWQgLnByb2R1Y3QtdGh1bWIgLmltYWdlIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmbG9hdDogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtbGlzdCAucHJvZHVjdC10aHVtYiAuaW1hZ2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZsb2F0OiBsZWZ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDAgMTVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIGg0IHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmb250LXdlaWdodDogYm9sZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC10aHVtYiAuY2FwdGlvbiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMCAyMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi1oZWlnaHQ6IDE4MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtdGh1bWIgLmNhcHRpb24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1sZWZ0OiAyMzBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LWdyaWQgLnByb2R1Y3QtdGh1bWIgLmNhcHRpb24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1pbi1oZWlnaHQ6IDIxMHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDAgMTBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0BtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC1saXN0IC5wcm9kdWN0LXRodW1iIC5jYXB0aW9uIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4taGVpZ2h0OiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1sZWZ0OiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHBhZGRpbmc6IDAgMTBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC1ncmlkIC5wcm9kdWN0LXRodW1iIC5jYXB0aW9uIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtaW4taGVpZ2h0OiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLnJhdGluZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnJhdGluZyAuZmEtc3RhY2sge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogOHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5yYXRpbmcgLmZhLXN0YXItbyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM5OTk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5yYXRpbmcgLmZhLXN0YXIge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjRkMwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtc2l6ZTogMTVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcucmF0aW5nIC5mYS1zdGFyICsgLmZhLXN0YXItbyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICNFNjk1MDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaDIucHJpY2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbjogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC10aHVtYiAucHJpY2Uge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNvbG9yOiAjNDQ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIC5wcmljZS1uZXcge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLnByaWNlLW9sZCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM5OTk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLnByaWNlLXRheCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM5OTk7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC1zaXplOiAxMnB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGRpc3BsYXk6IGJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIC5idXR0b24tZ3JvdXAge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0b3ZlcmZsb3c6IGF1dG87XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtbGlzdCAucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0LnByb2R1Y3QtbGlzdCAucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRcdGJvcmRlci1sZWZ0OiBub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIGJ1dHRvbiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0d2lkdGg6IDYwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRib3JkZXI6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGZsb2F0OiBsZWZ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Y29sb3I6ICM4ODg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bGluZS1oZWlnaHQ6IDM4cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0dGV4dC1hbGlnbjogY2VudGVyO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmJ1dHRvbi1ncm91cCBidXR0b24gKyBidXR0b24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHdpZHRoOiAyMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGRkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LXRodW1iIC5idXR0b24tZ3JvdXAgYnV0dG9uOmhvdmVyIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjb2xvcjogIzQ0NDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRjdXJzb3I6IHBvaW50ZXI7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdC5wcm9kdWN0LXRodW1iIC5idXR0b24tZ3JvdXAgYnV0dG9uLCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIGJ1dHRvbiArIGJ1dHRvbiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHR3aWR0aDogMzMuMzMlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQucHJvZHVjdC10aHVtYiAuYnV0dG9uLWdyb3VwIGJ1dHRvbiwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtdGh1bWIgLmJ1dHRvbi1ncm91cCBidXR0b24gKyBidXR0b24ge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0d2lkdGg6IDMzLjMzJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnRodW1ibmFpbHMge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG92ZXJmbG93OiBhdXRvO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGNsZWFyOiBib3RoO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdGxpc3Qtc3R5bGU6IG5vbmU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0cGFkZGluZzogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW46IDA7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnRodW1ibmFpbHMgPiBsaSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnRodW1ibmFpbHMge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdG1hcmdpbi1sZWZ0OiAtMjBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcudGh1bWJuYWlscyA+IGltZyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0d2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmltYWdlLWFkZGl0aW9uYWwgYSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRwYWRkaW5nOiA1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0ZGlzcGxheTogYmxvY2s7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0Ym9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuaW1hZ2UtYWRkaXRpb25hbCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWF4LXdpZHRoOiA3OHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy50aHVtYm5haWxzIC5pbWFnZS1hZGRpdGlvbmFsIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRmbG9hdDogbGVmdDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHRtYXJnaW4tbGVmdDogMjBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtbGctMjpudGgtY2hpbGQoNm4rMSksXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbnRlbnQgLmNvbC1sZy0zOm50aC1jaGlsZCg0bisxKSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQjY29udGVudCAuY29sLWxnLTQ6bnRoLWNoaWxkKDNuKzEpLFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtbGctNjpudGgtY2hpbGQoMm4rMSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Y2xlYXI6bGVmdDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbnRlbnQgLmNvbC1tZC0yOm50aC1jaGlsZCg2bisxKSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQjY29udGVudCAuY29sLW1kLTM6bnRoLWNoaWxkKDRuKzEpLFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtbWQtNDpudGgtY2hpbGQoM24rMSksXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbnRlbnQgLmNvbC1tZC02Om50aC1jaGlsZCgybisxKSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0XHRjbGVhcjpsZWZ0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtc20tMjpudGgtY2hpbGQoNm4rMSksXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbnRlbnQgLmNvbC1zbS0zOm50aC1jaGlsZCg0bisxKSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQjY29udGVudCAuY29sLXNtLTQ6bnRoLWNoaWxkKDNuKzEpLFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdCNjb250ZW50IC5jb2wtc20tNjpudGgtY2hpbGQoMm4rMSkge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdFx0Y2xlYXI6bGVmdDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHR9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGZpeGVkIGNvbHVtIGxlZnQgKyBjb250ZW50ICsgcmlnaHQqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICNjb2x1bW4tbGVmdCAgLnByb2R1Y3QtbGF5b3V0IC5jb2wtbWQtMyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICB3aWR0aDogMTAwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0I2NvbHVtbi1sZWZ0ICsgI2NvbnRlbnQgLnByb2R1Y3QtbGF5b3V0ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5jb2wtbWQtMyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICB3aWR0aDogNTAlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHQjY29sdW1uLWxlZnQgKyAjY29udGVudCArICNjb2x1bW4tcmlnaHQgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLnByb2R1Y3QtbGF5b3V0IC5jb2wtbWQtMyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICB3aWR0aDogMTAwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAjY29udGVudCArICNjb2x1bW4tcmlnaHQgLnByb2R1Y3QtbGF5b3V0ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5jb2wtbWQtMyB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICB3aWR0aDogMTAwJTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLyogZml4ZWQgcHJvZHVjdCBsYXlvdXRzIHVzZWQgaW4gbGVmdCBhbmQgcmlnaHQgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnY29sdW1ucyAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcjY29sdW1uLWxlZnQgLnByb2R1Y3QtbGF5b3V0LCAjY29sdW1uLXJpZ2h0ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5wcm9kdWN0LWxheW91dCB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0d2lkdGg6IDEwMCU7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy8qIGZpeGVkIG1vYmlsZSBjYXJ0IHF1YW50aXR5IGlucHV0ICovXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sW25hbWVePXF1YW50aXR5XSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1x0bWluLXdpZHRoOiA1MHB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcvKiBNaXNzaW5nIGZvY3VzIGFuZCBib3JkZXIgY29sb3IgdG8gb3ZlcndyaXRlICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Jvb3RzdHJhcCAqL1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuYnRuLWluZm86aG92ZXIsIC5idG4taW5mbzphY3RpdmUsICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5idG4taW5mby5hY3RpdmUsIC5idG4taW5mby5kaXNhYmxlZCwgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLmJ0bi1pbmZvW2Rpc2FibGVkXSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgYmFja2dyb3VuZC1jb2xvcjogI2RmNWMzOTtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnfVxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdodG1sW2Rpcj1ydGxdIC5jaGVja2JveCBpbnB1dFt0eXBlPSJjaGVja2JveCJdLFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICdodG1sW2Rpcj1ydGxdIC5jaGVja2JveC1pbmxpbmUgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT0iY2hlY2tib3giXSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaHRtbFtkaXI9cnRsXSAucmFkaW8gaW5wdXRbdHlwZT0icmFkaW8iXSxcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaHRtbFtkaXI9cnRsXSAucmFkaW8taW5saW5lIGlucHV0W3R5cGU9InJhZGlvIl0gJwogICAgICAgICAgICAgICAgICAgICAgICAgICAne1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgbWFyZ2luLXRvcDogNHB4XFw5O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0biAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNXB4O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmlucHV0LWdyb3VwICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB1bnNldDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHVuc2V0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWxbZGlyPXJ0bF0gLmNvbnRhaW5lciAucm93OmZpcnN0LWNoaWxkICAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuY29sLXNtLTQsIGh0bWxbZGlyPXJ0bF0gLmNvbnRhaW5lciAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcucm93OmZpcnN0LWNoaWxkICAuY29sLXNtLTUge1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgIGZsb2F0OiByaWdodDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnaHRtbFtkaXI9cnRsXSAjY2FydCAuZHJvcGRvd24tbWVudSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgbGVmdDogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICByaWdodDogYXV0bztcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ31cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgIFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgaHRtbFtkaXI9cnRsXSAubmF2YmFyLW5hdiB7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgICAgIG1hcmdpbjogMDtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIH1cclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgIFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICcgICAgaHRtbFtkaXI9cnRsXSAubmF2YmFyLW5hdiA+IGxpIHtcclxuJwogICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgICB9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgIFxyXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICd9XHJcbicKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xyXG4nLAogICAgICAgICAgICAgICAgJ0NvcHlUb015UGFnZU9ubHknOiAxLAogICAgICAgICAgICAgICAgJ0Rlc3RQYXRoJzogJycsCiAgICAgICAgICAgICAgICAnRmlsZU5hbWUnOiAndXBsb2FkL2NhdGFsb2cvdmlldy90aGVtZS9kZWZhdWx0L3N0eWxlc2hlZXQvc3R5bGVzaGVldC5jc3MnLAogICAgICAgICAgICAgICAgJ0luc3RydWN0aW9ucyc6ICd0byBjdXN0b21pemUgYm9vdHN0cmFwMyBzdHlsZXNoZWV0JywKICAgICAgICAgICAgICAgICdJc1RleHQnOiAxLAogICAgICAgICAgICAgICAgJ1JlbW92ZUFmdGVyQ29weSc6IDAsCiAgICAgICAgICAgICAgICAnU2xpZGVUeXBlJzogJ0luY2x1ZGUnLAogICAgICAgICAgICAgICAgJ2FMYWJlbCc6ICdzdHlsZXNoZWV0LmNzcyd9fX0K
Copyright © 2024 by WebAsOne LLC, All Rights Reserved