#modal_close {
  width: 21px;
  height: 21px;
  position: absolute;
  top: 5px;
  right: 50px;
  cursor: pointer;
  display: block;
  color: #f15536;
  font-size: 40px;
  z-index: 10; }

.mymagicoverbox {
  padding: 0 10px 10px 0;
  margin: 0 0 10px 40px; }

.mymagicoverbox_fenetre {
  width: 680px;
  left: -340px;
  z-index: 9999;
  position: fixed;
  margin-left: 50%;
  top: 20px;
  text-align: center;
  display: none;
  background-color: #ffffff; }
  .mymagicoverbox_fenetre p {
    margin: 70px 0 10px 40px;
    padding: 0 19px;
    font-family: "Montserrat-SemiBold", sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #413d4b; }

.mymagicoverbox_fenetreinterieur {
  height: 400px;
  text-align: center;
  overflow: auto;
  background-color: #ffffff;
  margin-top: 10px; }

#myfond_gris {
  display: none;
  background-color: #000000;
  opacity: 0.88;
  width: 100%;
  height: 100%;
  z-index: 9998;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0; }


.mymagicoverbox_fenetreinterieur input {
  background: none;
  border: none;
  border-bottom: 2px solid #000;
  color: #000;
  text-align: center;
  font-size: 18px;
  font-family: "Montserrat-Light", sans-serif;
  padding-top: 30px;
  padding-bottom: 5px;
  margin-bottom: 45px;
  width: 100%; }
  .mymagicoverbox_fenetreinterieur input::-webkit-input-placeholder {
    color: #000; }
  .mymagicoverbox_fenetreinterieur input::-moz-placeholder {
    color: #000; }
  .mymagicoverbox_fenetreinterieur input:-ms-input-placeholder {
    color: #000; }
  .mymagicoverbox_fenetreinterieur input::placeholder {
    color: #000; }
  .mymagicoverbox_fenetreinterieur input:focus {
    border-bottom: 2px solid #f15536;
    color: #f15536;
    -webkit-transition: ease 0.4s;
            transition: ease 0.4s; }

.mymagicoverbox_fenetreinterieur textarea {
  font-family: "Montserrat-Light", sans-serif;
  font-size: 18px;
  background: none;
  width: 83%;
  min-height: 170px;
  border: 2px solid #000;
  resize: none;
  padding: 15px 10px; }
  .mymagicoverbox_fenetreinterieur textarea::-webkit-input-placeholder {
    color: #000; }
  .mymagicoverbox_fenetreinterieur textarea::-moz-placeholder {
    color: #000; }
  .mymagicoverbox_fenetreinterieur textarea:-ms-input-placeholder {
    color: #000; }
  .mymagicoverbox_fenetreinterieur textarea::placeholder {
    color: #000; }

.btn_form {
  text-align: center;
  text-transform: uppercase;
  font-weight: 800;
  font-size: 20px;
  color: #fff;
  background: #898989;
  padding: 20px 55px;
  margin-top: 25px;
  border: none; }
  .btn_form:hover {
    -webkit-transition: ease 0.3s;
            transition: ease 0.3s;
    background: #f15536;
    color: #000; }

button:active, button:focus {
  outline: none !important; }

button::-moz-focus-inner {
  border: 0 !important; }


@font-face {
  font-family: 'Montserrat-Regular';
  src: url("../fonts/Montserrat-Regular.otf");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat-Bold';
  src: url("../fonts/Montserrat-Bold.otf");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat-ExtraBold';
  src: url("../fonts/Montserrat-ExtraBold.otf");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat-Light';
  src: url("../fonts/Montserrat-Light.otf");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat-UltraLight';
  src: url("../fonts/Montserrat-UltraLight.otf");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Open Sans Light';
  src: url("../fonts/OpenSans-Light.ttf");
  font-weight: normal;
  font-style: normal;
}
/* normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif; /* 1 */
  line-height: 1.15; /* 2 */
  -ms-text-size-adjust: 100%; /* 3 */
  -webkit-text-size-adjust: 100%; /* 3 */
}
body {
  font-family: "Montserrat", sans-serif;
  margin: 0;
}
article,
aside,
/*footer,*/
header,
nav,
section {
  display: block;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
figcaption,
figure,
main {
/* 1 */
  display: block;
}
figure {
  margin: 1em 40px;
}
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}
a:active,
a:hover {
  outline-width: 0;
}
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}
b,
strong {
  font-weight: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
dfn {
  font-style: italic;
}
mark {
  background-color: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
audio,
video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
img {
  border-style: none;
}
svg:not(:root) {
  overflow: hidden;
}
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}
button,
input {
/* 1 */
  overflow: visible;
}
button,
select {
/* 1 */
  text-transform: none;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* 2 */
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}
progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}
textarea {
  overflow: auto;
}
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
details,
menu {
  display: block;
}
summary {
  display: list-item;
}
canvas {
  display: inline-block;
}
template {
  display: none;
}
[hidden] {
  display: none;
}
a {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}
a:active {
  color: #000;
  text-decoration: none;
}
a:focus {
  color: #fff;
  text-decoration: none;
}
.open {
  position: absolute;
  top: 50px;
  right: 40px;
  width: 50px;
  height: 50px;
  display: none;
  cursor: pointer;
  transition: opacity 0.2s linear;
}
.open:hover {
/*opacity: 0.8;*/
  opacity: 1;
}
.open span {
  display: block;
  float: left;
  clear: both;
  height: 4px;
  width: 40px;
  border-radius: 40px;
  background-color: #f15536;
  position: absolute;
  right: 3px;
  top: 3px;
  overflow: hidden;
  transition: all 0.4s ease;
}
.open span:nth-child(1) {
  margin-top: 10px;
  z-index: 9;
}
.open span:nth-child(2) {
  margin-top: 25px;
}
.open span:nth-child(3) {
  margin-top: 40px;
}
.sub-menu {
  transition: all 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  height: 0;
  width: 0;
  right: 0;
  top: 0;
  position: absolute;
  background-color: rgba(31,31,31,0.9);
  border-radius: 50%;
  z-index: 18;
  overflow: hidden;
}
.sub-menu li {
  display: block;
  float: right;
  clear: both;
  height: auto;
  margin-right: -160px;
  transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.sub-menu li:first-child {
  margin-top: 180px;
}
.sub-menu li:nth-child(1) {
  -webkit-transition-delay: 0.05s;
}
.sub-menu li:nth-child(2) {
  -webkit-transition-delay: 0.1s;
}
.sub-menu li:nth-child(3) {
  -webkit-transition-delay: 0.15s;
}
.sub-menu li:nth-child(4) {
  -webkit-transition-delay: 0.2s;
}
.sub-menu li:nth-child(5) {
  -webkit-transition-delay: 0.25s;
}
.sub-menu li a {
  color: #fff;
  font-size: 22px;
  width: 100%;
  display: block;
  float: left;
  line-height: 40px;
}
.sub-menu li a:active {
  color: #f15536;
}

.sub-menu li a:first-child {
  margin-top: 20px;
}
.oppenned .sub-menu {
  opacity: 1;
  height: auto;
  width: 400px;
  padding-bottom:40px;
}
.oppenned span:nth-child(2) {
  overflow: visible;
}
.oppenned span:nth-child(1),
.oppenned span:nth-child(3) {
  z-index: 100;
  transform: rotate(45deg);
}
.oppenned span:nth-child(1) {
  transform: rotate(45deg) translateY(12px) translateX(12px);
}
.oppenned span:nth-child(2) {
  height: 400px;
  width: 400px;
  right: -160px;
  top: -160px;
  border-radius: 50%;
  background-color: rgba(252,252,252,0);
}
.oppenned span:nth-child(3) {
  transform: rotate(-45deg) translateY(-10px) translateX(10px);
}
.oppenned li {
  margin-right: 168px;
}
/* ---- end of the responsive menu ---*/
html {
  overflow-x: hidden;
}
body {
  overflow-x: hidden;
}
body {
  font-family: Montserrat-Regular;
}
* {
  margin: 0;
}
.top-block {
  background: url("../img/top-block-bg.png") no-repeat;
  background-size: cover;
  width: 100%;
  /*height: 523px;*/
  height:auto;
  position: relative;
}
header {
  font-family: Montserrat-Bold;
  font-size: 20px;
  color: #fff;
  height: 125px;
  /*padding-top: 30px;*/
}
header .logo {
  float: left;
}
header nav {
  padding-top: 35px;
  float: left;
}
header nav ul li {
  margin-left: 40px;
  display: inline-block;
  list-style: none;
  cursor: pointer;
}
header nav ul li a {
  color: #fff;
  text-decoration: none;
}
header nav ul li a:hover {
  color: #f15536;
  text-decoration: none;
}
header nav ul li:hover {
  color: #f15536;
}
header .start-project {
  text-transform: uppercase;
  color: #fff;
  background-color: #f15536;
  padding: 15px 50px;
  float: right;
  margin-top: 20px;
  text-decoration: none;
  transition: 0.3s;
}
header .start-project:hover {
  transition: 0.3s;
  color: #000;
}
.start-project-mobile {
  display: none;
}

.top-projects header nav ul li {
  font-size:20px!important;
}

.sloganWrapper {
  display:inline-flex;
  max-width:750px;
}
h1 {
  font-family: Montserrat-UltraLight;
  font-size: 36px;
  font-weight: 100;
  color: #f15536;
  max-width: 345px;
  display: inline-block;
  margin: 0;
}

.imgWrapper {
  display:flex;
  display: inline-flex;
  align-items:center;
}
.bullet {
  /*margin-bottom: 50px;
  margin-left: 100px;*/
  display: inline-flex;
  align-items:center;
  margin-left:130px;
}
.description {
  font-family: "Open Sans Light", sans-serif;
  font-size: 17px;
  max-width: 285px;
  display: inline-block;
  color: #fff;
  font-weight: 100;
  float: right;
  margin-top: 10px;
}
.gun {
  width: 100%;
  height: auto;
  margin-bottom:20px;
  margin-top:20px;
}
.arsenalWrapper {
  float: right;
  margin-top: -100px;
  max-width: 415px;
}
.arsenalTitle {
  font-size: 20px;
  color: #f15536;
  padding: 0;
}
.arsenal-item {
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  color: #fff;
  display: inline-block;
  padding: 0;
}
.arsenal-item:after {
  content: ' - ';
  color: #d3d3d3;
}
.arsenal-item:after:last-child {
  content: '';
  display: none;
}
.logo {
  background: url("../img/logo2.png") no-repeat;
  width: 97px;
  height: 97px;
}
.logo:hover {
  background: url("../img/logo_hover.png") no-repeat;
  width: 97px;
  height: 97px;
}
.pr-projects {
  margin-bottom: 100px;
}
.projects .projectsWrapper,
.pr-projects .projectsWrapper {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}
.projects .projectItem:hover,
.pr-projects .projectItem:hover {
  cursor: pointer;
}
.projects .projectItem:hover .projectImgWrapper img,
.pr-projects .projectItem:hover .projectImgWrapper img {
  filter: grayscale(0%);
  transition: 0.4s;
}
.projects .projectItem:hover .projectContentWrapper .projectTitle,
.pr-projects .projectItem:hover .projectContentWrapper .projectTitle {
  color: #f15536;
  transition: 0.4s;
}
.projects .projectItem,
.pr-projects .projectItem {
  width: 450px;
  display: flex;
  margin-top: 100px;
}
.projects .projectItem .projectImgWrapper,
.pr-projects .projectItem .projectImgWrapper {
  display: inline-block;
/*img:hover {
        filter: grayscale(0%);
      }*/
}
.projects .projectItem .projectImgWrapper img,
.pr-projects .projectItem .projectImgWrapper img {
  filter: grayscale(100%);
  transition: 0.4s;
}
.projects .projectItem .projectContentWrapper,
.pr-projects .projectItem .projectContentWrapper {
  display: inline-block;
  margin-left: 15px;
}
.projects .projectItem .projectContentWrapper .projectTitle,
.pr-projects .projectItem .projectContentWrapper .projectTitle {
  font-family: Montserrat-Bold;
  font-size: 20px;
  color: #000;
}
.projects .projectItem .projectContentWrapper .projectDescription,
.pr-projects .projectItem .projectContentWrapper .projectDescription {
  font-family: Montserrat-Light;
  font-size: 14px;
}
.projects .projectItem .projectContentWrapper .projectDetailsWrapper,
.pr-projects .projectItem .projectContentWrapper .projectDetailsWrapper {
  display: flex;
  justify-content: space-around;
  margin-top: 10px;
}
.projects .projectItem .projectContentWrapper .caliberWrapper,
.pr-projects .projectItem .projectContentWrapper .caliberWrapper,
.projects .projectItem .projectContentWrapper .platformWrapper,
.pr-projects .projectItem .projectContentWrapper .platformWrapper,
.projects .projectItem .projectContentWrapper .timeWrapper,
.pr-projects .projectItem .projectContentWrapper .timeWrapper,
.projects .projectItem .projectContentWrapper .teamWrapper,
.pr-projects .projectItem .projectContentWrapper .teamWrapper {
  display: flex;
  flex: wrap;
  align-items: center;
  flex-direction: column;
}
.projects .projectItem .projectContentWrapper .caliberWrapper .projectDetailsTitle,
.pr-projects .projectItem .projectContentWrapper .caliberWrapper .projectDetailsTitle,
.projects .projectItem .projectContentWrapper .platformWrapper .projectDetailsTitle,
.pr-projects .projectItem .projectContentWrapper .platformWrapper .projectDetailsTitle,
.projects .projectItem .projectContentWrapper .timeWrapper .projectDetailsTitle,
.pr-projects .projectItem .projectContentWrapper .timeWrapper .projectDetailsTitle,
.projects .projectItem .projectContentWrapper .teamWrapper .projectDetailsTitle,
.pr-projects .projectItem .projectContentWrapper .teamWrapper .projectDetailsTitle {
  font-family: Montserrat-Regular;
  font-size: 12px;
  color: #f15536;
}
.projects .projectItem .projectContentWrapper .caliberWrapper .projectCaliberSize,
.pr-projects .projectItem .projectContentWrapper .caliberWrapper .projectCaliberSize,
.projects .projectItem .projectContentWrapper .platformWrapper .projectCaliberSize,
.pr-projects .projectItem .projectContentWrapper .platformWrapper .projectCaliberSize,
.projects .projectItem .projectContentWrapper .timeWrapper .projectCaliberSize,
.pr-projects .projectItem .projectContentWrapper .timeWrapper .projectCaliberSize,
.projects .projectItem .projectContentWrapper .teamWrapper .projectCaliberSize,
.pr-projects .projectItem .projectContentWrapper .teamWrapper .projectCaliberSize {
  font-family: Montserrat-Regular;
  font-size: 10px;
}
.projects .projectItem .projectContentWrapper .caliberWrapper img,
.pr-projects .projectItem .projectContentWrapper .caliberWrapper img {
  margin-top: 10px;
}
.projects .projectItem .projectContentWrapper .timeWrapper,
.pr-projects .projectItem .projectContentWrapper .timeWrapper {
  position: relative;
}
.projects .projectItem .projectContentWrapper .timeWrapper .dateNumber,
.pr-projects .projectItem .projectContentWrapper .timeWrapper .dateNumber {
  font-family: Montserrat-Bold, sans-serif;
  font-size: 18px;
  position: absolute;
  transform: translateX(-50%);
  left: 50%;
  top:34px;
}
.projects .projectItem .projectContentWrapper .projectDetailsSeparator,
.pr-projects .projectItem .projectContentWrapper .projectDetailsSeparator {
  border-width: 1px;
  border-style: dotted;
  border-color: #f15536;
}
.projects .projectItem .projectContentWrapper .flexWrap,
.pr-projects .projectItem .projectContentWrapper .flexWrap {
  display: flex;
  margin-top: 10px;
}
.projects .projectItem .projectContentWrapper .flexWrapPlatforms,
.pr-projects .projectItem .projectContentWrapper .flexWrapPlatforms {
  margin-top: 10px;
  max-width: 75px;
  flex-wrap: wrap;
}
.projects .projectItem .projectContentWrapper .flexWrapPlatforms img,
.pr-projects .projectItem .projectContentWrapper .flexWrapPlatforms img {
  padding: 5px 5px;
}
.allProjects {
  display: flex;
}
.allProjects .bulletsBg {
  margin: 0 auto;
  background: url("../img/bullets-bg.png") no-repeat center;
  width: 450px;
  height: 174px;
  position: relative;
  transform: translate(-50%, -50%);
  left: 60%;
  top: 70%;
}
.allProjects .bulletsBg .btnAllProjects {
/*margin:0 auto;*/
/*padding:15px 35px;*/
  width: 210px;
  height: 65px;
  padding: 17px 0;
  background-color: #f15536;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  font-family: Montserrat-Bold;
  font-size: 20px;
  position: absolute;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%;
  transition: 0.3s;
}
.allProjects .bulletsBg .btnAllProjects:hover {
  color: #000;
  transition: 0.3s;
}
.marketology .marketologyWrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  margin-top: 80px;
  margin-bottom: 80px;
  flex-wrap: wrap;
}
.marketology .marketologySeparator {
  display: flex;
  flex-direction: column;
  border-width: 1px;
  border-style: dotted;
  border-color: #f15536;
  height: auto;
}
.marketology .mmBlock {
  max-width: 370px;
  display: inline-block;
}
.marketology .mmBlock .mmEvents {
  font-family: Montserrat-Bold;
  font-size: 32px;
  margin-bottom: 10px;
}
.marketology .mmBlock .mmEventName {
  font-family: Montserrat-Regular;
  font-size: 18px;
}
.marketology .mmBlock .mmDatePlace {
  font-family: Montserrat-Light;
  color: #ababab;
  line-height: 1.1;
  margin-top: 5px;
}
.marketology .mmBlock .mmImgBorderWrapper {
  height: 362px;
  width: 362px;
  border: 2px solid #f15536;
  border-radius: 200px;
  padding: 5px;
  margin-top: 50px;
  margin: 50px auto 0 auto;
}
.marketology .mmBlock .mmImgWrapper {
  height: 350px;
  width: 350px;
  border-radius: 200px;
  overflow: hidden;
}
.marketology .qaBlock {
  max-width: 370px;
  display: inline-block;
  position: relative;
  margin-top: 50px;
}
.marketology .qaBlock .qaTitle {
  font-family: Montserrat-Bold;
  font-size: 32px;
  margin-bottom: 10px;
}
.marketology .qaBlock .qaImgWrapper {
  display: block;
  background: url("../img/qa-bg.png") no-repeat;
  width: 370px;
  height: 326px;
  padding: 30px 30px 100px 30px;
}
.marketology .qaBlock .qaImgWrapper .qaQuote {
  font-family: Montserrat-Light;
  font-size: 14px;
}
.marketology .qaBlock .qaPortreitWrapper {
  width: 115px;
  height: 115px;
  overflow: hidden;
  border: 2px solid #000;
  border-radius: 100px;
  position: absolute;
  top: 300px;
  left: 25px;
}
.marketology .qaBlock .btnReadAnswerWrapper {
  font-family: Montserrat-Bold;
  font-size: 18px;
  margin-top: 30px;
  background: url("../img/btn-read-answer.png") no-repeat;
  width: 197px;
  height: 90px;
  text-align: center;
  padding: 17px 0;
  float: right;
}
.marketology .qaBlock .btnReadAnswerWrapper a {
  color: #fff;
  transition: 0.3s;
  text-transform: uppercase;
}
.marketology .qaBlock .btnReadAnswerWrapper:hover a {
  text-decoration: none;
  color: #000;
  transition: 0.3s;
}
/*footer {
  font-family: Montserrat-Light;
  font-size: 16px;
  background: url("../img/top-block-bg.png") no-repeat;
  background-size: cover;
  width: 100%;
  height: 190px;
}
footer .footerWrapper {
  margin-top: 50px;
  display: flex;
  flex-direction: row;
  align-items: center;
}
footer .footerWrapper img {
  display: inline-block;
}
footer .detailsFooterWrapper {
  display: inline-block;
  margin-left: 15px;
  color: #fff;
}
footer .footerEmail {
  color: #f15536;
  text-decoration: underline !important;
}
footer .socialFooter a {
  display: inline-block;
  margin-left: 15px;
}
footer .socialFooter .vk {
  background: url("../img/vk.png") no-repeat;
  width: 31px;
  height: 18px;
  display: inline-block;
}
footer .socialFooter .vk:hover {
  background: url("../img/vk-hover.png") no-repeat;
  width: 31px;
  height: 18px;
  display: inline-block;
}
footer .socialFooter .fb {
  background: url("../img/fb.png") no-repeat;
  width: 13px;
  height: 25px;
  display: inline-block;
}
footer .socialFooter .fb:hover {
  background: url("../img/fb-hover.png") no-repeat;
  width: 13px;
  height: 25px;
  display: inline-block;
}
footer .socialFooter .in {
  background: url("../img/in.png") no-repeat;
  width: 26px;
  height: 25px;
  display: inline-block;
}
footer .socialFooter .in:hover {
  background: url("../img/in-hover.png") no-repeat;
  width: 26px;
  height: 25px;
  display: inline-block;
}
footer .socialFooter .dr {
  background: url("../img/dr.png") no-repeat;
  width: 22px;
  height: 22px;
  display: inline-block;
}
footer .socialFooter .dr:hover {
  background: url("../img/dr-hover.png") no-repeat;
  width: 22px;
  height: 22px;
  display: inline-block;
}
footer .socialFooter .gt {
  background: url("../img/gt.png") no-repeat;
  width: 21px;
  height: 21px;
  display: inline-block;
}
footer .socialFooter .gt:hover {
  background: url("../img/gt-hover.png") no-repeat;
  width: 21px;
  height: 21px;
  display: inline-block;
}*/
.top-projects {
  height: 155px;
}
.pr-projectDetailsWrapper {
  margin-top: 10px;
}
.projectDetailsTitleWrapper {
  width: 100%;
}
.pr-projectDetailsTitle {
  font-family: Montserrat-Regular;
  font-size: 12px;
  color: #f15536;
  width: 24%;
  display: inline-block;
  text-align: center;
}
.projectDetailsSeparator-hr {
  width: 100%;
  border-top: 1px dotted #f15536;
  margin: 3px 0;
}
.pr-projectDetailsContent {
  font-family: Montserrat-Regular;
  font-size: 12px;
  color: #d3d3d3;
  width: 24%;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}

@media only screen and (max-width: 1200px) {
  .bullet {
    margin-left:0;
  }
}
@media only screen and (max-width: 992px) {

  .allProjects .bulletsBg {
    margin-top: 20px;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
  }
  .arsenalWrapper {
    margin-top: -80px;
  }
  .description {
    margin-top: 0;
  }
  .top-projects header nav ul li {
    margin-left: 20px;
    font-size: 20px;
  }
  .top-projects header .start-project {
    padding: 10px 30px;
  }
  .top-projects h1 {
    width: 100%;
  }
  .top-projects header nav {
    padding-top: 30px;
  }
  .top-projects header .start-project {
    margin-top: 20px;
  }
  header .start-project {
    margin-top: 80px;
  }
  .bullet {
    display: none;
  }
  .marketology {
    margin-top: 50px;
  }
  .marketology .marketologySeparator {
    display: none;
  }
  .marketology .mmBlock .mmImgBorderWrapper {
    width: 292px;
    height: 292px;
  }
  .marketology .mmBlock .mmImgWrapper {
    width: 280px;
    height: 280px;
  }
}
@media only screen and (max-width: 768px) {
  .projects .projectsWrapper {
    justify-content: center;
    width: 100%;
  }
  .projects .projectItem {
    min-width: 450px;
  }
  .projects .projectItem {
    align-items: center;
    margin: 50px auto;
    justify-content: center;
  }
  .marketology .mmBlock .mmImgBorderWrapper {
    margin: 50px auto 0 auto;
  }
  h1 {
    width: 300px;
    font-size: 32px;
  }
  .header .start-project {
    margin-top: 70px;
  }
  .arsenalWrapper {
    margin-top: -30px;
    margin-bottom: 20px;
  }
  .marketology .mmBlock {
    margin: 0 auto;
  }
  .marketology .qaBlock {
    margin: 40px auto 0 auto;
  }
}
@media only screen and (max-width: 700px) {
  .top-projects .open {
    display: block;
  }
  .top-projects header nav {
    display: none;
  }
  .top-projects .start-project {
    display:none;
  }

}
@media only screen and (max-width: 637px) {
/*  footer .footerWrapper {
    justify-content: center;
    flex-direction: column;
  }
  footer .footerWrapper img {
    display: none;
  }
  footer .footerWrapper .socialFooter {
    margin-top: 10px;
  }*/
  header .start-project {
    margin-top: 20px;
  }
  h1 {
    width: 200px;
  }
  .description {
    margin-top: -110px;
  }
  .gun {
    margin-top: 20px;
  }
  .arsenalWrapper {
    margin-top: 0px;
  }
}
@media only screen and (max-width: 525px) {
  .top-block {
    height: auto;
    padding-bottom: 20px;
  }
  h1 {
    margin-top: 10px;
  }
  .open {
    display: block;
  }
  header nav {
    display: none;
  }
  header nav ul li {
    margin-left: 20px;
    font-size: 18px;
  }
  header .start-project {
    padding: 10px 30px;
    float: left;
    margin-left: 20px;
  }
  h1 {
    width: 100%;
  }
  header nav {
    padding-top: 0;
  }
  .gun {
    margin-top: 35px;
  }
  .arsenalWrapper {
    margin-top: 20px;
  }
  .description {
    margin-top: 0;
    max-width: 100%;
  }
  .projects .projectItem .projectContentWrapper {
    max-width: 240px;
  }
  .start-project {
    display: none;
  }
  .start-project-mobile {
    font-family: Montserrat-Bold;
    text-transform: uppercase;
    color: #fff;
    background-color: #f15536;
    padding: 15px 50px;
/*float:right;*/
/*margin-top:20px;*/
    text-decoration: none;
    transition: 0.3s;
    display: block;
    text-align: center;
    text-decoration: none;
  }
  .start-project-mobile:active {
    transition: 0.3s;
    color: #000;
  }
}
@media only screen and (max-width: 450px) {
  /*header nav ul li {
    font-size: 16px;
  }*/
  nav ul {
    padding-left: 5px;
  }
  .gun {
    margin-top: 25px;
  }
  header .start-project {
    font-size: 16px;
    float: left;
    margin-left: 25px;
  }
  .projects .projectsWrapper {
    justify-content: center;
  }
  .projects .projectsWrapper .projectItem {
    flex-direction: column;
  }
  .projects .projectItem .projectContentWrapper .projectTitle {
    text-align: center;
    margin-top: 10px;
  }
  .allProjects {
    width: 280px;
  }
  .allProjects .bulletsBg {
    transform: none;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .allProjects .bulletsBg .btnAllProjects {
    position:relative;
    transform: none;
    top: 0;
    left: 0;
  }

  .pr-projects .pr-projectImgWrapper {
    display: flex;
    justify-content: center;
  }
  .pr-projects .projectsWrapper {
    justify-content: center;
  }
  .pr-projects .projectsWrapper .projectItem {
    flex-direction: column;
  }
  .pr-projects .projectItem .projectContentWrapper .projectTitle {
    text-align: center;
    margin: 7px 0;
  }
  .pr-projects .projectItem .projectContentWrapper {
    max-width: 100%;
  }
  .top-projects header nav ul li {
    font-size: 20px;
  }
  .top-projects nav ul {
    padding-top:35px;
    padding-left: 5px;
  }
}
/*footer {
    font-size:12px;
  }*/
@media only screen and (max-width: 375px) {
  header .start-project {
    font-size: 13px;
    padding: 7px 20px;
    margin-left: 15px;
  }
  header nav ul li {
    font-size: 13px;
    margin-left: 10px;
  }
  h1 {
    font-size: 30px;
  }
  .marketology .qaBlock .qaTitle {
    font-size: 42px;
  }
  .marketology .marketologyWrapper {
    margin-bottom: 0;
  }
  .marketology .qaBlock .qaImgWrapper .qaQuote {
    font-size: 16px;
  }
  .marketology .qaBlock {
    transform: scale(0.8);
  }
  .top-projects header .start-project {
    font-size: 13px;
    padding: 7px 20px;
    margin-left: 15px;
  }
  .top-projects header nav ul li {
    font-size: 13px;
    margin-left: 10px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9mb250cy5zdHlsIiwiX25vcm1hbGl6ZS5zdHlsIiwibWFpbi5zdHlsIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsYUFBYSxxQkFBYjtFQUNBLEtBQTBDLHVDQUExQztFQUNBLGFBQWEsT0FBYjtFQUNBLFlBQVksT0FBWjs7QUFHRjtFQUNFLGFBQWEsa0JBQWI7RUFDQSxLQUF1QyxvQ0FBdkM7RUFDQSxhQUFhLE9BQWI7RUFDQSxZQUFZLE9BQVo7O0FBR0Y7RUFDRSxhQUFhLHVCQUFiO0VBQ0EsS0FBNEMseUNBQTVDO0VBQ0EsYUFBYSxPQUFiO0VBQ0EsWUFBWSxPQUFaOztBQUdGO0VBQ0UsYUFBYSxtQkFBYjtFQUNBLEtBQXdDLHFDQUF4QztFQUNBLGFBQWEsT0FBYjtFQUNBLFlBQVksT0FBWjs7QUFHRjtFQUNFLGFBQWEsd0JBQWI7RUFDQSxLQUE2QywwQ0FBN0M7RUFDQSxhQUFhLE9BQWI7RUFDQSxZQUFZLE9BQVo7O0FBR0Y7RUFDRSxhQUFhLGtCQUFiO0VBQ0EsS0FBc0MsbUNBQXRDO0VBQ0EsYUFBYSxPQUFiO0VBQ0EsWUFBWSxPQUFaOztBQ3ZDRjtBQVlBO0VBQ0UsYUFBYSxXQUFiO0FBQXlCO0VBQ3pCLGFBQWEsS0FBYjtBQUFtQjtFQUNuQixzQkFBc0IsS0FBdEI7QUFBNEI7RUFDNUIsMEJBQTBCLEtBQTFCO0FBQWdDOztBQVVsQztFQUNFLFFBQVEsRUFBUjs7QUFPRjtBQUFRO0FBQ087QUFDUTtBQUNRO0FBQ0s7RUFFbEMsU0FBUyxNQUFUOztBQVFGO0VBQ0UsV0FBVyxJQUFYO0VBQ0EsUUFBUSxTQUFSOztBQVdGO0FBQVc7QUFDUTtBQUNRO0VBQ3pCLFNBQVMsTUFBVDs7QUFPRjtFQUNFLFFBQVEsU0FBUjs7QUFRRjtFQUNFLFlBQVksWUFBWjtBQUF5QjtFQUN6QixRQUFRLEVBQVI7QUFBVztFQUNYLFVBQVUsUUFBVjtBQUFtQjs7QUFRckI7RUFDRSxhQUFzQixxQkFBdEI7QUFBbUM7RUFDbkMsV0FBVyxJQUFYO0FBQWdCOztBQVdsQjtFQUNFLGtCQUFrQixZQUFsQjtBQUErQjtFQUMvQiw4QkFBOEIsUUFBOUI7QUFBdUM7O0FBUXpDO0FBQVM7RUFFUCxlQUFlLEVBQWY7O0FBUUY7RUFDRSxlQUFlLEtBQWY7QUFBcUI7RUFDckIsaUJBQWlCLFVBQWpCO0FBQTRCO0VBQzVCLGlCQUFpQixpQkFBakI7QUFBbUM7O0FBT3JDO0FBQUU7RUFFQSxhQUFhLFFBQWI7O0FBT0Y7QUFBRTtFQUVBLGFBQWEsT0FBYjs7QUFRRjtBQUFLO0FBQ0s7RUFFUixhQUFzQixxQkFBdEI7QUFBbUM7RUFDbkMsV0FBVyxJQUFYO0FBQWdCOztBQU9sQjtFQUNFLFlBQVksT0FBWjs7QUFPRjtFQUNFLGtCQUFrQixLQUFsQjtFQUNBLE9BQU8sS0FBUDs7QUFPRjtFQUNFLFdBQVcsSUFBWDs7QUFRRjtBQUFJO0VBRUYsV0FBVyxJQUFYO0VBQ0EsYUFBYSxFQUFiO0VBQ0EsVUFBVSxTQUFWO0VBQ0EsZ0JBQWdCLFNBQWhCOztBQUdGO0VBQ0UsUUFBUSxRQUFSOztBQUdGO0VBQ0UsS0FBSyxPQUFMOztBQVVGO0FBQU07RUFFSixTQUFTLGFBQVQ7O0FBT0Y7RUFDRSxTQUFTLEtBQVQ7RUFDQSxRQUFRLEVBQVI7O0FBT0Y7RUFDRSxjQUFjLEtBQWQ7O0FBT0Y7RUFDRSxVQUFVLE9BQVY7O0FBV0Y7QUFBTztBQUNPO0FBQ1U7QUFDUTtFQUU5QixhQUFhLFdBQWI7QUFBeUI7RUFDekIsV0FBVyxLQUFYO0FBQWlCO0VBQ2pCLGFBQWEsS0FBYjtBQUFtQjtFQUNuQixRQUFRLEVBQVI7QUFBVzs7QUFRYjtBQUFPO0FBQ1M7RUFDZCxVQUFVLFFBQVY7O0FBUUY7QUFBTztBQUNVO0VBQ2YsZ0JBQWdCLEtBQWhCOztBQVNGO0FBQU87QUFDc0I7QUFDZ0I7RUFFM0Msb0JBQW9CLE9BQXBCO0FBQTRCOztBQU85QjtBQUF5QjtBQUNtQztBQUNrQztFQUU1RixjQUFjLEtBQWQ7RUFDQSxTQUFTLEVBQVQ7O0FBT0Y7QUFBc0I7QUFDZ0M7QUFDK0I7RUFFbkYsU0FBUyxzQkFBVDs7QUFPRjtFQUNFLFFBQVEsa0JBQVI7RUFDQSxRQUFRLE1BQVI7RUFDQSxTQUFTLHNCQUFUOztBQVVGO0VBQ0UsWUFBWSxXQUFaO0FBQXdCO0VBQ3hCLE9BQU8sUUFBUDtBQUFnQjtFQUNoQixTQUFTLE1BQVQ7QUFBZ0I7RUFDaEIsV0FBVyxLQUFYO0FBQWlCO0VBQ2pCLFNBQVMsRUFBVDtBQUFZO0VBQ1osYUFBYSxPQUFiO0FBQXFCOztBQVF2QjtFQUNFLFNBQVMsYUFBVDtBQUF1QjtFQUN2QixnQkFBZ0IsU0FBaEI7QUFBMEI7O0FBTzVCO0VBQ0UsVUFBVSxLQUFWOztBQVFGO0FBQWtCO0VBRWhCLFlBQVksV0FBWjtBQUF3QjtFQUN4QixTQUFTLEVBQVQ7QUFBWTs7QUFPZDtBQUEyQztFQUV6QyxRQUFRLEtBQVI7O0FBUUY7RUFDRSxvQkFBb0IsVUFBcEI7QUFBK0I7RUFDL0IsZ0JBQWdCLEtBQWhCO0FBQXNCOztBQU94QjtBQUE4QztFQUU1QyxvQkFBb0IsS0FBcEI7O0FBUUY7RUFDRSxvQkFBb0IsT0FBcEI7QUFBNEI7RUFDNUIsTUFBTSxRQUFOO0FBQWU7O0FBV2pCO0FBQVE7RUFFTixTQUFTLE1BQVQ7O0FBT0Y7RUFDRSxTQUFTLFVBQVQ7O0FBVUY7RUFDRSxTQUFTLGFBQVQ7O0FBT0Y7RUFDRSxTQUFTLEtBQVQ7O0FBVUY7RUFDRSxTQUFTLEtBQVQ7O0FDeGNGO0VBQ0UsaUJBQWdCLEtBQWhCOztBQUdGO0VBQ0UsaUJBQWdCLEtBQWhCOztBQUdGO0VBQ0UsT0FBTSxLQUFOO0VBQ0EsaUJBQWdCLEtBQWhCOztBQUdGO0VBQ0UsT0FBTSxLQUFOO0VBQ0EsaUJBQWdCLEtBQWhCOztBQUlGO0VBQ0UsVUFBVSxTQUFWO0VBQ0EsS0FBSyxLQUFMO0VBQ0EsT0FBTyxLQUFQO0VBQ0EsT0FBTyxLQUFQO0VBQ0EsUUFBUSxLQUFSO0VBQ0EsU0FBUyxLQUFUO0VBQ0EsUUFBUSxRQUFSO0VBQ0EsWUFBWSxvQkFBWjs7QUFHRjtBQUFjO0VBQWtCLFNBQVEsRUFBUjs7QUFFaEM7RUFDRSxTQUFTLE1BQVQ7RUFDQSxPQUFPLEtBQVA7RUFDQSxPQUFPLEtBQVA7RUFDQSxRQUFRLElBQVI7RUFDQSxPQUFPLEtBQVA7RUFDQSxlQUFlLEtBQWY7RUFDQSxrQkFBa0IsUUFBbEI7RUFDQSxVQUFVLFNBQVY7RUFDQSxPQUFPLElBQVA7RUFDQSxLQUFLLElBQUw7RUFDQSxVQUFVLE9BQVY7RUFDQSxZQUFZLGNBQVo7O0FBR0Y7RUFDRSxZQUFZLEtBQVo7RUFDQSxTQUFTLEVBQVQ7O0FBR0Y7RUFBMEIsWUFBWSxLQUFaOztBQUUxQjtFQUEwQixZQUFZLEtBQVo7O0FBRTFCO0VBQ0UsWUFBWSxnREFBWjtFQUNBLFFBQVEsRUFBUjtFQUNBLE9BQU8sRUFBUDtFQUNBLE9BQU8sRUFBUDtFQUNBLEtBQUssRUFBTDtFQUNBLFVBQVUsU0FBVjtFQUNBLGtCQUFzQyxtQkFBdEM7RUFDQSxlQUFlLElBQWY7RUFDQSxTQUFTLEdBQVQ7RUFDQSxVQUFVLE9BQVY7O0FBR0Y7RUFDRSxTQUFTLE1BQVQ7RUFDQSxPQUFPLE1BQVA7RUFDQSxPQUFPLEtBQVA7RUFDQSxRQUFRLEtBQVI7RUFDQSxjQUFjLE9BQWQ7RUFDQSxZQUFZLGdEQUFaOztBQUdGO0VBQTJCLFlBQVksTUFBWjs7QUFFM0I7RUFBNEIsMEJBQTBCLE1BQTFCOztBQUU1QjtFQUE0QiwwQkFBMEIsS0FBMUI7O0FBRTVCO0VBQTRCLDBCQUEwQixNQUExQjs7QUFFNUI7RUFBNEIsMEJBQTBCLEtBQTFCOztBQUU1QjtFQUE0QiwwQkFBMEIsTUFBMUI7O0FBRTVCO0VBS0UsT0FBTyxLQUFQO0VBQ0EsV0FBVyxLQUFYO0VBQ0EsT0FBTyxLQUFQO0VBQ0EsU0FBUyxNQUFUO0VBQ0EsT0FBTyxLQUFQO0VBQ0EsYUFBYSxLQUFiOztBQVJBO0VBQ0UsWUFBVyxLQUFYOztBQVdKO0VBQ0UsU0FBUyxFQUFUO0VBQ0EsUUFBUSxNQUFSO0VBQ0EsT0FBTyxNQUFQOztBQUdGO0VBQThCLFVBQVUsUUFBVjs7QUFFOUI7QUFBNEI7RUFFMUIsU0FBUyxJQUFUO0VBQ0EsV0FBdUIsY0FBdkI7O0FBR0Y7RUFBOEIsV0FBdUIsZ0RBQXZCOztBQUU5QjtFQUNFLFFBQVEsTUFBUjtFQUNBLE9BQU8sTUFBUDtFQUNBLE9BQU8sT0FBUDtFQUNBLEtBQUssT0FBTDtFQUNBLGVBQWUsSUFBZjtFQUNBLGtCQUF1QyxvQkFBdkM7O0FBR0Y7RUFBOEIsV0FBd0Isa0RBQXhCOztBQUU5QjtFQUFlLGNBQWMsTUFBZDs7QUFHZjtBQUVBO0VBQ0UsWUFBWSxPQUFaOztBQUdGO0VBQ0UsWUFBVyxPQUFYOztBQUdGO0VBQ0UsYUFBYSxtQkFBYjs7QUFHRjtFQUNFLFFBQU8sRUFBUDs7QUFHRjtFQUNFLFlBQXdDLHlDQUF4QztFQUNBLGlCQUFnQixNQUFoQjtFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sTUFBUDtFQUNBLFVBQVMsU0FBVDs7QUFHRjtFQUNFLGFBQWEsZ0JBQWI7RUFDQSxXQUFXLEtBQVg7RUFDQSxPQUFPLEtBQVA7RUFDQSxRQUFPLE1BQVA7RUFDQSxhQUFZLEtBQVo7O0FBRUE7RUFDRSxPQUFNLEtBQU47O0FBRUY7RUFDRSxhQUFZLEtBQVo7RUFDQSxPQUFPLEtBQVA7O0FBRUU7RUFFRSxhQUFZLEtBQVo7RUFDQSxTQUFTLGFBQVQ7RUFDQSxZQUFZLEtBQVo7RUFDQSxRQUFPLFFBQVA7O0FBRUE7RUFDRSxPQUFNLEtBQU47RUFDQSxpQkFBZ0IsS0FBaEI7O0FBR0Y7RUFDRSxPQUFNLFFBQU47RUFDQSxpQkFBZ0IsS0FBaEI7O0FBR0o7RUFDRSxPQUFNLFFBQU47O0FBSU47RUFDRSxnQkFBZ0IsVUFBaEI7RUFDQSxPQUFNLEtBQU47RUFDQSxrQkFBaUIsUUFBakI7RUFDQSxTQUFRLFVBQVI7RUFDQSxPQUFNLE1BQU47RUFDQSxZQUFXLEtBQVg7RUFDQSxpQkFBaUIsS0FBakI7RUFDQSxZQUFZLEtBQVo7O0FBSUY7RUFDRSxZQUFXLEtBQVg7RUFDQSxPQUFNLEtBQU47O0FBSUY7RUFDRSxTQUFRLEtBQVI7O0FBR0Y7RUFDRSxhQUFhLHNCQUFiO0VBQ0EsV0FBVSxLQUFWO0VBQ0EsYUFBWSxJQUFaO0VBQ0EsT0FBTSxRQUFOO0VBQ0EsV0FBVSxNQUFWO0VBQ0EsU0FBUSxhQUFSO0VBQ0EsUUFBTyxFQUFQOztBQUlGO0VBQ0UsZUFBYyxLQUFkO0VBQ0EsYUFBWSxNQUFaO0VBQ0EsU0FBUSxhQUFSOztBQUdGO0VBQ0UsYUFBNkIsOEJBQTdCO0VBQ0EsV0FBVSxLQUFWO0VBQ0EsV0FBVSxNQUFWO0VBQ0EsU0FBUSxhQUFSO0VBQ0EsT0FBTSxLQUFOO0VBQ0EsYUFBWSxJQUFaO0VBQ0EsT0FBTSxNQUFOO0VBQ0EsWUFBVyxLQUFYOztBQUdGO0VBQ0UsT0FBTSxLQUFOO0VBQ0EsUUFBTyxLQUFQOztBQUdGO0VBQ0UsT0FBTSxNQUFOO0VBQ0EsWUFBVyxPQUFYO0VBQ0EsV0FBVSxNQUFWOztBQUdGO0VBQ0UsV0FBVSxLQUFWO0VBQ0EsT0FBTSxRQUFOOztBQUdGO0VBQ0UsYUFBdUIsd0JBQXZCO0VBQ0EsV0FBVSxLQUFWO0VBQ0EsT0FBTSxLQUFOO0VBQ0EsU0FBUSxhQUFSOztBQUdGO0VBQ0UsU0FBUSxNQUFSO0VBQ0EsT0FBTSxRQUFOOztBQUdGO0VBQ0UsU0FBUSxHQUFSO0VBQ0EsU0FBUSxLQUFSOztBQUdKO0VBQ0UsWUFBaUMsa0NBQWpDO0VBQ0EsT0FBTSxLQUFOO0VBQ0EsUUFBTyxLQUFQOztBQUdGO0VBQ0UsWUFBc0MsdUNBQXRDO0VBQ0EsT0FBTSxLQUFOO0VBQ0EsUUFBTyxLQUFQOztBQUdGO0VBQ0UsZUFBYyxNQUFkOztBQUtBOztFQUNFLFNBQVEsS0FBUjtFQUNBLGlCQUFnQixhQUFoQjtFQUNBLFdBQVUsS0FBVjs7QUFHRjs7RUFDRSxRQUFPLFFBQVA7O0FBRUE7O0VBQ0UsUUFBb0IsY0FBcEI7RUFDQSxZQUFXLEtBQVg7O0FBR0Y7O0VBQ0UsT0FBTSxRQUFOO0VBQ0EsWUFBWSxLQUFaOztBQUlKOztFQUNFLE9BQU0sTUFBTjtFQUNBLFNBQVEsS0FBUjtFQUNBLFlBQVcsTUFBWDs7QUFFQTs7RUFDRSxTQUFRLGFBQVI7QUFPQTs7OztBQUxBOztFQUNFLFFBQXNCLGdCQUF0QjtFQUNBLFlBQVcsS0FBWDs7QUFTSjs7RUFDRSxTQUFRLGFBQVI7RUFDQSxhQUFZLEtBQVo7O0FBRUE7O0VBQ0UsYUFBWSxnQkFBWjtFQUNBLFdBQVUsS0FBVjtFQUNBLE9BQU0sS0FBTjs7QUFHRjs7RUFDRSxhQUFZLGlCQUFaO0VBQ0EsV0FBVSxLQUFWOztBQUdGOztFQUNFLFNBQVEsS0FBUjtFQUNBLGlCQUFpQixhQUFqQjtFQUNBLFlBQVcsS0FBWDs7QUFHRjtBQUFpQjtBQUFrQjtBQUFhOzs7OztFQUU5QyxTQUFRLEtBQVI7RUFDQSxNQUFLLEtBQUw7RUFDQSxhQUFhLE9BQWI7RUFDQSxnQkFBZSxPQUFmOztBQUVBOzs7Ozs7OztFQUNFLGFBQVksbUJBQVo7RUFDQSxXQUFVLEtBQVY7RUFDQSxPQUFNLFFBQU47O0FBR0Y7Ozs7Ozs7O0VBQ0UsYUFBWSxtQkFBWjtFQUNBLFdBQVUsS0FBVjs7QUFJSjs7RUFDRSxZQUFXLEtBQVg7O0FBR0Y7O0VBRUUsVUFBUyxTQUFUOztBQUVBOztFQUNFLGFBQTJCLDRCQUEzQjtFQUNBLFdBQVUsS0FBVjtFQUNBLFVBQVMsU0FBVDtFQUNBLFdBQXdCLGdCQUF4QjtFQUNBLE1BQUssSUFBTDs7QUFLSjs7RUFDRSxjQUFhLElBQWI7RUFDQSxjQUFhLE9BQWI7RUFDQSxjQUFhLFFBQWI7O0FBR0Y7O0VBQ0UsU0FBUSxLQUFSO0VBQ0EsWUFBVyxLQUFYOztBQUdGOztFQUNFLFlBQVcsS0FBWDtFQUNBLFdBQVUsS0FBVjtFQUNBLFdBQVUsS0FBVjs7QUFFQTs7RUFDRSxTQUFRLFFBQVI7O0FBT1Y7RUFDRSxTQUFRLEtBQVI7O0FBRUE7RUFDRSxRQUFPLE9BQVA7RUFDQSxZQUFzQyw4Q0FBdEM7RUFDQSxPQUFNLE1BQU47RUFDQSxRQUFPLE1BQVA7RUFDQSxVQUFTLFNBQVQ7RUFDQSxXQUErQixzQkFBL0I7RUFDQSxNQUFNLElBQU47RUFDQSxLQUFLLElBQUw7O0FBRUE7QUFDRTtBQUNBO0VBQ0EsT0FBTSxNQUFOO0VBQ0EsUUFBTyxLQUFQO0VBQ0EsU0FBUSxPQUFSO0VBQ0Esa0JBQWlCLFFBQWpCO0VBQ0EsT0FBTSxLQUFOO0VBQ0EsZ0JBQWdCLFVBQWhCO0VBQ0EsWUFBVyxPQUFYO0VBQ0EsaUJBQWlCLEtBQWpCO0VBQ0EsYUFBWSxnQkFBWjtFQUNBLFdBQVUsS0FBVjtFQUNBLFVBQVMsU0FBVDtFQUNBLFdBQThCLHNCQUE5QjtFQUNBLE1BQUssSUFBTDtFQUNBLEtBQUksSUFBSjtFQUNBLFlBQVcsS0FBWDs7QUFFRjtFQUNFLE9BQU0sS0FBTjtFQUNBLFlBQVcsS0FBWDs7QUFZSjtFQUNFLFNBQVEsS0FBUjtFQUNBLGdCQUFlLElBQWY7RUFDQSxpQkFBaUIsYUFBakI7RUFDQSxZQUFXLEtBQVg7RUFDQSxlQUFjLEtBQWQ7RUFDQSxXQUFVLEtBQVY7O0FBSUY7RUFDRSxTQUFRLEtBQVI7RUFDQSxnQkFBZSxPQUFmO0VBQ0EsY0FBYSxJQUFiO0VBQ0EsY0FBYSxPQUFiO0VBQ0EsY0FBYSxRQUFiO0VBQ0EsUUFBTyxLQUFQOztBQUdGO0VBQ0UsV0FBVSxNQUFWO0VBQ0EsU0FBUSxhQUFSOztBQUVBO0VBQ0UsYUFBWSxnQkFBWjtFQUNBLFdBQVUsS0FBVjtFQUNBLGVBQWMsS0FBZDs7QUFHRjtFQUNFLGFBQWEsbUJBQWI7RUFDQSxXQUFVLEtBQVY7O0FBR0Y7RUFDRSxhQUFZLGlCQUFaO0VBQ0EsT0FBTSxRQUFOO0VBQ0EsYUFBWSxJQUFaO0VBQ0EsWUFBVyxJQUFYOztBQUdGO0VBQ0UsUUFBTyxNQUFQO0VBQ0EsT0FBTSxNQUFOO0VBQ0EsUUFBTyxrQkFBUDtFQUNBLGVBQWMsTUFBZDtFQUNBLFNBQVEsSUFBUjtFQUNBLFlBQVcsS0FBWDtFQUNBLFFBQU8saUJBQVA7O0FBR0Y7RUFDRSxRQUFPLE1BQVA7RUFDQSxPQUFNLE1BQU47RUFDQSxlQUFjLE1BQWQ7RUFDQSxVQUFTLE9BQVQ7O0FBTUo7RUFDRSxXQUFVLE1BQVY7RUFDQSxTQUFRLGFBQVI7RUFDQSxVQUFTLFNBQVQ7RUFDQSxZQUFXLEtBQVg7O0FBRUE7RUFDRSxhQUFZLGdCQUFaO0VBQ0EsV0FBVSxLQUFWO0VBQ0EsZUFBYyxLQUFkOztBQUdGO0VBQ0UsU0FBUSxNQUFSO0VBQ0EsWUFBa0Msa0NBQWxDO0VBQ0EsT0FBTSxNQUFOO0VBQ0EsUUFBTyxNQUFQO0VBQ0EsU0FBUSxxQkFBUjs7QUFFQTtFQUNFLGFBQWEsaUJBQWI7RUFDQSxXQUFVLEtBQVY7O0FBS0o7RUFDSSxPQUFNLE1BQU47RUFDQSxRQUFPLE1BQVA7RUFDQSxVQUFTLE9BQVQ7RUFDQSxRQUFPLGVBQVA7RUFDQSxlQUFjLE1BQWQ7RUFDQSxVQUFTLFNBQVQ7RUFDQSxLQUFJLE1BQUo7RUFDQSxNQUFNLEtBQU47O0FBR0o7RUFDRSxhQUFZLGdCQUFaO0VBQ0EsV0FBVSxLQUFWO0VBQ0EsWUFBVyxLQUFYO0VBQ0EsWUFBMkMsNENBQTNDO0VBQ0EsT0FBTSxNQUFOO0VBQ0EsUUFBTyxLQUFQO0VBQ0EsWUFBVyxPQUFYO0VBQ0EsU0FBUSxPQUFSO0VBQ0EsT0FBTSxNQUFOOztBQUVBO0VBQ0UsT0FBTSxLQUFOO0VBQ0EsWUFBVyxLQUFYO0VBQ0EsZ0JBQWUsVUFBZjs7QUFLRjtFQUNFLGlCQUFnQixLQUFoQjtFQUNBLE9BQU0sS0FBTjtFQUNBLFlBQVcsS0FBWDs7QUFNUjtFQUNFLGFBQVksaUJBQVo7RUFDQSxXQUFVLEtBQVY7RUFDQSxZQUF3Qyx5Q0FBeEM7RUFDQSxpQkFBZ0IsTUFBaEI7RUFDQSxPQUFNLEtBQU47RUFDQSxRQUFPLE1BQVA7O0FBRUE7RUFDRSxZQUFXLEtBQVg7RUFDQSxTQUFRLEtBQVI7RUFDQSxnQkFBZSxJQUFmO0VBQ0EsYUFBWSxPQUFaOztBQUVBO0VBQ0UsU0FBUSxhQUFSOztBQUlKO0VBQ0UsU0FBUSxhQUFSO0VBQ0EsYUFBWSxLQUFaO0VBQ0EsT0FBTSxLQUFOOztBQUdGO0VBQ0UsT0FBTSxRQUFOO0VBQ0EsaUJBQWdCLHFCQUFoQjs7QUFLRTtFQUNFLFNBQVEsYUFBUjtFQUNBLGFBQVksS0FBWjs7QUFHRjtFQUNFLFlBQThCLCtCQUE5QjtFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFJRjtFQUNFLFlBQW9DLHFDQUFwQztFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFHRjtFQUNFLFlBQThCLCtCQUE5QjtFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFHRjtFQUNFLFlBQW9DLHFDQUFwQztFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFHRjtFQUNFLFlBQThCLCtCQUE5QjtFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFHRjtFQUNFLFlBQW9DLHFDQUFwQztFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFHRjtFQUNFLFlBQThCLCtCQUE5QjtFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFHRjtFQUNFLFlBQW9DLHFDQUFwQztFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFHRjtFQUNFLFlBQThCLCtCQUE5QjtFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFHRjtFQUNFLFlBQW9DLHFDQUFwQztFQUNBLE9BQU0sS0FBTjtFQUNBLFFBQU8sS0FBUDtFQUNBLFNBQVEsYUFBUjs7QUFVTjtFQUNFLFFBQU8sTUFBUDs7QUFHRjtFQUNFLFlBQVcsS0FBWDs7QUFHRjtFQUNFLE9BQU0sS0FBTjs7QUFHRjtFQUNFLGFBQVksbUJBQVo7RUFDQSxXQUFVLEtBQVY7RUFDQSxPQUFNLFFBQU47RUFDQSxPQUFNLElBQU47RUFDQSxTQUFRLGFBQVI7RUFDQSxZQUFXLE9BQVg7O0FBR0Y7RUFDRSxPQUFNLEtBQU47RUFDQSxZQUFXLG1CQUFYO0VBQ0EsUUFBTyxNQUFQOztBQUdGO0VBQ0UsYUFBWSxtQkFBWjtFQUNBLFdBQVUsS0FBVjtFQUNBLE9BQU0sUUFBTjtFQUNBLE9BQU0sSUFBTjtFQUNBLFNBQVEsYUFBUjtFQUNBLFlBQVcsT0FBWDtFQUNBLGdCQUFlLE9BQWY7O0FBR29DO0FBRXBDO0lBQ0UsWUFBVyxLQUFYO0lBQ0EsV0FBK0Isc0JBQS9CO0lBQ0EsTUFBTSxJQUFOO0lBQ0EsS0FBSyxJQUFMOztBQUtKO0lBQ0EsWUFBWSxNQUFaOztBQUdBO0lBQ0UsWUFBVyxFQUFYOztBQUtBO0lBQ0UsYUFBWSxLQUFaO0lBQ0EsV0FBVSxLQUFWOztBQUVGO0lBQ0UsU0FBUSxVQUFSOztBQUdGO0lBQ0UsT0FBTSxLQUFOOztBQUdGO0lBQ0UsYUFBWSxFQUFaOztBQUdGO0lBQ0UsWUFBVyxLQUFYOztBQVVOO0lBQ0UsWUFBVyxLQUFYOztBQUdGO0lBQ0UsU0FBUSxLQUFSOztBQUdGO0lBQ0UsWUFBVyxLQUFYOztBQUNBO0lBQ0UsU0FBUSxLQUFSOztBQUdGO0lBQ0UsT0FBTSxNQUFOO0lBQ0EsUUFBTyxNQUFQOztBQUdGO0lBQ0UsT0FBTSxNQUFOO0lBQ0EsUUFBTyxNQUFQOzs7QUFTb0M7QUFDdEM7SUFDRSxpQkFBZ0IsT0FBaEI7SUFDQSxPQUFNLEtBQU47O0FBR0Y7SUFDRSxXQUFVLE1BQVY7O0FBR0Y7SUFDRSxhQUFhLE9BQWI7SUFDQSxRQUFPLFVBQVA7SUFDQSxpQkFBZ0IsT0FBaEI7O0FBR0Y7SUFDRSxRQUFPLGlCQUFQOztBQUdGO0lBQ0UsT0FBTSxNQUFOO0lBQ0EsV0FBVSxLQUFWOztBQUdGO0lBQ0UsWUFBWSxLQUFaOztBQUdGO0lBQ0UsWUFBVyxNQUFYOztBQUdGO0lBQ0UsUUFBTyxPQUFQOztBQUdGO0lBQ0UsUUFBTyxpQkFBUDs7O0FBSW9DO0FBRXhDO0lBRUUsaUJBQWlCLE9BQWpCO0lBQ0EsZ0JBQWdCLE9BQWhCOztBQUVBO0lBQ0UsU0FBUSxLQUFSOztBQUdGO0lBQ0UsWUFBVyxLQUFYOztBQUlGO0lBQ0UsWUFBVyxLQUFYOztBQUdGO0lBQ0UsT0FBTSxNQUFOOztBQUdGO0lBQ0UsWUFBVyxPQUFYOztBQUdGO0lBQ0UsWUFBVyxLQUFYOztBQUdGO0lBQ0UsWUFBVyxJQUFYOzs7QUFJb0M7QUFFdEM7SUFDRSxRQUFPLEtBQVA7SUFDQSxnQkFBZSxLQUFmOztBQUdGO0lBQ0UsWUFBVyxLQUFYOztBQUdGO0lBQ0UsU0FBUSxNQUFSOztBQUdGO0lBQ0UsU0FBUSxLQUFSOztBQUdGO0lBQ0UsYUFBWSxLQUFaO0lBQ0EsV0FBVSxLQUFWOztBQUVGO0lBQ0UsU0FBUSxVQUFSO0lBQ0EsT0FBTSxLQUFOO0lBQ0EsYUFBWSxLQUFaOztBQUdGO0lBQ0UsT0FBTSxLQUFOOztBQUdGO0lBQ0UsYUFBWSxFQUFaOztBQUdGO0lBQ0UsWUFBVyxLQUFYOztBQUdGO0lBQ0UsWUFBVyxLQUFYOztBQUdGO0lBQ0UsWUFBVyxFQUFYO0lBQ0EsV0FBVSxLQUFWOztBQUdGO0lBQ0UsV0FBVSxNQUFWOztBQUdGO0lBQ0UsU0FBUSxLQUFSOztBQUdGO0lBQ0UsYUFBYSxnQkFBYjtJQUNBLGdCQUFnQixVQUFoQjtJQUNBLE9BQU0sS0FBTjtJQUNBLGtCQUFpQixRQUFqQjtJQUNBLFNBQVEsVUFBUjtBQUNBO0FBQ0E7SUFDQSxpQkFBaUIsS0FBakI7SUFDQSxZQUFZLEtBQVo7SUFDQSxTQUFRLE1BQVI7SUFDQSxZQUFXLE9BQVg7SUFDQSxpQkFBZ0IsS0FBaEI7O0FBR0Y7SUFDRSxZQUFXLEtBQVg7SUFDQSxPQUFNLEtBQU47OztBQUlvQztBQUV0QztJQUNFLFdBQVUsS0FBVjs7QUFFSDtJQUNFLGNBQWEsSUFBYjs7QUFHRjtJQUNFLFlBQVcsS0FBWDs7QUFHRDtJQUNFLFdBQVcsS0FBWDtJQUNBLE9BQU8sS0FBUDtJQUNBLGFBQWEsS0FBYjs7QUFHRjtJQUNFLGlCQUFpQixPQUFqQjs7QUFHRjtJQUNFLGdCQUFlLE9BQWY7O0FBR0Y7SUFDRSxZQUFXLE9BQVg7SUFDQSxZQUFXLEtBQVg7O0FBR0Y7SUFFRSxPQUFPLE1BQVA7O0FBRUE7SUFDRSxXQUFXLEtBQVg7SUFDQSxNQUFNLEVBQU47SUFDQSxLQUFLLEVBQUw7O0FBTUY7SUFDRSxTQUFRLEtBQVI7SUFDQSxpQkFBa0IsT0FBbEI7O0FBR0Y7SUFDRSxpQkFBaUIsT0FBakI7O0FBR0Y7SUFDRSxnQkFBZSxPQUFmOztBQUdGO0lBQ0UsWUFBVyxPQUFYO0lBQ0EsUUFBTyxNQUFQOztBQUdGO0lBQ0UsV0FBVSxLQUFWOztBQUdGO0lBQ0UsTUFBSyxJQUFMOzs7QUFPSjtFQUNDLFdBQVcsS0FBWDs7QUFHRDtFQUNFLGNBQWEsSUFBYjs7QUFLRjs7O0FBTXNDO0FBQ3ZDO0lBQ0UsV0FBVyxLQUFYO0lBQ0EsU0FBUyxTQUFUO0lBQ0EsYUFBYSxLQUFiOztBQUdEO0lBQ0UsV0FBVyxLQUFYO0lBQ0EsYUFBYSxLQUFiOztBQUdGO0lBQ0UsV0FBVSxLQUFWOztBQUdGO0lBQ0UsV0FBVSxLQUFWOztBQUdGO0lBQ0UsZUFBYyxFQUFkOztBQUdGO0lBQ0UsV0FBVSxLQUFWOztBQUdGO0lBQ0UsV0FBbUIsV0FBbkI7O0FBSUE7SUFDRSxXQUFXLEtBQVg7SUFDQSxTQUFTLFNBQVQ7SUFDQSxhQUFhLEtBQWI7O0FBR0Y7SUFDRSxXQUFXLEtBQVg7SUFDQSxhQUFhLEtBQWIiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQtUmVndWxhcic7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtUmVndWxhci5vdGYnKTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0LUJvbGQnO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0LUJvbGQub3RmJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdC1FeHRyYUJvbGQnO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0LUV4dHJhQm9sZC5vdGYnKTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0LUxpZ2h0JztcclxuICBzcmM6IHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1MaWdodC5vdGYnKTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0LVVsdHJhTGlnaHQnO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0LVVsdHJhTGlnaHQub3RmJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zIExpZ2h0JztcclxuICBzcmM6IHVybCgnLi4vZm9udHMvT3BlblNhbnMtTGlnaHQudHRmJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn0iLCIvKiEgbm9ybWFsaXplLmNzcyB2NS4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXHJcblxyXG4vKipcclxuICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4gKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cclxuICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxyXG4gKi9cclxuXHJcbi8qIERvY3VtZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5odG1sIHtcclxuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXHJcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cclxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cclxufVxyXG5cclxuLyogU2VjdGlvbnNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cclxuICovXHJcblxyXG5ib2R5IHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICovXHJcblxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZm9vdGVyLFxyXG5oZWFkZXIsXHJcbm5hdixcclxuc2VjdGlvbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXHJcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXHJcbiAqL1xyXG5cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIG1hcmdpbjogMC42N2VtIDA7XHJcbn1cclxuXHJcbi8qIEdyb3VwaW5nIGNvbnRlbnRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXHJcbiAqL1xyXG5cclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5tYWluIHsgLyogMSAqL1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxyXG4gKi9cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAxZW0gNDBweDtcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXHJcbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxyXG4gKi9cclxuXHJcbmhyIHtcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xyXG4gIGhlaWdodDogMDsgLyogMSAqL1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxucHJlIHtcclxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cclxuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xyXG59XHJcblxyXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxyXG4gKi9cclxuXHJcbmEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXHJcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXHJcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4gKi9cclxuXHJcbmE6YWN0aXZlLFxyXG5hOmhvdmVyIHtcclxuICBvdXRsaW5lLXdpZHRoOiAwO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxyXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmFiYnJbdGl0bGVdIHtcclxuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXHJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cclxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxyXG4gKi9cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5jb2RlLFxyXG5rYmQsXHJcbnNhbXAge1xyXG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xyXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXHJcbiAqL1xyXG5cclxuZGZuIHtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXHJcbiAqL1xyXG5cclxubWFyayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuXHJcbnNtYWxsIHtcclxuICBmb250LXNpemU6IDgwJTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxyXG4gKiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG5zdXAge1xyXG4gIHRvcDogLTAuNWVtO1xyXG59XHJcblxyXG4vKiBFbWJlZGRlZCBjb250ZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXHJcbiAqL1xyXG5cclxuYXVkaW8sXHJcbnZpZGVvIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxyXG4gKi9cclxuXHJcbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cclxuICovXHJcblxyXG5pbWcge1xyXG4gIGJvcmRlci1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxyXG4gKi9cclxuXHJcbnN2Zzpub3QoOnJvb3QpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBGb3Jtc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXHJcbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cclxuICovXHJcblxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5vcHRncm91cCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cclxuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cclxuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xyXG4gIG1hcmdpbjogMDsgLyogMiAqL1xyXG59XHJcblxyXG4vKipcclxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXHJcbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXHJcbiAqL1xyXG5cclxuYnV0dG9uLFxyXG5pbnB1dCB7IC8qIDEgKi9cclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxyXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXHJcbiAqL1xyXG5cclxuYnV0dG9uLFxyXG5zZWxlY3QgeyAvKiAxICovXHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcclxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxyXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmJ1dHRvbixcclxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xyXG5bdHlwZT1cInJlc2V0XCJdLFxyXG5bdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXHJcbiAqL1xyXG5cclxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxyXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcclxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcclxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xyXG4gIGJvcmRlci1zdHlsZTogbm9uZTtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKipcclxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxyXG4gKi9cclxuXHJcbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcclxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXHJcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXHJcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcclxuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cclxuICovXHJcblxyXG5maWVsZHNldCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcclxuICBtYXJnaW46IDAgMnB4O1xyXG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXHJcbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cclxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxyXG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5sZWdlbmQge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xyXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXHJcbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXHJcbiAgcGFkZGluZzogMDsgLyogMyAqL1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxyXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxyXG4gKi9cclxuXHJcbnByb2dyZXNzIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXHJcbiAqL1xyXG5cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxyXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxyXG4gKi9cclxuXHJcblt0eXBlPVwiY2hlY2tib3hcIl0sXHJcblt0eXBlPVwicmFkaW9cIl0ge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICBwYWRkaW5nOiAwOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXHJcbiAqL1xyXG5cclxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cclxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXHJcbiAqL1xyXG5cclxuW3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXHJcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXHJcbiAqL1xyXG5cclxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXHJcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxyXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXHJcbiAqL1xyXG5cclxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cclxuICBmb250OiBpbmhlcml0OyAvKiAyICovXHJcbn1cclxuXHJcbi8qIEludGVyYWN0aXZlXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxyXG4gKi9cclxuXHJcbmRldGFpbHMsIC8qIDEgKi9cclxubWVudSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8qXHJcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5zdW1tYXJ5IHtcclxuICBkaXNwbGF5OiBsaXN0LWl0ZW07XHJcbn1cclxuXHJcbi8qIFNjcmlwdGluZ1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxyXG4gKi9cclxuXHJcbmNhbnZhcyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXHJcbiAqL1xyXG5cclxudGVtcGxhdGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEhpZGRlblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cclxuICovXHJcblxyXG5baGlkZGVuXSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufSIsIkBpbXBvcnQgJ19mb250cyc7XHJcbkBpbXBvcnQgJ19ub3JtYWxpemUnO1xyXG5cclxuYSB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcbn1cclxuXHJcbmE6aG92ZXIge1xyXG4gIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG59XHJcblxyXG5hOmFjdGl2ZSB7XHJcbiAgY29sb3I6YmxhY2s7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcbn1cclxuXHJcbmE6Zm9jdXMge1xyXG4gIGNvbG9yOndoaXRlO1xyXG4gIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG59XHJcbi8vL3N0YXJ0IG9mIHRoZSByZXNwb25zaXZlLW1lbnUvLy9cclxuXHJcbi5vcGVuIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MHB4O1xyXG4gIHJpZ2h0OiA0MHB4O1xyXG4gIHdpZHRoOiA1MHB4O1xyXG4gIGhlaWdodDogNTBweDtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xyXG59XHJcblxyXG4ub3Blbjpob3ZlciB7IC8qb3BhY2l0eTogMC44OyovIG9wYWNpdHk6MTsgfVxyXG5cclxuLm9wZW4gc3BhbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgaGVpZ2h0OiA0cHg7XHJcbiAgd2lkdGg6IDQwcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE1NTM2O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogM3B4O1xyXG4gIHRvcDogM3B4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZTtcclxufVxyXG5cclxuLm9wZW4gc3BhbjpudGgtY2hpbGQoMSkge1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgei1pbmRleDogOTtcclxufVxyXG5cclxuLm9wZW4gc3BhbjpudGgtY2hpbGQoMikgeyBtYXJnaW4tdG9wOiAyNXB4OyB9XHJcblxyXG4ub3BlbiBzcGFuOm50aC1jaGlsZCgzKSB7IG1hcmdpbi10b3A6IDQwcHg7IH1cclxuXHJcbi5zdWItbWVudSB7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIHdpZHRoOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMSwgMzEsIDMxLCAwLjkpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICB6LWluZGV4OiAxODtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uc3ViLW1lbnUgbGkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBjbGVhcjogYm90aDtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiAtMTYwcHg7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XHJcbn1cclxuXHJcbi5zdWItbWVudSBsaTpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDE4MHB4OyB9XHJcblxyXG4uc3ViLW1lbnUgbGk6bnRoLWNoaWxkKDEpIHsgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjA1czsgfVxyXG5cclxuLnN1Yi1tZW51IGxpOm50aC1jaGlsZCgyKSB7IC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC4xMHM7IH1cclxuXHJcbi5zdWItbWVudSBsaTpudGgtY2hpbGQoMykgeyAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMTVzOyB9XHJcblxyXG4uc3ViLW1lbnUgbGk6bnRoLWNoaWxkKDQpIHsgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjIwczsgfVxyXG5cclxuLnN1Yi1tZW51IGxpOm50aC1jaGlsZCg1KSB7IC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7IH1cclxuXHJcbi5zdWItbWVudSBsaSBhIHtcclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tdG9wOjIwcHg7XHJcbiAgfVxyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBmb250LXNpemU6IDIycHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbn1cclxuXHJcblxyXG4ub3BwZW5uZWQgLnN1Yi1tZW51IHtcclxuICBvcGFjaXR5OiAxO1xyXG4gIGhlaWdodDogNDAwcHg7XHJcbiAgd2lkdGg6IDQwMHB4O1xyXG59XHJcblxyXG4ub3BwZW5uZWQgc3BhbjpudGgtY2hpbGQoMikgeyBvdmVyZmxvdzogdmlzaWJsZTsgfVxyXG5cclxuLm9wcGVubmVkIHNwYW46bnRoLWNoaWxkKDEpLFxyXG4ub3BwZW5uZWQgc3BhbjpudGgtY2hpbGQoMykge1xyXG4gIHotaW5kZXg6IDEwMDtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbn1cclxuXHJcbi5vcHBlbm5lZCBzcGFuOm50aC1jaGlsZCgxKSB7IHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKDEycHgpIHRyYW5zbGF0ZVgoMTJweCk7IH1cclxuXHJcbi5vcHBlbm5lZCBzcGFuOm50aC1jaGlsZCgyKSB7XHJcbiAgaGVpZ2h0OiA0MDBweDtcclxuICB3aWR0aDogNDAwcHg7XHJcbiAgcmlnaHQ6IC0xNjBweDtcclxuICB0b3A6IC0xNjBweDtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTIsIDI1MiwgMjUyLCAwKTtcclxufVxyXG5cclxuLm9wcGVubmVkIHNwYW46bnRoLWNoaWxkKDMpIHsgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVZKC0xMHB4KSB0cmFuc2xhdGVYKDEwcHgpOyB9XHJcblxyXG4ub3BwZW5uZWQgbGkgeyBtYXJnaW4tcmlnaHQ6IDE2OHB4OyB9XHJcblxyXG5cclxuLyogLS0tLSBlbmQgb2YgdGhlIHJlc3BvbnNpdmUgbWVudSAtLS0qL1xyXG5cclxuaHRtbCB7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICBvdmVyZmxvdy14OmhpZGRlbjtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQtUmVndWxhcjtcclxufVxyXG5cclxuKiB7XHJcbiAgbWFyZ2luOjA7XHJcbn1cclxuXHJcbi50b3AtYmxvY2sge1xyXG4gIGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3RvcC1ibG9jay1iZy5wbmdcIikgbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcclxuICB3aWR0aDoxMDAlO1xyXG4gIGhlaWdodDo1MjNweDtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxufVxyXG5cclxuaGVhZGVyIHtcclxuICBmb250LWZhbWlseTogTW9udHNlcnJhdC1Cb2xkO1xyXG4gIGZvbnQtc2l6ZTogMjBweDtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgaGVpZ2h0OjE1MHB4O1xyXG4gIHBhZGRpbmctdG9wOjMwcHg7XHJcblxyXG4gIC5sb2dvIHtcclxuICAgIGZsb2F0OmxlZnQ7XHJcbiAgfVxyXG4gIG5hdiB7XHJcbiAgICBwYWRkaW5nLXRvcDozNXB4O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB1bCB7XHJcbiAgICAgIGxpIHtcclxuXHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6NDBweDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjp3aGl0ZTtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjojZjE1NTM2O1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGxpOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjojZjE1NTM2O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zdGFydC1wcm9qZWN0IHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjp3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6I2YxNTUzNjtcclxuICAgIHBhZGRpbmc6MTVweCA1MHB4O1xyXG4gICAgZmxvYXQ6cmlnaHQ7XHJcbiAgICBtYXJnaW4tdG9wOjIwcHg7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB0cmFuc2l0aW9uOiAuM3NcclxuICB9XHJcblxyXG5cclxuICAuc3RhcnQtcHJvamVjdDpob3ZlciB7XHJcbiAgICB0cmFuc2l0aW9uOi4zcztcclxuICAgIGNvbG9yOmJsYWNrO1xyXG4gIH1cclxufVxyXG5cclxuICAuc3RhcnQtcHJvamVjdC1tb2JpbGUge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQtVWx0cmFMaWdodDtcclxuICAgIGZvbnQtc2l6ZTozNnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6MTAwO1xyXG4gICAgY29sb3I6I2YxNTUzNjtcclxuICAgIG1heC13aWR0aDozNDVweDtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luOjA7XHJcblxyXG4gIH1cclxuXHJcbiAgLmJ1bGxldCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjUwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDoxMDBweDtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLmRlc2NyaXB0aW9uIHtcclxuICAgIGZvbnQtZmFtaWx5IFwiT3BlbiBTYW5zIExpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXNpemU6MTdweDtcclxuICAgIG1heC13aWR0aDoyODVweDtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgY29sb3I6d2hpdGU7XHJcbiAgICBmb250LXdlaWdodDoxMDA7XHJcbiAgICBmbG9hdDpyaWdodDtcclxuICAgIG1hcmdpbi10b3A6MTBweDtcclxuICB9XHJcblxyXG4gIC5ndW4ge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGhlaWdodDphdXRvO1xyXG4gIH1cclxuXHJcbiAgLmFyc2VuYWxXcmFwcGVyIHtcclxuICAgIGZsb2F0OnJpZ2h0O1xyXG4gICAgbWFyZ2luLXRvcDotMTAwcHg7XHJcbiAgICBtYXgtd2lkdGg6NDE1cHg7XHJcbiAgfVxyXG5cclxuICAuYXJzZW5hbFRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZToyMHB4O1xyXG4gICAgY29sb3I6I2YxNTUzNjtcclxuICB9XHJcblxyXG4gIC5hcnNlbmFsLWl0ZW0ge1xyXG4gICAgZm9udC1mYW1pbHkgXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgY29sb3I6d2hpdGU7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICB9XHJcblxyXG4gIC5hcnNlbmFsLWl0ZW06YWZ0ZXIge1xyXG4gICAgY29udGVudCAnIC0gJztcclxuICAgIGNvbG9yOmxpZ2h0Z3JleTtcclxuICB9XHJcblxyXG4gIC5hcnNlbmFsLWl0ZW06YWZ0ZXI6bGFzdC1jaGlsZCB7XHJcbiAgICBjb250ZW50OicnO1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gIH1cclxuXHJcbi5sb2dvIHtcclxuICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9sb2dvMi5wbmdcIikgbm8tcmVwZWF0O1xyXG4gIHdpZHRoOjk3cHg7XHJcbiAgaGVpZ2h0Ojk3cHg7XHJcbn1cclxuXHJcbi5sb2dvOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9sb2dvX2hvdmVyLnBuZ1wiKSBuby1yZXBlYXQ7XHJcbiAgd2lkdGg6OTdweDtcclxuICBoZWlnaHQ6OTdweDtcclxufVxyXG5cclxuLnByLXByb2plY3RzIHtcclxuICBtYXJnaW4tYm90dG9tOjEwMHB4O1xyXG59XHJcblxyXG4ucHJvamVjdHMsIC5wci1wcm9qZWN0cyB7XHJcblxyXG4gIC5wcm9qZWN0c1dyYXBwZXIge1xyXG4gICAgZGlzcGxheTpmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50IHNwYWNlLWFyb3VuZDtcclxuICAgIGZsZXgtd3JhcDp3cmFwO1xyXG4gIH1cclxuXHJcbiAgLnByb2plY3RJdGVtOmhvdmVyIHtcclxuICAgIGN1cnNvcjpwb2ludGVyO1xyXG5cclxuICAgIC5wcm9qZWN0SW1nV3JhcHBlciBpbWcge1xyXG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwJSk7XHJcbiAgICAgIHRyYW5zaXRpb246LjRzO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9qZWN0Q29udGVudFdyYXBwZXIgLnByb2plY3RUaXRsZSB7XHJcbiAgICAgIGNvbG9yOiNmMTU1MzY7XHJcbiAgICAgIHRyYW5zaXRpb246IC40cztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wcm9qZWN0SXRlbSB7XHJcbiAgICB3aWR0aDo0NTBweDtcclxuICAgIGRpc3BsYXk6ZmxleDtcclxuICAgIG1hcmdpbi10b3A6MTAwcHg7XHJcblxyXG4gICAgLnByb2plY3RJbWdXcmFwcGVyIHtcclxuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgIHRyYW5zaXRpb246LjRzO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvKmltZzpob3ZlciB7XHJcbiAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCUpO1xyXG4gICAgICB9Ki9cclxuICAgIH1cclxuXHJcblxyXG4gICAgLnByb2plY3RDb250ZW50V3JhcHBlciB7XHJcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tbGVmdDoxNXB4O1xyXG5cclxuICAgICAgLnByb2plY3RUaXRsZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHkgTW9udHNlcnJhdC1Cb2xkO1xyXG4gICAgICAgIGZvbnQtc2l6ZToyMHB4O1xyXG4gICAgICAgIGNvbG9yOmJsYWNrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJvamVjdERlc2NyaXB0aW9uIHtcclxuICAgICAgICBmb250LWZhbWlseSBNb250c2VycmF0LUxpZ2h0O1xyXG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJvamVjdERldGFpbHNXcmFwcGVyIHtcclxuICAgICAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuY2FsaWJlcldyYXBwZXIsIC5wbGF0Zm9ybVdyYXBwZXIsIC50aW1lV3JhcHBlcixcclxuICAgICAgLnRlYW1XcmFwcGVyIHtcclxuICAgICAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICAgICAgZmxleDp3cmFwO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xyXG5cclxuICAgICAgICAucHJvamVjdERldGFpbHNUaXRsZSB7XHJcbiAgICAgICAgICBmb250LWZhbWlseSBNb250c2VycmF0LVJlZ3VsYXI7XHJcbiAgICAgICAgICBmb250LXNpemU6MTJweDtcclxuICAgICAgICAgIGNvbG9yOiNmMTU1MzY7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucHJvamVjdENhbGliZXJTaXplIHtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5IE1vbnRzZXJyYXQtUmVndWxhcjtcclxuICAgICAgICAgIGZvbnQtc2l6ZToxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmNhbGliZXJXcmFwcGVyIGltZyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGltZVdyYXBwZXIge1xyXG5cclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgLmRhdGVOdW1iZXIge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHkgTW9udHNlcnJhdC1Cb2xkLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgZm9udC1zaXplOjE4cHg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSk7XHJcbiAgICAgICAgICBsZWZ0OjUwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJvamVjdERldGFpbHNTZXBhcmF0b3Ige1xyXG4gICAgICAgIGJvcmRlci13aWR0aDoxcHg7XHJcbiAgICAgICAgYm9yZGVyLXN0eWxlOmRvdHRlZDtcclxuICAgICAgICBib3JkZXItY29sb3I6I2YxNTUzNjtcclxuICAgICAgIH1cclxuXHJcbiAgICAgIC5mbGV4V3JhcCB7XHJcbiAgICAgICAgZGlzcGxheTpmbGV4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6MTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmZsZXhXcmFwUGxhdGZvcm1zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjEwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOjc1cHg7XHJcbiAgICAgICAgZmxleC13cmFwOndyYXA7XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBwYWRkaW5nOjVweCA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYWxsUHJvamVjdHMge1xyXG4gIGRpc3BsYXk6ZmxleDtcclxuXHJcbiAgLmJ1bGxldHNCZyB7XHJcbiAgICBtYXJnaW46MCBhdXRvO1xyXG4gICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYnVsbGV0cy1iZy5wbmdcIikgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgIHdpZHRoOjQ1MHB4O1xyXG4gICAgaGVpZ2h0OjE3NHB4O1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIGxlZnQ6IDYwJTtcclxuICAgIHRvcDogNzAlO1xyXG5cclxuICAgIC5idG5BbGxQcm9qZWN0cyB7XHJcbiAgICAgIC8qbWFyZ2luOjAgYXV0bzsqL1xyXG4gICAgICAvKnBhZGRpbmc6MTVweCAzNXB4OyovXHJcbiAgICAgIHdpZHRoOjIxMHB4O1xyXG4gICAgICBoZWlnaHQ6NjVweDtcclxuICAgICAgcGFkZGluZzoxN3B4IDA7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6I2YxNTUzNjtcclxuICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIHRleHQtYWxpZ24gY2VudGVyO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGZvbnQtZmFtaWx5Ok1vbnRzZXJyYXQtQm9sZDtcclxuICAgICAgZm9udC1zaXplOjIwcHg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICBsZWZ0OjUwJTtcclxuICAgICAgdG9wOjUwJTtcclxuICAgICAgdHJhbnNpdGlvbjouM3NcclxuICAgIH1cclxuICAgIC5idG5BbGxQcm9qZWN0czpob3ZlciB7XHJcbiAgICAgIGNvbG9yOmJsYWNrO1xyXG4gICAgICB0cmFuc2l0aW9uOi4zcztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4ubWFya2V0b2xvZ3kge1xyXG4gIC8qZGlzcGxheTpmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7XHJcbiAgZmxlcy13cmFwOndyYXA7Ki9cclxuXHJcblxyXG4gIC5tYXJrZXRvbG9neVdyYXBwZXIge1xyXG4gICAgZGlzcGxheTpmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246cm93O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICBtYXJnaW4tdG9wOjgwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOjgwcHg7XHJcbiAgICBmbGV4LXdyYXA6d3JhcDtcclxuICB9XHJcblxyXG5cclxuICAubWFya2V0b2xvZ3lTZXBhcmF0b3Ige1xyXG4gICAgZGlzcGxheTpmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xyXG4gICAgYm9yZGVyLXdpZHRoOjFweDtcclxuICAgIGJvcmRlci1zdHlsZTpkb3R0ZWQ7XHJcbiAgICBib3JkZXItY29sb3I6I2YxNTUzNjtcclxuICAgIGhlaWdodDphdXRvO1xyXG4gIH1cclxuXHJcbiAgLm1tQmxvY2sge1xyXG4gICAgbWF4LXdpZHRoOjM3MHB4O1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgLm1tRXZlbnRzIHtcclxuICAgICAgZm9udC1mYW1pbHk6TW9udHNlcnJhdC1Cb2xkO1xyXG4gICAgICBmb250LXNpemU6MzJweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbToxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tbUV2ZW50TmFtZSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LVJlZ3VsYXI7XHJcbiAgICAgIGZvbnQtc2l6ZToxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tbURhdGVQbGFjZSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5IE1vbnRzZXJyYXQtTGlnaHQ7XHJcbiAgICAgIGNvbG9yOiNhYmFiYWI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjEuMTtcclxuICAgICAgbWFyZ2luLXRvcDo1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1tSW1nQm9yZGVyV3JhcHBlciB7XHJcbiAgICAgIGhlaWdodDozNjJweDtcclxuICAgICAgd2lkdGg6MzYycHg7XHJcbiAgICAgIGJvcmRlcjoycHggc29saWQgI2YxNTUzNjtcclxuICAgICAgYm9yZGVyLXJhZGl1czoyMDBweDtcclxuICAgICAgcGFkZGluZzo1cHg7XHJcbiAgICAgIG1hcmdpbi10b3A6NTBweDtcclxuICAgICAgbWFyZ2luOjUwcHggYXV0byAwIGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLm1tSW1nV3JhcHBlciB7XHJcbiAgICAgIGhlaWdodDozNTBweDtcclxuICAgICAgd2lkdGg6MzUwcHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6MjAwcHg7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuXHJcbiAgLnFhQmxvY2sge1xyXG4gICAgbWF4LXdpZHRoOjM3MHB4O1xyXG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIG1hcmdpbi10b3A6NTBweDtcclxuXHJcbiAgICAucWFUaXRsZSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5Ok1vbnRzZXJyYXQtQm9sZDtcclxuICAgICAgZm9udC1zaXplOjMycHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206MTBweDtcclxuICAgIH1cclxuXHJcbiAgICAucWFJbWdXcmFwcGVyIHtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3FhLWJnLnBuZ1wiKSBuby1yZXBlYXQ7XHJcbiAgICAgIHdpZHRoOjM3MHB4O1xyXG4gICAgICBoZWlnaHQ6MzI2cHg7XHJcbiAgICAgIHBhZGRpbmc6MzBweCAzMHB4IDEwMHB4IDMwcHg7XHJcblxyXG4gICAgICAucWFRdW90ZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQtTGlnaHQ7XHJcbiAgICAgICAgZm9udC1zaXplOjE0cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLnFhUG9ydHJlaXRXcmFwcGVyIHtcclxuICAgICAgICB3aWR0aDoxMTVweDtcclxuICAgICAgICBoZWlnaHQ6MTE1cHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIGJvcmRlcjoycHggc29saWQgYmxhY2s7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czoxMDBweDtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MzAwcHg7XHJcbiAgICAgICAgbGVmdDogMjVweDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgIC5idG5SZWFkQW5zd2VyV3JhcHBlciB7XHJcbiAgICAgIGZvbnQtZmFtaWx5IE1vbnRzZXJyYXQtQm9sZDtcclxuICAgICAgZm9udC1zaXplOjE4cHg7XHJcbiAgICAgIG1hcmdpbi10b3A6MzBweDtcclxuICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYnRuLXJlYWQtYW5zd2VyLnBuZ1wiKSBuby1yZXBlYXQ7XHJcbiAgICAgIHdpZHRoOjE5N3B4O1xyXG4gICAgICBoZWlnaHQ6OTBweDtcclxuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6MTdweCAwO1xyXG4gICAgICBmbG9hdDpyaWdodDtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOndoaXRlO1xyXG4gICAgICAgIHRyYW5zaXRpb246LjNzO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0blJlYWRBbnN3ZXJXcmFwcGVyOmhvdmVyIHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcbiAgICAgICAgY29sb3I6YmxhY2s7XHJcbiAgICAgICAgdHJhbnNpdGlvbjouM3M7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmZvb3RlciB7XHJcbiAgZm9udC1mYW1pbHkgTW9udHNlcnJhdC1MaWdodDtcclxuICBmb250LXNpemU6MTZweDtcclxuICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy90b3AtYmxvY2stYmcucG5nXCIpIG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XHJcbiAgd2lkdGg6MTAwJTtcclxuICBoZWlnaHQ6MTkwcHg7XHJcblxyXG4gIC5mb290ZXJXcmFwcGVyIHtcclxuICAgIG1hcmdpbi10b3A6NTBweDtcclxuICAgIGRpc3BsYXk6ZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOnJvdztcclxuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kZXRhaWxzRm9vdGVyV3JhcHBlciB7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbi1sZWZ0OjE1cHg7XHJcbiAgICBjb2xvcjp3aGl0ZTtcclxuICB9XHJcblxyXG4gIC5mb290ZXJFbWFpbCB7XHJcbiAgICBjb2xvcjojZjE1NTM2O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAgIC5zb2NpYWxGb290ZXIge1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6MTVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnZrIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy92ay5wbmdcIikgbm8tcmVwZWF0O1xyXG4gICAgICAgIHdpZHRoOjMxcHg7XHJcbiAgICAgICAgaGVpZ2h0OjE4cHg7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICB9XHJcblxyXG4gICAgICAudms6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3ZrLWhvdmVyLnBuZ1wiKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgd2lkdGg6MzFweDtcclxuICAgICAgICBoZWlnaHQ6MThweDtcclxuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgLmZiIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9mYi5wbmdcIikgbm8tcmVwZWF0O1xyXG4gICAgICAgIHdpZHRoOjEzcHg7XHJcbiAgICAgICAgaGVpZ2h0OjI1cHg7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5mYjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvZmItaG92ZXIucG5nXCIpIG5vLXJlcGVhdDtcclxuICAgICAgICB3aWR0aDoxM3B4O1xyXG4gICAgICAgIGhlaWdodDoyNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaW57XHJcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvaW4ucG5nXCIpIG5vLXJlcGVhdDtcclxuICAgICAgICB3aWR0aDoyNnB4O1xyXG4gICAgICAgIGhlaWdodDoyNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaW46aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2luLWhvdmVyLnBuZ1wiKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgd2lkdGg6MjZweDtcclxuICAgICAgICBoZWlnaHQ6MjVweDtcclxuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgLmRyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9kci5wbmdcIikgbm8tcmVwZWF0O1xyXG4gICAgICAgIHdpZHRoOjIycHg7XHJcbiAgICAgICAgaGVpZ2h0OjIycHg7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5kcjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvZHItaG92ZXIucG5nXCIpIG5vLXJlcGVhdDtcclxuICAgICAgICB3aWR0aDoyMnB4O1xyXG4gICAgICAgIGhlaWdodDoyMnB4O1xyXG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZ3Qge1xyXG4gICAgICAgIGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2d0LnBuZ1wiKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgd2lkdGg6MjFweDtcclxuICAgICAgICBoZWlnaHQ6MjFweDtcclxuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgLmd0OmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ndC1ob3Zlci5wbmdcIikgbm8tcmVwZWF0O1xyXG4gICAgICAgIHdpZHRoOjIxcHg7XHJcbiAgICAgICAgaGVpZ2h0OjIxcHg7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuICAvL1BBR0UgUFJPSkVDVFMvL1xyXG5cclxuICAudG9wLXByb2plY3RzIHtcclxuICAgIGhlaWdodDoxNTVweDtcclxuICB9XHJcblxyXG4gIC5wci1wcm9qZWN0RGV0YWlsc1dyYXBwZXIge1xyXG4gICAgbWFyZ2luLXRvcDoxMHB4O1xyXG4gICAgfVxyXG5cclxuICAucHJvamVjdERldGFpbHNUaXRsZVdyYXBwZXIge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICB9XHJcblxyXG4gIC5wci1wcm9qZWN0RGV0YWlsc1RpdGxlIHtcclxuICAgIGZvbnQtZmFtaWx5IE1vbnRzZXJyYXQtUmVndWxhcjtcclxuICAgIGZvbnQtc2l6ZToxMnB4O1xyXG4gICAgY29sb3I6I2YxNTUzNjtcclxuICAgIHdpZHRoOjI0JTtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAucHJvamVjdERldGFpbHNTZXBhcmF0b3ItaHIge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGJvcmRlci10b3A6MXB4IGRvdHRlZCAjZjE1NTM2O1xyXG4gICAgbWFyZ2luOjNweCAwO1xyXG4gIH1cclxuXHJcbiAgLnByLXByb2plY3REZXRhaWxzQ29udGVudCB7XHJcbiAgICBmb250LWZhbWlseSBNb250c2VycmF0LVJlZ3VsYXI7XHJcbiAgICBmb250LXNpemU6MTJweDtcclxuICAgIGNvbG9yOmxpZ2h0Z3JleTtcclxuICAgIHdpZHRoOjI0JTtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbiBjZW50ZXI7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XHJcbiAgfVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xyXG4gIC5hbGxQcm9qZWN0cyB7XHJcbiAgICAuYnVsbGV0c0JnIHtcclxuICAgICAgbWFyZ2luLXRvcDoyMHB4O1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAuYXJzZW5hbFdyYXBwZXIge1xyXG4gIG1hcmdpbi10b3A6IC02MHB4O1xyXG4gIH1cclxuXHJcbiAgLmRlc2NyaXB0aW9uIHtcclxuICAgIG1hcmdpbi10b3A6MDtcclxuICB9XHJcblxyXG4gIC50b3AtcHJvamVjdHMge1xyXG5cclxuICAgIGhlYWRlciBuYXYgdWwgbGkge1xyXG4gICAgICBtYXJnaW4tbGVmdDoyMHB4O1xyXG4gICAgICBmb250LXNpemU6MThweDtcclxuICAgIH1cclxuICAgIGhlYWRlciAuc3RhcnQtcHJvamVjdCB7XHJcbiAgICAgIHBhZGRpbmc6MTBweCAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgxIHtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgIH1cclxuXHJcbiAgICBoZWFkZXIgbmF2IHtcclxuICAgICAgcGFkZGluZy10b3A6MDtcclxuICAgIH1cclxuXHJcbiAgICBoZWFkZXIgLnN0YXJ0LXByb2plY3Qge1xyXG4gICAgICBtYXJnaW4tdG9wOjIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLmFsbFByb2plY3RzIHtcclxuICAgIC8qbWFyZ2luLXRvcDogNTBweDsqL1xyXG4gIH1cclxuXHJcblxyXG5oZWFkZXIgLnN0YXJ0LXByb2plY3Qge1xyXG4gIG1hcmdpbi10b3A6ODBweDtcclxufVxyXG5cclxuLmJ1bGxldCB7XHJcbiAgZGlzcGxheTpub25lO1xyXG59XHJcblxyXG4ubWFya2V0b2xvZ3kge1xyXG4gIG1hcmdpbi10b3A6NTBweDtcclxuICAubWFya2V0b2xvZ3lTZXBhcmF0b3Ige1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gIH1cclxuXHJcbiAgLm1tQmxvY2sgLm1tSW1nQm9yZGVyV3JhcHBlciB7XHJcbiAgICB3aWR0aDoyOTJweDtcclxuICAgIGhlaWdodDoyOTJweDtcclxuICB9XHJcblxyXG4gIC5tbUJsb2NrIC5tbUltZ1dyYXBwZXIge1xyXG4gICAgd2lkdGg6MjgwcHg7XHJcbiAgICBoZWlnaHQ6MjgwcHg7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgLnByb2plY3RzIC5wcm9qZWN0c1dyYXBwZXIge1xyXG4gICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgfVxyXG5cclxuICAucHJvamVjdHMgLnByb2plY3RJdGVtIHtcclxuICAgIG1pbi13aWR0aDo0NTBweDtcclxuICB9XHJcblxyXG4gIC5wcm9qZWN0cyAucHJvamVjdEl0ZW0ge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1hcmdpbjo1MHB4IGF1dG87XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLm1hcmtldG9sb2d5IC5tbUJsb2NrIC5tbUltZ0JvcmRlcldyYXBwZXIge1xyXG4gICAgbWFyZ2luOjUwcHggYXV0byAwIGF1dG87XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICB3aWR0aDozMDBweDtcclxuICAgIGZvbnQtc2l6ZTozMnB4O1xyXG4gIH1cclxuXHJcbiAgLmhlYWRlciAuc3RhcnQtcHJvamVjdCB7XHJcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xyXG4gIH1cclxuXHJcbiAgLmFyc2VuYWxXcmFwcGVyIHtcclxuICAgIG1hcmdpbi10b3A6LTMwcHg7XHJcbiAgfVxyXG5cclxuICAubWFya2V0b2xvZ3kgLm1tQmxvY2sge1xyXG4gICAgbWFyZ2luOjAgYXV0bztcclxuICB9XHJcblxyXG4gIC5tYXJrZXRvbG9neSAucWFCbG9jayB7XHJcbiAgICBtYXJnaW46NDBweCBhdXRvIDAgYXV0bztcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM3cHgpIHtcclxuXHJcbmZvb3RlciAuZm9vdGVyV3JhcHBlciB7XHJcblxyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gIGltZyB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgfVxyXG5cclxuICAuc29jaWFsRm9vdGVyIHtcclxuICAgIG1hcmdpbi10b3A6MTBweDtcclxuICB9XHJcbn1cclxuXHJcbiAgaGVhZGVyIC5zdGFydC1wcm9qZWN0IHtcclxuICAgIG1hcmdpbi10b3A6MjBweDtcclxuICB9XHJcblxyXG4gIGgxIHtcclxuICAgIHdpZHRoOjIwMHB4O1xyXG4gIH1cclxuXHJcbiAgLmRlc2NyaXB0aW9uIHtcclxuICAgIG1hcmdpbi10b3A6LTExMHB4O1xyXG4gIH1cclxuXHJcbiAgLmd1biB7XHJcbiAgICBtYXJnaW4tdG9wOjIwcHg7XHJcbiAgfVxyXG5cclxuICAuYXJzZW5hbFdyYXBwZXIge1xyXG4gICAgbWFyZ2luLXRvcDowcHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUyNXB4KSB7XHJcblxyXG4gIC50b3AtYmxvY2sge1xyXG4gICAgaGVpZ2h0OmF1dG87XHJcbiAgICBwYWRkaW5nLWJvdHRvbToyMHB4O1xyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgbWFyZ2luLXRvcDoxMHB4O1xyXG4gIH1cclxuXHJcbiAgLm9wZW4ge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICB9XHJcblxyXG4gIGhlYWRlciBuYXYge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gIH1cclxuXHJcbiAgaGVhZGVyIG5hdiB1bCBsaSB7XHJcbiAgICBtYXJnaW4tbGVmdDoyMHB4O1xyXG4gICAgZm9udC1zaXplOjE4cHg7XHJcbiAgfVxyXG4gIGhlYWRlciAuc3RhcnQtcHJvamVjdCB7XHJcbiAgICBwYWRkaW5nOjEwcHggMzBweDtcclxuICAgIGZsb2F0OmxlZnQ7XHJcbiAgICBtYXJnaW4tbGVmdDoyMHB4O1xyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICB9XHJcblxyXG4gIGhlYWRlciBuYXYge1xyXG4gICAgcGFkZGluZy10b3A6MDtcclxuICB9XHJcblxyXG4gIC5ndW4ge1xyXG4gICAgbWFyZ2luLXRvcDozNXB4O1xyXG4gIH1cclxuXHJcbiAgLmFyc2VuYWxXcmFwcGVyIHtcclxuICAgIG1hcmdpbi10b3A6MjBweDtcclxuICB9XHJcblxyXG4gIC5kZXNjcmlwdGlvbiB7XHJcbiAgICBtYXJnaW4tdG9wOjA7XHJcbiAgICBtYXgtd2lkdGg6MTAwJTtcclxuICB9XHJcblxyXG4gIC5wcm9qZWN0cyAucHJvamVjdEl0ZW0gLnByb2plY3RDb250ZW50V3JhcHBlciB7XHJcbiAgICBtYXgtd2lkdGg6MjQwcHg7XHJcbiAgfVxyXG5cclxuICAuc3RhcnQtcHJvamVjdCB7XHJcbiAgICBkaXNwbGF5Om5vbmU7XHJcbiAgfVxyXG5cclxuICAuc3RhcnQtcHJvamVjdC1tb2JpbGUge1xyXG4gICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQtQm9sZDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjp3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6I2YxNTUzNjtcclxuICAgIHBhZGRpbmc6MTVweCA1MHB4O1xyXG4gICAgLypmbG9hdDpyaWdodDsqL1xyXG4gICAgLyptYXJnaW4tdG9wOjIwcHg7Ki9cclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IC4zc1xyXG4gICAgZGlzcGxheTpibG9ja1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcclxuICB9XHJcblxyXG4gIC5zdGFydC1wcm9qZWN0LW1vYmlsZTphY3RpdmUge1xyXG4gICAgdHJhbnNpdGlvbjouM3M7XHJcbiAgICBjb2xvcjpibGFjaztcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDUwcHgpIHtcclxuXHJcbiAgaGVhZGVyIG5hdiB1bCBsaSB7XHJcbiAgICBmb250LXNpemU6MTZweDtcclxuICB9XHJcbiBuYXYgdWwge1xyXG4gICBwYWRkaW5nLWxlZnQ6NXB4O1xyXG4gfVxyXG5cclxuIC5ndW4ge1xyXG4gICBtYXJnaW4tdG9wOjI1cHg7XHJcbiB9XHJcblxyXG4gIGhlYWRlciAuc3RhcnQtcHJvamVjdCB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xyXG4gIH1cclxuXHJcbiAgLnByb2plY3RzIC5wcm9qZWN0c1dyYXBwZXIge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAucHJvamVjdHMgLnByb2plY3RzV3JhcHBlciAucHJvamVjdEl0ZW0ge1xyXG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xyXG4gIH1cclxuXHJcbiAgLnByb2plY3RzIC5wcm9qZWN0SXRlbSAucHJvamVjdENvbnRlbnRXcmFwcGVyIC5wcm9qZWN0VGl0bGUge1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBtYXJnaW4tdG9wOjEwcHg7XHJcbn1cclxuXHJcbiAgLmFsbFByb2plY3RzIHtcclxuXHJcbiAgICB3aWR0aDogMjgwcHg7XHJcblxyXG4gICAgLmJ1bGxldHNCZyB7XHJcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnByLXByb2plY3RzIHtcclxuXHJcbiAgICAucHItcHJvamVjdEltZ1dyYXBwZXIge1xyXG4gICAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudCA6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAucHJvamVjdHNXcmFwcGVyIHtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2plY3RzV3JhcHBlciAucHJvamVjdEl0ZW0ge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2plY3RJdGVtIC5wcm9qZWN0Q29udGVudFdyYXBwZXIgLnByb2plY3RUaXRsZSB7XHJcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICBtYXJnaW46N3B4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2plY3RJdGVtIC5wcm9qZWN0Q29udGVudFdyYXBwZXIge1xyXG4gICAgICBtYXgtd2lkdGg6MTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAucHJvamVjdEl0ZW0gLnByb2plY3RDb250ZW50V3JhcHBlciAucHJvamVjdERldGFpbHNXcmFwcGVyIC50aW1lV3JhcHBlciAuZmF0ZSAuZGF0ZU51bWJlciB7XHJcbiAgICAgIGxlZnQ6MzAlO1xyXG4gICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAudG9wLXByb2plY3RzIGhlYWRlciBuYXYgdWwgbGkge1xyXG4gICBmb250LXNpemU6IDE2cHg7XHJcbiAgfVxyXG5cclxuICAudG9wLXByb2plY3RzIG5hdiB1bCB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6NXB4O1xyXG4gIH1cclxuXHJcblxyXG5cclxuICAvKmZvb3RlciB7XHJcbiAgICBmb250LXNpemU6MTJweDtcclxuICB9Ki9cclxuXHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzVweCkge1xyXG4gaGVhZGVyIC5zdGFydC1wcm9qZWN0IHtcclxuICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICBwYWRkaW5nOiA3cHggMjBweDtcclxuICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiB9XHJcblxyXG4gIGhlYWRlciBuYXYgdWwgbGkge1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICBmb250LXNpemU6MzBweDtcclxuICB9XHJcblxyXG4gIC5tYXJrZXRvbG9neSAucWFCbG9jayAucWFUaXRsZSB7XHJcbiAgICBmb250LXNpemU6NDJweDtcclxufVxyXG5cclxuICAubWFya2V0b2xvZ3kgLm1hcmtldG9sb2d5V3JhcHBlciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgfVxyXG5cclxuICAubWFya2V0b2xvZ3kgLnFhQmxvY2sgLnFhSW1nV3JhcHBlciAucWFRdW90ZSB7XHJcbiAgICBmb250LXNpemU6MTZweDtcclxuICB9XHJcblxyXG4gIC5tYXJrZXRvbG9neSAucWFCbG9jayB7XHJcbiAgICB0cmFuc2Zvcm06c2NhbGUoMC44KTtcclxuICB9XHJcblxyXG4gIC50b3AtcHJvamVjdHMge1xyXG4gICAgaGVhZGVyIC5zdGFydC1wcm9qZWN0IHtcclxuICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICBwYWRkaW5nOiA3cHggMjBweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgaGVhZGVyIG5hdiB1bCBsaSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIl19 */
