theme.css 119 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516
  1. @font-face { font-family: "lato"; src: url("../fonts/lato/Lato-Regular.eot"); src: url("../fonts/lato/Lato-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/lato/Lato-Regular.woff") format("woff"), url("../fonts/lato/Lato-Regular.ttf") format("truetype"), url("../fonts/lato/Lato-Regular.svg#lato") format("svg"); }
  2. @font-face { font-family: "syne"; src: url("../fonts/syne/Syne-Bold.eot"); src: url("../fonts/syne/Syne-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/syne/Syne-Bold.woff") format("woff"), url("../fonts/syne/Syne-Bold.ttf") format("truetype"), url("../fonts/syne/Syne-Bold.svg#syne") format("svg"); }
  3. @font-face { font-family: "Avara"; src: url("../fonts/avara/Avara-Bold_Italic_web.eot"); src: url("../fonts/avara/Avara-Bold_Italic_web.eot?#iefix") format("embedded-opentype"), url("../fonts/avara/Avara-Bold_Italic_web.woff") format("woff"), url("../fonts/avara/Avara-Bold_Italic_web.ttf") format("truetype"), url("../fonts/avara/Avara-Bold_Italic_web.svg#Avara") format("svg"); }
  4. @font-face { font-family: "playfairdisplay-regularitalic"; src: url("../fonts/playfair/playfairdisplay-regularitalic.eot"); src: url("../fonts/playfair/playfairdisplay-regularitalic.eot?#iefix") format("embedded-opentype"), url("../fonts/playfair/playfairdisplay-regularitalic.woff") format("woff"), url("../fonts/playfair/playfairdisplay-regularitalic.ttf") format("truetype"), url("../fonts/playfair/playfairdisplay-regularitalic.svg#playfairdisplay-regularitalic") format("svg"); }
  5. @font-face { font-family: "Moche-Bold"; src: url("../fonts/moche/Moche-Bold.eot"); src: url("../fonts/moche/Moche-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/moche/Moche-Bold.woff") format("woff"), url("../fonts/moche/Moche-Bold.ttf") format("truetype"), url("../fonts/moche/Moche-Bold.svg#Moche-Bold") format("svg"); }
  6. @font-face { font-family: "rammetto-regular"; src: url("../fonts/rammetto/rammettoone-regular-webfont.eot"); src: url("../fonts/rammetto/rammettoone-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/rammetto/rammettoone-regular-webfont.woff") format("woff"), url("../fonts/rammetto/rammettoone-regular-webfont.ttf") format("truetype"), url("../fonts/rammetto/rammettoone-regular-webfont.svg#rammetto-regular") format("svg"); }
  7. @font-face { font-family: "rumeur-regular"; src: url("../fonts/rumeur/rumeur-webfont.eot"); src: url("../fonts/rumeur/rumeur-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/rumeur/rumeur-webfont.woff") format("woff"), url("../fonts/rumeur/rumeur-webfont.ttf") format("truetype"), url("../fonts/rumeur/rumeur-webfont.svg#rumeur-regular") format("svg"); }
  8. /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
  9. /* Document ========================================================================== */
  10. /** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. */
  11. html { margin: 0; padding: 0; line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ font-size: 16px; }
  12. /* Sections ========================================================================== */
  13. /** Remove the margin in all browsers. */
  14. body { margin: 0; padding: 0; }
  15. /** Render the `main` element consistently in IE. */
  16. main { display: block; }
  17. /** Correct the font size and margin on `h1` elements within `section` and `article` contexts in Chrome, Firefox, and Safari. */
  18. h1 { font-size: auto; margin: 0; }
  19. /* Grouping content ========================================================================== */
  20. /** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
  21. hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }
  22. /** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
  23. pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }
  24. /* Text-level semantics ========================================================================== */
  25. /** Remove the gray background on active links in IE 10. */
  26. p { margin: 0; }
  27. ul { list-style: none; }
  28. ul, li { margin: 0; padding: 0; }
  29. a { background-color: transparent; color: black; text-decoration: none; }
  30. /** 1. Remove the bottom border in Chrome 57- 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
  31. abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ }
  32. /** Add the correct font weight in Chrome, Edge, and Safari. */
  33. b, strong { font-weight: bolder; }
  34. /** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
  35. code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }
  36. /** Add the correct font size in all browsers. */
  37. small { font-size: 80%; }
  38. /** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
  39. sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
  40. sub { bottom: -0.25em; }
  41. sup { top: -0.5em; }
  42. /* Embedded content ========================================================================== */
  43. /** Remove the border on images inside links in IE 10. */
  44. img { border-style: none; width: 100%; height: 100%; vertical-align: bottom; }
  45. /* Forms ========================================================================== */
  46. /** 1. Change the font styles in all browsers. 2. Remove the margin in Firefox and Safari. */
  47. button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }
  48. /** Show the overflow in IE. 1. Show the overflow in Edge. */
  49. button, input { /* 1 */ overflow: visible; }
  50. /** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
  51. button, select { /* 1 */ text-transform: none; }
  52. /** Correct the inability to style clickable types in iOS and Safari. */
  53. button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }
  54. /** Remove the inner border and padding in Firefox. */
  55. button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }
  56. /** Restore the focus styles unset by the previous rule. */
  57. button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }
  58. /** Correct the padding in Firefox. */
  59. fieldset { padding: 0.35em 0.75em 0.625em; }
  60. /** 1. Correct the text wrapping in Edge and IE. 2. Correct the color inheritance from `fieldset` elements in IE. 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. */
  61. legend { box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }
  62. /** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
  63. progress { vertical-align: baseline; }
  64. /** Remove the default vertical scrollbar in IE 10+. */
  65. textarea { overflow: auto; }
  66. /** 1. Add the correct box sizing in IE 10. 2. Remove the padding in IE 10. */
  67. [type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }
  68. /** Correct the cursor style of increment and decrement buttons in Chrome. */
  69. [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
  70. /** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
  71. [type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }
  72. /** Remove the inner padding in Chrome and Safari on macOS. */
  73. [type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
  74. /** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
  75. ::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }
  76. /* Interactive ========================================================================== */
  77. /* Add the correct display in Edge, IE 10+, and Firefox. */
  78. details { display: block; }
  79. /* Add the correct display in all browsers. */
  80. summary { display: list-item; }
  81. /* Misc ========================================================================== */
  82. /** Add the correct display in IE 10+. */
  83. template { display: none; }
  84. /** Add the correct display in IE 10. */
  85. [hidden] { display: none; }
  86. h1, h2, h3, p, ul, li, a, span { font-family: "lato"; font-weight: lighter; }
  87. header a { font-size: 2.5rem; line-height: 3rem; }
  88. a, button { border: none; outline: none !important; }
  89. .title-menu h2 { font-family: "rammetto-regular"; }
  90. .home h2, .home p { font-size: 2.5rem; line-height: 3rem; }
  91. .home #text_figli strong { position: relative; }
  92. .home #text_figli strong::after { display: block; position: absolute; content: ""; width: 100%; height: 1px; background: black; bottom: 0; }
  93. .home #text_figli a { position: relative; }
  94. .home #text_figli a#publique { font-family: "playfairdisplay-regularitalic"; }
  95. .home #text_figli a#sociale { font-family: "syne"; }
  96. .home #text_figli a#culturelle { font-family: "Avara"; }
  97. .home #text_figli a#commanditaires { font-family: "Moche-Bold"; }
  98. .home #text_figli a#figureslibres { font-family: "rammetto-regular"; }
  99. .home #text_figli a#logiciels-libres { font-family: "rumeur-regular"; }
  100. .home #text_figli #item .e-content p { font-size: 1.5rem; line-height: 3rem; }
  101. .home #text_figli #item .e-content p strong { font-weight: bold !important; }
  102. .home #text_figli #item .e-content p a { text-decoration: underline; }
  103. .home #text_figli #item .e-content p em { font-style: italic; }
  104. .home #text_figli #item_list.commanditaires { flex-direction: column; }
  105. .home #text_figli #item_list.commanditaires .card-title { line-height: normal; }
  106. .home #text_figli #item_list.figureslibres h3 { margin: 10px 0 0 0; font-weight: bold; font-size: 1rem; line-height: 1.5rem; font-family: "rammetto-regular"; }
  107. .home #text_figli #item_list.figureslibres h3::after { display: none; }
  108. .home #text_figli #item_list.figureslibres p strong { margin-top: 10px; font-family: "rammetto-regular"; display: block; }
  109. .home #text_figli #item_list.figureslibres p strong::after { display: none; }
  110. .home #text_figli #item_list.logiciels-libres h3 { margin: 10px 0 0 0; font-weight: bold; font-size: 1.2rem; line-height: 1.5rem; }
  111. .home #text_figli #item_list.logiciels-libres h3::after { display: none; }
  112. .home #text_figli #item_list.figureslibres p strong { display: block; font-weight: bold; }
  113. .home #text_figli #item_list.figureslibres p strong::after { display: none; }
  114. #item h2 { width: auto; line-height: 4rem !important; font-size: 4rem !important; font-weight: normal !important; }
  115. #item span { font-size: 1rem; }
  116. #item.publique h2 { font-family: "playfairdisplay-regularitalic"; }
  117. #item.publique span { font-family: "playfairdisplay-regularitalic"; font-weight: normal; }
  118. #item.sociale h2 { font-family: "syne"; }
  119. #item.sociale span { font-family: "syne"; font-weight: normal; }
  120. #item.culturelle h2 { font-family: "Avara"; }
  121. #item.culturelle span { font-family: "Avara"; font-weight: normal; }
  122. a.publique, span.publique { font-family: "playfairdisplay-regularitalic"; }
  123. a.sociale, span.sociale { font-family: "syne"; }
  124. a.culturelle, span.culturelle { font-family: "Avara"; }
  125. .sidebar-right h2 { margin: 0rem; }
  126. .sidebar-right ul > span { font-size: 0.8rem; line-height: 1rem !important; text-decoration: underline; margin-bottom: 0.5rem; }
  127. .sidebar-right ul > li { font-size: 1.7rem; line-height: 2.5rem; }
  128. .sidebar-right ul > li a { font-size: 1.7rem; line-height: 2rem; border-radius: 50px; }
  129. .sidebar-right .informations { padding: 1rem; }
  130. .sidebar-right .informations > div { margin-bottom: 1rem; }
  131. .sidebar-right .informations h3 { font-size: 1.5rem; line-height: 2rem; margin: 0; }
  132. .sidebar-right .informations p { font-size: 1rem; line-height: 1.5rem; }
  133. .other_projets h3 { font-size: 2.5rem; margin: 0; }
  134. .card h2 { margin: 0; font-size: 1rem; }
  135. #text_figli { z-index: 999; opacity: 1; }
  136. #text_figli p > a { z-index: 999; }
  137. #text_figli p > a:before, #text_figli p > a:after { content: ""; position: absolute; bottom: -1px; width: 50%; height: 1px; margin: 1px 0 0; transition: all 0.2s ease-in-out; transition-duration: 0.3s; opacity: 1; background-color: black; }
  138. #text_figli p > a::before { left: 50%; }
  139. #text_figli p > a:after { right: 50%; }
  140. #text_figli p > a:hover { cursor: pointer; }
  141. #text_figli p > a:hover:before, #text_figli p > a:hover:after { width: 100%; opacity: 1; }
  142. #text_figli p > a:hover:before, #text_figli p > a:hover:after { width: 50%; }
  143. #text_figli p > a #icone_list { transition: 1s 0.5s margin-left,0.8s 0.3s opacity; }
  144. #text_figli p > a #icone_list .hamburger.hamburger--slider .hamburger-inner { transform: translate3d(0, 5px, 0) rotate(0deg); transition: 0s 0.2s transform; }
  145. #text_figli p > a #icone_list .hamburger.hamburger--slider .hamburger-inner:after { transform: translate3d(0, -10px, 0) rotate(0deg); transition: 0.2s 0.2s transform; }
  146. #text_figli p > a.open #icone_list { transition: 0.5s margin-left, 0.5s opacity; }
  147. #text_figli p > a.open #icone_list .hamburger.hamburger--slider .hamburger-inner { transform: translate3d(0, 5px, 0) rotate(45deg); transition: 0.8s 0.2s transform; }
  148. #text_figli p > a.open #icone_list .hamburger.hamburger--slider .hamburger-inner:after { transform: translate3d(0, -10px, 0) rotate(90deg); transition: 1s 0.2s transform; }
  149. #text_figli p > a#figureslibres::before, #text_figli p > a#figureslibres::after { bottom: 5px; }
  150. #text_figli.hidden { opacity: 0; transition: 0.3s opacity ease; }
  151. #text_figli #item_list p > a { cursor: pointer; }
  152. #text_figli #item_list p > a:before, #text_figli #item_list p > a:after { width: 100%; opacity: 1; }
  153. #text_figli #item_list p > a:before, #text_figli #item_list p > a:after { width: 50%; }
  154. .circle_hover { position: absolute; width: 0px; height: 0px; transform: translate(-50%, -50%); z-index: 0; transition: height .2s, width .2s; }
  155. .circle_hover.open { width: 200px; height: 200px; transition: height .5s, width .5s; }
  156. .circle_hover.figureslibres { background: url("/user/themes/figureslibres/images/figures_libres.svg") center no-repeat; background-size: contain; }
  157. .circle_hover.publique { background: url("/user/themes/figureslibres/images/publique.svg") center no-repeat; background-size: contain; }
  158. .circle_hover.sociale { background: url("/user/themes/figureslibres/images/sociale.svg") center no-repeat; background-size: contain; }
  159. .circle_hover.culturelle { background: url("/user/themes/figureslibres/images/culturelle.svg") center no-repeat; background-size: contain; }
  160. .circle_hover.commanditaires { background: url("/user/themes/figureslibres/images/commanditaires.svg") center no-repeat; background-size: contain; }
  161. .circle_hover.logiciels-libres { background: url("/user/themes/figureslibres/images/logiciels_libres.svg") center no-repeat; background-size: contain; }
  162. * { box-sizing: border-box; }
  163. .loader { display: none; background-image: url("/user/themes/figureslibres/images/ajax-loader.gif"); background-size: 10px 10px; background-position: center; background-repeat: no-repeat; vertical-align: middle; margin-left: 10px; width: 10px; height: 10px; }
  164. .card .loader { position: absolute; top: 50%; left: 50%; transform: translate(-50%, 50%); z-index: 999; margin-left: 0; }
  165. html, body { background: #f9f9f9fe; }
  166. html.hidden, body.hidden { overflow: hidden; }
  167. img.lazy { display: block; }
  168. body #start { width: calc(( 100% / 1.5 ) - (1rem / 2)); margin: 1rem auto auto 1rem; }
  169. body #start #text_figli p a #icone_list { opacity: 0; margin-left: -30px; z-index: 999; position: relative; display: inline-block; }
  170. body #start #text_figli p a #icone_list .hamburger { padding: 0; margin-left: 10px; }
  171. body #start #text_figli p a #icone_list .hamburger .hamburger-box { vertical-align: middle; }
  172. body #start #text_figli p a.marg { margin-right: 0.5rem; }
  173. body #start #text_figli p a.open #icone_list { z-index: 999; position: relative; display: inline-block; margin-left: 0px; opacity: 1; transition: 0.5s margin-left, 0.5s opacity; }
  174. body #start #text_figli p a.open #icone_list .hamburger { padding: 0; margin-left: 10px; }
  175. body #start #text_figli p a.open #icone_list .hamburger.hamburger--slider .hamburger-inner { transform: translate3d(0, 5px, 0) rotate(45deg); transition: 0.8s 0.2s transform; }
  176. body #start #text_figli p a.open #icone_list .hamburger.hamburger--slider .hamburger-inner:after { transform: translate3d(0, -20px, 0) rotate(90deg); transition: 1s 0.2s transform; }
  177. body #start #text_figli p a.open #icone_list .hamburger .hamburger-box { vertical-align: middle; }
  178. body #start #text_figli #item_list { width: 80vw; margin-top: 0.5rem; position: relative; }
  179. body #start #text_figli #item_list .card { width: calc((100% / 5) - ( 0.5rem * 2)); min-width: 250px; display: inline-block; vertical-align: top; position: relative; margin: 0 0.5rem 0.5rem 0; height: 100%; }
  180. body #start #text_figli #item_list .card > .card-image.open a img { -webkit-filter: grayscale(0); filter: grayscale(0); transition: -webkit-filter 0.3s ease; transition: filter 0.3s ease; transition: filter 0.3s ease, -webkit-filter 0.3s ease; }
  181. body #start #text_figli #item_list .card a { display: block; border-radius: 5px; overflow: auto; }
  182. body #start #text_figli #item_list .card a img { -webkit-filter: grayscale(1); filter: grayscale(1); transition: -webkit-filter 0.3s ease; transition: filter 0.3s ease; transition: filter 0.3s ease, -webkit-filter 0.3s ease; }
  183. body #start #text_figli #item_list .card .card-header { width: 100%; padding: 0.5rem; flex-wrap: wrap; display: none; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; }
  184. body #start #text_figli #item_list .card .card-header > * { font-size: 0.8rem; line-height: 1rem; margin-right: 0.5rem; }
  185. body #start #text_figli #item_list .card:hover a { display: block; }
  186. body #start #text_figli #item_list .card:hover a img { -webkit-filter: grayscale(0); filter: grayscale(0); transition: -webkit-filter 0.3s ease; transition: filter 0.3s ease; transition: filter 0.3s ease, -webkit-filter 0.3s ease; }
  187. body #start #text_figli #item_list .card:hover .card-header { display: inline-flex; position: absolute; bottom: 0; }
  188. body #start #text_figli #item_list .card:last-of-type { vertical-align: baseline !important; }
  189. body #start #text_figli #item_list .card #item { width: calc( 80vw - ( 0.5rem * 6)); padding: 2rem 2rem 0.5rem 2rem; margin-top: 0.5rem; border-radius: 5px; position: relative; }
  190. body #start #text_figli #item_list .card #item .content-title { margin: 1rem auto 3rem auto; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; }
  191. body #start #text_figli #item_list .card #item .content-title a { display: block; }
  192. body #start #text_figli #item_list .card #item .e-content p { font-size: 1rem; line-height: 1.2rem; }
  193. body #start #text_figli #item_list .card #item.publique { background: #ffaeab; }
  194. body #start #text_figli #item_list .card #item.sociale { background: #7eff71; }
  195. body #start #text_figli #item_list .card #item.culturelle { background: #feff74; }
  196. body #start #text_figli #item_list .card #item.commanditaires { background: #fabbde; }
  197. body #start #text_figli #item_list .card #item #icone_list { position: absolute; top: 10px; right: 0; line-height: 0; }
  198. body #start #text_figli #item_list.publique .card:hover .card-header { background: #ffaeab; }
  199. body #start #text_figli #item_list.sociale .card:hover .card-header { background: #7eff71; }
  200. body #start #text_figli #item_list.culturelle .card:hover .card-header { background: #feff74; }
  201. body #start #text_figli #item_list.commanditaires { -moz-columns: 4 150px; columns: 4 150px; -moz-column-gap: 2em; column-gap: 2em; display: block; margin: 1rem auto; }
  202. body #start #text_figli #item_list.commanditaires p { font-size: 1rem; line-height: 1.2rem; margin: 0.5rem auto; }
  203. body #start #text_figli #item_list.commanditaires .card:hover .card-header { background: #feff74; }
  204. body #start #text_figli #item_list.figureslibres, body #start #text_figli #item_list.logiciels-libres { display: block; width: 70%; min-width: 500px; margin: 1rem 0; }
  205. body #start #text_figli #item_list.figureslibres p, body #start #text_figli #item_list.logiciels-libres p { font-size: 1rem; line-height: 1.5rem; }
  206. body #start #text_figli #top { cursor: pointer; position: relative; width: 100%; text-align: center; }
  207. body:not(.home) #start { margin-top: calc( 2rem + 3rem); }
  208. #icone_list .hamburger .hamburger-box { width: 35px; }
  209. #icone_list .hamburger .hamburger-box .hamburger-inner { height: 2px; width: 35px; }
  210. #icone_list .hamburger .hamburger-box .hamburger-inner::before { width: 35px; height: inherit; top: 10px; }
  211. #icone_list .hamburger .hamburger-box .hamburger-inner::after { top: 20px; height: inherit; width: inherit; }
  212. #icone_list .hamburger.hamburger--slider.is-active .hamburger-inner { transform: translate3d(0, 10px, 0) rotate(45deg); }
  213. #icone_list .hamburger.hamburger--slider.is-active .hamburger-inner::after { transform: translate3d(0, -20px, 0) rotate(-90deg); }
  214. body.sticky-footer { height: 100%; min-height: 100vh; display: flex; flex-direction: column; }
  215. body.sticky-footer #page-wrapper { flex: 1 0 auto; }
  216. .home footer { color: #acb3c2; display: inline-flex; position: fixed; bottom: 20px; right: 20px; }
  217. .home footer p { font-size: 1rem !important; line-height: 1rem !important; }
  218. .home footer p a img { width: 20px !important; }
  219. .sidebar-right { position: fixed; width: 100%; height: 100%; left: -100vw; top: 0; transition: 0.3s right ease; background: #f9f9f9fe; z-index: 1000; }
  220. .sidebar-right ul span { line-height: 2rem; }
  221. .sidebar-right #icone_list { z-index: 1000; position: fixed; top: 20px; right: 20px; }
  222. .sidebar-right .list-projets { height: 100%; overflow: auto; margin: 1rem auto auto 1rem; }
  223. .sidebar-right .list-projets .title-menu::after { content: " "; width: 0; height: 1px; display: block; margin-top: 0.5rem; }
  224. .sidebar-right .list-projets .container-wrap { display: inline-flex; }
  225. .sidebar-right .list-projets .container { width: 85%; opacity: 0; position: relative; overflow: auto; padding: 1rem 2rem 2rem 0rem; margin-top: 20px; }
  226. .sidebar-right .list-projets .container::after { content: " "; height: 0; width: 1px; display: block; position: absolute; top: 0; margin-right: 1rem; right: 0; }
  227. .sidebar-right .list-projets .container ul { margin-bottom: 20px; }
  228. .sidebar-right .list-projets .container ul span.cat { display: block; line-height: 3rem; }
  229. .sidebar-right .list-projets .container ul li { display: inline-flex; align-items: flex-end; width: auto; position: relative; }
  230. .sidebar-right .list-projets .container ul li a { z-index: 0; display: block; background: #f9f9f9fe; transition: 0.6s background; margin-right: 0px; padding: 0 7px; }
  231. .sidebar-right .list-projets .container ul li a .img { pointer-events: none; display: none; position: fixed; width: 300px; height: auto; z-index: 999; transform-origin: center center; transform: rotate(0deg); border-radius: 10px; overflow: hidden; }
  232. .sidebar-right .list-projets .container ul li a:hover { z-index: 999; }
  233. .sidebar-right .list-projets .container ul li a:hover .img { display: block; transition: all 1s ease; }
  234. .sidebar-right .list-projets .container ul li:hover.culturelle a { background: #feff74; transition: 0.6s background; }
  235. .sidebar-right .list-projets .container ul li:hover.sociale a { background: #7eff71; transition: 0.6s background; }
  236. .sidebar-right .list-projets .container ul li:hover.publique a { background: #ffaeab; transition: 0.6s background; }
  237. .sidebar-right .list-projets .container ul li:hover::before { min-width: 100%; transition: 0.3s background; }
  238. .sidebar-right .list-projets .container ul a { color: black; z-index: 999; }
  239. .sidebar-right .list-projets .container ul a.active { color: black; }
  240. .sidebar-right .list-projets .informations { min-width: 250px; position: relative; height: 100%; padding-left: 40px; opacity: 0; }
  241. .sidebar-right.is-active { left: 0; transition: 0.5s 0.3s left ease; }
  242. .sidebar-right.is-active .title-menu::after { width: 100%; background: black; transition: 1s 0.9s width ease; }
  243. .sidebar-right.is-active .informations { padding-left: 25px; opacity: 1; transition: 1s opacity 1s ease; }
  244. .sidebar-right.is-active .container { margin-top: 0; opacity: 1; transition: 1s opacity 1s ease; }
  245. .sidebar-right.is-active .container::after { background: black; height: 100%; transition: 1s 0.9s height ease; }
  246. #item_list { display: inline-flex; flex-wrap: wrap; width: 100%; }
  247. #item_list .card { width: calc(( 100% / 2 ) - (1rem / 2)); height: 100%; }
  248. #item_list .card:nth-child(odd) { margin-right: 1rem; }
  249. #item_list .card .card-header { z-index: 999; display: inline-flex; width: 100%; }
  250. #item_list .card .card-header > * { margin-right: 0.5rem; }
  251. #item .e-content { width: 50%; min-width: 500px; margin: 0 0 2rem 0; }
  252. #item .card-image img:not(:last-of-type) { margin-bottom: 1.5rem; }
  253. .other_projets { border-top: 1px solid black; display: flex; flex-wrap: wrap; margin-top: 1rem; margin-bottom: 1rem; }
  254. .other_projets h3 { margin: 1rem 0 0.5rem 0; width: 100%; }
  255. .other_projets .card { width: calc(( 100% / 3 ) - (1rem / 3)); }
  256. .other_projets .card:nth-child(-1n+3) { margin-right: 0.5rem; }
  257. .other_projets .card .card-header { display: flex; flex-wrap: wrap; }
  258. .other_projets .card .card-header > * { margin-right: 0.5rem; }
  259. @media screen and (max-width: 1024px) { body #start { width: 80%; }
  260. body #start #text_figli #item_list.figureslibres, body #start #text_figli #item_list.logiciels-libres { width: 100%; }
  261. body #start #text_figli #item_list .card { width: calc(( 100% / 3 ) - 0.5rem); }
  262. body #start #text_figli #item_list .card #item { width: calc(300% + (.5rem * 2)); }
  263. body #start #text_figli #item_list .card #item .content-title { margin: 1rem auto 1rem auto; }
  264. body #start #text_figli #item_list .card #item .e-content { width: 100%; } }
  265. @media screen and (max-width: 1000px) { .sidebar-right .list-projets .container { width: 100%; float: none; padding-bottom: 0; }
  266. .sidebar-right .list-projets .informations { float: none; padding-left: 0.5rem; margin-left: 10px; }
  267. #item_list { width: 90vw !important; } }
  268. @media screen and (max-width: 768px) { body #start #text_figli #item_list .card { width: calc((100% / 2) - .5rem); }
  269. body #start #text_figli #item_list .card #item { width: calc(90vw - 0.5rem); } }
  270. @media screen and (max-width: 510px) { body #start { width: calc( 100% - 1rem); margin: 0.5rem auto 2rem auto; }
  271. body #start #text_figli p { font-size: 1.7rem; line-height: 2.3rem; }
  272. body #start #text_figli #item_list { width: 100% !important; }
  273. body #start #text_figli #item_list.figureslibres, body #start #text_figli #item_list.logiciels-libres { min-width: 100%; }
  274. body #start #text_figli #item_list .card { width: calc(100%); margin: 0 0 0.5rem 0; }
  275. body #start #text_figli #item_list .card #item { width: 100%; padding: 1rem; }
  276. body #start #text_figli #item_list .card #item .e-content { min-width: 100%; margin: 2rem 0; }
  277. body #start #text_figli #item_list .card #item .content-title h2 { font-size: 2rem !important; line-height: 2.5rem !important; }
  278. body #start #text_figli #item_list .card #item .content-title > div { line-height: 1rem; }
  279. body .sidebar-right { width: 100%; right: -100%; }
  280. body .sidebar-right #icone_list { z-index: 0; top: 0; }
  281. body .sidebar-right #icone_list .hamburger { float: right; z-index: 999; }
  282. body .sidebar-right .list-projets { z-index: 999; }
  283. body .sidebar-right .list-projets .title-menu h2 { font-size: 1.7rem; line-height: 2.3rem; }
  284. body .sidebar-right .list-projets ul li { margin-top: 0 !important; display: initial !important; font-size: 1rem; line-height: 1.5rem; }
  285. body .sidebar-right .list-projets ul li::before { width: 100%; }
  286. body .sidebar-right .list-projets ul li a { display: initial !important; padding: 0rem !important; font-size: 1rem; line-height: 1.5rem; }
  287. body .sidebar-right .list-projets ul li a img { display: none !important; }
  288. body .sidebar-right .list-projets ul li > span { font-size: 1rem; line-height: 1.5rem; }
  289. body .sidebar-right .list-projets .container-wrap { display: block; }
  290. body .sidebar-right .list-projets .container-wrap .container::after { height: 1px; width: 0; bottom: 0; top: auto !important; left: 0 !important; }
  291. body .sidebar-right.is-active .container::after { width: 100% !important; transition: 1s width 1s ease; }
  292. body .sidebar-right .informations h3 { font-size: 1.1rem; }
  293. footer { z-index: 999; justify-content: center; width: 100%; bottom: 0 !important; left: 0 !important; padding: 0.5rem; background-color: #f9f9f9fe; }
  294. .circle_hover.open { width: 100px !important; height: 100px !important; } }
  295. /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuY3NzIiwic291cmNlcyI6WyJ0aGVtZS5zY3NzIiwiY29uZmlndXJhdGlvbnMvX2ZvbnRzLnNjc3MiLCJjb25maWd1cmF0aW9ucy9fdmFyaWFibGUuc2NzcyIsImNvbmZpZ3VyYXRpb25zL19leHRlbmQuc2NzcyIsInRoZW1lL19yZXNldC5zY3NzIiwidGhlbWUvX3R5cG9ncmFwaHkuc2NzcyIsInRoZW1lL19hbmltYXRpb24uc2NzcyIsInRoZW1lL19oZWFkZXIuc2NzcyIsInRoZW1lL19zdGFydC5zY3NzIiwidGhlbWUvX2Zvb3Rlci5zY3NzIiwidGhlbWUvX3NpZGViYXIuc2NzcyIsInRoZW1lL19ibG9nLnNjc3MiLCJ0aGVtZS9faXRlbS5zY3NzIiwidGhlbWUvX21vYmlsZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgJ2NvbmZpZ3VyYXRpb25zL19mb250cyc7XG5AaW1wb3J0ICdjb25maWd1cmF0aW9ucy9fdmFyaWFibGUnO1xuQGltcG9ydCAnY29uZmlndXJhdGlvbnMvX2V4dGVuZCc7XG5AaW1wb3J0ICd0aGVtZS9yZXNldCc7XG5AaW1wb3J0ICd0aGVtZS90eXBvZ3JhcGh5JztcblxuQGltcG9ydCAndGhlbWUvYW5pbWF0aW9uJztcbkBpbXBvcnQgJ3RoZW1lL2hlYWRlcic7XG5AaW1wb3J0ICd0aGVtZS9zdGFydCc7XG5AaW1wb3J0ICd0aGVtZS9mb290ZXInO1xuQGltcG9ydCAndGhlbWUvc2lkZWJhcic7XG5AaW1wb3J0ICd0aGVtZS9ibG9nJztcbkBpbXBvcnQgJ3RoZW1lL2l0ZW0nO1xuQGltcG9ydCAndGhlbWUvbW9iaWxlJztcbiIsIi8vIEZvbnQgRmFtaWx5XG4kZm9udC1mYW1pbHktZGVmYXVsdDogIFx0XHRcdFwiUmFsZXdheVwiLCBcIkhlbHZldGljYVwiLCBcIlRhaG9tYVwiLCBcIkdlbmV2YVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktaGVhZGVyOiAgXHRcdFx0XCJNb250c2VycmF0XCIsIFwiSGVsdmV0aWNhXCIsIFwiVGFob21hXCIsIFwiR2VuZXZhXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBcdFx0XHRcdFwiSW5jb25zb2xhdGFcIiwgbW9ub3NwYWNlO1xuJGZvbnQtZmFtaWx5LXNlcmlmOlx0XHRcdFx0XCJHZW9yZ2lhXCIsIFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4vLyBAZm9udC1mYWNlXG5cbiRsYXRvOiBcImxhdG9cIjtcbiRmYW1pbHk6IFwibGF0b1wiO1xuJGZpbGUtcmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcbiRjYXRlZ29yeTogXCJzYW5zLXNlcmlmXCI7XG5cbkBtaXhpbiBmb250LWZhY2UoJGxhdG8sICRmaWxlLXJlZ3VsYXIsICRmYW1pbHksICRjYXRlZ29yeTpcIlwiKSB7XG4gICAgJGZpbGVwYXRoOiBcIi4uL2ZvbnRzL1wiICsgJGZhbWlseSArIFwiL1wiICsgJGZpbGUtcmVndWxhcjtcbiAgICBAZm9udC1mYWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiI3skbGF0b31cIjtcbiAgICAgICAgc3JjOiB1cmwoJGZpbGVwYXRoICsgXCIuZW90XCIpO1xuICAgICAgICBzcmM6IHVybCgkZmlsZXBhdGggKyBcIi5lb3Q/I2llZml4XCIpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgICAgICAgdXJsKCRmaWxlcGF0aCArIFwiLndvZmZcIikgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi50dGZcIikgIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgICAgICAgdXJsKCRmaWxlcGF0aCArIFwiLnN2ZyNcIiArICRsYXRvICsgXCJcIikgZm9ybWF0KCdzdmcnKTtcbiAgICB9XG5cbiAgICAlI3skbGF0b30ge1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBAaWYgJGNhdGVnb3J5ICE9IFwiXCIge1xuICAgICAgICAgICAgICAgIGZhbWlseTogXCIjeyRsYXRvfVwiLCAjeyRjYXRlZ29yeX07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JGxhdG99XCI7XG4gICAgICAgICAgICAgICAgd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiRzeW5lOiBcInN5bmVcIjtcbiRmYW1pbHktYm9sZDogXCJzeW5lXCI7XG4kZmlsZS1ib2xkOiBcIlN5bmUtQm9sZFwiO1xuXG5AbWl4aW4gZm9udC1mYWNlKCRzeW5lLCAkZmlsZS1ib2xkLCAkZmFtaWx5LWJvbGQsICRjYXRlZ29yeTpcIlwiKSB7XG4gICAgJGZpbGVwYXRoOiBcIi4uL2ZvbnRzL1wiICsgJGZhbWlseS1ib2xkICsgXCIvXCIgKyAkZmlsZS1ib2xkO1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCIjeyRzeW5lfVwiO1xuICAgICAgICBzcmM6IHVybCgkZmlsZXBhdGggKyBcIi5lb3RcIik7XG4gICAgICAgIHNyYzogdXJsKCRmaWxlcGF0aCArIFwiLmVvdD8jaWVmaXhcIikgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICB9XG5cbiAgICAlI3skc3luZX0ge1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBAaWYgJGNhdGVnb3J5ICE9IFwiXCIge1xuICAgICAgICAgICAgICAgIGZhbWlseTogXCIjeyRzeW5lfVwiLCAjeyRjYXRlZ29yeX07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JHN5bmV9XCI7XG4gICAgICAgICAgICAgICAgd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiRhdmFyYTogXCJBdmFyYVwiO1xuJGZhbWlseS1ib2xkLWl0YWxpYzogXCJhdmFyYVwiO1xuJGZpbGUtYm9sZC1pdGFsaWM6IFwiQXZhcmEtQm9sZF9JdGFsaWNfd2ViXCI7XG5cbkBtaXhpbiBmb250LWZhY2UoJGF2YXJhLCAkZmlsZS1ib2xkLWl0YWxpYywgJGZhbWlseS1ib2xkLWl0YWxpYywgJGNhdGVnb3J5OlwiXCIpIHtcbiAgICAkZmlsZXBhdGg6IFwiLi4vZm9udHMvXCIgKyAkZmFtaWx5LWJvbGQtaXRhbGljICsgXCIvXCIgKyAkZmlsZS1ib2xkLWl0YWxpYztcbiAgICBAZm9udC1mYWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiI3skYXZhcmF9XCI7XG4gICAgICAgIHNyYzogdXJsKCRmaWxlcGF0aCArIFwiLmVvdFwiKTtcbiAgICAgICAgc3JjOiB1cmwoJGZpbGVwYXRoICsgXCIuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi53b2ZmXCIpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIudHRmXCIpICBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi5zdmcjXCIgKyAkYXZhcmEgKyBcIlwiKSBmb3JtYXQoJ3N2ZycpO1xuICAgIH1cblxuICAgICUjeyRhdmFyYX0ge1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBAaWYgJGNhdGVnb3J5ICE9IFwiXCIge1xuICAgICAgICAgICAgICAgIGZhbWlseTogXCIjeyRhdmFyYX1cIiwgI3skY2F0ZWdvcnl9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIGZhbWlseTogXCIjeyRhdmFyYX1cIjtcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuJHBsYXlmYWlyOiBcInBsYXlmYWlyZGlzcGxheS1yZWd1bGFyaXRhbGljXCI7XG4kZmFtaWx5LWl0YWxpYzogXCJwbGF5ZmFpclwiO1xuJGZpbGUtaXRhbGljOiBcInBsYXlmYWlyZGlzcGxheS1yZWd1bGFyaXRhbGljXCI7XG5cbkBtaXhpbiBmb250LWZhY2UoJHBsYXlmYWlyLCAkZmlsZS1pdGFsaWMsICRmYW1pbHktaXRhbGljLCAkY2F0ZWdvcnk6XCJcIikge1xuICAgICRmaWxlcGF0aDogXCIuLi9mb250cy9cIiArICRmYW1pbHktaXRhbGljICsgXCIvXCIgKyAkZmlsZS1pdGFsaWM7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIiN7JHBsYXlmYWlyfVwiO1xuICAgICAgICBzcmM6IHVybCgkZmlsZXBhdGggKyBcIi5lb3RcIik7XG4gICAgICAgIHNyYzogdXJsKCRmaWxlcGF0aCArIFwiLmVvdD8jaWVmaXhcIikgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgICAgICAgdXJsKCRmaWxlcGF0aCArIFwiLnR0ZlwiKSAgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIuc3ZnI1wiICsgJHBsYXlmYWlyICsgXCJcIikgZm9ybWF0KCdzdmcnKTtcbiAgICB9XG5cbiAgICAlI3skcGxheWZhaXJ9IHtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgQGlmICRjYXRlZ29yeSAhPSBcIlwiIHtcbiAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JHBsYXlmYWlyfVwiLCAjeyRjYXRlZ29yeX07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JHBsYXlmYWlyfVwiO1xuICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4kbW9jaGU6IFwiTW9jaGUtQm9sZFwiO1xuJGZhbWlseS1yZWd1bGFyMjogXCJtb2NoZVwiO1xuJGZpbGUtcmVndWxhcjI6IFwiTW9jaGUtQm9sZFwiO1xuXG5AbWl4aW4gZm9udC1mYWNlKCRtb2NoZSwgJGZpbGUtcmVndWxhcjIsICRmYW1pbHktcmVndWxhcjIsICRjYXRlZ29yeTpcIlwiKSB7XG4gICAgJGZpbGVwYXRoOiBcIi4uL2ZvbnRzL1wiICsgJGZhbWlseS1yZWd1bGFyMiArIFwiL1wiICsgJGZpbGUtcmVndWxhcjI7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIiN7JG1vY2hlfVwiO1xuICAgICAgICBzcmM6IHVybCgkZmlsZXBhdGggKyBcIi5lb3RcIik7XG4gICAgICAgIHNyYzogdXJsKCRmaWxlcGF0aCArIFwiLmVvdD8jaWVmaXhcIikgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgICAgICAgdXJsKCRmaWxlcGF0aCArIFwiLnR0ZlwiKSAgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIuc3ZnI1wiICsgJG1vY2hlICsgXCJcIikgZm9ybWF0KCdzdmcnKTtcbiAgICB9XG5cbiAgICAlI3skbW9jaGV9IHtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgQGlmICRjYXRlZ29yeSAhPSBcIlwiIHtcbiAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JG1vY2hlfVwiLCAjeyRjYXRlZ29yeX07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JG1vY2hlfVwiO1xuICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4kcmFtbWV0dG86IFwicmFtbWV0dG8tcmVndWxhclwiO1xuJGZhbWlseS1yZWd1bGFyMzogXCJyYW1tZXR0b1wiO1xuJGZpbGUtcmVndWxhcjM6IFwicmFtbWV0dG9vbmUtcmVndWxhci13ZWJmb250XCI7XG5cbkBtaXhpbiBmb250LWZhY2UoJHJhbW1ldHRvLCAkZmlsZS1yZWd1bGFyMywgJGZhbWlseS1yZWd1bGFyMywgJGNhdGVnb3J5OlwiXCIpIHtcbiAgICAkZmlsZXBhdGg6IFwiLi4vZm9udHMvXCIgKyAkZmFtaWx5LXJlZ3VsYXIzICsgXCIvXCIgKyAkZmlsZS1yZWd1bGFyMztcbiAgICBAZm9udC1mYWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiI3skcmFtbWV0dG99XCI7XG4gICAgICAgIHNyYzogdXJsKCRmaWxlcGF0aCArIFwiLmVvdFwiKTtcbiAgICAgICAgc3JjOiB1cmwoJGZpbGVwYXRoICsgXCIuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi53b2ZmXCIpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIudHRmXCIpICBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi5zdmcjXCIgKyAkcmFtbWV0dG8gKyBcIlwiKSBmb3JtYXQoJ3N2ZycpO1xuICAgIH1cblxuICAgICUjeyRyYW1tZXR0b30ge1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBAaWYgJGNhdGVnb3J5ICE9IFwiXCIge1xuICAgICAgICAgICAgICBmYW1pbHk6IFwiI3skcmFtbWV0dG99XCIsICN7JGNhdGVnb3J5fTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICBmYW1pbHk6IFwiI3skcmFtbWV0dG99XCI7XG4gICAgICAgICAgICAgICAgd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiRydW1ldXI6IFwicnVtZXVyLXJlZ3VsYXJcIjtcbiRmYW1pbHktcmVndWxhcjQ6IFwicnVtZXVyXCI7XG4kZmlsZS1yZWd1bGFyNDogXCJydW1ldXItd2ViZm9udFwiO1xuXG5AbWl4aW4gZm9udC1mYWNlKCRyYW1tZXR0bywgJGZpbGUtcmVndWxhcjQsICRmYW1pbHktcmVndWxhcjQsICRjYXRlZ29yeTpcIlwiKSB7XG4gICAgJGZpbGVwYXRoOiBcIi4uL2ZvbnRzL1wiICsgJGZhbWlseS1yZWd1bGFyNCArIFwiL1wiICsgJGZpbGUtcmVndWxhcjQ7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIiN7JHJhbW1ldHRvfVwiO1xuICAgICAgICBzcmM6IHVybCgkZmlsZXBhdGggKyBcIi5lb3RcIik7XG4gICAgICAgIHNyYzogdXJsKCRmaWxlcGF0aCArIFwiLmVvdD8jaWVmaXhcIikgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgICAgICAgdXJsKCRmaWxlcGF0aCArIFwiLnR0ZlwiKSAgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIuc3ZnI1wiICsgJHJhbW1ldHRvICsgXCJcIikgZm9ybWF0KCdzdmcnKTtcbiAgICB9XG5cbiAgICAlI3skcmFtbWV0dG99IHtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgQGlmICRjYXRlZ29yeSAhPSBcIlwiIHtcbiAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JHJhbW1ldHRvfVwiLCAjeyRjYXRlZ29yeX07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JHJhbW1ldHRvfVwiO1xuICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGluY2x1ZGUgZm9udC1mYWNlKCRsYXRvLCAkZmlsZS1yZWd1bGFyLCAkZmFtaWx5LCAkY2F0ZWdvcnkpOy8vMVxuQGluY2x1ZGUgZm9udC1mYWNlKCRzeW5lLCAkZmlsZS1ib2xkLCAkZmFtaWx5LWJvbGQsICRjYXRlZ29yeSk7Ly8yXG5AaW5jbHVkZSBmb250LWZhY2UoJGF2YXJhLCAkZmlsZS1ib2xkLWl0YWxpYywgJGZhbWlseS1ib2xkLWl0YWxpYywgJGNhdGVnb3J5KTsvLzJcbkBpbmNsdWRlIGZvbnQtZmFjZSgkcGxheWZhaXIsICRmaWxlLWl0YWxpYywgJGZhbWlseS1pdGFsaWMsICRjYXRlZ29yeSk7Ly8yXG5cbkBpbmNsdWRlIGZvbnQtZmFjZSgkbW9jaGUsICRmaWxlLXJlZ3VsYXIyLCAkZmFtaWx5LXJlZ3VsYXIyLCAkY2F0ZWdvcnkpOy8vMlxuQGluY2x1ZGUgZm9udC1mYWNlKCRyYW1tZXR0bywgJGZpbGUtcmVndWxhcjMsICRmYW1pbHktcmVndWxhcjMsICRjYXRlZ29yeSk7Ly8yXG5AaW5jbHVkZSBmb250LWZhY2UoJHJ1bWV1ciwgJGZpbGUtcmVndWxhcjQsICRmYW1pbHktcmVndWxhcjQsICRjYXRlZ29yeSk7Ly8yXG5cbi8vIGZvbnQtc2l6ZVxuJHR4dC1maWdsaTogMi41cmVtO1xuXG4vLyBsaW5lLWhlaWdodFxuJEZsaG9tZTogM3JlbTtcblxuJG1hcmc6IDAuNXJlbTtcbiRtYXJnSTogMXJlbTtcbiRXaTogODAlO1xuXG4kV2k1MDogY2FsYygoIDEwMCUgLyAyICkgLSAoI3skbWFyZ0l9IC8gMikpO1xuJFdpODA6IGNhbGMoKCAxMDAlIC8gMS41ICkgLSAoI3skbWFyZ0l9IC8gMikpO1xuJFdpMzM6IGNhbGMoKCAxMDAlIC8gMyApIC0gKCN7JG1hcmdJfSAvIDMpKTtcblxuLy8gbW9iaWxlXG4kdHh0LWZpZ2xpLW06IDEuNXJlbTtcblxuLy8gbGluZS1oZWlnaHRcbiRGbGhvbWUtbTogMnJlbTtcbiRXaS1tOiBjYWxjKCAxMDAlIC0gMXJlbSk7XG4kV2k4MC1tOiA4MCU7XG4kV2kzMy1tOiBjYWxjKCggMTAwJSAvIDMgKSAtIDAuNXJlbSk7XG5cbi8vIHRhYmxldHRlXG4kdHh0LWZpZ2xpLXQ6IDIuNXJlbTtcblxuLy8gbGluZS1oZWlnaHRcbiRGbGhvbWUtdDogM3JlbTtcblxuLy8gY29sb3JcbiRjb2xvcl9wdWJsaXF1ZTogI2ZmYWVhYjtcbiRjb2xvcl9zb2NpYWxlOiAjN2VmZjcxO1xuJGNvbG9yX2N1bHR1cmVsbGU6ICNmZWZmNzQ7XG4kY29sb3JfY29tbWFuZGl0YWlyZTogI2ZhYmJkZTtcbiRjb2xvcl9maWd1cmVzbGlicmVzOiAjODJmOGVlO1xuIiwiIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogYXV0bztcbiAgbWFyZ2luOjA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbnB7XG4gbWFyZ2luOiAwO1xufVxuXG51bHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbnVsLGxpe1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IGJsYWNrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsImgxLCBoMiwgaDMsIHAsIHVsLCBsaSwgYSwgc3BhbntcbiAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICBmb250LXdlaWdodDogbGlnaHRlcjtcbn1cblxuaGVhZGVye1xuICBhe1xuICAgIGZvbnQtc2l6ZTogJHR4dC1maWdsaTtcbiAgICBsaW5lLWhlaWdodDogJEZsaG9tZTtcbiAgfVxufVxuXG5hLCBidXR0b257XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZSFpbXBvcnRhbnQ7XG59XG5cbi50aXRsZS1tZW51e1xuICBoMntcbiAgICBmb250LWZhbWlseTogJHJhbW1ldHRvO1xuICB9XG59XG4uaG9tZXtcbiAgaDIsIHB7XG4gICAgZm9udC1zaXplOiAkdHh0LWZpZ2xpO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICB9XG4gICN0ZXh0X2ZpZ2xpe1xuICAgIHN0cm9uZ3tcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICY6OmFmdGVye1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgIGF7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmI3B1YmxpcXVle1xuICAgICAgICBmb250LWZhbWlseTogJHBsYXlmYWlyO1xuICAgICAgfVxuICAgICAgJiNzb2NpYWxle1xuICAgICAgICBmb250LWZhbWlseTogJHN5bmU7XG4gICAgICB9XG4gICAgICAmI2N1bHR1cmVsbGV7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYXZhcmE7XG4gICAgICB9XG4gICAgICAmI2NvbW1hbmRpdGFpcmVze1xuICAgICAgICBmb250LWZhbWlseTogJG1vY2hlO1xuICAgICAgfVxuICAgICAgJiNmaWd1cmVzbGlicmVze1xuICAgICAgICBmb250LWZhbWlseTogJHJhbW1ldHRvO1xuICAgICAgfVxuICAgICAgJiNsb2dpY2llbHMtbGlicmVze1xuICAgICAgICBmb250LWZhbWlseTogJHJ1bWV1cjtcbiAgICAgIH1cbiAgICB9XG4gICAgI2l0ZW17XG4gICAgICAuZS1jb250ZW50e1xuICAgICAgICBwe1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgIHN0cm9uZ3tcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgYXtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cbiAgICAgICAgICBlbXtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgI2l0ZW1fbGlzdHtcbiAgICAgICYuY29tbWFuZGl0YWlyZXN7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIC5jYXJkLXRpdGxle1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuZmlndXJlc2xpYnJlc3tcbiAgICAgICAgaDN7XG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMCAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkcmFtbWV0dG87XG4gICAgICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwe1xuICAgICAgICAgIHN0cm9uZ3tcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJHJhbW1ldHRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYubG9naWNpZWxzLWxpYnJlc3tcbiAgICAgICAgaDN7XG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMCAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5maWd1cmVzbGlicmVze1xuICAgICAgICBwe1xuICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgc3Ryb25ne1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICY6OmFmdGVye1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jaXRlbXtcbiAgaDJ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbGluZS1oZWlnaHQ6IDRyZW0haW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogNHJlbSFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbCFpbXBvcnRhbnQ7XG4gIH1cbiAgc3BhbntcbiAgICBmb250LXNpemU6IDFyZW07XG4gfVxuICYucHVibGlxdWV7XG4gICBoMntcbiAgICAgZm9udC1mYW1pbHk6ICRwbGF5ZmFpcjtcbiAgIH1cbiAgIHNwYW57XG4gICAgIGZvbnQtZmFtaWx5OiAkcGxheWZhaXI7XG4gICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICB9XG4gfVxuICYuc29jaWFsZXtcbiAgIGgye1xuICAgICBmb250LWZhbWlseTogJHN5bmU7XG4gICB9XG4gICBzcGFue1xuICAgICBmb250LWZhbWlseTogJHN5bmU7XG4gICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICB9XG4gfVxuICAmLmN1bHR1cmVsbGV7XG4gICAgaDJ7XG4gICAgICBmb250LWZhbWlseTogJGF2YXJhO1xuICAgIH1cbiAgICBzcGFue1xuICAgICAgZm9udC1mYW1pbHk6ICRhdmFyYTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICB9XG59XG5cbmEucHVibGlxdWUsIHNwYW4ucHVibGlxdWV7XG4gIGZvbnQtZmFtaWx5OiAkcGxheWZhaXI7XG59XG5cbmEuc29jaWFsZSwgc3Bhbi5zb2NpYWxle1xuICBmb250LWZhbWlseTogJHN5bmU7XG59XG5cbmEuY3VsdHVyZWxsZSwgc3Bhbi5jdWx0dXJlbGxle1xuICBmb250LWZhbWlseTogJGF2YXJhO1xufVxuXG4uc2lkZWJhci1yaWdodHtcbiAgaDJ7XG4gICAgbWFyZ2luOjByZW07XG4gIH1cbiAgdWwgPiBzcGFue1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbiAgdWwgPiBsaXtcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgICBhe1xuICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgfVxuICB9XG4gIC5pbmZvcm1hdGlvbnN7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICAmPiBkaXZ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBoM3tcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIHB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ub3RoZXJfcHJvamV0c3tcbiAgaDN7XG4gICAgZm9udC1zaXplOiAkdHh0LWZpZ2xpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uY2FyZHtcbiAgaDJ7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuIiwiJGFuaW1hdGU6IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuXG4jdGV4dF9maWdsaXtcbiAgei1pbmRleDogOTk5O1xuICBvcGFjaXR5OiAxO1xuICBwe1xuICAgICYgPiBhe1xuICAgICAgei1pbmRleDogOTk5O1xuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBtYXJnaW46IDFweCAwIDA7XG4gICAgICAgIHRyYW5zaXRpb246ICRhbmltYXRlO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgfVxuICAgICAgJjphZnRlcntcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjaWNvbmVfbGlzdHtcbiAgICAgICAgdHJhbnNpdGlvbjogMXMgMC41cyBtYXJnaW4tbGVmdCwwLjhzIDAuM3Mgb3BhY2l0eTtcbiAgICAgICAgLmhhbWJ1cmdlcntcbiAgICAgICAgICAmLmhhbWJ1cmdlci0tc2xpZGVye1xuICAgICAgICAgICAgLmhhbWJ1cmdlci1pbm5lcntcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDVweCwwKSByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IDBzIDAuMnMgdHJhbnNmb3JtO1xuICAgICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtMTBweCwwKSByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4ycyAwLjJzIHRyYW5zZm9ybTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5vcGVue1xuICAgICAgICAjaWNvbmVfbGlzdHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIG1hcmdpbi1sZWZ0LCAwLjVzIG9wYWNpdHk7XG4gICAgICAgICAgLmhhbWJ1cmdlcntcbiAgICAgICAgICAgICYuaGFtYnVyZ2VyLS1zbGlkZXJ7XG4gICAgICAgICAgICAgIC5oYW1idXJnZXItaW5uZXJ7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDVweCwwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuOHMgMC4ycyB0cmFuc2Zvcm07XG4gICAgICAgICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtMTBweCwwKSByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMXMgMC4ycyB0cmFuc2Zvcm07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmI2ZpZ3VyZXNsaWJyZXN7XG4gICAgICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXJ7XG4gICAgICAgICAgYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5oaWRkZW57XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIG9wYWNpdHkgZWFzZTtcbiAgfVxuXG4gICNpdGVtX2xpc3R7XG4gICAgcHtcbiAgICAgICYgPiAgYSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jaXJjbGVfaG92ZXJ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDBweDtcbiAgaGVpZ2h0OiAwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB6LWluZGV4OiAwO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgLjJzLCB3aWR0aCAuMnM7XG4gICYub3BlbntcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgLjVzLCB3aWR0aCAuNXM7XG4gIH1cbiAgJi5maWd1cmVzbGlicmVze1xuICAgIGJhY2tncm91bmQ6XG4gICAgdXJsKFwiL3VzZXIvdGhlbWVzL2ZpZ3VyZXNsaWJyZXMvaW1hZ2VzL2ZpZ3VyZXNfbGlicmVzLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgfVxuICAmLnB1YmxpcXVle1xuICAgICAgYmFja2dyb3VuZDpcbiAgICAgIHVybChcIi91c2VyL3RoZW1lcy9maWd1cmVzbGlicmVzL2ltYWdlcy9wdWJsaXF1ZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgfVxuICAmLnNvY2lhbGV7XG4gICAgYmFja2dyb3VuZDpcbiAgICB1cmwoXCIvdXNlci90aGVtZXMvZmlndXJlc2xpYnJlcy9pbWFnZXMvc29jaWFsZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIH1cbiAgJi5jdWx0dXJlbGxle1xuICAgIGJhY2tncm91bmQ6XG4gICAgdXJsKFwiL3VzZXIvdGhlbWVzL2ZpZ3VyZXNsaWJyZXMvaW1hZ2VzL2N1bHR1cmVsbGUuc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB9XG4gICYuY29tbWFuZGl0YWlyZXN7XG4gICAgYmFja2dyb3VuZDpcbiAgICB1cmwoXCIvdXNlci90aGVtZXMvZmlndXJlc2xpYnJlcy9pbWFnZXMvY29tbWFuZGl0YWlyZXMuc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB9XG4gICYubG9naWNpZWxzLWxpYnJlc3tcbiAgICBiYWNrZ3JvdW5kOlxuICAgIHVybChcIi91c2VyL3RoZW1lcy9maWd1cmVzbGlicmVzL2ltYWdlcy9sb2dpY2llbHNfbGlicmVzLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgfVxufVxuIiwiIiwiKntcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmxvYWRlcntcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvdXNlci90aGVtZXMvZmlndXJlc2xpYnJlcy9pbWFnZXMvYWpheC1sb2FkZXIuZ2lmJyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTBweCAxMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xufVxuXG4uY2FyZHtcbiAgLmxvYWRlcntcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSk7XG4gICAgei1pbmRleDogOTk5O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbmh0bWwsIGJvZHl7XG4gIGJhY2tncm91bmQ6ICNmOWY5ZjlmZTtcbiAgJi5oaWRkZW57XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuaW1nLmxhenl7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuYm9keXtcbiAgI3N0YXJ0e1xuICAgICAgd2lkdGg6ICRXaTgwO1xuICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gYXV0byAxcmVtO1xuICAgICAgI3RleHRfZmlnbGl7XG4gICAgICAgIHAge1xuICAgICAgICAgIGF7XG4gICAgICAgICAgICAjaWNvbmVfbGlzdHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICAgICAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAuaGFtYnVyZ2Vye1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgLmhhbWJ1cmdlci1ib3h7XG4gICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5tYXJne1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5vcGVue1xuICAgICAgICAgICAgICAjaWNvbmVfbGlzdHtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBtYXJnaW4tbGVmdCwgMC41cyBvcGFjaXR5O1xuICAgICAgICAgICAgICAgIC5oYW1idXJnZXJ7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAmLmhhbWJ1cmdlci0tc2xpZGVye1xuICAgICAgICAgICAgICAgICAgICAuaGFtYnVyZ2VyLWlubmVye1xuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCw1cHgsMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjhzIDAuMnMgdHJhbnNmb3JtO1xuICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTIwcHgsMCkgcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDFzIDAuMnMgdHJhbnNmb3JtO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLmhhbWJ1cmdlci1ib3h7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICNpdGVtX2xpc3R7XG4gICAgICAgICAgd2lkdGg6IDgwdnc7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLmNhcmR7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyA1KSAtICggI3skbWFyZ30gKiAyKSApO1xuICAgICAgICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbjogMCAkbWFyZyAkbWFyZyAwO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAmID4gLmNhcmQtaW1hZ2V7XG4gICAgICAgICAgICAmLm9wZW57XG4gICAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBhe1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjNzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWhlYWRlcntcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogJG1hcmc7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNXB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICYgPiAqe1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJG1hcmc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjNzIGVhc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYXJkLWhlYWRlcntcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmxhc3Qtb2YtdHlwZXtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICNpdGVte1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoIDgwdncgLSAoICN7JG1hcmd9ICogNikgKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMnJlbSAwLjVyZW0gMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRtYXJnO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLmNvbnRlbnQtdGl0bGV7XG4gICAgICAgICAgICAgIG1hcmdpbjogMXJlbSBhdXRvIDNyZW0gYXV0bztcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmUtY29udGVudHtcbiAgICAgICAgICAgICAgLy8gbWFyZ2luOiAxcmVtIGF1dG8gMnJlbSBhdXRvO1xuICAgICAgICAgICAgICBwe1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnB1YmxpcXVle1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfcHVibGlxdWU7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuc29jaWFsZXtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3NvY2lhbGU7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuY3VsdHVyZWxsZXtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX2N1bHR1cmVsbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmNvbW1hbmRpdGFpcmVze1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfY29tbWFuZGl0YWlyZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICNpY29uZV9saXN0e1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnB1YmxpcXVle1xuICAgICAgICAgIC5jYXJke1xuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgLmNhcmQtaGVhZGVye1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9wdWJsaXF1ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNvY2lhbGV7XG4gICAgICAgICAgLmNhcmR7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAuY2FyZC1oZWFkZXJ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3NvY2lhbGU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jdWx0dXJlbGxle1xuICAgICAgICAgIC5jYXJke1xuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgLmNhcmQtaGVhZGVye1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9jdWx0dXJlbGxlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuY29tbWFuZGl0YWlyZXN7XG4gICAgICAgICAgY29sdW1uczogNCAxNTBweDtcbiAgICAgICAgICAtd2Via2l0LWNvbHVtbi1nYXA6IDJlbTtcbiAgICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDJlbTtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAyZW07XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgICAgICAgcHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICBtYXJnaW46IDAuNXJlbSBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZHtcbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgIC5jYXJkLWhlYWRlcntcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfY3VsdHVyZWxsZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmZpZ3VyZXNsaWJyZXMsICYubG9naWNpZWxzLWxpYnJlc3tcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgIG1pbi13aWR0aDogNTAwcHg7XG4gICAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICAgICAgcHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjdG9we1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpub3QoLmhvbWUpe1xuICAgICNzdGFydHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoIDJyZW0gKyAgI3skRmxob21lfSk7XG4gICAgfVxuICB9XG59XG5cbiNpY29uZV9saXN0e1xuICAuaGFtYnVyZ2Vye1xuICAgIC8vIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAuaGFtYnVyZ2VyLWJveHtcbiAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgLy8gaGVpZ2h0OiAxMnB4O1xuICAgICAgLmhhbWJ1cmdlci1pbm5lcntcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIHdpZHRoOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZle1xuICAgICAgLmhhbWJ1cmdlci1pbm5lcntcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAmOjphZnRlciAge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBTdGlja3kgRm9vdGVyIHNvbHV0aW9uXG5ib2R5LnN0aWNreS1mb290ZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICNwYWdlLXdyYXBwZXIge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG59XG5cbi5ob21le1xuICBmb290ZXJ7XG4gICAgY29sb3I6ICNhY2IzYzI7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMjBweDtcbiAgICByaWdodDogMjBweDtcbiAgICBwe1xuICAgICAgZm9udC1zaXplOiAxcmVtIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtIWltcG9ydGFudDtcbiAgICAgIGF7XG4gICAgICBpbWd7XG4gICAgICAgICAgd2lkdGg6IDIwcHghaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2lkZWJhci1yaWdodHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAtMTAwdnc7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogMC4zcyByaWdodCBlYXNlO1xuICBiYWNrZ3JvdW5kOiAjZjlmOWY5ZmU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHVse1xuICAgIHNwYW57XG4gICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICB9XG4gIH1cblxuICAjaWNvbmVfbGlzdHtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDIwcHg7XG4gICAgcmlnaHQ6IDIwcHg7XG4gIH1cbiAgLmxpc3QtcHJvamV0c3tcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWFyZ2luOiAxcmVtIGF1dG8gYXV0byAxcmVtO1xuICAgIC50aXRsZS1tZW51e1xuICAgICAgLy8gcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgICAmOjphZnRlcntcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRhaW5lci13cmFwe1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgfVxuICAgIC5jb250YWluZXJ7XG4gICAgICB3aWR0aDogODUlO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgcGFkZGluZzogMXJlbSAycmVtIDJyZW0gMHJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAmOjphZnRlcntcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgIHJpZ2h0OjA7XG4gICAgICB9XG4gICAgdWx7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgc3Bhbi5jYXR7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICAgIH1cbiAgICAgIGxpe1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBhe1xuICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2Y5ZjlmOWZlO1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNnMgYmFja2dyb3VuZDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDdweDtcbiAgICAgICAgICAuaW1ne1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICAgICAuaW1ne1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgJi5jdWx0dXJlbGxle1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX2N1bHR1cmVsbGU7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNnMgYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5zb2NpYWxle1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3NvY2lhbGU7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNnMgYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5wdWJsaXF1ZXtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9wdWJsaXF1ZTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC42cyBiYWNrZ3JvdW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YmVmb3Jle31cbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBiYWNrZ3JvdW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYXtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICYuYWN0aXZle1xuICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICB9XG4gICAgLmluZm9ybWF0aW9uc3tcbiAgICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICB9XG4gIH1cbiAgJi5pcy1hY3RpdmV7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIDAuM3MgbGVmdCBlYXNlO1xuICAgIC50aXRsZS1tZW51e1xuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgICAgdHJhbnNpdGlvbjogMXMgMC45cyB3aWR0aCBlYXNlO1xuICAgICAgfVxuICAgIH1cbiAgICAuaW5mb3JtYXRpb25ze1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zaXRpb246IDFzIG9wYWNpdHkgMXMgZWFzZTtcblxuICAgIH1cbiAgICAuY29udGFpbmVye1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiAxcyBvcGFjaXR5IDFzIGVhc2U7XG4gICAgICAmOjphZnRlcntcbiAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogMXMgMC45cyBoZWlnaHQgZWFzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNpdGVtX2xpc3R7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAuY2FyZHtcbiAgICB3aWR0aDogJFdpNTA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgICY6bnRoLWNoaWxkKG9kZCl7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnSTtcbiAgICB9XG4gICAgLmNhcmQtaGVhZGVye1xuICAgICAgei1pbmRleDogOTk5O1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgICYgPiAqIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbWFyZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNpdGVte1xuICAuZS1jb250ZW50e1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWluLXdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gICAgfVxuICAuY2FyZC1pbWFnZXtcbiAgICBpbWc6bm90KDpsYXN0LW9mLXR5cGUpe1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ub3RoZXJfcHJvamV0c3tcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGJsYWNrO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6ICRtYXJnSTtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdJO1xuICBoM3tcbiAgICBtYXJnaW46IDFyZW0gMCAkbWFyZyAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5jYXJke1xuICAgIHdpZHRoOiAkV2kzMztcbiAgICAmOm50aC1jaGlsZCgtMW4rMyl7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnO1xuICAgIH1cbiAgICAuY2FyZC1oZWFkZXJ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgJiA+ICp7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJG1hcmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpe1xuICBib2R5e1xuICAgICNzdGFydHtcbiAgICAgIHdpZHRoOiAkV2k4MC1tO1xuICAgICAgI3RleHRfZmlnbGl7XG4gICAgICAgICNpdGVtX2xpc3R7XG4gICAgICAgICAgJi5maWd1cmVzbGlicmVzLCAmLmxvZ2ljaWVscy1saWJyZXN7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmR7XG4gICAgICAgICAgICB3aWR0aDogJFdpMzMtbTtcbiAgICAgICAgICAgICNpdGVte1xuICAgICAgICAgICAgICB3aWR0aDogY2FsYygzMDAlICsgKC41cmVtICogMikpO1xuICAgICAgICAgICAgICAuY29udGVudC10aXRsZXtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDFyZW0gYXV0byAxcmVtIGF1dG87XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmUtY29udGVudHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCl7XG4gIC5zaWRlYmFyLXJpZ2h0e1xuICAgIC5saXN0LXByb2pldHMge1xuICAgICAgLmNvbnRhaW5lcntcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIC5pbmZvcm1hdGlvbnN7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNpdGVtX2xpc3R7XG4gICAgd2lkdGg6IDkwdnchaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkgI3N0YXJ0ICN0ZXh0X2ZpZ2xpICNpdGVtX2xpc3QgLmNhcmR7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtIC41cmVtKTtcbiAgICAjaXRlbXtcbiAgICAgIHdpZHRoOiBjYWxjKDkwdncgLSAwLjVyZW0pO1xuICAgIH1cbiAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUxMHB4KSB7XG4gIGJvZHl7XG4gICAgI3N0YXJ0e1xuICAgICAgd2lkdGg6ICRXaS1tO1xuICAgICAgbWFyZ2luOiAwLjVyZW0gYXV0byAycmVtIGF1dG87XG4gICAgICAjdGV4dF9maWdsaXtcbiAgICAgICAgcHtcbiAgICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMi4zcmVtO1xuICAgICAgICB9XG4gICAgICAgICNpdGVtX2xpc3R7XG4gICAgICAgICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xuICAgICAgICAgICYuZmlndXJlc2xpYnJlcywgJi5sb2dpY2llbHMtbGlicmVze1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMC41cmVtIDA7XG4gICAgICAgICAgICAjaXRlbXtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICAgIC5lLWNvbnRlbnR7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMnJlbSAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5jb250ZW50LXRpdGxle1xuICAgICAgICAgICAgICAgIGgye1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMi41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYgPiBkaXZ7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2lkZWJhci1yaWdodHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcmlnaHQ6IC0xMDAlO1xuICAgICAgI2ljb25lX2xpc3R7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgLmhhbWJ1cmdlcntcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubGlzdC1wcm9qZXRze1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIC50aXRsZS1tZW51e1xuICAgICAgICAgIGgye1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi4zcmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bHtcbiAgICAgICAgICBsaXtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogaW5pdGlhbCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGluaXRpYWwhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwcmVtIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY+IHNwYW57XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRhaW5lci13cmFwe1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIC5jb250YWluZXJ7XG4gICAgICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgIHRvcDogYXV0byFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxlZnQ6IDAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy1hY3RpdmV7XG4gICAgICAgIC5jb250YWluZXJ7XG4gICAgICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAxcyB3aWR0aCAxcyBlYXNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmluZm9ybWF0aW9uc3tcbiAgICAgICAgaDN7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBmb290ZXJ7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogMCFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5ZjlmZTtcbiAgfVxuXG4gIC5jaXJjbGVfaG92ZXIub3BlbntcbiAgICB3aWR0aDogMTAwcHghaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwcHghaW1wb3J0YW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFDb0xJLFVBQVUsR0FDTixXQUFXLEVBQUUsTUFBYyxFQUMzQixHQUFHLEVBQUUscUNBQXVCLEVBQzVCLEdBQUcsRUFBRSw0Q0FBOEIsQ0FBQywyQkFBMkIsRUFDekQsc0NBQXdCLENBQUMsY0FBYyxFQUN2QyxxQ0FBdUIsQ0FBRSxrQkFBa0IsRUFDM0MsMENBQXlDLENBQUMsYUFBYTs7QUFOakUsVUFBVSxHQUNOLFdBQVcsRUFBRSxNQUFjLEVBQzNCLEdBQUcsRUFBRSxrQ0FBdUIsRUFDNUIsR0FBRyxFQUFFLHlDQUE4QixDQUFDLDJCQUEyQixFQUN6RCxtQ0FBd0IsQ0FBQyxjQUFjLEVBQ3ZDLGtDQUF1QixDQUFFLGtCQUFrQixFQUMzQyx1Q0FBeUMsQ0FBQyxhQUFhOztBQU5qRSxVQUFVLEdBQ04sV0FBVyxFQUFFLE9BQWMsRUFDM0IsR0FBRyxFQUFFLCtDQUF1QixFQUM1QixHQUFHLEVBQUUsc0RBQThCLENBQUMsMkJBQTJCLEVBQ3pELGdE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 */