GET
H/1.1
|
200
OK
|
Primary Request
/
Show response
www.offznew.dev.web.cayman.com.br/
Redirect Chain
-
https://offznew.dev.web.cayman.com.br/
-
https://www.offznew.dev.web.cayman.com.br/
|
2 MB
2 MB
|
530ms
287ms
|
Document
text/html |
3.95.112.126
AMAZON-AES
|
|
|
GET
H2
|
200
|
3.4.3
Show response
cdn.tailwindcss.com/
Redirect Chain
-
https://cdn.tailwindcss.com/
-
https://cdn.tailwindcss.com/3.4.3
|
357 KB
110 KB
|
15ms
15ms
|
Script
text/javascript |
2606:4700:10::6816:1590
CLOUDFLARENET
|
|
|
GET
H2
|
200
|
css2
fonts.googleapis.com/
|
17 KB
1 KB
|
224ms
49ms
|
Stylesheet
text/css |
2a00:1450:4001:81c::200a
GOOGLE
|
|
General
- Full URL
- https://fonts.googleapis.com/css2?family=Kanit:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap
- Requested by
- Host: www.offznew.dev.web.cayman.com.br
URL: https://www.offznew.dev.web.cayman.com.br/
- Protocol
- H2
- Security
- TLS 1.3,
, AES_128_GCM
- Server
-
2a00:1450:4001:81c::200a
Frankfurt am Main, Germany,
ASN15169
(GOOGLE, US),
- Reverse DNS
- Software
-
ESF /
- Resource Hash
- 9b8c2f1ce7c5fc45f3b3f151ed0c1a36ed60da9045ff857a32b9095ed6948e26
- Security Headers
-
Name |
Value |
Strict-Transport-Security |
max-age=31536000 |
X-Content-Type-Options |
nosniff |
X-Frame-Options |
SAMEORIGIN |
X-Xss-Protection |
0 |
|
GET
DATA
|
200
OK
|
truncated
/
|
227 KB
0
|
|
Stylesheet
text/css |
|
|
|
GET
DATA
|
200
OK
|
truncated
/
|
29 KB
0
|
|
Stylesheet
text/css |
|
|
|
GET
H2
|
200
|
js
Show response
www.googletagmanager.com/gtag/
|
301 KB
100 KB
|
140ms
60ms
|
Script
application/javascript |
2a00:1450:4001:806::2008
GOOGLE
|
|
|
GET
H/1.1
|
200
OK
|
logo-offz.svg
www.offznew.dev.web.cayman.com.br/imagens/
|
4 KB
2 KB
|
338ms
122ms
|
Image
image/svg+xml |
3.95.112.126
AMAZON-AES
|
|
|
GET
H/1.1
|
200
OK
|
logo-offz.svg
www.offznew.dev.web.cayman.com.br/imagens/
|
4 KB
2 KB
|
336ms
119ms
|
Image
image/svg+xml |
3.95.112.126
AMAZON-AES
|
|
|
GET
H2
|
200
|
01052024102202000000533153.png
files.bewezy.com/thumbs/1920/385/97dcf0f6b06030bfb21d7ce228be81ad/
|
44 KB
45 KB
|
95ms
45ms
|
Image
image/webp |
2606:4700:3036::6815:3133
CLOUDFLARENET
|
|
|
GET
H2
|
200
|
01052024102212000000581290.png
files.bewezy.com/thumbs/1920/385/97dcf0f6b06030bfb21d7ce228be81ad/
|
44 KB
45 KB
|
89ms
39ms
|
Image
image/webp |
2606:4700:3036::6815:3133
CLOUDFLARENET
|
|
|
GET
H2
|
200
|
01052024102220000000929326.png
files.bewezy.com/thumbs/1920/385/97dcf0f6b06030bfb21d7ce228be81ad/
|
44 KB
45 KB
|
85ms
36ms
|
Image
image/webp |
2606:4700:3036::6815:3133
CLOUDFLARENET
|
|
|
GET
H2
|
200
|
0801202414290400000061545.svg
files.caymanweb.com.br/97dcf0f6b06030bfb21d7ce228be81ad/
|
2 KB
1 KB
|
620ms
181ms
|
Image
image/svg+xml |
69.163.180.60
DREAMHOST-AS
|
|
General
- Full URL
- https://files.caymanweb.com.br/97dcf0f6b06030bfb21d7ce228be81ad/0801202414290400000061545.svg
- Requested by
- Host: text
URL: data:text/css;base64,LyogQ1NTIFBBRFLDg08gKi8NCjpyb290IHsNCiAgICAtLWdsb2JhbC1mb250OiAnQXJpYWwnLCBzYW5zLXNlcmlmOw0KICAgIC0tZGVmYXVsdC1mb250LWZhbWlseTonS2FuaXQnOw0KCS0tYW55LWl0ZW0tcmVnaXN0ZXJlZC1jb2xvcjogI0E1QTVBNTsNCgktLWFueS1pdGVtLXJlZ2lzdGVyZWQtYm9yZGVyLWNvbG9yOiAjRDRENEQ0Ow0KICAgIC0tcG9zdC1jb2xvci1saW5rOiAjMTJhMTliOw0KICAgIC0taW5wdXQtc2hhZG93LWNvbG9yLWhvdmVyOiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7DQogICAgLS1jb2xvci1pbnB1dC1ib3JkZXI6ICNjZWQ0ZGE7DQogICAgLS1jb2xvci1pbnB1dDogIzQ5NTA1NzsNCgktLW1zZy1vay1jb2xvcjogIzQ2ODg0NzsNCgktLW1zZy1vay1ib3JkZXItY29sb3I6ICM5RkM3NkY7DQoJLS1tc2ctb2stYmFja2dyb3VuZC1jb2xvcjogI0RGRjBEODsNCiAgICAtLW1zZy1lcnJvci1jb2xvcjogI0I5NEE0ODsNCgktLW1zZy1lcnJvci1ib3JkZXItY29sb3I6ICNGMjdCODE7DQoJLS1tc2ctZXJyb3ItYmFja2dyb3VuZC1jb2xvcjogI0YyREVERTsNCiAgICAtLXBhY2UtY29sb3I6ICNGRkY7DQogICAgLS1zZWxlY3QtY29sb3I6ICNGRkY7DQogICAgLS1lcnJvci00MDQtY29sb3I6ICNGRkY7DQogICAgLS1jb2xvci13aGl0ZTogI2ZmZjsNCiAgICAtLWNvbG9yLWJsYWNrOiAjMDAwOw0KICAgIC0tY29sb3ItcmVkOiAjZmYwMDAwOw0KICAgIC0tY29sb3ItZ3JlZW46ICMwOTA7DQogICAgLS1idXR0b24tcHJpbWFyeS1jb2xvcjogIzIzMjMyNDsNCiAgICAtLWJ1dHRvbi1wcmltYXJ5LWJnOiAjYzRjNGM0Ow0KICAgIC0tYnV0dG9uLXByaW1hcnktaG92ZXItY29sb3I6ICMyMzIzMjQ7DQogICAgLS1idXR0b24tcHJpbWFyeS1ob3Zlci1iZzogIzg2ODU4NTsNCiAgICAtLWJ1dHRvbi1wcmltYXJ5LWJvcmRlci1yYWRpdXM6IDI0cHg7DQogICAgLS1idXR0b24tcHJpbWFyeS1wYWRkaW5nOiAxMnB4IDI0cHg7DQogICAgLS1idXR0b24tcHJpbWFyeS1ib3gtc2hhZG93OiBub25lOw0KICAgIC0tYnV0dG9uLXByaW1hcnktYm94LXNoYWRvdy1ob3Zlcjogbm9uZTsNCiAgICAtLWJ1dHRvbi1wcmltYXJ5LWJvcmRlcjogbm9uZTsNCiAgICAtLWJ1dHRvbi1wcmltYXJ5LWJvcmRlci1ob3Zlcjogbm9uZTsNCiAgICAtLWJ1dHRvbi1wcmltYXJ5LWZvbnQtd2VpZ2h0OiBub3JtYWw7DQogICAgLS1idXR0b24tc2Vjb25kYXJ5LWNvbG9yOiAjMjMyMzI0Ow0KICAgIC0tYnV0dG9uLXNlY29uZGFyeS1iZzogI2M0YzRjNDsNCiAgICAtLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItY29sb3I6ICMyMzIzMjQ7DQogICAgLS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJnOiAjODY4NTg1Ow0KICAgIC0tYnV0dG9uLXNlY29uZGFyeS1ib3JkZXItcmFkaXVzOiAyNHB4Ow0KICAgIC0tYnV0dG9uLXNlY29uZGFyeS1wYWRkaW5nOiAxMnB4IDI0cHg7DQogICAgLS1idXR0b24tc2Vjb25kYXJ5LWJveC1zaGFkb3c6IG5vbmU7DQogICAgLS1idXR0b24tc2Vjb25kYXJ5LWJveC1zaGFkb3ctaG92ZXI6IG5vbmU7DQogICAgLS1idXR0b24tc2Vjb25kYXJ5LWJvcmRlcjogbm9uZTsNCiAgICAtLWJ1dHRvbi1zZWNvbmRhcnktYm9yZGVyLWhvdmVyOiBub25lOw0KICAgIC0tYnV0dG9uLXNlY29uZGFyeS1mb250LXdlaWdodDogbm9ybWFsOw0KICAgIC0tYnV0dG9uLXRlcnRpYXJ5LWNvbG9yOiAjMjMyMzI0Ow0KICAgIC0tYnV0dG9uLXRlcnRpYXJ5LWJnOiAjYzRjNGM0Ow0KICAgIC0tYnV0dG9uLXRlcnRpYXJ5LWhvdmVyLWNvbG9yOiAjMjMyMzI0Ow0KICAgIC0tYnV0dG9uLXRlcnRpYXJ5LWhvdmVyLWJnOiAjODY4NTg1Ow0KICAgIC0tYnV0dG9uLXRlcnRpYXJ5LWJvcmRlci1yYWRpdXM6IDI0cHg7DQogICAgLS1idXR0b24tdGVydGlhcnktcGFkZGluZzogMTJweCAyNHB4Ow0KICAgIC0tYnV0dG9uLXRlcnRpYXJ5LWJveC1zaGFkb3c6IG5vbmU7DQogICAgLS1idXR0b24tdGVydGlhcnktYm94LXNoYWRvdy1ob3Zlcjogbm9uZTsNCiAgICAtLWJ1dHRvbi10ZXJ0aWFyeS1ib3JkZXI6IG5vbmU7DQogICAgLS1idXR0b24tdGVydGlhcnktYm9yZGVyLWhvdmVyOiBub25lOw0KICAgIC0tYnV0dG9uLXRlcnRpYXJ5LWZvbnQtd2VpZ2h0OiBub3JtYWw7DQogICAgLS1idXR0b24tcXVhdGVybmFyeS1jb2xvcjogIzIzMjMyNDsNCiAgICAtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWJnOiAjYzRjNGM0Ow0KICAgIC0tYnV0dG9uLXF1YXRlcm5hcnktaG92ZXItY29sb3I6ICMyMzIzMjQ7DQogICAgLS1idXR0b24tcXVhdGVybmFyeS1ob3Zlci1iZzogIzg2ODU4NTsNCiAgICAtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWJvcmRlci1yYWRpdXM6IDI0cHg7DQogICAgLS1idXR0b24tcXVhdGVybmFyeS1wYWRkaW5nOiAxMnB4IDI0cHg7DQogICAgLS1idXR0b24tcXVhdGVybmFyeS1ib3gtc2hhZG93OiBub25lOw0KICAgIC0tYnV0dG9uLXF1YXRlcm5hcnktYm94LXNoYWRvdy1ob3Zlcjogbm9uZTsNCiAgICAtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWJvcmRlcjogbm9uZTsNCiAgICAtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWJvcmRlci1ob3Zlcjogbm9uZTsNCiAgICAtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWZvbnQtd2VpZ2h0OiBub3JtYWw7DQogICAgLS1jb2xvci1zZWxlY3Rpb24tY29sb3I6I0ZGRjsNCiAgICAtLWNvbG9yLXNlbGVjdGlvbi1iYWNrZ3JvdW5kOiMwMDA7DQoNCiAgICAtLWZvbnQtZGVmYXVsdDogJ0FyaWFsJywgc2Fucy1zZXJpZjsNCg0KICAgIC0tcGFyYWdyYXBocy1mb250LWZhbWlseTogdmFyKC0tZm9udC1kZWZhdWx0KTsNCiAgICAtLXBhcmFncmFwaHMtZm9udC1zaXplOiAxZW07DQogICAgLS1wYXJhZ3JhcGhzLWxpbmUtaGVpZ2h0OiAxOw0KDQogICAgLS1oZWFkaW5nLWZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRlZmF1bHQpOw0KDQogICAgLyoqIEgxICovDQogICAgLS1oMS1mb250LXNpemUgIDogNTJweDsNCiAgICAtLWgxLWxpbmUtaGVpZ2h0OiAxOw0KICAgICAgICAvKiogSDIgKi8NCiAgICAtLWgyLWZvbnQtc2l6ZSAgOiA0OHB4Ow0KICAgIC0taDItbGluZS1oZWlnaHQ6IDE7DQogICAgICAgIC8qKiBIMyAqLw0KICAgIC0taDMtZm9udC1zaXplICA6IDMycHg7DQogICAgLS1oMy1saW5lLWhlaWdodDogIDE7DQogICAgICAgIC8qKiBINCAqLw0KICAgIC0taDQtZm9udC1zaXplICA6IDI0cHg7DQogICAgLS1oNC1saW5lLWhlaWdodDogIDE7DQogICAgICAgIC8qKiBINSAqLw0KICAgIC0taDUtZm9udC1zaXplICA6IDIwcHg7DQogICAgLS1oNS1saW5lLWhlaWdodDogIDE7DQogICAgICAgIC8qKiBINiAqLw0KICAgIC0taDYtZm9udC1zaXplICA6IDE2cHg7DQogICAgLS1oNi1saW5lLWhlaWdodDogIDE7DQoNCiAgICAvKioNCiAgICAgKiAgVGV4dG8gUHJpbcOhcmlvDQogICAgICovDQogICAgLS10ZXh0LXByaW1hcnktZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGVmYXVsdCk7DQogICAgLS10ZXh0LXByaW1hcnktY29sb3I6ICAgICAgICMwMDAwMDA7DQogICAgLS10ZXh0LXByaW1hcnktZm9udC13ZWlnaHQ6IDE7DQogICAgLS10ZXh0LXByaW1hcnktY29sb3ItaG92ZXI6ICMwMDAwMDA7DQoNCiAgICAvKioNCiAgICAgKiAgVGV4dG8gU2VjdW5kw6FyaW8NCiAgICAgKi8NCiAgICAtLXRleHQtc2Vjb25kYXJ5LWZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRlZmF1bHQpOw0KICAgIC0tdGV4dC1zZWNvbmRhcnktY29sb3I6ICAgICAgICMwMDAwMDA7DQogICAgLS10ZXh0LXNlY29uZGFyeS1mb250LXdlaWdodDogMTsNCiAgICAtLXRleHQtc2Vjb25kYXJ5LWNvbG9yLWhvdmVyOiAjMDAwMDAwOw0KDQogICAgLyoqDQogICAgICogIFRleHRvIFRlcmNpw6FyaW8NCiAgICAgKi8NCiAgICAtLXRleHQtdGVydGlhcnktZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGVmYXVsdCk7DQogICAgLS10ZXh0LXRlcnRpYXJ5LWNvbG9yOiAgICAgICAjMDAwMDAwOw0KICAgIC0tdGV4dC10ZXJ0aWFyeS1mb250LXdlaWdodDogMTsNCiAgICAtLXRleHQtdGVydGlhcnktY29sb3ItaG92ZXI6ICMwMDAwMDA7DQoNCiAgICAvKioNCiAgICAgKiAgVGV4dG8gUXVhcnRlbsOhcmlvDQogICAgICovDQogICAgLS10ZXh0LXF1YXRlcm5hcnktZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGVmYXVsdCk7DQogICAgLS10ZXh0LXF1YXRlcm5hcnktY29sb3I6ICAgICAgICMwMDAwMDA7DQogICAgLS10ZXh0LXF1YXRlcm5hcnktZm9udC13ZWlnaHQ6IDE7DQogICAgLS10ZXh0LXF1YXRlcm5hcnktY29sb3ItaG92ZXI6ICMwMDAwMDA7DQoNCiAgICAvKioNCiAgICAgKiAgVGV4dG8gUXVpbsOhcmlvDQogICAgICovDQogICAgLS10ZXh0LXF1aW5hcnktZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGVmYXVsdCk7DQogICAgLS10ZXh0LXF1aW5hcnktY29sb3I6ICAgICAgICMwMDAwMDA7DQogICAgLS10ZXh0LXF1aW5hcnktZm9udC13ZWlnaHQ6IDE7DQogICAgLS10ZXh0LXF1aW5hcnktY29sb3ItaG92ZXI6ICMwMDAwMDA7DQoNCiAgICAvKioNCiAgICAgKiAgVGV4dG8gU2Vuw6FyaW8NCiAgICAgKi8NCiAgICAtLXRleHQtc2VuYXJ5LWZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRlZmF1bHQpOw0KICAgIC0tdGV4dC1zZW5hcnktY29sb3I6ICAgICAgICMwMDAwMDA7DQogICAgLS10ZXh0LXNlbmFyeS1mb250LXdlaWdodDogMTsNCiAgICAtLXRleHQtc2VuYXJ5LWNvbG9yLWhvdmVyOiAjMDAwMDAwOw0KDQogICAgLyoqDQogICAgKiDDjWNvbmVzDQogICAgICovDQoNCiAgICAtLWljb24tcHJpbWFyeS1jb2xvcjogICMwMDAwMDA7DQogICAgLS1pY29uLXByaW1hcnktZm9udC13ZWlnaHQ6IDUwMDsNCiAgICAtLWljb24tcHJpbWFyeS1zaXplOiAxNnB4Ow0KICAgIC8qIEhPVkVSICovDQogICAgLS1pY29uLXByaW1hcnktaG92ZXItY29sb3I6ICMwMDAwMDA7DQoNCn0NCg0KLypGT05URVMgLyBUSVBPR1JBRklBUyovDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpICp7DQogICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGVmYXVsdCk7DQp9DQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIHAsDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIHAgKiwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmJ1dHRvbi1wcmltYXJ5LA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXNlY29uZGFyeSwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmJ1dHRvbi10ZXJ0aWFyeSwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmJ1dHRvbi1xdWF0ZXJuYXJ5LA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSB1bCwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgb2wsDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIGF7DQogICAgZm9udC1mYW1pbHk6IHZhcigtLXBhcmFncmFwaHMtZm9udC1mYW1pbHkpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSBwLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSBwICosDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIGF7DQogICAgZm9udC1zaXplOiB2YXIoLS1wYXJhZ3JhcGhzLWZvbnQtc2l6ZSk7DQogICAgbGluZS1oZWlnaHQ6IHZhcigtLXBhcmFncmFwaHMtbGluZS1oZWlnaHQpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dG8tZWRpdG9yLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dG8tZWRpdG9yIHVsLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dG8tZWRpdG9yIG9sLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dG8tZWRpdG9yIG9sICosDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC50ZXh0by1lZGl0b3IgdWwgKnsNCiAgICBsaW5lLWhlaWdodDogdmFyKC0tcGFyYWdyYXBocy1saW5lLWhlaWdodCk7DQp9DQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIGgxLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSBoMSAqLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSBoMiwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDIgKiwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDMsDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIGgzICosDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIGg0LA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSBoNCAqLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSBoNSwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDUgKiwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDYsDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIGg2ICp7DQogICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRpbmctZm9udC1mYW1pbHkpOw0KICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7DQp9DQoNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDF7DQogICAgZm9udC1zaXplOiAgdmFyKC0taDEtZm9udC1zaXplKTsNCiAgICBsaW5lLWhlaWdodDogIHZhcigtLWgxLWxpbmUtaGVpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDJ7DQogICAgZm9udC1zaXplOiAgdmFyKC0taDItZm9udC1zaXplKTsNCiAgICBsaW5lLWhlaWdodDogIHZhcigtLWgyLWxpbmUtaGVpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDN7DQogICAgZm9udC1zaXplOiAgdmFyKC0taDMtZm9udC1zaXplKTsNCiAgICBsaW5lLWhlaWdodDogIHZhcigtLWgzLWxpbmUtaGVpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDR7DQogICAgZm9udC1zaXplOiAgdmFyKC0taDQtZm9udC1zaXplKTsNCiAgICBsaW5lLWhlaWdodDogIHZhcigtLWg0LWxpbmUtaGVpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDV7DQogICAgZm9udC1zaXplOiAgdmFyKC0taDUtZm9udC1zaXplKTsNCiAgICBsaW5lLWhlaWdodDogIHZhcigtLWg1LWxpbmUtaGVpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgaDZ7DQogICAgZm9udC1zaXplOiAgdmFyKC0taDYtZm9udC1zaXplKTsNCiAgICBsaW5lLWhlaWdodDogIHZhcigtLWg2LWxpbmUtaGVpZ2h0KTsNCn0NCg0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuaGVhZGluZy1wcmltYXJ5LA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuaGVhZGluZy1wcmltYXJ5ICp7DQogICAgZm9udC1zaXplOiAgdmFyKC0taDEtZm9udC1zaXplKTsNCiAgICBsaW5lLWhlaWdodDogIHZhcigtLWgxLWxpbmUtaGVpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmhlYWRpbmctc2Vjb25kYXJ5LA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuaGVhZGluZy1zZWNvbmRhcnkgKnsNCiAgICBmb250LXNpemU6ICB2YXIoLS1oMi1mb250LXNpemUpOw0KICAgIGxpbmUtaGVpZ2h0OiAgdmFyKC0taDItbGluZS1oZWlnaHQpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuaGVhZGluZy10ZXJ0aWFyeSAsDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5oZWFkaW5nLXRlcnRpYXJ5ICAqew0KICAgIGZvbnQtc2l6ZTogIHZhcigtLWgzLWZvbnQtc2l6ZSk7DQogICAgbGluZS1oZWlnaHQ6ICB2YXIoLS1oMy1saW5lLWhlaWdodCk7DQp9DQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5oZWFkaW5nLXF1YXRlcm5hcnksDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5oZWFkaW5nLXF1YXRlcm5hcnkgKnsNCiAgICBmb250LXNpemU6ICB2YXIoLS1oNC1mb250LXNpemUpOw0KICAgIGxpbmUtaGVpZ2h0OiAgdmFyKC0taDQtbGluZS1oZWlnaHQpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuaGVhZGluZy1xdWluYXJ5LA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuaGVhZGluZy1xdWluYXJ5ICp7DQogICAgZm9udC1zaXplOiAgdmFyKC0taDUtZm9udC1zaXplKTsNCiAgICBsaW5lLWhlaWdodDogIHZhcigtLWg1LWxpbmUtaGVpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmhlYWRpbmctc2VuYXJ5LA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuaGVhZGluZy1zZW5hcnkgKnsNCiAgICBmb250LXNpemU6ICB2YXIoLS1oNi1mb250LXNpemUpOw0KICAgIGxpbmUtaGVpZ2h0OiAgdmFyKC0taDYtbGluZS1oZWlnaHQpOw0KfQ0KDQovKioNCiogVGlwb2dyYWZpYXMNCiAqLw0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1wcmltYXJ5LCANCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLnRleHQtcHJpbWFyeSAqew0KICAgIGZvbnQtZmFtaWx5OiB2YXIoLS10ZXh0LXByaW1hcnktZm9udC1mYW1pbHkpOw0KICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOw0KICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10ZXh0LXByaW1hcnktZm9udC13ZWlnaHQpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1wcmltYXJ5IGE6aG92ZXIsIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1wcmltYXJ5IGE6aG92ZXIgKnsNCiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yLWhvdmVyKTsNCn0NCg0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1zZWNvbmRhcnksIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1zZWNvbmRhcnkgKnsNCiAgICBmb250LWZhbWlseTogdmFyKC0tdGV4dC1zZWNvbmRhcnktZm9udC1mYW1pbHkpOw0KICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1jb2xvcik7DQogICAgZm9udC13ZWlnaHQ6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWZvbnQtd2VpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLnRleHQtc2Vjb25kYXJ5IGE6aG92ZXIsIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1zZWNvbmRhcnkgYTpob3ZlciAqew0KICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1jb2xvci1ob3Zlcik7DQp9DQoNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLnRleHQtdGVydGlhcnksIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC10ZXJ0aWFyeSAqew0KICAgIGZvbnQtZmFtaWx5OiB2YXIoLS10ZXh0LXRlcnRpYXJ5LWZvbnQtZmFtaWx5KTsNCiAgICBjb2xvcjogdmFyKC0tdGV4dC10ZXJ0aWFyeS1jb2xvcik7DQogICAgZm9udC13ZWlnaHQ6IHZhcigtLXRleHQtdGVydGlhcnktZm9udC13ZWlnaHQpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC10ZXJ0aWFyeSBhOmhvdmVyLCANCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLnRleHQtdGVydGlhcnkgYTpob3ZlciAqew0KICAgIGNvbG9yOiB2YXIoLS10ZXh0LXRlcnRpYXJ5LWNvbG9yLWhvdmVyKTsNCn0NCg0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1xdWF0ZXJuYXJ5LCANCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLnRleHQtcXVhdGVybmFyeSAqew0KICAgIGZvbnQtZmFtaWx5OiB2YXIoLS10ZXh0LXF1YXRlcm5hcnktZm9udC1mYW1pbHkpOw0KICAgIGNvbG9yOiB2YXIoLS10ZXh0LXF1YXRlcm5hcnktY29sb3IpOw0KICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10ZXh0LXF1YXRlcm5hcnktZm9udC13ZWlnaHQpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1xdWF0ZXJuYXJ5IGE6aG92ZXIsIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1xdWF0ZXJuYXJ5IGE6aG92ZXIgKnsNCiAgICBjb2xvcjogdmFyKC0tdGV4dC1xdWF0ZXJuYXJ5LWNvbG9yLWhvdmVyKTsNCn0NCg0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1xdWluYXJ5LCANCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLnRleHQtcXVpbmFyeSAqew0KICAgIGZvbnQtZmFtaWx5OiB2YXIoLS10ZXh0LXF1aW5hcnktZm9udC1mYW1pbHkpOw0KICAgIGNvbG9yOiB2YXIoLS10ZXh0LXF1aW5hcnktY29sb3IpOw0KICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10ZXh0LXF1aW5hcnktZm9udC13ZWlnaHQpOw0KfQ0KLnRleHQtcXVpbmFyeSBhOmhvdmVyLCAudGV4dC1xdWluYXJ5IGE6aG92ZXIgKnsNCiAgICBjb2xvcjogdmFyKC0tdGV4dC1xdWluYXJ5LWNvbG9yLWhvdmVyKTsNCn0NCg0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1zZW5hcnksIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1zZW5hcnkgKnsNCiAgICBmb250LWZhbWlseTogdmFyKC0tdGV4dC1zZW5hcnktZm9udC1mYW1pbHkpOw0KICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlbmFyeS1jb2xvcik7DQogICAgZm9udC13ZWlnaHQ6IHZhcigtLXRleHQtc2VuYXJ5LWZvbnQtd2VpZ2h0KTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLnRleHQtc2VuYXJ5IGE6aG92ZXIsIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAudGV4dC1zZW5hcnkgYTpob3ZlciAqew0KICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlbmFyeS1jb2xvci1ob3Zlcik7DQp9DQoNCi8qIEJVVFRPTlMgKi8NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmJ1dHRvbi1wcmltYXJ5IHsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgY29sb3I6IHZhcigtLWJ1dHRvbi1wcmltYXJ5LWNvbG9yKTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tcHJpbWFyeS1iZyk7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgd2lkdGg6IC13ZWJraXQtZml0LWNvbnRlbnQ7DQogICAgd2lkdGg6IC1tb3otZml0LWNvbnRlbnQ7DQogICAgd2lkdGg6IGZpdC1jb250ZW50Ow0KICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1wcmltYXJ5LWJvcmRlci1yYWRpdXMpOw0KICAgIHBhZGRpbmc6IHZhcigtLWJ1dHRvbi1wcmltYXJ5LXBhZGRpbmcpOw0KICAgIGJveC1zaGFkb3c6IHZhcigtLWJ1dHRvbi1wcmltYXJ5LWJveC1zaGFkb3cpOw0KICAgIGJvcmRlcjogdmFyKC0tYnV0dG9uLXByaW1hcnktYm9yZGVyKTsNCiAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLXByaW1hcnktZm9udC13ZWlnaHQpOw0KICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1idXR0b24tcHJpbWFyeS1jb2xvcik7DQp9DQoNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmJ1dHRvbi1wcmltYXJ5LmNvbG9yLXN3aXRjaDpob3ZlciwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmJ1dHRvbi1wcmltYXJ5LmNvbG9yLXN3aXRjaC5hY3RpdmUgew0KICAgIGNvbG9yOiB2YXIoLS1idXR0b24tcHJpbWFyeS1ob3Zlci1jb2xvcik7DQogICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHZhcigtLWJ1dHRvbi1wcmltYXJ5LWhvdmVyLWNvbG9yKTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tcHJpbWFyeS1ob3Zlci1iZyk7DQogICAgYm94LXNoYWRvdzogdmFyKC0tYnV0dG9uLXByaW1hcnktYm94LXNoYWRvdy1ob3Zlcik7DQogICAgYm9yZGVyOiB2YXIoLS1idXR0b24tcHJpbWFyeS1ib3JkZXItaG92ZXIpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXNlY29uZGFyeSB7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGNvbG9yOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWNvbG9yKTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWJnKTsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICB3aWR0aDogLXdlYmtpdC1maXQtY29udGVudDsNCiAgICB3aWR0aDogLW1vei1maXQtY29udGVudDsNCiAgICB3aWR0aDogZml0LWNvbnRlbnQ7DQogICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLXNlY29uZGFyeS1ib3JkZXItcmFkaXVzKTsNCiAgICBwYWRkaW5nOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LXBhZGRpbmcpOw0KICAgIGJveC1zaGFkb3c6IHZhcigtLWJ1dHRvbi1zZWNvbmRhcnktYm94LXNoYWRvdyk7DQogICAgYm9yZGVyOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWJvcmRlcik7DQogICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1zZWNvbmRhcnktZm9udC13ZWlnaHQpOw0KICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWNvbG9yKTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmJ1dHRvbi1zZWNvbmRhcnkuY29sb3Itc3dpdGNoOmhvdmVyLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXNlY29uZGFyeS5jb2xvci1zd2l0Y2guYWN0aXZlIHsNCiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1jb2xvcik7DQogICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHZhcigtLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItY29sb3IpOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItYmcpOw0KICAgIGJveC1zaGFkb3c6IHZhcigtLWJ1dHRvbi1zZWNvbmRhcnktYm94LXNoYWRvdy1ob3Zlcik7DQogICAgYm9yZGVyOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWJvcmRlci1ob3Zlcik7DQp9DQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5idXR0b24tdGVydGlhcnkgew0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLXRlcnRpYXJ5LWNvbG9yKTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tdGVydGlhcnktYmcpOw0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIHdpZHRoOiAtd2Via2l0LWZpdC1jb250ZW50Ow0KICAgIHdpZHRoOiAtbW96LWZpdC1jb250ZW50Ow0KICAgIHdpZHRoOiBmaXQtY29udGVudDsNCiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tdGVydGlhcnktYm9yZGVyLXJhZGl1cyk7DQogICAgcGFkZGluZzogdmFyKC0tYnV0dG9uLXRlcnRpYXJ5LXBhZGRpbmcpOw0KICAgIGJveC1zaGFkb3c6IHZhcigtLWJ1dHRvbi10ZXJ0aWFyeS1ib3gtc2hhZG93KTsNCiAgICBib3JkZXI6IHZhcigtLWJ1dHRvbi10ZXJ0aWFyeS1ib3JkZXIpOw0KICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tdGVydGlhcnktZm9udC13ZWlnaHQpOw0KICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1idXR0b24tdGVydGlhcnktY29sb3IpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXRlcnRpYXJ5LmNvbG9yLXN3aXRjaDpob3ZlciwNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmJ1dHRvbi10ZXJ0aWFyeS5jb2xvci1zd2l0Y2guYWN0aXZlIHsNCiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLXRlcnRpYXJ5LWhvdmVyLWNvbG9yKTsNCiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0tYnV0dG9uLXRlcnRpYXJ5LWhvdmVyLWNvbG9yKTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tdGVydGlhcnktaG92ZXItYmcpOw0KICAgIGJveC1zaGFkb3c6IHZhcigtLWJ1dHRvbi10ZXJ0aWFyeS1ib3gtc2hhZG93LWhvdmVyKTsNCiAgICBib3JkZXI6IHZhcigtLWJ1dHRvbi10ZXJ0aWFyeS1ib3JkZXItaG92ZXIpOw0KfQ0KDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5idXR0b24tcXVhdGVybmFyeSB7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGNvbG9yOiB2YXIoLS1idXR0b24tcXVhdGVybmFyeS1jb2xvcik7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLXF1YXRlcm5hcnktYmcpOw0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIHdpZHRoOiAtd2Via2l0LWZpdC1jb250ZW50Ow0KICAgIHdpZHRoOiAtbW96LWZpdC1jb250ZW50Ow0KICAgIHdpZHRoOiBmaXQtY29udGVudDsNCiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tcXVhdGVybmFyeS1ib3JkZXItcmFkaXVzKTsNCiAgICBwYWRkaW5nOiB2YXIoLS1idXR0b24tcXVhdGVybmFyeS1wYWRkaW5nKTsNCiAgICBib3gtc2hhZG93OiB2YXIoLS1idXR0b24tcXVhdGVybmFyeS1ib3gtc2hhZG93KTsNCiAgICBib3JkZXI6IHZhcigtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWJvcmRlcik7DQogICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWZvbnQtd2VpZ2h0KTsNCiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0tYnV0dG9uLXF1YXRlcm5hcnktY29sb3IpOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXF1YXRlcm5hcnkuY29sb3Itc3dpdGNoOmhvdmVyLA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXF1YXRlcm5hcnkuY29sb3Itc3dpdGNoLmFjdGl2ZSB7DQogICAgY29sb3I6IHZhcigtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWhvdmVyLWNvbG9yKTsNCiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0tYnV0dG9uLXF1YXRlcm5hcnktaG92ZXItY29sb3IpOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWhvdmVyLWJnKTsNCiAgICBib3gtc2hhZG93OiB2YXIoLS1idXR0b24tcXVhdGVybmFyeS1ib3gtc2hhZG93LWhvdmVyKTsNCiAgICBib3JkZXI6IHZhcigtLWJ1dHRvbi1xdWF0ZXJuYXJ5LWJvcmRlci1ob3Zlcik7DQp9DQoNCi8qIMONY29uZXMgKi8NCg0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuaWNvbi1wcmltYXJ5ew0KICAgIGNvbG9yOiB2YXIoLS1pY29uLXByaW1hcnktY29sb3IpOw0KICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1wcmltYXJ5LXNpemUpICFpbXBvcnRhbnQ7DQp9DQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5pY29uLXByaW1hcnk6aG92ZXJ7DQogICAgY29sb3I6IHZhcigtLWljb24tcHJpbWFyeS1ob3Zlci1jb2xvcik7DQp9DQoNCi8qVmFyaWF2ZWlzKi8NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgcHsNCiAgICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBocyk7DQp9DQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIHAsIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXByaW1hcnksIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXNlY29uZGFyeSwgDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5idXR0b24tdGVydGlhcnksIA0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuYnV0dG9uLXF1YXRlcm5hcnl7DQogICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcGFyYWdyYXBocyk7DQogICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMpOw0KfQ0KDQovKiBHRVJBTCAqLw0KaHRtbCB7DQoJZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC1mb250KTsNCiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsNCn0NCmJvZHkgew0KICAgIGZvbnQtc2l6ZTogMTZweDsNCn0NCi5hbGVydC1kZXYgew0KICAgIGNvbG9yOiAjYzA5ODUzOw0KICAgIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7DQogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNGM5YjQ7DQp9DQovKiBTRUxFQ1RJT04gKi8NCjo6c2VsZWN0aW9uIHsNCiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2VsZWN0aW9uLWNvbG9yKTsNCiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zZWxlY3Rpb24tYmFja2dyb3VuZCk7DQp9DQpwaWN0dXJlew0KICAgIGxpbmUtaGVpZ2h0OiAwOw0KICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207DQp9DQovKiBQTEFDRUhPTERFUiAqLw0KOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgLyogV2ViS2l0LCBCbGluaywgRWRnZSAqLw0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7DQp9DQo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTAtMTEgKi8NCiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOw0KfQ0KOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBNaWNyb3NvZnQgRWRnZSAqLw0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7DQp9DQo6OnBsYWNlaG9sZGVyIHsgLyogTW9zdCBtb2Rlcm4gYnJvd3NlcnMgc3VwcG9ydCB0aGlzIG5vdy4gKi8NCiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOw0KfQ0KLyogUMOBR0lOQSBOw4NPIEVOQ09OVFJBREEgKi8NCi5lcnJvLTQwNCB7DQogICAgYmFja2dyb3VuZDogdmFyKC0tZXJyb3ItNDA0LWNvbG9yKTsNCiAgICBmb250LXdlaWdodDogYm9sZDsNCiAgICBmb250LXNpemU6IDhyZW07DQp9DQoudGV4dG8tNDA0IHsNCiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1lcnJvci00MDQtY29sb3IpOw0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KfQ0KLmJsb2Nrew0KICAgIGRpc3BsYXk6IGJsb2NrOw0KfQ0KLyogUEFDRSBCQVIgTE9BRCBQQUdFICovDQoucGFjZSAucGFjZS1wcm9ncmVzcyB7DQogICAgYmFja2dyb3VuZDogdmFyKC0tcGFjZS1jb2xvcik7DQp9DQovKiBFU1RJTE8gUMOBR0lOQSBERSBQT1NUQUdFTSAqLw0KLnRleHRvLWVkaXRvciwgLnRleHRvLWVkaXRvciBwIHsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KfQ0KLnRleHRvLWVkaXRvciBpbWcsIC50ZXh0by1lZGl0b3IgaWZyYW1lIHsNCiAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgZGlzcGxheTogYmxvY2s7DQp9DQoudGV4dG8tZWRpdG9yIGEgew0KICAgIGRpc3BsYXk6IGlubGluZTsNCiAgICBjb2xvcjogdmFyKC0tcG9zdC1jb2xvci1saW5rKTsNCn0NCi50ZXh0by1lZGl0b3IgYTpob3ZlciB7DQogICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7DQp9DQoudGV4dG8tZWRpdG9yIHVsIHsNCiAgICBsaXN0LXN0eWxlOiBkaXNjOw0KICAgIHBhZGRpbmctbGVmdDogMTBweDsNCiAgICBtYXJnaW4tbGVmdDogMTBweDsNCn0NCi50ZXh0by1lZGl0b3IgdWwgbGkgew0KICAgIGxpc3Qtc3R5bGU6IGRpc2M7DQp9DQoudGV4dG8tZWRpdG9yIHAgew0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIC13ZWJraXQtbWFyZ2luLWJlZm9yZTogMTBweDsNCiAgICAtd2Via2l0LW1hcmdpbi1hZnRlcjogMTBweDsNCiAgICAtd2Via2l0LW1hcmdpbi1zdGFydDogMDsNCiAgICAtd2Via2l0LW1hcmdpbi1lbmQ6IDA7DQp9DQoudGV4dG8tZWRpdG9yIGgxIHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBmb250LXNpemU6IDJlbTsNCiAgICAtd2Via2l0LW1hcmdpbi1iZWZvcmU6IDEwcHg7DQogICAgLXdlYmtpdC1tYXJnaW4tYWZ0ZXI6IDEwcHg7DQogICAgLXdlYmtpdC1tYXJnaW4tc3RhcnQ6IDA7DQogICAgLXdlYmtpdC1tYXJnaW4tZW5kOiAwOw0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KfQ0KLnRleHRvLWVkaXRvciBoMiB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgZm9udC1zaXplOiAxLjVlbTsNCiAgICAtd2Via2l0LW1hcmdpbi1iZWZvcmU6IDEwcHg7DQogICAgLXdlYmtpdC1tYXJnaW4tYWZ0ZXI6IDEwcHg7DQogICAgLXdlYmtpdC1tYXJnaW4tc3RhcnQ6IDA7DQogICAgLXdlYmtpdC1tYXJnaW4tZW5kOiAwOw0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KfQ0KLnRleHRvLWVkaXRvciBoMyB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgZm9udC1zaXplOiAxLjE3ZW07DQogICAgLXdlYmtpdC1tYXJnaW4tYmVmb3JlOiAxMHB4Ow0KICAgIC13ZWJraXQtbWFyZ2luLWFmdGVyOiAxMHB4Ow0KICAgIC13ZWJraXQtbWFyZ2luLXN0YXJ0OiAwOw0KICAgIC13ZWJraXQtbWFyZ2luLWVuZDogMDsNCiAgICBmb250LXdlaWdodDogYm9sZDsNCn0NCi50ZXh0by1lZGl0b3IgaDQgew0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIC13ZWJraXQtbWFyZ2luLWJlZm9yZTogMTBweDsNCiAgICAtd2Via2l0LW1hcmdpbi1hZnRlcjogMTBweDsNCiAgICAtd2Via2l0LW1hcmdpbi1zdGFydDogMDsNCiAgICAtd2Via2l0LW1hcmdpbi1lbmQ6IDA7DQogICAgZm9udC13ZWlnaHQ6IGJvbGQ7DQp9DQoudGV4dG8tZWRpdG9yIGg1IHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBmb250LXNpemU6IDAuODNlbTsNCiAgICAtd2Via2l0LW1hcmdpbi1iZWZvcmU6IDEwcHg7DQogICAgLXdlYmtpdC1tYXJnaW4tYWZ0ZXI6IDEwcHg7DQogICAgLXdlYmtpdC1tYXJnaW4tc3RhcnQ6IDA7DQogICAgLXdlYmtpdC1tYXJnaW4tZW5kOiAwOw0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KfQ0KLnRleHRvLWVkaXRvciBoNiB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgZm9udC1zaXplOiAwLjY3ZW07DQogICAgLXdlYmtpdC1tYXJnaW4tYmVmb3JlOiAxMHB4Ow0KICAgIC13ZWJraXQtbWFyZ2luLWFmdGVyOiAxMHB4Ow0KICAgIC13ZWJraXQtbWFyZ2luLXN0YXJ0OiAwOw0KICAgIC13ZWJraXQtbWFyZ2luLWVuZDogMDsNCiAgICBmb250LXdlaWdodDogYm9sZDsNCn0NCg0KLyogRVNUSUxPIFDDgUdJTkEgREUgUE9TVEFHRU0gKi8NCi50eHQtZWRpdG9yLCAudHh0LWVkaXRvciBwIHsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KfQ0KLnR4dC1lZGl0b3IgaW1nLCAudHh0LWVkaXRvciBpZnJhbWUgew0KICAgIG1heC13aWR0aDogMTAwJTsNCiAgICBoZWlnaHQ6IGF1dG87DQogICAgZGlzcGxheTogYmxvY2s7DQp9DQoudHh0LWVkaXRvciBhIHsNCiAgICBkaXNwbGF5OiBpbmxpbmU7DQogICAgY29sb3I6IHZhcigtLXBvc3QtY29sb3ItbGluayk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7DQp9DQoudHh0LWVkaXRvciB1bCB7DQogICAgbGlzdC1zdHlsZTogZGlzYzsNCiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7DQogICAgbWFyZ2luLWJvdHRvbToxMHB4Ow0KfQ0KLnR4dC1lZGl0b3Igb2wgew0KICAgIGxpc3Qtc3R5bGU6IGRlY2ltYWw7DQogICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlOw0KICAgIG1hcmdpbi1ib3R0b206MTBweDsNCn0NCi50eHQtZWRpdG9yIHAgew0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIG1hcmdpbi1ib3R0b206MTBweDsNCn0NCi50eHQtZWRpdG9yIGgxIHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBmb250LXNpemU6IDJlbTsNCiAgICBsaW5lLWhlaWdodDogMS41ZW07DQogICAgbWFyZ2luLWJvdHRvbTogMTBweDsNCiAgICBmb250LXdlaWdodDogYm9sZDsNCn0NCi50eHQtZWRpdG9yIGgyIHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBmb250LXNpemU6IDEuNWVtOw0KICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTsNCiAgICBtYXJnaW4tYm90dG9tOiAxMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KfQ0KLnR4dC1lZGl0b3IgaDMgew0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIGZvbnQtc2l6ZTogMS4zZW07DQogICAgbGluZS1oZWlnaHQ6IDEuNWVtOw0KICAgIG1hcmdpbi1ib3R0b206IDEwcHg7DQogICAgZm9udC13ZWlnaHQ6IGJvbGQ7DQp9DQoudHh0LWVkaXRvciBoNCB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgZm9udC1zaXplOiAxZW07DQogICAgbGluZS1oZWlnaHQ6IDEuOWVtOw0KICAgIG1hcmdpbi1ib3R0b206IDEwcHg7DQogICAgZm9udC13ZWlnaHQ6IGJvbGQ7DQp9DQoudHh0LWVkaXRvciBoNSB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgZm9udC1zaXplOiAwLjhlbTsNCiAgICBsaW5lLWhlaWdodDogMS45ZW07DQogICAgbWFyZ2luLWJvdHRvbTogMTBweDsNCiAgICBmb250LXdlaWdodDogYm9sZDsNCn0NCi50eHQtZWRpdG9yIGg2IHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBmb250LXNpemU6IDAuN2VtOw0KICAgIGxpbmUtaGVpZ2h0OiAxLjllbTsNCiAgICBtYXJnaW4tYm90dG9tOiAxMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KfQ0KLnN3aXBlci13cmFwcGVyew0KICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50Ow0KfQ0KLyogTVNHIFBBRFJBTyBORU5IVU0gSVRFTSAqLw0KLm5lbmh1bS1pdGVtLWNhZGFzdHJhZG8gew0KICAgIGNvbG9yOiB2YXIoLS1hbnktaXRlbS1yZWdpc3RlcmVkLWNvbG9yKTsNCiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hbnktaXRlbS1yZWdpc3RlcmVkLWJvcmRlci1jb2xvcik7DQp9DQovKiBGb3JtdWzDoXJpbyAqLw0KaW5wdXQsDQpidXR0b24sDQpzZWxlY3QsDQp0ZXh0YXJlYSB7DQogICAgbWFyZ2luOiAwOw0KICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0Ow0KICAgIGZvbnQtc2l6ZTogaW5oZXJpdDsNCiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDsNCn0NCmJ1dHRvbiB7DQogICAgYm9yZGVyOiBub25lOw0KfQ0KbGFiZWwgew0KICAgIGRpc3BsYXk6IC13ZWJraXQtYm94Ow0KICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsNCiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsNCiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsNCiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOw0KICAgIHRleHQtYWxpZ246IGxlZnQ7DQp9DQppbnB1dFt0eXBlPSd0ZXh0J10sDQppbnB1dFt0eXBlPSdkYXRlJ10sDQppbnB1dFt0eXBlPSd0ZWwnXSwNCmlucHV0W3R5cGU9J251bSddLA0KaW5wdXRbdHlwZT0nZW1haWwnXSwNCmlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sDQp0ZXh0YXJlYSwNCnNlbGVjdCB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgd2lkdGg6IDEwMCU7DQogICAgcGFkZGluZzogNHB4IDJweDsNCiAgICBjb2xvcjogdmFyKC0tY29sb3ItaW5wdXQpOw0KICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7DQogICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsNCiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1pbnB1dC1ib3JkZXIpOw0KICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCAtd2Via2l0LWJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7DQogICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCAtd2Via2l0LWJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7DQogICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0Ow0KICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dCwgLXdlYmtpdC1ib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0Ow0KfQ0KDQouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7DQogICAgcGFkZGluZzogNHB4IDJweCAhaW1wb3J0YW50Ow0KICAgIGJvcmRlci1yYWRpdXM6IDhweCAhaW1wb3J0YW50Ow0KICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50Ow0KfQ0KDQppbnB1dFt0eXBlPSd0ZXh0J106Zm9jdXMsDQppbnB1dFt0eXBlPSdkYXRlJ106Zm9jdXMsDQppbnB1dFt0eXBlPSd0ZWwnXTpmb2N1cywNCmlucHV0W3R5cGU9J251bSddOmZvY3VzLA0KaW5wdXRbdHlwZT0nZW1haWwnXTpmb2N1cywNCnRleHRhcmVhOmZvY3VzLA0KaW5wdXRbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywNCnNlbGVjdDpmb2N1cyB7DQogICAgYm9yZGVyLWNvbG9yOiAjODBiZGZmOw0KICAgIG91dGxpbmU6IDA7DQogICAgYm94LXNoYWRvdzogdmFyKC0taW5wdXQtc2hhZG93LWNvbG9yLWhvdmVyKTsNCn0NCg0KaW5wdXRbdHlwZT0ncmFkaW8nXSwNCmlucHV0W3R5cGU9J2NoZWNrYm94J117DQogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgIG1hcmdpbi1yaWdodDogOHB4Ow0KICAgIG1pbi1oZWlnaHQ6IDE2cHg7DQogICAgbWluLXdpZHRoOiAxNnB4Ow0KICAgIGFjY2VudC1jb2xvcjogI0Y4MDY5ODsNCn0NCg0KdGV4dGFyZWEgew0KICAgIG1pbi1oZWlnaHQ6IDEyMHB4Ow0KICAgIHdpZHRoOiAxMDAlOw0KICAgIHBhZGRpbmc6IDRweCAycHg7DQogICAgcmVzaXplOiB2ZXJ0aWNhbDsNCn0NCg0KLmNhcmQtbGlua3sNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQp9DQoubWVudS1pdGVtIHsNCiAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KfQ0KLm1lbnUtaXRlbSAuZHJvcGRvd24gew0KICAgIGRpc3BsYXk6IG5vbmU7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIG1pbi13aWR0aDogMTYwcHg7DQogICAgei1pbmRleDogMTsNCiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMjUlLCAwcHgpOyAgICANCn0NCi5tZW51LWl0ZW0gLmRyb3Bkb3duIC5kcm9wZG93bi1jb250ZW50ew0KICAgIHdpZHRoOiAxMDAlOw0KICAgIHBhZGRpbmc6IDE1cHggMTVweDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOw0KICAgIG1hcmdpbi10b3A6MTBweDsNCn0NCi5tZW51LWl0ZW06aG92ZXIgLmRyb3Bkb3duIHsNCiAgICBkaXNwbGF5OiBibG9jazsNCn0NCnByZSB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgIHBhZGRpbmc6IDlweDsNCiAgICBtYXJnaW46IDAgMCAxMHB4Ow0KICAgIGZvbnQtZmFtaWx5OiBNb25hY28sIE1lbmxvLCBDb25zb2xhcywgIkNvdXJpZXIgTmV3IiwgbW9ub3NwYWNlICFpbXBvcnRhbnQ7DQogICAgZm9udC1zaXplOiAxM3B4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQyOTsNCiAgICBjb2xvcjogIzMzMzsNCiAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7DQogICAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsNCiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjOw0KICAgIG92ZXJmbG93LXg6IGF1dG87DQogICAgYm9yZGVyLXJhZGl1czogNHB4Ow0KfQ0KZGl2W2RhdGEtYW5pbWF0ZV0sDQpbZGF0YS1hbmltYXRlXSAuY29udGFpbmVyew0KICAgIG9wYWNpdHk6IDA7DQp9DQpbaWRePSJibG9jay0iXSA+IFtpZF49ImJsb2NrLSJdew0KICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsNCn0NCi5ib3Rhby13aGF0c2FwcCB7DQogICAgcG9zaXRpb246IGZpeGVkOw0KICAgIGJvdHRvbTogMTVweDsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICB6LWluZGV4OiA5OTA7DQp9DQouYm90YW8td2hhdHNhcHAudGFkYSBzdmd7DQogICAgLXdlYmtpdC1hbmltYXRpb246IHdlenktdGFkYSAxLjVzIGVhc2UgaW5maW5pdGU7DQogICAgYW5pbWF0aW9uOiB3ZXp5LXRhZGEgMS41cyBlYXNlIGluZmluaXRlOw0KfQ0KLmJvdGFvLXdoYXRzYXBwLnB1bHNhciBzdmd7DQogICAgLXdlYmtpdC1hbmltYXRpb246IHdlenktcHVsc2FyIDEuNXMgaW5maW5pdGUgbGluZWFyOw0KICAgIGFuaW1hdGlvbjogd2V6eS1wdWxzYXIgMS41cyBpbmZpbml0ZSBsaW5lYXI7DQp9DQouYm90YW8td2hhdHNhcHAucmlnaHR7DQogICAgcmlnaHQ6IDE1cHg7DQp9DQouYm90YW8td2hhdHNhcHAubGVmdHsNCiAgICBsZWZ0OiAxNXB4Ow0KfQ0KLmJvdGFvLXdoYXRzYXBwOmJlZm9yZSB7DQogICAgYm9yZGVyLXJhZGl1czogNnB4Ow0KICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10aXRsZSk7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIGJhY2tncm91bmQ6ICNmZmY7DQogICAgdG9wOiAzMCU7DQogICAgaGVpZ2h0OiBhdXRvOw0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICBib3JkZXItcmlnaHQ6IDA7DQogICAgbWFyZ2luLXRvcDogLTEycHg7DQogICAgcGFkZGluZzogOHB4IDIwcHggMTBweDsNCiAgICBjb2xvcjogIzMzMzsNCiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsMCwwLC4zKTsNCiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgwLDAsMCwuMyk7DQogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGxpbmVhcjsNCiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGxpbmVhcjsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsNCiAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOw0KICAgIGxpbmUtaGVpZ2h0OiAxLjVlbSAhaW1wb3J0YW50DQp9DQouYm90YW8td2hhdHNhcHAucmlnaHQ6YmVmb3Jlew0KICAgIHJpZ2h0OiA1MHB4Ow0KfQ0KLmJvdGFvLXdoYXRzYXBwLmxlZnQ6YmVmb3Jlew0KICAgIGxlZnQ6IDUwcHg7DQp9DQouYm90YW8td2hhdHNhcHA6YWZ0ZXIgew0KICAgIGNvbnRlbnQ6ICcnOw0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICByaWdodDogMDsNCiAgICBib3R0b206IDEzcHg7DQogICAgd2lkdGg6IDA7DQogICAgaGVpZ2h0OiAwOw0KICAgIGJvcmRlcjogMTBweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItbGVmdC1jb2xvcjogI2ZmZjsNCiAgICBib3JkZXItcmlnaHQ6IDA7DQogICAgbWFyZ2luLXRvcDogLTE5cHg7DQogICAgLXdlYmtpdC1maWx0ZXI6IGRyb3Atc2hhZG93KDE1cHggNHB4IDhweCByZ2JhKDAsMCwwLC4zKSk7DQogICAgZmlsdGVyOiBkcm9wLXNoYWRvdygxNXB4IDRweCA4cHggcmdiYSgwLDAsMCwuMykpOw0KICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBsaW5lYXI7DQogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBsaW5lYXI7DQp9DQouYm90YW8td2hhdHNhcHAucmlnaHQ6YWZ0ZXJ7DQogICAgbGVmdDogLTE1cHg7DQp9DQouYm90YW8td2hhdHNhcHAubGVmdDphZnRlcnsNCiAgICByaWdodDogLTE1cHg7DQogICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCn0NCi5ib3Rhby13aGF0c2FwcCAud2hhdHNhcHAtY2xzLTEgew0KICAgIGZpbGw6ICMxYmQ3NDE7DQp9DQouYm90YW8td2hhdHNhcHAgLndoYXRzYXBwLWNscy0yIHsNCiAgICBmaWxsOiAjZmZmOw0KICAgIGZpbGwtcnVsZTogZXZlbm9kZDsNCn0NCg0KQGtleWZyYW1lcyB3ZXp5LXRhZGEgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwxLDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwxLDEpOw0KICAgIH0NCiAgICAxMCUsIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45NSwuOTUsLjk1KSByb3RhdGUzZCgwLDAsMSwtMTBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk1LC45NSwuOTUpIHJvdGF0ZTNkKDAsMCwxLC0xMGRlZyk7DQogICAgfQ0KICAgIDMwJSwgNTAlLCA3MCUsIDkwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsMSwxKSByb3RhdGUzZCgwLDAsMSwxMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLDEsMSkgcm90YXRlM2QoMCwwLDEsMTBkZWcpOw0KICAgIH0NCiAgICA0MCUsIDYwJSwgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsMCwxLC0xMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwwLDEsLTEwZGVnKTsNCiAgICB9DQogICAgMTAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsMSwxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsMSwxKTsNCiAgICB9DQp9DQoNCkBrZXlmcmFtZXMgd2V6eS1wdWxzYXIgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICANCiAgICA5MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0vKiBSRVNFVCAqLw0KaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLA0KaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLA0KYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLA0KZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLA0Kc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhciwNCmIsIHUsIGksIGNlbnRlciwNCmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksDQpmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCwNCnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLA0KYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsIA0KZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCANCm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LA0KdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHsNCgltYXJnaW46IDA7DQoJcGFkZGluZzogMDsNCglib3JkZXI6IDA7DQoJdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOw0KfQ0KLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqLw0KYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgDQpmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24gew0KCWRpc3BsYXk6IGJsb2NrOw0KfQ0KYm9keSB7DQoJbGluZS1oZWlnaHQ6IDE7DQp9DQpvbCwgdWwgew0KCWxpc3Qtc3R5bGU6IG5vbmU7DQp9DQpibG9ja3F1b3RlLCBxIHsNCglxdW90ZXM6IG5vbmU7DQp9DQpibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlciwNCnE6YmVmb3JlLCBxOmFmdGVyIHsNCgljb250ZW50OiAnJzsNCn0NCnRhYmxlIHsNCglib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOw0KCWJvcmRlci1zcGFjaW5nOiAwOw0KfQ0KLyogR0VSQUwgKi8NCmh0bWwgew0KCS1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7DQoJLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7DQoJdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsNCn0NCmh0bWwuY3VzdG9tLXN0eWxlc2hlZXR7DQogICAgZm9udC1zaXplOiAxNnB4Ow0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KXsNCiAgICBmb250LXNpemU6IDYyLjUlOw0KfQ0KYm9keSB7DQogIG1heC13aWR0aDogMTkyMHB4ICFpbXBvcnRhbnQ7DQogIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7DQp9DQoqIHsNCiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQp9DQouY29udGFpbmVyIHsNCiAgbWF4LXdpZHRoOiAxMjAwcHg7DQogIG1hcmdpbjogMCBhdXRvOw0KICBwYWRkaW5nOiAwIDE1cHg7DQp9DQovKiBGT1JNVUzDgVJJT1MqLw0KZm9ybS5mb3JtdWxhcmlvLWFqYXggLmNhbXBvLWZvcm11bGFyaW8gew0KICAgIG1hcmdpbi1ib3R0b206IDEwcHg7DQp9DQpmb3JtLmZvcm11bGFyaW8tYWpheCAuY2FtcG8tZm9ybXVsYXJpbyBsYWJlbCwNCmZvcm0uZm9ybXVsYXJpby1hamF4IC5jYW1wby1mb3JtdWxhcmlvIC5pbnB1dDpub3QoW3R5cGU9ImNoZWNrYm94Il0pOm5vdChbdHlwZT0icmFkaW8iXSl7DQogICAgb3V0bGluZTogbm9uZTsNCiAgICB3aWR0aDogMTAwJTsNCn0NCmZvcm0uZm9ybXVsYXJpby1hamF4IC5jYW1wby1mb3JtdWxhcmlvIC5vYnJpZ2F0b3Jpb3sNCiAgICBjb2xvcjojRkYwMDAwOw0KfQ0KZm9ybS5mb3JtdWxhcmlvLWFqYXggLmhhbGYtc2l6ZSsuaGFsZi1zaXplew0KICAgIHBhZGRpbmctbGVmdDogMTBweDsNCn0NCmZvcm0uZm9ybXVsYXJpby1hamF4IC5jYW1wby1mb3JtdWxhcmlvIC5pbnB1dHsNCiAgICBwYWRkaW5nOiAxMHB4IDEwcHg7DQogICAgbWFyZ2luLXRvcDo1cHg7DQp9DQpmb3JtLmZvcm11bGFyaW8tYWpheCBsYWJlbHsNCiAgICBjdXJzb3I6IHBvaW50ZXI7DQp9DQpmb3JtLmZvcm11bGFyaW8tYWpheCAubXNnLWZvcm11bGFyaW97DQogICAgd2lkdGg6IDEwMCU7DQogICAgbWFyZ2luLWJvdHRvbTogMTVweDsNCn0NCi8qIFBBQ0UgKi8NCi5wYWNlIHsNCiAgLXdlYmtpdC1wb2ludGVyLWV2ZW50czogbm9uZTsNCiAgcG9pbnRlci1ldmVudHM6IG5vbmU7DQogIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7DQogIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7DQogIC1tcy11c2VyLXNlbGVjdDogbm9uZTsNCiAgICAgIHVzZXItc2VsZWN0OiBub25lOw0KfQ0KLnBhY2UtaW5hY3RpdmUgew0KICBkaXNwbGF5OiBub25lOw0KfQ0KLnBhY2UgLnBhY2UtcHJvZ3Jlc3Mgew0KICBwb3NpdGlvbjogZml4ZWQ7DQogIHotaW5kZXg6IDIwMDA7DQogIHRvcDogMDsNCiAgcmlnaHQ6IDEwMCU7DQogIHdpZHRoOiAxMDAlOw0KICBoZWlnaHQ6IDJweDsNCn0NCg0KLyogTVNHIFBBRFJBTyBORU5IVU0gSVRFTSAqLw0KLm5lbmh1bS1pdGVtLWNhZGFzdHJhZG97DQoJZm9udC1zaXplOiAxNnB4Ow0KCWZvbnQtd2VpZ2h0OiA0MDA7DQoJbGluZS1oZWlnaHQ6IDIzcHg7DQoJd2lkdGg6IDEwMCU7DQoJdGV4dC1hbGlnbjogY2VudGVyOw0KCXBhZGRpbmctdG9wOiAxNTBweDsNCglwYWRkaW5nLWJvdHRvbTogMTUwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMTZweDsNCn0NCi5saXN0LW5vdC1mb3VuZCwNCi5saXN0LW5vdC1mb3VuZCBsaXsNCiAgICB3aWR0aDogMTAwJTsNCn0NCg0KLyogUMOBR0lOQcOHw4NPOiBQQURSw4NPICovDQouY29udG9ybm8tYm90b2VzLXBhZ2luYWNhbyB7DQoJZGlzcGxheTogdGFibGU7DQoJbWFyZ2luOiAwIGF1dG87DQp9DQouY29udG9ybm8tYm90b2VzLXBhZ2luYWNhbyBhew0KCWZsb2F0OiBsZWZ0Ow0KCWZvbnQtc2l6ZTogMS40cmVtOw0KCXdpZHRoOiAyNXB4Ow0KCXBhZGRpbmctYm90dG9tOiA3cHg7DQoJdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KLmNvbnRvcm5vLWJvdG9lcy1wYWdpbmFjYW8gYSArIGF7DQoJbWFyZ2luLWxlZnQ6IDEwcHg7DQp9DQoNCg0KLyogUMOBR0lOQSBOw4NPIEVOQ09OVFJBREEgKi8NCi5wYWdpbmEtbmFvZW5jb250cmFkYXsNCgl3aWR0aDoxMDAlOw0KCXdpZHRoOjEwMCU7DQoJcGFkZGluZy10b3A6MTgwcHg7DQoJcGFkZGluZy1ib3R0b206MjAwcHg7DQoJdGV4dC1hbGlnbjpjZW50ZXI7DQp9DQoudGV4dG8tNDA0ew0KCWZvbnQtc2l6ZToycmVtOw0KfQ0KLyogQUxFUlRBIERFIERFU0VOVk9MVklNRU5UTyAqLw0KLmFsZXJ0LWRldiB7DQogIHdpZHRoOiAxMDAlOw0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIHBhZGRpbmc6IDE1cHggMDsNCiAgZm9udC1zaXplOiAxLjJyZW07DQp9DQoNCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmZsZXgsDQoud2V6eS1mbGV4IHsNCiAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogIGRpc3BsYXk6IC1tcy1mbGV4Ym94Ow0KICBkaXNwbGF5OiBmbGV4Ow0KICB3aWR0aDogMTAwJTsNCn0NCi53ZXp5LWNvbHVtbnMtMSwgLndlenktY29sdW1ucy0yLCAud2V6eS1jb2x1bW5zLTMsIC53ZXp5LWNvbHVtbnMtNCwgLndlenktY29sdW1ucy01LCAud2V6eS1jb2x1bW5zLTZ7DQogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7DQogICAgZGlzcGxheTogLW1zLWZsZXhib3g7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBmbGV4LXdyYXA6IHdyYXA7DQogICAgZmxleC1kaXJlY3Rpb246IHJvdzsNCiAgICB3aWR0aDogMTAwJTsNCiAgICBnYXA6IHZhcigtLWNvbHVtbnMtZ2FwKTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmZsZXgtMSwNCi53ZXp5LWNvbHVtbnMtMSA+IC53ZXp5LWNvbHVtbiwNCi53ZXp5LWZsZXgtMSB7DQogICAgLS1pdGVuczoxOw0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuZmxleC0yLA0KLndlenktY29sdW1ucy0yID4gLndlenktY29sdW1uLA0KLndlenktZmxleC0yIHsNCiAgICAtLWl0ZW5zOjI7DQp9DQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5mbGV4LTMsDQoud2V6eS1jb2x1bW5zLTMgPiAud2V6eS1jb2x1bW4sDQoud2V6eS1mbGV4LTMgew0KICAgIC0taXRlbnM6MzsgIA0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuZmxleC00LA0KLndlenktY29sdW1ucy00ID4gLndlenktY29sdW1uLA0KLndlenktZmxleC00IHsNCiAgICAtLWl0ZW5zOjQ7DQp9DQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5mbGV4LTUsDQoud2V6eS1jb2x1bW5zLTUgPiAud2V6eS1jb2x1bW4sDQoud2V6eS1mbGV4LTUgew0KICAgIC0taXRlbnM6NTsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmZsZXgtNiwNCi53ZXp5LWNvbHVtbnMtNiA+IC53ZXp5LWNvbHVtbiwNCi53ZXp5LWZsZXgtNiB7DQogICAgLS1pdGVuczo2Ow0KfQ0KDQpAbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpew0KICAgIC53ZXp5LWNvbHVtbnMtMSwgLndlenktY29sdW1ucy0yLCAud2V6eS1jb2x1bW5zLTMsIC53ZXp5LWNvbHVtbnMtNCwgLndlenktY29sdW1ucy01LCAud2V6eS1jb2x1bW5zLTZ7DQogICAgICAgIGdhcDp2YXIoLS1jb2x1bW5zLWdhcC1tZCk7DQogICAgfQ0KICAgIC53ZXp5LWNvbHVtbnMtbWQtMSA+IC53ZXp5LWNvbHVtbiB7DQogICAgICAgIC0taXRlbnM6MTsNCiAgICB9DQogICAgLndlenktY29sdW1ucy1tZC0yID4gLndlenktY29sdW1uew0KICAgICAgICAtLWl0ZW5zOjI7DQogICAgfQ0KICAgIC53ZXp5LWNvbHVtbnMtbWQtMyA+IC53ZXp5LWNvbHVtbnsNCiAgICAgICAgLS1pdGVuczozOyAgDQogICAgfQ0KICAgIC53ZXp5LWNvbHVtbnMtbWQtNCA+IC53ZXp5LWNvbHVtbnsNCiAgICAgICAgLS1pdGVuczo0Ow0KICAgIH0NCiAgICAud2V6eS1jb2x1bW5zLW1kLTUgPiAud2V6eS1jb2x1bW57DQogICAgICAgIC0taXRlbnM6NTsNCiAgICB9DQogICAgLndlenktY29sdW1ucy1tZC02ID4gLndlenktY29sdW1uew0KICAgICAgICAtLWl0ZW5zOjY7DQogICAgfQ0KDQp9DQoNCkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpew0KICAgIC53ZXp5LWNvbHVtbnMtMSwgLndlenktY29sdW1ucy0yLCAud2V6eS1jb2x1bW5zLTMsIC53ZXp5LWNvbHVtbnMtNCwgLndlenktY29sdW1ucy01LCAud2V6eS1jb2x1bW5zLTZ7DQogICAgICAgIGdhcDp2YXIoLS1jb2x1bW5zLWdhcC1sZyk7DQogICAgfQ0KICAgIC53ZXp5LWNvbHVtbnMtbGctMSA+IC53ZXp5LWNvbHVtbiB7DQogICAgICAgIC0taXRlbnM6MTsNCiAgICB9DQogICAgLndlenktY29sdW1ucy1sZy0yID4gLndlenktY29sdW1uew0KICAgICAgICAtLWl0ZW5zOjI7DQogICAgfQ0KICAgIC53ZXp5LWNvbHVtbnMtbGctMyA+IC53ZXp5LWNvbHVtbnsNCiAgICAgICAgLS1pdGVuczozOyAgICAgICAgDQogICAgfQ0KICAgIC53ZXp5LWNvbHVtbnMtbGctNCA+IC53ZXp5LWNvbHVtbnsNCiAgICAgICAgLS1pdGVuczo0Ow0KICAgIH0NCiAgICAud2V6eS1jb2x1bW5zLWxnLTUgPiAud2V6eS1jb2x1bW57DQogICAgICAgIC0taXRlbnM6NTsNCiAgICB9DQogICAgLndlenktY29sdW1ucy1sZy02ID4gLndlenktY29sdW1uew0KICAgICAgICAtLWl0ZW5zOjY7DQogICAgfQ0KfQ0KDQo6aXMoLndlenktY29sdW1ucy0xLCAud2V6eS1jb2x1bW5zLTIsIC53ZXp5LWNvbHVtbnMtMywgLndlenktY29sdW1ucy00LCAud2V6eS1jb2x1bW5zLTUsIC53ZXp5LWNvbHVtbnMtNikgLndlenktY29sdW1uew0KICAgIGZsZXg6IDAgY2FsYyhjYWxjKDEwMCUvdmFyKC0taXRlbnMpKSAtICgodmFyKC0tY29sdW1ucy1nYXAtbGcpICogKHZhcigtLWl0ZW5zKSAtIDEpKSAvIHZhcigtLWl0ZW5zKSkpOw0KfQ0KDQpodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5mbGV4LWNvbHVtbiwNCi53ZXp5LWZsZXgtY29sdW1uIHsNCiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsNCn0NCmh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmZsZXgtcm93LA0KLndlenktZmxleC1yb3cgew0KICBmbGV4LWRpcmVjdGlvbjogcm93Ow0KfQ0KaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAud3JhcCwNCi53ZXp5LXdyYXAgew0KICAtbXMtZmxleC13cmFwOiB3cmFwOw0KICBmbGV4LXdyYXA6IHdyYXA7DQp9DQouc3BhY2UtYnR3biB7DQogIC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7DQogIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7DQogIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsNCn0NCi5jZW50ZXItZnVsbCB7DQogIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsNCiAgLW1zLWZsZXgtcGFjazogY2VudGVyOw0KICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsNCiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsNCiAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCn0NCi5jZW50ZXIteC1yb3cgew0KICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7DQogIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsNCiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQp9DQouY2VudGVyLXktcm93LA0KLmNlbnRlci14LWNvbHVtbiB7DQogIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7DQogIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7DQogIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQp9DQouY29sdW1uIHsNCiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsNCiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7DQogIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOw0KICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOw0KfQ0KLm1hcmdpbi1hdXRvIHsNCiAgbWFyZ2luOiAwIGF1dG87DQp9DQoudHJhbnNpdGlvbiB7DQogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4ycyBsaW5lYXI7DQogIHRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyOw0KfQ0KLnR4dC1jZW50ZXIgew0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQp9DQouZm9udC1saWdodCwNCi5mb250LWxpZ2h0ICogew0KICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7DQp9DQouZm9udC1ib2xkIHNwYW4sDQouZm9udC1ib2xkIHN0cm9uZywNCi5mb250LWJvbGQgew0KICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50Ow0KfQ0KLmZvbnQtYm9sZGVyIHNwYW4sDQouZm9udC1ib2xkZXIgc3Ryb25nLA0KLmZvbnQtYm9sZGVyIHsNCiAgICBmb250LXdlaWdodDpib2xkZXIgIWltcG9ydGFudDsNCn0NCi5mb250LWl0YWxpYywgDQouZm9udC1pdGFsaWMgKiB7DQogIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50Ow0KfQ0KLnJvd3sNCiAgbWFyZ2luLWxlZnQ6LTE1cHg7DQogIG1hcmdpbi1yaWdodDotMTVweDsNCn0NCmEudGFnLWF7DQogICAgY29sb3I6IzAwMDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQp9DQppbnB1dFt0eXBlPSJidXR0b24iXSwNCmlucHV0W3R5cGU9InN1Ym1pdCJdew0KICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsNCn0NCmlucHV0W3R5cGU9ImJ1dHRvbiJdew0KICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICBib3JkZXI6IDBweDsNCn0NCi5lbWJlZC1vcHRpbWl6ZS1jb250YWluZXIgZGl2ew0KICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgdHJhbnNpdGlvbjogLjRzOw0KfQ0KLmVtYmVkLW9wdGltaXplLWNvbnRhaW5lcjpob3ZlciBkaXYgew0KICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsNCiAgICB0cmFuc2l0aW9uOiAuNHM7DQp9DQpAbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7DQogIA0KICAgIC5oaWRlLWZyb20tdGFibGV0IHsNCiAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICB9DQogICAgaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuZmxleC10YWJsZXQtMSwNCiAgICAud2V6eS1mbGV4LXRhYmxldC0xIHsNCiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTsNCiAgICAgICAgLW1zLWZsZXg6IDE7DQogICAgICAgIGZsZXg6IDAgMSAxMDAlOw0KICAgIH0NCiAgICBodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5mbGV4LXRhYmxldC0yLA0KICAgIC53ZXp5LWZsZXgtdGFibGV0LTIgew0KICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAyOw0KICAgICAgICAtbXMtZmxleDogMjsNCiAgICAgICAgZmxleDogMCAyIDUwJTsNCiAgICB9DQogICAgaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuZmxleC10YWJsZXQtMywNCiAgICAud2V6eS1mbGV4LXRhYmxldC0zIHsNCiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMzsNCiAgICAgICAgLW1zLWZsZXg6IDM7DQogICAgICAgIGZsZXg6IDAgMyAzMy4zMzMlOw0KICAgIH0NCiAgICBodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5mbGV4LXRhYmxldC00LA0KICAgIC53ZXp5LWZsZXgtdGFibGV0LTQgew0KICAgICAgICAtd2Via2l0LWJveC1mbGV4OiA0Ow0KICAgICAgICAtbXMtZmxleDogNDsNCiAgICAgICAgZmxleDogMCA0IDI1JTsNCiAgICB9DQogICAgaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuZmxleC10YWJsZXQtNSwNCiAgICAud2V6eS1mbGV4LXRhYmxldC01IHsNCiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogNTsNCiAgICAgICAgLW1zLWZsZXg6IDU7DQogICAgICAgIGZsZXg6IDAgNSAyMCU7DQogICAgfQ0KICAgIGh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmZsZXgtdGFibGV0LTYsDQogICAgLndlenktZmxleC10YWJsZXQtNiB7DQogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDY7DQogICAgICAgIC1tcy1mbGV4OiA2Ow0KICAgICAgICBmbGV4OiAwIDYgMTYuNjY2NiU7DQogICAgfQ0KICAgIGZvcm0uZm9ybXVsYXJpby1hamF4IC5oYWxmLXNpemUrLmhhbGYtc2l6ZXsNCiAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDsNCiAgICB9DQoNCn0NCkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KXsNCiAgICANCiAgICAuaGlkZS1mcm9tLXBob25lIHsNCiAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICB9DQogICAgaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuZmxleC1waG9uZS0xLA0KICAgIC53ZXp5LWZsZXgtcGhvbmUtMSB7DQogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7DQogICAgICAgIC1tcy1mbGV4OiAxOw0KICAgICAgICBmbGV4OiAwIDEgMTAwJTsNCiAgICB9DQogICAgaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuZmxleC1waG9uZS0yLA0KICAgIC53ZXp5LWZsZXgtcGhvbmUtMiB7DQogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDI7DQogICAgICAgIC1tcy1mbGV4OiAyOw0KICAgICAgICBmbGV4OiAwIDIgNTAlOw0KICAgIH0NCiAgICBodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5mbGV4LXBob25lLTMsDQogICAgLndlenktZmxleC1waG9uZS0zIHsNCiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMzsNCiAgICAgICAgLW1zLWZsZXg6IDM7DQogICAgICAgIGZsZXg6IDAgMyAzMy4zMzMlOw0KICAgIH0NCiAgICBodG1sOm5vdCguY3VzdG9tLXN0eWxlc2hlZXQpIC5mbGV4LXBob25lLTQsDQogICAgLndlenktZmxleC1waG9uZS00IHsNCiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogNDsNCiAgICAgICAgLW1zLWZsZXg6IDQ7DQogICAgICAgIGZsZXg6IDAgNCAyNSU7DQogICAgfQ0KICAgIGh0bWw6bm90KC5jdXN0b20tc3R5bGVzaGVldCkgLmZsZXgtcGhvbmUtNSwNCiAgICAud2V6eS1mbGV4LXBob25lLTUgew0KICAgICAgICAtd2Via2l0LWJveC1mbGV4OiA1Ow0KICAgICAgICAtbXMtZmxleDogNTsNCiAgICAgICAgZmxleDogMCA1IDIwJTsNCiAgICB9DQogICAgaHRtbDpub3QoLmN1c3RvbS1zdHlsZXNoZWV0KSAuZmxleC1waG9uZS02LA0KICAgIC53ZXp5LWZsZXgtcGhvbmUtNiB7DQogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDY7DQogICAgICAgIC1tcy1mbGV4OiA2Ow0KICAgICAgICBmbGV4OiAwIDYgMTYuNjY2NiU7DQogICAgfQ0KDQp9I3NlY3Rpb24taGVhZGVyLW1vYmlsZXsNCiAgICB6LWluZGV4OiAyMDsNCiAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgd2lkdGg6IDEwMCU7DQogICAgbWF4LXdpZHRoOiAxOTIwcHg7DQogICAgbGVmdDogMDsNCiAgICByaWdodDogMDsNCiAgICB0b3A6IDA7DQogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0Ow0KICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7DQogICAgbWFyZ2luOiAwIGF1dG87DQogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDRweCA4cHggcmdiKDAgMCAwIC8gMCUpOw0KICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2IoMCAwIDAgLyAwJSk7DQp9DQojbW9iaWxlLWhlYWRlci1uYXZpZ2F0aW9uIHsNCiAgICBkaXNwbGF5OiBub25lOw0KICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsNCiAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgIHBhZGRpbmc6IDEwcHggMTVweDsNCn0NCiNtb2JpbGUtaGVhZGVyLW5hdmlnYXRpb24gLmxvZ28gYSB7DQogICBoZWlnaHQ6IDYwcHg7DQogICBkaXNwbGF5OiBmbGV4Ow0KICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCn0NCg0KLyogQXV0b21hdGljIFNpZGViYXIgKi8NCltkYXRhLWVsZW1lbnQ9InJlc3BvbnNpdmUtbWVudSJdIHsNCiAgICAtLWJhY2tncm91bmQtaGVhZGVyLXJlc3BvbnNpdmU6ICNFQ0VDRUM7DQogICAgLS13aWR0aC1oZWFkZXItcmVzcG9uc2l2ZTogODB2dzsNCiAgICAtLXBhZGRpbmctaGVhZGVyLXJlc3BvbnNpdmU6IDM2cHg7DQogICAgLS1pY29uLWNvbG9yLWhlYWRlci1yZXNwb25zaXZlOiAjMDAwOw0KICAgIC0tY29sb3ItYm9yZGVyLWxpc3QtaGVhZGVyLXJlc3BvbnNpdmU6ICNjNGM0YzQ7DQogICAgLS1iYWNrZ3JvdW5kLWJ1dHRvbi1oZWFkZXItcmVzcG9uc2l2ZTogI0Q3RDhEOTsNCiAgICAtLWJhY2tncm91bmQtaG92ZXItYnV0dG9uLWhlYWRlci1yZXNwb25zaXZlOiAjRDdEOEQ5Ow0KICAgIC0tYm9yZGVyLXJhZGl1cy1idXR0b24taGVhZGVyLXJlc3BvbnNpdmU6IDQycHg7DQogICAgLS1jb2xvci1idXR0b24taGVhZGVyLXJlc3BvbnNpdmU6ICMyMzIzMjQ7DQogICAgLS1jb2xvci1ob3Zlci1idXR0b24taGVhZGVyLXJlc3BvbnNpdmU6ICMyMzIzMjQ7DQp9DQpAbWVkaWEobWF4LXdpZHRoOiA0ODBweCl7DQogICAgI2hlYWRlci1yZXNwb25zaXZlLTAxIHsNCiAgICAgICAgLS13aWR0aC1oZWFkZXItcmVzcG9uc2l2ZTogODV2dzsNCiAgICAgICAgLS1wYWRkaW5nLWhlYWRlci1yZXNwb25zaXZlOiAxNnB4Ow0KICAgIH0NCn0NCg0KI2hlYWRlci1yZXNwb25zaXZlLTAxIC5tZW51LWNvbnRlbnQgLmhlYWRlci1pbmZvIHsNCiAgICBtYXJnaW4tYm90dG9tOiA1NnB4Ow0KfQ0KI2hlYWRlci1yZXNwb25zaXZlLTAxIC5tZW51LWNvbnRlbnQgLmhlYWRlci1pbmZvIC50aXRsZXsNCiAgICBmb250LXNpemU6IDIycHg7DQogICAgbGluZS1oZWlnaHQ6IDEwMCU7DQogICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsNCiAgICBjb2xvcjogdmFyKC0tcmVzcG9uc2l2by1tZW51LWNvbG9yLWZvbnQpOw0KfQ0KI2hlYWRlci1yZXNwb25zaXZlLTAxIC5tZW51LWNvbnRlbnQgLmhlYWRlci1pbmZvIC50aXRsZSAuaWNvbiB7DQogICAgbWFyZ2luLXJpZ2h0OiAyNHB4Ow0KICAgIHdpZHRoOiAzM3B4Ow0KICAgIGhlaWdodDogMzNweDsNCiAgICBmaWxsOiB2YXIoLS1pY29uLWNvbG9yLWhlYWRlci1yZXNwb25zaXZlKTsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5oZWFkZXItaW5mbyAuY2xvc2UtbWVudXsNCiAgICBwYWRkaW5nOiAwIDEzcHggMTNweDsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5oZWFkZXItaW5mbyAuY2xvc2UtbWVudSAuaWNvbiB7DQogICAgd2lkdGg6IDIzcHg7DQogICAgaGVpZ2h0OiAyM3B4Ow0KICAgIGZpbGw6IHZhcigtLWljb24tY29sb3ItaGVhZGVyLXJlc3BvbnNpdmUpOw0KfQ0KI2hlYWRlci1yZXNwb25zaXZlLTAxIC5tZW51LWNvbnRlbnQgLmNvbnRlbnQtaW5mbyAubGlzdC1pdGVtIHsNCiAgICB3aWR0aDogMTAwJTsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsNCiAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KfQ0KLmRyb3Bkb3duLW1vYmlsZXsNCiAgICBkaXNwbGF5Om5vbmU7DQogICAgd2lkdGg6IDEwMCU7DQp9DQouZHJvcGRvd24tbW9iaWxlLmFjdGl2ZXsNCiAgICBkaXNwbGF5OiBibG9jazsNCn0NCi5kcm9wZG93bi1tb2JpbGUgLmRyb3Bkb3duLWNvbnRlbnQgLmxpbmt7DQogICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgcGFkZGluZzogMjBweCAwIDIwcHggMzVweDsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgZm9udC1zaXplOiAxNnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxMDAlOw0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KICAgIGNvbG9yOiB2YXIoLS1yZXNwb25zaXZvLW1lbnUtY29sb3ItZm9udCk7DQp9DQouZHJvcGRvd24tbW9iaWxlIC5kcm9wZG93bi1jb250ZW50IC5saW5rOmxhc3QtY2hpbGR7DQogICAgd2lkdGg6IDEwMCU7DQp9DQoudG9nZ2xlLWRyb3Bkb3duew0KICAgIHdpZHRoOiAyNHB4Ow0KICAgIGhlaWdodDogYXV0bzsNCiAgICBwYWRkaW5nOiAwOw0KICAgIHRyYW5zaXRpb246IGFsbCAuMnM7DQp9DQoudG9nZ2xlLWRyb3Bkb3duLmFjdGl2ZSBzdmd7DQogICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5jb250ZW50LWluZm8gLmxpc3QtaXRlbSAubGluayB7DQogICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgd2lkdGg6IDEwMCU7DQogICAgcGFkZGluZzogMjBweCAwIDIwcHggNXB4Ow0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBmb250LXNpemU6IDE2cHg7DQogICAgbGluZS1oZWlnaHQ6IDEwMCU7DQogICAgZm9udC13ZWlnaHQ6IGJvbGQ7DQogICAgY29sb3I6IHZhcigtLXJlc3BvbnNpdm8tbWVudS1jb2xvci1mb250KTsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5jb250ZW50LWluZm8gLmxpc3QtaXRlbS5oYXMtc3ViLW1lbnUgLnN1Yi1tZW51IHsNCiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7DQogICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5jb250ZW50LWluZm8gLmxpc3QtaXRlbS5oYXMtc3ViLW1lbnU6YWZ0ZXIgew0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0b3A6IDIycHg7DQogICAgcmlnaHQ6IDEwcHg7DQogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjJzIGxpbmVhcjsNCiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGxpbmVhcjsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5jb250ZW50LWluZm8gLmxpc3QtaXRlbS5oYXMtc3ViLW1lbnUuY2xvc2VkOmFmdGVyIHsNCiAgICBjb250ZW50OiAnPic7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5jb250ZW50LWluZm8gLmxpc3QtaXRlbS5oYXMtc3ViLW1lbnUub3BlbjphZnRlciB7DQogICAgY29udGVudDogJ1gnOw0KICAgIGZvbnQtc2l6ZTogMTZweDsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5jb250ZW50LWluZm8gLmxpc3QtaXRlbS5oYXMtc3ViLW1lbnUuY2xvc2VkIC5zdWItbWVudSB7DQogICAgb3BhY2l0eTogMDsNCiAgICBoZWlnaHQ6IDA7DQogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsNCiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsNCn0NCiNoZWFkZXItcmVzcG9uc2l2ZS0wMSAubWVudS1jb250ZW50IC5jb250ZW50LWluZm8gLmxpc3QtaXRlbS5oYXMtc3ViLW1lbnUub3BlbiAuc3ViLW1lbnUgew0KICAgIG9wYWNpdHk6IDE7DQogICAgaGVpZ2h0OiAxMDAlOw0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsNCiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOw0KfQ0KI2hlYWRlci1yZXNwb25zaXZlLTAxIC5tZW51LWNvbnRlbnQgLmNvbnRlbnQtaW5mbyAuYnV0dG9uLWhlYWRlci1yZXNwb25zaXZlIHsNCiAgICBtYXJnaW4tdG9wOiA0MnB4Ow0KICAgIGZvbnQtc2l6ZTogMS44cmVtOw0KICAgIGxpbmUtaGVpZ2h0OiAyLjFyZW07DQogICAgZm9udC13ZWlnaHQ6IGJvbGQ7DQp9DQpbZGF0YS1zaWRlYmFyPSJjb250YWluZXIiXSB7DQogICAgb3BhY2l0eTogMDsNCiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsNCiAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgdG9wOiAwOw0KICAgIGxlZnQ6IDA7DQogICAgYm90dG9tOiAwOw0KICAgIHdpZHRoOiAxMDAlOw0KICAgIGhlaWdodDogMTAwJTsNCiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4zNSk7DQogICAgei1pbmRleDogMjU7DQogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjJzIGxpbmVhcjsNCiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGxpbmVhcjsNCn0NCltkYXRhLXNpZGViYXI9ImNvbnRlbnQiXXsNCiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgcmlnaHQ6IDA7DQogICAgdG9wOiAwOw0KICAgIHotaW5kZXg6IDMwOw0KICAgIGJhY2tncm91bmQ6ICNGRkY7DQogICAgd2lkdGg6IDg1dnc7DQogICAgcGFkZGluZzogMzZweDsNCiAgICBoZWlnaHQ6IDEwMCU7DQogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAtNHB4IDAgMTZweCByZ2JhKDAsMCwwLC4xNSk7DQogICAgYm94LXNoYWRvdzogLTRweCAwIDE2cHggcmdiYSgwLDAsMCwuMTUpOw0KICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4ycyBsaW5lYXI7DQogICAgdHJhbnNpdGlvbjogYWxsIC4ycyBsaW5lYXI7DQogICAgb3ZlcmZsb3c6IGF1dG87DQp9DQoNCkBtZWRpYSAobWluLXdpZHRoOjEwMjVweCl7DQogICAgI3NlY3Rpb24taGVhZGVyLW1vYmlsZXsNCiAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICB9DQp9QGNoYXJzZXQgIlVURi04IjsvKiENCiAqIGFuaW1hdGUuY3NzIC0gaHR0cHM6Ly9hbmltYXRlLnN0eWxlLw0KICogVmVyc2lvbiAtIDQuMS4xDQogKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgLSBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUDQogKg0KICogQ29weXJpZ2h0IChjKSAyMDIwIEFuaW1hdGUuY3NzDQogKi8NCjpyb290IHsNCiAgICAtLWFuaW1hdGUtZHVyYXRpb246IDFzOw0KICAgIC0tYW5pbWF0ZS1kZWxheTogMXM7DQogICAgLS1hbmltYXRlLXJlcGVhdDogMTsNCn0NCi5hbmltYXRlX19hbmltYXRlZCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IHZhcigtLWFuaW1hdGUtZHVyYXRpb24pOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKC0tYW5pbWF0ZS1kdXJhdGlvbik7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOw0KICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7DQp9DQouYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9faW5maW5pdGUgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7DQogICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7DQp9DQouYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fcmVwZWF0LTEgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsNCiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogdmFyKC0tYW5pbWF0ZS1yZXBlYXQpOw0KICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IHZhcigtLWFuaW1hdGUtcmVwZWF0KTsNCn0NCi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19yZXBlYXQtMiB7DQogICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAyOw0KICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDI7DQogICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBjYWxjKHZhcigtLWFuaW1hdGUtcmVwZWF0KSAqIDIpOw0KICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGNhbGModmFyKC0tYW5pbWF0ZS1yZXBlYXQpICogMik7DQp9DQouYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fcmVwZWF0LTMgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMzsNCiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAzOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogY2FsYyh2YXIoLS1hbmltYXRlLXJlcGVhdCkgKiAzKTsNCiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBjYWxjKHZhcigtLWFuaW1hdGUtcmVwZWF0KSAqIDMpOw0KfQ0KLmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX2RlbGF5LTFzIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMXM7DQogICAgYW5pbWF0aW9uLWRlbGF5OiAxczsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogdmFyKC0tYW5pbWF0ZS1kZWxheSk7DQogICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1hbmltYXRlLWRlbGF5KTsNCn0NCi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19kZWxheS0ycyB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDJzOw0KICAgIGFuaW1hdGlvbi1kZWxheTogMnM7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkgKiAyKTsNCiAgICBhbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkgKiAyKTsNCn0NCi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19kZWxheS0zcyB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDNzOw0KICAgIGFuaW1hdGlvbi1kZWxheTogM3M7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkgKiAzKTsNCiAgICBhbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkgKiAzKTsNCn0NCi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19kZWxheS00cyB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDRzOw0KICAgIGFuaW1hdGlvbi1kZWxheTogNHM7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkgKiA0KTsNCiAgICBhbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkgKiA0KTsNCn0NCi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19kZWxheS01cyB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDVzOw0KICAgIGFuaW1hdGlvbi1kZWxheTogNXM7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkgKiA1KTsNCiAgICBhbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkgKiA1KTsNCn0NCi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19mYXN0ZXIgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41czsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAvIDIpOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAvIDIpOw0KfQ0KLmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX2Zhc3Qgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjhzOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC44czsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuOCk7DQogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMC44KTsNCn0NCi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19zbG93IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMnM7DQogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyczsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDIpOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDIpOw0KfQ0KLmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX3Nsb3dlciB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDNzOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogM3M7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAzKTsNCiAgICBhbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAzKTsNCn0NCkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSwgcHJpbnQgew0KICAgIC5hbmltYXRlX19hbmltYXRlZCB7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDsNCiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDsNCiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMW1zICFpbXBvcnRhbnQ7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50Ow0KICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7DQogICAgfQ0KICAgIC5hbmltYXRlX19hbmltYXRlZFtjbGFzcyo9Ik91dCJdIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlIHsNCiAgICAwJSwNCiAgICAyMCUsDQogICAgNTMlLA0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIDQwJSwNCiAgICA0MyUgew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKSBzY2FsZVkoMS4xKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCkgc2NhbGVZKDEuMSk7DQogICAgfQ0KICAgIDcwJSB7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApIHNjYWxlWSgxLjA1KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCkgc2NhbGVZKDEuMDUpOw0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBzY2FsZVkoMC45NSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBzY2FsZVkoMC45NSk7DQogICAgfQ0KICAgIDkwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKSBzY2FsZVkoMS4wMik7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTRweCwgMCkgc2NhbGVZKDEuMDIpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYm91bmNlIHsNCiAgICAwJSwNCiAgICAyMCUsDQogICAgNTMlLA0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIDQwJSwNCiAgICA0MyUgew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKSBzY2FsZVkoMS4xKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCkgc2NhbGVZKDEuMSk7DQogICAgfQ0KICAgIDcwJSB7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApIHNjYWxlWSgxLjA1KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCkgc2NhbGVZKDEuMDUpOw0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBzY2FsZVkoMC45NSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBzY2FsZVkoMC45NSk7DQogICAgfQ0KICAgIDkwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKSBzY2FsZVkoMS4wMik7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTRweCwgMCkgc2NhbGVZKDEuMDIpOw0KICAgIH0NCn0NCi5hbmltYXRlX19ib3VuY2Ugew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTsNCiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlOw0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZsYXNoIHsNCiAgICAwJSwNCiAgICA1MCUsDQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICAyNSUsDQogICAgNzUlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZsYXNoIHsNCiAgICAwJSwNCiAgICA1MCUsDQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICAyNSUsDQogICAgNzUlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQp9DQouYW5pbWF0ZV9fZmxhc2ggew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsYXNoOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFzaDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBwdWxzZSB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICB9DQogICAgNTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHB1bHNlIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgIH0NCiAgICA1MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgIH0NCn0NCi5hbmltYXRlX19wdWxzZSB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcHVsc2U7DQogICAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7DQogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgcnViYmVyQmFuZCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICB9DQogICAgMzAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTsNCiAgICB9DQogICAgNDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTsNCiAgICB9DQogICAgNTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTsNCiAgICB9DQogICAgNjUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTsNCiAgICB9DQogICAgNzUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHJ1YmJlckJhbmQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7DQogICAgfQ0KICAgIDMwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7DQogICAgfQ0KICAgIDQwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7DQogICAgfQ0KICAgIDUwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7DQogICAgfQ0KICAgIDY1JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7DQogICAgfQ0KICAgIDc1JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3J1YmJlckJhbmQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgc2hha2VYIHsNCiAgICAwJSwNCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIDEwJSwNCiAgICAzMCUsDQogICAgNTAlLA0KICAgIDcwJSwNCiAgICA5MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsNCiAgICB9DQogICAgMjAlLA0KICAgIDQwJSwNCiAgICA2MCUsDQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgc2hha2VYIHsNCiAgICAwJSwNCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIDEwJSwNCiAgICAzMCUsDQogICAgNTAlLA0KICAgIDcwJSwNCiAgICA5MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsNCiAgICB9DQogICAgMjAlLA0KICAgIDQwJSwNCiAgICA2MCUsDQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19zaGFrZVggew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNoYWtlWDsNCiAgICBhbmltYXRpb24tbmFtZTogc2hha2VYOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlWSB7DQogICAgMCUsDQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCiAgICAxMCUsDQogICAgMzAlLA0KICAgIDUwJSwNCiAgICA3MCUsDQogICAgOTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7DQogICAgfQ0KICAgIDIwJSwNCiAgICA0MCUsDQogICAgNjAlLA0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHNoYWtlWSB7DQogICAgMCUsDQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCiAgICAxMCUsDQogICAgMzAlLA0KICAgIDUwJSwNCiAgICA3MCUsDQogICAgOTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7DQogICAgfQ0KICAgIDIwJSwNCiAgICA0MCUsDQogICAgNjAlLA0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fc2hha2VZIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZVk7DQogICAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlWTsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBoZWFkU2hha2Ugew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsNCiAgICB9DQogICAgNi41JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7DQogICAgfQ0KICAgIDE4LjUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpOw0KICAgIH0NCiAgICAzMS41JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7DQogICAgfQ0KICAgIDQzLjUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpOw0KICAgIH0NCiAgICA1MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgaGVhZFNoYWtlIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7DQogICAgfQ0KICAgIDYuNSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpOw0KICAgIH0NCiAgICAxOC41JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTsNCiAgICB9DQogICAgMzEuNSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpOw0KICAgIH0NCiAgICA0My41JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTsNCiAgICB9DQogICAgNTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9faGVhZFNoYWtlIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Ow0KICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Ow0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhlYWRTaGFrZTsNCiAgICBhbmltYXRpb24tbmFtZTogaGVhZFNoYWtlOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nIHsNCiAgICAyMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTVkZWcpOw0KICAgIH0NCiAgICA0MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDVkZWcpOw0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgc3dpbmcgew0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7DQogICAgfQ0KICAgIDQwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTsNCiAgICB9DQogICAgNjAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7DQogICAgfQ0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3N3aW5nIHsNCiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7DQogICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZzsNCiAgICBhbmltYXRpb24tbmFtZTogc3dpbmc7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgdGFkYSB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICB9DQogICAgMTAlLA0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZSgtM2RlZyk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KSByb3RhdGUoLTNkZWcpOw0KICAgIH0NCiAgICAzMCUsDQogICAgNTAlLA0KICAgIDcwJSwNCiAgICA5MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUoM2RlZyk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUoM2RlZyk7DQogICAgfQ0KICAgIDQwJSwNCiAgICA2MCUsDQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlKC0zZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgtM2RlZyk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyB0YWRhIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgIH0NCiAgICAxMCUsDQogICAgMjAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlKC0zZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZSgtM2RlZyk7DQogICAgfQ0KICAgIDMwJSwNCiAgICA1MCUsDQogICAgNzAlLA0KICAgIDkwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgzZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgzZGVnKTsNCiAgICB9DQogICAgNDAlLA0KICAgIDYwJSwNCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUoLTNkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlKC0zZGVnKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fdGFkYSB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTsNCiAgICBhbmltYXRpb24tbmFtZTogdGFkYTsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyB3b2JibGUgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgMTUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZSgtNWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlKC01ZGVnKTsNCiAgICB9DQogICAgMzAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlKDNkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlKDNkZWcpOw0KICAgIH0NCiAgICA0NSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlKC0zZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUoLTNkZWcpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUoMmRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUoMmRlZyk7DQogICAgfQ0KICAgIDc1JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZSgtMWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUoLTFkZWcpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyB3b2JibGUgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgMTUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZSgtNWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlKC01ZGVnKTsNCiAgICB9DQogICAgMzAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlKDNkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlKDNkZWcpOw0KICAgIH0NCiAgICA0NSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlKC0zZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUoLTNkZWcpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUoMmRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUoMmRlZyk7DQogICAgfQ0KICAgIDc1JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZSgtMWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUoLTFkZWcpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3dvYmJsZSB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogd29iYmxlOw0KICAgIGFuaW1hdGlvbi1uYW1lOiB3b2JibGU7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgamVsbG8gew0KICAgIDAlLA0KICAgIDExLjElLA0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgMjIuMiUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpOw0KICAgIH0NCiAgICAzMy4zJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsNCiAgICB9DQogICAgNDQuNCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTsNCiAgICB9DQogICAgNTUuNSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTsNCiAgICB9DQogICAgNjYuNiUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpOw0KICAgIH0NCiAgICA3Ny43JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7DQogICAgfQ0KICAgIDg4LjglIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgamVsbG8gew0KICAgIDAlLA0KICAgIDExLjElLA0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgMjIuMiUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpOw0KICAgIH0NCiAgICAzMy4zJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsNCiAgICB9DQogICAgNDQuNCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTsNCiAgICB9DQogICAgNTUuNSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTsNCiAgICB9DQogICAgNjYuNiUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpOw0KICAgIH0NCiAgICA3Ny43JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7DQogICAgfQ0KICAgIDg4LjglIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpOw0KICAgIH0NCn0NCi5hbmltYXRlX19qZWxsbyB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogamVsbG87DQogICAgYW5pbWF0aW9uLW5hbWU6IGplbGxvOw0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOw0KICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBoZWFydEJlYXQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgIH0NCiAgICAxNCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOw0KICAgIH0NCiAgICAyOCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgfQ0KICAgIDQyJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7DQogICAgfQ0KICAgIDcwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGhlYXJ0QmVhdCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgfQ0KICAgIDE0JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7DQogICAgfQ0KICAgIDI4JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICB9DQogICAgNDIlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsNCiAgICB9DQogICAgNzAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgIH0NCn0NCi5hbmltYXRlX19oZWFydEJlYXQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhlYXJ0QmVhdDsNCiAgICBhbmltYXRpb24tbmFtZTogaGVhcnRCZWF0Ow0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjNzOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS4zczsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDEuMyk7DQogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMS4zKTsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Ow0KICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tJbkRvd24gew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KSBzY2FsZSgwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KSBzY2FsZSgwLjkpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjkpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYmFja0luRG93biB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpIHNjYWxlKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpIHNjYWxlKDAuOSk7DQogICAgICAgIG9wYWNpdHk6IDAuNzsNCiAgICB9DQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDAuOSk7DQogICAgICAgIG9wYWNpdHk6IDAuNzsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2JhY2tJbkRvd24gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tJbkRvd247DQogICAgYW5pbWF0aW9uLW5hbWU6IGJhY2tJbkRvd247DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgYmFja0luTGVmdCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpIHNjYWxlKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpIHNjYWxlKDAuOSk7DQogICAgICAgIG9wYWNpdHk6IDAuNzsNCiAgICB9DQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuOSk7DQogICAgICAgIG9wYWNpdHk6IDAuNzsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBiYWNrSW5MZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2NhbGUoMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2NhbGUoMC45KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMC45KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fYmFja0luTGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYmFja0luTGVmdDsNCiAgICBhbmltYXRpb24tbmFtZTogYmFja0luTGVmdDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBiYWNrSW5SaWdodCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDBweCkgc2NhbGUoMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMHB4KSBzY2FsZSgwLjkpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjkpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYmFja0luUmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwcHgpIHNjYWxlKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDBweCkgc2NhbGUoMC45KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMC45KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fYmFja0luUmlnaHQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tJblJpZ2h0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiBiYWNrSW5SaWdodDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBiYWNrSW5VcCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCkgc2NhbGUoMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHB4KSBzY2FsZSgwLjkpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjkpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYmFja0luVXAgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwcHgpIHNjYWxlKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCkgc2NhbGUoMC45KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC45KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fYmFja0luVXAgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tJblVwOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBiYWNrSW5VcDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBiYWNrT3V0RG93biB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDAuNyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpIHNjYWxlKDAuNyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MDBweCkgc2NhbGUoMC43KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYmFja091dERvd24gew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICAyMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KSBzY2FsZSgwLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpIHNjYWxlKDAuNyk7DQogICAgICAgIG9wYWNpdHk6IDAuNzsNCiAgICB9DQp9DQouYW5pbWF0ZV9fYmFja091dERvd24gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXREb3duOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBiYWNrT3V0RG93bjsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBiYWNrT3V0TGVmdCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjcpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCkgc2NhbGUoMC43KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpIHNjYWxlKDAuNyk7DQogICAgICAgIG9wYWNpdHk6IDAuNzsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGJhY2tPdXRMZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgMjAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMC43KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7DQogICAgICAgIG9wYWNpdHk6IDAuNzsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCkgc2NhbGUoMC43KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCn0NCi5hbmltYXRlX19iYWNrT3V0TGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYmFja091dExlZnQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXRMZWZ0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tPdXRSaWdodCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjcpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSgwLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSgwLjcpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBiYWNrT3V0UmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICAyMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMC43KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCn0NCi5hbmltYXRlX19iYWNrT3V0UmlnaHQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXRSaWdodDsNCiAgICBhbmltYXRpb24tbmFtZTogYmFja091dFJpZ2h0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tPdXRVcCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDAuNyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwMHB4KSBzY2FsZSgwLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwMHB4KSBzY2FsZSgwLjcpOw0KICAgICAgICBvcGFjaXR5OiAwLjc7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBiYWNrT3V0VXAgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICAyMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MDBweCkgc2NhbGUoMC43KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MDBweCkgc2NhbGUoMC43KTsNCiAgICAgICAgb3BhY2l0eTogMC43Ow0KICAgIH0NCn0NCi5hbmltYXRlX19iYWNrT3V0VXAgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXRVcDsNCiAgICBhbmltYXRpb24tbmFtZTogYmFja091dFVwOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluIHsNCiAgICAwJSwNCiAgICAyMCUsDQogICAgNDAlLA0KICAgIDYwJSwNCiAgICA4MCUsDQogICAgdG8gew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICB9DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOw0KICAgIH0NCiAgICAyMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOw0KICAgIH0NCiAgICA0MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpOw0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYm91bmNlSW4gew0KICAgIDAlLA0KICAgIDIwJSwNCiAgICA0MCUsDQogICAgNjAlLA0KICAgIDgwJSwNCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgIH0NCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7DQogICAgfQ0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7DQogICAgfQ0KICAgIDQwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7DQogICAgfQ0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2JvdW5jZUluIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7DQogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24gew0KICAgIDAlLA0KICAgIDYwJSwNCiAgICA3NSUsDQogICAgOTAlLA0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7DQogICAgfQ0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApIHNjYWxlWSgzKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKSBzY2FsZVkoMyk7DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKSBzY2FsZVkoMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKSBzY2FsZVkoMC45KTsNCiAgICB9DQogICAgNzUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSBzY2FsZVkoMC45NSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk1KTsNCiAgICB9DQogICAgOTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCkgc2NhbGVZKDAuOTg1KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApIHNjYWxlWSgwLjk4NSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGJvdW5jZUluRG93biB7DQogICAgMCUsDQogICAgNjAlLA0KICAgIDc1JSwNCiAgICA5MCUsDQogICAgdG8gew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICB9DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCkgc2NhbGVZKDMpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApIHNjYWxlWSgzKTsNCiAgICB9DQogICAgNjAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApIHNjYWxlWSgwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApIHNjYWxlWSgwLjkpOw0KICAgIH0NCiAgICA3NSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk1KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTUpOw0KICAgIH0NCiAgICA5MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKSBzY2FsZVkoMC45ODUpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCkgc2NhbGVZKDAuOTg1KTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19ib3VuY2VJbkRvd24gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjsNCiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7DQogICAgMCUsDQogICAgNjAlLA0KICAgIDc1JSwNCiAgICA5MCUsDQogICAgdG8gew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICB9DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwMHB4LCAwLCAwKSBzY2FsZVgoMyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwMHB4LCAwLCAwKSBzY2FsZVgoMyk7DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKSBzY2FsZVgoMSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCkgc2NhbGVYKDEpOw0KICAgIH0NCiAgICA3NSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpOw0KICAgIH0NCiAgICA5MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKSBzY2FsZVgoMC45OTUpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCkgc2NhbGVYKDAuOTk1KTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHsNCiAgICAwJSwNCiAgICA2MCUsDQogICAgNzUlLA0KICAgIDkwJSwNCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgIH0NCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAwcHgsIDAsIDApIHNjYWxlWCgzKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAwcHgsIDAsIDApIHNjYWxlWCgzKTsNCiAgICB9DQogICAgNjAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApIHNjYWxlWCgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKSBzY2FsZVgoMSk7DQogICAgfQ0KICAgIDc1JSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKSBzY2FsZVgoMC45OCk7DQogICAgfQ0KICAgIDkwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKSBzY2FsZVgoMC45OTUpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2JvdW5jZUluTGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7DQogICAgMCUsDQogICAgNjAlLA0KICAgIDc1JSwNCiAgICA5MCUsDQogICAgdG8gew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICB9DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNTAwcHgsIDAsIDApIHNjYWxlWCgzKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1MDBweCwgMCwgMCkgc2NhbGVYKDMpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApIHNjYWxlWCgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCkgc2NhbGVYKDEpOw0KICAgIH0NCiAgICA3NSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTsNCiAgICB9DQogICAgOTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCkgc2NhbGVYKDAuOTk1KTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7DQogICAgMCUsDQogICAgNjAlLA0KICAgIDc1JSwNCiAgICA5MCUsDQogICAgdG8gew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICB9DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNTAwcHgsIDAsIDApIHNjYWxlWCgzKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1MDBweCwgMCwgMCkgc2NhbGVYKDMpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApIHNjYWxlWCgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCkgc2NhbGVYKDEpOw0KICAgIH0NCiAgICA3NSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTsNCiAgICB9DQogICAgOTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCkgc2NhbGVYKDAuOTk1KTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19ib3VuY2VJblJpZ2h0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluVXAgew0KICAgIDAlLA0KICAgIDYwJSwNCiAgICA3NSUsDQogICAgOTAlLA0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7DQogICAgfQ0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCkgc2NhbGVZKDUpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCkgc2NhbGVZKDUpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKSBzY2FsZVkoMC45KTsNCiAgICB9DQogICAgNzUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHNjYWxlWSgwLjk1KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45NSk7DQogICAgfQ0KICAgIDkwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKSBzY2FsZVkoMC45ODUpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApIHNjYWxlWSgwLjk4NSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGJvdW5jZUluVXAgew0KICAgIDAlLA0KICAgIDYwJSwNCiAgICA3NSUsDQogICAgOTAlLA0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7DQogICAgfQ0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCkgc2NhbGVZKDUpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCkgc2NhbGVZKDUpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKSBzY2FsZVkoMC45KTsNCiAgICB9DQogICAgNzUlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHNjYWxlWSgwLjk1KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45NSk7DQogICAgfQ0KICAgIDkwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKSBzY2FsZVkoMC45ODUpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApIHNjYWxlWSgwLjk4NSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fYm91bmNlSW5VcCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDsNCiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXQgew0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7DQogICAgfQ0KICAgIDUwJSwNCiAgICA1NSUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBib3VuY2VPdXQgew0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7DQogICAgfQ0KICAgIDUwJSwNCiAgICA1NSUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2JvdW5jZU91dCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNzVzOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7DQogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjc1KTsNCiAgICBhbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjc1KTsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXREb3duIHsNCiAgICAyMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgc2NhbGVZKDAuOTg1KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45ODUpOw0KICAgIH0NCiAgICA0MCUsDQogICAgNDUlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKSBzY2FsZVkoMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgc2NhbGVZKDAuOSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCkgc2NhbGVZKDMpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCkgc2NhbGVZKDMpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgYm91bmNlT3V0RG93biB7DQogICAgMjAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHNjYWxlWSgwLjk4NSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgc2NhbGVZKDAuOTg1KTsNCiAgICB9DQogICAgNDAlLA0KICAgIDQ1JSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgc2NhbGVZKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApIHNjYWxlWSgzKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApIHNjYWxlWSgzKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fYm91bmNlT3V0RG93biB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjsNCiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHsNCiAgICAyMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApIHNjYWxlWCgyKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKSBzY2FsZVgoMik7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHsNCiAgICAyMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApIHNjYWxlWCgyKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKSBzY2FsZVgoMik7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2JvdW5jZU91dExlZnQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQgew0KICAgIDIwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApIHNjYWxlWCgwLjkpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApIHNjYWxlWCgyKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApIHNjYWxlWCgyKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHsNCiAgICAyMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApIHNjYWxlWCgwLjkpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKSBzY2FsZVgoMC45KTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKSBzY2FsZVgoMik7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKSBzY2FsZVgoMik7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2JvdW5jZU91dFJpZ2h0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDsNCiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0VXAgew0KICAgIDIwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTg1KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTg1KTsNCiAgICB9DQogICAgNDAlLA0KICAgIDQ1JSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKSBzY2FsZVkoMC45KTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKSBzY2FsZVkoMC45KTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCkgc2NhbGVZKDMpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApIHNjYWxlWSgzKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHsNCiAgICAyMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk4NSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk4NSk7DQogICAgfQ0KICAgIDQwJSwNCiAgICA0NSUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCkgc2NhbGVZKDAuOSk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCkgc2NhbGVZKDAuOSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApIHNjYWxlWSgzKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKSBzY2FsZVkoMyk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2JvdW5jZU91dFVwIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDsNCiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluIHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVJbiB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVJbiB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwJSwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVJbkRvd24gew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMCUsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVJbkRvd24gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVJbkRvd25CaWcgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwJSwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwJSwgMCwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVJbkxlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMCUsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMCUsIDAsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVJbkxlZnQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVJbkxlZnRCaWcgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgZmFkZUluUmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19mYWRlSW5SaWdodCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fZmFkZUluUmlnaHRCaWcgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZzsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMCUsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlSW5VcCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMCUsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVJblVwIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDsNCiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXBCaWcgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgZmFkZUluVXBCaWcgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19mYWRlSW5VcEJpZyB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblRvcExlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMCUsIC0xMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMCUsIC0xMCUsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlSW5Ub3BMZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAlLCAtMTAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAlLCAtMTAlLCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19mYWRlSW5Ub3BMZWZ0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Ub3BMZWZ0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Ub3BMZWZ0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblRvcFJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIC0xMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgLTEwJSwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVJblRvcFJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIC0xMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgLTEwJSwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fZmFkZUluVG9wUmlnaHQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblRvcFJpZ2h0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Ub3BSaWdodDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Cb3R0b21MZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAlLCAxMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMCUsIDEwJSwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVJbkJvdHRvbUxlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMCUsIDEwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwJSwgMTAlLCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19mYWRlSW5Cb3R0b21MZWZ0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Cb3R0b21MZWZ0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Cb3R0b21MZWZ0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkJvdHRvbVJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDEwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAxMCUsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlSW5Cb3R0b21SaWdodCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAxMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMTAlLCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19mYWRlSW5Cb3R0b21SaWdodCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluQm90dG9tUmlnaHQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkJvdHRvbVJpZ2h0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgZmFkZU91dCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVPdXQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24gew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlT3V0RG93biB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fZmFkZU91dERvd24gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bjsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVPdXREb3duQmlnIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkJpZzsNCiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVPdXRMZWZ0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDsNCiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnRCaWcgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fZmFkZU91dExlZnRCaWcgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdEJpZzsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVPdXRSaWdodCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVPdXRSaWdodEJpZyB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlT3V0VXAgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fZmFkZU91dFVwIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXBCaWcgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVPdXRVcEJpZyB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFRvcExlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgLTEwMCUsIDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgZmFkZU91dFRvcExlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgLTEwMCUsIDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19mYWRlT3V0VG9wTGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFRvcExlZnQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRUb3BMZWZ0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRUb3BSaWdodCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgLTEwMCUsIDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgZmFkZU91dFRvcFJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZhZGVPdXRUb3BSaWdodCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFRvcFJpZ2h0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VG9wUmlnaHQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dEJvdHRvbVJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgZmFkZU91dEJvdHRvbVJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19mYWRlT3V0Qm90dG9tUmlnaHQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRCb3R0b21SaWdodDsNCiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dEJvdHRvbVJpZ2h0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRCb3R0b21MZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmYWRlT3V0Qm90dG9tTGVmdCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDEwMCUsIDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19mYWRlT3V0Qm90dG9tTGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dEJvdHRvbUxlZnQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRCb3R0b21MZWZ0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZsaXAgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKC0xdHVybik7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoLTF0dXJuKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7DQogICAgfQ0KICAgIDQwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoLTE5MGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xOTBkZWcpOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Ow0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsNCiAgICB9DQogICAgNTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgtMTcwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoLTE3MGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICB9DQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgwLjk1LCAwLjk1LCAwLjk1KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZsaXAgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKC0xdHVybik7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoLTF0dXJuKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7DQogICAgfQ0KICAgIDQwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoLTE5MGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xOTBkZWcpOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Ow0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsNCiAgICB9DQogICAgNTAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgtMTcwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoLTE3MGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICB9DQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgwLjk1LCAwLjk1LCAwLjk1KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICB9DQp9DQouYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZmxpcCB7DQogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlOw0KICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcDsNCiAgICBhbmltYXRpb24tbmFtZTogZmxpcDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5YIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KICAgIDQwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0yMGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICB9DQogICAgNjAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtNWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTVkZWcpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgZmxpcEluWCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICA0MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMTBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC01ZGVnKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fZmxpcEluWCB7DQogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7DQogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50Ow0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7DQogICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmxpcEluWSB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICA0MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTIwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMjBkZWcpOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgxMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC01ZGVnKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGZsaXBJblkgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQogICAgNDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0yMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTIwZGVnKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC01ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtNWRlZyk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZsaXBJblkgew0KICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50Ow0KICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRYIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOw0KICAgIH0NCiAgICAzMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgZmxpcE91dFggew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7DQogICAgfQ0KICAgIDMwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0yMGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2ZsaXBPdXRYIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7DQogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDsNCiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsNCiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFkgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7DQogICAgfQ0KICAgIDMwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMTVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xNWRlZyk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBmbGlwT3V0WSB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsNCiAgICB9DQogICAgMzAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xNWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTE1ZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQp9DQouYW5pbWF0ZV9fZmxpcE91dFkgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsNCiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMC43NSk7DQogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMC43NSk7DQogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7DQogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50Ow0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkSW5SaWdodCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJblJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19saWdodFNwZWVkSW5SaWdodCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluUmlnaHQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJblJpZ2h0Ow0KICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7DQogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluTGVmdCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTIwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMjBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goNWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogc2tld1goNWRlZyk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbkxlZnQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQogICAgNjAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0yMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogc2tld1goLTIwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDVkZWcpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2xpZ2h0U3BlZWRJbkxlZnQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbkxlZnQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbkxlZnQ7DQogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsNCiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0UmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXRSaWdodCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCi5hbmltYXRlX19saWdodFNwZWVkT3V0UmlnaHQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXRSaWdodDsNCiAgICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dFJpZ2h0Ow0KICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsNCiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXRMZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dExlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2xpZ2h0U3BlZWRPdXRMZWZ0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0TGVmdDsNCiAgICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dExlZnQ7DQogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOw0KICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW4gew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMjAwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHJvdGF0ZUluIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0yMDBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3JvdGF0ZUluIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjsNCiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47DQogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7DQogICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCi5hbmltYXRlX19yb3RhdGVJbkRvd25MZWZ0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0Ow0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207DQogICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCi5hbmltYXRlX19yb3RhdGVJbkRvd25SaWdodCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0Ow0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOw0KICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3JvdGF0ZUluVXBMZWZ0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDsNCiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7DQogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3JvdGF0ZUluVXBSaWdodCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7DQogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207DQogICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjAwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjAwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHJvdGF0ZU91dCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjAwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjAwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQp9DQouYW5pbWF0ZV9fcm90YXRlT3V0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDsNCiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCi5hbmltYXRlX19yb3RhdGVPdXREb3duTGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93bkxlZnQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0Ow0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207DQogICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCi5hbmltYXRlX19yb3RhdGVPdXREb3duUmlnaHQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDsNCiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93blJpZ2h0Ow0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOw0KICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3JvdGF0ZU91dFVwTGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7DQogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCi5hbmltYXRlX19yb3RhdGVPdXRVcFJpZ2h0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0Ow0KICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0Ow0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOw0KICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Ow0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsNCiAgICB9DQogICAgMjAlLA0KICAgIDYwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoODBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4MGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Ow0KICAgIH0NCiAgICA0MCUsDQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBoaW5nZSB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Ow0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsNCiAgICB9DQogICAgMjAlLA0KICAgIDYwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoODBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4MGRlZyk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Ow0KICAgIH0NCiAgICA0MCUsDQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX2hpbmdlIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMnM7DQogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyczsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDIpOw0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDIpOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhpbmdlOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBoaW5nZTsNCiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0Ow0KICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIGphY2tJblRoZUJveCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOw0KICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOw0KICAgIH0NCiAgICA1MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7DQogICAgfQ0KICAgIDcwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIGphY2tJblRoZUJveCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOw0KICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOw0KICAgIH0NCiAgICA1MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7DQogICAgfQ0KICAgIDcwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9famFja0luVGhlQm94IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBqYWNrSW5UaGVCb3g7DQogICAgYW5pbWF0aW9uLW5hbWU6IGphY2tJblRoZUJveDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyByb2xsSW4gew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUoLTEyMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZSgtMTIwZGVnKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgcm9sbEluIHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlKC0xMjBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUoLTEyMGRlZyk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fcm9sbEluIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsSW47DQogICAgYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZSgxMjBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZSgxMjBkZWcpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgcm9sbE91dCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUoMTIwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUoMTIwZGVnKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fcm9sbE91dCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbE91dDsNCiAgICBhbmltYXRpb24tbmFtZTogcm9sbE91dDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW4gew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC44LCAwLjgsIDAuOCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjgsIDAuOCwgMC44KTsNCiAgICB9DQogICAgNTAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHpvb21JbiB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjgsIDAuOCwgMC44KTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOCwgMC44LCAwLjgpOw0KICAgIH0NCiAgICA1MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCi5hbmltYXRlX196b29tSW4gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbjsNCiAgICBhbmltYXRpb24tbmFtZTogem9vbUluOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkRvd24gew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgem9vbUluRG93biB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICB9DQogICAgNjAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3pvb21JbkRvd24gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbkRvd247DQogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkRvd247DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluTGVmdCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICB9DQogICAgNjAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyB6b29tSW5MZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fem9vbUluTGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluTGVmdDsNCiAgICBhbmltYXRpb24tbmFtZTogem9vbUluTGVmdDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5SaWdodCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyB6b29tSW5SaWdodCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgfQ0KICAgIDYwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3pvb21JblJpZ2h0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5SaWdodDsNCiAgICBhbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluVXAgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgem9vbUluVXAgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOw0KICAgIH0NCiAgICA2MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOw0KICAgIH0NCn0NCi5hbmltYXRlX196b29tSW5VcCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluVXA7DQogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblVwOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXQgew0KICAgIDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQogICAgNTAlIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgem9vbU91dCB7DQogICAgMCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCiAgICA1MCUgew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3pvb21PdXQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dERvd24gew0KICAgIDQwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgem9vbU91dERvd24gew0KICAgIDQwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7DQogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOw0KICAgIH0NCn0NCi5hbmltYXRlX196b29tT3V0RG93biB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dERvd247DQogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duOw0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHsNCiAgICA0MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyB6b29tT3V0TGVmdCB7DQogICAgNDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOw0KICAgIH0NCn0NCi5hbmltYXRlX196b29tT3V0TGVmdCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dExlZnQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0Ow0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7DQogICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFJpZ2h0IHsNCiAgICA0MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyB6b29tT3V0UmlnaHQgew0KICAgIDQwJSB7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fem9vbU91dFJpZ2h0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0UmlnaHQ7DQogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDsNCiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFVwIHsNCiAgICA0MCUgew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOw0KICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOw0KICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHpvb21PdXRVcCB7DQogICAgNDAlIHsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsNCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsNCiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3pvb21PdXRVcCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFVwOw0KICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7DQogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOw0KICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkRvd24gew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7DQogICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHNsaWRlSW5Eb3duIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOw0KICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3NsaWRlSW5Eb3duIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluRG93bjsNCiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkxlZnQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7DQogICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOw0KICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KfQ0KLmFuaW1hdGVfX3NsaWRlSW5MZWZ0IHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDsNCiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7DQp9DQpALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsNCiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsNCiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19zbGlkZUluUmlnaHQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDsNCiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5VcCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7DQogICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHNsaWRlSW5VcCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7DQogICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fc2xpZGVJblVwIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7DQogICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dERvd24gew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19zbGlkZU91dERvd24gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjsNCiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duOw0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgIH0NCiAgICB0byB7DQogICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7DQogICAgfQ0KfQ0KQGtleWZyYW1lcyBzbGlkZU91dExlZnQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19zbGlkZU91dExlZnQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDsNCiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0Ow0KfQ0KQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsNCiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsNCiAgICB9DQp9DQouYW5pbWF0ZV9fc2xpZGVPdXRSaWdodCB7DQogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDsNCiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDsNCn0NCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFVwIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgfQ0KICAgIHRvIHsNCiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsNCiAgICB9DQp9DQpAa2V5ZnJhbWVzIHNsaWRlT3V0VXAgew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsNCiAgICB9DQogICAgdG8gew0KICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7DQogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOw0KICAgIH0NCn0NCi5hbmltYXRlX19zbGlkZU91dFVwIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwOw0KICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwOw0KfQ0KDQouc3dhbDItcG9wdXAgew0KICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LWZvbnQtZmFtaWx5KTsNCn0NCi5zZWxlY3QyLWNvbnRhaW5lcnsNCiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50Ow0KfS8qKg0KICogU3dpcGVyIDguMy4yDQogKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9ucw0KICogaHR0cHM6Ly9zd2lwZXJqcy5jb20NCiAqDQogKiBDb3B5cmlnaHQgMjAxNC0yMDIyIFZsYWRpbWlyIEtoYXJsYW1waWRpDQogKg0KICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlDQogKg0KICogUmVsZWFzZWQgb246IEp1bHkgMjYsIDIwMjINCiAqLw0KDQpAZm9udC1mYWNlIHsNCiAgICBmb250LWZhbWlseTogc3dpcGVyLWljb25zOw0KICAgIHNyYzogdXJsKCdkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwgZDA5R1JnQUJBQUFBQUFaZ0FCQUFBQUFBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQUdSQUFBQUJvQUFBQWNpNnFIa1VkRVJVWUFBQVdnQUFBQUl3QUFBQ1FBWUFCWFIxQlBVd0FBQmhRQUFBQXVBQUFBTnVBWTcreEhVMVZDQUFBRnhBQUFBRkFBQUFCbTJmUGN6VTlUTHpJQUFBSGNBQUFBU2dBQUFHQlA5VjVSWTIxaGNBQUFBa1FBQUFDSUFBQUJZdDZGMGNCamRuUWdBQUFDekFBQUFBUUFBQUFFQUJFQlJHZGhjM0FBQUFXWUFBQUFDQUFBQUFqLy93QURaMng1WmdBQUF5d0FBQURNQUFBRDJNSHRyeVZvWldGa0FBQUJiQUFBQURBQUFBQTJFMitlb1dob1pXRUFBQUdjQUFBQUh3QUFBQ1FDOWdEemFHMTBlQUFBQWlnQUFBQVpBQUFBcmdKa0FCRnNiMk5oQUFBQzBBQUFBRm9BQUFCYUZRQVVHRzFoZUhBQUFBRzhBQUFBSHdBQUFDQUFjQUJBYm1GdFpRQUFBL2dBQUFFNUFBQUNYdkZkQndsd2IzTjBBQUFGTkFBQUFHSUFBQUNFNXM3NGhYamFZMkJrWUdBQVlwZjVIdS9qK1cyK01uQXpNWURBemFYNlFqRDYvNC8vQnhqNUdBOEF1UndNWUdrQVB5d0wxM2phWTJCa1lHQTg4UDhBZ3g0aisvOGZRRFlmQTFBRUJXZ0RBSUIyQk9vQWVOcGpZR1JnWU5CaDRHZGdZZ0FCRU1uSUFCSnpZTkFEQ1FBQUNXZ0FzUUI0Mm1OZ1lmekNPSUdCbFlHQjBZY3hqWUdCd1IxS2YyV1FaR2hoWUdCaVlHVm1nQUZHQmlRUWtPYWF3dERBb01CUXhYamcvd0VHUGNZRERBNHdOVUEyQ0Nnd3NBQUFPNEVMNmdBQWVOcGoyTTBneUFBQ3F4Z0dOV0JrWjJENC93TUEreGtEZGdBQUFIamFZMkJnWUdhQVlCa0dSZ1lRaUFIeUdNRjhGZ1lISU0zRHdNSEFCR1FyTU9neVdETEVNMVQ5L3c4VUJmRU1nTHpFLy8vL1AvNS8vZi9WL3h2K3I0ZWFBQWVNYkF4d0lVWW1JTUhFZ0tZQVlqVWNzREF3c0xLeGMzQnljZlB3OGpFUUEvZ1pCQVNGaEVWRXhjUWxKS1drWldUbDVCVVVsWlJWVk5YVU5UUVpCZ01BQU1SK0UrZ0FFUUZFQUFBQUtnQXFBQ29BTkFBK0FFZ0FVZ0JjQUdZQWNBQjZBSVFBamdDWUFLSUFyQUMyQU1BQXlnRFVBTjRBNkFEeUFQd0JCZ0VRQVJvQkpBRXVBVGdCUWdGTUFWWUJZQUZxQVhRQmZnR0lBWklCbkFHbUFiSUJ6Z0hzQUFCNDJ1Mk5NUTZDVUF5R1c1Njh4OUFuZVlZZ200TUpiaEtGYUV4SU9BVlg4QXBld1N0NEJpYzRBZmVBaWQzVk9CaXhEeGZQWUV6YTVPK1hmaTA0WUFEZ2dpVUlVTEN1RUpLOFZoTzRiU3ZwZG5rdEhJNVFDWXRkaTJzbDhablhhSGxxVXJOS3pkS2NUOGNqbHErcndaU3ZJVmN6TmllenNmblAvdXpubWZQRkJOT0RNMks3TVRRNDVZRUFacUdQODFBbUdHY0YzaVBxT29wMHIxU1BUYVRiVmtmVWU0SFhqOTd3WUUreU53V1l4d1d1NHYxdWdXSGdvM1MxWGRaRVZxV003RVQwY2ZuTEd4V2ZrZ1I0Mm8yUHZXckRNQlNGai9JSExhRjB6S2pSZ2RpVk13U2NOUkFvV1VvSDc4WTJpY0IveUlZMDlBbjZBSDJCZHUvVUIreXhvcFlzaFFpRXZudnUwZFVSZ0R0OFFlQzhQRHc3RnBqaTNmRUE0ei9QRUo2WU9CNWhLaDRkajNFdlhoeFBxSC9TS1VZM3JKN3NyWjRGWm5oMVBNQXRQaHdQNmZsMlBNSk1QRGdlUTRyWThZVDZHemFvMGVBRUE0MDlEdWdnbVRuRm5PY1NDaUVpTE1neENpVEk2Q3E1RFpVZDNRbXAxMHZPMExhTFRkMmNqTjRmT3VtbGM3bFVZYlNRY1pGa3V0Ukc3ZzZKS1pLeTBSbWRMWTY4MENEbkVKK1VNa3BGRmUxUk43bnhkVnBYckM0YVR0bmF1ck9uWWVyY1pnMllWbUxOL2QvZ2N6ZkVpbXJFL2ZzL2JPdXEyOVptbjh0bG9PUmFYZ1pnR2E3OHlPOS9jblhtMkJwYUd2cTI1RHY5UzRFOSs1U0ljOVBxdXBKS2hZRlNTbDQ3K1FjcjFtWU5BQUFBZU5wdHcwY0t3a0FBQU1EWkpBOFE3T1VKdmtMc1BmWjZ6RlZFUlB5OHFIaDJZRVIrM2kvQlA4M3ZJQkxMeVNzb0tpbXJxS3FwYTJocDYranE2UnNZR2htYm1KcVpTeTBzcmF4dGJPM3NIUnlkbkVNVTR1UjZ5eDdKSlh2ZVA3V3JEeWNBQUFBQUFBSC8vd0FDZU5wallHUmdZT0FCWWhrZ1pnSkNaZ1pOQmtZR0xRWnRJSnNGTE1ZQUFBdzNBTGdBZU5vbGl6RUtnREFRQkNjaFJiQzJzRkVSMFlENnFWUWlCQ3YvSDllekdJNlo1WEJBdzhDQksvbTVpUVFWYXVWYlhMbk9yTVp2Mm9MZEtGYThQanVydTJoSnpHYWJtT1NMek5NenZ1dHBCM040Mm1OZ1pHQmc0R0tRWXpCaFlNeEpMTWxqNEdCZ0FZb3cvUC9QQUpKaExNNnNTb1dLZldDQUF3REFqZ2JSQUFCNDJtTmdZR0JrQUlJYkNabzVJUHJtVW4waEdBMEFPOEVGVFFBQScpOw0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsDQp9DQoNCjpyb290IHsNCiAgICAtLXN3aXBlci10aGVtZS1jb2xvcjogIzAwN2FmZg0KfQ0KDQouc3dpcGVyIHsNCiAgICBtYXJnaW4tbGVmdDogYXV0bzsNCiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87DQogICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgbGlzdC1zdHlsZTogbm9uZTsNCiAgICBwYWRkaW5nOiAwOw0KICAgIHotaW5kZXg6IDENCn0NCg0KLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXdyYXBwZXIgew0KICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4NCn0NCg0KLnN3aXBlci13cmFwcGVyIHsNCiAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgd2lkdGg6IDEwMCU7DQogICAgaGVpZ2h0OiAxMDAlOw0KICAgIHotaW5kZXg6IDE7DQogICAgZGlzcGxheTogZmxleDsNCiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07DQogICAgYm94LXNpemluZzogY29udGVudC1ib3gNCn0NCg0KLnN3aXBlci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsDQouc3dpcGVyLXdyYXBwZXIgew0KICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKQ0KfQ0KDQouc3dpcGVyLXBvaW50ZXItZXZlbnRzIHsNCiAgICB0b3VjaC1hY3Rpb246IHBhbi15DQp9DQoNCi5zd2lwZXItcG9pbnRlci1ldmVudHMuc3dpcGVyLXZlcnRpY2FsIHsNCiAgICB0b3VjaC1hY3Rpb246IHBhbi14DQp9DQoNCi5zd2lwZXItc2xpZGUgew0KICAgIGZsZXgtc2hyaW5rOiAwOw0KICAgIHdpZHRoOiAxMDAlOw0KICAgIGhlaWdodDogMTAwJTsNCiAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtDQp9DQoNCi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHsNCiAgICB2aXNpYmlsaXR5OiBoaWRkZW4NCn0NCg0KLnN3aXBlci1hdXRvaGVpZ2h0LA0KLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGUgew0KICAgIGhlaWdodDogYXV0bw0KfQ0KDQouc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHsNCiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsNCiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodA0KfQ0KDQouc3dpcGVyLWJhY2tmYWNlLWhpZGRlbiAuc3dpcGVyLXNsaWRlIHsNCiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7DQogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47DQogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuDQp9DQoNCi5zd2lwZXItM2QsDQouc3dpcGVyLTNkLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXIgew0KICAgIHBlcnNwZWN0aXZlOiAxMjAwcHgNCn0NCg0KLnN3aXBlci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93LA0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLA0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdywNCi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLA0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LA0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwNCi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLA0KLnN3aXBlci0zZCAuc3dpcGVyLXdyYXBwZXIgew0KICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QNCn0NCg0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdywNCi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLA0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LA0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwNCi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgbGVmdDogMDsNCiAgICB0b3A6IDA7DQogICAgd2lkdGg6IDEwMCU7DQogICAgaGVpZ2h0OiAxMDAlOw0KICAgIHBvaW50ZXItZXZlbnRzOiBub25lOw0KICAgIHotaW5kZXg6IDEwDQp9DQoNCi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3cgew0KICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjE1KQ0KfQ0KDQouc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQgew0KICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIC41KSwgcmdiYSgwLCAwLCAwLCAwKSkNCn0NCg0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7DQogICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIC41KSwgcmdiYSgwLCAwLCAwLCAwKSkNCn0NCg0KLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Agew0KICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgLjUpLCByZ2JhKDAsIDAsIDAsIDApKQ0KfQ0KDQouc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7DQogICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAuNSksIHJnYmEoMCwgMCwgMCwgMCkpDQp9DQoNCi5zd2lwZXItY3NzLW1vZGU+LnN3aXBlci13cmFwcGVyIHsNCiAgICBvdmVyZmxvdzogYXV0bzsNCiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7DQogICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lDQp9DQoNCi5zd2lwZXItY3NzLW1vZGU+LnN3aXBlci13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhciB7DQogICAgZGlzcGxheTogbm9uZQ0KfQ0KDQouc3dpcGVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRlIHsNCiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQNCn0NCg0KLnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1jc3MtbW9kZT4uc3dpcGVyLXdyYXBwZXIgew0KICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5DQp9DQoNCi5zd2lwZXItdmVydGljYWwuc3dpcGVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlciB7DQogICAgc2Nyb2xsLXNuYXAtdHlwZTogeSBtYW5kYXRvcnkNCn0NCg0KLnN3aXBlci1jZW50ZXJlZD4uc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7DQogICAgY29udGVudDogJyc7DQogICAgZmxleC1zaHJpbms6IDA7DQogICAgb3JkZXI6IDk5OTkNCn0NCg0KLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXdyYXBwZXI+LnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZCB7DQogICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpDQp9DQoNCi5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci13cmFwcGVyOjpiZWZvcmUgew0KICAgIGhlaWdodDogMTAwJTsNCiAgICBtaW4taGVpZ2h0OiAxcHg7DQogICAgd2lkdGg6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpDQp9DQoNCi5zd2lwZXItY2VudGVyZWQuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHsNCiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKQ0KfQ0KDQouc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7DQogICAgd2lkdGg6IDEwMCU7DQogICAgbWluLXdpZHRoOiAxcHg7DQogICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKQ0KfQ0KDQouc3dpcGVyLWNlbnRlcmVkPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRlIHsNCiAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyIGNlbnRlcg0KfQ0KDQouc3dpcGVyLXZpcnR1YWwgLnN3aXBlci1zbGlkZSB7DQogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47DQogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApDQp9DQoNCi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyOjphZnRlciB7DQogICAgY29udGVudDogJyc7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIGxlZnQ6IDA7DQogICAgdG9wOiAwOw0KICAgIHBvaW50ZXItZXZlbnRzOiBub25lDQp9DQoNCi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWhvcml6b250YWwgLnN3aXBlci13cmFwcGVyOjphZnRlciB7DQogICAgaGVpZ2h0OiAxcHg7DQogICAgd2lkdGg6IHZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpDQp9DQoNCi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLXZlcnRpY2FsIC5zd2lwZXItd3JhcHBlcjo6YWZ0ZXIgew0KICAgIHdpZHRoOiAxcHg7DQogICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItdmlydHVhbC1zaXplKQ0KfQ0KDQo6cm9vdCB7DQogICAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiA0NHB4DQp9DQoNCi5zd2lwZXItYnV0dG9uLW5leHQsDQouc3dpcGVyLWJ1dHRvbi1wcmV2IHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgdG9wOiA1MCU7DQogICAgd2lkdGg6IGNhbGModmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkvIDQ0ICogMjcpOw0KICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7DQogICAgbWFyZ2luLXRvcDogY2FsYygwcHggLSAodmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkvIDIpKTsNCiAgICB6LWluZGV4OiAxMDsNCiAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgIGNvbG9yOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSkNCn0NCg0KLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkLA0KLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHsNCiAgICBvcGFjaXR5OiAuMzU7DQogICAgY3Vyc29yOiBhdXRvOw0KICAgIHBvaW50ZXItZXZlbnRzOiBub25lDQp9DQoNCi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1oaWRkZW4sDQouc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24taGlkZGVuIHsNCiAgICBvcGFjaXR5OiAwOw0KICAgIGN1cnNvcjogYXV0bzsNCiAgICBwb2ludGVyLWV2ZW50czogbm9uZQ0KfQ0KDQouc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tbmV4dCwNCi5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHsNCiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQNCn0NCg0KLnN3aXBlci1idXR0b24tbmV4dDphZnRlciwNCi5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIgew0KICAgIGZvbnQtZmFtaWx5OiBzd2lwZXItaWNvbnM7DQogICAgZm9udC1zaXplOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTsNCiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50Ow0KICAgIGxldHRlci1zcGFjaW5nOiAwOw0KICAgIGZvbnQtdmFyaWFudDogaW5pdGlhbDsNCiAgICBsaW5lLWhlaWdodDogMQ0KfQ0KDQouc3dpcGVyLWJ1dHRvbi1wcmV2LA0KLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7DQogICAgbGVmdDogMTBweDsNCiAgICByaWdodDogYXV0bw0KfQ0KDQouc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLA0KLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dDphZnRlciB7DQogICAgY29udGVudDogJ3ByZXYnDQp9DQoNCi5zd2lwZXItYnV0dG9uLW5leHQsDQouc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHsNCiAgICByaWdodDogMTBweDsNCiAgICBsZWZ0OiBhdXRvDQp9DQoNCi5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsDQouc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHsNCiAgICBjb250ZW50OiAnbmV4dCcNCn0NCg0KLnN3aXBlci1idXR0b24tbG9jayB7DQogICAgZGlzcGxheTogbm9uZQ0KfQ0KDQouc3dpcGVyLXBhZ2luYXRpb24gew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgdHJhbnNpdGlvbjogLjNzIG9wYWNpdHk7DQogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsNCiAgICB6LWluZGV4OiAxMA0KfQ0KDQouc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHsNCiAgICBvcGFjaXR5OiAwDQp9DQoNCi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZD4uc3dpcGVyLXBhZ2luYXRpb24sDQouc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQgew0KICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudA0KfQ0KDQouc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsDQouc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLA0KLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSwNCi5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbiB7DQogICAgYm90dG9tOiAxMHB4Ow0KICAgIGxlZnQ6IDA7DQogICAgd2lkdGg6IDEwMCUNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7DQogICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICBmb250LXNpemU6IDANCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHsNCiAgICB0cmFuc2Zvcm06IHNjYWxlKC4zMyk7DQogICAgcG9zaXRpb246IHJlbGF0aXZlDQp9DQoNCi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUgew0KICAgIHRyYW5zZm9ybTogc2NhbGUoMSkNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1tYWluIHsNCiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpDQp9DQoNCi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7DQogICAgdHJhbnNmb3JtOiBzY2FsZSguNjYpDQp9DQoNCi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHsNCiAgICB0cmFuc2Zvcm06IHNjYWxlKC4zMykNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHsNCiAgICB0cmFuc2Zvcm06IHNjYWxlKC42NikNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQgew0KICAgIHRyYW5zZm9ybTogc2NhbGUoLjMzKQ0KfQ0KDQouc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHsNCiAgICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoLCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KSk7DQogICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0LCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KSk7DQogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgIGJvcmRlci1yYWRpdXM6IDUwJTsNCiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3IsICMwMDApOw0KICAgIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5LCAuMikNCn0NCg0KYnV0dG9uLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7DQogICAgYm9yZGVyOiBub25lOw0KICAgIG1hcmdpbjogMDsNCiAgICBwYWRkaW5nOiAwOw0KICAgIGJveC1zaGFkb3c6IG5vbmU7DQogICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOw0KICAgIGFwcGVhcmFuY2U6IG5vbmUNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHsNCiAgICBjdXJzb3I6IHBvaW50ZXINCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpvbmx5LWNoaWxkIHsNCiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUgew0KICAgIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5LCAxKTsNCiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSkNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsDQouc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHsNCiAgICByaWdodDogMTBweDsNCiAgICB0b3A6IDUwJTsNCiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCkNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwNCi5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7DQogICAgbWFyZ2luOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwLCA2cHgpIDA7DQogICAgZGlzcGxheTogYmxvY2sNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLA0KLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgew0KICAgIHRvcDogNTAlOw0KICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsNCiAgICB3aWR0aDogOHB4DQp9DQoNCi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LA0KLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7DQogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgIHRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0sIC4ycyB0b3ANCn0NCg0KLnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsDQouc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQgew0KICAgIG1hcmdpbjogMCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXAsIDRweCkNCn0NCg0KLnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYywNCi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHsNCiAgICBsZWZ0OiA1MCU7DQogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOw0KICAgIHdoaXRlLXNwYWNlOiBub3dyYXANCn0NCg0KLnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LA0KLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7DQogICAgdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIGxlZnQNCn0NCg0KLnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1ydGw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHsNCiAgICB0cmFuc2l0aW9uOiAuMnMgdHJhbnNmb3JtLCAuMnMgcmlnaHQNCn0NCg0KLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHsNCiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4yNSk7DQogICAgcG9zaXRpb246IGFic29sdXRlDQp9DQoNCi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7DQogICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpOw0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICBsZWZ0OiAwOw0KICAgIHRvcDogMDsNCiAgICB3aWR0aDogMTAwJTsNCiAgICBoZWlnaHQ6IDEwMCU7DQogICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcA0KfQ0KDQouc3dpcGVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwgew0KICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcA0KfQ0KDQouc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLA0KLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwsDQouc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsDQouc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7DQogICAgd2lkdGg6IDEwMCU7DQogICAgaGVpZ2h0OiA0cHg7DQogICAgbGVmdDogMDsNCiAgICB0b3A6IDANCn0NCg0KLnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSwNCi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLA0KLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLA0KLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgew0KICAgIHdpZHRoOiA0cHg7DQogICAgaGVpZ2h0OiAxMDAlOw0KICAgIGxlZnQ6IDA7DQogICAgdG9wOiAwDQp9DQoNCi5zd2lwZXItcGFnaW5hdGlvbi1sb2NrIHsNCiAgICBkaXNwbGF5OiBub25lDQp9DQoNCi5zd2lwZXItc2Nyb2xsYmFyIHsNCiAgICBib3JkZXItcmFkaXVzOiAxMHB4Ow0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICAtbXMtdG91Y2gtYWN0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjEpDQp9DQoNCi5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkPi5zd2lwZXItc2Nyb2xsYmFyLA0KLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1kaXNhYmxlZCB7DQogICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50DQp9DQoNCi5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXNjcm9sbGJhciwNCi5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItaG9yaXpvbnRhbCB7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIGxlZnQ6IDElOw0KICAgIGJvdHRvbTogM3B4Ow0KICAgIHotaW5kZXg6IDUwOw0KICAgIGhlaWdodDogNXB4Ow0KICAgIHdpZHRoOiA5OCUNCn0NCg0KLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci12ZXJ0aWNhbCwNCi5zd2lwZXItdmVydGljYWw+LnN3aXBlci1zY3JvbGxiYXIgew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICByaWdodDogM3B4Ow0KICAgIHRvcDogMSU7DQogICAgei1pbmRleDogNTA7DQogICAgd2lkdGg6IDVweDsNCiAgICBoZWlnaHQ6IDk4JQ0KfQ0KDQouc3dpcGVyLXNjcm9sbGJhci1kcmFnIHsNCiAgICBoZWlnaHQ6IDEwMCU7DQogICAgd2lkdGg6IDEwMCU7DQogICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpOw0KICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7DQogICAgbGVmdDogMDsNCiAgICB0b3A6IDANCn0NCg0KLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcgew0KICAgIGN1cnNvcjogbW92ZQ0KfQ0KDQouc3dpcGVyLXNjcm9sbGJhci1sb2NrIHsNCiAgICBkaXNwbGF5OiBub25lDQp9DQoNCi5zd2lwZXItem9vbS1jb250YWluZXIgew0KICAgIHdpZHRoOiAxMDAlOw0KICAgIGhlaWdodDogMTAwJTsNCiAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAgdGV4dC1hbGlnbjogY2VudGVyDQp9DQoNCi5zd2lwZXItem9vbS1jb250YWluZXI+Y2FudmFzLA0KLnN3aXBlci16b29tLWNvbnRhaW5lcj5pbWcsDQouc3dpcGVyLXpvb20tY29udGFpbmVyPnN2ZyB7DQogICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgIG1heC1oZWlnaHQ6IDEwMCU7DQogICAgb2JqZWN0LWZpdDogY29udGFpbg0KfQ0KDQouc3dpcGVyLXNsaWRlLXpvb21lZCB7DQogICAgY3Vyc29yOiBtb3ZlDQp9DQoNCi5zd2lwZXItbGF6eS1wcmVsb2FkZXIgew0KICAgIHdpZHRoOiA0MnB4Ow0KICAgIGhlaWdodDogNDJweDsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgbGVmdDogNTAlOw0KICAgIHRvcDogNTAlOw0KICAgIG1hcmdpbi1sZWZ0OiAtMjFweDsNCiAgICBtYXJnaW4tdG9wOiAtMjFweDsNCiAgICB6LWluZGV4OiAxMDsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7DQogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsNCiAgICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTsNCiAgICBib3JkZXItcmFkaXVzOiA1MCU7DQogICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQNCn0NCg0KLnN3aXBlci13YXRjaC1wcm9ncmVzcyAuc3dpcGVyLXNsaWRlLXZpc2libGUgLnN3aXBlci1sYXp5LXByZWxvYWRlciwNCi5zd2lwZXI6bm90KC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MpIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIgew0KICAgIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGluZmluaXRlIGxpbmVhcg0KfQ0KDQouc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlIHsNCiAgICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmYNCn0NCg0KLnN3aXBlci1sYXp5LXByZWxvYWRlci1ibGFjayB7DQogICAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwDQp9DQoNCkBrZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHsNCiAgICAwJSB7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpDQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykNCiAgICB9DQp9DQoNCi5zd2lwZXIgLnN3aXBlci1ub3RpZmljYXRpb24gew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICBsZWZ0OiAwOw0KICAgIHRvcDogMDsNCiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsNCiAgICBvcGFjaXR5OiAwOw0KICAgIHotaW5kZXg6IC0xMDAwDQp9DQoNCi5zd2lwZXItZnJlZS1tb2RlPi5zd2lwZXItd3JhcHBlciB7DQogICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Ow0KICAgIG1hcmdpbjogMCBhdXRvDQp9DQoNCi5zd2lwZXItZ3JpZD4uc3dpcGVyLXdyYXBwZXIgew0KICAgIGZsZXgtd3JhcDogd3JhcA0KfQ0KDQouc3dpcGVyLWdyaWQtY29sdW1uPi5zd2lwZXItd3JhcHBlciB7DQogICAgZmxleC13cmFwOiB3cmFwOw0KICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4NCn0NCg0KLnN3aXBlci1mYWRlLnN3aXBlci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7DQogICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0DQp9DQoNCi5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlIHsNCiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsNCiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5DQp9DQoNCi5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUgew0KICAgIHBvaW50ZXItZXZlbnRzOiBub25lDQp9DQoNCi5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwNCi5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7DQogICAgcG9pbnRlci1ldmVudHM6IGF1dG8NCn0NCg0KLnN3aXBlci1jdWJlIHsNCiAgICBvdmVyZmxvdzogdmlzaWJsZQ0KfQ0KDQouc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZSB7DQogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7DQogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47DQogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgIHotaW5kZXg6IDE7DQogICAgdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDsNCiAgICB3aWR0aDogMTAwJTsNCiAgICBoZWlnaHQ6IDEwMCUNCn0NCg0KLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7DQogICAgcG9pbnRlci1ldmVudHM6IG5vbmUNCn0NCg0KLnN3aXBlci1jdWJlLnN3aXBlci1ydGwgLnN3aXBlci1zbGlkZSB7DQogICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwDQp9DQoNCi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwNCi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7DQogICAgcG9pbnRlci1ldmVudHM6IGF1dG8NCn0NCg0KLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLA0KLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCwNCi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQrLnN3aXBlci1zbGlkZSwNCi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXYgew0KICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvOw0KICAgIHZpc2liaWxpdHk6IHZpc2libGUNCn0NCg0KLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwNCi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LA0KLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LA0KLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7DQogICAgei1pbmRleDogMDsNCiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW4NCn0NCg0KLnN3aXBlci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cgew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICBsZWZ0OiAwOw0KICAgIGJvdHRvbTogMHB4Ow0KICAgIHdpZHRoOiAxMDAlOw0KICAgIGhlaWdodDogMTAwJTsNCiAgICBvcGFjaXR5OiAuNjsNCiAgICB6LWluZGV4OiAwDQp9DQoNCi5zd2lwZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93OmJlZm9yZSB7DQogICAgY29udGVudDogJyc7DQogICAgYmFja2dyb3VuZDogIzAwMDsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgbGVmdDogMDsNCiAgICB0b3A6IDA7DQogICAgYm90dG9tOiAwOw0KICAgIHJpZ2h0OiAwOw0KICAgIGZpbHRlcjogYmx1cig1MHB4KQ0KfQ0KDQouc3dpcGVyLWZsaXAgew0KICAgIG92ZXJmbG93OiB2aXNpYmxlDQp9DQoNCi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlIHsNCiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsNCiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47DQogICAgei1pbmRleDogMQ0KfQ0KDQouc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHsNCiAgICBwb2ludGVyLWV2ZW50czogbm9uZQ0KfQ0KDQouc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsDQouc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgew0KICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvDQp9DQoNCi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sDQouc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwNCi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwNCi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Agew0KICAgIHotaW5kZXg6IDA7DQogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47DQogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuDQp9DQoNCi5zd2lwZXItY3JlYXRpdmUgLnN3aXBlci1zbGlkZSB7DQogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47DQogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5LCBoZWlnaHQNCn0NCg0KLnN3aXBlci1jYXJkcyB7DQogICAgb3ZlcmZsb3c6IHZpc2libGUNCn0NCg0KLnN3aXBlci1jYXJkcyAuc3dpcGVyLXNsaWRlIHsNCiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOw0KICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsNCiAgICBvdmVyZmxvdzogaGlkZGVuDQp9DQoNCi8qISBmYW5jeUJveCB2Mi4xLjUgZmFuY3lhcHBzLmNvbSB8IGZhbmN5YXBwcy5jb20vZmFuY3lib3gvI2xpY2Vuc2UgKi8NCi5mYW5jeWJveC13cmFwLA0KLmZhbmN5Ym94LXNraW4sDQouZmFuY3lib3gtb3V0ZXIsDQouZmFuY3lib3gtaW5uZXIsDQouZmFuY3lib3gtaW1hZ2UsDQouZmFuY3lib3gtd3JhcCBpZnJhbWUsDQouZmFuY3lib3gtd3JhcCBvYmplY3QsDQouZmFuY3lib3gtbmF2LA0KLmZhbmN5Ym94LW5hdiBzcGFuLA0KLmZhbmN5Ym94LXRtcCB7DQogICAgcGFkZGluZzogMDsNCiAgICBtYXJnaW46IDA7DQogICAgYm9yZGVyOiAwOw0KICAgIG91dGxpbmU6IG5vbmU7DQogICAgdmVydGljYWwtYWxpZ246IHRvcDsNCn0NCg0KLmZhbmN5Ym94LXdyYXAgew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0b3A6IDA7DQogICAgbGVmdDogMDsNCiAgICB6LWluZGV4OiA4MDIwOw0KfQ0KDQouZmFuY3lib3gtc2tpbiB7DQogICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgIGJhY2tncm91bmQ6ICNmOWY5Zjk7DQogICAgY29sb3I6ICM0NDQ7DQogICAgdGV4dC1zaGFkb3c6IG5vbmU7DQogICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7DQogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7DQogICAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7DQogICAgYm9yZGVyLXJhZGl1czogNHB4Ow0KfQ0KDQouZmFuY3lib3gtb3BlbmVkIHsNCiAgICB6LWluZGV4OiA4MDMwOw0KfQ0KDQouZmFuY3lib3gtb3BlbmVkIC5mYW5jeWJveC1za2luIHsNCiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMTBweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC41KTsNCiAgICAtbW96LWJveC1zaGFkb3c6IDAgMTBweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC41KTsNCiAgICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsIDAsIDAsIDAuNSk7DQp9DQoNCi5mYW5jeWJveC1vdXRlciwNCi5mYW5jeWJveC1pbm5lciB7DQogICAgcG9zaXRpb246IHJlbGF0aXZlOw0KfQ0KDQouZmFuY3lib3gtaW5uZXIgew0KICAgIG92ZXJmbG93OiBoaWRkZW47DQp9DQoNCi5mYW5jeWJveC10eXBlLWlmcmFtZSAuZmFuY3lib3gtaW5uZXIgew0KICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsNCn0NCg0KLmZhbmN5Ym94LWVycm9yIHsNCiAgICBjb2xvcjogIzQ0NDsNCiAgICBmb250OiAxNHB4LzIwcHggIkhlbHZldGljYSBOZXVlIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjsNCiAgICBtYXJnaW46IDA7DQogICAgcGFkZGluZzogMTVweDsNCiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KfQ0KDQouZmFuY3lib3gtaW1hZ2UsDQouZmFuY3lib3gtaWZyYW1lIHsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICB3aWR0aDogMTAwJTsNCiAgICBoZWlnaHQ6IDEwMCU7DQp9DQoNCi5mYW5jeWJveC1pbWFnZSB7DQogICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgIG1heC1oZWlnaHQ6IDEwMCU7DQp9DQoNCiNmYW5jeWJveC1sb2FkaW5nLA0KLmZhbmN5Ym94LWNsb3NlLA0KLmZhbmN5Ym94LXByZXYgc3BhbiwNCi5mYW5jeWJveC1uZXh0IHNwYW4gew0KICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vaW1hZ2Vucy9mYW5jeWJveF9zcHJpdGUucG5nJyk7DQp9DQoNCiNmYW5jeWJveC1sb2FkaW5nIHsNCiAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgdG9wOiA1MCU7DQogICAgbGVmdDogNTAlOw0KICAgIG1hcmdpbi10b3A6IC0yMnB4Ow0KICAgIG1hcmdpbi1sZWZ0OiAtMjJweDsNCiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMDhweDsNCiAgICBvcGFjaXR5OiAwLjg7DQogICAgY3Vyc29yOiBwb2ludGVyOw0KICAgIHotaW5kZXg6IDgwNjA7DQp9DQoNCiNmYW5jeWJveC1sb2FkaW5nIGRpdiB7DQogICAgd2lkdGg6IDQ0cHg7DQogICAgaGVpZ2h0OiA0NHB4Ow0KICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vaW1hZ2Vucy9mYW5jeWJveF9sb2FkaW5nLmdpZicpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0Ow0KfQ0KDQouZmFuY3lib3gtY2xvc2Ugew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0b3A6IC0xOHB4Ow0KICAgIHJpZ2h0OiAtMThweDsNCiAgICB3aWR0aDogMzZweDsNCiAgICBoZWlnaHQ6IDM2cHg7DQogICAgY3Vyc29yOiBwb2ludGVyOw0KICAgIHotaW5kZXg6IDgwNDA7DQp9DQoNCi5mYW5jeWJveC1uYXYgew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0b3A6IDA7DQogICAgd2lkdGg6IDQwJTsNCiAgICBoZWlnaHQ6IDEwMCU7DQogICAgY3Vyc29yOiBwb2ludGVyOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uLy4uL2ltYWdlbnMvYmxhbmsuZ2lmJyk7DQogICAgLyogaGVscHMgSUUgKi8NCiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7DQogICAgei1pbmRleDogODA0MDsNCn0NCg0KLmZhbmN5Ym94LXByZXYgew0KICAgIGxlZnQ6IDA7DQp9DQoNCi5mYW5jeWJveC1uZXh0IHsNCiAgICByaWdodDogMDsNCn0NCg0KLmZhbmN5Ym94LW5hdiBzcGFuIHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgdG9wOiA1MCU7DQogICAgd2lkdGg6IDI4cHg7DQogICAgaGVpZ2h0OiAyOHB4Ow0KICAgIG1hcmdpbi10b3A6IC0xNHB4Ow0KICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICB6LWluZGV4OiA4MDQwOw0KICAgIHZpc2liaWxpdHk6IGhpZGRlbjsNCn0NCg0KLmZhbmN5Ym94LXByZXYgc3BhbiB7DQogICAgbGVmdDogMTBweDsNCiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltYWdlbnMvc2V0YS12ZXJkZS1wb3B1cC1lc3F1ZXJkYS5zdmcnKSAhaW1wb3J0YW50Ow0KfQ0KDQouZmFuY3lib3gtbmV4dCBzcGFuIHsNCiAgICByaWdodDogMTBweDsNCiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltYWdlbnMvc2V0YS12ZXJkZS1wb3B1cC1kaXJlaXRhLnN2ZycpICFpbXBvcnRhbnQ7DQp9DQoNCi5mYW5jeWJveC1uYXY6aG92ZXIgc3BhbiB7DQogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsNCn0NCg0KLmZhbmN5Ym94LXRtcCB7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIHRvcDogLTk5OTk5cHg7DQogICAgbGVmdDogLTk5OTk5cHg7DQogICAgdmlzaWJpbGl0eTogaGlkZGVuOw0KICAgIG1heC13aWR0aDogOTk5OTlweDsNCiAgICBtYXgtaGVpZ2h0OiA5OTk5OXB4Ow0KICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7DQp9DQoNCi8qIE92ZXJsYXkgaGVscGVyICovDQoNCi5mYW5jeWJveC1sb2NrIHsNCiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7DQogICAgd2lkdGg6IGF1dG87DQp9DQoNCi5mYW5jeWJveC1sb2NrIGJvZHkgew0KICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDsNCn0NCg0KLmZhbmN5Ym94LWxvY2stdGVzdCB7DQogICAgb3ZlcmZsb3cteTogaGlkZGVuICFpbXBvcnRhbnQ7DQp9DQoNCi5mYW5jeWJveC1vdmVybGF5IHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgdG9wOiAwOw0KICAgIGxlZnQ6IDA7DQogICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgICBkaXNwbGF5OiBub25lOw0KICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vaW1hZ2Vucy9mYW5jeWJveF9vdmVybGF5LnBuZycpOw0KICAgIHotaW5kZXg6IDgwMjA7DQp9DQoNCi5mYW5jeWJveC1vdmVybGF5LWZpeGVkIHsNCiAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgYm90dG9tOiAwOw0KICAgIHJpZ2h0OiAwOw0KfQ0KDQouZmFuY3lib3gtbG9jayAuZmFuY3lib3gtb3ZlcmxheSB7DQogICAgb3ZlcmZsb3c6IGF1dG87DQogICAgb3ZlcmZsb3cteTogc2Nyb2xsOw0KfQ0KDQovKiBUaXRsZSBoZWxwZXIgKi8NCg0KLmZhbmN5Ym94LXRpdGxlIHsNCiAgICB2aXNpYmlsaXR5OiBoaWRkZW47DQogICAgZm9udDogbm9ybWFsIDEzcHgvMjBweCAiSGVsdmV0aWNhIE5ldWUiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOw0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICB0ZXh0LXNoYWRvdzogbm9uZTsNCiAgICB6LWluZGV4OiA4MDUwOw0KfQ0KDQouZmFuY3lib3gtb3BlbmVkIC5mYW5jeWJveC10aXRsZSB7DQogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsNCn0NCg0KLmZhbmN5Ym94LXRpdGxlLWZsb2F0LXdyYXAgew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICBib3R0b206IDA7DQogICAgcmlnaHQ6IDUwJTsNCiAgICBtYXJnaW4tYm90dG9tOiAtMzFweDsNCiAgICB6LWluZGV4OiA4MDUwOw0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCg0KLmZhbmN5Ym94LXRpdGxlLWZsb2F0LXdyYXAgLmNoaWxkIHsNCiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7DQogICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTsNCiAgICBjb2xvcjogIzAwMDAwMDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7DQogICAgcGFkZGluZy1sZWZ0OiAzMHB4Ow0KICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7DQogICAgaGVpZ2h0OiAyN3B4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyN3B4Ow0KfQ0KDQouZmFuY3lib3gtdGl0bGUtb3V0c2lkZS13cmFwIHsNCiAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgbWFyZ2luLXRvcDogMTBweDsNCiAgICBjb2xvcjogI2ZmZjsNCn0NCg0KLmZhbmN5Ym94LXRpdGxlLWluc2lkZS13cmFwIHsNCiAgICBwYWRkaW5nLXRvcDogMTBweDsNCn0NCg0KLmZhbmN5Ym94LXRpdGxlLW92ZXItd3JhcCB7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIGJvdHRvbTogMDsNCiAgICBsZWZ0OiAwOw0KICAgIGNvbG9yOiAjZmZmOw0KICAgIHBhZGRpbmc6IDEwcHg7DQogICAgYmFja2dyb3VuZDogIzAwMDsNCiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC44KTsNCn0NCg0KLypSZXRpbmEgZ3JhcGhpY3MhKi8NCkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwNCm9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLA0Kb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpIHsNCg0KICAgICNmYW5jeWJveC1sb2FkaW5nLA0KICAgIC5mYW5jeWJveC1jbG9zZSwNCiAgICAuZmFuY3lib3gtcHJldiBzcGFuLA0KICAgIC5mYW5jeWJveC1uZXh0IHNwYW4gew0KICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL2ltYWdlbnMvZmFuY3lib3hfc3ByaXRlQDJ4LnBuZycpOw0KICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ0cHggMTUycHg7DQogICAgICAgIC8qVGhlIHNpemUgb2YgdGhlIG5vcm1hbCBpbWFnZSwgaGFsZiB0aGUgc2l6ZSBvZiB0aGUgaGktcmVzIGltYWdlKi8NCiAgICB9DQoNCiAgICAjZmFuY3lib3gtbG9hZGluZyBkaXYgew0KICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL2ltYWdlbnMvZmFuY3lib3hfbG9hZGluZ0AyeC5naWYnKTsNCiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNHB4IDI0cHg7DQogICAgICAgIC8qVGhlIHNpemUgb2YgdGhlIG5vcm1hbCBpbWFnZSwgaGFsZiB0aGUgc2l6ZSBvZiB0aGUgaGktcmVzIGltYWdlKi8NCiAgICB9DQp9DQoNCi5ib3Rhby1mZWNoYXItbW9kYWwsDQouZmFuY3lib3gtY2xvc2Ugew0KICAgIGJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZW5zL2Nsb3NlLXBvcC11cC5wbmcpICFpbXBvcnRhbnQ7DQogICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOw0KICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogICAgdG9wOiAxN3B4Ow0KICAgIHJpZ2h0OiAxNXB4Ow0KICAgIHdpZHRoOiAzMHB4Ow0KICAgIGhlaWdodDogMzBweDsNCn0NCi5jbGVhcmZpeHsNCiAgICBjbGVhcjogYm90aDsNCn0NCkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHsNCg0KICAgIFtkYXRhLXR5cGUtc2VjdGlvbj0iMiJdIHsNCiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Ow0KICAgIH0NCg0KICAgICNtb2JpbGUtaGVhZGVyLW5hdmlnYXRpb24gew0KICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7DQogICAgfQ0KDQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgew0KDQogICAgW2RhdGEtdHlwZS1zZWN0aW9uPSIyIl0gew0KICAgICAgICBkaXNwbGF5OiBub25lOw0KICAgIH0NCg0KICAgICNtb2JpbGUtaGVhZGVyLW5hdmlnYXRpb24gew0KICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIH0NCn0NCg0KDQo6cm9vdCB7DQogICAgLS1kZWZhdWx0LWZvbnQtZmFtaWx5OidLYW5pdCc7DQogICAgLS1jb2xvci1jb3ItNzogcmdiYSgwLCAwLCAwLCAxKTsNCiAgICAtLWNvbG9yLWNvci0zOiByZ2JhKDI0OCwgNiwgMTUyLCAxKTsNCiAgICAtLWNvbG9yLWNvci0xOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpOw0KICAgIC0tY29sb3ItY29yLTI6IHJnYmEoMCwgMjU1LCAyNDAsIDEpOw0KICAgIC0tY29sb3ItY29yLTQ6IHJnYmEoNTIsIDUyLCA1MiwgMSk7DQogICAgLS1jb2xvci1jb3ItNTogcmdiYSgxMTcsIDExNywgMTE3LCAxKTsNCiAgICAtLWNvbG9yLWNvci02OiByZ2JhKDI0NiwgMjQ2LCAyNDYsIDEpOw0KICAgIC0tY29sb3ItY29yLTg6ICNmZjM4Mzg7DQogICAgLS1jb2xvci1jb3ItOTogI2Y4ZTRlNDsNCiAgICAtLXBhY2UtY29sb3I6IHZhcigtLWNvbG9yLWNvci0zKSAhaW1wb3J0YW50Ow0KICAgIC0tY29sb3Itc2VsZWN0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1jb3ItNyk7DQogICAgLS1jb2xvci1zZWxlY3Rpb24tYmFja2dyb3VuZDogdmFyKC0tY29sb3ItY29yLTMpICFpbXBvcnRhbnQ7DQp9DQoqew0KICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LWZvbnQtZmFtaWx5KTsNCn0NCmlucHV0Om5vdChbdHlwZT0ic3VibWl0Il0pOm5vdChbdHlwZT0iYnV0dG9uIl0pew0KICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LWZvbnQtZmFtaWx5KSAhaW1wb3J0YW50Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDsNCn0NCi5jb2xvci1jb3ItNywNCi5jb2xvci1jb3ItNz4qIHsNCiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29yLTcpOw0KfQ0KLmNvbG9yLWNvci0zLA0KLmNvbG9yLWNvci0zPiogew0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb3ItMyk7DQp9DQouY29sb3ItY29yLTEsDQouY29sb3ItY29yLTE+KiB7DQogICAgY29sb3I6IHZhcigtLWNvbG9yLWNvci0xKTsNCn0NCi5jb2xvci1jb3ItMiwNCi5jb2xvci1jb3ItMj4qIHsNCiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29yLTIpOw0KfQ0KLmNvbG9yLWNvci00LA0KLmNvbG9yLWNvci00Piogew0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb3ItNCk7DQp9DQouY29sb3ItY29yLTUsDQouY29sb3ItY29yLTU+KiB7DQogICAgY29sb3I6IHZhcigtLWNvbG9yLWNvci01KTsNCn0NCi5jb2xvci1jb3ItNiwNCi5jb2xvci1jb3ItNj4qIHsNCiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29yLTYpOw0KfQ0KLmNvbG9yLWNvci03LA0KLmNvbG9yLWNvci03Piogew0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb3ItNyk7DQp9DQouY29sb3ItY29yLTgsDQouY29sb3ItY29yLTg+KiB7DQogICAgY29sb3I6IHZhcigtLWNvbG9yLWNvci04KTsNCn0NCi8qKi8NCi5iZy1jb3ItN3sNCiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1jb3ItOSk7DQp9DQouYmctY29yLTN7DQogICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItY29yLTMpOw0KfQ0KLmJnLWNvci0xew0KICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWNvci0xKTsNCn0NCi5iZy1jb3ItMnsNCiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1jb3ItMik7DQp9DQouYmctY29yLTR7DQogICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItY29yLTQpOw0KfQ0KLmJnLWNvci01ew0KICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWNvci01KTsNCn0NCi5iZy1jb3ItNnsNCiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1jb3ItNik7DQp9DQouYmctY29yLTd7DQogICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItY29yLTcpOw0KfQ0KLmJnLWNvci04ew0KICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWNvci04KTsNCn0NCi5iZy1jb3ItOSB7DQogICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItY29yLTkpOw0KfQ0KDQouYnRuLWJ0bi0xIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50Ow0KICAgIHRyYW5zaXRpb246IDAuM3MgYWxsIGxpbmVhcjsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgcGFkZGluZzogMTVweCAzMnB4IDE1cHggMzJweDsNCiAgICBmb250LXdlaWdodDogNTAwOw0KICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7DQogICAgYmFja2dyb3VuZDogIzAwZmZmMDsNCiAgICBjb2xvcjogIzM0MzQzNDsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQp9DQoNCi5idG4tYnRuLTE6aG92ZXIgew0KICAgIG1heC13aWR0aDogZml0LWNvbnRlbnQ7DQogICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgbGluZWFyOw0KICAgIGJhY2tncm91bmQ6ICNmODA2OTg7DQogICAgY29sb3I6ICNmZmZmZmY7DQp9DQoNCi5idG4tYnRuLTIgew0KICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnOw0KICAgIG1heC13aWR0aDogZml0LWNvbnRlbnQ7DQogICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgbGluZWFyOw0KICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICBwYWRkaW5nOiAxNXB4IDMycHggMTVweCAzMnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgYm9yZGVyLXJhZGl1czogMTZweDsNCiAgICBjb2xvcjogIzM0MzQzNDsNCiAgICBib3JkZXI6IDJweCBTT0xJRCAjMzQzNDM0Ow0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCn0NCg0KLmJ0bi1idG4tMjpob3ZlciB7DQogICAgbWF4LXdpZHRoOiBmaXQtY29udGVudDsNCiAgICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBsaW5lYXI7DQogICAgYmFja2dyb3VuZDogIzM0MzQzNDsNCiAgICBjb2xvcjogI2ZmZmZmZjsNCn0NCg0KLmJ0bi1idG4tMyB7DQogICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7DQogICAgbWF4LXdpZHRoOiBmaXQtY29udGVudDsNCiAgICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBsaW5lYXI7DQogICAgZm9udC1zaXplOiAxNHB4Ow0KICAgIHBhZGRpbmc6IDE2cHggMzJweCAxNnB4IDMycHg7DQogICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICBib3JkZXItcmFkaXVzOiAxNnB4Ow0KICAgIGJhY2tncm91bmQ6ICNmODA2OTg7DQogICAgY29sb3I6ICNGRkY7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KfQ0KDQouYnRuLWJ0bi0zOmhvdmVyIHsNCiAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50Ow0KICAgIHRyYW5zaXRpb246IDAuM3MgYWxsIGxpbmVhcjsNCiAgICBiYWNrZ3JvdW5kOiAjZGEwNzg1Ow0KICAgIGNvbG9yOiAjRkZGOw0KfQ0KDQoudGl0bGUtaDEsDQoudGl0bGUtaDE+KiB7DQogICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7DQogICAgZm9udC1zaXplOiA2MnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA4N3B4Ow0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOw0KfQ0KDQouaWNvbi1oMSwNCi5pY29uLWgxPiogew0KICAgIGZvbnQtc2l6ZTogNjJweDsNCiAgICBsaW5lLWhlaWdodDogODdweDsNCiAgICBmb250LXdlaWdodDogNjAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KaDEsDQpoMT4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDYycHg7DQogICAgbGluZS1oZWlnaHQ6IDg3cHg7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGl0bGUtaDEsDQogICAgLnRpdGxlLWgxPiogew0KICAgICAgICBmb250LXNpemU6IDI2cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCiAgICANCn0NCg0KQG1lZGlhKG1heC13aWR0aDo3NjdweCkgew0KDQogICAgLnRpdGxlLWgxLA0KICAgIC50aXRsZS1oMT4qIHsNCiAgICAgICAgZm9udC1zaXplOiAyNnB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQoNCiAgICAuYnRuLWJ0bi0xLA0KICAgIC5idG4tYnRuLTIsDQogICAgLmJ0bi1idG4tMyB7DQogICAgICAgIHBhZGRpbmc6IDE1cHggMHB4ICFpbXBvcnRhbnQ7DQogICAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50Ow0KICAgICAgICBtaW4td2lkdGg6IDEwMCU7DQogICAgfQ0KDQp9DQoNCi50aXRsZS1oMiwNCi50aXRsZS1oMj4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDU0cHg7DQogICAgbGluZS1oZWlnaHQ6IDU0cHg7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCi5pY29uLWgyLA0KLmljb24taDI+KiB7DQogICAgZm9udC1zaXplOiA1NHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1NHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOw0KfQ0KDQpoMiwNCmgyPiogew0KICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnOw0KICAgIGZvbnQtc2l6ZTogNTRweDsNCiAgICBsaW5lLWhlaWdodDogNTRweDsNCiAgICBmb250LXdlaWdodDogNjAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KQG1lZGlhKG1heC13aWR0aDoxMjAwcHgpIHsNCg0KICAgIC50aXRsZS1oMiwNCiAgICAudGl0bGUtaDI+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7DQoNCiAgICAudGl0bGUtaDIsDQogICAgLnRpdGxlLWgyPiogew0KICAgICAgICBmb250LXNpemU6IDI1cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRpdGxlLWgzLA0KLnRpdGxlLWgzPiogew0KICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnOw0KICAgIGZvbnQtc2l6ZTogNDZweDsNCiAgICBsaW5lLWhlaWdodDogNDZweDsNCiAgICBmb250LXdlaWdodDogNjAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KLmljb24taDMsDQouaWNvbi1oMz4qIHsNCiAgICBmb250LXNpemU6IDQ2cHg7DQogICAgbGluZS1oZWlnaHQ6IDQ2cHg7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCmgzLA0KaDM+KiB7DQogICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7DQogICAgZm9udC1zaXplOiA0NnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA0NnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOw0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjEyMDBweCkgew0KDQogICAgLnRpdGxlLWgzLA0KICAgIC50aXRsZS1oMz4qIHsNCiAgICAgICAgZm9udC1zaXplOiAyNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50aXRsZS1oMywNCiAgICAudGl0bGUtaDM+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMjRweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQoudGl0bGUtaDQsDQoudGl0bGUtaDQ+KiB7DQogICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7DQogICAgZm9udC1zaXplOiA0MHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1NnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7DQp9DQoNCi5pY29uLWg0LA0KLmljb24taDQ+KiB7DQogICAgZm9udC1zaXplOiA0MHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1NnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7DQp9DQoNCmg0LA0KaDQ+KiB7DQogICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7DQogICAgZm9udC1zaXplOiA0MHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1NnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGl0bGUtaDQsDQogICAgLnRpdGxlLWg0Piogew0KICAgICAgICBmb250LXNpemU6IDIzcHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KQG1lZGlhKG1heC13aWR0aDo3NjdweCkgew0KDQogICAgLnRpdGxlLWg0LA0KICAgIC50aXRsZS1oND4qIHsNCiAgICAgICAgZm9udC1zaXplOiAyM3B4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCi50aXRsZS1oNSwNCi50aXRsZS1oNT4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDM0cHg7DQogICAgbGluZS1oZWlnaHQ6IDQ4cHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCi5pY29uLWg1LA0KLmljb24taDU+KiB7DQogICAgZm9udC1zaXplOiAzNHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA0OHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOw0KfQ0KDQpoNSwNCmg1Piogew0KICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnOw0KICAgIGZvbnQtc2l6ZTogMzRweDsNCiAgICBsaW5lLWhlaWdodDogNDhweDsNCiAgICBmb250LXdlaWdodDogNzAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KQG1lZGlhKG1heC13aWR0aDoxMjAwcHgpIHsNCg0KICAgIC50aXRsZS1oNSwNCiAgICAudGl0bGUtaDU+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMjJweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7DQoNCiAgICAudGl0bGUtaDUsDQogICAgLnRpdGxlLWg1Piogew0KICAgICAgICBmb250LXNpemU6IDIycHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRpdGxlLWg2LA0KLnRpdGxlLWg2Piogew0KICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnOw0KICAgIGZvbnQtc2l6ZTogMjhweDsNCiAgICBsaW5lLWhlaWdodDogMzlweDsNCiAgICBmb250LXdlaWdodDogNzAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KLmljb24taDYsDQouaWNvbi1oNj4qIHsNCiAgICBmb250LXNpemU6IDI4cHg7DQogICAgbGluZS1oZWlnaHQ6IDM5cHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCmg2LA0KaDY+KiB7DQogICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7DQogICAgZm9udC1zaXplOiAyOHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAzOXB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOw0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjEyMDBweCkgew0KDQogICAgLnRpdGxlLWg2LA0KICAgIC50aXRsZS1oNj4qIHsNCiAgICAgICAgZm9udC1zaXplOiAyMXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50aXRsZS1oNiwNCiAgICAudGl0bGUtaDY+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMjFweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQoudGl0bGUtaDcsDQoudGl0bGUtaDc+KiB7DQogICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7DQogICAgZm9udC1zaXplOiAyNHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAzNHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOw0KfQ0KDQouaWNvbi1oNywNCi5pY29uLWg3Piogew0KICAgIGZvbnQtc2l6ZTogMjRweDsNCiAgICBsaW5lLWhlaWdodDogMzRweDsNCiAgICBmb250LXdlaWdodDogNzAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KQG1lZGlhKG1heC13aWR0aDoxMjAwcHgpIHsNCg0KICAgIC50aXRsZS1oNywNCiAgICAudGl0bGUtaDc+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7DQoNCiAgICAudGl0bGUtaDcsDQogICAgLnRpdGxlLWg3Piogew0KICAgICAgICBmb250LXNpemU6IDIwcHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRpdGxlLWg4LA0KLnRpdGxlLWg4Piogew0KICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnOw0KICAgIGZvbnQtc2l6ZTogMjJweDsNCiAgICBsaW5lLWhlaWdodDogMzFweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KLmljb24taDgsDQouaWNvbi1oOD4qIHsNCiAgICBmb250LXNpemU6IDIycHg7DQogICAgbGluZS1oZWlnaHQ6IDMxcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGl0bGUtaDgsDQogICAgLnRpdGxlLWg4Piogew0KICAgICAgICBmb250LXNpemU6IDE5cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KQG1lZGlhKG1heC13aWR0aDo3NjdweCkgew0KDQogICAgLnRpdGxlLWg4LA0KICAgIC50aXRsZS1oOD4qIHsNCiAgICAgICAgZm9udC1zaXplOiAxOXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCi50aXRsZS1oOSwNCi50aXRsZS1oOT4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDIwcHg7DQogICAgbGluZS1oZWlnaHQ6IDI4cHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCi5pY29uLWg5LA0KLmljb24taDk+KiB7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyOHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOw0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjEyMDBweCkgew0KDQogICAgLnRpdGxlLWg5LA0KICAgIC50aXRsZS1oOT4qIHsNCiAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50aXRsZS1oOSwNCiAgICAudGl0bGUtaDk+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQoudGl0bGUtaDEwLA0KLnRpdGxlLWgxMD4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDE4cHg7DQogICAgbGluZS1oZWlnaHQ6IDE4cHg7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCi5pY29uLWgxMCwNCi5pY29uLWgxMD4qIHsNCiAgICBmb250LXNpemU6IDE4cHg7DQogICAgbGluZS1oZWlnaHQ6IDE4cHg7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGl0bGUtaDEwLA0KICAgIC50aXRsZS1oMTA+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMTdweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7DQoNCiAgICAudGl0bGUtaDEwLA0KICAgIC50aXRsZS1oMTA+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMTdweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQoudGl0bGUtaDExLA0KLnRpdGxlLWgxMT4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDE2cHg7DQogICAgbGluZS1oZWlnaHQ6IDE2cHg7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCi5pY29uLWgxMSwNCi5pY29uLWgxMT4qIHsNCiAgICBmb250LXNpemU6IDE2cHg7DQogICAgbGluZS1oZWlnaHQ6IDE2cHg7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGl0bGUtaDExLA0KICAgIC50aXRsZS1oMTE+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7DQoNCiAgICAudGl0bGUtaDExLA0KICAgIC50aXRsZS1oMTE+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQoudGl0bGUtaDEyLA0KLnRpdGxlLWgxMj4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCi5pY29uLWgxMiwNCi5pY29uLWgxMj4qIHsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGl0bGUtaDEyLA0KICAgIC50aXRsZS1oMTI+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMTVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7DQoNCiAgICAudGl0bGUtaDEyLA0KICAgIC50aXRsZS1oMTI+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMTVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQoucG9zdC1lZGl0b3IudGV4dC1wLA0KLnBvc3QtZWRpdG9yLnRleHQtcCAqIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JyAhaW1wb3J0YW50Ow0KICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICBsaW5lLWhlaWdodDogMjJweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KQG1lZGlhKG1heC13aWR0aDoxMjAwcHgpIHsNCg0KICAgIC5wb3N0LWVkaXRvci50ZXh0LXAsDQogICAgLnBvc3QtZWRpdG9yLnRleHQtcCAqIHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC5wb3N0LWVkaXRvci50ZXh0LXAsDQogICAgLnBvc3QtZWRpdG9yLnRleHQtcCAqIHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCi50ZXh0LXAsDQoudGV4dC1wPiogew0KICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnOw0KICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICBsaW5lLWhlaWdodDogMjJweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KcCwNCnA+KiB7DQogICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7DQogICAgZm9udC1zaXplOiAxNnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBpbml0aWFsOw0KICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOw0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjEyMDBweCkgew0KDQogICAgLnRleHQtcCwNCiAgICAudGV4dC1wPiogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KQG1lZGlhKG1heC13aWR0aDo3NjdweCkgew0KDQogICAgLnRleHQtcCwNCiAgICAudGV4dC1wPiogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRleHQtcC1ib2xkLA0KLnRleHQtcC1ib2xkPiogew0KICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnOw0KICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICBsaW5lLWhlaWdodDogMjJweDsNCiAgICBmb250LXdlaWdodDogNzAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KQG1lZGlhKG1heC13aWR0aDoxMjAwcHgpIHsNCg0KICAgIC50ZXh0LXAtYm9sZCwNCiAgICAudGV4dC1wLWJvbGQ+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7DQoNCiAgICAudGV4dC1wLWJvbGQsDQogICAgLnRleHQtcC1ib2xkPiogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRleHQtcDIsDQoudGV4dC1wMj4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDE1cHg7DQogICAgbGluZS1oZWlnaHQ6IDIxcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGV4dC1wMiwNCiAgICAudGV4dC1wMj4qIHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50ZXh0LXAyLA0KICAgIC50ZXh0LXAyPiogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRleHQtcDMsDQoudGV4dC1wMz4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGV4dC1wMywNCiAgICAudGV4dC1wMz4qIHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50ZXh0LXAzLA0KICAgIC50ZXh0LXAzPiogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRleHQtcDQsDQoudGV4dC1wND4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDEzcHg7DQogICAgbGluZS1oZWlnaHQ6IDE4cHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGV4dC1wNCwNCiAgICAudGV4dC1wND4qIHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50ZXh0LXA0LA0KICAgIC50ZXh0LXA0Piogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRleHQtcDUsDQoudGV4dC1wNT4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDEycHg7DQogICAgbGluZS1oZWlnaHQ6IDE3cHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGV4dC1wNSwNCiAgICAudGV4dC1wNT4qIHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50ZXh0LXA1LA0KICAgIC50ZXh0LXA1Piogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRleHQtcDYsDQoudGV4dC1wNj4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDExcHg7DQogICAgbGluZS1oZWlnaHQ6IDE1cHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGV4dC1wNiwNCiAgICAudGV4dC1wNj4qIHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50ZXh0LXA2LA0KICAgIC50ZXh0LXA2Piogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRleHQtcDcsDQoudGV4dC1wNz4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDEwcHg7DQogICAgbGluZS1oZWlnaHQ6IDE0cHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDsNCiAgICB0ZXh0LWRlY29yYXRpb246IGluaXRpYWw7DQogICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6MTIwMHB4KSB7DQoNCiAgICAudGV4dC1wNywNCiAgICAudGV4dC1wNz4qIHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTUwJTsNCiAgICB9DQp9DQoNCkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHsNCg0KICAgIC50ZXh0LXA3LA0KICAgIC50ZXh0LXA3Piogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KLnRleHQtcDgsDQoudGV4dC1wOD4qIHsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBmb250LXNpemU6IDlweDsNCiAgICBsaW5lLWhlaWdodDogMTNweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogaW5pdGlhbDsNCiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsNCn0NCg0KQG1lZGlhKG1heC13aWR0aDoxMjAwcHgpIHsNCg0KICAgIC50ZXh0LXA4LA0KICAgIC50ZXh0LXA4Piogew0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOw0KICAgIH0NCn0NCg0KQG1lZGlhKG1heC13aWR0aDo3NjdweCkgew0KDQogICAgLnRleHQtcDgsDQogICAgLnRleHQtcDg+KiB7DQogICAgICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7DQogICAgfQ0KfQ0KDQoNCiNzZWN0aW9uLTEgew0KICAgIHBvc2l0aW9uOiBzdGF0aWM7DQp9DQojc2VjdGlvbi0xIC5zdG9yZS1pdGVtIGEgew0KICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDsNCn0NCg0KLmxvZ28gLnNvY2lhbC1pY29uLA0KLmxvZ28gLnNvY2lhbC1pY29uIHN2ZyB7DQogICAgYm9yZGVyLXJhZGl1czogMzAwcHg7DQp9DQoNCi5jb250YWluZXIgew0KICAgIG1heC13aWR0aDogMTIwMHB4ICFpbXBvcnRhbnQ7DQp9DQoNCi50cnVuY2F0ZSwNCi50cnVuY2F0ZSAqIHsNCiAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOw0KICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7DQp9DQoNCi51cHBlcmNhc2UsDQoudXBwZXJjYXNlICogew0KICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7DQp9DQoNCi50cmFuc2l0aW9uLA0KLnRyYW5zaXRpb24gKiB7DQogICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgbGluZWFyOw0KfQ0KDQoud2hpdGUtc3BhY2UtY29sbGFwc2Ugew0KICAgIHdoaXRlLXNwYWNlLWNvbGxhcHNlOiBjb2xsYXBzZTsNCn0NCg0KLmZvbnQtc2VtaWJvbGQsDQouZm9udC1zZW1pYm9sZCAqIHsNCiAgICBmb250LXdlaWdodDogNjAwOw0KfQ0KDQojZm9ybXVsYXJpby1hdXRvLTEtY29udGF0byBpbnB1dFt0eXBlPSJzdWJtaXQiXSwNCiNmb3JtdWxhcmlvLWF1dG8tMi1hbnVuY2llLWFxdWkgaW5wdXRbdHlwZT0ic3VibWl0Il0gew0KICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWNvci0yKTsNCiAgICBib3JkZXItcmFkaXVzOiAyMnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQp9DQoNCiNmb3JtdWxhcmlvLWF1dG8tMi1hbnVuY2llLWFxdWkgaW5wdXRbdHlwZT0ic3VibWl0Il0gew0KICAgIG1hcmdpbjogMjRweCBhdXRvIDA7DQp9DQoNCiNmb3JtdWxhcmlvLWF1dG8tMS1jb250YXRvIGlucHV0W3R5cGU9InN1Ym1pdCJdOmhvdmVyLA0KI2Zvcm11bGFyaW8tYXV0by0yLWFudW5jaWUtYXF1aSBpbnB1dFt0eXBlPSJzdWJtaXQiXTpob3ZlciB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItY29yLTMpOw0KfQ0KDQojZm9ybXVsYXJpby1hdXRvLTEtY29udGF0byAubGFiZWwtZm9ybXVsYXJpbywNCiNmb3JtdWxhcmlvLWF1dG8tMi1hbnVuY2llLWFxdWkgLmxhYmVsLWZvcm11bGFyaW8gew0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb3ItNSk7DQp9DQoNCiNmb3JtdWxhcmlvLWF1dG8tMS1jb250YXRvIGlucHV0Om5vdChpbnB1dFt0eXBlPSJzdWJtaXQiXSksDQojZm9ybXVsYXJpby1hdXRvLTItYW51bmNpZS1hcXVpIGlucHV0Om5vdChpbnB1dFt0eXBlPSJzdWJtaXQiXSkgew0KICAgIHBhZGRpbmc6IDE2cHggMTBweDsNCiAgICBib3JkZXItcmFkaXVzOiA4cHg7DQp9DQoNCiNmb3JtdWxhcmlvLWF1dG8tMS1jb250YXRvIHRleHRhcmVhLA0KI2Zvcm11bGFyaW8tYXV0by0yLWFudW5jaWUtYXF1aSB0ZXh0YXJlYSB7DQogICAgYm9yZGVyLXJhZGl1czogOHB4Ow0KfQ0KDQpmb3JtLmZvcm11bGFyaW8tYWpheCAuY2FtcG8tZm9ybXVsYXJpbyB7DQogICAgbWFyZ2luLWJvdHRvbTogMjRweDsNCn0NCg0KLnBhZ2Vjb250YWN0LXNvY2lhbC1tZWRpYSAubGluayAuc29jaWFsLWljb24gLnN2ZyAucGF0aCB7DQogICAgZmlsbDogI0ZGRkZGRjsNCn0NCg0KLnBhZ2Vjb250YWN0LXNvY2lhbC1tZWRpYSAubGluayAuc29jaWFsLWljb24gLnN2Zzpob3ZlciAucGF0aCB7DQogICAgZmlsbDogdmFyKC0tY29sb3ItY29yLTIpOw0KfQ0KDQpkaXYuc29jaWFsLWljb24sDQpkaXYuc29jaWFsLWljb24gc3ZnIHsNCiAgICBib3JkZXItcmFkaXVzOiAzMDBweDsNCn0NCg0KLyogTUdTIEZPUk1VTMOBUklPUyAqLw0KLm1zZy1lcnJvLA0KLm1zZy1vayB7DQogICAgZm9udC1zaXplOiAxNHB4Ow0KICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7DQp9DQoubXNnLWVycm8gew0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpOw0KfQ0KLm1zZy1vayB7DQogICAgY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTsNCn0NCi5tc2ctdG90YWwtb2sgew0KICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LWZvbnQtZmFtaWx5KTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tc2ctb2stYmFja2dyb3VuZC1jb2xvcik7DQogICAgY29sb3I6IHZhcigtLW1zZy1vay1jb2xvcik7DQogICAgcGFkZGluZzogMjBweDsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgYm9yZGVyLXJhZGl1czogMTJweDsNCn0NCi5tc2ctdG90YWwtZXJybyB7DQogICAgZm9udC1mYW1pbHk6IHZhcigtLWRlZmF1bHQtZm9udC1mYW1pbHkpOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1zZy1lcnJvci1iYWNrZ3JvdW5kLWNvbG9yKTsNCiAgICBjb2xvcjogdmFyKC0tbXNnLWVycm9yLWNvbG9yKTsNCiAgICBwYWRkaW5nOiAyMHB4Ow0KICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICBib3JkZXItcmFkaXVzOiAxMnB4Ow0KfQ0KDQpAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpIHsNCg0KICAgIC5kZXNrLWhlYWRlciB7DQogICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsNCiAgICB9DQoNCiAgICAjc2VjdGlvbi1oZWFkZXItbW9iaWxlW2NvbXBvbmVudGVdIHsNCiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Ow0KICAgIH0NCg0KICAgICNzZWN0aW9uLTEgI3NlY3Rpb24taGVhZGVyLW1vYmlsZS5uZXctaGVhZGVyIHsNCiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsNCiAgICAgICAgcG9zaXRpb246IGZpeGVkOw0KICAgIH0NCg0KICAgIGJvZHkgbWFpbiBzZWN0aW9uI3NlY3Rpb24tMVtkYXRhLXR5cGUtc2VjdGlvbj0iMiJdIHsNCiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsNCiAgICB9DQoNCn0NCg0KQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkgew0KDQogICAgW2RhdGEtdHlwZS1zZWN0aW9uPSIyIl0gew0KICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7DQogICAgfQ0KDQogICAgI21vYmlsZS1oZWFkZXItbmF2aWdhdGlvbiB7DQogICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsNCiAgICB9DQoNCn0NCg0KQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7DQoNCiAgICBbZGF0YS10eXBlLXNlY3Rpb249IjIiXSB7DQogICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgfQ0KDQogICAgI21vYmlsZS1oZWFkZXItbmF2aWdhdGlvbiB7DQogICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgfQ0KfQ0KDQovKiBST0RBUMOJICovDQojc2VjdGlvbi0xNiAuYWN0aXZlIHsNCiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50Ow0KfQ0KDQojc2VjdGlvbi0xNiAucG9wdXAtY2l0eSB7DQogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOw0KICAgIHRvcDogMTglOw0KICAgIGhlaWdodDogdW5zZXQ7DQogICAgcGFkZGluZy1ib3R0b206IDUwcHg7DQp9DQoNCiNzZWN0aW9uLTE2IC5wb3B1cC1jaXR5IGZvcm0gc2VsZWN0IHsNCiAgICBhcHBlYXJhbmNlOiBub25lOw0KICAgIGJvcmRlcjogMnB4IHNvbGlkICM3Njc2NzY7DQogICAgYm9yZGVyLXJhZGl1czogMTJweDsNCiAgICBwYWRkaW5nOiAxNHB4IDBweCAxNHB4IDQwcHg7DQogICAgY29sb3I6ICM3Njc2NzY7DQogICAgYmFja2dyb3VuZDogdXJsKCJodHRwczovL2ZpbGVzLmNheW1hbndlYi5jb20uYnIvOTdkY2YwZjZiMDYwMzBiZmIyMWQ3Y2UyMjhiZTgxYWQvMTkwMjIwMjQxNDIwNTAwMDAwMDA4Nzg3Mi5zdmcgIikgMTRweCBjZW50ZXIgbm8tcmVwZWF0Ow0KfQ0KDQojc2VjdGlvbi0xNiB7DQogICAgcGFkZGluZy10b3A6IDgwcHg7DQogICAgcGFkZGluZy1ib3R0b206IDgwcHg7DQogICAgbWFyZ2luLXRvcDogMHB4Ow0KICAgIG1hcmdpbi1ib3R0b206IDBweDsNCn0NCg0KOm5vdChbaWRePSJncm91cC0iXSk+I3NlY3Rpb24tMTYgew0KICAgIGJhY2tncm91bmQ6ICMwMGZmZjA7DQp9DQoNCiNncm91cC0xNiB7DQogICAgYmFja2dyb3VuZDogIzAwZmZmMDsNCn0NCg0KDQovKiBDU1MgQ09SRSAtIExJU1RBR0VNICovDQojcmVzdHJpY3QtcGFnZSB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItY29yLTYpOw0KICAgIHBhZGRpbmc6IDgwcHggMDsNCiAgICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1mb250LWZhbWlseSk7DQogICAgLS1tYXgtY29udGVudC13aWR0aDogOTAwcHg7DQp9DQojcmVzdHJpY3QtcGFnZSB1bCNsaXN0LWNvbnRlbnQgew0KICAgIHdpZHRoOiAxMDAlOw0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsNCiAgICBnYXA6IDE2cHg7DQogICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtY29udGVudC13aWR0aCk7DQogICAgbWFyZ2luOiAwIGF1dG87DQp9DQojcmVzdHJpY3QtcGFnZSAucGFnZS1oZWFkZXIgew0KICAgIHdpZHRoOiAxMDAlOw0KICAgIG1heC13aWR0aDogdmFyKC0tbWF4LWNvbnRlbnQtd2lkdGgpOw0KICAgIG1hcmdpbjogMCBhdXRvOw0KfQ0KI3Jlc3RyaWN0LXBhZ2UgLnBhZ2UtaGVhZGVyIGZvcm17DQogICAgZGlzcGxheTogZmxleDsNCiAgICBnYXA6IDE2cHg7DQp9DQojcmVzdHJpY3QtcGFnZSAucGFnZS1oZWFkZXIgZm9ybSBpbnB1dFt0eXBlPSJzdWJtaXQiXXsNCiAgICBoZWlnaHQ6IDU2cHg7DQogICAgYm9yZGVyLXJhZGl1czogMjJweCAhaW1wb3J0YW50Ow0KfQ0KI3Jlc3RyaWN0LXBhZ2UgLnBhZ2UtaGVhZGVyIGZvcm0gI0ZybUJ1c2Nhew0KICAgIGhlaWdodDogNTZweDsNCiAgICBib3JkZXItcmFkaXVzOiA4cHg7DQogICAgcGFkZGluZzogMCAyNHB4Ow0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb3ItNCk7DQogICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogJ0thbml0JzsNCiAgICBtYXgtd2lkdGg6IDIwMHB4Ow0KfQ0KI3Jlc3RyaWN0LXBhZ2UgLnBhZ2UtYWN0aW9ucyB7DQogICAgd2lkdGg6IDEwMCU7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQogICAgbWFyZ2luLWJvdHRvbTogMzJweDsNCn0NCiNyZXN0cmljdC1wYWdlIGgxIHsNCiAgICBtYXJnaW4tYm90dG9tOiAzMnB4Ow0KfQ0KDQojcmVzdHJpY3QtcGFnZSB1bCNsaXN0LWNvbnRlbnQgbGkgew0KICAgIGJvcmRlci1yYWRpdXM6IDhweDsNCiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1jb3ItMSk7DQogICAgcGFkZGluZzogMjRweDsNCiAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsNCn0NCg0KI3Jlc3RyaWN0LXBhZ2UgdWwjbGlzdC1jb250ZW50IGxpLmxpc3QtaGVhZGVyIHsNCiAgICBwYWRkaW5nOiAwIDI0cHg7DQogICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7DQp9DQoNCiNyZXN0cmljdC1wYWdlIHVsI2xpc3QtY29udGVudCBsaSAuY2VudHJhbGl6YSB7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBnYXA6IDI0cHg7DQogICAgZmxleC1kaXJlY3Rpb246IHJvdzsNCn0NCg0KI3Jlc3RyaWN0LXBhZ2UgdWwjbGlzdC1jb250ZW50IGxpIHAgew0KICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb3ItNSk7DQp9DQoNCiNyZXN0cmljdC1wYWdlIHVsI2xpc3QtY29udGVudCBsaS5saXN0LWhlYWRlciBwIHsNCiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29yLTcpOw0KfQ0KDQojcmVzdHJpY3QtcGFnZSB1bCNsaXN0LWNvbnRlbnQgbGkgYSB7DQogICAgY29sb3I6IHZhcigtLWNvbG9yLWNvci0zKTsNCiAgICBmb250LXdlaWdodDogbm9ybWFsOw0KICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOw0KfQ0KI3Jlc3RyaWN0LXBhZ2UgdWwjbGlzdC1jb250ZW50IGxpIC5saXN0LWdyb3VwIHsNCiAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIGdhcDogOHB4Ow0KICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47DQogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQp9DQojcmVzdHJpY3QtcGFnZSB1bCNsaXN0LWNvbnRlbnQgbGkubm90LWZvdW5kIHsNCiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgIHBhZGRpbmc6IDE1MHB4IDA7DQp9DQojcmVzdHJpY3QtcGFnZSAubGlzdC1mb290ZXIgew0KICAgIG1heC13aWR0aDogdmFyKC0tbWF4LWNvbnRlbnQtd2lkdGgpOw0KICAgIG1hcmdpbjoyNXB4IGF1dG8gMDsNCiAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7DQogICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOw0KICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQp9DQojcmVzdHJpY3QtcGFnZSAubGlzdC1mb290ZXIgLmxpc3QtcGFnaW5hdGlvbiB7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBnYXA6IDEycHg7DQp9DQojcmVzdHJpY3QtcGFnZSAubGlzdC1mb290ZXIgLmxpc3QtcGFnaW5hdGlvbiAuYnRuLXBhZ2luYWNhbyB7DQogICAgcGFkZGluZzogMHB4Ow0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAgYWxpZ24taXRlbXM6Y2VudGVyOw0KICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KICAgIGhlaWdodDogNDdweDsNCiAgICBtaW4td2lkdGg6IDQ3cHg7DQogICAgYm9yZGVyLXJhZGl1czogMTJweDsNCn0NCg0KLyogQ1NTIENPUkUgLSBGT1JNVUzDgVJJTyAqLw0KI3Jlc3RyaWN0LXBhZ2UgLm1lbnNhZ2VtLXN1Y2Vzc297DQogICAgd2lkdGg6IHZhcigtLW1heC1jb250ZW50LXdpZHRoKSAhaW1wb3J0YW50Ow0KICAgIG1hcmdpbjogMHB4IGF1dG8gMjBweCAhaW1wb3J0YW50Ow0KICAgIGJhY2tncm91bmQ6ICM2ZWVmOGE7DQogICAgY29sb3I6ICMxNzU3MjU7DQogICAgcGFkZGluZzogMjBweDsNCiAgICBib3JkZXItcmFkaXVzOiA4cHg7DQp9DQojcmVzdHJpY3QtcGFnZSAubWVuc2FnZW0tZXJybyB7DQogICAgd2lkdGg6IHZhcigtLW1heC1jb250ZW50LXdpZHRoKSAhaW1wb3J0YW50Ow0KICAgIG1hcmdpbjogMHB4IGF1dG8gMjBweCAhaW1wb3J0YW50Ow0KICAgIGJhY2tncm91bmQ6ICNlZjZlNmU7DQogICAgY29sb3I6ICNGRkY7DQogICAgcGFkZGluZzogMjBweDsNCiAgICBib3JkZXItcmFkaXVzOiA4cHg7DQp9DQojcmVzdHJpY3QtcGFnZSAjZW52aW9Db250ZXVkbyB7DQogICAgd2lkdGg6IDEwMCU7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOw0KICAgIGdhcDogMTZweDsNCiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC1jb250ZW50LXdpZHRoKTsNCiAgICBtYXJnaW46IDAgYXV0bzsNCn0NCiNyZXN0cmljdC1wYWdlICNlbnZpb0NvbnRldWRvIGxpew0KICAgIGNsZWFyOiBib3RoOw0KICAgIG1hcmdpbi1ib3R0b206IDEycHg7DQp9DQojcmVzdHJpY3QtcGFnZSAjZW52aW9Db250ZXVkbyAuZmlsZUNhbXBvew0KCWhlaWdodDogNDBweDsNCglsaW5lLWhlaWdodDo0MHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDNweDsNCglwb3NpdGlvbjpyZWxhdGl2ZTsNCglmbG9hdDpsZWZ0Ow0KCWRpc3BsYXk6YmxvY2s7DQoJd2lkdGg6IDQwMHB4Ow0KCWJvcmRlcjogMXB4IHNvbGlkICNDQ0M7DQogICAgYmFja2dyb3VuZDogI0ZGRjsNCglmb250LWZhbWlseTphcmlhbDsNCglmb250LXNpemU6MTJweDsNCgljdXJzb3I6cG9pbnRlcjsNCn0NCiNyZXN0cmljdC1wYWdlICNlbnZpb0NvbnRldWRvIC5maWxlQXJxdWl2b3sNCglwb3NpdGlvbjpmaXhlZDsNCgl6LWluZGV4Oi0yOw0KCW9wYWNpdHk6MDsJDQp9DQojcmVzdHJpY3QtcGFnZSAjZW52aW9Db250ZXVkbyAuYnR0LWFycXsNCgl3aWR0aDo3MHB4Ow0KCWhlaWdodDozNHB4Ow0KCWxpbmUtaGVpZ2h0OjM0cHg7DQoJbWFyZ2luOjJweDsNCgliYWNrZ3JvdW5kOiM2RkIzRTA7DQoJY29sb3I6I0ZGRjsNCgl0ZXh0LWFsaWduOmNlbnRlcjsNCglmbG9hdDpyaWdodDsJDQogICAgYm9yZGVyLXJhZGl1czogM3B4Ow0KICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7DQogICAgZm9udC13ZWlnaHQ6IGJvbGQ7DQogICAgZm9udC1zaXplOiAxMXB4Ow0KfQ0KI3Jlc3RyaWN0LXBhZ2UgI2VudmlvQ29udGV1ZG8gLmNvbnRldWRvLWFycXsNCgl3aWR0aDogMjQ5cHg7DQoJb3ZlcmZsb3c6IGhpZGRlbjsNCgloZWlnaHQ6NDBweDsNCglsaW5lLWhlaWdodDo0MHB4Ow0KCXBhZGRpbmctbGVmdDoxMHB4Ow0KCWNvbG9yOiMzMzM7DQoJZm9udC1zaXplOjEycHg7DQoJZmxvYXQ6bGVmdDsJCQ0KfQ0KI3Jlc3RyaWN0LXBhZ2UgI2VudmlvQ29udGV1ZG8gLmljb24tYXJxew0KCXdpZHRoOjM0cHg7DQoJaGVpZ2h0OjM0cHg7DQogICAgYm9yZGVyLXJhZGl1czogM3B4Ow0KCW1hcmdpbjoycHg7DQoJYmFja2dyb3VuZDojRDVENUQ1Ow0KCWZsb2F0OmxlZnQ7CQkNCn0NCiNyZXN0cmljdC1wYWdlICNlbnZpb0NvbnRldWRvIC5pY29uZS1hdHVhbHsNCgliYWNrZ3JvdW5kOnVybCguLi9pbWFnZW5zL2ljb25lc2ZpbGVzLnBuZykgbm8tcmVwZWF0IHRvcCBsZWZ0Ow0KCXdpZHRoOjM2cHg7DQoJaGVpZ2h0OjM2cHg7CQ0KICAgIGJhY2tncm91bmQtc2l6ZTogOTMlICFpbXBvcnRhbnQ7DQp9DQojcmVzdHJpY3QtcGFnZSAjZW52aW9Db250ZXVkbyAubGltcGFyew0KICAgIHdpZHRoOjE3cHg7DQoJaGVpZ2h0OjE3cHg7DQoJYmFja2dyb3VuZDp1cmwoLi4vaW1hZ2Vucy9yZXRpcmFyLmpwZykgbm8tcmVwZWF0Ow0KCWN1cnNvcjpwb2ludGVyOw0KCWZsb2F0OiBsZWZ0Ow0KICAgIG1hcmdpbi10b3A6IDExcHg7DQogICAgbWFyZ2luLWxlZnQ6IDE0cHg7DQoJZGlzcGxheTpub25lOw0KfQ0KI3Jlc3RyaWN0LXBhZ2UgI2VudmlvQ29udGV1ZG8gaW5wdXRbdHlwZT0idGV4dCJdLA0KI3Jlc3RyaWN0LXBhZ2UgI2VudmlvQ29udGV1ZG8gaW5wdXRbdHlwZT0iZGF0ZSJdLA0KI3Jlc3RyaWN0LXBhZ2UgI2VudmlvQ29udGV1ZG8gaW5wdXRbdHlwZT0icGFzc3dvcmQiXSwNCiNyZXN0cmljdC1wYWdlICNlbnZpb0NvbnRldWRvIGlucHV0W3R5cGU9Im51bSJdLA0KI3Jlc3RyaWN0LXBhZ2UgI2VudmlvQ29udGV1ZG8gaW5wdXRbdHlwZT0idGVsIl0sDQojcmVzdHJpY3QtcGFnZSAjZW52aW9Db250ZXVkbyBpbnB1dFt0eXBlPSJlbWFpbCJdLA0KI3Jlc3RyaWN0LXBhZ2UgI2VudmlvQ29udGV1ZG8gdGV4dGFyZWF7DQogICAgYm9yZGVyLXJhZGl1czogOHB4Ow0KICAgIHBhZGRpbmc6IDE1cHggMjRweDsNCiAgICBmb250LXdlaWdodDogMzAwOw0KfQ0KI3Jlc3RyaWN0LXBhZ2UgI2VudmlvQ29udGV1ZG8gc2VsZWN0ew0KICAgIGhlaWdodDogNDhweDsNCiAgICBib3JkZXItcmFkaXVzOiA4cHg7DQogICAgcGFkZGluZy1sZWZ0OiA2cHg7DQp9DQojcmVzdHJpY3QtcGFnZSAjZW52aW9Db250ZXVkbyAuc2luZ2xlew0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAgZmxleC1kaXJlY3Rpb246IHJvdzsNCn0NCiNyZXN0cmljdC1wYWdlICNlbnZpb0NvbnRldWRvIGxhYmVsew0KICAgIGN1cnNvcjogcG9pbnRlcjsNCn0NCiNyZXN0cmljdC1wYWdlICNlbnZpb0NvbnRldWRvIC5saXN0LXRpdGxlew0KICAgIG1hcmdpbi1ib3R0b206IDZweDsNCn0NCiNyZXN0cmljdC1wYWdlICNlbnZpb0NvbnRldWRvIGlucHV0W3R5cGU9ImNoZWNrYm94Il0gew0KICAgIG1heC13aWR0aDogMTZweDsNCn0NCkBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsNCiAgICAjcmVzdHJpY3QtcGFnZSAucGFnZS1hY3Rpb25zIHsNCiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsNCiAgICAgICAgZ2FwOiAxNnB4Ow0KICAgIH0NCiAgICAjcmVzdHJpY3QtcGFnZSAucGFnZS1hY3Rpb25zIC5mb3JtLWJ1c2NhIFt0eXBlPSJ0ZXh0Il17DQogICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpICFpbXBvcnRhbnQ7DQogICAgfQ0KICAgICNyZXN0cmljdC1wYWdlIC5wYWdlLWFjdGlvbnMgLmZvcm0tYnVzY2EgW3R5cGU9InN1Ym1pdCJdew0KICAgICAgICBtaW4td2lkdGg6IDEyMHB4Ow0KICAgIH0NCiAgICAjcmVzdHJpY3QtcGFnZSAubGlzdC1mb290ZXIgew0KICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOw0KICAgICAgICBnYXA6IDE2cHg7DQogICAgDQogICAgfQ0KfQ0KDQouYW50aS1ib3QsDQojYW50aS1ib3Qgew0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50Ow0KICAgIGxlZnQ6IC01MDAwMDAwMDBweCAhaW1wb3J0YW50Ow0KICAgIHRvcDogLTUwMDAwMDAwMDBweCAhaW1wb3J0YW50Ow0KfQ0KDQovKiBDQVJEUyAqLw0KLmZpbHRlci1tZW51Om5vdCguZGVza3RvcCk6aG92ZXIgaW1new0KICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWNvci0zKTsNCn0NCi5maWx0ZXItbWVudTpub3QoLmRlc2t0b3ApOmhvdmVyIHsNCiAgICBiYWNrZ3JvdW5kOiAjRjlGOUY5Ow0KfQ0KLmZpbHRlci1tZW51LnN3aXBlci1zbGlkZXsgICAgDQogICAgcGFkZGluZzogMTVweCAxMnB4IDE2cHggIWltcG9ydGFudDsNCiAgICBib3JkZXItcmFkaXVzOiAzMHB4Ow0KfQ0KDQovKiBCT1TDlUVTIERFIEFESUNJT05BUiDDgCBMSVNUQSAqLw0KLmJ0bi1ob2xkZXIgeyAgIA0KICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsNCn0NCltkYXRhLWl0ZW0taWRdIC5hZGQtc2hvcCB7DQogICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Ow0KfQ0KW2RhdGEtaXRlbS1pZF0gLmJ0bi1ob2xkZXIgew0KICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsNCn0NCi5zd2VldC1vdmVybGF5IHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7DQogICAgcG9zaXRpb246IGZpeGVkOw0KICAgIGxlZnQ6IDA7DQogICAgcmlnaHQ6IDA7DQogICAgdG9wOiAwOw0KICAgIGJvdHRvbTogMDsNCiAgICBkaXNwbGF5OiBub25lOw0KICAgIHotaW5kZXg6IDEwMDA7DQp9DQoNCi5zd2VldC1hbGVydCB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsNCiAgICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1mb250LWZhbWlseSk7DQogICAgYm9yZGVyLXJhZGl1czogNXB4Ow0KICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICBsZWZ0OiA1MCU7DQogICAgdG9wOiA1MCU7DQogICAgbWFyZ2luLXRvcDogLTIwMHB4Ow0KICAgIG1heC1oZWlnaHQ6IDkwJTsNCiAgICBvdmVyZmxvdy14OiBoaWRkZW47DQogICAgb3ZlcmZsb3cteTogYXV0bzsNCiAgICBkaXNwbGF5OiBub25lOw0KICAgIHotaW5kZXg6IDIwMDA7DQp9DQoNCi5zd2VldC1hbGVydCBoMiB7DQogICAgY29sb3I6ICM1NzU3NTc7DQogICAgZm9udC1zaXplOiAzMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICBmb250LXdlaWdodDogNjAwOw0KICAgIHRleHQtdHJhbnNmb3JtOiBub25lOw0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICBtYXJnaW46IDA7DQogICAgcGFkZGluZzogMDsNCiAgICBsaW5lLWhlaWdodDogNjBweDsNCiAgICBkaXNwbGF5OiBibG9jazsNCn0NCg0KLnN3ZWV0LWFsZXJ0IHAgew0KICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgZmxvYXQ6IG5vbmU7DQogICAgbWFyZ2luOiAwOw0KICAgIHBhZGRpbmc6IDA7DQogICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsNCn0NCg0KLnN3ZWV0LWFsZXJ0IGhyIHsNCiAgICBoZWlnaHQ6IDEwcHg7DQogICAgY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlcjogMDsNCn0NCg0KLnN3ZWV0LWFsZXJ0IGJ1dHRvbiB7DQogICAgY29sb3I6ICNmZmY7DQogICAgYm9yZGVyOiAwOw0KICAgIGJveC1zaGFkb3c6IG5vbmU7DQogICAgZm9udC1zaXplOiAxN3B4Ow0KICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgYm9yZGVyLXJhZGl1czogNXB4Ow0KICAgIHBhZGRpbmc6IDEwcHggMzJweDsNCiAgICBtYXJnaW46IDAgNXB4Ow0KICAgIGN1cnNvcjogcG9pbnRlcjsNCn0NCg0KLnN3ZWV0LWFsZXJ0IGJ1dHRvbjpmb2N1cyB7DQogICAgb3V0bGluZTogbm9uZTsNCn0NCg0KLnN3ZWV0LWFsZXJ0IGJ1dHRvbi5jYW5jZWxbZGlzYWJsZWRdIHsNCiAgICBvcGFjaXR5OiAuNDsNCn0NCg0KLnN3ZWV0LWFsZXJ0IGJ1dHRvbi5jb25maXJtW2Rpc2FibGVkXSB7DQogICAgYm9yZGVyOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICB3aWR0aDogNDBweDsNCiAgICBoZWlnaHQ6IDQwcHg7DQogICAgcGFkZGluZzogMDsNCiAgICBtYXJnaW46IDAgMzBweDsNCiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7DQogICAgY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGN1cnNvcjogZGVmYXVsdDsNCiAgICBib3JkZXItcmFkaXVzOiAxMDAlOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uOiByb3RhdGUtbG9hZGluZyAxLjVzIGxpbmVhciAwcyBpbmZpbml0ZSBub3JtYWw7DQogICAgYW5pbWF0aW9uOiByb3RhdGUtbG9hZGluZyAxLjVzIGxpbmVhciAwcyBpbmZpbml0ZSBub3JtYWw7DQp9DQoNCi5zd2VldC1hbGVydCBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIgew0KICAgIGJvcmRlcjogMDsNCn0NCg0KLnN3ZWV0LWFsZXJ0W2RhdGEtaGFzLWNhbmNlbC1idXR0b249ZmFsc2VdIGJ1dHRvbiB7DQogICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50Ow0KfQ0KDQouc3dlZXQtYWxlcnQgLmljb24gew0KICAgIHdpZHRoOiA4MHB4Ow0KICAgIGhlaWdodDogODBweDsNCiAgICBib3JkZXI6IDRweCBzb2xpZCAjODA4MDgwOw0KICAgIGJvcmRlci1yYWRpdXM6IDUwJTsNCiAgICBtYXJnaW46IDIwcHggYXV0bzsNCiAgICBwYWRkaW5nOiAwOw0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLmVycm9yIHsNCiAgICBib3JkZXItY29sb3I6ICNmMjc0NzQ7DQp9DQoNCi5zd2VldC1hbGVydCAuaWNvbi5lcnJvciAueC1tYXJrIHsNCiAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgZGlzcGxheTogYmxvY2s7DQp9DQoNCi5zd2VldC1hbGVydCAuaWNvbi5lcnJvciAubGluZSB7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIGhlaWdodDogNXB4Ow0KICAgIHdpZHRoOiA0N3B4Ow0KICAgIGJhY2tncm91bmQtY29sb3I6ICNmMjc0NzQ7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgdG9wOiAzN3B4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDJweDsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLmVycm9yIC5saW5lLmxlZnQgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7DQogICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgIGxlZnQ6IDE3cHg7DQp9DQoNCi5zd2VldC1hbGVydCAuaWNvbi5lcnJvciAubGluZS5yaWdodCB7DQogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgcmlnaHQ6IDE2cHg7DQp9DQoNCi5zd2VldC1hbGVydCAuaWNvbi53YXJuaW5nIHsNCiAgICBib3JkZXItY29sb3I6ICNmOGJiODY7DQp9DQoNCi5zd2VldC1hbGVydCAuaWNvbi53YXJuaW5nIC5ib2R5IHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgd2lkdGg6IDVweDsNCiAgICBoZWlnaHQ6IDQ3cHg7DQogICAgbGVmdDogNTAlOw0KICAgIHRvcDogMTBweDsNCiAgICBib3JkZXItcmFkaXVzOiAycHg7DQogICAgbWFyZ2luLWxlZnQ6IC0ycHg7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4YmI4NjsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLndhcm5pbmcgLmRvdCB7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIHdpZHRoOiA3cHg7DQogICAgaGVpZ2h0OiA3cHg7DQogICAgYm9yZGVyLXJhZGl1czogNTAlOw0KICAgIG1hcmdpbi1sZWZ0OiAtM3B4Ow0KICAgIGxlZnQ6IDUwJTsNCiAgICBib3R0b206IDEwcHg7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4YmI4NjsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLmluZm8gew0KICAgIGJvcmRlci1jb2xvcjogI2M5ZGFlMTsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLmluZm86OmJlZm9yZSB7DQogICAgY29udGVudDogJyc7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIHdpZHRoOiA1cHg7DQogICAgaGVpZ2h0OiAyOXB4Ow0KICAgIGxlZnQ6IDUwJTsNCiAgICBib3R0b206IDE3cHg7DQogICAgYm9yZGVyLXJhZGl1czogMnB4Ow0KICAgIG1hcmdpbi1sZWZ0OiAtMnB4Ow0KICAgIGJhY2tncm91bmQtY29sb3I6ICNjOWRhZTE7DQp9DQoNCi5zd2VldC1hbGVydCAuaWNvbi5pbmZvOjphZnRlciB7DQogICAgY29udGVudDogJyc7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIHdpZHRoOiA3cHg7DQogICAgaGVpZ2h0OiA3cHg7DQogICAgYm9yZGVyLXJhZGl1czogNTAlOw0KICAgIG1hcmdpbi1sZWZ0OiAtM3B4Ow0KICAgIHRvcDogMTlweDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzlkYWUxOw0KfQ0KDQouc3dlZXQtYWxlcnQgLmljb24uc3VjY2VzcyB7DQogICAgYm9yZGVyLWNvbG9yOiAjYTVkYzg2Ow0KfQ0KDQouc3dlZXQtYWxlcnQgLmljb24uc3VjY2Vzczo6YmVmb3JlLA0KLnN3ZWV0LWFsZXJ0IC5pY29uLnN1Y2Nlc3M6OmFmdGVyIHsNCiAgICBjb250ZW50OiAnJzsNCiAgICBib3JkZXItcmFkaXVzOiA1MCU7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIHdpZHRoOiA2MHB4Ow0KICAgIGhlaWdodDogMTIwcHg7DQogICAgYmFja2dyb3VuZDogI2ZmZjsNCiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLnN1Y2Nlc3M6OmJlZm9yZSB7DQogICAgYm9yZGVyLXJhZGl1czogMTIwcHggMCAwIDEyMHB4Ow0KICAgIHRvcDogLTdweDsNCiAgICBsZWZ0OiAtMzNweDsNCiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsNCiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDYwcHggNjBweDsNCiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNjBweCA2MHB4Ow0KICAgIHRyYW5zZm9ybS1vcmlnaW46IDYwcHggNjBweDsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLnN1Y2Nlc3M6OmFmdGVyIHsNCiAgICBib3JkZXItcmFkaXVzOiAwIDEyMHB4IDEyMHB4IDA7DQogICAgdG9wOiAtMTFweDsNCiAgICBsZWZ0OiAzMHB4Ow0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsNCiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsNCiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCA2MHB4Ow0KICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDYwcHg7DQogICAgdHJhbnNmb3JtLW9yaWdpbjogMCA2MHB4Ow0KfQ0KDQouc3dlZXQtYWxlcnQgLmljb24uc3VjY2VzcyAucGxhY2Vob2xkZXIgew0KICAgIHdpZHRoOiA4MHB4Ow0KICAgIGhlaWdodDogODBweDsNCiAgICBib3JkZXI6IDRweCBzb2xpZCByZ2JhKDE2NSwgMjIwLCAxMzQsIDAuMik7DQogICAgYm9yZGVyLXJhZGl1czogNTAlOw0KICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Ow0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICBsZWZ0OiAtNHB4Ow0KICAgIHRvcDogLTRweDsNCiAgICB6LWluZGV4OiAyOw0KfQ0KDQouc3dlZXQtYWxlcnQgLmljb24uc3VjY2VzcyAuZml4IHsNCiAgICB3aWR0aDogNXB4Ow0KICAgIGhlaWdodDogOTBweDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOw0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICBsZWZ0OiAyOHB4Ow0KICAgIHRvcDogOHB4Ow0KICAgIHotaW5kZXg6IDE7DQogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQp9DQoNCi5zd2VldC1hbGVydCAuaWNvbi5zdWNjZXNzIC5saW5lIHsNCiAgICBoZWlnaHQ6IDVweDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTVkYzg2Ow0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIGJvcmRlci1yYWRpdXM6IDJweDsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgei1pbmRleDogMjsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLnN1Y2Nlc3MgLmxpbmUudGlwIHsNCiAgICB3aWR0aDogMjVweDsNCiAgICBsZWZ0OiAxNHB4Ow0KICAgIHRvcDogNDZweDsNCiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsNCn0NCg0KLnN3ZWV0LWFsZXJ0IC5pY29uLnN1Y2Nlc3MgLmxpbmUubG9uZyB7DQogICAgd2lkdGg6IDQ3cHg7DQogICAgcmlnaHQ6IDhweDsNCiAgICB0b3A6IDM4cHg7DQogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOw0KICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQp9DQoNCi5zd2VldC1hbGVydCAuaWNvbi5jdXN0b20gew0KICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsNCiAgICBib3JkZXItcmFkaXVzOiAwOw0KICAgIGJvcmRlcjogMDsNCiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOw0KICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQp9DQoNCkAtd2Via2l0LWtleWZyYW1lcyBzaG93U3dlZXRBbGVydCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC43KTsNCiAgICB9DQoNCiAgICA0NSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7DQogICAgfQ0KDQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC45NSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjk1KTsNCiAgICB9DQoNCiAgICAxMDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgIH0NCn0NCg0KQGtleWZyYW1lcyBzaG93U3dlZXRBbGVydCB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjcpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC43KTsNCiAgICB9DQoNCiAgICA0NSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7DQogICAgfQ0KDQogICAgODAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC45NSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjk1KTsNCiAgICB9DQoNCiAgICAxMDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgIH0NCn0NCg0KQC13ZWJraXQta2V5ZnJhbWVzIGhpZGVTd2VldEFsZXJ0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICB9DQoNCiAgICAxMDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC41KTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNSk7DQogICAgfQ0KfQ0KDQpAa2V5ZnJhbWVzIGhpZGVTd2VldEFsZXJ0IHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICB9DQoNCiAgICAxMDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC41KTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNSk7DQogICAgfQ0KfQ0KDQouc2hvdy1zd2VldC1hbGVydCB7DQogICAgLXdlYmtpdC1hbmltYXRpb246IHNob3dTd2VldEFsZXJ0IDAuM3M7DQogICAgYW5pbWF0aW9uOiBzaG93U3dlZXRBbGVydCAwLjNzOw0KfQ0KDQouc2hvdy1zd2VldC1hbGVydC5uby1hbmltYXRpb24gew0KICAgIC13ZWJraXQtYW5pbWF0aW9uOiBub25lOw0KICAgIGFuaW1hdGlvbjogbm9uZTsNCn0NCg0KLmhpZGUtc3dlZXQtYWxlcnQgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uOiBoaWRlU3dlZXRBbGVydCAwLjJzOw0KICAgIGFuaW1hdGlvbjogaGlkZVN3ZWV0QWxlcnQgMC4yczsNCn0NCg0KLmhpZGUtc3dlZXQtYWxlcnQubm8tYW5pbWF0aW9uIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbjogbm9uZTsNCiAgICBhbmltYXRpb246IG5vbmU7DQp9DQoNCkAtd2Via2l0LWtleWZyYW1lcyBhbmltYXRlLXN1Y2Nlc3MtdGlwIHsNCiAgICAwJSB7DQogICAgICAgIHdpZHRoOiAwOw0KICAgICAgICBsZWZ0OiAxcHg7DQogICAgICAgIHRvcDogMTlweDsNCiAgICB9DQoNCiAgICA1NCUgew0KICAgICAgICB3aWR0aDogMDsNCiAgICAgICAgbGVmdDogMXB4Ow0KICAgICAgICB0b3A6IDE5cHg7DQogICAgfQ0KDQogICAgNzAlIHsNCiAgICAgICAgd2lkdGg6IDUwcHg7DQogICAgICAgIGxlZnQ6IC04cHg7DQogICAgICAgIHRvcDogMzdweDsNCiAgICB9DQoNCiAgICA4NCUgew0KICAgICAgICB3aWR0aDogMTdweDsNCiAgICAgICAgbGVmdDogMjFweDsNCiAgICAgICAgdG9wOiA0OHB4Ow0KICAgIH0NCg0KICAgIDEwMCUgew0KICAgICAgICB3aWR0aDogMjVweDsNCiAgICAgICAgbGVmdDogMTRweDsNCiAgICAgICAgdG9wOiA0NXB4Ow0KICAgIH0NCn0NCg0KQGtleWZyYW1lcyBhbmltYXRlLXN1Y2Nlc3MtdGlwIHsNCiAgICAwJSB7DQogICAgICAgIHdpZHRoOiAwOw0KICAgICAgICBsZWZ0OiAxcHg7DQogICAgICAgIHRvcDogMTlweDsNCiAgICB9DQoNCiAgICA1NCUgew0KICAgICAgICB3aWR0aDogMDsNCiAgICAgICAgbGVmdDogMXB4Ow0KICAgICAgICB0b3A6IDE5cHg7DQogICAgfQ0KDQogICAgNzAlIHsNCiAgICAgICAgd2lkdGg6IDUwcHg7DQogICAgICAgIGxlZnQ6IC04cHg7DQogICAgICAgIHRvcDogMzdweDsNCiAgICB9DQoNCiAgICA4NCUgew0KICAgICAgICB3aWR0aDogMTdweDsNCiAgICAgICAgbGVmdDogMjFweDsNCiAgICAgICAgdG9wOiA0OHB4Ow0KICAgIH0NCg0KICAgIDEwMCUgew0KICAgICAgICB3aWR0aDogMjVweDsNCiAgICAgICAgbGVmdDogMTRweDsNCiAgICAgICAgdG9wOiA0NXB4Ow0KICAgIH0NCn0NCg0KQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1hdGUtc3VjY2Vzcy1sb25nIHsNCiAgICAwJSB7DQogICAgICAgIHdpZHRoOiAwOw0KICAgICAgICByaWdodDogNDZweDsNCiAgICAgICAgdG9wOiA1NHB4Ow0KICAgIH0NCg0KICAgIDY1JSB7DQogICAgICAgIHdpZHRoOiAwOw0KICAgICAgICByaWdodDogNDZweDsNCiAgICAgICAgdG9wOiA1NHB4Ow0KICAgIH0NCg0KICAgIDg0JSB7DQogICAgICAgIHdpZHRoOiA1NXB4Ow0KICAgICAgICByaWdodDogMDsNCiAgICAgICAgdG9wOiAzNXB4Ow0KICAgIH0NCg0KICAgIDEwMCUgew0KICAgICAgICB3aWR0aDogNDdweDsNCiAgICAgICAgcmlnaHQ6IDhweDsNCiAgICAgICAgdG9wOiAzOHB4Ow0KICAgIH0NCn0NCg0KQGtleWZyYW1lcyBhbmltYXRlLXN1Y2Nlc3MtbG9uZyB7DQogICAgMCUgew0KICAgICAgICB3aWR0aDogMDsNCiAgICAgICAgcmlnaHQ6IDQ2cHg7DQogICAgICAgIHRvcDogNTRweDsNCiAgICB9DQoNCiAgICA2NSUgew0KICAgICAgICB3aWR0aDogMDsNCiAgICAgICAgcmlnaHQ6IDQ2cHg7DQogICAgICAgIHRvcDogNTRweDsNCiAgICB9DQoNCiAgICA4NCUgew0KICAgICAgICB3aWR0aDogNTVweDsNCiAgICAgICAgcmlnaHQ6IDA7DQogICAgICAgIHRvcDogMzVweDsNCiAgICB9DQoNCiAgICAxMDAlIHsNCiAgICAgICAgd2lkdGg6IDQ3cHg7DQogICAgICAgIHJpZ2h0OiA4cHg7DQogICAgICAgIHRvcDogMzhweDsNCiAgICB9DQp9DQoNCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVQbGFjZWhvbGRlciB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgfQ0KDQogICAgNSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgfQ0KDQogICAgMTIlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDA1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQwNWRlZyk7DQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQwNWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00MDVkZWcpOw0KICAgIH0NCn0NCg0KQGtleWZyYW1lcyByb3RhdGVQbGFjZWhvbGRlciB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgfQ0KDQogICAgNSUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7DQogICAgfQ0KDQogICAgMTIlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDA1ZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQwNWRlZyk7DQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQwNWRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00MDVkZWcpOw0KICAgIH0NCn0NCg0KLmFuaW1hdGUtc3VjY2Vzcy10aXAgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uOiBhbmltYXRlLXN1Y2Nlc3MtdGlwIDAuNzVzOw0KICAgIGFuaW1hdGlvbjogYW5pbWF0ZS1zdWNjZXNzLXRpcCAwLjc1czsNCn0NCg0KLmFuaW1hdGUtc3VjY2Vzcy1sb25nIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbjogYW5pbWF0ZS1zdWNjZXNzLWxvbmcgMC43NXM7DQogICAgYW5pbWF0aW9uOiBhbmltYXRlLXN1Y2Nlc3MtbG9uZyAwLjc1czsNCn0NCg0KLmljb24uc3VjY2Vzcy5hbmltYXRlOjphZnRlciB7DQogICAgLXdlYmtpdC1hbmltYXRpb246IHJvdGF0ZVBsYWNlaG9sZGVyIDQuMjVzIGVhc2UtaW47DQogICAgYW5pbWF0aW9uOiByb3RhdGVQbGFjZWhvbGRlciA0LjI1cyBlYXNlLWluOw0KfQ0KDQpALXdlYmtpdC1rZXlmcmFtZXMgYW5pbWF0ZS1lcnJvci1pY29uIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKDEwMGRlZyk7DQogICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxMDBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCg0KICAgIDEwMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDBkZWcpOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCg0KQGtleWZyYW1lcyBhbmltYXRlLWVycm9yLWljb24gew0KICAgIDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoMTAwZGVnKTsNCiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDEwMGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDA7DQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKDBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7DQogICAgICAgIG9wYWNpdHk6IDE7DQogICAgfQ0KfQ0KDQouYW5pbWF0ZS1lcnJvci1pY29uIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbjogYW5pbWF0ZS1lcnJvci1pY29uIDAuNXM7DQogICAgYW5pbWF0aW9uOiBhbmltYXRlLWVycm9yLWljb24gMC41czsNCn0NCg0KQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1hdGUteC1tYXJrIHsNCiAgICAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguNCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjQpOw0KICAgICAgICBtYXJnaW4tdG9wOiAyNnB4Ow0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCg0KICAgIDUwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguNCk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjQpOw0KICAgICAgICBtYXJnaW4tdG9wOiAyNnB4Ow0KICAgICAgICBvcGFjaXR5OiAwOw0KICAgIH0NCg0KICAgIDgwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTsNCiAgICAgICAgbWFyZ2luLXRvcDogLTZweDsNCiAgICB9DQoNCiAgICAxMDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOw0KICAgICAgICBtYXJnaW4tdG9wOiAwOw0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgIH0NCn0NCg0KQGtleWZyYW1lcyBhbmltYXRlLXgtbWFyayB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjQpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC40KTsNCiAgICAgICAgbWFyZ2luLXRvcDogMjZweDsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQoNCiAgICA1MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjQpOw0KICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC40KTsNCiAgICAgICAgbWFyZ2luLXRvcDogMjZweDsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQoNCiAgICA4MCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xNSk7DQogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7DQogICAgICAgIG1hcmdpbi10b3A6IC02cHg7DQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsNCiAgICAgICAgbWFyZ2luLXRvcDogMDsNCiAgICAgICAgb3BhY2l0eTogMTsNCiAgICB9DQp9DQoNCi5hbmltYXRlLXgtbWFyayB7DQogICAgLXdlYmtpdC1hbmltYXRpb246IGFuaW1hdGUteC1tYXJrIDAuNXM7DQogICAgYW5pbWF0aW9uOiBhbmltYXRlLXgtbWFyayAwLjVzOw0KfQ0KDQpALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Utd2FybmluZyB7DQogICAgMCUgew0KICAgICAgICBib3JkZXItY29sb3I6ICNmOGQ0ODY7DQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIGJvcmRlci1jb2xvcjogI2Y4YmI4NjsNCiAgICB9DQp9DQoNCkBrZXlmcmFtZXMgcHVsc2Utd2FybmluZyB7DQogICAgMCUgew0KICAgICAgICBib3JkZXItY29sb3I6ICNmOGQ0ODY7DQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIGJvcmRlci1jb2xvcjogI2Y4YmI4NjsNCiAgICB9DQp9DQoNCi5wdWxzZS13YXJuaW5nIHsNCiAgICAtd2Via2l0LWFuaW1hdGlvbjogcHVsc2Utd2FybmluZyAwLjc1cyBpbmZpbml0ZSBhbHRlcm5hdGU7DQogICAgYW5pbWF0aW9uOiBwdWxzZS13YXJuaW5nIDAuNzVzIGluZmluaXRlIGFsdGVybmF0ZTsNCn0NCg0KQC13ZWJraXQta2V5ZnJhbWVzIHB1bHNlLXdhcm5pbmctaW5zIHsNCiAgICAwJSB7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGQ0ODY7DQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGJiODY7DQogICAgfQ0KfQ0KDQpAa2V5ZnJhbWVzIHB1bHNlLXdhcm5pbmctaW5zIHsNCiAgICAwJSB7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGQ0ODY7DQogICAgfQ0KDQogICAgMTAwJSB7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGJiODY7DQogICAgfQ0KfQ0KDQoucHVsc2Utd2FybmluZy1pbnMgew0KICAgIC13ZWJraXQtYW5pbWF0aW9uOiBwdWxzZS13YXJuaW5nLWlucyAwLjc1cyBpbmZpbml0ZSBhbHRlcm5hdGU7DQogICAgYW5pbWF0aW9uOiBwdWxzZS13YXJuaW5nLWlucyAwLjc1cyBpbmZpbml0ZSBhbHRlcm5hdGU7DQp9DQoNCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUtbG9hZGluZyB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsNCiAgICB9DQoNCiAgICAxMDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOw0KICAgIH0NCn0NCg0KQGtleWZyYW1lcyByb3RhdGUtbG9hZGluZyB7DQogICAgMCUgew0KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsNCiAgICB9DQoNCiAgICAxMDAlIHsNCiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOw0KICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOw0KICAgIH0NCn0uc2VsZWN0Mi1jb250YWluZXJ7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbjowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTsgZmxvYXQ6IGxlZnQ7fS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtvdXRsaW5lOm5vbmU7Ym94LXNpemluZzpib3JkZXItYm94O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjQwcHg7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7ZGlzcGxheTpibG9jaztwYWRkaW5nLWxlZnQ6OHB4O3BhZGRpbmctcmlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7cG9zaXRpb246cmVsYXRpdmV9LnNlbGVjdDItY29udGFpbmVyW2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtwYWRkaW5nLXJpZ2h0OjhweDtwYWRkaW5nLWxlZnQ6MjBweH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jazttaW4taGVpZ2h0OjMycHg7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtkaXNwbGF5OmlubGluZS1ibG9jaztvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1sZWZ0OjhweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmV7ZmxvYXQ6bGVmdH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZHtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjEwMCU7bWFyZ2luLXRvcDo1cHg7cGFkZGluZzowfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfS5zZWxlY3QyLWRyb3Bkb3due2JhY2tncm91bmQtY29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCAjRDdEN0Q3O2JvcmRlci1yYWRpdXM6NHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTEwMDAwMHB4O3dpZHRoOjEwMCU7ei1pbmRleDoxMDUxfS5zZWxlY3QyLXJlc3VsdHN7ZGlzcGxheTpibG9ja30uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25ze2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9LnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue3BhZGRpbmc6NnB4O3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkXXtjdXJzb3I6cG9pbnRlcn0uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd257bGVmdDowfS5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmV7Ym9yZGVyLWJvdHRvbTpub25lO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bi0tYmVsb3d7Ym9yZGVyLXRvcDpub25lO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd257ZGlzcGxheTpibG9jaztwYWRkaW5nOjRweH0uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7cGFkZGluZzo0cHg7d2lkdGg6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfS5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24uc2VsZWN0Mi1zZWFyY2gtLWhpZGV7ZGlzcGxheTpub25lfS5zZWxlY3QyLWNsb3NlLW1hc2t7Ym9yZGVyOjA7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246Zml4ZWQ7bGVmdDowO3RvcDowO21pbi1oZWlnaHQ6MTAwJTttaW4td2lkdGg6MTAwJTtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO29wYWNpdHk6MDt6LWluZGV4Ojk5O2JhY2tncm91bmQtY29sb3I6I2ZmZjtmaWx0ZXI6YWxwaGEob3BhY2l0eT0wKX0uc2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZXtib3JkZXI6MCAhaW1wb3J0YW50O2NsaXA6cmVjdCgwIDAgMCAwKSAhaW1wb3J0YW50O2hlaWdodDoxcHggIWltcG9ydGFudDttYXJnaW46LTFweCAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiAhaW1wb3J0YW50O3BhZGRpbmc6MCAhaW1wb3J0YW50O3Bvc2l0aW9uOmFic29sdXRlICFpbXBvcnRhbnQ7d2lkdGg6MXB4ICFpbXBvcnRhbnR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNEN0Q3RDc7Ym9yZGVyLXJhZGl1czozcHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7Y29sb3I6IzQ0NDtsaW5lLWhlaWdodDozOHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2N1cnNvcjpwb2ludGVyO2Zsb2F0OnJpZ2h0O2ZvbnQtd2VpZ2h0OmJvbGR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3toZWlnaHQ6MjZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OHB4O3JpZ2h0OjFweDt3aWR0aDoyMHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGJ7Ym9yZGVyLWNvbG9yOiM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDo1cHggNHB4IDAgNHB4O2hlaWdodDowO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi00cHg7bWFyZ2luLXRvcDotMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPSJydGwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Zsb2F0OmxlZnR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3tsZWZ0OjFweDtyaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7YmFja2dyb3VuZC1jb2xvcjojZWVlO2N1cnNvcjpkZWZhdWx0fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntkaXNwbGF5Om5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYntib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtib3JkZXItd2lkdGg6MCA0cHggNXB4IDRweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgI0QzRDNEMztib3JkZXItcmFkaXVzOjRweDtjdXJzb3I6dGV4dH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2JveC1zaXppbmc6Ym9yZGVyLWJveDtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowIDVweDt3aWR0aDoxMDAlfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OTttYXJnaW4tdG9wOjVweDtmbG9hdDpsZWZ0fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7Y3Vyc29yOnBvaW50ZXI7ZmxvYXQ6cmlnaHQ7Zm9udC13ZWlnaHQ6Ym9sZDttYXJnaW4tdG9wOjVweDttYXJnaW4tcmlnaHQ6MTBweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXtiYWNrZ3JvdW5kLWNvbG9yOiNlNGU0ZTQ7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2N1cnNvcjpkZWZhdWx0O2Zsb2F0OmxlZnQ7bWFyZ2luLXJpZ2h0OjVweDttYXJnaW4tdG9wOjVweDtwYWRkaW5nOjAgNXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7Y29sb3I6Izk5OTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXdlaWdodDpib2xkO21hcmdpbi1yaWdodDoycHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3Zlcntjb2xvcjojMzMzfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UsLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmV7ZmxvYXQ6cmlnaHR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyOnNvbGlkICNEM0QzRDMgMXB4O291dGxpbmU6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7YmFja2dyb3VuZC1jb2xvcjojZWVlO2N1cnNvcjpkZWZhdWx0fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZXtkaXNwbGF5Om5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSwuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSwuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZHtib3JkZXI6MXB4IHNvbGlkICNDQ0N9LnNlbGVjdDItc2VhcmNoX19maWVsZHtjb2xvcjojMzMzICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZToxMnB4ICFpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OidPcGVuIFNhbnMnICFpbXBvcnRhbnQ7fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7b3V0bGluZTowO2JveC1zaGFkb3c6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzPi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnN7bWF4LWhlaWdodDoyMDBweDtvdmVyZmxvdy15OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbltyb2xlPWdyb3VwXXtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLWRpc2FibGVkPXRydWVde2NvbG9yOiM5OTl9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkPXRydWVde2JhY2tncm91bmQtY29sb3I6I2RkZH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbntwYWRkaW5nLWxlZnQ6MWVtfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3Vwe3BhZGRpbmctbGVmdDowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotMWVtO3BhZGRpbmctbGVmdDoyZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotMmVtO3BhZGRpbmctbGVmdDozZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257bWFyZ2luLWxlZnQ6LTNlbTtwYWRkaW5nLWxlZnQ6NGVtfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotNGVtO3BhZGRpbmctbGVmdDo1ZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotNWVtO3BhZGRpbmctbGVmdDo2ZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF17YmFja2dyb3VuZC1jb2xvcjojNTg5N2ZiO2NvbG9yOndoaXRlfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cHtjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6NnB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjc7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O291dGxpbmU6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiA1MCUsICNlZWUgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDUwJSwgI2VlZSAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmYgNTAlLCAjZWVlIDEwMCUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRkZGRkZGJywgZW5kQ29sb3JzdHI9JyNGRkVFRUVFRScsIEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6Zm9jdXN7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2NvbG9yOiM0NDQ7bGluZS1oZWlnaHQ6MjhweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntjdXJzb3I6cG9pbnRlcjtmbG9hdDpyaWdodDtmb250LXdlaWdodDpib2xkO21hcmdpbi1yaWdodDoxMHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVye2NvbG9yOiM5OTl9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7YmFja2dyb3VuZC1jb2xvcjojZGRkO2JvcmRlcjpub25lO2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjYWFhO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7aGVpZ2h0OjI2cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjFweDtyaWdodDoxcHg7d2lkdGg6MjBweDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZSA1MCUsICNjY2MgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2NjYyAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUgNTAlLCAjY2NjIDEwMCUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgZW5kQ29sb3JzdHI9JyNGRkNDQ0NDQycsIEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjojODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6NXB4IDRweCAwIDRweDtoZWlnaHQ6MDtsZWZ0OjUwJTttYXJnaW4tbGVmdDotNHB4O21hcmdpbi10b3A6LTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntmbG9hdDpsZWZ0fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6MDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtsZWZ0OjFweDtyaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtib3JkZXI6MXB4IHNvbGlkICM1ODk3ZmJ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODg4IHRyYW5zcGFyZW50O2JvcmRlci13aWR0aDowIDRweCA1cHggNHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLXRvcDpub25lO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDAlLCAjZWVlIDUwJSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgR3JhZGllbnRUeXBlPTApfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLWJvdHRvbTpub25lO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2ZmZiAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWUgNTAlLCAjZmZmIDEwMCUpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlZSA1MCUsICNmZmYgMTAwJSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZFRUVFRUUnLCBlbmRDb2xvcnN0cj0nI0ZGRkZGRkZGJywgR3JhZGllbnRUeXBlPTApfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JhY2tncm91bmQtY29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2N1cnNvcjp0ZXh0O291dGxpbmU6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZTpmb2N1c3tib3JkZXI6MXB4IHNvbGlkICM1ODk3ZmJ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowIDVweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Rpc3BsYXk6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXtiYWNrZ3JvdW5kLWNvbG9yOiNlNGU0ZTQ7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2N1cnNvcjpkZWZhdWx0O2Zsb2F0OmxlZnQ7bWFyZ2luLXJpZ2h0OjVweDttYXJnaW4tdG9wOjVweDtwYWRkaW5nOjAgNXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7Y29sb3I6Izg4ODtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXdlaWdodDpib2xkO21hcmdpbi1yaWdodDoycHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3Zlcntjb2xvcjojNTU1fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9InJ0bCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2V7ZmxvYXQ6cmlnaHR9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj0icnRsIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXI6MXB4IHNvbGlkICM1ODk3ZmJ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlci10b3A6bm9uZTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyLWJvdHRvbTpub25lO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7Ym9yZGVyOjFweCBzb2xpZCAjQ0NDO291dGxpbmU6MH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZHtvdXRsaW5lOjA7Ym94LXNoYWRvdzpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1kcm9wZG93bntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWFib3Zle2JvcmRlci1ib3R0b206bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWJlbG93e2JvcmRlci10b3A6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0cz4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25ze21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bcm9sZT1ncm91cF17cGFkZGluZzowfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bYXJpYS1kaXNhYmxlZD10cnVlXXtjb2xvcjpncmV5fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRde2JhY2tncm91bmQtY29sb3I6IzM4NzVkNztjb2xvcjojZmZmfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cHtjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6NnB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bntib3JkZXItY29sb3I6IzU4OTdmYn1ib2R5IHsNCiAgICBwYWRkaW5nLXRvcDogMTY4cHg7DQp9DQoNCmJvZHkubG9nZ2VkLXVzZXIgew0KICAgIHBhZGRpbmctdG9wOiAyMjJweDsNCn0NCg0KLyogQ0FCRcOHQUxITyAqLw0KI3NlY3Rpb24tMSAubGlzdC1saW5rLXVzZXIgYTpob3ZlciB7DQogICAgY29sb3I6IHZhcigtLWNvbG9yLWNvci0yKTsNCn0NCg0KI3NlY3Rpb24tMSAuZGFyay1iZyB7DQogICAgZGlzcGxheTogbm9uZTsNCn0NCg0KI3NlY3Rpb24tMSAudXNlci1tZW51LXByaXZhdGUsDQojc2VjdGlvbi0xIC51c2VyLW1lbnUtcHVibGljIHsNCiAgICByaWdodDogLTQ3NXB4Ow0KICAgIG92ZXJmbG93LXk6IGF1dG87DQp9DQoNCiNzZWN0aW9uLTEgLnVzZXItbWVudS1wcml2YXRlIGEuY29sb3ItYmxhY2s6aG92ZXIsDQojc2VjdGlvbi0xIC51c2VyLW1lbnUtcHJpdmF0ZSBhLmNvbG9yLWJsYWNrOmhvdmVyIHAgew0KICAgIGNvbG9yOiAjNDQ0ICFpbXBvcnRhbnQ7DQp9DQoNCiNzZWN0aW9uLTEgLnBvaW50ZXItc3ZnIHsNCiAgICBjdXJzb3I6IHBvaW50ZXI7DQp9DQoNCiNzZWN0aW9uLTEgZm9ybSBpbnB1dCB7DQogICAgYmFja2dyb3VuZDogdXJsKCJodHRwczovL2ZpbGVzLmNheW1hbndlYi5jb20uYnIvOTdkY2YwZjZiMDYwMzBiZmIyMWQ3Y2UyMjhiZTgxYWQvMDgwMTIwMjQxNDI5MDQwMDAwMDA2MTU0NS5zdmciKSAxNXB4IGNlbnRlciBuby1yZXBlYXQsICNmZmY7DQogICAgY29sb3I6ICM3Njc2NzY7DQogICAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgICBib3JkZXI6IDBweCAhaW1wb3J0YW50Ow0KICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDsNCn0NCiNzZWN0aW9uLTEgZm9ybSBpbnB1dDpmb2N1cyB7DQogICAgYm9yZGVyOiAwcHggIWltcG9ydGFudDsNCiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7DQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOiAxMjgwcHgpIHsNCiAgICAjc2VjdGlvbi0xIC5zdG9yZS10eXBlcyB1bCB7DQogICAgICAgIGdhcDogNDBweDsNCiAgICB9DQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHsNCg0KICAgIGJvZHksDQogICAgYm9keS5sb2dnZWQtdXNlciB7DQogICAgICAgIHBhZGRpbmctdG9wOiAxNTFweDsNCiAgICB9DQoNCiAgICAjc2VjdGlvbi0xIFtkYXRhLXR5cGUtc2VjdGlvbj0iMiJdIHsNCiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsNCiAgICB9DQoNCiAgICAjc2VjdGlvbi0xIC5zdG9yZS10eXBlIHsNCiAgICAgICAgbWFyZ2luLXRvcDogODBweDsNCiAgICB9DQoNCiAgICAjc2VjdGlvbi0xIC5zdG9yZS10eXBlcy1kZXNrIHsNCiAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICB9DQoNCiAgICAjc2VjdGlvbi0xIC5sb2dvIGltZyB7DQogICAgICAgIG1heC13aWR0aDogdW5zZXQ7DQogICAgICAgIHdpZHRoOiAxNDBweDsNCiAgICAgICAgaGVpZ2h0OiA1NnB4Ow0KICAgIH0NCg0KICAgICNzZWN0aW9uLTEgI21vYmlsZS1oZWFkZXItbmF2aWdhdGlvbj5kaXYuZmxleCB7DQogICAgICAgIGZsZXgtd3JhcDogd3JhcDsNCiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOw0KICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7DQogICAgICAgIG1hcmdpbjogMCAxNXB4Ow0KICAgIH0NCg0KICAgICNzZWN0aW9uLTEgZm9ybSB7DQogICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7DQogICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KSAhaW1wb3J0YW50Ow0KICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsNCiAgICB9DQoNCiAgICAjc2VjdGlvbi0xIGZvcm0gaW5wdXQgew0KICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50Ow0KICAgIH0NCg0KfQ0KDQpAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsNCg0KICAgICNzZWN0aW9uLTEgI21vYmlsZS1oZWFkZXItbmF2aWdhdGlvbj5kaXYuZmxleCAuaWNvbnMgYS5zaG9wcGluZy1saXN0IHsNCiAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICB9DQoNCiAgICAjc2VjdGlvbi0xICNtb2JpbGUtaGVhZGVyLW5hdmlnYXRpb24+ZGl2LmZsZXggLmljb25zIC5sb2NhdGlvbiAuZGVzY3JpcHRpb24gew0KICAgICAgICBkaXNwbGF5OiBub25lOw0KICAgIH0NCg0KICAgICNzZWN0aW9uLTEgLmxvY2F0aW9uLWFjdGl2ZSB7DQogICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsNCiAgICB9DQoNCn0NCg0KQG1lZGlhIChtYXgtd2lkdGg6IDU1NnB4KSB7DQogICAgI3NlY3Rpb24tMSBwLmxvY2F0aW9uIHsNCiAgICAgICAgbWF4LXdpZHRoOiA3MHB4Ow0KICAgIH0NCn0NCg0KQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7DQogICAgI3NlY3Rpb24tMSAub2ZmZXItZmlsdGVyIHsNCiAgICAgICAgbWFyZ2luLXRvcDogNzVweDsNCiAgICB9DQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkgew0KICAgICNzZWN0aW9uLTEgLm9mZmVyLWZpbHRlciB7DQogICAgICAgIG1hcmdpbi10b3A6IDEzNXB4Ow0KICAgIH0NCn0NCg0KI3NlY3Rpb24tMSB7DQogICAgcGFkZGluZy10b3A6IDBweDsNCiAgICBwYWRkaW5nLWJvdHRvbTogMHB4Ow0KICAgIG1hcmdpbi10b3A6IDBweDsNCiAgICBtYXJnaW4tYm90dG9tOiAwcHg7DQogICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7DQogICAgdG9wOiAwOw0KICAgIGxlZnQ6IDA7DQogICAgd2lkdGg6IDEwMCU7DQogICAgei1pbmRleDogOTk5Ow0KICAgIHRyYW5zaXRpb246IDAuM3MgYWxsIGxpbmVhcjsNCn0NCg0KI3NlY3Rpb24tMS5maXhlZCB7DQogICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7DQp9DQoNCiNzZWN0aW9uLTEuZml4ZWQgLnVwcGVyLWhlYWRlciB7DQogICAgZGlzcGxheTogbm9uZTsNCn0NCg0KOm5vdChbaWRePSJncm91cC0iXSk+I3NlY3Rpb24tMSB7DQogICAgYmFja2dyb3VuZDogIzAwZmZmMDsNCn0NCg0KI2dyb3VwLTEgew0KICAgIGJhY2tncm91bmQ6ICMwMGZmZjA7DQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHsNCg0KICAgIFtkYXRhLXR5cGUtc2VjdGlvbj0iMiJdIHsNCiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Ow0KICAgIH0NCg0KICAgICNtb2JpbGUtaGVhZGVyLW5hdmlnYXRpb24gew0KICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7DQogICAgfQ0KDQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgew0KDQogICAgW2RhdGEtdHlwZS1zZWN0aW9uPSIyIl0gew0KICAgICAgICBkaXNwbGF5OiBub25lOw0KICAgIH0NCg0KICAgICNtb2JpbGUtaGVhZGVyLW5hdmlnYXRpb24gew0KICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgIH0NCn0NCg0KI3NlY3Rpb24tMSAuYXV0b2NvbXBsZXRlLWl0ZW1zIHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgYmFja2dyb3VuZDogI0ZGRjsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4Ow0KICAgIGJvcmRlci10b3A6IDBweDsNCiAgICBvdmVyZmxvdzogaGlkZGVuOw0KfQ0KI3NlY3Rpb24tMSAuYXV0b2NvbXBsZXRlLWl0ZW1zIC5zZWFyY2gtaXRlbSBpbWd7DQogICAgbWFyZ2luLXJpZ2h0OiAxNXB4Ow0KfQ0KI3NlY3Rpb24tMSAuYXV0b2NvbXBsZXRlLWl0ZW1zIC5zZWFyY2gtaXRlbSB7DQogICAgcGFkZGluZzogOHB4IDE1cHg7DQogICAgZGlzcGxheTogZmxleDsNCiAgICBmbGV4LWRpcmVjdGlvbjogcm93Ow0KICAgIGN1cnNvcjogcG9pbnRlcjsNCn0NCiNzZWN0aW9uLTEgLmF1dG9jb21wbGV0ZS1pdGVtcyAuc2VhcmNoLWl0ZW06aG92ZXIgew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNGOUY5Rjk7DQp9DQojc2VjdGlvbi0xIC5hdXRvY29tcGxldGUtaXRlbXMgLnNlYXJjaC1pdGVtICsgLnNlYXJjaC1pdGVtIHsNCiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0NDQzsNCn0NCiNzZWN0aW9uLTEgLmF1dG9jb21wbGV0ZS1pdGVtcyAuc2VhcmNoLWl0ZW0gLnNlYXJjaC1jb250ZW50ew0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsNCn0NCiNzZWN0aW9uLTEgLmF1dG9jb21wbGV0ZS1pdGVtcyAuc2VhcmNoLWl0ZW0gLnNlYXJjaC10eXBlew0KICAgIGZvbnQtc2l6ZTogMC44ZW07DQp9
- Protocol
- H2
- Security
- TLS 1.3,
, AES_256_GCM
- Server
-
69.163.180.60
Brea, United States,
ASN26347
(DREAMHOST-AS, US),
- Reverse DNS
- apache2-dap.pdx1-shared-a1-36.dreamhost.com
- Software
-
Apache /
- Resource Hash
- 622488c58cf22c8bcfbd9e582ea9c5a75370a95c8c1c724ad15b1541551b8664
|
GET
H2
|
200
|
nKKZ-Go6G5tXcraVGwA.woff2
fonts.gstatic.com/s/kanit/v15/
|
19 KB
19 KB
|
170ms
38ms
|
Font
font/woff2 |
2a00:1450:4001:800::2003
GOOGLE
|
|
General
- Full URL
- https://fonts.gstatic.com/s/kanit/v15/nKKZ-Go6G5tXcraVGwA.woff2
- Requested by
- Host: fonts.googleapis.com
URL: https://fonts.googleapis.com/css2?family=Kanit:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap
- Protocol
- H2
- Security
- TLS 1.3,
, AES_128_GCM
- Server
-
2a00:1450:4001:800::2003
Frankfurt am Main, Germany,
ASN15169
(GOOGLE, US),
- Reverse DNS
- Software
-
sffe /
- Resource Hash
- ae7b918efe7cd287651e014ed269c923e1a925c8eee1a474ad11184f04659d3e
- Security Headers
-
Name |
Value |
X-Content-Type-Options |
nosniff |
X-Xss-Protection |
0 |
|
GET
H2
|
200
|
nKKU-Go6G5tXcr5mOBWnVaE.woff2
fonts.gstatic.com/s/kanit/v15/
|
19 KB
19 KB
|
216ms
84ms
|
Font
font/woff2 |
2a00:1450:4001:800::2003
GOOGLE
|
|
General
- Full URL
- https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr5mOBWnVaE.woff2
- Requested by
- Host: fonts.googleapis.com
URL: https://fonts.googleapis.com/css2?family=Kanit:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap
- Protocol
- H2
- Security
- TLS 1.3,
, AES_128_GCM
- Server
-
2a00:1450:4001:800::2003
Frankfurt am Main, Germany,
ASN15169
(GOOGLE, US),
- Reverse DNS
- Software
-
sffe /
- Resource Hash
- e84152f72d9c6fc90b6ff3fad4f8895d02f95e01e3181a994530801201cc4a28
- Security Headers
-
Name |
Value |
X-Content-Type-Options |
nosniff |
X-Xss-Protection |
0 |
|
GET
H2
|
200
|
nKKU-Go6G5tXcr4uPhWnVaE.woff2
fonts.gstatic.com/s/kanit/v15/
|
19 KB
19 KB
|
182ms
51ms
|
Font
font/woff2 |
2a00:1450:4001:800::2003
GOOGLE
|
|
General
- Full URL
- https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr4uPhWnVaE.woff2
- Requested by
- Host: fonts.googleapis.com
URL: https://fonts.googleapis.com/css2?family=Kanit:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap
- Protocol
- H2
- Security
- TLS 1.3,
, AES_128_GCM
- Server
-
2a00:1450:4001:800::2003
Frankfurt am Main, Germany,
ASN15169
(GOOGLE, US),
- Reverse DNS
- Software
-
sffe /
- Resource Hash
- dcc14901eb1cb3bdce862861295fb44bd29b1a1dd5f375b4d488c020e22023d1
- Security Headers
-
Name |
Value |
X-Content-Type-Options |
nosniff |
X-Xss-Protection |
0 |
|
GET
H2
|
200
|
nKKU-Go6G5tXcr4-ORWnVaE.woff2
fonts.gstatic.com/s/kanit/v15/
|
19 KB
19 KB
|
183ms
97ms
|
Font
font/woff2 |
2a00:1450:4001:800::2003
GOOGLE
|
|
General
- Full URL
- https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr4-ORWnVaE.woff2
- Requested by
- Host: fonts.googleapis.com
URL: https://fonts.googleapis.com/css2?family=Kanit:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap
- Protocol
- H2
- Security
- TLS 1.3,
, AES_128_GCM
- Server
-
2a00:1450:4001:800::2003
Frankfurt am Main, Germany,
ASN15169
(GOOGLE, US),
- Reverse DNS
- Software
-
sffe /
- Resource Hash
- c8545021ffd4b062ea76df6ab092f50a7c0de35d61132769dc7b43afcdb0fc75
- Security Headers
-
Name |
Value |
X-Content-Type-Options |
nosniff |
X-Xss-Protection |
0 |
|
GET
DATA
|
200
OK
|
truncated
/
|
890 B
890 B
|
|
Image
image/svg+xml |
|
|
|
GET
H3
|
200
|
26032024151233000000693539.jpg
files.bewezy.com/thumbs/1200/385/97dcf0f6b06030bfb21d7ce228be81ad/
|
81 KB
82 KB
|
155ms
153ms
|
Image
image/webp |
172.67.188.252
CLOUDFLARENET
|
|
|
GET
DATA
|
200
OK
|
truncated
/
|
2 KB
2 KB
|
|
Font
application/font-woff |
|
|
|
GET
H3
|
200
|
26032024153313000000245580.jpg
files.bewezy.com/thumbs/1200/385/97dcf0f6b06030bfb21d7ce228be81ad/
|
36 KB
37 KB
|
99ms
99ms
|
Image
image/webp |
172.67.188.252
CLOUDFLARENET
|
|
|
GET
H/1.1
|
200
OK
|
close-pop-up.png
www.offznew.dev.web.cayman.com.br/imagens/
|
417 B
730 B
|
213ms
123ms
|
Image
image/png |
3.95.112.126
AMAZON-AES
|
|
|
GET
H3
|
200
|
1902202414205000000087872.svg
files.bewezy.com/97dcf0f6b06030bfb21d7ce228be81ad/
|
2 KB
2 KB
|
147ms
146ms
|
Image
image/svg+xml |
172.67.188.252
CLOUDFLARENET
|
|
|
GET
DATA
|
200
OK
|
truncated
Show response
/
|
705 KB
0
|
|
Script
text/js |
|
|
|
POST
H2
|
204
|
collect
region1.google-analytics.com/g/
|
0
268 B
|
58ms
17ms
|
Ping
text/plain |
2001:4860:4802:34::36
GOOGLE
|
|
General
- Full URL
- https://region1.google-analytics.com/g/collect?v=2&tid=G-XTT4N32LPZ>m=45je4580v9184095496za200&_p=1715338392122&gcd=13l3l3l2l1&npa=1&dma_cps=sypham&dma=1&cid=1921703776.1715338393&ul=de-de&sr=1600x1200&uaa=x86&uab=64&uafvl=Chromium%3B124.0.6367.118%7CGoogle%2520Chrome%3B124.0.6367.118%7CNot-A.Brand%3B99.0.0.0&uamb=0&uam=&uap=Win32&uapv=10.0.0&uaw=0&frm=0&pscdl=noapi&_s=1&sid=1715338392&sct=1&seg=0&dl=https%3A%2F%2Fwww.offznew.dev.web.cayman.com.br%2F&dt=Melhores%20ofertas%20-%20Offz&en=page_view&_fv=1&_nsi=1&_ss=1&_ee=1&tfd=1912
- Requested by
- Host: www.googletagmanager.com
URL: https://www.googletagmanager.com/gtag/js?id=G-XTT4N32LPZ
- Protocol
- H2
- Security
- TLS 1.3,
, AES_128_GCM
- Server
-
2001:4860:4802:34::36
, United States,
ASN15169
(GOOGLE, US),
- Reverse DNS
- Software
-
Golfe2 /
- Resource Hash
- e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
GET
H3
|
200
|
09012024152954000000194137.jpg
files.bewezy.com/thumbs/200/200/97dcf0f6b06030bfb21d7ce228be81ad/
|
6 KB
7 KB
|
480ms
479ms
|
Image
image/webp |
172.67.188.252
CLOUDFLARENET
|
|
|
GET
H3
|
200
|
15032024164547000000432678.jpg
files.bewezy.com/thumbs/200/200/97dcf0f6b06030bfb21d7ce228be81ad/
|
6 KB
7 KB
|
47ms
46ms
|
Image
image/webp |
172.67.188.252
CLOUDFLARENET
|
|
|
GET
H3
|
200
|
09012024154641000000166435.jpg
files.bewezy.com/thumbs/200/200/97dcf0f6b06030bfb21d7ce228be81ad/
|
4 KB
5 KB
|
38ms
38ms
|
Image
image/webp |
172.67.188.252
CLOUDFLARENET
|
|
|
GET
H3
|
200
|
08012024115307000000378493.ico
files.bewezy.com/97dcf0f6b06030bfb21d7ce228be81ad/
|
91 KB
3 KB
|
35ms
34ms
|
Other
image/vnd.microsoft.icon |
172.67.188.252
CLOUDFLARENET
|
|
|