theme.css 48 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. * { box-sizing: border-box; }
  2. /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
  3. /* Document ========================================================================== */
  4. /** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. */
  5. html { margin: 0; padding: 0; font-size: 16px; line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ height: 100%; width: 100%; }
  6. /* Sections ========================================================================== */
  7. /** Remove the margin in all browsers. */
  8. body { margin: 0; padding: 0; height: 100%; width: 100%; }
  9. /** Render the `main` element consistently in IE. */
  10. main { display: block; }
  11. /** Correct the font size and margin on `h1` elements within `section` and `article` contexts in Chrome, Firefox, and Safari. */
  12. h1 { font-size: 2rem; margin: 0; }
  13. h1, h2, h3, h4, h5, p, em, strong, ul, li, a { margin: 0; padding: 0; }
  14. ul, li, ol { list-style: none; }
  15. /* Grouping content ========================================================================== */
  16. /** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
  17. hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }
  18. /** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
  19. header span { white-space: nowrap; }
  20. pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }
  21. /* Text-level semantics ========================================================================== */
  22. /** Remove the gray background on active links in IE 10. */
  23. ul { list-style: none; }
  24. ul, li { margin: 0; padding: 0; }
  25. a { background-color: transparent; color: black; text-decoration: none; }
  26. /** 1. Remove the bottom border in Chrome 57- 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
  27. abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ }
  28. /** Add the correct font weight in Chrome, Edge, and Safari. */
  29. b, strong { font-weight: bolder; }
  30. /** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
  31. code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }
  32. /** Add the correct font size in all browsers. */
  33. small { font-size: 80%; }
  34. /** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
  35. sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
  36. sub { bottom: -0.25em; }
  37. sup { top: -0.5em; }
  38. /* Embedded content ========================================================================== */
  39. /** Remove the border on images inside links in IE 10. */
  40. img { border-style: none; width: 100%; height: auto; vertical-align: bottom; }
  41. iframe { border: none; }
  42. /* Forms ========================================================================== */
  43. /** 1. Change the font styles in all browsers. 2. Remove the margin in Firefox and Safari. */
  44. button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }
  45. /** Show the overflow in IE. 1. Show the overflow in Edge. */
  46. button, input { /* 1 */ overflow: visible; }
  47. /** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
  48. button, select { /* 1 */ text-transform: none; }
  49. /** Correct the inability to style clickable types in iOS and Safari. */
  50. button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }
  51. /** Remove the inner border and padding in Firefox. */
  52. button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }
  53. /** Restore the focus styles unset by the previous rule. */
  54. button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }
  55. /** Correct the padding in Firefox. */
  56. fieldset { padding: 0.35em 0.75em 0.625em; }
  57. /** 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. */
  58. legend { box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }
  59. /** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
  60. progress { vertical-align: baseline; }
  61. /** Remove the default vertical scrollbar in IE 10+. */
  62. textarea { overflow: auto; }
  63. /** 1. Add the correct box sizing in IE 10. 2. Remove the padding in IE 10. */
  64. [type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }
  65. /** Correct the cursor style of increment and decrement buttons in Chrome. */
  66. [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
  67. /** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
  68. [type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }
  69. /** Remove the inner padding in Chrome and Safari on macOS. */
  70. [type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
  71. /** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
  72. ::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }
  73. /* Interactive ========================================================================== */
  74. /* Add the correct display in Edge, IE 10+, and Firefox. */
  75. details { display: block; }
  76. /* Add the correct display in all browsers. */
  77. summary { display: list-item; }
  78. /* Misc ========================================================================== */
  79. /** Add the correct display in IE 10+. */
  80. template { display: none; }
  81. /** Add the correct display in IE 10. */
  82. [hidden] { display: none; }
  83. @font-face { font-family: "Regular"; src: url("../fonts/aileron_regular/Aileron-Regular-webfont.eot"); src: url("../fonts/aileron_regular/Aileron-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/aileron_regular/Aileron-Regular-webfont.woff") format("woff"), url("../fonts/aileron_regular/Aileron-Regular-webfont.ttf") format("truetype"), url("../fonts/aileron_regular/Aileron-Regular-webfont.svg#Regular") format("svg"); }
  84. @font-face { font-family: "bold"; src: url("../fonts/aileron_bold/Aileron-Bold-webfont.eot"); src: url("../fonts/aileron_bold/Aileron-Bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/aileron_bold/Aileron-Bold-webfont.woff") format("woff"), url("../fonts/aileron_bold/Aileron-Bold-webfont.ttf") format("truetype"), url("../fonts/aileron_bold/Aileron-Bold-webfont.svg#bold") format("svg"); }
  85. .default-animation { transition: all 0.5s ease; }
  86. .pulse { animation-name: pulse_animation; animation-duration: 2000ms; transform-origin: 70% 70%; animation-iteration-count: infinite; animation-timing-function: linear; }
  87. @keyframes pulse_animation { 0% { transform: scale(1); }
  88. 30% { transform: scale(1); }
  89. 40% { transform: scale(1.08); }
  90. 50% { transform: scale(1); }
  91. 60% { transform: scale(1); }
  92. 70% { transform: scale(1.05); }
  93. 80% { transform: scale(1); }
  94. 100% { transform: scale(1); } }
  95. html, body { font-family: "Regular"; }
  96. h1 { text-transform: uppercase; }
  97. h2 { font-size: 2rem; }
  98. h5 { font-weight: normal; font-size: 1.2rem; }
  99. .card-title { font-family: "bold"; font-size: 1.2rem; }
  100. p strong { font-family: "bold"; font-weight: normal; }
  101. .content p:nth-of-type(1) { font-size: 1.2rem; }
  102. .sidebar .side-newsletter label { font-size: 1.5rem; font-weight: normal; font-family: "bold"; }
  103. .cat { width: 100%; }
  104. .cat a { font-family: "bold"; }
  105. .dt { font-family: "bold"; }
  106. #header { z-index: 999; position: relative; }
  107. #header nav { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: justify; justify-content: space-between; height: 100px; width: auto; }
  108. #header nav a { padding: 10px; }
  109. #header nav > ul { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  110. #header nav > ul > li { margin-left: 10px; padding: 0 10px 10px 10px; }
  111. #header nav > ul > li > ul { display: none; }
  112. #header nav > ul > li:nth-last-child(-n+2) > a { display: block; height: 100px; background: #5499b7; color: white; }
  113. #header nav > ul > li:hover > ul { display: block; }
  114. #header nav > ul > li:hover > ul a { display: block; height: 50px; background: white; padding: 10px; }
  115. #header nav .reso { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; width: 30px; }
  116. #header nav .reso img { margin-left: 10px; }
  117. #header nav .desktop-menu { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  118. #footer { width: 100%; background: grey; }
  119. #footer #map { height: 300px; width: 300px; }
  120. a#map { display: block; height: 300px; width: 300px; }
  121. .gal { width: 100%; height: 400px; overflow-y: hidden; margin-bottom: 20px; position: relative; }
  122. .gal .slidesjs-navigation { z-index: 999; position: absolute; top: 50%; transform: translateY(-50%); }
  123. .gal .slidesjs-navigation.slidesjs-previous { left: 10px; }
  124. .gal .slidesjs-navigation.slidesjs-previous:before { display: block; content: " "; width: 30px; height: 50px; background-image: url("/user/themes/lecampus/images/arrow.svg"); background-repeat: no-repeat; background-size: 30px 50px; }
  125. .gal .slidesjs-navigation.slidesjs-next { right: 10px; }
  126. .gal .slidesjs-navigation.slidesjs-next:before { display: block; content: " "; width: 30px; height: 50px; background-image: url("/user/themes/lecampus/images/arrow.svg"); background-repeat: no-repeat; background-size: 30px 50px; transform: rotate(180deg); }
  127. .cat { height: 50px; }
  128. .cat a { padding: 10px; border: 1px solid black; }
  129. #item { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; }
  130. #item .card { width: calc( (100% / 4) - 45px); min-width: 250px; margin: 0 15px 30px 15px; position: relative; border: 1px solid black; }
  131. #item .card .card-header { width: auto; position: absolute; right: 0; text-align: right; }
  132. #item .card .card-header .publics { padding: 10px; background: grey; }
  133. #item .card .card-header .publics a { color: white; }
  134. #item .card .card-body { padding: 15px; }
  135. #item .card .card-body .card-title { margin-bottom: 10px; }
  136. .content { width: 40%; margin: 0px 20px 20px auto; }
  137. .content p { margin: 10px 0; }
  138. #default .content > p:first-child a { display: block; padding: 10px; text-align: center; border: 1px solid black; margin-left: 60%; }
  139. #default .content > p:last-child { margin-top: 80px; padding: 10px; border: 1px solid black; }
  140. #default .content > p:last-child img { width: 33%; margin-right: 20px; float: left; }
  141. #default .content > p:last-child a { display: block; text-align: right; margin-top: 15px; padding: 5px; border: 1px solid black; width: auto; margin-left: 70%; }
  142. .bandeau { width: 100%; height: 300px; overflow: hidden; margin-bottom: 35px; }
  143. .bandeau img { transform: translateY(-20%); }
  144. .sub-content { border-top: 1px solid black; margin-bottom: 20px; margin-top: 20px; }
  145. .sub-content h3 { margin-top: 20px; }
  146. .sidebar { margin: 0 auto 0 20px; }
  147. .sidebar .side-agenda { border-top: 1px solid black; padding: 10px 0; }
  148. .sidebar .side-agenda:nth-of-type(3) { border-bottom: 1px solid black; margin-bottom: 10px; }
  149. .sidebar .side-all-agenda { width: auto; padding: 5px; margin-bottom: 10px; float: right; border: 1px solid black; }
  150. .sidebar .side-newsletter { margin-top: 100px; padding: 20px; background: lightgrey; }
  151. #footer { margin-top: 20px; }
  152. /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuY3NzIiwic291cmNlcyI6WyJ0aGVtZS5zY3NzIiwiY29uZmlndXJhdGlvbnMvX2ZvbnRzLnNjc3MiLCJjb25maWd1cmF0aW9ucy9fcmVzZXQuc2NzcyIsImNvbmZpZ3VyYXRpb25zL192YXJpYWJsZXMuc2NzcyIsImNvbmZpZ3VyYXRpb25zL19taXhpbnMuc2NzcyIsInRoZW1lL19hbmltYXRpb24uc2NzcyIsInRoZW1lL190eXBvZ3JhcGh5LnNjc3MiLCJ0aGVtZS9faGVhZGVyLnNjc3MiLCJ0aGVtZS9fbWVudS5zY3NzIiwidGhlbWUvX2Zvb3Rlci5zY3NzIiwidGhlbWUvX2Jsb2cuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0ICdjb25maWd1cmF0aW9ucy9mb250cyc7XG5AaW1wb3J0ICdjb25maWd1cmF0aW9ucy9yZXNldCc7XG5AaW1wb3J0ICdjb25maWd1cmF0aW9ucy92YXJpYWJsZXMnO1xuQGltcG9ydCAnY29uZmlndXJhdGlvbnMvbWl4aW5zJztcblxuQGltcG9ydCAndGhlbWUvYW5pbWF0aW9uJztcbkBpbXBvcnQgJ3RoZW1lL3R5cG9ncmFwaHknO1xuXG5AaW1wb3J0ICd0aGVtZS9oZWFkZXInO1xuQGltcG9ydCAndGhlbWUvbWVudSc7XG5AaW1wb3J0ICd0aGVtZS9mb290ZXInO1xuXG4vLyBFeHRyYSBTa2VsZXRvbiBTdHlsaW5nXG5AaW1wb3J0ICd0aGVtZS9ibG9nJztcbiIsIi8vIEZvbnQgRmFtaWx5XG4kZm9udC1mYW1pbHktZGVmYXVsdDogIFx0XHRcdFwiUmFsZXdheVwiLCBcIkhlbHZldGljYVwiLCBcIlRhaG9tYVwiLCBcIkdlbmV2YVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktaGVhZGVyOiAgXHRcdFx0XCJNb250c2VycmF0XCIsIFwiSGVsdmV0aWNhXCIsIFwiVGFob21hXCIsIFwiR2VuZXZhXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBcdFx0XHRcdFwiSW5jb25zb2xhdGFcIiwgbW9ub3NwYWNlO1xuJGZvbnQtZmFtaWx5LXNlcmlmOlx0XHRcdFx0XCJHZW9yZ2lhXCIsIFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4vLyBAZm9udC1mYWNlXG5cbiR0eXBvOiBcImFpbGVyb25fcmVndWxhclwiO1xuJGNhdGVnb3J5OiBcInNhbnMtc2VyaWZcIjtcbiRmaWxlOiBcIkFpbGVyb24tUmVndWxhci13ZWJmb250XCI7XG4kUmVndWxhcjogXCJSZWd1bGFyXCI7XG5cbkBtaXhpbiBmb250LWZhY2UoJFJlZ3VsYXIsICRmaWxlLCAkdHlwbywgJGNhdGVnb3J5OlwiXCIpIHtcbiAgICAkZmlsZXBhdGg6IFwiLi4vZm9udHMvXCIgKyAkdHlwbyArIFwiL1wiICsgJGZpbGU7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIiN7JFJlZ3VsYXJ9XCI7XG4gICAgICAgIHNyYzogdXJsKCRmaWxlcGF0aCArIFwiLmVvdFwiKTtcbiAgICAgICAgc3JjOiB1cmwoJGZpbGVwYXRoICsgXCIuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi53b2ZmXCIpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIudHRmXCIpICBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi5zdmcjXCIgKyAkUmVndWxhciArIFwiXCIpIGZvcm1hdCgnc3ZnJyk7XG4gICAgfVxuXG4gICAgJSN7JFJlZ3VsYXJ9IHtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgQGlmICRjYXRlZ29yeSAhPSBcIlwiIHtcbiAgICAgICAgICAgICAgICBmYW1pbHk6IFwiI3skUmVndWxhcn1cIiwgI3skY2F0ZWdvcnl9O1xuICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIGZhbWlseTogXCIjeyRSZWd1bGFyfVwiO1xuICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4kdHlwbzI6IFwiYWlsZXJvbl9ib2xkXCI7XG4kZmlsZTI6IFwiQWlsZXJvbi1Cb2xkLXdlYmZvbnRcIjtcbiRCb2xkOiBcImJvbGRcIjtcblxuQG1peGluIGZvbnQtZmFjZSgkQm9sZCwgJGZpbGUyLCAkdHlwbzIsICRjYXRlZ29yeTpcIlwiKSB7XG4gICAgJGZpbGVwYXRoOiBcIi4uL2ZvbnRzL1wiICsgJHR5cG8yICsgXCIvXCIgKyAkZmlsZTI7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIiN7JEJvbGR9XCI7XG4gICAgICAgIHNyYzogdXJsKCRmaWxlcGF0aCArIFwiLmVvdFwiKTtcbiAgICAgICAgc3JjOiB1cmwoJGZpbGVwYXRoICsgXCIuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi53b2ZmXCIpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgICAgICB1cmwoJGZpbGVwYXRoICsgXCIudHRmXCIpICBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICAgICAgIHVybCgkZmlsZXBhdGggKyBcIi5zdmcjXCIgKyAkQm9sZCArIFwiXCIpIGZvcm1hdCgnc3ZnJyk7XG4gICAgfVxuXG4gICAgJSN7JEJvbGR9IHtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgQGlmICRjYXRlZ29yeSAhPSBcIlwiIHtcbiAgICAgICAgICAgICAgICBmYW1pbHk6IFwiI3skQm9sZH1cIiwgI3skY2F0ZWdvcnl9O1xuICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIGZhbWlseTogXCIjeyRCb2xkfVwiO1xuICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiKntcbiAgLXdlYmtpdC1ib3gtc2l6aW5nIDogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nIDogYm9yZGVyLWJveDtcbn1cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJyZW07IFxuICBtYXJnaW46MDtcbn1cblxuaDEsaDIsaDMsaDQsaDUscCxlbSxzdHJvbmcsdWwsbGksYXtcbiAgbWFyZ2luOjA7XG4gIHBhZGRpbmc6MDtcbn1cblxudWwsIGxpICxvbHtcbiAgbGlzdC1zdHlsZTpub25lO1xufVxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmhlYWRlciBzcGFue1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xudWx7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG51bCxsaXtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiBibGFjaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbmlmcmFtZXtcbiAgYm9yZGVyOiBub25lO1xufVxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8vIGZvbnRzXG5AaW5jbHVkZSBmb250LWZhY2UoJFJlZ3VsYXIsICRmaWxlLCAkdHlwbywgJGNhdGVnb3J5KTsvLzFcbkBpbmNsdWRlIGZvbnQtZmFjZSgkQm9sZCwgJGZpbGUyLCAkdHlwbzIsICRjYXRlZ29yeSk7Ly8xXG5cbi8vIGZvbnRzaXplXG4gIC8vIHRpdGxlXG4gIC8vICRmemgxOlxuICAvLyAkZnpoMjpcbiAgLy8gJGZ6aDM6XG4gIC8vICRmemg0OlxuICAvLyAkZnpoNTpcbiAgLy8gJGZ6aDY6XG5cbiAgLy8gcGFyYWdyYXBoZVxuICAvLyAkZnpwOiAxcmVtO1xuICAvLyAkZnpzOlxuICAvLyAkZnpiOlxuICAvLyAkZnppOlxuXG4vLyBsaW5lLWhlaWdodFxuICAvLyAkbGhwXG5cbi8vIGNvbG9yXG4kYmx1ZTogIzBmMjY1YztcbiRyZWQ6ICM4ZDI4MTVmZjtcbiRncmV5OiAjOTk5OTk5O1xuJHdoaXRlOiAjZmZmZmZmO1xuJGJsYWNrOiAjMjMxZjIwO1xuXG4vLyBoZWFkZXJcbiRIaDogNzBweDtcbiRIbjogY2FsYyggMTAwdmggLSAjeyRIaH0gKTtcbiRXbjogNTB2dztcbiRIYzogY2FsYyggI3skSG59IC0gMTUwcHggKTtcbiIsIkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigkcG9zaXRpb246IHJlbGF0aXZlKSB7XG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbkBtaXhpbiBmbGV4Tm93cmFwKCkge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRIaDtcbn1cblxuQG1peGluIGlubGluZWZsZXgoKXtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuQG1peGluIGZsZXhjZW50ZXIoKXtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbkBtaXhpbiB1cHBlcigpe1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWl4aW4gZmxleGNlbnRlcl9jb2x1bW4oKXtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuIiwiLmRlZmF1bHQtYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8gUHVsc2UgQW5pbWF0aW9uXG4ucHVsc2Uge1xuICBhbmltYXRpb24tbmFtZTogcHVsc2VfYW5pbWF0aW9uO1xuICBhbmltYXRpb24tZHVyYXRpb246IDIwMDBtcztcbiAgdHJhbnNmb3JtLW9yaWdpbjo3MCUgNzAlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlX2FuaW1hdGlvbiB7XG4gIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAzMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDQwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7IH1cbiAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICA2MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDcwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IH1cbiAgODAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuIiwiaHRtbCwgYm9keXtcbiAgZm9udC1mYW1pbHk6ICRSZWd1bGFyO1xufVxuXG5oMXtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuaDJ7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cblxuaDV7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG4uY2FyZC10aXRsZXtcbiAgZm9udC1mYW1pbHk6ICRCb2xkO1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cblxucHtcbiAgc3Ryb25ne1xuICAgIGZvbnQtZmFtaWx5OiAkQm9sZDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi5jb250ZW50e1xuICBwOm50aC1vZi10eXBlKDEpe1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxufVxuXG4uc2lkZWJhcntcbiAgLnNpZGUtbmV3c2xldHRlcntcbiAgICBsYWJlbHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkQm9sZDtcbiAgICB9XG4gIH1cbn1cblxuLmNhdHtcbiAgd2lkdGg6IDEwMCU7XG4gIGF7XG4gICAgZm9udC1mYW1pbHk6ICRCb2xkO1xuICB9XG59XG5cbi5kdHtcbiAgZm9udC1mYW1pbHk6ICRCb2xkO1xufVxuIiwiI2hlYWRlcntcbiAgei1pbmRleDogOTk5O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG5hdntcbiAgICBAaW5jbHVkZSBpbmxpbmVmbGV4KCk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYXtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgfVxuICAgICYgPiB1bHtcbiAgICAgIEBpbmNsdWRlIGlubGluZWZsZXgoKTtcbiAgICAgICY+IGxpe1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDEwcHggMTBweDtcbiAgICAgICAgJiA+IHVse1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgtbisyKXtcbiAgICAgICAgICAmID4gYXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYig4NCwgMTUzLCAxODMpO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICYgPiB1bHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yZXNve1xuICAgICAgQGluY2x1ZGUgaW5saW5lZmxleCgpO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGltZ3tcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5kZXNrdG9wLW1lbnV7XG4gICAgICBAaW5jbHVkZSBpbmxpbmVmbGV4O1xuICAgIH1cbiAgfVxufVxuIiwiIiwiI2Zvb3RlcntcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGdyZXk7XG4gICNtYXB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbn1cblxuYSNtYXB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzAwcHg7XG4gIHdpZHRoOiAzMDBweDtcbn1cbiIsIi8vIGhvbWVcblxuLmdhbHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDo0MDBweDtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5zbGlkZXNqcy1uYXZpZ2F0aW9ue1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICYuc2xpZGVzanMtcHJldmlvdXN7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgJjpiZWZvcmV7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvdXNlci90aGVtZXMvbGVjYW1wdXMvaW1hZ2VzL2Fycm93LnN2ZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggNTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5zbGlkZXNqcy1uZXh0e1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy91c2VyL3RoZW1lcy9sZWNhbXB1cy9pbWFnZXMvYXJyb3cuc3ZnJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweCA1MHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY2F0e1xuICBoZWlnaHQ6IDUwcHg7XG4gIGF7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgfVxufVxuXG4jaXRlbXtcbiAgQGluY2x1ZGUgaW5saW5lZmxleCgpO1xuICB3aWR0aDogMTAwJTtcbiAgLmNhcmR7XG4gICAgd2lkdGg6IGNhbGMoICgxMDAlIC8gNCkgLSA0NXB4KTtcbiAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbjogMCAxNXB4IDMwcHggMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gICAgLmNhcmQtaGVhZGVye1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgLnB1YmxpY3N7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGdyZXk7XG4gICAgICAgIGF7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXJkLWJvZHl7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgLmNhcmQtdGl0bGV7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50e1xuICB3aWR0aDogNDAlO1xuICBtYXJnaW46IDBweCAyMHB4IDIwcHggYXV0bztcbiAgcHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgfVxufVxuXG4jZGVmYXVsdHtcbiAgLmNvbnRlbnR7XG4gICAgJiA+IHB7XG4gICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICBhe1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gICAgICAgIGltZ3tcbiAgICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICBhe1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbi10b3A6MTVweDtcbiAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDcwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBpdGVtc1xuLmJhbmRlYXV7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICBpbWd7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMCUpO1xuICB9XG59XG5cbi5zdWItY29udGVudHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGJsYWNrO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBoM3tcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5cbi5zaWRlYmFye1xuICBtYXJnaW46IDAgYXV0byAwIDIwcHg7XG4gIC5zaWRlLWFnZW5kYXtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgYmxhY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgICY6bnRoLW9mLXR5cGUoMyl7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgfVxuICAuc2lkZS1hbGwtYWdlbmRhe1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgfVxuICAuc2lkZS1uZXdzbGV0dGVye1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgYmFja2dyb3VuZDogbGlnaHRncmV5O1xuICB9XG59XG5cbiNmb290ZXJ7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cblxuLy8gLmNhcmR7XG4vLyAgIGhlaWdodDogMTAwcHg7XG4vLyAgIC5jYXJkLWltYWdle1xuLy8gICAgIGhlaWdodDogMTAwcHg7XG4vLyAgIH1cbi8vIH1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUVBQSxBQUFBLENBQUMsQ0FBQSxFQUNDLGtCQUFrQixFQUFHLFVBQVUsRUFDdkIsVUFBVSxFQUFHLFVBQVUsR0FDaEM7O0FBQ0QsNEVBQTRFO0FBRTVFLHlGQUNnRjtBQUVoRix3SEFHRztBQUVILEFBQUEsSUFBSSxDQUFDLEVBQ0gsTUFBTSxFQUFFLENBQUMsRUFDVCxPQUFPLEVBQUUsQ0FBQyxFQUNWLFNBQVMsRUFBRSxJQUFJLEVBQ2YsV0FBVyxFQUFFLElBQUksRUFBRSxPQUFPLENBQzFCLHdCQUF3QixFQUFFLElBQUks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 */