spectre-exp.css 91 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291
  1. /*! Spectre.css Experimentals v0.5.3 | MIT License | github.com/picturepan2/spectre */
  2. .form-autocomplete { position: relative; }
  3. .form-autocomplete .form-autocomplete-input { -ms-flex-line-pack: start; align-content: flex-start; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; height: auto; min-height: 1.6rem; padding: 0.1rem; }
  4. .form-autocomplete .form-autocomplete-input.is-focused { box-shadow: 0 0 0 0.1rem rgba(48, 133, 238, 0.2); border-color: #3085EE; }
  5. .form-autocomplete .form-autocomplete-input .form-input { border-color: transparent; box-shadow: none; display: inline-block; -ms-flex: 1 0 auto; flex: 1 0 auto; height: 1.2rem; line-height: 0.8rem; margin: 0.1rem; width: auto; }
  6. .form-autocomplete .menu { left: 0; position: absolute; top: 100%; width: 100%; }
  7. .form-autocomplete.autocomplete-oneline .form-autocomplete-input { -ms-flex-wrap: nowrap; flex-wrap: nowrap; overflow-x: auto; }
  8. .form-autocomplete.autocomplete-oneline .chip { -ms-flex: 1 0 auto; flex: 1 0 auto; }
  9. .calendar { border: 0.05rem solid #e7e9ed; border-radius: 0.1rem; display: block; min-width: 280px; }
  10. .calendar .calendar-nav { -ms-flex-align: center; align-items: center; background: #f8f9fa; border-top-left-radius: 0.1rem; border-top-right-radius: 0.1rem; display: -ms-flexbox; display: flex; font-size: 0.9rem; padding: 0.4rem; }
  11. .calendar .calendar-header, .calendar .calendar-body { display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: center; justify-content: center; padding: 0.4rem 0; }
  12. .calendar .calendar-header .calendar-date, .calendar .calendar-body .calendar-date { -ms-flex: 0 0 14.28%; flex: 0 0 14.28%; max-width: 14.28%; }
  13. .calendar .calendar-header { background: #f8f9fa; border-bottom: 0.05rem solid #e7e9ed; color: #acb3c2; font-size: 0.7rem; text-align: center; }
  14. .calendar .calendar-body { color: #667189; }
  15. .calendar .calendar-date { border: 0; padding: 0.2rem; }
  16. .calendar .calendar-date .date-item { transition: all .2s ease; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: transparent; border: 0.05rem solid transparent; border-radius: 50%; color: #667189; cursor: pointer; font-size: 0.7rem; height: 1.4rem; line-height: 1rem; outline: none; padding: 0.1rem; position: relative; text-align: center; text-decoration: none; vertical-align: middle; white-space: nowrap; width: 1.4rem; }
  17. .calendar .calendar-date .date-item.date-today { border-color: #d3e5fb; color: #3085EE; }
  18. .calendar .calendar-date .date-item:focus { box-shadow: 0 0 0 0.1rem rgba(48, 133, 238, 0.2); }
  19. .calendar .calendar-date .date-item:focus, .calendar .calendar-date .date-item:hover { background: #eff5fe; border-color: #d3e5fb; color: #3085EE; text-decoration: none; }
  20. .calendar .calendar-date .date-item:active, .calendar .calendar-date .date-item.active { background: #227ded; border-color: #1370e3; color: #fff; }
  21. .calendar .calendar-date .date-item.badge::after { position: absolute; top: 3px; right: 3px; transform: translate(50%, -50%); }
  22. .calendar .calendar-date .date-item:disabled, .calendar .calendar-date .date-item.disabled, .calendar .calendar-date .calendar-event:disabled, .calendar .calendar-date .calendar-event.disabled { cursor: default; opacity: .25; pointer-events: none; }
  23. .calendar .calendar-date.prev-month .date-item, .calendar .calendar-date.prev-month .calendar-event, .calendar .calendar-date.next-month .date-item, .calendar .calendar-date.next-month .calendar-event { opacity: .25; }
  24. .calendar .calendar-range { position: relative; }
  25. .calendar .calendar-range::before { background: #e1edfd; content: ""; height: 1.4rem; left: 0; position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
  26. .calendar .calendar-range.range-start::before { left: 50%; }
  27. .calendar .calendar-range.range-end::before { right: 50%; }
  28. .calendar .calendar-range.range-start .date-item, .calendar .calendar-range.range-end .date-item { background: #227ded; border-color: #1370e3; color: #fff; }
  29. .calendar .calendar-range .date-item { color: #3085EE; }
  30. .calendar.calendar-lg .calendar-body { padding: 0; }
  31. .calendar.calendar-lg .calendar-body .calendar-date { border-bottom: 0.05rem solid #e7e9ed; border-right: 0.05rem solid #e7e9ed; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; height: 5.5rem; padding: 0; }
  32. .calendar.calendar-lg .calendar-body .calendar-date:nth-child(7n) { border-right: 0; }
  33. .calendar.calendar-lg .calendar-body .calendar-date:nth-last-child(-n+7) { border-bottom: 0; }
  34. .calendar.calendar-lg .date-item { -ms-flex-item-align: end; align-self: flex-end; height: 1.4rem; margin-right: 0.2rem; margin-top: 0.2rem; }
  35. .calendar.calendar-lg .calendar-range::before { top: 19px; }
  36. .calendar.calendar-lg .calendar-range.range-start::before { left: auto; width: 19px; }
  37. .calendar.calendar-lg .calendar-range.range-end::before { right: 19px; }
  38. .calendar.calendar-lg .calendar-events { -ms-flex-positive: 1; flex-grow: 1; line-height: 1; overflow-y: auto; padding: 0.2rem; }
  39. .calendar.calendar-lg .calendar-event { border-radius: 0.1rem; font-size: 0.7rem; display: block; margin: 0.1rem auto; overflow: hidden; padding: 3px 4px; text-overflow: ellipsis; white-space: nowrap; }
  40. .carousel { background: #f8f9fa; display: block; overflow: hidden; position: relative; width: 100%; -webkit-overflow-scrolling: touch; z-index: 1; }
  41. .carousel .carousel-container { height: 100%; left: 0; position: relative; }
  42. .carousel .carousel-container::before { content: ""; display: block; padding-bottom: 56.25%; }
  43. .carousel .carousel-container .carousel-item { animation: carousel-slideout 1s ease-in-out 1; height: 100%; left: 0; margin: 0; opacity: 0; position: absolute; top: 0; width: 100%; }
  44. .carousel .carousel-container .carousel-item:hover .item-prev, .carousel .carousel-container .carousel-item:hover .item-next { opacity: 1; }
  45. .carousel .carousel-container .item-prev, .carousel .carousel-container .item-next { background: rgba(231, 233, 237, 0.25); border-color: rgba(231, 233, 237, 0.5); color: #e7e9ed; opacity: 0; position: absolute; top: 50%; transition: all .4s ease; transform: translateY(-50%); z-index: 100; }
  46. .carousel .carousel-container .item-prev { left: 1rem; }
  47. .carousel .carousel-container .item-next { right: 1rem; }
  48. .carousel .carousel-locator:nth-of-type(1):checked ~ .carousel-container .carousel-item:nth-of-type(1), .carousel .carousel-locator:nth-of-type(2):checked ~ .carousel-container .carousel-item:nth-of-type(2), .carousel .carousel-locator:nth-of-type(3):checked ~ .carousel-container .carousel-item:nth-of-type(3), .carousel .carousel-locator:nth-of-type(4):checked ~ .carousel-container .carousel-item:nth-of-type(4) { animation: carousel-slidein .75s ease-in-out 1; opacity: 1; z-index: 100; }
  49. .carousel .carousel-locator:nth-of-type(1):checked ~ .carousel-nav .nav-item:nth-of-type(1), .carousel .carousel-locator:nth-of-type(2):checked ~ .carousel-nav .nav-item:nth-of-type(2), .carousel .carousel-locator:nth-of-type(3):checked ~ .carousel-nav .nav-item:nth-of-type(3), .carousel .carousel-locator:nth-of-type(4):checked ~ .carousel-nav .nav-item:nth-of-type(4) { color: #e7e9ed; }
  50. .carousel .carousel-nav { bottom: 0.4rem; display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; left: 50%; position: absolute; transform: translateX(-50%); width: 10rem; z-index: 100; }
  51. .carousel .carousel-nav .nav-item { color: rgba(231, 233, 237, 0.5); display: block; -ms-flex: 1 0 auto; flex: 1 0 auto; height: 1.6rem; margin: 0.2rem; max-width: 2.5rem; position: relative; }
  52. .carousel .carousel-nav .nav-item::before { background: currentColor; content: ""; display: block; height: 0.1rem; position: absolute; top: .5rem; width: 100%; }
  53. @keyframes carousel-slidein { 0% { transform: translateX(100%); }
  54. 100% { transform: translateX(0); } }
  55. @keyframes carousel-slideout { 0% { opacity: 1;
  56. transform: translateX(0); }
  57. 100% { opacity: 1;
  58. transform: translateX(-50%); } }
  59. .comparison-slider { height: 50vh; overflow: hidden; position: relative; width: 100%; -webkit-overflow-scrolling: touch; }
  60. .comparison-slider .comparison-before, .comparison-slider .comparison-after { height: 100%; left: 0; margin: 0; overflow: hidden; position: absolute; top: 0; }
  61. .comparison-slider .comparison-before img, .comparison-slider .comparison-after img { height: 100%; object-fit: cover; object-position: left center; position: absolute; width: 100%; }
  62. .comparison-slider .comparison-before { width: 100%; z-index: 1; }
  63. .comparison-slider .comparison-before .comparison-label { right: 0.8rem; }
  64. .comparison-slider .comparison-after { max-width: 100%; min-width: 0; z-index: 2; }
  65. .comparison-slider .comparison-after::before { background: transparent; content: ""; cursor: default; height: 100%; left: 0; position: absolute; right: 0.8rem; top: 0; z-index: 1; }
  66. .comparison-slider .comparison-after::after { background: currentColor; border-radius: 50%; box-shadow: 0 -5px, 0 5px; color: #fff; content: ""; height: 3px; position: absolute; right: 0.4rem; top: 50%; transform: translate(50%, -50%); width: 3px; }
  67. .comparison-slider .comparison-after .comparison-label { left: 0.8rem; }
  68. .comparison-slider .comparison-resizer { animation: first-run 1.5s 1 ease-in-out; cursor: ew-resize; height: 0.8rem; left: 0; max-width: 100%; min-width: 0.8rem; opacity: 0; outline: none; position: relative; resize: horizontal; top: 50%; transform: translateY(-50%) scaleY(30); width: 0; }
  69. .comparison-slider .comparison-label { background: rgba(69, 77, 93, 0.5); bottom: 0.8rem; color: #fff; padding: 0.2rem 0.4rem; position: absolute; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
  70. @keyframes first-run { 0% { width: 0; }
  71. 25% { width: 2.4rem; }
  72. 50% { width: 0.8rem; }
  73. 75% { width: 1.2rem; }
  74. 100% { width: 0; } }
  75. .filter .filter-tag#tag-0:checked ~ .filter-nav .chip[for="tag-0"], .filter .filter-tag#tag-1:checked ~ .filter-nav .chip[for="tag-1"], .filter .filter-tag#tag-2:checked ~ .filter-nav .chip[for="tag-2"], .filter .filter-tag#tag-3:checked ~ .filter-nav .chip[for="tag-3"], .filter .filter-tag#tag-4:checked ~ .filter-nav .chip[for="tag-4"], .filter .filter-tag#tag-5:checked ~ .filter-nav .chip[for="tag-5"], .filter .filter-tag#tag-6:checked ~ .filter-nav .chip[for="tag-6"], .filter .filter-tag#tag-7:checked ~ .filter-nav .chip[for="tag-7"], .filter .filter-tag#tag-8:checked ~ .filter-nav .chip[for="tag-8"] { background: #3085EE; color: #fff; }
  76. .filter .filter-tag#tag-1:checked ~ .filter-body .filter-item:not([data-tag~="tag-1"]), .filter .filter-tag#tag-2:checked ~ .filter-body .filter-item:not([data-tag~="tag-2"]), .filter .filter-tag#tag-3:checked ~ .filter-body .filter-item:not([data-tag~="tag-3"]), .filter .filter-tag#tag-4:checked ~ .filter-body .filter-item:not([data-tag~="tag-4"]), .filter .filter-tag#tag-5:checked ~ .filter-body .filter-item:not([data-tag~="tag-5"]), .filter .filter-tag#tag-6:checked ~ .filter-body .filter-item:not([data-tag~="tag-6"]), .filter .filter-tag#tag-7:checked ~ .filter-body .filter-item:not([data-tag~="tag-7"]), .filter .filter-tag#tag-8:checked ~ .filter-body .filter-item:not([data-tag~="tag-8"]) { display: none; }
  77. .filter .filter-nav { margin: 0.4rem 0; }
  78. .filter .filter-body { display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  79. .meter { -webkit-appearance: none; -moz-appearance: none; appearance: none; background: #f8f9fa; border: 0; border-radius: 0.1rem; display: block; width: 100%; height: 0.8rem; }
  80. .meter::-webkit-meter-inner-element { display: block; }
  81. .meter::-webkit-meter-bar, .meter::-webkit-meter-optimum-value, .meter::-webkit-meter-suboptimum-value, .meter::-webkit-meter-even-less-good-value { border-radius: 0.1rem; }
  82. .meter::-webkit-meter-bar { background: #f8f9fa; }
  83. .meter::-webkit-meter-optimum-value { background: #32b643; }
  84. .meter::-webkit-meter-suboptimum-value { background: #ffb700; }
  85. .meter::-webkit-meter-even-less-good-value { background: #e85600; }
  86. .meter::-moz-meter-bar, .meter:-moz-meter-optimum, .meter:-moz-meter-sub-optimum, .meter:-moz-meter-sub-sub-optimum { border-radius: 0.1rem; }
  87. .meter:-moz-meter-optimum::-moz-meter-bar { background: #32b643; }
  88. .meter:-moz-meter-sub-optimum::-moz-meter-bar { background: #ffb700; }
  89. .meter:-moz-meter-sub-sub-optimum::-moz-meter-bar { background: #e85600; }
  90. .off-canvas { display: -ms-flexbox; display: flex; -ms-flex-flow: nowrap; flex-flow: nowrap; height: 100%; position: relative; width: 100%; }
  91. .off-canvas .off-canvas-toggle { display: block; position: absolute; top: 0.4rem; transition: none; z-index: 1; left: 0.4rem; }
  92. .off-canvas .off-canvas-sidebar { background: #f8f9fa; bottom: 0; min-width: 10rem; overflow-y: auto; position: fixed; top: 0; transition: transform .25s ease; z-index: 200; left: 0; transform: translateX(-100%); }
  93. .off-canvas .off-canvas-content { -ms-flex: 1 1 auto; flex: 1 1 auto; height: 100%; padding: 0.4rem 0.4rem 0.4rem 4rem; }
  94. .off-canvas .off-canvas-overlay { background: rgba(69, 77, 93, 0.1); border-color: transparent; border-radius: 0; bottom: 0; display: none; height: 100%; left: 0; position: fixed; right: 0; top: 0; width: 100%; }
  95. .off-canvas .off-canvas-sidebar:target, .off-canvas .off-canvas-sidebar.active { transform: translateX(0); }
  96. .off-canvas .off-canvas-sidebar:target ~ .off-canvas-overlay, .off-canvas .off-canvas-sidebar.active ~ .off-canvas-overlay { display: block; z-index: 100; }
  97. @media (min-width: 960px) { .off-canvas.off-canvas-sidebar-show .off-canvas-toggle { display: none; }
  98. .off-canvas.off-canvas-sidebar-show .off-canvas-sidebar { -ms-flex: 0 0 auto; flex: 0 0 auto; position: relative; transform: none; }
  99. .off-canvas.off-canvas-sidebar-show .off-canvas-overlay { display: none !important; } }
  100. .parallax { display: block; height: auto; position: relative; width: auto; }
  101. .parallax .parallax-content { box-shadow: 0 1rem 2.1rem rgba(69, 77, 93, 0.3); height: auto; transform: perspective(1000px); transform-style: preserve-3d; transition: all .4s ease; width: 100%; }
  102. .parallax .parallax-content::before { content: ""; display: block; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }
  103. .parallax .parallax-front { -ms-flex-align: center; align-items: center; color: #fff; display: -ms-flexbox; display: flex; height: 100%; -ms-flex-pack: center; justify-content: center; left: 0; position: absolute; text-align: center; text-shadow: 0 0 20px rgba(69, 77, 93, 0.75); top: 0; transform: translateZ(50px) scale(0.95); transition: all .4s ease; width: 100%; z-index: 1; }
  104. .parallax .parallax-top-left { height: 50%; outline: none; position: absolute; width: 50%; z-index: 100; left: 0; top: 0; }
  105. .parallax .parallax-top-left:focus ~ .parallax-content, .parallax .parallax-top-left:hover ~ .parallax-content { transform: perspective(1000px) rotateX(3deg) rotateY(-3deg); }
  106. .parallax .parallax-top-left:focus ~ .parallax-content::before, .parallax .parallax-top-left:hover ~ .parallax-content::before { background: linear-gradient(135deg, rgba(255, 255, 255, 0.35) 0%, transparent 50%); }
  107. .parallax .parallax-top-left:focus ~ .parallax-content .parallax-front, .parallax .parallax-top-left:hover ~ .parallax-content .parallax-front { transform: translate3d(4.5px, 4.5px, 50px) scale(0.95); }
  108. .parallax .parallax-top-right { height: 50%; outline: none; position: absolute; width: 50%; z-index: 100; right: 0; top: 0; }
  109. .parallax .parallax-top-right:focus ~ .parallax-content, .parallax .parallax-top-right:hover ~ .parallax-content { transform: perspective(1000px) rotateX(3deg) rotateY(3deg); }
  110. .parallax .parallax-top-right:focus ~ .parallax-content::before, .parallax .parallax-top-right:hover ~ .parallax-content::before { background: linear-gradient(-135deg, rgba(255, 255, 255, 0.35) 0%, transparent 50%); }
  111. .parallax .parallax-top-right:focus ~ .parallax-content .parallax-front, .parallax .parallax-top-right:hover ~ .parallax-content .parallax-front { transform: translate3d(-4.5px, 4.5px, 50px) scale(0.95); }
  112. .parallax .parallax-bottom-left { height: 50%; outline: none; position: absolute; width: 50%; z-index: 100; bottom: 0; left: 0; }
  113. .parallax .parallax-bottom-left:focus ~ .parallax-content, .parallax .parallax-bottom-left:hover ~ .parallax-content { transform: perspective(1000px) rotateX(-3deg) rotateY(-3deg); }
  114. .parallax .parallax-bottom-left:focus ~ .parallax-content::before, .parallax .parallax-bottom-left:hover ~ .parallax-content::before { background: linear-gradient(45deg, rgba(255, 255, 255, 0.35) 0%, transparent 50%); }
  115. .parallax .parallax-bottom-left:focus ~ .parallax-content .parallax-front, .parallax .parallax-bottom-left:hover ~ .parallax-content .parallax-front { transform: translate3d(4.5px, -4.5px, 50px) scale(0.95); }
  116. .parallax .parallax-bottom-right { height: 50%; outline: none; position: absolute; width: 50%; z-index: 100; bottom: 0; right: 0; }
  117. .parallax .parallax-bottom-right:focus ~ .parallax-content, .parallax .parallax-bottom-right:hover ~ .parallax-content { transform: perspective(1000px) rotateX(-3deg) rotateY(3deg); }
  118. .parallax .parallax-bottom-right:focus ~ .parallax-content::before, .parallax .parallax-bottom-right:hover ~ .parallax-content::before { background: linear-gradient(-45deg, rgba(255, 255, 255, 0.35) 0%, transparent 50%); }
  119. .parallax .parallax-bottom-right:focus ~ .parallax-content .parallax-front, .parallax .parallax-bottom-right:hover ~ .parallax-content .parallax-front { transform: translate3d(-4.5px, -4.5px, 50px) scale(0.95); }
  120. .progress { -webkit-appearance: none; -moz-appearance: none; appearance: none; background: #f0f1f4; border: 0; border-radius: 0.1rem; color: #3085EE; height: 0.2rem; position: relative; width: 100%; }
  121. .progress::-webkit-progress-bar { background: transparent; border-radius: 0.1rem; }
  122. .progress::-webkit-progress-value { background: #3085EE; border-radius: 0.1rem; }
  123. .progress::-moz-progress-bar { background: #3085EE; border-radius: 0.1rem; }
  124. .progress:indeterminate { animation: progress-indeterminate 1.5s linear infinite; background: #f0f1f4 linear-gradient(to right, #3085EE 30%, #f0f1f4 30%) top left/150% 150% no-repeat; }
  125. .progress:indeterminate::-moz-progress-bar { background: transparent; }
  126. @keyframes progress-indeterminate { 0% { background-position: 200% 0; }
  127. 100% { background-position: -200% 0; } }
  128. .slider { -webkit-appearance: none; -moz-appearance: none; appearance: none; background: transparent; display: block; width: 100%; height: 1.2rem; }
  129. .slider:focus { box-shadow: 0 0 0 0.1rem rgba(48, 133, 238, 0.2); outline: none; }
  130. .slider.tooltip:not([data-tooltip])::after { content: attr(value); }
  131. .slider::-webkit-slider-thumb { -webkit-appearance: none; background: #3085EE; border: 0; border-radius: 50%; height: 0.6rem; margin-top: -0.25rem; transition: transform .2s ease; width: 0.6rem; }
  132. .slider::-moz-range-thumb { background: #3085EE; border: 0; border-radius: 50%; height: 0.6rem; transition: transform .2s ease; width: 0.6rem; }
  133. .slider::-ms-thumb { background: #3085EE; border: 0; border-radius: 50%; height: 0.6rem; transition: transform .2s ease; width: 0.6rem; }
  134. .slider:active::-webkit-slider-thumb { transform: scale(1.25); }
  135. .slider:active::-moz-range-thumb { transform: scale(1.25); }
  136. .slider:active::-ms-thumb { transform: scale(1.25); }
  137. .slider:disabled::-webkit-slider-thumb, .slider.disabled::-webkit-slider-thumb { background: #e7e9ed; transform: scale(1); }
  138. .slider:disabled::-moz-range-thumb, .slider.disabled::-moz-range-thumb { background: #e7e9ed; transform: scale(1); }
  139. .slider:disabled::-ms-thumb, .slider.disabled::-ms-thumb { background: #e7e9ed; transform: scale(1); }
  140. .slider::-webkit-slider-runnable-track { background: #f0f1f4; border-radius: 0.1rem; height: 0.1rem; width: 100%; }
  141. .slider::-moz-range-track { background: #f0f1f4; border-radius: 0.1rem; height: 0.1rem; width: 100%; }
  142. .slider::-ms-track { background: #f0f1f4; border-radius: 0.1rem; height: 0.1rem; width: 100%; }
  143. .slider::-ms-fill-lower { background: #3085EE; }
  144. .timeline .timeline-item { display: -ms-flexbox; display: flex; margin-bottom: 1.2rem; position: relative; }
  145. .timeline .timeline-item::before { background: #e7e9ed; content: ""; height: 100%; left: 11px; position: absolute; top: 1.2rem; width: 2px; }
  146. .timeline .timeline-item .timeline-left { -ms-flex: 0 0 auto; flex: 0 0 auto; }
  147. .timeline .timeline-item .timeline-content { -ms-flex: 1 1 auto; flex: 1 1 auto; padding: 2px 0 2px 0.8rem; }
  148. .timeline .timeline-item .timeline-icon { border-radius: 50%; color: #fff; display: block; height: 1.2rem; text-align: center; width: 1.2rem; }
  149. .timeline .timeline-item .timeline-icon::before { border: 0.1rem solid #3085EE; border-radius: 50%; content: ""; display: block; height: 0.4rem; left: 0.4rem; position: absolute; top: 0.4rem; width: 0.4rem; }
  150. .timeline .timeline-item .timeline-icon.icon-lg { background: #3085EE; line-height: 1.2rem; }
  151. .timeline .timeline-item .timeline-icon.icon-lg::before { content: none; }
  152. /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY3RyZS1leHAuY3NzIiwic291cmNlcyI6WyJzcGVjdHJlLWV4cC5zY3NzIiwic3BlY3RyZS9fdmFyaWFibGVzLnNjc3MiLCJzcGVjdHJlL19taXhpbnMuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19hdmF0YXIuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19idXR0b24uc2NzcyIsInNwZWN0cmUvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwic3BlY3RyZS9taXhpbnMvX2NvbG9yLnNjc3MiLCJzcGVjdHJlL21peGlucy9fbGFiZWwuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19wb3NpdGlvbi5zY3NzIiwic3BlY3RyZS9taXhpbnMvX3NoYWRvdy5zY3NzIiwic3BlY3RyZS9taXhpbnMvX3RleHQuc2NzcyIsInNwZWN0cmUvbWl4aW5zL190b2FzdC5zY3NzIiwic3BlY3RyZS9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsInNwZWN0cmUvX2F1dG9jb21wbGV0ZS5zY3NzIiwic3BlY3RyZS9fY2FsZW5kYXJzLnNjc3MiLCJzcGVjdHJlL19jYXJvdXNlbHMuc2NzcyIsInNwZWN0cmUvX2NvbXBhcmlzb24tc2xpZGVycy5zY3NzIiwic3BlY3RyZS9fZmlsdGVycy5zY3NzIiwic3BlY3RyZS9fbWV0ZXJzLnNjc3MiLCJzcGVjdHJlL19vZmYtY2FudmFzLnNjc3MiLCJzcGVjdHJlL19wYXJhbGxheC5zY3NzIiwic3BlY3RyZS9fcHJvZ3Jlc3Muc2NzcyIsInNwZWN0cmUvX3NsaWRlcnMuc2NzcyIsInNwZWN0cmUvX3RpbWVsaW5lcy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0IFwic3BlY3RyZS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJzcGVjdHJlL21peGluc1wiO1xuXG4vKiEgU3BlY3RyZS5jc3MgRXhwZXJpbWVudGFscyB2I3skdmVyc2lvbn0gfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vcGljdHVyZXBhbjIvc3BlY3RyZSAqL1xuLy8gRXhwZXJpbWVudGFsc1xuQGltcG9ydCBcInNwZWN0cmUvYXV0b2NvbXBsZXRlXCI7XG5AaW1wb3J0IFwic3BlY3RyZS9jYWxlbmRhcnNcIjtcbkBpbXBvcnQgXCJzcGVjdHJlL2Nhcm91c2Vsc1wiO1xuQGltcG9ydCBcInNwZWN0cmUvY29tcGFyaXNvbi1zbGlkZXJzXCI7XG5AaW1wb3J0IFwic3BlY3RyZS9maWx0ZXJzXCI7XG5AaW1wb3J0IFwic3BlY3RyZS9tZXRlcnNcIjtcbkBpbXBvcnQgXCJzcGVjdHJlL29mZi1jYW52YXNcIjtcbkBpbXBvcnQgXCJzcGVjdHJlL3BhcmFsbGF4XCI7XG5AaW1wb3J0IFwic3BlY3RyZS9wcm9ncmVzc1wiO1xuQGltcG9ydCBcInNwZWN0cmUvc2xpZGVyc1wiO1xuQGltcG9ydCBcInNwZWN0cmUvdGltZWxpbmVzXCI7XG4iLCIvLyBDb3JlIHZhcmlhYmxlc1xuJHZlcnNpb246IFwiMC41LjNcIjtcblxuLy8gQ29yZSBmZWF0dXJlc1xuJHJ0bDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIENvcmUgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogIzMwODVFRSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLWRhcms6IGRhcmtlbigkcHJpbWFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDM3LjUlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3ItZGFyazogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHNlY29uZGFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuXG4vLyBHcmF5IGNvbG9yc1xuJGRhcmstY29sb3I6ICM0NTRkNWQgIWRlZmF1bHQ7XG4kbGlnaHQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNDAlKSAhZGVmYXVsdDtcbiRncmF5LWNvbG9yLWRhcms6IGRhcmtlbigkZ3JheS1jb2xvciwgMjUlKSAhZGVmYXVsdDtcbiRncmF5LWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRncmF5LWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG4kYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA2MCUpICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci1kYXJrOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRiZy1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNjYlKSAhZGVmYXVsdDtcbiRiZy1jb2xvci1kYXJrOiBkYXJrZW4oJGJnLWNvbG9yLCAzJSkgIWRlZmF1bHQ7XG4kYmctY29sb3ItbGlnaHQ6ICRsaWdodC1jb2xvciAhZGVmYXVsdDtcblxuLy8gQ29udHJvbCBjb2xvcnNcbiRzdWNjZXNzLWNvbG9yOiAjMzJiNjQzICFkZWZhdWx0O1xuJHdhcm5pbmctY29sb3I6ICNmZmI3MDAgIWRlZmF1bHQ7XG4kZXJyb3ItY29sb3I6ICNlODU2MDAgIWRlZmF1bHQ7XG5cbi8vIE90aGVyIGNvbG9yc1xuJGNvZGUtY29sb3I6ICNkNzNlNDggIWRlZmF1bHQ7XG4kaGlnaGxpZ2h0LWNvbG9yOiAjZmZlOWIzICFkZWZhdWx0O1xuJGJvZHktYmc6ICRiZy1jb2xvci1saWdodCAhZGVmYXVsdDtcbiRib2R5LWZvbnQtY29sb3I6IGxpZ2h0ZW4oJGRhcmstY29sb3IsIDUlKSAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yLWRhcms6IGRhcmtlbigkbGluay1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRsaW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBGb250c1xuLy8gQ3JlZGl0OiBodHRwczovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE1LzExL3VzaW5nLXN5c3RlbS11aS1mb250cy1wcmFjdGljYWwtZ3VpZGUvXG4kYmFzZS1mb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvICFkZWZhdWx0O1xuJG1vbm8tZm9udC1mYW1pbHk6IFwiU0YgTW9ub1wiLCBcIlNlZ29lIFVJIE1vbm9cIiwgXCJSb2JvdG8gTW9ub1wiLCBNZW5sbywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZhbGxiYWNrLWZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kY2prLXpoLWhhbnMtZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIlBpbmdGYW5nIFNDXCIsIFwiSGlyYWdpbm8gU2FucyBHQlwiLCBcIk1pY3Jvc29mdCBZYUhlaVwiLCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY2prLXpoLWhhbnQtZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIlBpbmdGYW5nIFRDXCIsIFwiSGlyYWdpbm8gU2FucyBDTlNcIiwgXCJNaWNyb3NvZnQgSmhlbmdIZWlcIiwgJGZhbGxiYWNrLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGNqay1qcC1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksIFwiSGlyYWdpbm8gU2Fuc1wiLCBcIkhpcmFnaW5vIEtha3UgR290aGljIFByb1wiLCBcIll1IEdvdGhpY1wiLCBZdUdvdGhpYywgTWVpcnlvLCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY2prLWtvLWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseSwgXCJNYWxndW4gR290aGljXCIsICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRib2R5LWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseSwgJGZhbGxiYWNrLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLyBVbml0IHNpemVzXG4kdW5pdC1vOiAuMDVyZW0gIWRlZmF1bHQ7XG4kdW5pdC1oOiAuMXJlbSAhZGVmYXVsdDtcbiR1bml0LTE6IC4ycmVtICFkZWZhdWx0O1xuJHVuaXQtMjogLjRyZW0gIWRlZmF1bHQ7XG4kdW5pdC0zOiAuNnJlbSAhZGVmYXVsdDtcbiR1bml0LTQ6IC44cmVtICFkZWZhdWx0O1xuJHVuaXQtNTogMXJlbSAhZGVmYXVsdDtcbiR1bml0LTY6IDEuMnJlbSAhZGVmYXVsdDtcbiR1bml0LTc6IDEuNHJlbSAhZGVmYXVsdDtcbiR1bml0LTg6IDEuNnJlbSAhZGVmYXVsdDtcbiR1bml0LTk6IDEuOHJlbSAhZGVmYXVsdDtcbiR1bml0LTEwOiAycmVtICFkZWZhdWx0O1xuJHVuaXQtMTI6IDIuNHJlbSAhZGVmYXVsdDtcbiR1bml0LTE2OiAzLjJyZW0gIWRlZmF1bHQ7XG5cbi8vIEZvbnQgc2l6ZXNcbiRodG1sLWZvbnQtc2l6ZTogMjBweCAhZGVmYXVsdDtcbiRodG1sLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplOiAuOHJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206IC43cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogLjlyZW0gIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQ6IDEuMnJlbSAhZGVmYXVsdDtcblxuLy8gU2l6ZXNcbiRsYXlvdXQtc3BhY2luZzogJHVuaXQtMiAhZGVmYXVsdDtcbiRsYXlvdXQtc3BhY2luZy1zbTogJHVuaXQtMSAhZGVmYXVsdDtcbiRsYXlvdXQtc3BhY2luZy1sZzogJHVuaXQtNCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzOiAkdW5pdC1oICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aDogJHVuaXQtbyAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGgtbGc6ICR1bml0LWggIWRlZmF1bHQ7XG4kY29udHJvbC1zaXplOiAkdW5pdC05ICFkZWZhdWx0O1xuJGNvbnRyb2wtc2l6ZS1zbTogJHVuaXQtNyAhZGVmYXVsdDtcbiRjb250cm9sLXNpemUtbGc6ICR1bml0LTEwICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14OiAkdW5pdC0yICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14LXNtOiAkdW5pdC0yICogLjc1ICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14LWxnOiAkdW5pdC0yICogMS41ICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy15OiAoJGNvbnRyb2wtc2l6ZSAtICRsaW5lLWhlaWdodCkgLyAyIC0gJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjb250cm9sLXBhZGRpbmcteS1zbTogKCRjb250cm9sLXNpemUtc20gLSAkbGluZS1oZWlnaHQpIC8gMiAtICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXktbGc6ICgkY29udHJvbC1zaXplLWxnIC0gJGxpbmUtaGVpZ2h0KSAvIDIgLSAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNvbnRyb2wtaWNvbi1zaXplOiAuOHJlbSAhZGVmYXVsdDtcblxuJGNvbnRyb2wtd2lkdGgteHM6IDE4MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtc206IDMyMHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtbWQ6IDY0MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtbGc6IDk2MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgteGw6IDEyODBweCAhZGVmYXVsdDtcblxuLy8gUmVzcG9uc2l2ZSBicmVha3BvaW50c1xuJHNpemUteHM6IDQ4MHB4ICFkZWZhdWx0O1xuJHNpemUtc206IDYwMHB4ICFkZWZhdWx0O1xuJHNpemUtbWQ6IDg0MHB4ICFkZWZhdWx0O1xuJHNpemUtbGc6IDk2MHB4ICFkZWZhdWx0O1xuJHNpemUteGw6IDEyODBweCAhZGVmYXVsdDtcbiRzaXplLTJ4OiAxNDQwcHggIWRlZmF1bHQ7XG5cbiRyZXNwb25zaXZlLWJyZWFrcG9pbnQ6ICRzaXplLXhzICFkZWZhdWx0O1xuXG4vLyBaLWluZGV4XG4kemluZGV4LTA6IDEgIWRlZmF1bHQ7XG4kemluZGV4LTE6IDEwMCAhZGVmYXVsdDtcbiR6aW5kZXgtMjogMjAwICFkZWZhdWx0O1xuJHppbmRleC0zOiAzMDAgIWRlZmF1bHQ7XG4kemluZGV4LTQ6IDQwMCAhZGVmYXVsdDtcbiIsIi8vIE1peGluc1xuQGltcG9ydCBcIm1peGlucy9hdmF0YXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbG9yXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xhYmVsXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NoYWRvd1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RvYXN0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcbiIsIi8vIEF2YXRhciBtaXhpblxuQG1peGluIGF2YXRhci1iYXNlKCRzaXplOiAkdW5pdC04KSB7XG4gIGZvbnQtc2l6ZTogJHNpemUgLyAyO1xuICBoZWlnaHQ6ICRzaXplO1xuICB3aWR0aDogJHNpemU7XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudCBtaXhpblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yO1xuICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDMlKTtcbiAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coJGNvbG9yKTtcbiAgfVxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yLCAyJSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCA1JSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3IsIDclKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmLmxvYWRpbmcge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGxpZ2h0LWNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coJGNvbG9yKTtcbiAgfVxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvciwgNTAlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDIlKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgNSUpO1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gIH1cbiAgJi5sb2FkaW5nIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ2xlYXJmaXggbWl4aW5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbn1cbiIsIi8vIEJhY2tncm91bmQgY29sb3IgdXRpbGl0eSBtaXhpblxuQG1peGluIGJnLWNvbG9yLXZhcmlhbnQoJG5hbWU6IFwiLmJnLXByaW1hcnlcIiwgJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICAjeyRuYW1lfSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuXG4gICAgQGlmIChsaWdodG5lc3MoJGNvbG9yKSA8IDYwKSB7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUZXh0IGNvbG9yIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiB0ZXh0LWNvbG9yLXZhcmlhbnQoJG5hbWU6IFwiLnRleHQtcHJpbWFyeVwiLCAkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gICN7JG5hbWV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgYSN7JG5hbWV9IHtcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDUlKTtcbiAgICB9XG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiBsaWdodGVuKCRjb2xvciwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gTGFiZWwgYmFzZSBzdHlsZVxuQG1peGluIGxhYmVsLWJhc2UoKSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBwYWRkaW5nOiAuMXJlbSAuMnJlbTtcbn1cblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yOiAkbGlnaHQtY29sb3IsICRiZy1jb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gTWFyZ2luIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiBtYXJnaW4tdmFyaWFudCgkaWQ6IDEsICRzaXplOiAkdW5pdC0xKSB7XG4gIC5tLSN7JGlkfSB7XG4gICAgbWFyZ2luOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLSN7JGlkfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC0jeyRpZH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLSN7JGlkfSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LSN7JGlkfSB7XG4gICAgbWFyZ2luLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC0jeyRpZH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS0jeyRpZH0ge1xuICAgIG1hcmdpbi1ib3R0b206ICRzaXplICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBQYWRkaW5nIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiBwYWRkaW5nLXZhcmlhbnQoJGlkOiAxLCAkc2l6ZTogJHVuaXQtMSkge1xuICAucC0jeyRpZH0ge1xuICAgIHBhZGRpbmc6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItI3skaWR9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC0jeyRpZH0ge1xuICAgIHBhZGRpbmctbGVmdDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci0jeyRpZH0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtI3skaWR9IHtcbiAgICBwYWRkaW5nLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC0jeyRpZH0ge1xuICAgIHBhZGRpbmctbGVmdDogJHNpemUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG4gIFxuICAucHktI3skaWR9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gQ29tcG9uZW50IGZvY3VzIHNoYWRvd1xuQG1peGluIGNvbnRyb2wtc2hhZG93KCRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgLjFyZW0gcmdiYSgkY29sb3IsIC4yKTtcbn1cblxuLy8gU2hhZG93IG1peGluXG5AbWl4aW4gc2hhZG93LXZhcmlhbnQoJG9mZnNldCkge1xuICBib3gtc2hhZG93OiAwICRvZmZzZXQgKCRvZmZzZXQgKyAuMDVyZW0pICogMiByZ2JhKCRkYXJrLWNvbG9yLCAuMyk7XG59XG4iLCIvLyBUZXh0IEVsbGlwc2lzXG5AbWl4aW4gdGV4dC1lbGxpcHNpcygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBUb2FzdCB2YXJpYW50IG1peGluXG5AbWl4aW4gdG9hc3QtdmFyaWFudCgkY29sb3I6ICRkYXJrLWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuOSk7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gQ29tcG9uZW50IHRyYW5zaXRpb25cbkBtaXhpbiBjb250cm9sLXRyYW5zaXRpb24oKSB7XG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZTtcbn1cbiIsIi8vIEF1dG9jb21wbGV0ZVxuLmZvcm0tYXV0b2NvbXBsZXRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5mb3JtLWF1dG9jb21wbGV0ZS1pbnB1dCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogJHVuaXQtODtcbiAgICBwYWRkaW5nOiAkdW5pdC1oO1xuXG4gICAgJi5pcy1mb2N1c2VkIHtcbiAgICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCk7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cblxuICAgIC5mb3JtLWlucHV0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICBoZWlnaHQ6ICR1bml0LTY7XG4gICAgICBsaW5lLWhlaWdodDogJHVuaXQtNDtcbiAgICAgIG1hcmdpbjogJHVuaXQtaDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5tZW51IHtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmLmF1dG9jb21wbGV0ZS1vbmVsaW5lIHtcbiAgICAuZm9ybS1hdXRvY29tcGxldGUtaW5wdXQge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIH1cblxuICAgIC5jaGlwIHtcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ2FsZW5kYXJzXG4uY2FsZW5kYXIge1xuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4td2lkdGg6IDI4MHB4O1xuXG4gIC5jYWxlbmRhci1uYXYge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICBwYWRkaW5nOiAkbGF5b3V0LXNwYWNpbmc7XG4gIH1cblxuICAuY2FsZW5kYXItaGVhZGVyLFxuICAuY2FsZW5kYXItYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogJGxheW91dC1zcGFjaW5nIDA7XG5cbiAgICAuY2FsZW5kYXItZGF0ZSB7XG4gICAgICBmbGV4OiAwIDAgMTQuMjglOyAvLyA3IGNhbGVuZGFyLWl0ZW1zIGVhY2ggcm93XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4JTtcbiAgICB9XG4gIH1cblxuICAuY2FsZW5kYXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIGNvbG9yOiAkZ3JheS1jb2xvcjtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmNhbGVuZGFyLWJvZHkge1xuICAgIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICB9XG5cbiAgLmNhbGVuZGFyLWRhdGUge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAkdW5pdC0xO1xuXG4gICAgLmRhdGUtaXRlbSB7XG4gICAgICBAaW5jbHVkZSBjb250cm9sLXRyYW5zaXRpb24oKTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgaGVpZ2h0OiAkdW5pdC03O1xuICAgICAgbGluZS1oZWlnaHQ6ICR1bml0LTU7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgcGFkZGluZzogJHVuaXQtaDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgd2lkdGg6ICR1bml0LTc7XG5cbiAgICAgICYuZGF0ZS10b2RheSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1jb2xvci1kYXJrO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3ItbGlnaHQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1jb2xvci1kYXJrO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvci1kYXJrO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCA1JSk7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgICB9XG5cbiAgICAgIC8vIENhbGVuZGFyIGJhZGdlIHN1cHBvcnRcbiAgICAgICYuYmFkZ2Uge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgIHJpZ2h0OiAzcHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5kYXRlLWl0ZW0sXG4gICAgLmNhbGVuZGFyLWV2ZW50IHtcbiAgICAgICY6ZGlzYWJsZWQsXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBvcGFjaXR5OiAuMjU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYucHJldi1tb250aCxcbiAgICAmLm5leHQtbW9udGgge1xuICAgICAgLmRhdGUtaXRlbSxcbiAgICAgIC5jYWxlbmRhci1ldmVudCB7XG4gICAgICAgIG9wYWNpdHk6IC4yNTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2FsZW5kYXItcmFuZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGhlaWdodDogJHVuaXQtNztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgICAmLnJhbmdlLXN0YXJ0IHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5yYW5nZS1lbmQge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJhbmdlLXN0YXJ0LFxuICAgICYucmFuZ2UtZW5kIHtcbiAgICAgIC5kYXRlLWl0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvci1kYXJrO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCA1JSk7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRhdGUtaXRlbSB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FsZW5kYXJzIHNpemVcbiAgJi5jYWxlbmRhci1sZyB7XG4gICAgLmNhbGVuZGFyLWJvZHkge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmNhbGVuZGFyLWRhdGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBoZWlnaHQ6IDUuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOm50aC1jaGlsZCg3bikge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1sYXN0LWNoaWxkKC1uKzcpIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRhdGUtaXRlbSB7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgIGhlaWdodDogJHVuaXQtNztcbiAgICAgIG1hcmdpbi1yaWdodDogJGxheW91dC1zcGFjaW5nLXNtO1xuICAgICAgbWFyZ2luLXRvcDogJGxheW91dC1zcGFjaW5nLXNtO1xuICAgIH1cblxuICAgIC5jYWxlbmRhci1yYW5nZSB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6IDE5cHg7XG4gICAgICB9XG4gICAgICAmLnJhbmdlLXN0YXJ0IHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxOXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnJhbmdlLWVuZCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgcmlnaHQ6IDE5cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FsZW5kYXItZXZlbnRzIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIHBhZGRpbmc6ICRsYXlvdXQtc3BhY2luZy1zbTtcbiAgICB9XG5cbiAgICAuY2FsZW5kYXItZXZlbnQge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogJHVuaXQtaCBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmc6IDNweCA0cHg7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDYXJvdXNlbHNcbi5jYXJvdXNlbCB7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgei1pbmRleDogJHppbmRleC0wO1xuXG4gIC5jYXJvdXNlbC1jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICB9XG5cbiAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICBhbmltYXRpb246IGNhcm91c2VsLXNsaWRlb3V0IDFzIGVhc2UtaW4tb3V0IDE7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLml0ZW0tcHJldixcbiAgICAgICAgLml0ZW0tbmV4dCB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5pdGVtLXByZXYsXG4gICAgLml0ZW0tbmV4dCB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmF5LWNvbG9yLWxpZ2h0LCAuMjUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRncmF5LWNvbG9yLWxpZ2h0LCAuNSk7XG4gICAgICBjb2xvcjogJGdyYXktY29sb3ItbGlnaHQ7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2U7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTE7XG4gICAgfVxuICAgIC5pdGVtLXByZXYge1xuICAgICAgbGVmdDogMXJlbTtcbiAgICB9XG4gICAgLml0ZW0tbmV4dCB7XG4gICAgICByaWdodDogMXJlbTtcbiAgICB9XG4gIH1cblxuICAuY2Fyb3VzZWwtbG9jYXRvciB7XG4gICAgJjpudGgtb2YtdHlwZSgxKTpjaGVja2VkIH4gLmNhcm91c2VsLWNvbnRhaW5lciAuY2Fyb3VzZWwtaXRlbTpudGgtb2YtdHlwZSgxKSxcbiAgICAmOm50aC1vZi10eXBlKDIpOmNoZWNrZWQgfiAuY2Fyb3VzZWwtY29udGFpbmVyIC5jYXJvdXNlbC1pdGVtOm50aC1vZi10eXBlKDIpLFxuICAgICY6bnRoLW9mLXR5cGUoMyk6Y2hlY2tlZCB+IC5jYXJvdXNlbC1jb250YWluZXIgLmNhcm91c2VsLWl0ZW06bnRoLW9mLXR5cGUoMyksXG4gICAgJjpudGgtb2YtdHlwZSg0KTpjaGVja2VkIH4gLmNhcm91c2VsLWNvbnRhaW5lciAuY2Fyb3VzZWwtaXRlbTpudGgtb2YtdHlwZSg0KSB7XG4gICAgICBhbmltYXRpb246IGNhcm91c2VsLXNsaWRlaW4gLjc1cyBlYXNlLWluLW91dCAxO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtMTtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSgxKTpjaGVja2VkIH4gLmNhcm91c2VsLW5hdiAubmF2LWl0ZW06bnRoLW9mLXR5cGUoMSksXG4gICAgJjpudGgtb2YtdHlwZSgyKTpjaGVja2VkIH4gLmNhcm91c2VsLW5hdiAubmF2LWl0ZW06bnRoLW9mLXR5cGUoMiksXG4gICAgJjpudGgtb2YtdHlwZSgzKTpjaGVja2VkIH4gLmNhcm91c2VsLW5hdiAubmF2LWl0ZW06bnRoLW9mLXR5cGUoMyksXG4gICAgJjpudGgtb2YtdHlwZSg0KTpjaGVja2VkIH4gLmNhcm91c2VsLW5hdiAubmF2LWl0ZW06bnRoLW9mLXR5cGUoNCkge1xuICAgICAgY29sb3I6ICRncmF5LWNvbG9yLWxpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5jYXJvdXNlbC1uYXYge1xuICAgIGJvdHRvbTogJGxheW91dC1zcGFjaW5nO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbGVmdDogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDEwcmVtO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtMTtcblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBjb2xvcjogcmdiYSgkZ3JheS1jb2xvci1saWdodCwgLjUpO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgIGhlaWdodDogJHVuaXQtODtcbiAgICAgIG1hcmdpbjogJHVuaXQtMTtcbiAgICAgIG1heC13aWR0aDogMi41cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6ICR1bml0LWg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAuNXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBrZXlmcmFtZXMgY2Fyb3VzZWwtc2xpZGVpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2Fyb3VzZWwtc2xpZGVvdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cbiIsIi8vIEltYWdlIGNvbXBhcmlzb24gc2xpZGVyXG4vLyBDcmVkaXQ6IGh0dHA6Ly9jb2RlcGVuLmlvL3NvbGlwc2lzdGFjcC9wZW4vR3BtYXFcbi5jb21wYXJpc29uLXNsaWRlciB7XG4gIGhlaWdodDogNTB2aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC5jb21wYXJpc29uLWJlZm9yZSxcbiAgLmNvbXBhcmlzb24tYWZ0ZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG5cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBvYmplY3QtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbXBhcmlzb24tYmVmb3JlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgLmNvbXBhcmlzb24tbGFiZWwge1xuICAgICAgcmlnaHQ6ICR1bml0LTQ7XG4gICAgfVxuICB9XG5cbiAgLmNvbXBhcmlzb24tYWZ0ZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6ICR1bml0LTQ7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYm94LXNoYWRvdzogMCAtNXB4LCAwIDVweDtcbiAgICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogJHVuaXQtMjtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICAgIHdpZHRoOiAzcHg7XG4gICAgfVxuXG4gICAgLmNvbXBhcmlzb24tbGFiZWwge1xuICAgICAgbGVmdDogJHVuaXQtNDtcbiAgICB9XG4gIH1cblxuICAuY29tcGFyaXNvbi1yZXNpemVyIHtcbiAgICBhbmltYXRpb246IGZpcnN0LXJ1biAxLjVzIDEgZWFzZS1pbi1vdXQ7XG4gICAgY3Vyc29yOiBldy1yZXNpemU7XG4gICAgaGVpZ2h0OiAkdW5pdC00O1xuICAgIGxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogJHVuaXQtNDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJlc2l6ZTogaG9yaXpvbnRhbDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGVZKDMwKTtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIC5jb21wYXJpc29uLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrLWNvbG9yLCAuNSk7XG4gICAgYm90dG9tOiAkdW5pdC00O1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgcGFkZGluZzogJHVuaXQtMSAkdW5pdC0yO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZpcnN0LXJ1biB7XG4gIDAlIHtcbiAgICB3aWR0aDogMDtcbiAgfVxuICAyNSUge1xuICAgIHdpZHRoOiAkdW5pdC0xMjtcbiAgfVxuICA1MCUge1xuICAgIHdpZHRoOiAkdW5pdC00O1xuICB9XG4gIDc1JSB7XG4gICAgd2lkdGg6ICR1bml0LTY7XG4gIH1cbiAgMTAwJSB7XG4gICAgd2lkdGg6IDA7XG4gIH1cbn1cbiIsIi8vIEZpbHRlcnMgXG4vLyBUaGUgbnVtYmVyIG9mIGZpbHRlciBvcHRpb25zIFxuJGZpbHRlci1udW1iZXI6IDggIWRlZmF1bHQ7XG5cbiVmaWx0ZXItY2hlY2tlZC1uYXYgeyBcbiAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gIGNvbG9yOiAkbGlnaHQtY29sb3I7XG59XG5cbiVmaWx0ZXItY2hlY2tlZC1ib2R5IHsgXG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5maWx0ZXIge1xuICAuZmlsdGVyLW5hdiB7XG4gICAgbWFyZ2luOiAkbGF5b3V0LXNwYWNpbmcgMDtcbiAgfVxuXG4gIC5maWx0ZXItYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAuZmlsdGVyLXRhZyB7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGZpbHRlci1udW1iZXIpIHtcbiAgICAgICYjdGFnLSN7JGl9OmNoZWNrZWQgfiAuZmlsdGVyLW5hdiAuY2hpcFtmb3I9XCJ0YWctI3skaX1cIl0ge1xuICAgICAgICBAZXh0ZW5kICVmaWx0ZXItY2hlY2tlZC1uYXY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGZpbHRlci1udW1iZXIpIHtcbiAgICAgICYjdGFnLSN7JGl9OmNoZWNrZWQgfiAuZmlsdGVyLWJvZHkgLmZpbHRlci1pdGVtOm5vdChbZGF0YS10YWd+PVwidGFnLSN7JGl9XCJdKSB7XG4gICAgICAgIEBleHRlbmQgJWZpbHRlci1jaGVja2VkLWJvZHk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBNZXRlcnNcbi8vIENyZWRpdDogaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9odG1sNS1tZXRlci1lbGVtZW50L1xuLm1ldGVyIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHVuaXQtNDtcblxuICAmOjotd2Via2l0LW1ldGVyLWlubmVyLWVsZW1lbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1tZXRlci1iYXIsXG4gICY6Oi13ZWJraXQtbWV0ZXItb3B0aW11bS12YWx1ZSxcbiAgJjo6LXdlYmtpdC1tZXRlci1zdWJvcHRpbXVtLXZhbHVlLFxuICAmOjotd2Via2l0LW1ldGVyLWV2ZW4tbGVzcy1nb29kLXZhbHVlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6Oi13ZWJraXQtbWV0ZXItYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gIH1cblxuICAmOjotd2Via2l0LW1ldGVyLW9wdGltdW0tdmFsdWUge1xuICAgIGJhY2tncm91bmQ6ICRzdWNjZXNzLWNvbG9yO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1tZXRlci1zdWJvcHRpbXVtLXZhbHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2FybmluZy1jb2xvcjtcbiAgfVxuXG4gICY6Oi13ZWJraXQtbWV0ZXItZXZlbi1sZXNzLWdvb2QtdmFsdWUge1xuICAgIGJhY2tncm91bmQ6ICRlcnJvci1jb2xvcjtcbiAgfVxuXG4gICY6Oi1tb3otbWV0ZXItYmFyLFxuICAmOi1tb3otbWV0ZXItb3B0aW11bSxcbiAgJjotbW96LW1ldGVyLXN1Yi1vcHRpbXVtLFxuICAmOi1tb3otbWV0ZXItc3ViLXN1Yi1vcHRpbXVtIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6LW1vei1tZXRlci1vcHRpbXVtOjotbW96LW1ldGVyLWJhciB7XG4gICAgYmFja2dyb3VuZDogJHN1Y2Nlc3MtY29sb3I7XG4gIH1cblxuICAmOi1tb3otbWV0ZXItc3ViLW9wdGltdW06Oi1tb3otbWV0ZXItYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2FybmluZy1jb2xvcjtcbiAgfVxuXG4gICY6LW1vei1tZXRlci1zdWItc3ViLW9wdGltdW06Oi1tb3otbWV0ZXItYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZXJyb3ItY29sb3I7XG4gIH1cbn1cbiIsIi8vIE9mZiBjYW52YXMgbWVudXNcbiRvZmYtY2FudmFzLWJyZWFrcG9pbnQ6ICRzaXplLWxnICFkZWZhdWx0O1xuXG4ub2ZmLWNhbnZhcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogbm93cmFwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLm9mZi1jYW52YXMtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkbGF5b3V0LXNwYWNpbmc7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gICAgQGlmICRydGwgPT0gdHJ1ZSB7XG4gICAgICByaWdodDogJGxheW91dC1zcGFjaW5nO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbGVmdDogJGxheW91dC1zcGFjaW5nO1xuICAgIH1cbiAgfVxuXG4gIC5vZmYtY2FudmFzLXNpZGViYXIge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgICBib3R0b206IDA7XG4gICAgbWluLXdpZHRoOiAxMHJlbTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgZWFzZTtcbiAgICB6LWluZGV4OiAkemluZGV4LTI7XG4gICAgQGlmICRydGwgPT0gdHJ1ZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIH1cbiAgfVxuXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAkbGF5b3V0LXNwYWNpbmcgJGxheW91dC1zcGFjaW5nICRsYXlvdXQtc3BhY2luZyA0cmVtO1xuICB9XG5cbiAgLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZGFyay1jb2xvciwgLjEpO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3R0b206IDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9mZi1jYW52YXMtc2lkZWJhciB7XG4gICAgJjp0YXJnZXQsXG4gICAgJi5hY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgICY6dGFyZ2V0IH4gLm9mZi1jYW52YXMtb3ZlcmxheSxcbiAgICAmLmFjdGl2ZSB+IC5vZmYtY2FudmFzLW92ZXJsYXkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTE7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgbGF5b3V0XG5AbWVkaWEgKG1pbi13aWR0aDogJG9mZi1jYW52YXMtYnJlYWtwb2ludCkge1xuICAub2ZmLWNhbnZhcyB7XG4gICAgJi5vZmYtY2FudmFzLXNpZGViYXItc2hvdyB7XG4gICAgICAub2ZmLWNhbnZhcy10b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICBcbiAgICAgIC5vZmYtY2FudmFzLXNpZGViYXIge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5vZmYtY2FudmFzLW92ZXJsYXkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYXJhbGxheFxuJHBhcmFsbGF4LWRlZzogM2RlZyAhZGVmYXVsdDtcbiRwYXJhbGxheC1vZmZzZXQ6IDQuNXB4ICFkZWZhdWx0O1xuJHBhcmFsbGF4LW9mZnNldC16OiA1MHB4ICFkZWZhdWx0O1xuJHBhcmFsbGF4LXBlcnNwZWN0aXZlOiAxMDAwcHggIWRlZmF1bHQ7XG4kcGFyYWxsYXgtc2NhbGU6IC45NSAhZGVmYXVsdDtcbiRwYXJhbGxheC1mYWRlLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4zNSkgIWRlZmF1bHQ7XG5cbi8vIE1peGluOiBQYXJhbGxheCBkaXJlY3Rpb25cbkBtaXhpbiBwYXJhbGxheC1kaXIoKSB7XG4gIGhlaWdodDogNTAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA1MCU7XG4gIHotaW5kZXg6ICR6aW5kZXgtMTtcbn1cblxuLnBhcmFsbGF4IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcblxuICAucGFyYWxsYXgtY29udGVudCB7XG4gICAgQGluY2x1ZGUgc2hhZG93LXZhcmlhbnQoMXJlbSk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoJHBhcmFsbGF4LXBlcnNwZWN0aXZlKTtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLnBhcmFsbGF4LWZyb250IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtc2hhZG93OiAwIDAgMjBweCByZ2JhKCRkYXJrLWNvbG9yLCAuNzUpO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooJHBhcmFsbGF4LW9mZnNldC16KSBzY2FsZSgkcGFyYWxsYXgtc2NhbGUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gIH1cblxuICAucGFyYWxsYXgtdG9wLWxlZnQge1xuICAgIEBpbmNsdWRlIHBhcmFsbGF4LWRpcigpO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuXG4gICAgJjpmb2N1cyB+IC5wYXJhbGxheC1jb250ZW50LFxuICAgICY6aG92ZXIgfiAucGFyYWxsYXgtY29udGVudCB7XG4gICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKCRwYXJhbGxheC1wZXJzcGVjdGl2ZSkgcm90YXRlWCgkcGFyYWxsYXgtZGVnKSByb3RhdGVZKC0kcGFyYWxsYXgtZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgJHBhcmFsbGF4LWZhZGUtY29sb3IgMCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gICAgICB9XG5cbiAgICAgIC5wYXJhbGxheC1mcm9udCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHBhcmFsbGF4LW9mZnNldCwgJHBhcmFsbGF4LW9mZnNldCwgJHBhcmFsbGF4LW9mZnNldC16KSBzY2FsZSgkcGFyYWxsYXgtc2NhbGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wYXJhbGxheC10b3AtcmlnaHQge1xuICAgIEBpbmNsdWRlIHBhcmFsbGF4LWRpcigpO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcblxuICAgICY6Zm9jdXMgfiAucGFyYWxsYXgtY29udGVudCxcbiAgICAmOmhvdmVyIH4gLnBhcmFsbGF4LWNvbnRlbnQge1xuICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgkcGFyYWxsYXgtcGVyc3BlY3RpdmUpIHJvdGF0ZVgoJHBhcmFsbGF4LWRlZykgcm90YXRlWSgkcGFyYWxsYXgtZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC0xMzVkZWcsICRwYXJhbGxheC1mYWRlLWNvbG9yIDAlLCB0cmFuc3BhcmVudCA1MCUpO1xuICAgICAgfVxuXG4gICAgICAucGFyYWxsYXgtZnJvbnQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0kcGFyYWxsYXgtb2Zmc2V0LCAkcGFyYWxsYXgtb2Zmc2V0LCAkcGFyYWxsYXgtb2Zmc2V0LXopIHNjYWxlKCRwYXJhbGxheC1zY2FsZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhcmFsbGF4LWJvdHRvbS1sZWZ0IHtcbiAgICBAaW5jbHVkZSBwYXJhbGxheC1kaXIoKTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcblxuICAgICY6Zm9jdXMgfiAucGFyYWxsYXgtY29udGVudCxcbiAgICAmOmhvdmVyIH4gLnBhcmFsbGF4LWNvbnRlbnQge1xuICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgkcGFyYWxsYXgtcGVyc3BlY3RpdmUpIHJvdGF0ZVgoLSRwYXJhbGxheC1kZWcpIHJvdGF0ZVkoLSRwYXJhbGxheC1kZWcpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICRwYXJhbGxheC1mYWRlLWNvbG9yIDAlLCB0cmFuc3BhcmVudCA1MCUpO1xuICAgICAgfVxuXG4gICAgICAucGFyYWxsYXgtZnJvbnQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRwYXJhbGxheC1vZmZzZXQsIC0kcGFyYWxsYXgtb2Zmc2V0LCAkcGFyYWxsYXgtb2Zmc2V0LXopIHNjYWxlKCRwYXJhbGxheC1zY2FsZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhcmFsbGF4LWJvdHRvbS1yaWdodCB7XG4gICAgQGluY2x1ZGUgcGFyYWxsYXgtZGlyKCk7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgJjpmb2N1cyB+IC5wYXJhbGxheC1jb250ZW50LFxuICAgICY6aG92ZXIgfiAucGFyYWxsYXgtY29udGVudCB7XG4gICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKCRwYXJhbGxheC1wZXJzcGVjdGl2ZSkgcm90YXRlWCgtJHBhcmFsbGF4LWRlZykgcm90YXRlWSgkcGFyYWxsYXgtZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC00NWRlZywgJHBhcmFsbGF4LWZhZGUtY29sb3IgMCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gICAgICB9XG5cbiAgICAgIC5wYXJhbGxheC1mcm9udCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLSRwYXJhbGxheC1vZmZzZXQsIC0kcGFyYWxsYXgtb2Zmc2V0LCAkcGFyYWxsYXgtb2Zmc2V0LXopIHNjYWxlKCRwYXJhbGxheC1zY2FsZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBQcm9ncmVzc1xuLy8gQ3JlZGl0OiBodHRwczovL2Nzcy10cmlja3MuY29tL2h0bWw1LXByb2dyZXNzLWVsZW1lbnQvXG4ucHJvZ3Jlc3Mge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBoZWlnaHQ6ICR1bml0LTE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOmluZGV0ZXJtaW5hdGUge1xuICAgIGFuaW1hdGlvbjogcHJvZ3Jlc3MtaW5kZXRlcm1pbmF0ZSAxLjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyayBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRwcmltYXJ5LWNvbG9yIDMwJSwgJGJnLWNvbG9yLWRhcmsgMzAlKSB0b3AgbGVmdCAvIDE1MCUgMTUwJSBuby1yZXBlYXQ7XG5cbiAgICAmOjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwcm9ncmVzcy1pbmRldGVybWluYXRlIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDIwMCUgMDtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjAwJSAwO1xuICB9XG59XG4iLCIvLyBTbGlkZXJzXG4vLyBDcmVkaXQ6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc3R5bGluZy1jcm9zcy1icm93c2VyLWNvbXBhdGlibGUtcmFuZ2UtaW5wdXRzLWNzcy9cbi5zbGlkZXIge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICR1bml0LTY7XG5cbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coKTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJi50b29sdGlwOm5vdChbZGF0YS10b29sdGlwXSkge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IGF0dHIodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNsaWRlciBUaHVtYlxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiAkdW5pdC0zO1xuICAgIG1hcmdpbi10b3A6IC0oJHVuaXQtMyAtICR1bml0LWgpIC8gMjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2U7XG4gICAgd2lkdGg6ICR1bml0LTM7XG4gIH1cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6ICR1bml0LTM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlO1xuICAgIHdpZHRoOiAkdW5pdC0zO1xuICB9XG4gICY6Oi1tcy10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6ICR1bml0LTM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlO1xuICAgIHdpZHRoOiAkdW5pdC0zO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjI1KTtcbiAgICB9XG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktY29sb3ItbGlnaHQ7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICRncmF5LWNvbG9yLWxpZ2h0O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICRncmF5LWNvbG9yLWxpZ2h0O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gIH1cblxuICAvLyBTbGlkZXIgVHJhY2tcbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1kYXJrO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGhlaWdodDogJHVuaXQtaDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBoZWlnaHQ6ICR1bml0LWg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBoZWlnaHQ6ICR1bml0LWg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG59XG4iLCIvLyBUaW1lbGluZXNcbi50aW1lbGluZSB7XG4gIC50aW1lbGluZS1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1ib3R0b206ICR1bml0LTY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDExcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICR1bml0LTY7XG4gICAgICB3aWR0aDogMnB4O1xuICAgIH1cblxuICAgIC50aW1lbGluZS1sZWZ0IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgIC50aW1lbGluZS1jb250ZW50IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgcGFkZGluZzogMnB4IDAgMnB4ICRsYXlvdXQtc3BhY2luZy1sZztcbiAgICB9XG5cbiAgICAudGltZWxpbmUtaWNvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6ICR1bml0LTY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogJHVuaXQtNjtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aC1sZyBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAkdW5pdC0yO1xuICAgICAgICBsZWZ0OiAkdW5pdC0yO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogJHVuaXQtMjtcbiAgICAgICAgd2lkdGg6ICR1bml0LTI7XG4gICAgICB9XG5cbiAgICAgICYuaWNvbi1sZyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxzRkFBNEY7QWFINUYsQUFBQSxrQkFBa0IsQ0FBQyxFQUNqQixRQUFRLEVBQUUsUUFBUSxHQTRDbkI7O0FBN0NELEFBR0Usa0JBSGdCLENBR2hCLHdCQUF3QixDQUFDLEVBQ3ZCLGFBQWEsRUFBRSxVQUFVLEVBQ3pCLE9BQU8sRUFBRSxJQUFJLEVBQ2IsU0FBUyxFQUFFLElBQUksRUFDZixNQUFNLEVBQUUsSUFBSSxFQUNaLFVBQVUsRVpxREwsTUFBTSxFWXBEWCxPQUFPLEVaNENGLE1BQUssR1kzQlg7O0FBMUJILEFBV0ksa0JBWGMsQ0FHaEIsd0JBQXdCLEFBUXJCLFdBQVcsQ0FBQyxFSlZmLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFLLENSS1QsdUJBQU8sRVlPakIsWUFBWSxFWlBGLE9BQU8sR1lRbEI7O0FBZEwsQUFnQkksa0JBaEJjLENBR2hCLHdCQUF3QixDQWF0QixXQUFXLENBQUMsRUFDVixZQUFZLEVBQUUsV0FBVyxFQUN6QixVQUFVLEVBQUUsSUFBSSxFQUNoQixPQUFPLEVBQUUsWUFBWSxFQUNyQixJQUFJLEVBQUUsUUFBUSxFQUNkLE1BQU0sRVpzQ0gsTUFBTSxFWXJDVCxXQUFXLEVabUNSLE1BQUssRVlsQ1IsTUFBTSxFWjhCSCxNQUFLLEVZN0JSLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBekJMLEFBNEJFLGtCQTVCZ0IsQ0E0QmhCLEtBQUssQ0FBQyxFQUNKLElBQUksRUFBRSxDQUFDLEVBQ1AsUUFBUSxFQUFFLFFBQVEsRUFDbEIsR0FBRyxFQUFFLElBQUksRUFDVCxL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 */