spectre-icons.css 54 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. /*! Spectre.css Icons v0.5.7 | 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 { content: ""; 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; 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; height: 0.1rem; width: .8em; }
  15. .icon-downward::after, .icon-upward::after { background: currentColor; 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; height: 0; transform: translate(-50%, -25%); width: 0; }
  25. .icon-menu::before { background: currentColor; box-shadow: 0 -.35em, 0 .35em; 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; 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; 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%; 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; height: 0.1rem; width: 100%; }
  35. .icon-plus::after, .icon-cross::after { background: currentColor; 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; 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; 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; height: 1em; width: 1em; }
  45. .icon-refresh::after { border: .2em solid currentColor; border-top-color: transparent; border-left-color: transparent; height: 0; left: 80%; top: 20%; width: 0; }
  46. .icon-search::before { border: 0.1rem solid currentColor; border-radius: 50%; height: .75em; left: 5%; top: 5%; transform: translate(0, 0) rotate(45deg); width: .75em; }
  47. .icon-search::after { background: currentColor; height: 0.1rem; left: 80%; top: 80%; transform: translate(-50%, -50%) rotate(45deg); width: .4em; }
  48. .icon-edit::before { border: 0.1rem solid currentColor; 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; 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; height: .75em; top: 60%; width: .75em; }
  51. .icon-delete::after { background: currentColor; box-shadow: -.25em .2em, .25em .2em; 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; 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; height: .5em; width: .6em; }
  55. .icon-flag::before { background: currentColor; 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; 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; height: .9em; width: .8em; }
  58. .icon-bookmark::after { border: 0.1rem solid currentColor; border-bottom: 0; border-left: 0; border-radius: 0.1rem; 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; height: .5em; width: .5em; transform: translate(-50%, -60%) rotate(-135deg); }
  61. .icon-download::after, .icon-upload::after { background: currentColor; 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-copy::before { border: 0.1rem solid currentColor; border-radius: 0.1rem; border-right: 0; border-bottom: 0; height: .8em; left: 40%; top: 35%; width: .8em; }
  65. .icon-copy::after { border: 0.1rem solid currentColor; border-radius: 0.1rem; height: .8em; left: 60%; top: 60%; width: .8em; }
  66. .icon-time { border: 0.1rem solid currentColor; border-radius: 50%; }
  67. .icon-time::before { background: currentColor; height: .4em; transform: translate(-50%, -75%); width: 0.1rem; }
  68. .icon-time::after { background: currentColor; height: .3em; transform: translate(-50%, -75%) rotate(90deg); transform-origin: 50% 90%; width: 0.1rem; }
  69. .icon-mail::before { border: 0.1rem solid currentColor; border-radius: 0.1rem; height: .8em; width: 1em; }
  70. .icon-mail::after { border: 0.1rem solid currentColor; border-right: 0; border-top: 0; height: .5em; transform: translate(-50%, -90%) rotate(-45deg) skew(10deg, 10deg); width: .5em; }
  71. .icon-people::before { border: 0.1rem solid currentColor; border-radius: 50%; height: .45em; top: 25%; width: .45em; }
  72. .icon-people::after { border: 0.1rem solid currentColor; border-radius: 50% 50% 0 0; height: .4em; top: 75%; width: .9em; }
  73. .icon-message { border: 0.1rem solid currentColor; border-bottom: 0; border-radius: 0.1rem; border-right: 0; }
  74. .icon-message::before { border: 0.1rem solid currentColor; border-bottom-right-radius: 0.1rem; border-left: 0; border-top: 0; height: .8em; left: 65%; top: 40%; width: .7em; }
  75. .icon-message::after { background: currentColor; border-radius: 0.1rem; height: .3em; left: 10%; top: 100%; transform: translate(0, -90%) rotate(45deg); width: 0.1rem; }
  76. .icon-photo { border: 0.1rem solid currentColor; border-radius: 0.1rem; }
  77. .icon-photo::before { border: 0.1rem solid currentColor; border-radius: 50%; height: .25em; left: 35%; top: 35%; width: .25em; }
  78. .icon-photo::after { border: 0.1rem solid currentColor; border-bottom: 0; border-left: 0; height: .5em; left: 60%; transform: translate(-50%, 25%) rotate(-45deg); width: .5em; }
  79. .icon-link::before, .icon-link::after { border: 0.1rem solid currentColor; border-radius: 5em 0 0 5em; border-right: 0; height: .5em; width: .75em; }
  80. .icon-link::before { transform: translate(-70%, -45%) rotate(-45deg); }
  81. .icon-link::after { transform: translate(-30%, -55%) rotate(135deg); }
  82. .icon-location::before { border: 0.1rem solid currentColor; border-radius: 50% 50% 50% 0; height: .8em; transform: translate(-50%, -60%) rotate(-45deg); width: .8em; }
  83. .icon-location::after { border: 0.1rem solid currentColor; border-radius: 50%; height: .2em; transform: translate(-50%, -80%); width: .2em; }
  84. .icon-emoji { border: 0.1rem solid currentColor; border-radius: 50%; }
  85. .icon-emoji::before { border-radius: 50%; box-shadow: -.17em -.1em, .17em -.1em; height: .15em; width: .15em; }
  86. .icon-emoji::after { border: 0.1rem solid currentColor; border-bottom-color: transparent; border-radius: 50%; border-right-color: transparent; height: .5em; transform: translate(-50%, -40%) rotate(-135deg); width: .5em; }
  87. /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY3RyZS1pY29ucy5jc3MiLCJzb3VyY2VzIjpbInNwZWN0cmUtaWNvbnMuc2NzcyIsInNwZWN0cmUvX3ZhcmlhYmxlcy5zY3NzIiwic3BlY3RyZS9fbWl4aW5zLnNjc3MiLCJzcGVjdHJlL21peGlucy9fYXZhdGFyLnNjc3MiLCJzcGVjdHJlL21peGlucy9fYnV0dG9uLnNjc3MiLCJzcGVjdHJlL21peGlucy9fY2xlYXJmaXguc2NzcyIsInNwZWN0cmUvbWl4aW5zL19jb2xvci5zY3NzIiwic3BlY3RyZS9taXhpbnMvX2xhYmVsLnNjc3MiLCJzcGVjdHJlL21peGlucy9fcG9zaXRpb24uc2NzcyIsInNwZWN0cmUvbWl4aW5zL19zaGFkb3cuc2NzcyIsInNwZWN0cmUvbWl4aW5zL190ZXh0LnNjc3MiLCJzcGVjdHJlL21peGlucy9fdG9hc3Quc2NzcyIsInNwZWN0cmUvaWNvbnMvX2ljb25zLWNvcmUuc2NzcyIsInNwZWN0cmUvaWNvbnMvX2ljb25zLW5hdmlnYXRpb24uc2NzcyIsInNwZWN0cmUvaWNvbnMvX2ljb25zLWFjdGlvbi5zY3NzIiwic3BlY3RyZS9pY29ucy9faWNvbnMtb2JqZWN0LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJzcGVjdHJlL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcInNwZWN0cmUvbWl4aW5zXCI7XG5cbi8qISBTcGVjdHJlLmNzcyBJY29ucyB2I3skdmVyc2lvbn0gfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vcGljdHVyZXBhbjIvc3BlY3RyZSAqL1xuLy8gSWNvbnNcbkBpbXBvcnQgXCJzcGVjdHJlL2ljb25zL2ljb25zLWNvcmVcIjtcbkBpbXBvcnQgXCJzcGVjdHJlL2ljb25zL2ljb25zLW5hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJzcGVjdHJlL2ljb25zL2ljb25zLWFjdGlvblwiO1xuQGltcG9ydCBcInNwZWN0cmUvaWNvbnMvaWNvbnMtb2JqZWN0XCI7XG4iLCIvLyBDb3JlIHZhcmlhYmxlc1xuJHZlcnNpb246IFwiMC41LjdcIjtcblxuLy8gQ29yZSBmZWF0dXJlc1xuJHJ0bDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIENvcmUgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogIzMwODVFRSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLWRhcms6IGRhcmtlbigkcHJpbWFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDM3LjUlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3ItZGFyazogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHNlY29uZGFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuXG4vLyBHcmF5IGNvbG9yc1xuJGRhcmstY29sb3I6ICM0NTRkNWQgIWRlZmF1bHQ7XG4kbGlnaHQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNDAlKSAhZGVmYXVsdDtcbiRncmF5LWNvbG9yLWRhcms6IGRhcmtlbigkZ3JheS1jb2xvciwgMjUlKSAhZGVmYXVsdDtcbiRncmF5LWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRncmF5LWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG4kYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA2MCUpICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci1kYXJrOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRiZy1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNjYlKSAhZGVmYXVsdDtcbiRiZy1jb2xvci1kYXJrOiBkYXJrZW4oJGJnLWNvbG9yLCAzJSkgIWRlZmF1bHQ7XG4kYmctY29sb3ItbGlnaHQ6ICRsaWdodC1jb2xvciAhZGVmYXVsdDtcblxuLy8gQ29udHJvbCBjb2xvcnNcbiRzdWNjZXNzLWNvbG9yOiAjMzJiNjQzICFkZWZhdWx0O1xuJHdhcm5pbmctY29sb3I6ICNmZmI3MDAgIWRlZmF1bHQ7XG4kZXJyb3ItY29sb3I6ICNlODU2MDAgIWRlZmF1bHQ7XG5cbi8vIE90aGVyIGNvbG9yc1xuJGNvZGUtY29sb3I6ICNkNzNlNDggIWRlZmF1bHQ7XG4kaGlnaGxpZ2h0LWNvbG9yOiAjZmZlOWIzICFkZWZhdWx0O1xuJGJvZHktYmc6ICRiZy1jb2xvci1saWdodCAhZGVmYXVsdDtcbiRib2R5LWZvbnQtY29sb3I6IGxpZ2h0ZW4oJGRhcmstY29sb3IsIDUlKSAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yLWRhcms6IGRhcmtlbigkbGluay1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRsaW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBGb250c1xuLy8gQ3JlZGl0OiBodHRwczovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE1LzExL3VzaW5nLXN5c3RlbS11aS1mb250cy1wcmFjdGljYWwtZ3VpZGUvXG4kYmFzZS1mb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvICFkZWZhdWx0O1xuJG1vbm8tZm9udC1mYW1pbHk6IFwiU0YgTW9ub1wiLCBcIlNlZ29lIFVJIE1vbm9cIiwgXCJSb2JvdG8gTW9ub1wiLCBNZW5sbywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZhbGxiYWNrLWZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kY2prLXpoLWhhbnMtZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIlBpbmdGYW5nIFNDXCIsIFwiSGlyYWdpbm8gU2FucyBHQlwiLCBcIk1pY3Jvc29mdCBZYUhlaVwiLCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY2prLXpoLWhhbnQtZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIlBpbmdGYW5nIFRDXCIsIFwiSGlyYWdpbm8gU2FucyBDTlNcIiwgXCJNaWNyb3NvZnQgSmhlbmdIZWlcIiwgJGZhbGxiYWNrLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGNqay1qcC1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksIFwiSGlyYWdpbm8gU2Fuc1wiLCBcIkhpcmFnaW5vIEtha3UgR290aGljIFByb1wiLCBcIll1IEdvdGhpY1wiLCBZdUdvdGhpYywgTWVpcnlvLCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY2prLWtvLWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseSwgXCJNYWxndW4gR290aGljXCIsICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRib2R5LWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseSwgJGZhbGxiYWNrLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLyBVbml0IHNpemVzXG4kdW5pdC1vOiAuMDVyZW0gIWRlZmF1bHQ7XG4kdW5pdC1oOiAuMXJlbSAhZGVmYXVsdDtcbiR1bml0LTE6IC4ycmVtICFkZWZhdWx0O1xuJHVuaXQtMjogLjRyZW0gIWRlZmF1bHQ7XG4kdW5pdC0zOiAuNnJlbSAhZGVmYXVsdDtcbiR1bml0LTQ6IC44cmVtICFkZWZhdWx0O1xuJHVuaXQtNTogMXJlbSAhZGVmYXVsdDtcbiR1bml0LTY6IDEuMnJlbSAhZGVmYXVsdDtcbiR1bml0LTc6IDEuNHJlbSAhZGVmYXVsdDtcbiR1bml0LTg6IDEuNnJlbSAhZGVmYXVsdDtcbiR1bml0LTk6IDEuOHJlbSAhZGVmYXVsdDtcbiR1bml0LTEwOiAycmVtICFkZWZhdWx0O1xuJHVuaXQtMTI6IDIuNHJlbSAhZGVmYXVsdDtcbiR1bml0LTE2OiAzLjJyZW0gIWRlZmF1bHQ7XG5cbi8vIEZvbnQgc2l6ZXNcbiRodG1sLWZvbnQtc2l6ZTogMjBweCAhZGVmYXVsdDtcbiRodG1sLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplOiAuOHJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206IC43cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogLjlyZW0gIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQ6IDEuMnJlbSAhZGVmYXVsdDtcblxuLy8gU2l6ZXNcbiRsYXlvdXQtc3BhY2luZzogJHVuaXQtMiAhZGVmYXVsdDtcbiRsYXlvdXQtc3BhY2luZy1zbTogJHVuaXQtMSAhZGVmYXVsdDtcbiRsYXlvdXQtc3BhY2luZy1sZzogJHVuaXQtNCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzOiAkdW5pdC1oICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aDogJHVuaXQtbyAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGgtbGc6ICR1bml0LWggIWRlZmF1bHQ7XG4kY29udHJvbC1zaXplOiAkdW5pdC05ICFkZWZhdWx0O1xuJGNvbnRyb2wtc2l6ZS1zbTogJHVuaXQtNyAhZGVmYXVsdDtcbiRjb250cm9sLXNpemUtbGc6ICR1bml0LTEwICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14OiAkdW5pdC0yICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14LXNtOiAkdW5pdC0yICogLjc1ICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14LWxnOiAkdW5pdC0yICogMS41ICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy15OiAoJGNvbnRyb2wtc2l6ZSAtICRsaW5lLWhlaWdodCkgLyAyIC0gJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjb250cm9sLXBhZGRpbmcteS1zbTogKCRjb250cm9sLXNpemUtc20gLSAkbGluZS1oZWlnaHQpIC8gMiAtICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXktbGc6ICgkY29udHJvbC1zaXplLWxnIC0gJGxpbmUtaGVpZ2h0KSAvIDIgLSAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNvbnRyb2wtaWNvbi1zaXplOiAuOHJlbSAhZGVmYXVsdDtcblxuJGNvbnRyb2wtd2lkdGgteHM6IDE4MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtc206IDMyMHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtbWQ6IDY0MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtbGc6IDk2MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgteGw6IDEyODBweCAhZGVmYXVsdDtcblxuLy8gUmVzcG9uc2l2ZSBicmVha3BvaW50c1xuJHNpemUteHM6IDQ4MHB4ICFkZWZhdWx0O1xuJHNpemUtc206IDYwMHB4ICFkZWZhdWx0O1xuJHNpemUtbWQ6IDg0MHB4ICFkZWZhdWx0O1xuJHNpemUtbGc6IDk2MHB4ICFkZWZhdWx0O1xuJHNpemUteGw6IDEyODBweCAhZGVmYXVsdDtcbiRzaXplLTJ4OiAxNDQwcHggIWRlZmF1bHQ7XG5cbiRyZXNwb25zaXZlLWJyZWFrcG9pbnQ6ICRzaXplLXhzICFkZWZhdWx0O1xuXG4vLyBaLWluZGV4XG4kemluZGV4LTA6IDEgIWRlZmF1bHQ7XG4kemluZGV4LTE6IDEwMCAhZGVmYXVsdDtcbiR6aW5kZXgtMjogMjAwICFkZWZhdWx0O1xuJHppbmRleC0zOiAzMDAgIWRlZmF1bHQ7XG4kemluZGV4LTQ6IDQwMCAhZGVmYXVsdDtcbiIsIi8vIE1peGluc1xuQGltcG9ydCBcIm1peGlucy9hdmF0YXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbG9yXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xhYmVsXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NoYWRvd1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RvYXN0XCI7IiwiLy8gQXZhdGFyIG1peGluXG5AbWl4aW4gYXZhdGFyLWJhc2UoJHNpemU6ICR1bml0LTgpIHtcbiAgZm9udC1zaXplOiAkc2l6ZSAvIDI7XG4gIGhlaWdodDogJHNpemU7XG4gIHdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50IG1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMyUpO1xuICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkY29sb3IpO1xuICB9XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3IsIDIlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDUlKTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvciwgNyUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICB9XG4gICYubG9hZGluZyB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkbGlnaHQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkY29sb3IpO1xuICB9XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLCA1MCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMiUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCA1JSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmLmxvYWRpbmcge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDbGVhcmZpeCBtaXhpblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxufVxuIiwiLy8gQmFja2dyb3VuZCBjb2xvciB1dGlsaXR5IG1peGluXG5AbWl4aW4gYmctY29sb3ItdmFyaWFudCgkbmFtZTogXCIuYmctcHJpbWFyeVwiLCAkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gICN7JG5hbWV9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgIWltcG9ydGFudDtcblxuICAgIEBpZiAobGlnaHRuZXNzKCRjb2xvcikgPCA2MCkge1xuICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gVGV4dCBjb2xvciB1dGlsaXR5IG1peGluXG5AbWl4aW4gdGV4dC1jb2xvci12YXJpYW50KCRuYW1lOiBcIi50ZXh0LXByaW1hcnlcIiwgJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICAjeyRuYW1lfSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG5cbiAgYSN7JG5hbWV9IHtcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDUlKTtcbiAgICB9XG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiBsaWdodGVuKCRjb2xvciwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gTGFiZWwgYmFzZSBzdHlsZVxuQG1peGluIGxhYmVsLWJhc2UoKSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBwYWRkaW5nOiAuMXJlbSAuMnJlbTtcbn1cblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yOiAkbGlnaHQtY29sb3IsICRiZy1jb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gTWFyZ2luIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiBtYXJnaW4tdmFyaWFudCgkaWQ6IDEsICRzaXplOiAkdW5pdC0xKSB7XG4gIC5tLSN7JGlkfSB7XG4gICAgbWFyZ2luOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLSN7JGlkfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC0jeyRpZH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLSN7JGlkfSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LSN7JGlkfSB7XG4gICAgbWFyZ2luLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC0jeyRpZH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS0jeyRpZH0ge1xuICAgIG1hcmdpbi1ib3R0b206ICRzaXplICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBQYWRkaW5nIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiBwYWRkaW5nLXZhcmlhbnQoJGlkOiAxLCAkc2l6ZTogJHVuaXQtMSkge1xuICAucC0jeyRpZH0ge1xuICAgIHBhZGRpbmc6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItI3skaWR9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC0jeyRpZH0ge1xuICAgIHBhZGRpbmctbGVmdDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci0jeyRpZH0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtI3skaWR9IHtcbiAgICBwYWRkaW5nLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC0jeyRpZH0ge1xuICAgIHBhZGRpbmctbGVmdDogJHNpemUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG4gIFxuICAucHktI3skaWR9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gQ29tcG9uZW50IGZvY3VzIHNoYWRvd1xuQG1peGluIGNvbnRyb2wtc2hhZG93KCRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgLjFyZW0gcmdiYSgkY29sb3IsIC4yKTtcbn1cblxuLy8gU2hhZG93IG1peGluXG5AbWl4aW4gc2hhZG93LXZhcmlhbnQoJG9mZnNldCkge1xuICBib3gtc2hhZG93OiAwICRvZmZzZXQgKCRvZmZzZXQgKyAuMDVyZW0pICogMiByZ2JhKCRkYXJrLWNvbG9yLCAuMyk7XG59XG4iLCIvLyBUZXh0IEVsbGlwc2lzXG5AbWl4aW4gdGV4dC1lbGxpcHNpcygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBUb2FzdCB2YXJpYW50IG1peGluXG5AbWl4aW4gdG9hc3QtdmFyaWFudCgkY29sb3I6ICRkYXJrLWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuOTUpO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEljb24gdmFyaWFibGVzXG4kaWNvbi1ib3JkZXItd2lkdGg6ICRib3JkZXItd2lkdGgtbGc7XG4kaWNvbi1wcmVmaXg6IFwiaWNvblwiO1xuXG4vLyBJY29uIGJhc2Ugc3R5bGVcbi4jeyRpY29uLXByZWZpeH0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBoZWlnaHQ6IDFlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDFlbTtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG5cbiAgLy8gSWNvbiBzaXplc1xuICAmLmljb24tMngge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG5cbiAgJi5pY29uLTN4IHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgfVxuXG4gICYuaWNvbi00eCB7XG4gICAgZm9udC1zaXplOiAzLjJyZW07XG4gIH1cbn1cblxuLy8gQ29tcG9uZW50IGljb24gc3VwcG9ydFxuLmFjY29yZGlvbixcbi5idG4sXG4udG9hc3QsXG4ubWVudSB7XG4gIC4jeyRpY29uLXByZWZpeH0ge1xuICAgIHZlcnRpY2FsLWFsaWduOiAtMTAlO1xuICB9XG59XG5cbi5idG4tbGcge1xuICAuI3skaWNvbi1wcmVmaXh9IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogLTE1JTtcbiAgfVxufVxuIiwiLy8gSWNvbiBhcnJvd3Ncbi5pY29uLWFycm93LWRvd24sXG4uaWNvbi1hcnJvdy1sZWZ0LFxuLmljb24tYXJyb3ctcmlnaHQsXG4uaWNvbi1hcnJvdy11cCxcbi5pY29uLWRvd253YXJkLFxuLmljb24tYmFjayxcbi5pY29uLWZvcndhcmQsXG4uaWNvbi11cHdhcmQge1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBoZWlnaHQ6IC42NWVtO1xuICAgIHdpZHRoOiAuNjVlbTtcbiAgfVxufVxuXG4uaWNvbi1hcnJvdy1kb3duIHtcbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNzUlKSByb3RhdGUoMjI1ZGVnKTtcbiAgfVxufVxuXG4uaWNvbi1hcnJvdy1sZWZ0IHtcbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMjUlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxufVxuXG4uaWNvbi1hcnJvdy1yaWdodCB7XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTc1JSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gIH1cbn1cblxuLmljb24tYXJyb3ctdXAge1xuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0yNSUpIHJvdGF0ZSg0NWRlZyk7XG4gIH1cbn1cblxuLmljb24tYmFjayxcbi5pY29uLWZvcndhcmQge1xuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGhlaWdodDogJGljb24tYm9yZGVyLXdpZHRoO1xuICAgIHdpZHRoOiAuOGVtO1xuICB9XG59XG5cbi5pY29uLWRvd253YXJkLFxuLmljb24tdXB3YXJkIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBoZWlnaHQ6IC44ZW07XG4gICAgd2lkdGg6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaWNvbi1iYWNrIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGxlZnQ6IDU1JTtcbiAgfVxuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbi5pY29uLWRvd253YXJkIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHRvcDogNDUlO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC0xMzVkZWcpO1xuICB9XG59XG5cbi5pY29uLWZvcndhcmQge1xuICAmOjphZnRlciB7XG4gICAgbGVmdDogNDUlO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gIH1cbn1cblxuLmljb24tdXB3YXJkIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHRvcDogNTUlO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxufVxuXG4vLyBJY29uIGNhcmV0XG4uaWNvbi1jYXJldCB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogLjNlbSBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJpZ2h0OiAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjUlKTtcbiAgICB3aWR0aDogMDtcbiAgfVxufVxuXG4vLyBJY29uIG1lbnVcbi5pY29uLW1lbnUge1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIC0uMzVlbSwgMCAuMzVlbTtcbiAgICBoZWlnaHQ6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vLyBJY29uIGFwcHNcbi5pY29uLWFwcHMge1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBib3gtc2hhZG93OiAtLjM1ZW0gLS4zNWVtLCAtLjM1ZW0gMCwgLS4zNWVtIC4zNWVtLCAwIC0uMzVlbSwgMCAuMzVlbSwgLjM1ZW0gLS4zNWVtLCAuMzVlbSAwLCAuMzVlbSAuMzVlbTtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICB3aWR0aDogM3B4O1xuICB9XG59XG4iLCIvLyBJY29uIHJlc2l6ZVxuLmljb24tcmVzaXplLWhvcml6LFxuLmljb24tcmVzaXplLXZlcnQge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAuNDVlbTtcbiAgICB3aWR0aDogLjQ1ZW07XG4gIH1cbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtOTAlKSByb3RhdGUoNDVkZWcpO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAlKSByb3RhdGUoMjI1ZGVnKTtcbiAgfVxufVxuXG4uaWNvbi1yZXNpemUtaG9yaXoge1xuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAlLCAtNTAlKSByb3RhdGUoMTM1ZGVnKTtcbiAgfVxufVxuXG4vLyBJY29uIG1vcmVcbi5pY29uLW1vcmUtaG9yaXosXG4uaWNvbi1tb3JlLXZlcnQge1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBib3gtc2hhZG93OiAtLjRlbSAwLCAuNGVtIDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGhlaWdodDogM3B4O1xuICAgIHdpZHRoOiAzcHg7XG4gIH1cbn1cblxuLmljb24tbW9yZS12ZXJ0IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAwIC0uNGVtLCAwIC40ZW07XG4gIH1cbn1cblxuLy8gSWNvbiBwbHVzLCBtaW51cywgY3Jvc3Ncbi5pY29uLXBsdXMsXG4uaWNvbi1taW51cyxcbi5pY29uLWNyb3NzIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgaGVpZ2h0OiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmljb24tcGx1cyxcbi5pY29uLWNyb3NzIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaWNvbi1jcm9zcyB7XG4gICY6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB9XG59XG5cbi8vIEljb24gY2hlY2tcbi5pY29uLWNoZWNrIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgaGVpZ2h0OiAuNWVtO1xuICAgIHdpZHRoOiAuOWVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC03NSUpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbi8vIEljb24gc3RvcFxuLmljb24tc3RvcCB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBoZWlnaHQ6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgIHdpZHRoOiAxZW07XG4gIH1cbn1cblxuLy8gSWNvbiBzaHV0ZG93blxuLmljb24tc2h1dGRvd24ge1xuICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAuNWVtO1xuICAgIHRvcDogLjFlbTtcbiAgICB3aWR0aDogJGljb24tYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi8vIEljb24gcmVmcmVzaFxuLmljb24tcmVmcmVzaCB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogMWVtO1xuICAgIHdpZHRoOiAxZW07XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogLjJlbSBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogMDtcbiAgICBsZWZ0OiA4MCU7XG4gICAgdG9wOiAyMCU7XG4gICAgd2lkdGg6IDA7XG4gIH1cbn1cblxuLy8gSWNvbiBzZWFyY2hcbi5pY29uLXNlYXJjaCB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IC43NWVtO1xuICAgIGxlZnQ6IDUlO1xuICAgIHRvcDogNSU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICB3aWR0aDogLjc1ZW07XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBoZWlnaHQ6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgICBsZWZ0OiA4MCU7XG4gICAgdG9wOiA4MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICB3aWR0aDogLjRlbTtcbiAgfVxufVxuXG4vLyBJY29uIGVkaXRcbi5pY29uLWVkaXQge1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBoZWlnaHQ6IC40ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTQwJSwgLTYwJSkgcm90YXRlKC00NWRlZyk7XG4gICAgd2lkdGg6IC44NWVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6IC4xNWVtIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogMDtcbiAgICBsZWZ0OiA1JTtcbiAgICB0b3A6IDk1JTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwJSk7XG4gICAgd2lkdGg6IDA7XG4gIH1cbn1cblxuLy8gSWNvbiBkZWxldGVcbi5pY29uLWRlbGV0ZSB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGhlaWdodDogLjc1ZW07XG4gICAgdG9wOiA2MCU7XG4gICAgd2lkdGg6IC43NWVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgYm94LXNoYWRvdzogLS4yNWVtIC4yZW0sIC4yNWVtIC4yZW07XG4gICAgaGVpZ2h0OiAkaWNvbi1ib3JkZXItd2lkdGg7XG4gICAgdG9wOiAkaWNvbi1ib3JkZXItd2lkdGgvMjtcbiAgICB3aWR0aDogLjVlbTtcbiAgfVxufVxuXG4vLyBJY29uIHNoYXJlXG4uaWNvbi1zaGFyZSB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBoZWlnaHQ6IC40ZW07XG4gICAgbGVmdDogMTAwJTtcbiAgICB0b3A6IC4yNWVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMjUlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICB3aWR0aDogLjRlbTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDc1JSAwO1xuICAgIGhlaWdodDogLjVlbTtcbiAgICB3aWR0aDogLjZlbTtcbiAgfVxufVxuXG4vLyBJY29uIGZsYWdcbi5pY29uLWZsYWcge1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBoZWlnaHQ6IDFlbTtcbiAgICBsZWZ0OiAxNSU7XG4gICAgd2lkdGg6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgaGVpZ2h0OiAuNjVlbTtcbiAgICB0b3A6IDM1JTtcbiAgICBsZWZ0OiA2MCU7XG4gICAgd2lkdGg6IC44ZW07XG4gIH1cbn1cblxuLy8gSWNvbiBib29rbWFya1xuLmljb24tYm9va21hcmsge1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBoZWlnaHQ6IC45ZW07XG4gICAgd2lkdGg6IC44ZW07XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGhlaWdodDogLjVlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAzNSUpIHJvdGF0ZSgtNDVkZWcpIHNrZXcoMTVkZWcsIDE1ZGVnKTtcbiAgICB3aWR0aDogLjVlbTtcbiAgfVxufVxuXG4vLyBJY29uIGRvd25sb2FkICYgdXBsb2FkXG4uaWNvbi1kb3dubG9hZCxcbi5pY29uLXVwbG9hZCB7XG4gIGJvcmRlci1ib3R0b206ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGhlaWdodDogLjVlbTtcbiAgICB3aWR0aDogLjVlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNjAlKSByb3RhdGUoLTEzNWRlZyk7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICBoZWlnaHQ6IC42ZW07XG4gICAgdG9wOiA0MCU7XG4gICAgd2lkdGg6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaWNvbi11cGxvYWQge1xuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC02MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIHRvcDogNTAlO1xuICB9XG59XG5cbi8vIEljb24gY29weVxuLmljb24tY29weSB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGhlaWdodDogLjhlbTtcbiAgICBsZWZ0OiA0MCU7XG4gICAgdG9wOiAzNSU7XG4gICAgd2lkdGg6IC44ZW07XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBoZWlnaHQ6IC44ZW07XG4gICAgbGVmdDogNjAlO1xuICAgIHRvcDogNjAlO1xuICAgIHdpZHRoOiAuOGVtO1xuICB9XG59IiwiLy8gSWNvbiB0aW1lXG4uaWNvbi10aW1lIHtcbiAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGhlaWdodDogLjRlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNzUlKTtcbiAgICB3aWR0aDogJGljb24tYm9yZGVyLXdpZHRoO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgaGVpZ2h0OiAuM2VtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC03NSUpIHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDkwJTtcbiAgICB3aWR0aDogJGljb24tYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi8vIEljb24gbWFpbFxuLmljb24tbWFpbCB7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGhlaWdodDogLjhlbTtcbiAgICB3aWR0aDogMWVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgaGVpZ2h0OiAuNWVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC05MCUpIHJvdGF0ZSgtNDVkZWcpIHNrZXcoMTBkZWcsIDEwZGVnKTtcbiAgICB3aWR0aDogLjVlbTtcbiAgfVxufVxuXG4vLyBJY29uIHBlb3BsZVxuLmljb24tcGVvcGxlIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGhlaWdodDogLjQ1ZW07XG4gICAgdG9wOiAyNSU7XG4gICAgd2lkdGg6IC40NWVtO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlIDUwJSAwIDA7XG4gICAgaGVpZ2h0OiAuNGVtO1xuICAgIHRvcDogNzUlO1xuICAgIHdpZHRoOiAuOWVtO1xuICB9XG59XG5cbi8vIEljb24gbWVzc2FnZVxuLmljb24tbWVzc2FnZSB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgaGVpZ2h0OiAuOGVtO1xuICAgIGxlZnQ6IDY1JTtcbiAgICB0b3A6IDQwJTtcbiAgICB3aWR0aDogLjdlbTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGhlaWdodDogLjNlbTtcbiAgICBsZWZ0OiAxMCU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC05MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgd2lkdGg6ICRpY29uLWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4vLyBJY29uIHBob3RvXG4uaWNvbi1waG90byB7XG4gIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IC4yNWVtO1xuICAgIGxlZnQ6IDM1JTtcbiAgICB0b3A6IDM1JTtcbiAgICB3aWR0aDogLjI1ZW07XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGhlaWdodDogLjVlbTtcbiAgICBsZWZ0OiA2MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMjUlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICB3aWR0aDogLjVlbTtcbiAgfVxufVxuXG4vLyBJY29uIGxpbmtcbi5pY29uLWxpbmsge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNWVtIDAgMCA1ZW07XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGhlaWdodDogLjVlbTtcbiAgICB3aWR0aDogLjc1ZW07XG4gIH1cbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNzAlLCAtNDUlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTMwJSwgLTU1JSkgcm90YXRlKDEzNWRlZyk7XG4gIH1cbn1cblxuLy8gSWNvbiBsb2NhdGlvblxuLmljb24tbG9jYXRpb24ge1xuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogJGljb24tYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCUgNTAlIDUwJSAwO1xuICAgIGhlaWdodDogLjhlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNjAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICB3aWR0aDogLjhlbTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IC4yZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTgwJSk7XG4gICAgd2lkdGg6IC4yZW07XG4gIH1cbn1cblxuLy8gSWNvbiBlbW9qaVxuLmljb24tZW1vamkge1xuICBib3JkZXI6ICRpY29uLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm94LXNoYWRvdzogLS4xN2VtIC0uMWVtLCAuMTdlbSAtLjFlbTtcbiAgICBoZWlnaHQ6IC4xNWVtO1xuICAgIHdpZHRoOiAuMTVlbTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyOiAkaWNvbi1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogLjVlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNDAlKSByb3RhdGUoLTEzNWRlZyk7XG4gICAgd2lkdGg6IC41ZW07XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSw4RUFBb0Y7QVlDcEYsQUFBQSxLQUFLLENBQVksRUFDZixVQUFVLEVBQUUsVUFBVSxFQUN0QixPQUFPLEVBQUUsWUFBWSxFQUNyQixTQUFTLEVBQUUsT0FBTyxFQUNsQixVQUFVLEVBQUUsTUFBTSxFQUNsQixNQUFNLEVBQUUsR0FBRyxFQUNYLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLFdBQVcsRUFBRSxPQUFPLEVBQ3BCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLEtBQUssRUFBRSxHQUFHLEdBdUJYOztBQWhDRCxBQVVF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 */