/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Quicksand:wght@300&display=swap);
/*!******************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css (1) ***!
  \******************************************************************************************************************/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Quicksand", sans-serif;
}
.disconnect{
  background: #111;
  text-align: right;
  color: #fff;
  width: 100%;
}
.login-page {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  background: #111;
  width: 100%;
  overflow: hidden;
}
.ring {
  position: relative;
  width: 500px;
  height: 500px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.ring i {
  position: absolute;
  inset: 0;
  border: 2px solid #fff;
  transition: 0.5s;
}
.ring i:nth-child(1) {
  border-radius: 38% 62% 63% 37% / 41% 44% 56% 59%;
  animation: animate 6s linear infinite;
}
.ring i:nth-child(2) {
  border-radius: 41% 44% 56% 59%/38% 62% 63% 37%;
  animation: animate 4s linear infinite;
}
.ring i:nth-child(3) {
  border-radius: 41% 44% 56% 59%/38% 62% 63% 37%;
  animation: animate2 10s linear infinite;
}
.ring:hover i {
  border: 6px solid var(--clr);
  filter: drop-shadow(0 0 20px var(--clr));
}
@keyframes animate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes animate2 {
  0% {
    transform: rotate(360deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.login {
  position: absolute;
  width: 300px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 20px;
}
.login h2 {
  font-size: 2em;
  color: #fff;
}
.login .inputBx {
  position: relative;
  width: 100%;
}
.login .inputBx input {
  position: relative;
  width: 100%;
  padding: 12px 20px;
  background: transparent;
  border: 2px solid #fff;
  border-radius: 40px;
  font-size: 1.2em;
  color: #fff;
  box-shadow: none;
  outline: none;
}
.login .inputBx input[type="submit"] {
  width: 100%;
  background: #6E6F6F;
  background: linear-gradient(45deg, #554F4F, #6C3E34);
  border: none;
  cursor: pointer;
}
.login .inputBx input::placeholder {
  color: rgba(255, 255, 255, 0.75);
}
.login .links {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
}
.login .links a {
  color: #fff;
  text-decoration: none;
}

/* Appliquer un style de base à tous les champs */
input[type="text"],
input[type="email"],
input[type="password"],
textarea,
select {
  width: 100%;
  padding: 12px;
  margin-top: 8px;
  margin-bottom: 16px;
  border: 1px solid #555;
  border-radius: 8px;
  background-color: #222;
  color: #eee;
  font-size: 1rem;
  transition: border-color 0.3s ease;
}

/* Focus élégant */
input:focus,
textarea:focus,
select:focus {
  border-color: #00cec9;
  outline: none;
}

/* Les labels générés par Symfony */
label {
  display: block;
  margin-top: 20px;
  font-weight: 600;
  color: #ccc;
}

/* Les boutons */
button, .btn, input[type=submit] {
  display: inline-block;
  padding: 12px 20px;
  border-radius: 10px;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(45deg, #6c5ce7, #341f97);
  border: none;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

button:hover, .btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(255,255,255,0.3);
}

/* === admin_index === */
.admin-dashboard {
  min-height: 100vh;
  background: #111;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #fff;
  padding: 40px 20px;
}

.admin-dashboard__title {
  font-size: 2.5rem;
  margin-bottom: 40px;
  color: #fff;
}

.admin-dashboard__btn {
  display: inline-block;
  margin: 10px;
  padding: 14px 28px;
  font-size: 1.2rem;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(45deg, #554F4F, #6C3E34);
  border: none;
  border-radius: 40px;
  cursor: pointer;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.admin-dashboard__btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.4);
}

/* === admin_user_add === */

/* admin_user_add: forcer les champs en colonnes */
.admin-user-add-input label {
  display: block;
  margin-bottom: 8px;
  font-size: 1rem;
  color: #fff;
}

.admin-user-add-input > div {
  margin-bottom: 25px;
}

.admin-user-add-container {
  min-height: 100vh;
  background: #111;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding: 40px 20px;
}

.admin-user-add-container h1 {
  font-size: 2.2rem;
  margin-bottom: 30px;
  color: #fff;
}

.admin-user-add-form {
  width: 100%;
  max-width: 500px;
  background: rgba(255, 255, 255, 0.05);
  padding: 30px;
  border-radius: 15px;
  box-shadow: 0 0 30px rgba(255, 255, 255, 0.1);
}

.admin-user-add-input input,
.admin-user-add-input select {
  width: 100%;
  padding: 14px 20px;
  margin-bottom: 25px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(6px);
  color: #fff;
  font-size: 1rem;
  box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.05);
  transition: border 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}

.admin-user-add-input input:focus,
.admin-user-add-input select:focus {
  border: 1px solid rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.2);
  outline: none;
}


.admin-user-add-btn {
  display: inline-block;
  width: 100%;
  padding: 14px;
  font-size: 1.2rem;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(45deg, #554F4F, #6C3E34);
  border: none;
  border-radius: 40px;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.admin-user-add-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.4);
}

.admin-user-add-container .btn-warning {
  display: inline-block;
  margin-top: 15px;
  text-align: center;
  width: 100%;
  padding: 12px;
  font-size: 1.1rem;
  font-weight: 600;
  color: #000;
  background-color: #ffc107;
  border: none;
  border-radius: 40px;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.admin-user-add-container .btn-warning:hover {
  transform: scale(1.05);
  box-shadow: 0 0 20px rgba(255, 193, 7, 0.4);
}

/* === admin_user_edit === */

.admin-user-edit-container {
  min-height: 100vh;
  background: #111;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding: 40px 20px;
}

.admin-user-edit-container h1 {
  font-size: 2.2rem;
  margin-bottom: 30px;
  color: #fff;
}

.admin-user-edit-form {
  width: 100%;
  max-width: 500px;
  background: rgba(255, 255, 255, 0.05);
  padding: 30px;
  border-radius: 15px;
  box-shadow: 0 0 30px rgba(255, 255, 255, 0.1);
}

.admin-user-edit-input label {
  display: block;
  margin-bottom: 8px;
  font-size: 1rem;
  color: #fff;
}

.admin-user-edit-input > div {
  margin-bottom: 25px;
}

.admin-user-edit-input input,
.admin-user-edit-input select {
  width: 100%;
  padding: 14px 20px;
  margin-bottom: 25px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(6px);
  color: #fff;
  font-size: 1rem;
  box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.05);
  transition: border 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}

.admin-user-edit-input input:focus,
.admin-user-edit-input select:focus {
  border: 1px solid rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.2);
  outline: none;
}

.admin-user-edit-btn {
  display: inline-block;
  width: 100%;
  padding: 14px;
  font-size: 1.2rem;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(45deg, #554F4F, #6C3E34);
  border: none;
  border-radius: 40px;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.admin-user-edit-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.4);
}

/* === admin_user_import === */

.admin-user-import-container {
  min-height: 100vh;
  background: #111;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding: 40px 20px;
}

.admin-user-import-container h1 {
  font-size: 2.2rem;
  margin-bottom: 30px;
  color: #fff;
}

.admin-user-import-form {
  width: 100%;
  max-width: 500px;
  background: rgba(255, 255, 255, 0.05);
  padding: 30px;
  border-radius: 15px;
  box-shadow: 0 0 30px rgba(255, 255, 255, 0.1);
}

.admin-user-import-input label {
  display: block;
  margin-bottom: 8px;
  font-size: 1rem;
  color: #fff;
}

.admin-user-import-input > div {
  margin-bottom: 25px;
}

.admin-user-import-input input,
.admin-user-import-input select {
  width: 100%;
  padding: 14px 20px;
  margin-bottom: 25px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(6px);
  color: #fff;
  font-size: 1rem;
  box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.05);
  transition: border 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}

.admin-user-import-input input:focus,
.admin-user-import-input select:focus {
  border: 1px solid rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.2);
  outline: none;
}

.admin-user-import-btn {
  display: inline-block;
  width: 100%;
  padding: 14px;
  font-size: 1.2rem;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(45deg, #554F4F, #6C3E34);
  border: none;
  border-radius: 40px;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.admin-user-import-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.4);
}

/* === admin_user_list === */

body {
  background: #111;
  color: #fff;
}

h1 {
  text-align: center;
  font-size: 2.5rem;
  margin: 40px 0 20px;
  color: #fff;
}

p {
  text-align: center;
  font-size: 1.1rem;
  margin-bottom: 30px;
  color: #ccc;
}

a.btn {
  display: inline-block;
  text-decoration: none;
  padding: 12px 20px;
  margin: 10px;
  border-radius: 12px;
  font-weight: 600;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

a.btn-primary {
  background: linear-gradient(45deg, #0066ff, #003399);
  color: #fff;
}

a.btn-success {
  background: linear-gradient(45deg, #00b894, #00897b);
  color: #fff;
}

a.btn-warning {
  background: linear-gradient(45deg, #f39c12, #d35400);
  color: #fff;
}

a.btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.3);
}

table {
  width: 100%;
  border-collapse: collapse;
  margin: 40px auto;
  max-width: 1200px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 0 30px rgba(255, 255, 255, 0.1);
}

thead {
  background: rgba(255, 255, 255, 0.1);
}

th, td {
  padding: 20px;
  text-align: left;
}

th {
  font-size: 1.1rem;
  color: #000;
}

td {
  color: #111;
  font-size: 1rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

tr:hover {
  background: rgba(255, 255, 255, 0.05);
}

.btn-sm {
  padding: 8px 14px;
  border-radius: 8px;
  font-size: 0.9rem;
}

.btn-sm.btn-warning {
  background: linear-gradient(45deg, #e67e22, #d35400);
  color: #fff;
}

.btn-sm.btn-danger {
  background: linear-gradient(45deg, #e74c3c, #c0392b);
  color: #fff;
}

form {
  display: inline;
}

.text-gray-500 {
  color: #000;
}

.exercise-index__title {
  text-align: center;
  font-size: 2.2rem;
  margin: 40px 0 30px;
  color: #fff;
}

.exercise-index__btn {
  display: inline-block;
  padding: 12px 20px;
  margin: 10px;
  text-decoration: none;
  border-radius: 10px;
  font-weight: 600;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
  color: #fff;
}

.exercise-index__btn--add-chapter {
  background: linear-gradient(45deg, #00b894, #00897b);
}

.exercise-index__btn--add {
  background: linear-gradient(45deg, #6c5ce7, #341f97);
}

.exercise-index__btn--back {
  background: linear-gradient(45deg, #636e72, #2d3436);
}

.exercise-index__btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.3);
}

.exercise-index__button-group {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 40px 0;
}

.exercise-index__chapter-list {
  list-style: none;
  padding: 0;
  max-width: 600px;
  margin: 30px auto;
}

.exercise-index__chapter-item {
  margin-bottom: 15px;
  text-align: center;
}

.exercise-index__chapter-link {
  display: inline-block;
  color: #00cec9;
  text-decoration: none;
  font-size: 1.3rem;
  transition: color 0.3s ease;
}

.exercise-index__chapter-link:hover {
  color: #81ecec;
}

.exercise-index__no-chapter {
  text-align: center;
  color: #aaa;
  font-style: italic;
}
.exercise-form__header {
  text-align: center;
  font-size: 2rem;
  margin: 40px 0 30px;
  color: #fff;
}

/* .exercise-form__form {
  max-width: 600px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.05);
  padding: 30px;
  border-radius: 15px;
  box-shadow: 0 0 20px rgba(0,0,0,0.3);
} */

.exercise-form__input input,
.exercise-form__textarea textarea {
  width: 100%;
  padding: 12px;
  margin-top: 8px;
  border: 1px solid #555;
  border-radius: 8px;
  background-color: #222;
  color: #eee;
  font-size: 1rem;
  transition: border-color 0.3s ease;
}

.exercise-form__input input:focus,
.exercise-form__textarea textarea:focus {
  border-color: #00cec9;
  outline: none;
}

.exercise-form__submit-btn {
  display: block;
  width: 100%;
  background: linear-gradient(45deg, #6c5ce7, #341f97);
  color: #fff;
  border: none;
  padding: 14px;
  margin-top: 20px;
  border-radius: 10px;
  font-weight: 600;
  font-size: 1.2rem;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.exercise-form__submit-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(255,255,255,0.3);
}

.exercise-form__button-group {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}

.exercise-form__back-btn {
  display: inline-block;
  padding: 12px 20px;
  text-decoration: none;
  border-radius: 10px;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(45deg, #636e72, #2d3436);
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.exercise-form__back-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(255,255,255,0.3);
}

/* Centrage parfait de la div */
.form-container {
  position: absolute; /* ou fixed selon le contexte */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 500px;
  width: 90%;
  background-color: #1e1e1e;
  padding: 40px;
  border-radius: 16px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
}

/* Titre du formulaire */
.exercise-form__header {
  text-align: center;
  margin-bottom: 30px;
  font-size: 2rem;
  color: #fff;
}

/* Liens sous le formulaire */
.exercise-form__links {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 30px;
}
/*
.exercise-table-container {
  position: absolute; /* ou fixed si tu préfères 
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 1000px;
  width: 95%;
  background-color: #1e1e1e;
  padding: 40px;
  border-radius: 16px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
}
*/
.exercise-table__title {
  text-align: center;
  margin-bottom: 30px;
  font-size: 2rem;
  color: #fff;
}

.exercise-table {
  width: 100%;
  border-collapse: collapse;
  color: #fff;
}

.exercise-table__header {
  background-color: #333;
  padding: 12px;
  text-align: left;
  font-weight: bold;
  color: #00cec9;
}

.exercise-table__row:nth-child(even) {
  background-color: #2a2a2a;
}

.exercise-table__row:nth-child(odd) {
  background-color: #242424;
  
}

.exercise-table__cell {
  padding: 12px;
  vertical-align: top;
  color:#00cec9;
  font-size: 1.2em;;
}

.exercise-table__link {
  color: #4fc3f7;
  text-decoration: none;
  font-size:1.5em;
}

.exercise-table__link:hover {
  text-decoration: underline;
}

/* Error Pages */
.error-container {
  max-width: 600px;
  margin: 100px auto;
  padding: 40px;
  background: rgba(30, 30, 30, 0.95);
  border-radius: 20px;
  box-shadow: 0 0 40px rgba(0,0,0,0.5);
  color: #fff;
  text-align: center;
  font-family: 'Nunito', sans-serif;
}

.error-container h1 {
  font-size: 4em;
  color: #e74c3c;
  margin-bottom: 20px;
  text-shadow: 2px 2px 8px rgba(0,0,0,0.6);
}

.error-container p {
  font-size: 1.4em;
  margin-bottom: 40px;
}

.error-btn {
  display: inline-block;
  padding: 14px 28px;
  background: #f1c40f;
  border-radius: 10px;
  color: #000;
  text-decoration: none;
  font-weight: bold;
  transition: background 0.3s, transform 0.2s;
}

.error-btn:hover {
  background: #d4ac0d;
  transform: scale(1.05);
}


canvas {
  background-color: #1e1e1e;
  border-radius: 8px;
  max-width: 400px;  /* Largeur max */
  max-height: 300px; /* Hauteur max */
  width: 100%;       /* Pour que ça soit responsive dans son conteneur */
  height: auto;
  display: block;
  margin: 0 auto;
}

.chart-container {
  width: 32% ;     /* environ 1/3*/
  display: inline-block;
  vertical-align: top;
  margin-right: 1%;
}

h1 {
  font-size: 36px;
  color: #222222;
  font-weight: bold;
}

h2 {
  font-size: 18px;
  color: #555555;
  font-weight: normal;
  margin-top: 20px;
  margin-bottom: 10px;
}

.exercise-form__dropzone {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 30px;
  border: 2px dashed #3490dc; /* bleu */
  border-radius: 8px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  background-color: #f8f9fa;
  color: #6c757d;
}

.exercise-form__dropzone:hover,
.exercise-form__dropzone--hover {
  background-color: #e9ecef;
}

.exercise-form__dropzone p {
  margin: 0;
  font-size: 1rem;
}

.exercise-index__chapter-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
  color: #fff;
}

.exercise-index__chapter-table th,
.exercise-index__chapter-table td {
  padding: 14px 20px;
  text-align: left;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.exercise-index__chapter-table th {
  background-color: rgba(255, 255, 255, 0.1);
  font-size: 1.2rem;
  font-weight: 600;
}

.exercise-index__chapter-row:hover {
  background-color: rgba(255, 255, 255, 0.05);
}

.exercise-index__btn-toggle {
  padding: 8px 16px;
  border-radius: 8px;
  font-weight: 600;
  color: #fff;
  border: none;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.exercise-index__btn-visible {
  background: linear-gradient(45deg, #28a745, #218838);
}

.exercise-index__btn-invisible {
  background: linear-gradient(45deg, #6c757d, #5a6268);
}

.exercise-index__btn-toggle:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(255,255,255,0.3);
}

.exercise-index__no-chapter {
  text-align: center;
  padding: 20px;
  font-style: italic;
  color: #ccc;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLFlBQVk7RUFDWixlQUFlO0VBQ2YscURBQXFEO0FBQ3ZEOztBQUVBO0VBQ0Usb0RBQW9EO0FBQ3REOztBQUVBO0VBQ0Usb0RBQW9EO0FBQ3REOztBQUVBO0VBQ0Usc0JBQXNCO0VBQ3RCLDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLFdBQVc7QUFDYiIsInNvdXJjZXMiOlsid2VicGFjazovL2VkdWNhdGlvbi8uL2Fzc2V0cy9zdHlsZXMvYXBwLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9UXVpY2tzYW5kOndnaHRAMzAwJmRpc3BsYXk9c3dhcFwiKTtcbioge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtZmFtaWx5OiBcIlF1aWNrc2FuZFwiLCBzYW5zLXNlcmlmO1xufVxuLmRpc2Nvbm5lY3R7XG4gIGJhY2tncm91bmQ6ICMxMTE7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubG9naW4tcGFnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogIzExMTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucmluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDUwMHB4O1xuICBoZWlnaHQ6IDUwMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5yaW5nIGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICB0cmFuc2l0aW9uOiAwLjVzO1xufVxuLnJpbmcgaTpudGgtY2hpbGQoMSkge1xuICBib3JkZXItcmFkaXVzOiAzOCUgNjIlIDYzJSAzNyUgLyA0MSUgNDQlIDU2JSA1OSU7XG4gIGFuaW1hdGlvbjogYW5pbWF0ZSA2cyBsaW5lYXIgaW5maW5pdGU7XG59XG4ucmluZyBpOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1yYWRpdXM6IDQxJSA0NCUgNTYlIDU5JS8zOCUgNjIlIDYzJSAzNyU7XG4gIGFuaW1hdGlvbjogYW5pbWF0ZSA0cyBsaW5lYXIgaW5maW5pdGU7XG59XG4ucmluZyBpOm50aC1jaGlsZCgzKSB7XG4gIGJvcmRlci1yYWRpdXM6IDQxJSA0NCUgNTYlIDU5JS8zOCUgNjIlIDYzJSAzNyU7XG4gIGFuaW1hdGlvbjogYW5pbWF0ZTIgMTBzIGxpbmVhciBpbmZpbml0ZTtcbn1cbi5yaW5nOmhvdmVyIGkge1xuICBib3JkZXI6IDZweCBzb2xpZCB2YXIoLS1jbHIpO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgMCAyMHB4IHZhcigtLWNscikpO1xufVxuQGtleWZyYW1lcyBhbmltYXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZTIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuLmxvZ2luIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMjBweDtcbn1cbi5sb2dpbiBoMiB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5sb2dpbiAuaW5wdXRCeCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubG9naW4gLmlucHV0QnggaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICBmb250LXNpemU6IDEuMmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5sb2dpbiAuaW5wdXRCeCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICM2RTZGNkY7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgIzU1NEY0RiwgIzZDM0UzNCk7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmxvZ2luIC5pbnB1dEJ4IGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuLmxvZ2luIC5saW5rcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAyMHB4O1xufVxuLmxvZ2luIC5saW5rcyBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogQXBwbGlxdWVyIHVuIHN0eWxlIGRlIGJhc2Ugw6AgdG91cyBsZXMgY2hhbXBzICovXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEycHg7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU1NTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBjb2xvcjogI2VlZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcyBlYXNlO1xufVxuXG4vKiBGb2N1cyDDqWzDqWdhbnQgKi9cbmlucHV0OmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMsXG5zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwMGNlYzk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi8qIExlcyBsYWJlbHMgZ8OpbsOpcsOpcyBwYXIgU3ltZm9ueSAqL1xubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICNjY2M7XG59XG5cbi8qIExlcyBib3V0b25zICovXG5idXR0b24sIC5idG4sIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTJweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNmM1Y2U3LCAjMzQxZjk3KTtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4zcyBlYXNlO1xufVxuXG5idXR0b246aG92ZXIsIC5idG46aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICBib3gtc2hhZG93OiAwIDAgMTVweCByZ2JhKDI1NSwyNTUsMjU1LDAuMyk7XG59XG5cbi8qID09PSBhZG1pbl9pbmRleCA9PT0gKi9cbi5hZG1pbi1kYXNoYm9hcmQge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogIzExMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDQwcHggMjBweDtcbn1cblxuLmFkbWluLWRhc2hib2FyZF9fdGl0bGUge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5hZG1pbi1kYXNoYm9hcmRfX2J0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAxMHB4O1xuICBwYWRkaW5nOiAxNHB4IDI4cHg7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNTU0RjRGLCAjNkMzRTM0KTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG59XG5cbi5hZG1pbi1kYXNoYm9hcmRfX2J0bjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbn1cblxuLyogPT09IGFkbWluX3VzZXJfYWRkID09PSAqL1xuXG4vKiBhZG1pbl91c2VyX2FkZDogZm9yY2VyIGxlcyBjaGFtcHMgZW4gY29sb25uZXMgKi9cbi5hZG1pbi11c2VyLWFkZC1pbnB1dCBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5hZG1pbi11c2VyLWFkZC1pbnB1dCA+IGRpdiB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbi5hZG1pbi11c2VyLWFkZC1jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogIzExMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiA0MHB4IDIwcHg7XG59XG5cbi5hZG1pbi11c2VyLWFkZC1jb250YWluZXIgaDEge1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5hZG1pbi11c2VyLWFkZC1mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIGJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLmFkbWluLXVzZXItYWRkLWlucHV0IGlucHV0LFxuLmFkbWluLXVzZXItYWRkLWlucHV0IHNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDZweCk7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIHRyYW5zaXRpb246IGJvcmRlciAwLjNzIGVhc2UsIGJveC1zaGFkb3cgMC4zcyBlYXNlLCBiYWNrZ3JvdW5kIDAuM3MgZWFzZTtcbn1cblxuLmFkbWluLXVzZXItYWRkLWlucHV0IGlucHV0OmZvY3VzLFxuLmFkbWluLXVzZXItYWRkLWlucHV0IHNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cblxuLmFkbWluLXVzZXItYWRkLWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNTU0RjRGLCAjNkMzRTM0KTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4zcyBlYXNlO1xufVxuXG4uYWRtaW4tdXNlci1hZGQtYnRuOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xufVxuXG4uYWRtaW4tdXNlci1hZGQtY29udGFpbmVyIC5idG4td2FybmluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTJweDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG59XG5cbi5hZG1pbi11c2VyLWFkZC1jb250YWluZXIgLmJ0bi13YXJuaW5nOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgyNTUsIDE5MywgNywgMC40KTtcbn1cblxuLyogPT09IGFkbWluX3VzZXJfZWRpdCA9PT0gKi9cblxuLmFkbWluLXVzZXItZWRpdC1jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogIzExMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiA0MHB4IDIwcHg7XG59XG5cbi5hZG1pbi11c2VyLWVkaXQtY29udGFpbmVyIGgxIHtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYWRtaW4tdXNlci1lZGl0LWZvcm0ge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgcGFkZGluZzogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4uYWRtaW4tdXNlci1lZGl0LWlucHV0IGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmFkbWluLXVzZXItZWRpdC1pbnB1dCA+IGRpdiB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbi5hZG1pbi11c2VyLWVkaXQtaW5wdXQgaW5wdXQsXG4uYWRtaW4tdXNlci1lZGl0LWlucHV0IHNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDZweCk7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIHRyYW5zaXRpb246IGJvcmRlciAwLjNzIGVhc2UsIGJveC1zaGFkb3cgMC4zcyBlYXNlLCBiYWNrZ3JvdW5kIDAuM3MgZWFzZTtcbn1cblxuLmFkbWluLXVzZXItZWRpdC1pbnB1dCBpbnB1dDpmb2N1cyxcbi5hZG1pbi11c2VyLWVkaXQtaW5wdXQgc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmFkbWluLXVzZXItZWRpdC1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNHB4O1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgIzU1NEY0RiwgIzZDM0UzNCk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuM3MgZWFzZTtcbn1cblxuLmFkbWluLXVzZXItZWRpdC1idG46aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG59XG5cbi8qID09PSBhZG1pbl91c2VyX2ltcG9ydCA9PT0gKi9cblxuLmFkbWluLXVzZXItaW1wb3J0LWNvbnRhaW5lciB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kOiAjMTExO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDQwcHggMjBweDtcbn1cblxuLmFkbWluLXVzZXItaW1wb3J0LWNvbnRhaW5lciBoMSB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmFkbWluLXVzZXItaW1wb3J0LWZvcm0ge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgcGFkZGluZzogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4uYWRtaW4tdXNlci1pbXBvcnQtaW5wdXQgbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYWRtaW4tdXNlci1pbXBvcnQtaW5wdXQgPiBkaXYge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuXG4uYWRtaW4tdXNlci1pbXBvcnQtaW5wdXQgaW5wdXQsXG4uYWRtaW4tdXNlci1pbXBvcnQtaW5wdXQgc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE0cHggMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNnB4KTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDEwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIDAuM3MgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2UsIGJhY2tncm91bmQgMC4zcyBlYXNlO1xufVxuXG4uYWRtaW4tdXNlci1pbXBvcnQtaW5wdXQgaW5wdXQ6Zm9jdXMsXG4uYWRtaW4tdXNlci1pbXBvcnQtaW5wdXQgc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmFkbWluLXVzZXItaW1wb3J0LWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNTU0RjRGLCAjNkMzRTM0KTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4zcyBlYXNlO1xufVxuXG4uYWRtaW4tdXNlci1pbXBvcnQtYnRuOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xufVxuXG4vKiA9PT0gYWRtaW5fdXNlcl9saXN0ID09PSAqL1xuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogIzExMTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbmgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbWFyZ2luOiA0MHB4IDAgMjBweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbnAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBjb2xvcjogI2NjYztcbn1cblxuYS5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMTJweCAyMHB4O1xuICBtYXJnaW46IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4zcyBlYXNlO1xufVxuXG5hLmJ0bi1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjMDA2NmZmLCAjMDAzMzk5KTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbmEuYnRuLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMwMGI4OTQsICMwMDg5N2IpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuYS5idG4td2FybmluZyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2YzOWMxMiwgI2QzNTQwMCk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5hLmJ0bjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIGJveC1zaGFkb3c6IDAgMCAxNXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbn1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWFyZ2luOiA0MHB4IGF1dG87XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG50aCwgdGQge1xuICBwYWRkaW5nOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50aCB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBjb2xvcjogIzAwMDtcbn1cblxudGQge1xuICBjb2xvcjogIzExMTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG50cjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG59XG5cbi5idG4tc20ge1xuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLmJ0bi1zbS5idG4td2FybmluZyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2U2N2UyMiwgI2QzNTQwMCk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnRuLXNtLmJ0bi1kYW5nZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNlNzRjM2MsICNjMDM5MmIpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuZm9ybSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLnRleHQtZ3JheS01MDAge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmV4ZXJjaXNlLWluZGV4X190aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIG1hcmdpbjogNDBweCAwIDMwcHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX2J0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTJweCAyMHB4O1xuICBtYXJnaW46IDEwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX2J0bi0tYWRkLWNoYXB0ZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMwMGI4OTQsICMwMDg5N2IpO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX2J0bi0tYWRkIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNmM1Y2U3LCAjMzQxZjk3KTtcbn1cblxuLmV4ZXJjaXNlLWluZGV4X19idG4tLWJhY2sge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICM2MzZlNzIsICMyZDM0MzYpO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX2J0bjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIGJveC1zaGFkb3c6IDAgMCAxNXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbn1cblxuLmV4ZXJjaXNlLWluZGV4X19idXR0b24tZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAyMHB4O1xuICBtYXJnaW46IDQwcHggMDtcbn1cblxuLmV4ZXJjaXNlLWluZGV4X19jaGFwdGVyLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXgtd2lkdGg6IDYwMHB4O1xuICBtYXJnaW46IDMwcHggYXV0bztcbn1cblxuLmV4ZXJjaXNlLWluZGV4X19jaGFwdGVyLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5leGVyY2lzZS1pbmRleF9fY2hhcHRlci1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzAwY2VjOTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX2NoYXB0ZXItbGluazpob3ZlciB7XG4gIGNvbG9yOiAjODFlY2VjO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX25vLWNoYXB0ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjYWFhO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4uZXhlcmNpc2UtZm9ybV9faGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDJyZW07XG4gIG1hcmdpbjogNDBweCAwIDMwcHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiAuZXhlcmNpc2UtZm9ybV9fZm9ybSB7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBwYWRkaW5nOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsMCwwLDAuMyk7XG59ICovXG5cbi5leGVyY2lzZS1mb3JtX19pbnB1dCBpbnB1dCxcbi5leGVyY2lzZS1mb3JtX190ZXh0YXJlYSB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMnB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1NTU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgY29sb3I6ICNlZWU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZTtcbn1cblxuLmV4ZXJjaXNlLWZvcm1fX2lucHV0IGlucHV0OmZvY3VzLFxuLmV4ZXJjaXNlLWZvcm1fX3RleHRhcmVhIHRleHRhcmVhOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDBjZWM5O1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uZXhlcmNpc2UtZm9ybV9fc3VibWl0LWJ0biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNmM1Y2U3LCAjMzQxZjk3KTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMTRweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG59XG5cbi5leGVyY2lzZS1mb3JtX19zdWJtaXQtYnRuOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgYm94LXNoYWRvdzogMCAwIDE1cHggcmdiYSgyNTUsMjU1LDI1NSwwLjMpO1xufVxuXG4uZXhlcmNpc2UtZm9ybV9fYnV0dG9uLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi5leGVyY2lzZS1mb3JtX19iYWNrLWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTJweCAyMHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICM2MzZlNzIsICMyZDM0MzYpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuM3MgZWFzZTtcbn1cblxuLmV4ZXJjaXNlLWZvcm1fX2JhY2stYnRuOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgYm94LXNoYWRvdzogMCAwIDE1cHggcmdiYSgyNTUsMjU1LDI1NSwwLjMpO1xufVxuXG4vKiBDZW50cmFnZSBwYXJmYWl0IGRlIGxhIGRpdiAqL1xuLmZvcm0tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyAvKiBvdSBmaXhlZCBzZWxvbiBsZSBjb250ZXh0ZSAqL1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgd2lkdGg6IDkwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWUxZTtcbiAgcGFkZGluZzogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG4vKiBUaXRyZSBkdSBmb3JtdWxhaXJlICovXG4uZXhlcmNpc2UtZm9ybV9faGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBMaWVucyBzb3VzIGxlIGZvcm11bGFpcmUgKi9cbi5leGVyY2lzZS1mb3JtX19saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG4vKlxuLmV4ZXJjaXNlLXRhYmxlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgLyogb3UgZml4ZWQgc2kgdHUgcHLDqWbDqHJlcyBcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIG1heC13aWR0aDogMTAwMHB4O1xuICB3aWR0aDogOTUlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUxZTFlO1xuICBwYWRkaW5nOiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG4qL1xuLmV4ZXJjaXNlLXRhYmxlX190aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgZm9udC1zaXplOiAycmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmV4ZXJjaXNlLXRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZXhlcmNpc2UtdGFibGVfX2hlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIHBhZGRpbmc6IDEycHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzAwY2VjOTtcbn1cblxuLmV4ZXJjaXNlLXRhYmxlX19yb3c6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJhMmEyYTtcbn1cblxuLmV4ZXJjaXNlLXRhYmxlX19yb3c6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNDI0O1xuICBcbn1cblxuLmV4ZXJjaXNlLXRhYmxlX19jZWxsIHtcbiAgcGFkZGluZzogMTJweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY29sb3I6IzAwY2VjOTtcbiAgZm9udC1zaXplOiAxLjJlbTs7XG59XG5cbi5leGVyY2lzZS10YWJsZV9fbGluayB7XG4gIGNvbG9yOiAjNGZjM2Y3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZToxLjVlbTtcbn1cblxuLmV4ZXJjaXNlLXRhYmxlX19saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qIEVycm9yIFBhZ2VzICovXG4uZXJyb3ItY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgbWFyZ2luOiAxMDBweCBhdXRvO1xuICBwYWRkaW5nOiA0MHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDMwLCAzMCwgMzAsIDAuOTUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBib3gtc2hhZG93OiAwIDAgNDBweCByZ2JhKDAsMCwwLDAuNSk7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiAnTnVuaXRvJywgc2Fucy1zZXJpZjtcbn1cblxuLmVycm9yLWNvbnRhaW5lciBoMSB7XG4gIGZvbnQtc2l6ZTogNGVtO1xuICBjb2xvcjogI2U3NGMzYztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgdGV4dC1zaGFkb3c6IDJweCAycHggOHB4IHJnYmEoMCwwLDAsMC42KTtcbn1cblxuLmVycm9yLWNvbnRhaW5lciBwIHtcbiAgZm9udC1zaXplOiAxLjRlbTtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLmVycm9yLWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTRweCAyOHB4O1xuICBiYWNrZ3JvdW5kOiAjZjFjNDBmO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzLCB0cmFuc2Zvcm0gMC4ycztcbn1cblxuLmVycm9yLWJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNkNGFjMGQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cblxuY2FudmFzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWUxZTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBtYXgtd2lkdGg6IDQwMHB4OyAgLyogTGFyZ2V1ciBtYXggKi9cbiAgbWF4LWhlaWdodDogMzAwcHg7IC8qIEhhdXRldXIgbWF4ICovXG4gIHdpZHRoOiAxMDAlOyAgICAgICAvKiBQb3VyIHF1ZSDDp2Egc29pdCByZXNwb25zaXZlIGRhbnMgc29uIGNvbnRlbmV1ciAqL1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmNoYXJ0LWNvbnRhaW5lciB7XG4gIHdpZHRoOiAzMiUgOyAgICAgLyogZW52aXJvbiAxLzMqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbi1yaWdodDogMSU7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAzNnB4O1xuICBjb2xvcjogIzIyMjIyMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogIzU1NTU1NTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmV4ZXJjaXNlLWZvcm1fX2Ryb3B6b25lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAzMHB4O1xuICBib3JkZXI6IDJweCBkYXNoZWQgIzM0OTBkYzsgLyogYmxldSAqL1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4uZXhlcmNpc2UtZm9ybV9fZHJvcHpvbmU6aG92ZXIsXG4uZXhlcmNpc2UtZm9ybV9fZHJvcHpvbmUtLWhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbn1cblxuLmV4ZXJjaXNlLWZvcm1fX2Ryb3B6b25lIHAge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmV4ZXJjaXNlLWluZGV4X19jaGFwdGVyLXRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX2NoYXB0ZXItdGFibGUgdGgsXG4uZXhlcmNpc2UtaW5kZXhfX2NoYXB0ZXItdGFibGUgdGQge1xuICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG5cbi5leGVyY2lzZS1pbmRleF9fY2hhcHRlci10YWJsZSB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5leGVyY2lzZS1pbmRleF9fY2hhcHRlci1yb3c6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX2J0bi10b2dnbGUge1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4zcyBlYXNlO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX2J0bi12aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjMjhhNzQ1LCAjMjE4ODM4KTtcbn1cblxuLmV4ZXJjaXNlLWluZGV4X19idG4taW52aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNmM3NTdkLCAjNWE2MjY4KTtcbn1cblxuLmV4ZXJjaXNlLWluZGV4X19idG4tdG9nZ2xlOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgYm94LXNoYWRvdzogMCAwIDE1cHggcmdiYSgyNTUsMjU1LDI1NSwwLjMpO1xufVxuXG4uZXhlcmNpc2UtaW5kZXhfX25vLWNoYXB0ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICNjY2M7XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/