10 sec in total
1 sec
8.9 sec
111 ms
Click here to check amazing Items Farmvilledirt content for United States. Otherwise, check out these important facts you probably never knew about items.farmvilledirt.com
Visit items.farmvilledirt.comWe analyzed Items.farmvilledirt.com page load time and found that the first response time was 1 sec and then it took 9 sec to load all DOM resources and completely render a web page. This is a poor result, as 85% of websites can load faster.
items.farmvilledirt.com performance score
1030 ms
10 ms
732 ms
744 ms
2764 ms
Our browser made a total of 159 requests to load all elements on the main page. We found that 24% of them (38 requests) were addressed to the original Items.farmvilledirt.com, 12% (19 requests) were made to Um.simpli.fi and 7% (11 requests) were made to Tags.bluekai.com. The less responsive or slowest element that took the longest time to load (5.2 sec) relates to the external source Googleads.g.doubleclick.net.
Page size can be reduced by 1.0 MB (67%)
1.5 MB
508.0 kB
In fact, the total size of Items.farmvilledirt.com main page is 1.5 MB. This result falls beyond the top 1M of websites and identifies a large and not optimized web page that may take ages to load. 60% of websites need less resources to load. Javascripts take 643.5 kB which makes up the majority of the site volume.
Potential reduce by 178.6 kB
HTML content can be minified and compressed by a website’s server. The most efficient way is to compress content using GZIP which reduces data amount travelling through the network between server and browser. HTML code on this page is well minified. It is highly recommended that content of this web page should be compressed using GZIP, as it can save up to 178.6 kB or 87% of the original size.
Potential reduce by 42.6 kB
Image size optimization can help to speed up a website loading time. The chart above shows the difference between the size before and after optimization. Obviously, Items Farmvilledirt needs image optimization as it can save up to 42.6 kB or 16% of the original volume. The most popular and efficient tools for JPEG and PNG image optimization are Jpegoptim and PNG Crush.
Potential reduce by 440.6 kB
It’s better to minify JavaScript in order to improve website performance. The diagram shows the current total size of all JavaScript files against the prospective JavaScript size after its minification and compression. It is highly recommended that all JavaScript files should be compressed and minified as it can save up to 440.6 kB or 68% of the original size.
Potential reduce by 348.6 kB
CSS files minification is very important to reduce a web page rendering time. The faster CSS files can load, the earlier a page can be rendered. Items.farmvilledirt.com needs all CSS files to be minified and compressed as it can save up to 348.6 kB or 86% of the original size.
Number of requests can be reduced by 83 (68%)
122
39
The browser has sent 122 CSS, Javascripts, AJAX and image requests in order to completely render the main page of Items Farmvilledirt. We recommend that multiple CSS and JavaScript files should be merged into one by each type, as it can help reduce assets requests from 31 to 1 for JavaScripts and from 12 to 1 for CSS and as a result speed up the page load time.
items.farmvilledirt.com
1030 ms
buttons.js
10 ms
main.css
732 ms
footer.css
744 ms
metro-bootstrap.css
2764 ms
iconFont.css
1008 ms
font-awesome.min.css
7 ms
7AU8k4-SPa.js
258 ms
jquery-1.11.2.min.js
1795 ms
jquery-migrate-1.2.1.min.js
1229 ms
dfscript.js
1483 ms
metro.min.js
2470 ms
footer.js
1494 ms
footer_plugins.js
1738 ms
jquery.widget.min.js
2218 ms
jquery.mousewheel.min.js
1983 ms
adsbygoogle.js
16 ms
atrk.js
45 ms
atrk.gif
37 ms
test.png
312 ms
contactable.css
1984 ms
reveal.css
2028 ms
jquery.contactable.min.js
2229 ms
jquery.reveal.js
2483 ms
css
23 ms
css
35 ms
css
45 ms
ca-pub-2929872515162176.js
135 ms
zrt_lookup.html
5029 ms
show_ads_impl.js
91 ms
bg-pattern.png
741 ms
animal.png
965 ms
tree.png
753 ms
decoration.png
1011 ms
building.png
1025 ms
consumable.png
818 ms
seed.png
1725 ms
bloom.png
1735 ms
bushel.png
1822 ms
craft.png
1941 ms
vehicle.png
1743 ms
currency.png
2022 ms
fuel.png
2460 ms
egg.png
2714 ms
gopher.png
2802 ms
classic.js
109 ms
20150510010333-2637.js
106 ms
getAllAppDefault.esi
81 ms
csv.png
2328 ms
modal-gloss.png
2352 ms
home.png
2432 ms
contact.png
2827 ms
ajax-loader.gif
3121 ms
DXI1ORHCpsQm3Vp6mXoaTZ1r3JsPcQLi8jytr04NNhU.woff
94 ms
k3k702ZOKiLJc3WVjuplzJ1r3JsPcQLi8jytr04NNhU.woff
98 ms
iconFont.woff
4103 ms
ads
5183 ms
osd.js
34 ms
34 ms
css;charset=utf-8;base64,LyohCiAqIEhvdmVyLmNzcyAoaHR0cDovL2lhbmx1bm4uZ2l0aHViLmlvL0hvdmVyLykKICogVmVyc2lvbjogMi4wLjAKICogQXV0aG9yOiBJYW4gTHVubiBASWFuTHVubgogKiBBdXRob3IgVVJMOiBodHRwOi8vaWFubHVubi5jby51ay8KICogR2l0aHViOiBodHRwczovL2dpdGh1Yi5jb20vSWFuTHVubi9Ib3ZlcgoKICogTWFkZSBhdmFpbGFibGUgdW5kZXIgYSBNSVQgTGljZW5zZToKICogaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGljZW5zZS5waHAKCiAqIEhvdmVyLmNzcyBDb3B5cmlnaHQgSWFuIEx1bm4gMjAxNC4gR2VuZXJhdGVkIHdpdGggU2Fzcy4KICovCi8qIDJEIFRSQU5TSVRJT05TICovCi8qIEdyb3cgKi8KLmh2ci1ncm93IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKfQouaHZyLWdyb3c6aG92ZXIsIC5odnItZ3Jvdzpmb2N1cywgLmh2ci1ncm93OmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwp9CgovKiBTaHJpbmsgKi8KLmh2ci1zaHJpbmsgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItc2hyaW5rOmhvdmVyLCAuaHZyLXNocmluazpmb2N1cywgLmh2ci1zaHJpbms6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTsKICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7Cn0KCi8qIFB1bHNlICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItcHVsc2UgewogIDI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLXB1bHNlIHsKICAyNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7CiAgfQp9CgouaHZyLXB1bHNlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9Ci5odnItcHVsc2U6aG92ZXIsIC5odnItcHVsc2U6Zm9jdXMsIC5odnItcHVsc2U6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItcHVsc2U7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1wdWxzZTsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKfQoKLyogUHVsc2UgR3JvdyAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXB1bHNlLWdyb3cgewogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwogIH0KfQoKQGtleWZyYW1lcyBodnItcHVsc2UtZ3JvdyB7CiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgfQp9CgouaHZyLXB1bHNlLWdyb3cgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7Cn0KLmh2ci1wdWxzZS1ncm93OmhvdmVyLCAuaHZyLXB1bHNlLWdyb3c6Zm9jdXMsIC5odnItcHVsc2UtZ3JvdzphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1wdWxzZS1ncm93OwogIGFuaW1hdGlvbi1uYW1lOiBodnItcHVsc2UtZ3JvdzsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlOwp9CgovKiBQdWxzZSBTaHJpbmsgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1wdWxzZS1zaHJpbmsgewogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwogIH0KfQoKQGtleWZyYW1lcyBodnItcHVsc2Utc2hyaW5rIHsKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTsKICB9Cn0KCi5odnItcHVsc2Utc2hyaW5rIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9Ci5odnItcHVsc2Utc2hyaW5rOmhvdmVyLCAuaHZyLXB1bHNlLXNocmluazpmb2N1cywgLmh2ci1wdWxzZS1zaHJpbms6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItcHVsc2Utc2hyaW5rOwogIGFuaW1hdGlvbi1uYW1lOiBodnItcHVsc2Utc2hyaW5rOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZTsKICBhbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7Cn0KCi8qIFB1c2ggKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1wdXNoIHsKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1wdXNoIHsKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgfQp9CgouaHZyLXB1c2ggewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7Cn0KLmh2ci1wdXNoOmhvdmVyLCAuaHZyLXB1c2g6Zm9jdXMsIC5odnItcHVzaDphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1wdXNoOwogIGFuaW1hdGlvbi1uYW1lOiBodnItcHVzaDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBQb3AgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1wb3AgewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLXBvcCB7CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjIpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOwogIH0KfQoKLmh2ci1wb3AgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7Cn0KLmh2ci1wb3A6aG92ZXIsIC5odnItcG9wOmZvY3VzLCAuaHZyLXBvcDphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1wb3A7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1wb3A7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogQm91bmNlIEluICovCi5odnItYm91bmNlLWluIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwp9Ci5odnItYm91bmNlLWluOmhvdmVyLCAuaHZyLWJvdW5jZS1pbjpmb2N1cywgLmh2ci1ib3VuY2UtaW46YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKTsKICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDcsIDIuMDIsIDAuMzEsIC0wLjM2KTsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDcsIDIuMDIsIDAuMzEsIC0wLjM2KTsKfQoKLyogQm91bmNlIE91dCAqLwouaHZyLWJvdW5jZS1vdXQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7Cn0KLmh2ci1ib3VuY2Utb3V0OmhvdmVyLCAuaHZyLWJvdW5jZS1vdXQ6Zm9jdXMsIC5odnItYm91bmNlLW91dDphY3RpdmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwogIHRyYW5zZm9ybTogc2NhbGUoMC44KTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOwp9CgovKiBSb3RhdGUgKi8KLmh2ci1yb3RhdGUgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItcm90YXRlOmhvdmVyLCAuaHZyLXJvdGF0ZTpmb2N1cywgLmh2ci1yb3RhdGU6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDRkZWcpOwogIHRyYW5zZm9ybTogcm90YXRlKDRkZWcpOwp9CgovKiBHcm93IFJvdGF0ZSAqLwouaHZyLWdyb3ctcm90YXRlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKfQouaHZyLWdyb3ctcm90YXRlOmhvdmVyLCAuaHZyLWdyb3ctcm90YXRlOmZvY3VzLCAuaHZyLWdyb3ctcm90YXRlOmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDRkZWcpOwogIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoNGRlZyk7Cn0KCi8qIEZsb2F0ICovCi5odnItZmxvYXQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWZsb2F0OmhvdmVyLCAuaHZyLWZsb2F0OmZvY3VzLCAuaHZyLWZsb2F0OmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwp9CgovKiBTaW5rICovCi5odnItc2luayB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItc2luazpob3ZlciwgLmh2ci1zaW5rOmZvY3VzLCAuaHZyLXNpbms6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwp9CgovKiBCb2IgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1ib2IgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLWJvYiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogIH0KfQoKQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1ib2ItZmxvYXQgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1ib2ItZmxvYXQgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgfQp9CgouaHZyLWJvYiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKfQouaHZyLWJvYjpob3ZlciwgLmh2ci1ib2I6Zm9jdXMsIC5odnItYm9iOmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWJvYi1mbG9hdCwgaHZyLWJvYjsKICBhbmltYXRpb24tbmFtZTogaHZyLWJvYi1mbG9hdCwgaHZyLWJvYjsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzOwogIGFuaW1hdGlvbi1kZWxheTogMHMsIC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7Cn0KCi8qIEhhbmcgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1oYW5nIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1oYW5nIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQp9CgpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWhhbmctc2luayB7CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1oYW5nLXNpbmsgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogIH0KfQoKLmh2ci1oYW5nIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9Ci5odnItaGFuZzpob3ZlciwgLmh2ci1oYW5nOmZvY3VzLCAuaHZyLWhhbmc6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaGFuZy1zaW5rLCBodnItaGFuZzsKICBhbmltYXRpb24tbmFtZTogaHZyLWhhbmctc2luaywgaHZyLWhhbmc7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC4zcywgMS41czsKICBhbmltYXRpb24tZHVyYXRpb246IC4zcywgMS41czsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMHMsIC4zczsKICBhbmltYXRpb24tZGVsYXk6IDBzLCAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQsIGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSwgaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSwgaW5maW5pdGU7CiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbCwgYWx0ZXJuYXRlOwogIGFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbCwgYWx0ZXJuYXRlOwp9CgovKiBTa2V3ICovCi5odnItc2tldyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07Cn0KLmh2ci1za2V3OmhvdmVyLCAuaHZyLXNrZXc6Zm9jdXMsIC5odnItc2tldzphY3RpdmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMGRlZyk7CiAgdHJhbnNmb3JtOiBza2V3KC0xMGRlZyk7Cn0KCi8qIFNrZXcgRm9yd2FyZCAqLwouaHZyLXNrZXctZm9yd2FyZCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlOwp9Ci5odnItc2tldy1mb3J3YXJkOmhvdmVyLCAuaHZyLXNrZXctZm9yd2FyZDpmb2N1cywgLmh2ci1za2V3LWZvcndhcmQ6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTBkZWcpOwogIHRyYW5zZm9ybTogc2tldygtMTBkZWcpOwp9CgovKiBTa2V3IEJhY2t3YXJkICovCi5odnItc2tldy1iYWNrd2FyZCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlOwp9Ci5odnItc2tldy1iYWNrd2FyZDpob3ZlciwgLmh2ci1za2V3LWJhY2t3YXJkOmZvY3VzLCAuaHZyLXNrZXctYmFja3dhcmQ6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKfQoKLyogV29iYmxlIFZlcnRpY2FsICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItd29iYmxlLXZlcnRpY2FsIHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogIH0KCiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgfQoKICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogIH0KCiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgfQoKICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLXdvYmJsZS12ZXJ0aWNhbCB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogIH0KCiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogIH0KCiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQp9CgouaHZyLXdvYmJsZS12ZXJ0aWNhbCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKfQouaHZyLXdvYmJsZS12ZXJ0aWNhbDpob3ZlciwgLmh2ci13b2JibGUtdmVydGljYWw6Zm9jdXMsIC5odnItd29iYmxlLXZlcnRpY2FsOmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS12ZXJ0aWNhbDsKICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS12ZXJ0aWNhbDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBXb2JibGUgSG9yaXpvbnRhbCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS1ob3Jpem9udGFsIHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpOwogIH0KCiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCk7CiAgfQoKICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOwogIH0KCiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgfQoKICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLXdvYmJsZS1ob3Jpem9udGFsIHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpOwogIH0KCiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCk7CiAgfQoKICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOwogIH0KCiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgfQoKICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9Cn0KCi5odnItd29iYmxlLWhvcml6b250YWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7Cn0KLmh2ci13b2JibGUtaG9yaXpvbnRhbDpob3ZlciwgLmh2ci13b2JibGUtaG9yaXpvbnRhbDpmb2N1cywgLmh2ci13b2JibGUtaG9yaXpvbnRhbDphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtaG9yaXpvbnRhbDsKICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS1ob3Jpem9udGFsOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICBhbmltYXRpb24tZHVyYXRpb246IDFzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7Cn0KCi8qIFdvYmJsZSBUbyBCb3R0b20gUmlnaHQgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci13b2JibGUtdG8tYm90dG9tLXJpZ2h0IHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIDhweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIDhweCk7CiAgfQoKICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgLTZweCk7CiAgfQoKICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIDRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIDRweCk7CiAgfQoKICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgLTJweCk7CiAgfQoKICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDFweCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLXdvYmJsZS10by1ib3R0b20tcmlnaHQgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgOHB4KTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCAtNnB4KTsKICB9CgogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgNHB4KTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAtMnB4KTsKICB9CgogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgMXB4KTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOwogIH0KfQoKLmh2ci13b2JibGUtdG8tYm90dG9tLXJpZ2h0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9Ci5odnItd29iYmxlLXRvLWJvdHRvbS1yaWdodDpob3ZlciwgLmh2ci13b2JibGUtdG8tYm90dG9tLXJpZ2h0OmZvY3VzLCAuaHZyLXdvYmJsZS10by1ib3R0b20tcmlnaHQ6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXRvLWJvdHRvbS1yaWdodDsKICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS10by1ib3R0b20tcmlnaHQ7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogV29iYmxlIFRvIFRvcCBSaWdodCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS10by10b3AtcmlnaHQgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgLThweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIC04cHgpOwogIH0KCiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCA2cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgNnB4KTsKICB9CgogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgLTRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIC00cHgpOwogIH0KCiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgMnB4KTsKICB9CgogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgLTFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIC0xcHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci13b2JibGUtdG8tdG9wLXJpZ2h0IHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIC04cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCAtOHB4KTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIDZweCk7CiAgfQoKICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIC00cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAtNHB4KTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIDJweCk7CiAgfQoKICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIC0xcHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXB4LCAtMXB4KTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOwogIH0KfQoKLmh2ci13b2JibGUtdG8tdG9wLXJpZ2h0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9Ci5odnItd29iYmxlLXRvLXRvcC1yaWdodDpob3ZlciwgLmh2ci13b2JibGUtdG8tdG9wLXJpZ2h0OmZvY3VzLCAuaHZyLXdvYmJsZS10by10b3AtcmlnaHQ6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXRvLXRvcC1yaWdodDsKICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS10by10b3AtcmlnaHQ7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogV29iYmxlIFRvcCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS10b3AgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgfQoKICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMTBkZWcpOwogIH0KCiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC02ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgfQoKICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICB9CgogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTJkZWcpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwKTsKICAgIHRyYW5zZm9ybTogc2tldygwKTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLXdvYmJsZS10b3AgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgfQoKICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMTBkZWcpOwogIH0KCiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC02ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgfQoKICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICB9CgogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTJkZWcpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwKTsKICAgIHRyYW5zZm9ybTogc2tldygwKTsKICB9Cn0KCi5odnItd29iYmxlLXRvcCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTsKICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7Cn0KLmh2ci13b2JibGUtdG9wOmhvdmVyLCAuaHZyLXdvYmJsZS10b3A6Zm9jdXMsIC5odnItd29iYmxlLXRvcDphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtdG9wOwogIGFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXRvcDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBXb2JibGUgQm90dG9tICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItd29iYmxlLWJvdHRvbSB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTEyZGVnKTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgfQoKICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTZkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC02ZGVnKTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDRkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KDRkZWcpOwogIH0KCiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDApOwogICAgdHJhbnNmb3JtOiBza2V3KDApOwogIH0KfQoKQGtleWZyYW1lcyBodnItd29iYmxlLWJvdHRvbSB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTEyZGVnKTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgfQoKICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTZkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC02ZGVnKTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDRkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KDRkZWcpOwogIH0KCiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDApOwogICAgdHJhbnNmb3JtOiBza2V3KDApOwogIH0KfQoKLmh2ci13b2JibGUtYm90dG9tIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwOwogIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDsKfQouaHZyLXdvYmJsZS1ib3R0b206aG92ZXIsIC5odnItd29iYmxlLWJvdHRvbTpmb2N1cywgLmh2ci13b2JibGUtYm90dG9tOmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS1ib3R0b207CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtYm90dG9tOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICBhbmltYXRpb24tZHVyYXRpb246IDFzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7Cn0KCi8qIFdvYmJsZSBTa2V3ICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItd29iYmxlLXNrZXcgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgfQoKICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMTBkZWcpOwogIH0KCiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC02ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgfQoKICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICB9CgogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTJkZWcpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwKTsKICAgIHRyYW5zZm9ybTogc2tldygwKTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLXdvYmJsZS1za2V3IHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTEyZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogIH0KCiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMTBkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICB9CgogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOwogIH0KCiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoNGRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoNGRlZyk7CiAgfQoKICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMCk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7CiAgfQp9CgouaHZyLXdvYmJsZS1za2V3IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9Ci5odnItd29iYmxlLXNrZXc6aG92ZXIsIC5odnItd29iYmxlLXNrZXc6Zm9jdXMsIC5odnItd29iYmxlLXNrZXc6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXNrZXc7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtc2tldzsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBCdXp6ICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItYnV6eiB7CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1idXp6IHsKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9Cn0KCi5odnItYnV6eiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKfQouaHZyLWJ1eno6aG92ZXIsIC5odnItYnV6ejpmb2N1cywgLmh2ci1idXp6OmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWJ1eno7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1idXp6OwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjE1czsKICBhbmltYXRpb24tZHVyYXRpb246IDAuMTVzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOwp9CgovKiBCdXp6IE91dCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWJ1enotb3V0IHsKICAxMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQoKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KCiAgMzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9CgogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICB9CgogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgfQoKICA3MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApOwogIH0KfQoKQGtleWZyYW1lcyBodnItYnV6ei1vdXQgewogIDEwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICB9CgogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgfQoKICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOwogIH0KCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICB9CgogIDcwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICB9CgogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgfQoKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7CiAgfQp9CgouaHZyLWJ1enotb3V0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9Ci5odnItYnV6ei1vdXQ6aG92ZXIsIC5odnItYnV6ei1vdXQ6Zm9jdXMsIC5odnItYnV6ei1vdXQ6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItYnV6ei1vdXQ7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1idXp6LW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7Cn0KCi8qIEJBQ0tHUk9VTkQgVFJBTlNJVElPTlMgKi8KLyogRmFkZSAqLwouaHZyLWZhZGUgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yOwp9Ci5odnItZmFkZTpob3ZlciwgLmh2ci1mYWRlOmZvY3VzLCAuaHZyLWZhZGU6YWN0aXZlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjA5OGQxOwogIGNvbG9yOiB3aGl0ZTsKfQoKLyogU3dlZXAgVG8gUmlnaHQgKi8KLmh2ci1zd2VlcC10by1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXN3ZWVwLXRvLXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OGQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTsKICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItc3dlZXAtdG8tcmlnaHQ6aG92ZXIsIC5odnItc3dlZXAtdG8tcmlnaHQ6Zm9jdXMsIC5odnItc3dlZXAtdG8tcmlnaHQ6YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1zd2VlcC10by1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItc3dlZXAtdG8tcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLXJpZ2h0OmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7Cn0KCi8qIFN3ZWVwIFRvIExlZnQgKi8KLmh2ci1zd2VlcC10by1sZWZ0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItc3dlZXAtdG8tbGVmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApOwogIHRyYW5zZm9ybTogc2NhbGVYKDApOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXN3ZWVwLXRvLWxlZnQ6aG92ZXIsIC5odnItc3dlZXAtdG8tbGVmdDpmb2N1cywgLmh2ci1zd2VlcC10by1sZWZ0OmFjdGl2ZSB7CiAgY29sb3I6IHdoaXRlOwp9Ci5odnItc3dlZXAtdG8tbGVmdDpob3ZlcjpiZWZvcmUsIC5odnItc3dlZXAtdG8tbGVmdDpmb2N1czpiZWZvcmUsIC5odnItc3dlZXAtdG8tbGVmdDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOwogIHRyYW5zZm9ybTogc2NhbGVYKDEpOwp9CgovKiBTd2VlcCBUbyBCb3R0b20gKi8KLmh2ci1zd2VlcC10by1ib3R0b20gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1zd2VlcC10by1ib3R0b206YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4ZDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWSgwKTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOwogIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1zd2VlcC10by1ib3R0b206aG92ZXIsIC5odnItc3dlZXAtdG8tYm90dG9tOmZvY3VzLCAuaHZyLXN3ZWVwLXRvLWJvdHRvbTphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXN3ZWVwLXRvLWJvdHRvbTpob3ZlcjpiZWZvcmUsIC5odnItc3dlZXAtdG8tYm90dG9tOmZvY3VzOmJlZm9yZSwgLmh2ci1zd2VlcC10by1ib3R0b206YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTsKICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsKfQoKLyogU3dlZXAgVG8gVG9wICovCi5odnItc3dlZXAtdG8tdG9wIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItc3dlZXAtdG8tdG9wOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OGQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItc3dlZXAtdG8tdG9wOmhvdmVyLCAuaHZyLXN3ZWVwLXRvLXRvcDpmb2N1cywgLmh2ci1zd2VlcC10by10b3A6YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1zd2VlcC10by10b3A6aG92ZXI6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLXRvcDpmb2N1czpiZWZvcmUsIC5odnItc3dlZXAtdG8tdG9wOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7Cn0KCi8qIEJvdW5jZSBUbyBSaWdodCAqLwouaHZyLWJvdW5jZS10by1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKfQouaHZyLWJvdW5jZS10by1yaWdodDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApOwogIHRyYW5zZm9ybTogc2NhbGVYKDApOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWJvdW5jZS10by1yaWdodDpob3ZlciwgLmh2ci1ib3VuY2UtdG8tcmlnaHQ6Zm9jdXMsIC5odnItYm91bmNlLXRvLXJpZ2h0OmFjdGl2ZSB7CiAgY29sb3I6IHdoaXRlOwp9Ci5odnItYm91bmNlLXRvLXJpZ2h0OmhvdmVyOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWJvdW5jZS10by1yaWdodDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOwogIHRyYW5zZm9ybTogc2NhbGVYKDEpOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOwp9CgovKiBCb3VuY2UgVG8gTGVmdCAqLwouaHZyLWJvdW5jZS10by1sZWZ0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwp9Ci5odnItYm91bmNlLXRvLWxlZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4ZDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgwKTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOwogIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1ib3VuY2UtdG8tbGVmdDpob3ZlciwgLmh2ci1ib3VuY2UtdG8tbGVmdDpmb2N1cywgLmh2ci1ib3VuY2UtdG8tbGVmdDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLWJvdW5jZS10by1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tbGVmdDpmb2N1czpiZWZvcmUsIC5odnItYm91bmNlLXRvLWxlZnQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsKfQoKLyogQm91bmNlIFRvIEJvdHRvbSAqLwouaHZyLWJvdW5jZS10by1ib3R0b20gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7Cn0KLmh2ci1ib3VuY2UtdG8tYm90dG9tOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OGQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItYm91bmNlLXRvLWJvdHRvbTpob3ZlciwgLmh2ci1ib3VuY2UtdG8tYm90dG9tOmZvY3VzLCAuaHZyLWJvdW5jZS10by1ib3R0b206YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1ib3VuY2UtdG8tYm90dG9tOmhvdmVyOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tYm90dG9tOmZvY3VzOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tYm90dG9tOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7Cn0KCi8qIEJvdW5jZSBUbyBUb3AgKi8KLmh2ci1ib3VuY2UtdG8tdG9wIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwp9Ci5odnItYm91bmNlLXRvLXRvcDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDApOwogIHRyYW5zZm9ybTogc2NhbGVZKDApOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWJvdW5jZS10by10b3A6aG92ZXIsIC5odnItYm91bmNlLXRvLXRvcDpmb2N1cywgLmh2ci1ib3VuY2UtdG8tdG9wOmFjdGl2ZSB7CiAgY29sb3I6IHdoaXRlOwp9Ci5odnItYm91bmNlLXRvLXRvcDpob3ZlcjpiZWZvcmUsIC5odnItYm91bmNlLXRvLXRvcDpmb2N1czpiZWZvcmUsIC5odnItYm91bmNlLXRvLXRvcDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpOwogIHRyYW5zZm9ybTogc2NhbGVZKDEpOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOwp9CgovKiBSYWRpYWwgT3V0ICovCi5odnItcmFkaWFsLW91dCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBiYWNrZ3JvdW5kOiAjZTFlMWUxOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1yYWRpYWwtb3V0OmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OGQxOwogIGJvcmRlci1yYWRpdXM6IDEwMCU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApOwogIHRyYW5zZm9ybTogc2NhbGUoMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXJhZGlhbC1vdXQ6aG92ZXIsIC5odnItcmFkaWFsLW91dDpmb2N1cywgLmh2ci1yYWRpYWwtb3V0OmFjdGl2ZSB7CiAgY29sb3I6IHdoaXRlOwp9Ci5odnItcmFkaWFsLW91dDpob3ZlcjpiZWZvcmUsIC5odnItcmFkaWFsLW91dDpmb2N1czpiZWZvcmUsIC5odnItcmFkaWFsLW91dDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMik7CiAgdHJhbnNmb3JtOiBzY2FsZSgyKTsKfQoKLyogUmFkaWFsIEluICovCi5odnItcmFkaWFsLWluIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwogIGJhY2tncm91bmQ6ICMyMDk4ZDE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXJhZGlhbC1pbjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogI2UxZTFlMTsKICBib3JkZXItcmFkaXVzOiAxMDAlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgyKTsKICB0cmFuc2Zvcm06IHNjYWxlKDIpOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1yYWRpYWwtaW46aG92ZXIsIC5odnItcmFkaWFsLWluOmZvY3VzLCAuaHZyLXJhZGlhbC1pbjphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXJhZGlhbC1pbjpob3ZlcjpiZWZvcmUsIC5odnItcmFkaWFsLWluOmZvY3VzOmJlZm9yZSwgLmh2ci1yYWRpYWwtaW46YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApOwogIHRyYW5zZm9ybTogc2NhbGUoMCk7Cn0KCi8qIFJlY3RhbmdsZSBJbiAqLwouaHZyLXJlY3RhbmdsZS1pbiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItcmVjdGFuZ2xlLWluOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjZTFlMWUxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1yZWN0YW5nbGUtaW46aG92ZXIsIC5odnItcmVjdGFuZ2xlLWluOmZvY3VzLCAuaHZyLXJlY3RhbmdsZS1pbjphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXJlY3RhbmdsZS1pbjpob3ZlcjpiZWZvcmUsIC5odnItcmVjdGFuZ2xlLWluOmZvY3VzOmJlZm9yZSwgLmh2ci1yZWN0YW5nbGUtaW46YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApOwogIHRyYW5zZm9ybTogc2NhbGUoMCk7Cn0KCi8qIFJlY3RhbmdsZSBPdXQgKi8KLmh2ci1yZWN0YW5nbGUtb3V0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBiYWNrZ3JvdW5kOiAjZTFlMWUxOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1yZWN0YW5nbGUtb3V0OmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OGQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTsKICB0cmFuc2Zvcm06IHNjYWxlKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1yZWN0YW5nbGUtb3V0OmhvdmVyLCAuaHZyLXJlY3RhbmdsZS1vdXQ6Zm9jdXMsIC5odnItcmVjdGFuZ2xlLW91dDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXJlY3RhbmdsZS1vdXQ6aG92ZXI6YmVmb3JlLCAuaHZyLXJlY3RhbmdsZS1vdXQ6Zm9jdXM6YmVmb3JlLCAuaHZyLXJlY3RhbmdsZS1vdXQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogIHRyYW5zZm9ybTogc2NhbGUoMSk7Cn0KCi8qIFNodXR0ZXIgSW4gSG9yaXpvbnRhbCAqLwouaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiAjZTFlMWUxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1zaHV0dGVyLWluLWhvcml6b250YWw6aG92ZXIsIC5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsOmZvY3VzLCAuaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbDpob3ZlcjpiZWZvcmUsIC5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsOmZvY3VzOmJlZm9yZSwgLmh2ci1zaHV0dGVyLWluLWhvcml6b250YWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgwKTsKfQoKLyogU2h1dHRlciBPdXQgSG9yaXpvbnRhbCAqLwouaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGJhY2tncm91bmQ6ICNlMWUxZTE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWw6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiAwOwogIGJvdHRvbTogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJhY2tncm91bmQ6ICMyMDk4ZDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgwKTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJTsKICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWw6aG92ZXIsIC5odnItc2h1dHRlci1vdXQtaG9yaXpvbnRhbDpmb2N1cywgLmh2ci1zaHV0dGVyLW91dC1ob3Jpem9udGFsOmFjdGl2ZSB7CiAgY29sb3I6IHdoaXRlOwp9Ci5odnItc2h1dHRlci1vdXQtaG9yaXpvbnRhbDpob3ZlcjpiZWZvcmUsIC5odnItc2h1dHRlci1vdXQtaG9yaXpvbnRhbDpmb2N1czpiZWZvcmUsIC5odnItc2h1dHRlci1vdXQtaG9yaXpvbnRhbDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOwogIHRyYW5zZm9ybTogc2NhbGVYKDEpOwp9CgovKiBTaHV0dGVyIEluIFZlcnRpY2FsICovCi5odnItc2h1dHRlci1pbi12ZXJ0aWNhbCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItc2h1dHRlci1pbi12ZXJ0aWNhbDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgYm90dG9tOiAwOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgYmFja2dyb3VuZDogI2UxZTFlMTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpOwogIHRyYW5zZm9ybTogc2NhbGVZKDEpOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlOwogIHRyYW5zZm9ybS1vcmlnaW46IDUwJTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItc2h1dHRlci1pbi12ZXJ0aWNhbDpob3ZlciwgLmh2ci1zaHV0dGVyLWluLXZlcnRpY2FsOmZvY3VzLCAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1zaHV0dGVyLWluLXZlcnRpY2FsOmhvdmVyOmJlZm9yZSwgLmh2ci1zaHV0dGVyLWluLXZlcnRpY2FsOmZvY3VzOmJlZm9yZSwgLmh2ci1zaHV0dGVyLWluLXZlcnRpY2FsOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7Cn0KCi8qIFNodXR0ZXIgT3V0IFZlcnRpY2FsICovCi5odnItc2h1dHRlci1vdXQtdmVydGljYWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGJhY2tncm91bmQ6ICNlMWUxZTE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXNodXR0ZXItb3V0LXZlcnRpY2FsOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OGQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpob3ZlciwgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpmb2N1cywgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXNodXR0ZXItb3V0LXZlcnRpY2FsOmhvdmVyOmJlZm9yZSwgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpmb2N1czpiZWZvcmUsIC5odnItc2h1dHRlci1vdXQtdmVydGljYWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTsKICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsKfQoKLyogQk9SREVSIFRSQU5TSVRJT05TICovCi8qIEJvcmRlciBGYWRlICovCi5odnItYm9yZGVyLWZhZGUgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7CiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICNlMWUxZTEsIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAvKiBIYWNrIHRvIGltcHJvdmUgYWxpYXNpbmcgb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzICovCn0KLmh2ci1ib3JkZXItZmFkZTpob3ZlciwgLmh2ci1ib3JkZXItZmFkZTpmb2N1cywgLmh2ci1ib3JkZXItZmFkZTphY3RpdmUgewogIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjMjA5OGQxLCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLyogSGFjayB0byBpbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlcyAqLwp9CgovKiBIb2xsb3cgKi8KLmh2ci1ob2xsb3cgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQ7CiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICNlMWUxZTEsIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAvKiBIYWNrIHRvIGltcHJvdmUgYWxpYXNpbmcgb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzICovCn0KLmh2ci1ob2xsb3c6aG92ZXIsIC5odnItaG9sbG93OmZvY3VzLCAuaHZyLWhvbGxvdzphY3RpdmUgewogIGJhY2tncm91bmQ6IG5vbmU7Cn0KCi8qIFRyaW0gKi8KLmh2ci10cmltIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLXRyaW06YmVmb3JlIHsKICBjb250ZW50OiAnJzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgYm9yZGVyOiB3aGl0ZSBzb2xpZCA0cHg7CiAgdG9wOiA0cHg7CiAgbGVmdDogNHB4OwogIHJpZ2h0OiA0cHg7CiAgYm90dG9tOiA0cHg7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsKfQouaHZyLXRyaW06aG92ZXI6YmVmb3JlLCAuaHZyLXRyaW06Zm9jdXM6YmVmb3JlLCAuaHZyLXRyaW06YWN0aXZlOmJlZm9yZSB7CiAgb3BhY2l0eTogMTsKfQoKLyogUmlwcGxlIE91dCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXJpcHBsZS1vdXQgewogIDEwMCUgewogICAgdG9wOiAtMTJweDsKICAgIHJpZ2h0OiAtMTJweDsKICAgIGJvdHRvbTogLTEycHg7CiAgICBsZWZ0OiAtMTJweDsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1yaXBwbGUtb3V0IHsKICAxMDAlIHsKICAgIHRvcDogLTEycHg7CiAgICByaWdodDogLTEycHg7CiAgICBib3R0b206IC0xMnB4OwogICAgbGVmdDogLTEycHg7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKLmh2ci1yaXBwbGUtb3V0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLXJpcHBsZS1vdXQ6YmVmb3JlIHsKICBjb250ZW50OiAnJzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgYm9yZGVyOiAjZTFlMWUxIHNvbGlkIDZweDsKICB0b3A6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGxlZnQ6IDA7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7Cn0KLmh2ci1yaXBwbGUtb3V0OmhvdmVyOmJlZm9yZSwgLmh2ci1yaXBwbGUtb3V0OmZvY3VzOmJlZm9yZSwgLmh2ci1yaXBwbGUtb3V0OmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1yaXBwbGUtb3V0OwogIGFuaW1hdGlvbi1uYW1lOiBodnItcmlwcGxlLW91dDsKfQoKLyogUmlwcGxlIEluICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItcmlwcGxlLWluIHsKICAxMDAlIHsKICAgIHRvcDogMDsKICAgIHJpZ2h0OiAwOwogICAgYm90dG9tOiAwOwogICAgbGVmdDogMDsKICAgIG9wYWNpdHk6IDE7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1yaXBwbGUtaW4gewogIDEwMCUgewogICAgdG9wOiAwOwogICAgcmlnaHQ6IDA7CiAgICBib3R0b206IDA7CiAgICBsZWZ0OiAwOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCi5odnItcmlwcGxlLWluIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLXJpcHBsZS1pbjpiZWZvcmUgewogIGNvbnRlbnQ6ICcnOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBib3JkZXI6ICNlMWUxZTEgc29saWQgNHB4OwogIHRvcDogLTEycHg7CiAgcmlnaHQ6IC0xMnB4OwogIGJvdHRvbTogLTEycHg7CiAgbGVmdDogLTEycHg7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKfQouaHZyLXJpcHBsZS1pbjpob3ZlcjpiZWZvcmUsIC5odnItcmlwcGxlLWluOmZvY3VzOmJlZm9yZSwgLmh2ci1yaXBwbGUtaW46YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXJpcHBsZS1pbjsKICBhbmltYXRpb24tbmFtZTogaHZyLXJpcHBsZS1pbjsKfQoKLyogT3V0bGluZSBPdXQgKi8KLmh2ci1vdXRsaW5lLW91dCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmh2ci1vdXRsaW5lLW91dDpiZWZvcmUgewogIGNvbnRlbnQ6ICcnOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBib3JkZXI6ICNlMWUxZTEgc29saWQgNHB4OwogIHRvcDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQ7Cn0KLmh2ci1vdXRsaW5lLW91dDpob3ZlcjpiZWZvcmUsIC5odnItb3V0bGluZS1vdXQ6Zm9jdXM6YmVmb3JlLCAuaHZyLW91dGxpbmUtb3V0OmFjdGl2ZTpiZWZvcmUgewogIHRvcDogLThweDsKICByaWdodDogLThweDsKICBib3R0b206IC04cHg7CiAgbGVmdDogLThweDsKfQoKLyogT3V0bGluZSBJbiAqLwouaHZyLW91dGxpbmUtaW4gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItb3V0bGluZS1pbjpiZWZvcmUgewogIHBvaW50ZXItZXZlbnRzOiBub25lOwogIGNvbnRlbnQ6ICcnOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBib3JkZXI6ICNlMWUxZTEgc29saWQgNHB4OwogIHRvcDogLTE2cHg7CiAgcmlnaHQ6IC0xNnB4OwogIGJvdHRvbTogLTE2cHg7CiAgbGVmdDogLTE2cHg7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQ7Cn0KLmh2ci1vdXRsaW5lLWluOmhvdmVyOmJlZm9yZSwgLmh2ci1vdXRsaW5lLWluOmZvY3VzOmJlZm9yZSwgLmh2ci1vdXRsaW5lLWluOmFjdGl2ZTpiZWZvcmUgewogIHRvcDogLThweDsKICByaWdodDogLThweDsKICBib3R0b206IC04cHg7CiAgbGVmdDogLThweDsKICBvcGFjaXR5OiAxOwp9CgovKiBSb3VuZCBDb3JuZXJzICovCi5odnItcm91bmQtY29ybmVycyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlci1yYWRpdXM7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyLXJhZGl1czsKfQouaHZyLXJvdW5kLWNvcm5lcnM6aG92ZXIsIC5odnItcm91bmQtY29ybmVyczpmb2N1cywgLmh2ci1yb3VuZC1jb3JuZXJzOmFjdGl2ZSB7CiAgYm9yZGVyLXJhZGl1czogMWVtOwp9CgovKiBVbmRlcmxpbmUgRnJvbSBMZWZ0ICovCi5odnItdW5kZXJsaW5lLWZyb20tbGVmdCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQouaHZyLXVuZGVybGluZS1mcm9tLWxlZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgbGVmdDogMDsKICByaWdodDogMTAwJTsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICBoZWlnaHQ6IDRweDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHJpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHJpZ2h0OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXVuZGVybGluZS1mcm9tLWxlZnQ6aG92ZXI6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1mcm9tLWxlZnQ6Zm9jdXM6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1mcm9tLWxlZnQ6YWN0aXZlOmJlZm9yZSB7CiAgcmlnaHQ6IDA7Cn0KCi8qIFVuZGVybGluZSBGcm9tIENlbnRlciAqLwouaHZyLXVuZGVybGluZS1mcm9tLWNlbnRlciB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQouaHZyLXVuZGVybGluZS1mcm9tLWNlbnRlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiA1MCU7CiAgcmlnaHQ6IDUwJTsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICBoZWlnaHQ6IDRweDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIHJpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIHJpZ2h0OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXVuZGVybGluZS1mcm9tLWNlbnRlcjpob3ZlcjpiZWZvcmUsIC5odnItdW5kZXJsaW5lLWZyb20tY2VudGVyOmZvY3VzOmJlZm9yZSwgLmh2ci11bmRlcmxpbmUtZnJvbS1jZW50ZXI6YWN0aXZlOmJlZm9yZSB7CiAgbGVmdDogMDsKICByaWdodDogMDsKfQoKLyogVW5kZXJsaW5lIEZyb20gUmlnaHQgKi8KLmh2ci11bmRlcmxpbmUtZnJvbS1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQouaHZyLXVuZGVybGluZS1mcm9tLXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIGxlZnQ6IDEwMCU7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4ZDE7CiAgaGVpZ2h0OiA0cHg7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItdW5kZXJsaW5lLWZyb20tcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1mcm9tLXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci11bmRlcmxpbmUtZnJvbS1yaWdodDphY3RpdmU6YmVmb3JlIHsKICBsZWZ0OiAwOwp9CgovKiBPdmVybGluZSBGcm9tIExlZnQgKi8KLmh2ci1vdmVybGluZS1mcm9tLWxlZnQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmh2ci1vdmVybGluZS1mcm9tLWxlZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgbGVmdDogMDsKICByaWdodDogMTAwJTsKICB0b3A6IDA7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICBoZWlnaHQ6IDRweDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHJpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHJpZ2h0OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLW92ZXJsaW5lLWZyb20tbGVmdDpob3ZlcjpiZWZvcmUsIC5odnItb3ZlcmxpbmUtZnJvbS1sZWZ0OmZvY3VzOmJlZm9yZSwgLmh2ci1vdmVybGluZS1mcm9tLWxlZnQ6YWN0aXZlOmJlZm9yZSB7CiAgcmlnaHQ6IDA7Cn0KCi8qIE92ZXJsaW5lIEZyb20gQ2VudGVyICovCi5odnItb3ZlcmxpbmUtZnJvbS1jZW50ZXIgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmh2ci1vdmVybGluZS1mcm9tLWNlbnRlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiA1MCU7CiAgcmlnaHQ6IDUwJTsKICB0b3A6IDA7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICBoZWlnaHQ6IDRweDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIHJpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIHJpZ2h0OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLW92ZXJsaW5lLWZyb20tY2VudGVyOmhvdmVyOmJlZm9yZSwgLmh2ci1vdmVybGluZS1mcm9tLWNlbnRlcjpmb2N1czpiZWZvcmUsIC5odnItb3ZlcmxpbmUtZnJvbS1jZW50ZXI6YWN0aXZlOmJlZm9yZSB7CiAgbGVmdDogMDsKICByaWdodDogMDsKfQoKLyogT3ZlcmxpbmUgRnJvbSBSaWdodCAqLwouaHZyLW92ZXJsaW5lLWZyb20tcmlnaHQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmh2ci1vdmVybGluZS1mcm9tLXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIGxlZnQ6IDEwMCU7CiAgcmlnaHQ6IDA7CiAgdG9wOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4ZDE7CiAgaGVpZ2h0OiA0cHg7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItb3ZlcmxpbmUtZnJvbS1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItb3ZlcmxpbmUtZnJvbS1yaWdodDpmb2N1czpiZWZvcmUsIC5odnItb3ZlcmxpbmUtZnJvbS1yaWdodDphY3RpdmU6YmVmb3JlIHsKICBsZWZ0OiAwOwp9CgovKiBSZXZlYWwgKi8KLmh2ci1yZXZlYWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmh2ci1yZXZlYWw6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgbGVmdDogMDsKICByaWdodDogMDsKICB0b3A6IDA7CiAgYm90dG9tOiAwOwogIGJvcmRlci1jb2xvcjogIzIwOThkMTsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIGJvcmRlci13aWR0aDogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlci13aWR0aDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3JkZXItd2lkdGg7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItcmV2ZWFsOmhvdmVyOmJlZm9yZSwgLmh2ci1yZXZlYWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXJldmVhbDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgYm9yZGVyLXdpZHRoOiA0cHg7Cn0KCi8qIFVuZGVybGluZSBSZXZlYWwgKi8KLmh2ci11bmRlcmxpbmUtcmV2ZWFsIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwp9Ci5odnItdW5kZXJsaW5lLXJldmVhbDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OGQxOwogIGhlaWdodDogNHB4OwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXVuZGVybGluZS1yZXZlYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1yZXZlYWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1yZXZlYWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwp9CgovKiBPdmVybGluZSBSZXZlYWwgKi8KLmh2ci1vdmVybGluZS1yZXZlYWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmh2ci1vdmVybGluZS1yZXZlYWw6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgbGVmdDogMDsKICByaWdodDogMDsKICB0b3A6IDA7CiAgYmFja2dyb3VuZDogIzIwOThkMTsKICBoZWlnaHQ6IDRweDsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLW92ZXJsaW5lLXJldmVhbDpob3ZlcjpiZWZvcmUsIC5odnItb3ZlcmxpbmUtcmV2ZWFsOmZvY3VzOmJlZm9yZSwgLmh2ci1vdmVybGluZS1yZXZlYWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwp9CgovKiBTSEFET1cvR0xPVyBUUkFOU0lUSU9OUyAqLwovKiBHbG93ICovCi5odnItZ2xvdyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKfQouaHZyLWdsb3c6aG92ZXIsIC5odnItZ2xvdzpmb2N1cywgLmh2ci1nbG93OmFjdGl2ZSB7CiAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7Cn0KCi8qIFNoYWRvdyAqLwouaHZyLXNoYWRvdyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKfQouaHZyLXNoYWRvdzpob3ZlciwgLmh2ci1zaGFkb3c6Zm9jdXMsIC5odnItc2hhZG93OmFjdGl2ZSB7CiAgYm94LXNoYWRvdzogMCAxMHB4IDEwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAwLjUpOwp9CgovKiBHcm93IFNoYWRvdyAqLwouaHZyLWdyb3ctc2hhZG93IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdywgdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3csIHRyYW5zZm9ybTsKfQouaHZyLWdyb3ctc2hhZG93OmhvdmVyLCAuaHZyLWdyb3ctc2hhZG93OmZvY3VzLCAuaHZyLWdyb3ctc2hhZG93OmFjdGl2ZSB7CiAgYm94LXNoYWRvdzogMCAxMHB4IDEwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAwLjUpOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwogIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsKfQoKLyogQm94IFNoYWRvdyBPdXRzZXQgKi8KLmh2ci1ib3gtc2hhZG93LW91dHNldCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKfQouaHZyLWJveC1zaGFkb3ctb3V0c2V0OmhvdmVyLCAuaHZyLWJveC1zaGFkb3ctb3V0c2V0OmZvY3VzLCAuaHZyLWJveC1zaGFkb3ctb3V0c2V0OmFjdGl2ZSB7CiAgYm94LXNoYWRvdzogMnB4IDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpOwp9CgovKiBCb3ggU2hhZG93IEluc2V0ICovCi5odnItYm94LXNoYWRvdy1pbnNldCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCByZ2JhKDAsIDAsIDAsIDAuNiksIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAvKiBIYWNrIHRvIGltcHJvdmUgYWxpYXNpbmcgb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzICovCn0KLmh2ci1ib3gtc2hhZG93LWluc2V0OmhvdmVyLCAuaHZyLWJveC1zaGFkb3ctaW5zZXQ6Zm9jdXMsIC5odnItYm94LXNoYWRvdy1pbnNldDphY3RpdmUgewogIGJveC1zaGFkb3c6IGluc2V0IDJweCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KSwgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi8KfQoKLyogRmxvYXQgU2hhZG93ICovCi5odnItZmxvYXQtc2hhZG93IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07Cn0KLmh2ci1mbG9hdC1zaGFkb3c6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgY29udGVudDogJyc7CiAgdG9wOiAxMDAlOwogIGxlZnQ6IDUlOwogIGhlaWdodDogMTBweDsKICB3aWR0aDogOTAlOwogIG9wYWNpdHk6IDA7CiAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlLCByZ2JhKDAsIDAsIDAsIDAuMzUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7CiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgY2VudGVyLCByZ2JhKDAsIDAsIDAsIDAuMzUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7CiAgLyogVzNDICovCiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5Owp9Ci5odnItZmxvYXQtc2hhZG93OmhvdmVyLCAuaHZyLWZsb2F0LXNoYWRvdzpmb2N1cywgLmh2ci1mbG9hdC1zaGFkb3c6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CiAgLyogbW92ZSB0aGUgZWxlbWVudCB1cCBieSA1cHggKi8KfQouaHZyLWZsb2F0LXNoYWRvdzpob3ZlcjpiZWZvcmUsIC5odnItZmxvYXQtc2hhZG93OmZvY3VzOmJlZm9yZSwgLmh2ci1mbG9hdC1zaGFkb3c6YWN0aXZlOmJlZm9yZSB7CiAgb3BhY2l0eTogMTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpOwogIC8qIG1vdmUgdGhlIGVsZW1lbnQgZG93biBieSA1cHggKGl0IHdpbGwgc3RheSBpbiBwbGFjZSBiZWNhdXNlIGl0J3MgYXR0YWNoZWQgdG8gdGhlIGVsZW1lbnQgdGhhdCBhbHNvIG1vdmVzIHVwIDVweCkgKi8KfQoKLyogU2hhZG93IFJhZGlhbCAqLwouaHZyLXNoYWRvdy1yYWRpYWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItc2hhZG93LXJhZGlhbDpiZWZvcmUsIC5odnItc2hhZG93LXJhZGlhbDphZnRlciB7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGNvbnRlbnQ6ICcnOwogIGxlZnQ6IDA7CiAgd2lkdGg6IDEwMCU7CiAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogIGhlaWdodDogNXB4OwogIG9wYWNpdHk6IDA7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7Cn0KLmh2ci1zaGFkb3ctcmFkaWFsOmJlZm9yZSB7CiAgYm90dG9tOiAxMDAlOwogIGJhY2tncm91bmQ6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KDUwJSAxNTAlLCBlbGxpcHNlLCByZ2JhKDAsIDAsIDAsIDAuNikgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTsKICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCA1MCUgMTUwJSwgcmdiYSgwLCAwLCAwLCAwLjYpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7Cn0KLmh2ci1zaGFkb3ctcmFkaWFsOmFmdGVyIHsKICB0b3A6IDEwMCU7CiAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoNTAlIC01MCUsIGVsbGlwc2UsIHJnYmEoMCwgMCwgMCwgMC42KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpOwogIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IDUwJSAtNTAlLCByZ2JhKDAsIDAsIDAsIDAuNikgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTsKfQouaHZyLXNoYWRvdy1yYWRpYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXNoYWRvdy1yYWRpYWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXNoYWRvdy1yYWRpYWw6YWN0aXZlOmJlZm9yZSwgLmh2ci1zaGFkb3ctcmFkaWFsOmhvdmVyOmFmdGVyLCAuaHZyLXNoYWRvdy1yYWRpYWw6Zm9jdXM6YWZ0ZXIsIC5odnItc2hhZG93LXJhZGlhbDphY3RpdmU6YWZ0ZXIgewogIG9wYWNpdHk6IDE7Cn0KCi8qIFNQRUVDSCBCVUJCTEVTICovCi8qIEJ1YmJsZSBUb3AgKi8KLmh2ci1idWJibGUtdG9wIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLWJ1YmJsZS10b3A6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgY29udGVudDogJyc7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTsKICB0b3A6IDA7CiAgYm9yZGVyLXdpZHRoOiAwIDEwcHggMTBweCAxMHB4OwogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2UxZTFlMSB0cmFuc3BhcmVudDsKfQouaHZyLWJ1YmJsZS10b3A6aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS10b3A6Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS10b3A6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7Cn0KCi8qIEJ1YmJsZSBSaWdodCAqLwouaHZyLWJ1YmJsZS1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmh2ci1idWJibGUtcmlnaHQ6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgY29udGVudDogJyc7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpOwogIHJpZ2h0OiAwOwogIGJvcmRlci13aWR0aDogMTBweCAwIDEwcHggMTBweDsKICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNlMWUxZTE7Cn0KLmh2ci1idWJibGUtcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS1yaWdodDpmb2N1czpiZWZvcmUsIC5odnItYnViYmxlLXJpZ2h0OmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTsKfQoKLyogQnViYmxlIEJvdHRvbSAqLwouaHZyLWJ1YmJsZS1ib3R0b20gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItYnViYmxlLWJvdHRvbTpiZWZvcmUgewogIHBvaW50ZXItZXZlbnRzOiBub25lOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBjb250ZW50OiAnJzsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICBsZWZ0OiBjYWxjKDUwJSAtIDEwcHgpOwogIGJvdHRvbTogMDsKICBib3JkZXItd2lkdGg6IDEwcHggMTBweCAwIDEwcHg7CiAgYm9yZGVyLWNvbG9yOiAjZTFlMWUxIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50Owp9Ci5odnItYnViYmxlLWJvdHRvbTpob3ZlcjpiZWZvcmUsIC5odnItYnViYmxlLWJvdHRvbTpmb2N1czpiZWZvcmUsIC5odnItYnViYmxlLWJvdHRvbTphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7Cn0KCi8qIEJ1YmJsZSBMZWZ0ICovCi5odnItYnViYmxlLWxlZnQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItYnViYmxlLWxlZnQ6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgY29udGVudDogJyc7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpOwogIGxlZnQ6IDA7CiAgYm9yZGVyLXdpZHRoOiAxMHB4IDEwcHggMTBweCAwOwogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2UxZTFlMSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsKfQouaHZyLWJ1YmJsZS1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtbGVmdDpmb2N1czpiZWZvcmUsIC5odnItYnViYmxlLWxlZnQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7Cn0KCi8qIEJ1YmJsZSBGbG9hdCBUb3AgKi8KLmh2ci1idWJibGUtZmxvYXQtdG9wIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07Cn0KLmh2ci1idWJibGUtZmxvYXQtdG9wOmJlZm9yZSB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIGNvbnRlbnQ6ICcnOwogIGxlZnQ6IGNhbGMoNTAlIC0gMTBweCk7CiAgdG9wOiAwOwogIGJvcmRlci1zdHlsZTogc29saWQ7CiAgYm9yZGVyLXdpZHRoOiAwIDEwcHggMTBweCAxMHB4OwogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2UxZTFlMSB0cmFuc3BhcmVudDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07Cn0KLmh2ci1idWJibGUtZmxvYXQtdG9wOmhvdmVyLCAuaHZyLWJ1YmJsZS1mbG9hdC10b3A6Zm9jdXMsIC5odnItYnViYmxlLWZsb2F0LXRvcDphY3RpdmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTsKfQouaHZyLWJ1YmJsZS1mbG9hdC10b3A6aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC10b3A6Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC10b3A6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7Cn0KCi8qIEJ1YmJsZSBGbG9hdCBSaWdodCAqLwouaHZyLWJ1YmJsZS1mbG9hdC1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LXJpZ2h0OmJlZm9yZSB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogY2FsYyg1MCUgLSAxMHB4KTsKICByaWdodDogMDsKICBjb250ZW50OiAnJzsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIGJvcmRlci13aWR0aDogMTBweCAwIDEwcHggMTBweDsKICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNlMWUxZTE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LXJpZ2h0OmhvdmVyLCAuaHZyLWJ1YmJsZS1mbG9hdC1yaWdodDpmb2N1cywgLmh2ci1idWJibGUtZmxvYXQtcmlnaHQ6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsKfQouaHZyLWJ1YmJsZS1mbG9hdC1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItYnViYmxlLWZsb2F0LXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci1idWJibGUtZmxvYXQtcmlnaHQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOwp9CgovKiBCdWJibGUgRmxvYXQgQm90dG9tICovCi5odnItYnViYmxlLWZsb2F0LWJvdHRvbSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LWJvdHRvbTpiZWZvcmUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBjb250ZW50OiAnJzsKICBsZWZ0OiBjYWxjKDUwJSAtIDEwcHgpOwogIGJvdHRvbTogMDsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDAgMTBweDsKICBib3JkZXItY29sb3I6ICNlMWUxZTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LWJvdHRvbTpob3ZlciwgLmh2ci1idWJibGUtZmxvYXQtYm90dG9tOmZvY3VzLCAuaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKfQouaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpOwp9CgovKiBCdWJibGUgRmxvYXQgTGVmdCAqLwouaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07Cn0KLmh2ci1idWJibGUtZmxvYXQtbGVmdDpiZWZvcmUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBjb250ZW50OiAnJzsKICB0b3A6IGNhbGMoNTAlIC0gMTBweCk7CiAgbGVmdDogMDsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDEwcHggMDsKICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNlMWUxZTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LWxlZnQ6aG92ZXIsIC5odnItYnViYmxlLWZsb2F0LWxlZnQ6Zm9jdXMsIC5odnItYnViYmxlLWZsb2F0LWxlZnQ6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7Cn0KLmh2ci1idWJibGUtZmxvYXQtbGVmdDpob3ZlcjpiZWZvcmUsIC5odnItYnViYmxlLWZsb2F0LWxlZnQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0OmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOwp9CgovKiBJQ09OUyAqLwovKiBJY29uIEJhY2sgKi8KLmh2ci1pY29uLWJhY2sgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctbGVmdDogMi4yZW07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7Cn0KLmh2ci1pY29uLWJhY2s6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMzciOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1iYWNrOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWJhY2s6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tYmFjazphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTRweCk7Cn0KCi8qIEljb24gRm9yd2FyZCAqLwouaHZyLWljb24tZm9yd2FyZCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7Cn0KLmh2ci1pY29uLWZvcndhcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMzgiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tZm9yd2FyZDpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1mb3J3YXJkOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWZvcndhcmQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKfQoKLyogSWNvbiBEb3duICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1kb3duIHsKICAwJSwKICA1MCUsCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9CgogIDI1JSwKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogIH0KfQoKQGtleWZyYW1lcyBodnItaWNvbi1kb3duIHsKICAwJSwKICA1MCUsCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9CgogIDI1JSwKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogIH0KfQoKLyogSWNvbiBEb3duICovCi5odnItaWNvbi1kb3duIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsKfQouaHZyLWljb24tZG93bjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAxYSI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24tZG93bjpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1kb3duOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWRvd246YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tZG93bjsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tZG93bjsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9CgovKiBJY29uIFVwICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi11cCB7CiAgMCUsCiAgNTAlLAogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQoKICAyNSUsCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogIH0KfQoKQGtleWZyYW1lcyBodnItaWNvbi11cCB7CiAgMCUsCiAgNTAlLAogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQoKICAyNSUsCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogIH0KfQoKLyogSWNvbiBVcCAqLwouaHZyLWljb24tdXAgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwp9Ci5odnItaWNvbi11cDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAxYiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24tdXA6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tdXA6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tdXA6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tdXA7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXVwOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KCi8qIEljb24gU3BpbiAqLwouaHZyLWljb24tc3BpbiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07Cn0KLmh2ci1pY29uLXNwaW46YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMjEiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDFzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDFzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7Cn0KLmh2ci1pY29uLXNwaW46aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tc3Bpbjpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1zcGluOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsKICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwp9CgovKiBJY29uIERyb3AgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLWRyb3AgewogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICA1MCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7CiAgfQoKICA1MSUsCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKQGtleWZyYW1lcyBodnItaWNvbi1kcm9wIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgNTAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOwogIH0KCiAgNTElLAogIDEwMCUgewogICAgb3BhY2l0eTogMTsKICB9Cn0KCi8qIEljb24gRHJvcCAqLwouaHZyLWljb24tZHJvcCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07Cn0KLmh2ci1pY29uLWRyb3A6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNDEiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIG9wYWNpdHk6IDE7CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24tZHJvcDpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1kcm9wOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWRyb3A6YWN0aXZlOmJlZm9yZSB7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1kcm9wOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1kcm9wOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41czsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4zczsKICBhbmltYXRpb24tZGVsYXk6IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsKfQoKLyogSWNvbiBGYWRlICovCi5odnItaWNvbi1mYWRlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsKfQouaHZyLWljb24tZmFkZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAwYyI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwp9Ci5odnItaWNvbi1mYWRlOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWZhZGU6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tZmFkZTphY3RpdmU6YmVmb3JlIHsKICBjb2xvcjogIzBGOUU1RTsKfQoKLyogSWNvbiBGbG9hdCBBd2F5ICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1mbG9hdC1hd2F5IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFlbSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFlbSk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1pY29uLWZsb2F0LWF3YXkgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKTsKICB9Cn0KCi8qIEljb24gRmxvYXQgQXdheSAqLwouaHZyLWljb24tZmxvYXQtYXdheSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07Cn0KLmh2ci1pY29uLWZsb2F0LWF3YXk6YmVmb3JlLCAuaHZyLWljb24tZmxvYXQtYXdheTphZnRlciB7CiAgY29udGVudDogIlxmMDU1IjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDFlbTsKICBwYWRkaW5nOiAwIDFweDsKICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7Cn0KLmh2ci1pY29uLWZsb2F0LWF3YXk6YWZ0ZXIgewogIG9wYWNpdHk6IDA7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzOwogIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7CiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7Cn0KLmh2ci1pY29uLWZsb2F0LWF3YXk6aG92ZXI6YWZ0ZXIsIC5odnItaWNvbi1mbG9hdC1hd2F5OmZvY3VzOmFmdGVyLCAuaHZyLWljb24tZmxvYXQtYXdheTphY3RpdmU6YWZ0ZXIgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWZsb2F0LWF3YXk7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWZsb2F0LWF3YXk7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQoKLyogSWNvbiBTaW5rIEF3YXkgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXNpbmstYXdheSB7CiAgMCUgewogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFlbSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMWVtKTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLWljb24tc2luay1hd2F5IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMWVtKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxZW0pOwogIH0KfQoKLyogSWNvbiBTaW5rIEF3YXkgKi8KLmh2ci1pY29uLXNpbmstYXdheSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07Cn0KLmh2ci1pY29uLXNpbmstYXdheTpiZWZvcmUsIC5odnItaWNvbi1zaW5rLWF3YXk6YWZ0ZXIgewogIGNvbnRlbnQ6ICJcZjA1NiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24tc2luay1hd2F5OmFmdGVyIHsKICBvcGFjaXR5OiAwOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41czsKICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwp9Ci5odnItaWNvbi1zaW5rLWF3YXk6aG92ZXI6YWZ0ZXIsIC5odnItaWNvbi1zaW5rLWF3YXk6Zm9jdXM6YWZ0ZXIsIC5odnItaWNvbi1zaW5rLWF3YXk6YWN0aXZlOmFmdGVyIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1zaW5rLWF3YXk7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXNpbmstYXdheTsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9CgovKiBJY29uIEdyb3cgKi8KLmh2ci1pY29uLWdyb3cgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi1ncm93OmJlZm9yZSB7CiAgY29udGVudDogIlxmMTE4IjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDFlbTsKICBwYWRkaW5nOiAwIDFweDsKICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1pY29uLWdyb3c6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tZ3Jvdzpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1ncm93OmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpIHRyYW5zbGF0ZVooMCk7Cn0KCi8qIEljb24gU2hyaW5rICovCi5odnItaWNvbi1zaHJpbmsgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi1zaHJpbms6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMTkiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tc2hyaW5rOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXNocmluazpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1zaHJpbms6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwp9CgovKiBJY29uIFB1bHNlICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1wdWxzZSB7CiAgMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwogIH0KfQoKQGtleWZyYW1lcyBodnItaWNvbi1wdWxzZSB7CiAgMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwogIH0KfQoKLmh2ci1pY29uLXB1bHNlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsKfQouaHZyLWljb24tcHVsc2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMTUiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1wdWxzZTpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1wdWxzZTpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1wdWxzZTphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdWxzZTsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tcHVsc2U7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7Cn0KCi8qIEljb24gUHVsc2UgR3JvdyAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24tcHVsc2UtZ3JvdyB7CiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1pY29uLXB1bHNlLWdyb3cgewogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogIH0KfQoKLmh2ci1pY29uLXB1bHNlLWdyb3cgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwp9Ci5odnItaWNvbi1wdWxzZS1ncm93OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDE1IjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDFlbTsKICBwYWRkaW5nOiAwIDFweDsKICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tcHVsc2UtZ3Jvdzpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1wdWxzZS1ncm93OmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXB1bHNlLWdyb3c6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tcHVsc2UtZ3JvdzsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tcHVsc2UtZ3JvdzsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlOwp9CgovKiBJY29uIFB1bHNlIFNocmluayAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24tcHVsc2Utc2hyaW5rIHsKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLWljb24tcHVsc2Utc2hyaW5rIHsKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTsKICB9Cn0KCi5odnItaWNvbi1wdWxzZS1zaHJpbmsgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwp9Ci5odnItaWNvbi1wdWxzZS1zaHJpbms6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMTUiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1wdWxzZS1zaHJpbms6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tcHVsc2Utc2hyaW5rOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXB1bHNlLXNocmluazphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdWxzZS1zaHJpbms7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXB1bHNlLXNocmluazsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlOwp9CgovKiBJY29uIFB1c2ggKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXB1c2ggewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC41KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLWljb24tcHVzaCB7CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjUpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpOwogIH0KfQoKLmh2ci1pY29uLXB1c2ggewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi1wdXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDA2IjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDFlbTsKICBwYWRkaW5nOiAwIDFweDsKICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1pY29uLXB1c2g6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tcHVzaDpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1wdXNoOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXB1c2g7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXB1c2g7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogSWNvbiBQb3AgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXBvcCB7CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpOwogIH0KfQoKQGtleWZyYW1lcyBodnItaWNvbi1wb3AgewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTsKICB9Cn0KCi5odnItaWNvbi1wb3AgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi1wb3A6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMDUiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tcG9wOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXBvcDpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1wb3A6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tcG9wOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wb3A7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogSWNvbiBCb3VuY2UgKi8KLmh2ci1pY29uLWJvdW5jZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLWJvdW5jZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA4NyI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1ib3VuY2U6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tYm91bmNlOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWJvdW5jZTphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsKICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDcsIDIuMDIsIDAuMzEsIC0wLjM2KTsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDcsIDIuMDIsIDAuMzEsIC0wLjM2KTsKfQoKLyogSWNvbiBSb3RhdGUgKi8KLmh2ci1pY29uLXJvdGF0ZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLXJvdGF0ZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBjNiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1yb3RhdGU6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tcm90YXRlOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXJvdGF0ZTphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTsKICB0cmFuc2Zvcm06IHJvdGF0ZSgyMGRlZyk7Cn0KCi8qIEljb24gR3JvdyBSb3RhdGUgKi8KLmh2ci1pY29uLWdyb3ctcm90YXRlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24tZ3Jvdy1yb3RhdGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwOTUiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tZ3Jvdy1yb3RhdGU6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tZ3Jvdy1yb3RhdGU6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tZ3Jvdy1yb3RhdGU6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSkgcm90YXRlKDEyZGVnKTsKICB0cmFuc2Zvcm06IHNjYWxlKDEuNSkgcm90YXRlKDEyZGVnKTsKfQoKLyogSWNvbiBGbG9hdCAqLwouaHZyLWljb24tZmxvYXQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi1mbG9hdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAxYiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1mbG9hdDpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1mbG9hdDpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1mbG9hdDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7Cn0KCi8qIEljb24gU2luayAqLwouaHZyLWljb24tc2luayB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLXNpbms6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMWEiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tc2luazpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1zaW5rOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXNpbms6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKfQoKLyogSWNvbiBCb2IgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLWJvYiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogIH0KfQoKQGtleWZyYW1lcyBodnItaWNvbi1ib2IgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICB9Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1ib2ItZmxvYXQgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1pY29uLWJvYi1mbG9hdCB7CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICB9Cn0KCi5odnItaWNvbi1ib2IgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctcmlnaHQ6IDIuMmVtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi1ib2I6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNzciOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7Cn0KLmh2ci1pY29uLWJvYjpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1ib2I6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tYm9iOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWJvYi1mbG9hdCwgaHZyLWljb24tYm9iOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1ib2ItZmxvYXQsIGh2ci1pY29uLWJvYjsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzOwogIGFuaW1hdGlvbi1kZWxheTogMHMsIC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7Cn0KCi8qIEljb24gSGFuZyAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24taGFuZyB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogIH0KfQoKQGtleWZyYW1lcyBodnItaWNvbi1oYW5nIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgfQp9CgpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24taGFuZy1zaW5rIHsKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICB9Cn0KCkBrZXlmcmFtZXMgaHZyLWljb24taGFuZy1zaW5rIHsKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICB9Cn0KCi5odnItaWNvbi1oYW5nIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24taGFuZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA3OCI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24taGFuZzpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1oYW5nOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWhhbmc6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24taGFuZy1zaW5rLCBodnItaWNvbi1oYW5nOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1oYW5nLXNpbmssIGh2ci1pY29uLWhhbmc7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC4zcywgMS41czsKICBhbmltYXRpb24tZHVyYXRpb246IC4zcywgMS41czsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMHMsIC4zczsKICBhbmltYXRpb24tZGVsYXk6IDBzLCAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQsIGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSwgaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSwgaW5maW5pdGU7CiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbCwgYWx0ZXJuYXRlOwogIGFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbCwgYWx0ZXJuYXRlOwp9CgovKiBJY29uIFdvYmJsZSBIb3Jpem9udGFsICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi13b2JibGUtaG9yaXpvbnRhbCB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNnB4KTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpOwogIH0KCiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpOwogIH0KCiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1pY29uLXdvYmJsZS1ob3Jpem9udGFsIHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpOwogIH0KCiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7CiAgfQoKICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOwogIH0KCiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgfQoKICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9Cn0KCi5odnItaWNvbi13b2JibGUtaG9yaXpvbnRhbCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1yaWdodDogMi4yZW07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLXdvYmJsZS1ob3Jpem9udGFsOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDYxIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDFlbTsKICBwYWRkaW5nOiAwIDFweDsKICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwp9Ci5odnItaWNvbi13b2JibGUtaG9yaXpvbnRhbDpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi13b2JibGUtaG9yaXpvbnRhbDpmb2N1czpiZWZvcmUsIC5odnItaWNvbi13b2JibGUtaG9yaXpvbnRhbDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi13b2JibGUtaG9yaXpvbnRhbDsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24td29iYmxlLWhvcml6b250YWw7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogSWNvbiBXb2JibGUgVmVydGljYWwgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbCB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogIH0KCiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogIH0KCiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbCB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICB9CgogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogIH0KCiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICB9CgogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogIH0KCiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQp9CgouaHZyLWljb24td29iYmxlLXZlcnRpY2FsIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24td29iYmxlLXZlcnRpY2FsOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDYyIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDFlbTsKICBwYWRkaW5nOiAwIDFweDsKICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwp9Ci5odnItaWNvbi13b2JibGUtdmVydGljYWw6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24td29iYmxlLXZlcnRpY2FsOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi13b2JibGUtdmVydGljYWw7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBJY29uIEJ1enogKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLWJ1enogewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KfQoKQGtleWZyYW1lcyBodnItaWNvbi1idXp6IHsKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9Cn0KCi5odnItaWNvbi1idXp6IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24tYnV6ejpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAxNyI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxZW07CiAgcGFkZGluZzogMCAxcHg7CiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24tYnV6ejpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1idXp6OmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWJ1eno6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tYnV6ejsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tYnV6ejsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4xNXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjE1czsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKfQoKLyogSWNvbiBCdXp6IE91dCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24tYnV6ei1vdXQgewogIDEwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICB9CgogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgfQoKICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOwogIH0KCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICB9CgogIDcwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICB9CgogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgfQoKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGh2ci1pY29uLWJ1enotb3V0IHsKICAxMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQoKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KCiAgMzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9CgogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICB9CgogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgfQoKICA3MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApOwogIH0KfQoKLmh2ci1pY29uLWJ1enotb3V0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24tYnV6ei1vdXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMjMiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMWVtOwogIHBhZGRpbmc6IDAgMXB4OwogIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7Cn0KLmh2ci1pY29uLWJ1enotb3V0OmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWJ1enotb3V0OmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWJ1enotb3V0OmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWJ1enotb3V0OwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1idXp6LW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7Cn0KCi8qIENVUkxTICovCi8qIEN1cmwgVG9wIExlZnQgKi8KLmh2ci1jdXJsLXRvcC1sZWZ0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLWN1cmwtdG9wLWxlZnQ6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgY29udGVudDogJyc7CiAgaGVpZ2h0OiAwOwogIHdpZHRoOiAwOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIGJhY2tncm91bmQ6IHdoaXRlOwogIC8qIElFOSAqLwogIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHdoaXRlIDQ1JSwgI2FhYWFhYSA1MCUsICNjY2NjY2MgNTYlLCB3aGl0ZSA4MCUpOwogIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZT0wLHN0YXJ0Q29sb3JzdHI9JyNmZmZmZmYnLCBlbmRDb2xvcnN0cj0nIzAwMDAwMCcpOwogIC8qRm9yIElFNy04LTkqLwogIHotaW5kZXg6IDEwMDA7CiAgYm94LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0Owp9Ci5odnItY3VybC10b3AtbGVmdDpob3ZlcjpiZWZvcmUsIC5odnItY3VybC10b3AtbGVmdDpmb2N1czpiZWZvcmUsIC5odnItY3VybC10b3AtbGVmdDphY3RpdmU6YmVmb3JlIHsKICB3aWR0aDogMjVweDsKICBoZWlnaHQ6IDI1cHg7Cn0KCi8qIEN1cmwgVG9wIFJpZ2h0ICovCi5odnItY3VybC10b3AtcmlnaHQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItY3VybC10b3AtcmlnaHQ6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgY29udGVudDogJyc7CiAgaGVpZ2h0OiAwOwogIHdpZHRoOiAwOwogIHRvcDogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAvKiBJRTkgKi8KICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCB3aGl0ZSA0NSUsICNhYWFhYWEgNTAlLCAjY2NjY2NjIDU2JSwgd2hpdGUgODAlKTsKICBib3gtc2hhZG93OiAtMXB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0Owp9Ci5odnItY3VybC10b3AtcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLWN1cmwtdG9wLXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci1jdXJsLXRvcC1yaWdodDphY3RpdmU6YmVmb3JlIHsKICB3aWR0aDogMjVweDsKICBoZWlnaHQ6IDI1cHg7Cn0KCi8qIEN1cmwgQm90dG9tIFJpZ2h0ICovCi5odnItY3VybC1ib3R0b20tcmlnaHQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItY3VybC1ib3R0b20tcmlnaHQ6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgY29udGVudDogJyc7CiAgaGVpZ2h0OiAwOwogIHdpZHRoOiAwOwogIGJvdHRvbTogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAvKiBJRTkgKi8KICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMzE1ZGVnLCB3aGl0ZSA0NSUsICNhYWFhYWEgNTAlLCAjY2NjY2NjIDU2JSwgd2hpdGUgODAlKTsKICBib3gtc2hhZG93OiAtMXB4IC0xcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCBoZWlnaHQ7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDsKfQouaHZyLWN1cmwtYm90dG9tLXJpZ2h0OmhvdmVyOmJlZm9yZSwgLmh2ci1jdXJsLWJvdHRvbS1yaWdodDpmb2N1czpiZWZvcmUsIC5odnItY3VybC1ib3R0b20tcmlnaHQ6YWN0aXZlOmJlZm9yZSB7CiAgd2lkdGg6IDI1cHg7CiAgaGVpZ2h0OiAyNXB4Owp9CgovKiBDdXJsIEJvdHRvbSBMZWZ0ICovCi5odnItY3VybC1ib3R0b20tbGVmdCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmh2ci1jdXJsLWJvdHRvbS1sZWZ0OmJlZm9yZSB7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGNvbnRlbnQ6ICcnOwogIGhlaWdodDogMDsKICB3aWR0aDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAvKiBJRTkgKi8KICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHdoaXRlIDQ1JSwgI2FhYWFhYSA1MCUsICNjY2NjY2MgNTYlLCB3aGl0ZSA4MCUpOwogIGJveC1zaGFkb3c6IDFweCAtMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCBoZWlnaHQ7Cn0KLmh2ci1jdXJsLWJvdHRvbS1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1jdXJsLWJvdHRvbS1sZWZ0OmZvY3VzOmJlZm9yZSwgLmh2ci1jdXJsLWJvdHRvbS1sZWZ0OmFjdGl2ZTpiZWZvcmUgewogIHdpZHRoOiAyNXB4OwogIGhlaWdodDogMjVweDsKfQo=
5 ms
ads
5133 ms
getSegment.php
24 ms
checkOAuth.esi
50 ms
dpx.js
20 ms
tpid=1DE704457077D55627035F3602D14909
18 ms
t.dhj
24 ms
p
40 ms
t.dhj
17 ms
cm
33 ms
dpx
10 ms
match_redirect
7 ms
s-3271.xgi
18 ms
29931
63 ms
11 ms
6 ms
hbpix
30 ms
xrefid.xgi
5 ms
match_redirect
9 ms
pixel
16 ms
tpid=CD29559E7077D556CA195037021B8B84
6 ms
lr
4 ms
pixel
13 ms
2981
41 ms
lr.gif
4 ms
match_redirect
3 ms
57 ms
sync
4 ms
match_redirect
3 ms
CD29559E7077D556CA195037021B8B84
34 ms
match_redirect
3 ms
ProfilesEngineServlet
5 ms
ProfilesEngineServlet
22 ms
tc.js
7 ms
p
57 ms
tap.php
5 ms
exelate
2 ms
match_redirect
2 ms
v2
53 ms
dpx
3 ms
27519
58 ms
engine
88 ms
52154.gif
13 ms
generic
11 ms
i.match
155 ms
image.sbxx
17 ms
1407
93 ms
2964
33 ms
generic
11 ms
3085
163 ms
image.sbxx
191 ms
5386
213 ms
2831
381 ms
16 ms
4220 ms
4448
34 ms
47154.gif
9 ms
i.match
83 ms
event
7 ms
4229
32 ms
4470
79 ms
index.a8fc48294ca4cc10eb440189d9f22d7c.html
22 ms
buttons.ab966a004186897711de4a5ed256c924.css
15 ms
getCount2.php
27 ms
st.125da8bfe70ad3e00a35a6e4c65d8bc5.js
4 ms
spotx_match
12 ms
facebook_counter.png
13 ms
Facebook_bubble_arrow.png
15 ms
fb_match
14 ms
u.php
49 ms
an
3 ms
lj_match
4 ms
cw_match
3 ms
rtset
17 ms
rb_match
5 ms
tap.php
6 ms
ox_match
3 ms
pm_match
3 ms
Pug
44 ms
pixel
16 ms
g_match
3 ms
match_redirect
5 ms
pixel
32 ms
merge
44 ms
sd
32 ms
aa_px
4 ms
23 ms
css
120 ms
m_js_controller.js
56 ms
abg.js
57 ms
googlelogo_color_112x36dp.png
74 ms
5648057784509211935
74 ms
x_button_blue2.png
20 ms
s
18 ms
E4WYPs_lNJIuXrWpTsOcc3FIG36RfI0ERc0srw5QW9Y.js
3 ms
favicon
23 ms
nessie_icon_tiamat_white.png
14 ms
eXTLMlW5_yOhUYbVCO_akg.ttf
30 ms
ui
50 ms
Hgo13k-tfSpn0qi1SFdUfaCWcynf_cDxXwCLxiixG1c.ttf
39 ms
items.farmvilledirt.com SEO score
N/A
N/A
UTF-8
Language claimed in HTML meta tag should match the language actually used on the web page. Otherwise Items.farmvilledirt.com can be misinterpreted by Google and other search engines. Unfortunately we cannot identify language used on the page (probably there is a mix of languages, too little text or something else) and no language is claimed in <html> or <meta> tags either. Our system also found out that Items.farmvilledirt.com main page’s claimed encoding is utf-8. Use of this encoding format is the best practice as the main page visitors from all over the world won’t have any issues with symbol transcription.
items.farmvilledirt.com
Open Graph description is not detected on the main page of Items Farmvilledirt. Lack of Open Graph description can be counter-productive for their social media presence, as such a description allows converting a website homepage (or other pages) into good-looking, rich and well-structured posts, when it is being shared on Facebook and other social media. For example, adding the following code snippet into HTML <head> tag will help to represent this web page correctly in social networks: