spectre-icons.css 55 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. /*! Spectre.css Icons v0.5.3 | MIT License | github.com/picturepan2/spectre */
  2. .icon { box-sizing: border-box; display: inline-block; font-size: inherit; font-style: normal; height: 1em; position: relative; text-indent: -9999px; vertical-align: middle; width: 1em; }
  3. .icon::before, .icon::after { display: block; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); }
  4. .icon.icon-2x { font-size: 1.6rem; }
  5. .icon.icon-3x { font-size: 2.4rem; }
  6. .icon.icon-4x { font-size: 3.2rem; }
  7. .accordion .icon, .btn .icon, .toast .icon, .menu .icon { vertical-align: -10%; }
  8. .btn-lg .icon { vertical-align: -15%; }
  9. .icon-arrow-down::before, .icon-arrow-left::before, .icon-arrow-right::before, .icon-arrow-up::before, .icon-downward::before, .icon-back::before, .icon-forward::before, .icon-upward::before { border: 0.1rem solid currentColor; border-bottom: 0; border-right: 0; content: ""; height: .65em; width: .65em; }
  10. .icon-arrow-down::before { transform: translate(-50%, -75%) rotate(225deg); }
  11. .icon-arrow-left::before { transform: translate(-25%, -50%) rotate(-45deg); }
  12. .icon-arrow-right::before { transform: translate(-75%, -50%) rotate(135deg); }
  13. .icon-arrow-up::before { transform: translate(-50%, -25%) rotate(45deg); }
  14. .icon-back::after, .icon-forward::after { background: currentColor; content: ""; height: 0.1rem; width: .8em; }
  15. .icon-downward::after, .icon-upward::after { background: currentColor; content: ""; height: .8em; width: 0.1rem; }
  16. .icon-back::after { left: 55%; }
  17. .icon-back::before { transform: translate(-50%, -50%) rotate(-45deg); }
  18. .icon-downward::after { top: 45%; }
  19. .icon-downward::before { transform: translate(-50%, -50%) rotate(-135deg); }
  20. .icon-forward::after { left: 45%; }
  21. .icon-forward::before { transform: translate(-50%, -50%) rotate(135deg); }
  22. .icon-upward::after { top: 55%; }
  23. .icon-upward::before { transform: translate(-50%, -50%) rotate(45deg); }
  24. .icon-caret::before { border-top: .3em solid currentColor; border-right: .3em solid transparent; border-left: .3em solid transparent; content: ""; height: 0; transform: translate(-50%, -25%); width: 0; }
  25. .icon-menu::before { background: currentColor; box-shadow: 0 -.35em, 0 .35em; content: ""; height: 0.1rem; width: 100%; }
  26. .icon-apps::before { background: currentColor; box-shadow: -.35em -.35em, -.35em 0, -.35em .35em, 0 -.35em, 0 .35em, .35em -.35em, .35em 0, .35em .35em; content: ""; height: 3px; width: 3px; }
  27. .icon-resize-horiz::before, .icon-resize-horiz::after, .icon-resize-vert::before, .icon-resize-vert::after { border: 0.1rem solid currentColor; border-bottom: 0; border-right: 0; content: ""; height: .45em; width: .45em; }
  28. .icon-resize-horiz::before, .icon-resize-vert::before { transform: translate(-50%, -90%) rotate(45deg); }
  29. .icon-resize-horiz::after, .icon-resize-vert::after { transform: translate(-50%, -10%) rotate(225deg); }
  30. .icon-resize-horiz::before { transform: translate(-90%, -50%) rotate(-45deg); }
  31. .icon-resize-horiz::after { transform: translate(-10%, -50%) rotate(135deg); }
  32. .icon-more-horiz::before, .icon-more-vert::before { background: currentColor; box-shadow: -.4em 0, .4em 0; border-radius: 50%; content: ""; height: 3px; width: 3px; }
  33. .icon-more-vert::before { box-shadow: 0 -.4em, 0 .4em; }
  34. .icon-plus::before, .icon-minus::before, .icon-cross::before { background: currentColor; content: ""; height: 0.1rem; width: 100%; }
  35. .icon-plus::after, .icon-cross::after { background: currentColor; content: ""; height: 100%; width: 0.1rem; }
  36. .icon-cross::before { width: 100%; }
  37. .icon-cross::after { height: 100%; }
  38. .icon-cross::before, .icon-cross::after { transform: translate(-50%, -50%) rotate(45deg); }
  39. .icon-check::before { border: 0.1rem solid currentColor; border-right: 0; border-top: 0; content: ""; height: .5em; width: .9em; transform: translate(-50%, -75%) rotate(-45deg); }
  40. .icon-stop { border: 0.1rem solid currentColor; border-radius: 50%; }
  41. .icon-stop::before { background: currentColor; content: ""; height: 0.1rem; transform: translate(-50%, -50%) rotate(45deg); width: 1em; }
  42. .icon-shutdown { border: 0.1rem solid currentColor; border-radius: 50%; border-top-color: transparent; }
  43. .icon-shutdown::before { background: currentColor; content: ""; height: .5em; top: .1em; width: 0.1rem; }
  44. .icon-refresh::before { border: 0.1rem solid currentColor; border-radius: 50%; border-right-color: transparent; content: ""; height: 1em; width: 1em; }
  45. .icon-refresh::after { border: .2em solid currentColor; border-top-color: transparent; border-left-color: transparent; content: ""; height: 0; left: 80%; top: 20%; width: 0; }
  46. .icon-search::before { border: 0.1rem solid currentColor; border-radius: 50%; content: ""; height: .75em; left: 5%; top: 5%; transform: translate(0, 0) rotate(45deg); width: .75em; }
  47. .icon-search::after { background: currentColor; content: ""; height: 0.1rem; left: 80%; top: 80%; transform: translate(-50%, -50%) rotate(45deg); width: .4em; }
  48. .icon-edit::before { border: 0.1rem solid currentColor; content: ""; height: .4em; transform: translate(-40%, -60%) rotate(-45deg); width: .85em; }
  49. .icon-edit::after { border: .15em solid currentColor; border-top-color: transparent; border-right-color: transparent; content: ""; height: 0; left: 5%; top: 95%; transform: translate(0, -100%); width: 0; }
  50. .icon-delete::before { border: 0.1rem solid currentColor; border-bottom-left-radius: 0.1rem; border-bottom-right-radius: 0.1rem; border-top: 0; content: ""; height: .75em; top: 60%; width: .75em; }
  51. .icon-delete::after { background: currentColor; box-shadow: -.25em .2em, .25em .2em; content: ""; height: 0.1rem; top: 0.05rem; width: .5em; }
  52. .icon-share { border: 0.1rem solid currentColor; border-radius: 0.1rem; border-right: 0; border-top: 0; }
  53. .icon-share::before { border: 0.1rem solid currentColor; border-left: 0; border-top: 0; content: ""; height: .4em; left: 100%; top: .25em; transform: translate(-125%, -50%) rotate(-45deg); width: .4em; }
  54. .icon-share::after { border: 0.1rem solid currentColor; border-bottom: 0; border-right: 0; border-radius: 75% 0; content: ""; height: .5em; width: .6em; }
  55. .icon-flag::before { background: currentColor; content: ""; height: 1em; left: 15%; width: 0.1rem; }
  56. .icon-flag::after { border: 0.1rem solid currentColor; border-bottom-right-radius: 0.1rem; border-left: 0; border-top-right-radius: 0.1rem; content: ""; height: .65em; top: 35%; left: 60%; width: .8em; }
  57. .icon-bookmark::before { border: 0.1rem solid currentColor; border-bottom: 0; border-top-left-radius: 0.1rem; border-top-right-radius: 0.1rem; content: ""; height: .9em; width: .8em; }
  58. .icon-bookmark::after { border: 0.1rem solid currentColor; border-bottom: 0; border-left: 0; border-radius: 0.1rem; content: ""; height: .5em; transform: translate(-50%, 35%) rotate(-45deg) skew(15deg, 15deg); width: .5em; }
  59. .icon-download, .icon-upload { border-bottom: 0.1rem solid currentColor; }
  60. .icon-download::before, .icon-upload::before { border: 0.1rem solid currentColor; border-bottom: 0; border-right: 0; content: ""; height: .5em; width: .5em; transform: translate(-50%, -60%) rotate(-135deg); }
  61. .icon-download::after, .icon-upload::after { background: currentColor; content: ""; height: .6em; top: 40%; width: 0.1rem; }
  62. .icon-upload::before { transform: translate(-50%, -60%) rotate(45deg); }
  63. .icon-upload::after { top: 50%; }
  64. .icon-time { border: 0.1rem solid currentColor; border-radius: 50%; }
  65. .icon-time::before { background: currentColor; content: ""; height: .4em; transform: translate(-50%, -75%); width: 0.1rem; }
  66. .icon-time::after { background: currentColor; content: ""; height: .3em; transform: translate(-50%, -75%) rotate(90deg); transform-origin: 50% 90%; width: 0.1rem; }
  67. .icon-mail::before { border: 0.1rem solid currentColor; border-radius: 0.1rem; content: ""; height: .8em; width: 1em; }
  68. .icon-mail::after { border: 0.1rem solid currentColor; border-right: 0; border-top: 0; content: ""; height: .5em; transform: translate(-50%, -90%) rotate(-45deg) skew(10deg, 10deg); width: .5em; }
  69. .icon-people::before { border: 0.1rem solid currentColor; border-radius: 50%; content: ""; height: .45em; top: 25%; width: .45em; }
  70. .icon-people::after { border: 0.1rem solid currentColor; border-radius: 50% 50% 0 0; content: ""; height: .4em; top: 75%; width: .9em; }
  71. .icon-message { border: 0.1rem solid currentColor; border-bottom: 0; border-radius: 0.1rem; border-right: 0; }
  72. .icon-message::before { border: 0.1rem solid currentColor; border-bottom-right-radius: 0.1rem; border-left: 0; border-top: 0; content: ""; height: .8em; left: 65%; top: 40%; width: .7em; }
  73. .icon-message::after { background: currentColor; border-radius: 0.1rem; content: ""; height: .3em; left: 10%; top: 100%; transform: translate(0, -90%) rotate(45deg); width: 0.1rem; }
  74. .icon-photo { border: 0.1rem solid currentColor; border-radius: 0.1rem; }
  75. .icon-photo::before { border: 0.1rem solid currentColor; border-radius: 50%; content: ""; height: .25em; left: 35%; top: 35%; width: .25em; }
  76. .icon-photo::after { border: 0.1rem solid currentColor; border-bottom: 0; border-left: 0; content: ""; height: .5em; left: 60%; transform: translate(-50%, 25%) rotate(-45deg); width: .5em; }
  77. .icon-link::before, .icon-link::after { border: 0.1rem solid currentColor; border-radius: 5em 0 0 5em; border-right: 0; content: ""; height: .5em; width: .75em; }
  78. .icon-link::before { transform: translate(-70%, -45%) rotate(-45deg); }
  79. .icon-link::after { transform: translate(-30%, -55%) rotate(135deg); }
  80. .icon-location::before { border: 0.1rem solid currentColor; border-radius: 50% 50% 50% 0; content: ""; height: .8em; transform: translate(-50%, -60%) rotate(-45deg); width: .8em; }
  81. .icon-location::after { border: 0.1rem solid currentColor; border-radius: 50%; content: ""; height: .2em; transform: translate(-50%, -80%); width: .2em; }
  82. .icon-emoji { border: 0.1rem solid currentColor; border-radius: 50%; }
  83. .icon-emoji::before { border-radius: 50%; box-shadow: -.17em -.15em, .17em -.15em; content: ""; height: .1em; width: .1em; }
  84. .icon-emoji::after { border: 0.1rem solid currentColor; border-bottom-color: transparent; border-radius: 50%; border-right-color: transparent; content: ""; height: .5em; transform: translate(-50%, -40%) rotate(-135deg); width: .5em; }
  85. /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY3RyZS1pY29ucy5jc3MiLCJzb3VyY2VzIjpbInNwZWN0cmUtaWNvbnMuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsIl9taXhpbnMuc2NzcyIsIm1peGlucy9fYXZhdGFyLnNjc3MiLCJtaXhpbnMvX2J1dHRvbi5zY3NzIiwibWl4aW5zL19jbGVhcmZpeC5zY3NzIiwibWl4aW5zL19jb2xvci5zY3NzIiwibWl4aW5zL19sYWJlbC5zY3NzIiwibWl4aW5zL19wb3NpdGlvbi5zY3NzIiwibWl4aW5zL19zaGFkb3cuc2NzcyIsIm1peGlucy9fdGV4dC5zY3NzIiwibWl4aW5zL190b2FzdC5zY3NzIiwibWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJpY29ucy9faWNvbnMtY29yZS5zY3NzIiwiaWNvbnMvX2ljb25zLW5hdmlnYXRpb24uc2NzcyIsImljb25zL19pY29ucy1hY3Rpb24uc2NzcyIsImljb25zL19pY29ucy1vYmplY3Quc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBWYXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuXG4vKiEgU3BlY3RyZS5jc3MgSWNvbnMgdiN7JHZlcnNpb259IHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL3BpY3R1cmVwYW4yL3NwZWN0cmUgKi9cbi8vIEljb25zXG5AaW1wb3J0IFwiaWNvbnMvaWNvbnMtY29yZVwiO1xuQGltcG9ydCBcImljb25zL2ljb25zLW5hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJpY29ucy9pY29ucy1hY3Rpb25cIjtcbkBpbXBvcnQgXCJpY29ucy9pY29ucy1vYmplY3RcIjtcbiIsIi8vIENvcmUgdmFyaWFibGVzXG4kdmVyc2lvbjogXCIwLjUuM1wiO1xuXG4vLyBDb3JlIGZlYXR1cmVzXG4kcnRsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gQ29yZSBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiAjMDA3NEQ5ICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItZGFyazogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAzJSkgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci1saWdodDogbGlnaHRlbigkcHJpbWFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1jb2xvcjogbGlnaHRlbigkcHJpbWFyeS1jb2xvciwgMzcuNSUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1jb2xvci1kYXJrOiBkYXJrZW4oJHNlY29uZGFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1jb2xvci1saWdodDogbGlnaHRlbigkc2Vjb25kYXJ5LWNvbG9yLCAzJSkgIWRlZmF1bHQ7XG5cbi8vIEdyYXkgY29sb3JzXG4kZGFyay1jb2xvcjogIzQ1NGQ1ZCAhZGVmYXVsdDtcbiRsaWdodC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRncmF5LWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA0MCUpICFkZWZhdWx0O1xuJGdyYXktY29sb3ItZGFyazogZGFya2VuKCRncmF5LWNvbG9yLCAyNSUpICFkZWZhdWx0O1xuJGdyYXktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJGdyYXktY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cbiRib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGRhcmstY29sb3IsIDYwJSkgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLWRhcms6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJGJnLWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA2NiUpICFkZWZhdWx0O1xuJGJnLWNvbG9yLWRhcms6IGRhcmtlbigkYmctY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRiZy1jb2xvci1saWdodDogJGxpZ2h0LWNvbG9yICFkZWZhdWx0O1xuXG4vLyBDb250cm9sIGNvbG9yc1xuJHN1Y2Nlc3MtY29sb3I6ICMyRUNDNDAgIWRlZmF1bHQ7XG4kd2FybmluZy1jb2xvcjogI0ZGODUxQiAhZGVmYXVsdDtcbiRlcnJvci1jb2xvcjogI0ZGNDEzNiAhZGVmYXVsdDtcblxuLy8gT3RoZXIgY29sb3JzXG4kY29kZS1jb2xvcjogIzI4OEZFRCAhZGVmYXVsdDtcbiRoaWdobGlnaHQtY29sb3I6ICNmZmU5YjMgIWRlZmF1bHQ7XG4kYm9keS1iZzogJGJnLWNvbG9yLWxpZ2h0ICFkZWZhdWx0O1xuJGJvZHktZm9udC1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNSUpICFkZWZhdWx0O1xuJGxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGxpbmstY29sb3ItZGFyazogZGFya2VuKCRsaW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJGxpbmstY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJGxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEZvbnRzXG4vLyBDcmVkaXQ6IGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTUvMTEvdXNpbmctc3lzdGVtLXVpLWZvbnRzLXByYWN0aWNhbC1ndWlkZS9cbiRiYXNlLWZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8gIWRlZmF1bHQ7XG4kbW9uby1mb250LWZhbWlseTogXCJTRiBNb25vXCIsIFwiU2Vnb2UgVUkgTW9ub1wiLCBcIlJvYm90byBNb25vXCIsIE1lbmxvLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZmFsbGJhY2stZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRjamstemgtaGFucy1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksIFwiUGluZ0ZhbmcgU0NcIiwgXCJIaXJhZ2lubyBTYW5zIEdCXCIsIFwiTWljcm9zb2Z0IFlhSGVpXCIsICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjamstemgtaGFudC1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksIFwiUGluZ0ZhbmcgVENcIiwgXCJIaXJhZ2lubyBTYW5zIENOU1wiLCBcIk1pY3Jvc29mdCBKaGVuZ0hlaVwiLCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY2prLWpwLWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseSwgXCJIaXJhZ2lubyBTYW5zXCIsIFwiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvXCIsIFwiWXUgR290aGljXCIsIFl1R290aGljLCBNZWlyeW8sICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjamsta28tZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIk1hbGd1biBHb3RoaWNcIiwgJGZhbGxiYWNrLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJvZHktZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vIFVuaXQgc2l6ZXNcbiR1bml0LW86IC4wNXJlbSAhZGVmYXVsdDtcbiR1bml0LWg6IC4xcmVtICFkZWZhdWx0O1xuJHVuaXQtMTogLjJyZW0gIWRlZmF1bHQ7XG4kdW5pdC0yOiAuNHJlbSAhZGVmYXVsdDtcbiR1bml0LTM6IC42cmVtICFkZWZhdWx0O1xuJHVuaXQtNDogLjhyZW0gIWRlZmF1bHQ7XG4kdW5pdC01OiAxcmVtICFkZWZhdWx0O1xuJHVuaXQtNjogMS4ycmVtICFkZWZhdWx0O1xuJHVuaXQtNzogMS40cmVtICFkZWZhdWx0O1xuJHVuaXQtODogMS42cmVtICFkZWZhdWx0O1xuJHVuaXQtOTogMS44cmVtICFkZWZhdWx0O1xuJHVuaXQtMTA6IDJyZW0gIWRlZmF1bHQ7XG4kdW5pdC0xMjogMi40cmVtICFkZWZhdWx0O1xuJHVuaXQtMTY6IDMuMnJlbSAhZGVmYXVsdDtcblxuLy8gRm9udCBzaXplc1xuJGh0bWwtZm9udC1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJGh0bWwtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiRmb250LXNpemU6IC44cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogLjdyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAuOXJlbSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodDogMS4ycmVtICFkZWZhdWx0O1xuXG4vLyBTaXplc1xuJGxheW91dC1zcGFjaW5nOiAkdW5pdC0yICFkZWZhdWx0O1xuJGxheW91dC1zcGFjaW5nLXNtOiAkdW5pdC0xICFkZWZhdWx0O1xuJGxheW91dC1zcGFjaW5nLWxnOiAkdW5pdC00ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXM6ICR1bml0LWggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoOiAkdW5pdC1vICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aC1sZzogJHVuaXQtaCAhZGVmYXVsdDtcbiRjb250cm9sLXNpemU6ICR1bml0LTkgIWRlZmF1bHQ7XG4kY29udHJvbC1zaXplLXNtOiAkdW5pdC03ICFkZWZhdWx0O1xuJGNvbnRyb2wtc2l6ZS1sZzogJHVuaXQtMTAgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXg6ICR1bml0LTIgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXgtc206ICR1bml0LTIgKiAuNzUgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXgtbGc6ICR1bml0LTIgKiAxLjUgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXk6ICgkY29udHJvbC1zaXplIC0gJGxpbmUtaGVpZ2h0KSAvIDIgLSAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy15LXNtOiAoJGNvbnRyb2wtc2l6ZS1zbSAtICRsaW5lLWhlaWdodCkgLyAyIC0gJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjb250cm9sLXBhZGRpbmcteS1sZzogKCRjb250cm9sLXNpemUtbGcgLSAkbGluZS1oZWlnaHQpIC8gMiAtICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY29udHJvbC1pY29uLXNpemU6IC44cmVtICFkZWZhdWx0O1xuXG4kY29udHJvbC13aWR0aC14czogMTgwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1zbTogMzIwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1tZDogNjQwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1sZzogOTYwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC14bDogMTI4MHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzXG4kc2l6ZS14czogNDgwcHggIWRlZmF1bHQ7XG4kc2l6ZS1zbTogNjAwcHggIWRlZmF1bHQ7XG4kc2l6ZS1tZDogODQwcHggIWRlZmF1bHQ7XG4kc2l6ZS1sZzogOTYwcHggIWRlZmF1bHQ7XG4kc2l6ZS14bDogMTI4MHB4ICFkZWZhdWx0O1xuJHNpemUtMng6IDE0NDBweCAhZGVmYXVsdDtcblxuJHJlc3BvbnNpdmUtYnJlYWtwb2ludDogJHNpemUteHMgIWRlZmF1bHQ7XG5cbi8vIFotaW5kZXhcbiR6aW5kZXgtMDogMSAhZGVmYXVsdDtcbiR6aW5kZXgtMTogMTAwICFkZWZhdWx0O1xuJHppbmRleC0yOiAyMDAgIWRlZmF1bHQ7XG4kemluZGV4LTM6IDMwMCAhZGVmYXVsdDtcbiR6aW5kZXgtNDogNDAwICFkZWZhdWx0O1xuIiwiLy8gTWl4aW5zXG5AaW1wb3J0IFwibWl4aW5zL2F2YXRhclwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY29sb3JcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdG9hc3RcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdHJhbnNpdGlvblwiO1xuIiwiLy8gQXZhdGFyIG1peGluXG5AbWl4aW4gYXZhdGFyLWJhc2UoJHNpemU6ICR1bml0LTgpIHtcbiAgZm9udC1zaXplOiAkc2l6ZSAvIDI7XG4gIGhlaWdodDogJHNpemU7XG4gIHdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50IG1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMyUpO1xuICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkY29sb3IpO1xuICB9XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3IsIDIlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDUlKTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvciwgNyUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICB9XG4gICYubG9hZGluZyB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkbGlnaHQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkY29sb3IpO1xuICB9XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLCA1MCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMiUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCA1JSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmLmxvYWRpbmcge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDbGVhcmZpeCBtaXhpblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxufVxuIiwiLy8gQmFja2dyb3VuZCBjb2xvciB1dGlsaXR5IG1peGluXG5AbWl4aW4gYmctY29sb3ItdmFyaWFudCgkbmFtZTogXCIuYmctcHJpbWFyeVwiLCAkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gICN7JG5hbWV9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG5cbiAgICBAaWYgKGxpZ2h0bmVzcygkY29sb3IpIDwgNjApIHtcbiAgICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIFRleHQgY29sb3IgdXRpbGl0eSBtaXhpblxuQG1peGluIHRleHQtY29sb3ItdmFyaWFudCgkbmFtZTogXCIudGV4dC1wcmltYXJ5XCIsICRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgI3skbmFtZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICBhI3skbmFtZX0ge1xuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgNSUpO1xuICAgIH1cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCA1JSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBMYWJlbCBiYXNlIHN0eWxlXG5AbWl4aW4gbGFiZWwtYmFzZSgpIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHBhZGRpbmc6IC4xcmVtIC4ycmVtO1xufVxuXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkY29sb3I6ICRsaWdodC1jb2xvciwgJGJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBNYXJnaW4gdXRpbGl0eSBtaXhpblxuQG1peGluIG1hcmdpbi12YXJpYW50KCRpZDogMSwgJHNpemU6ICR1bml0LTEpIHtcbiAgLm0tI3skaWR9IHtcbiAgICBtYXJnaW46ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItI3skaWR9IHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLSN7JGlkfSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItI3skaWR9IHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtI3skaWR9IHtcbiAgICBtYXJnaW4tdG9wOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LSN7JGlkfSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LSN7JGlkfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFBhZGRpbmcgdXRpbGl0eSBtaXhpblxuQG1peGluIHBhZGRpbmctdmFyaWFudCgkaWQ6IDEsICRzaXplOiAkdW5pdC0xKSB7XG4gIC5wLSN7JGlkfSB7XG4gICAgcGFkZGluZzogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi0jeyRpZH0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLSN7JGlkfSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLSN7JGlkfSB7XG4gICAgcGFkZGluZy1yaWdodDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC0jeyRpZH0ge1xuICAgIHBhZGRpbmctdG9wOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LSN7JGlkfSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cbiAgXG4gIC5weS0jeyRpZH0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2l6ZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBDb21wb25lbnQgZm9jdXMgc2hhZG93XG5AbWl4aW4gY29udHJvbC1zaGFkb3coJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBib3gtc2hhZG93OiAwIDAgMCAuMXJlbSByZ2JhKCRjb2xvciwgLjIpO1xufVxuXG4vLyBTaGFkb3cgbWl4aW5cbkBtaXhpbiBzaGFkb3ctdmFyaWFudCgkb2Zmc2V0KSB7XG4gIGJveC1zaGFkb3c6IDAgJG9mZnNldCAoJG9mZnNldCArIC4wNXJlbSkgKiAyIHJnYmEoJGRhcmstY29sb3IsIC4zKTtcbn1cbiIsIi8vIFRleHQgRWxsaXBzaXNcbkBtaXhpbiB0ZXh0LWVsbGlwc2lzKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIFRvYXN0IHZhcmlhbnQgbWl4aW5cbkBtaXhpbiB0b2FzdC12YXJpYW50KCRjb2xvcjogJGRhcmstY29sb3IpIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsIC45KTtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBDb21wb25lbnQgdHJhbnNpdGlvblxuQG1peGluIGNvbnRyb2wtdHJhbnNpdGlvbigpIHtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlO1xufVxuIiwiLy8gSWNvbiB2YXJpYWJsZXNcbiRpY29uLWJvcmRlci13aWR0aDogJGJvcmRlci13aWR0aC1sZztcbiRpY29uLXByZWZpeDogXCJpY29uXCI7XG5cbi8vIEljb24gYmFzZSBzdHlsZVxuLiN7JGljb24tcHJlZml4fSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGhlaWdodDogMWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMWVtO1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG5cbiAgLy8gSWNvbiBzaXplc1xuICAmLmljb24tMngge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG5cbiAgJi5pY29uLTN4IHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgfVxuXG4gICYuaWNvbi00eCB7XG4gICAgZm9udC1zaXplOiAzLjJyZW07XG4gIH1cbn1cblxuLy8gQ29tcG9uZW50IGljb24gc3VwcG9ydFxuLmFjY29yZGlvbixcbi5idG4sXG4udG9hc3QsXG4ubWVudSB7XG4gIC4jeyRpY29uLXByZWZpeH0ge1xuICAgIHZlcnRpY2FsLWFsaWduOiAtMTAlO1xuICB9XG59XG5cbi5idG4tbGcge1xuICAuI3skaWNvbi1wcmVmaXh9IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogLTE1JTtcbiAgfVxufVxuIiwiLy8gSWNvbiBhcnJvd3Ncbi5pY29uLWFycm93LWRvd24sXG4uaWNvbi1hcnJvdy1sZWZ0LFxuLmljb24tYXJyb3ctcmlnaHQsXG4uaWNvbi1hcnJvdy11cCxcbi5pY29uLWRvd253YXJkLFxuLmljb24tYmFjayxcbi5pY29uLWZvcndhcmQsXG4uaWNvbi11cHdhcmQge1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjY1ZW07XG4gICAgd2lkdGg6IC42NWVtO1xuICB9XG59XG5cbi5pY29uLWFycm93LWRvd24ge1xuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC03NSUpIHJvdGF0ZSgyMjVkZWcpO1xuICB9XG59XG5cbi5pY29uLWFycm93LWxlZnQge1xuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yNSUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbi5pY29uLWFycm93LXJpZ2h0IHtcbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNzUlLCAtNTAlKSByb3RhdGUoMTM1ZGVnKTtcbiAgfVxufVxuXG4uaWNvbi1hcnJvdy11cCB7XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTI1JSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxufVxuXG4uaWNvbi1iYWNrLFxuLmljb24tZm9yd2FyZCB7XG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgICB3aWR0aDogLjhlbTtcbiAgfVxufVxuXG4uaWNvbi1kb3dud2FyZCxcbi5pY29uLXVwd2FyZCB7XG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC44ZW07XG4gICAgd2lkdGg6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaWNvbi1iYWNrIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGxlZnQ6IDU1JTtcbiAgfVxuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbi5pY29uLWRvd253YXJkIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHRvcDogNDUlO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC0xMzVkZWcpO1xuICB9XG59XG5cbi5pY29uLWZvcndhcmQge1xuICAmOjphZnRlciB7XG4gICAgbGVmdDogNDUlO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gIH1cbn1cblxuLmljb24tdXB3YXJkIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHRvcDogNTUlO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxufVxuXG4vLyBJY29uIGNhcmV0XG4uaWNvbi1jYXJldCB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogLjNlbSBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJpZ2h0OiAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0yNSUpO1xuICAgIHdpZHRoOiAwO1xuICB9XG59XG5cbi8vIEljb24gbWVudVxuLmljb24tbWVudSB7XG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgLS4zNWVtLCAwIC4zNWVtO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLy8gSWNvbiBhcHBzXG4uaWNvbi1hcHBzIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgYm94LXNoYWRvdzogLS4zNWVtIC0uMzVlbSwgLS4zNWVtIDAsIC0uMzVlbSAuMzVlbSwgMCAtLjM1ZW0sIDAgLjM1ZW0sIC4zNWVtIC0uMzVlbSwgLjM1ZW0gMCwgLjM1ZW0gLjM1ZW07XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICB3aWR0aDogM3B4O1xuICB9XG59XG4iLCJcbi8vIEljb24gcmVzaXplXG4uaWNvbi1yZXNpemUtaG9yaXosXG4uaWNvbi1yZXNpemUtdmVydCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjQ1ZW07XG4gICAgd2lkdGg6IC40NWVtO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTkwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwJSkgcm90YXRlKDIyNWRlZyk7XG4gIH1cbn1cblxuLmljb24tcmVzaXplLWhvcml6IHtcbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gIH1cbn1cblxuLy8gSWNvbiBtb3JlXG4uaWNvbi1tb3JlLWhvcml6LFxuLmljb24tbW9yZS12ZXJ0IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgYm94LXNoYWRvdzogLS40ZW0gMCwgLjRlbSAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogM3B4O1xuICAgIHdpZHRoOiAzcHg7XG4gIH1cbn1cblxuLmljb24tbW9yZS12ZXJ0IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAwIC0uNGVtLCAwIC40ZW07XG4gIH1cbn1cblxuLy8gSWNvbiBwbHVzLCBtaW51cywgY3Jvc3Ncbi5pY29uLXBsdXMsXG4uaWNvbi1taW51cyxcbi5pY29uLWNyb3NzIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uaWNvbi1wbHVzLFxuLmljb24tY3Jvc3Mge1xuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLmljb24tY3Jvc3Mge1xuICAmOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxufVxuXG4vLyBJY29uIGNoZWNrXG4uaWNvbi1jaGVjayB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAuNWVtO1xuICAgIHdpZHRoOiAuOWVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC03NSUpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbi8vIEljb24gc3RvcFxuLmljb24tc3RvcCB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogJGljb24tYm9yZGVyLXdpZHRoO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgd2lkdGg6IDFlbTtcbiAgfVxufVxuXG4vLyBJY29uIHNodXRkb3duXG4uaWNvbi1zaHV0ZG93biB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgJjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC41ZW07XG4gICAgdG9wOiAuMWVtO1xuICAgIHdpZHRoOiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLy8gSWNvbiByZWZyZXNoXG4uaWNvbi1yZWZyZXNoIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDFlbTtcbiAgICB3aWR0aDogMWVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6IC4yZW0gc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMDtcbiAgICBsZWZ0OiA4MCU7XG4gICAgdG9wOiAyMCU7XG4gICAgd2lkdGg6IDA7XG4gIH1cbn1cblxuLy8gSWNvbiBzZWFyY2hcbi5pY29uLXNlYXJjaCB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjc1ZW07XG4gICAgbGVmdDogNSU7XG4gICAgdG9wOiA1JTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgIHdpZHRoOiAuNzVlbTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gICAgbGVmdDogODAlO1xuICAgIHRvcDogODAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgd2lkdGg6IC40ZW07XG4gIH1cbn1cblxuLy8gSWNvbiBlZGl0XG4uaWNvbi1lZGl0IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC40ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTQwJSwgLTYwJSkgcm90YXRlKC00NWRlZyk7XG4gICAgd2lkdGg6IC44NWVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6IC4xNWVtIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IDUlO1xuICAgIHRvcDogOTUlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICB3aWR0aDogMDtcbiAgfVxufVxuXG4vLyBJY29uIGRlbGV0ZVxuLmljb24tZGVsZXRlIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC43NWVtO1xuICAgIHRvcDogNjAlO1xuICAgIHdpZHRoOiAuNzVlbTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGJveC1zaGFkb3c6IC0uMjVlbSAuMmVtLCAuMjVlbSAuMmVtO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gICAgdG9wOiAkaWNvbi1ib3JkZXItd2lkdGgvMjtcbiAgICB3aWR0aDogLjVlbTtcbiAgfVxufVxuXG4vLyBJY29uIHNoYXJlXG4uaWNvbi1zaGFyZSB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjRlbTtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHRvcDogLjI1ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEyNSUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIHdpZHRoOiAuNGVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNzUlIDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC41ZW07XG4gICAgd2lkdGg6IC42ZW07XG4gIH1cbn1cblxuLy8gSWNvbiBmbGFnXG4uaWNvbi1mbGFnIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDFlbTtcbiAgICBsZWZ0OiAxNSU7XG4gICAgd2lkdGg6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC42NWVtO1xuICAgIHRvcDogMzUlO1xuICAgIGxlZnQ6IDYwJTtcbiAgICB3aWR0aDogLjhlbTtcbiAgfVxufVxuXG4vLyBJY29uIGJvb2ttYXJrXG4uaWNvbi1ib29rbWFyayB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAuOWVtO1xuICAgIHdpZHRoOiAuOGVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjVlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAzNSUpIHJvdGF0ZSgtNDVkZWcpIHNrZXcoMTVkZWcsIDE1ZGVnKTtcbiAgICB3aWR0aDogLjVlbTtcbiAgfVxufVxuXG4vLyBJY29uIGRvd25sb2FkICYgdXBsb2FkXG4uaWNvbi1kb3dubG9hZCxcbi5pY29uLXVwbG9hZCB7XG4gIGJvcmRlci1ib3R0b206ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAuNWVtO1xuICAgIHdpZHRoOiAuNWVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC02MCUpIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAuNmVtO1xuICAgIHRvcDogNDAlO1xuICAgIHdpZHRoOiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLmljb24tdXBsb2FkIHtcbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNjAlKSByb3RhdGUoNDVkZWcpO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICB0b3A6IDUwJTtcbiAgfVxufVxuIiwiLy8gSWNvbiB0aW1lXG4uaWNvbi10aW1lIHtcbiAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAuNGVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC03NSUpO1xuICAgIHdpZHRoOiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjNlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNzUlKSByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA5MCU7XG4gICAgd2lkdGg6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4vLyBJY29uIG1haWxcbi5pY29uLW1haWwge1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjhlbTtcbiAgICB3aWR0aDogMWVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC41ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTkwJSkgcm90YXRlKC00NWRlZykgc2tldygxMGRlZywgMTBkZWcpO1xuICAgIHdpZHRoOiAuNWVtO1xuICB9XG59XG5cbi8vIEljb24gcGVvcGxlXG4uaWNvbi1wZW9wbGUge1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC40NWVtO1xuICAgIHRvcDogMjUlO1xuICAgIHdpZHRoOiAuNDVlbTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSA1MCUgMCAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAuNGVtO1xuICAgIHRvcDogNzUlO1xuICAgIHdpZHRoOiAuOWVtO1xuICB9XG59XG5cbi8vIEljb24gbWVzc2FnZVxuLmljb24tbWVzc2FnZSB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC44ZW07XG4gICAgbGVmdDogNjUlO1xuICAgIHRvcDogNDAlO1xuICAgIHdpZHRoOiAuN2VtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC4zZW07XG4gICAgbGVmdDogMTAlO1xuICAgIHRvcDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtOTAlKSByb3RhdGUoNDVkZWcpO1xuICAgIHdpZHRoOiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLy8gSWNvbiBwaG90b1xuLmljb24tcGhvdG8ge1xuICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC4yNWVtO1xuICAgIGxlZnQ6IDM1JTtcbiAgICB0b3A6IDM1JTtcbiAgICB3aWR0aDogLjI1ZW07XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAuNWVtO1xuICAgIGxlZnQ6IDYwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAyNSUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIHdpZHRoOiAuNWVtO1xuICB9XG59XG5cbi8vIEljb24gbGlua1xuLmljb24tbGluayB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1ZW0gMCAwIDVlbTtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC41ZW07XG4gICAgd2lkdGg6IC43NWVtO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTcwJSwgLTQ1JSkgcm90YXRlKC00NWRlZyk7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zMCUsIC01NSUpIHJvdGF0ZSgxMzVkZWcpO1xuICB9XG59XG5cbi8vIEljb24gbG9jYXRpb25cbi5pY29uLWxvY2F0aW9uIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlIDUwJSA1MCUgMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjhlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNjAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICB3aWR0aDogLjhlbTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtODAlKTtcbiAgICB3aWR0aDogLjJlbTtcbiAgfVxufVxuXG4vLyBJY29uIGVtb2ppXG4uaWNvbi1lbW9qaSB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3gtc2hhZG93OiAtLjE3ZW0gLS4xNWVtLCAuMTdlbSAtLjE1ZW07XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IC4xZW07XG4gICAgd2lkdGg6IC4xZW07XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogLjVlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNDAlKSByb3RhdGUoLTEzNWRlZyk7XG4gICAgd2lkdGg6IC41ZW07XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSw4RUFBb0Y7QWFDcEYsQUFBQSxLQUFLLENBQVksRUFDZixVQUFVLEVBQUUsVUFBVSxFQUN0QixPQUFPLEVBQUUsWUFBWSxFQUNyQixTQUFTLEVBQUUsT0FBTyxFQUNsQixVQUFVLEVBQUUsTUFBTSxFQUNsQixNQUFNLEVBQUUsR0FBRyxFQUNYLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLFdBQVcsRUFBRSxPQUFPLEVBQ3BCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLEtBQUssRUFBRSxHQUFHLEdBc0JYOztBQS9CRCxBQVVFLEtBVkcsQUFVRixRQUFRLEVBVlgsS0FBSyxBQVdGLE9BQU8sQ0FBQyxFQUNQLE9BQU8sRUFBRSxLQUFLLEVBQ2QsSUFBSSxFQUFFLEdBQUcsRUFDVCxRQUFRLEVBQUUsUUFBUSxFQUNsQixHQUFHLEVBQUUsR0FBRyxFQUNSLFNBQVMsRUFBRSxxQkFBcUIsR0FDakM7O0FBakJILEFBb0JFLEtBcEJHLEFBb0JGLFFBQVEsQ0FBQyxFQUNSLFNBQVMsRUFBRSxNQUFNLEdBQ2xCOztBQXRCSCxBQXdCRSxLQXhCRyxBQXdCRixRQUFRLENBQUMsRUFDUixTQUFTLEVBQUUsTUFBTSxHQUNsQjs7QUExQkgsQUE0QkUsS0E1QkcsQUE0QkYsUUFBUSxDQUFDLEVBQ1IsU0FBUyxFQUFFLE1BQU0sR0FDbEI7O0FBSUgsQUFJRSxVQUpRLENBSVIsS0FBSyxFQUhQLElBQUksQ0FHRixLQUFLLEVBRlAsTUFBTSxDQUVKLEtBQUssRUFEUCxLQUFLLENBQ0gsS0FBSyxDQUFZLEVBQ2YsY0FBYyxFQUFFLElBQUksR0FDckI7O0FBR0gsQUFDRSxPQURLLENBQ0wsS0FBSyxDQUFZLEVBQ2YsY0FBYyxFQUFFLElBQUksR0FDckI7O0FDbERILEFBUUUsZ0JBUmMs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 */