@charset "UTF-8";
/* padding classes */
.p-5 {
  padding: 5px; }

.p-10 {
  padding: 10px; }

.p-15 {
  padding: 15px; }

.p-20 {
  padding: 20px; }

.p-25 {
  padding: 25px; }

.p-30 {
  padding: 30px; }

.p-35 {
  padding: 35px; }

.p-40 {
  padding: 40px; }

.p-45 {
  padding: 45px; }

.p-50 {
  padding: 50px; }

.p-55 {
  padding: 55px; }

.p-60 {
  padding: 60px; }

.p-65 {
  padding: 65px; }

.p-70 {
  padding: 70px; }

.p-75 {
  padding: 75px; }

.p-80 {
  padding: 80px; }

/* padding 5 */
.p-t-5 {
  padding-top: 5px; }

.p-r-5 {
  padding-right: 5px; }

.p-b-5 {
  padding-bottom: 5px; }

.p-l-5 {
  padding-left: 5px; }

.p-v-5 {
  padding: 5px 0; }

.p-h-5 {
  padding: 0 5px; }

/* padding 10 */
.p-t-10 {
  padding-top: 10px; }

.p-r-10 {
  padding-right: 10px; }

.p-b-10 {
  padding-bottom: 10px; }

.p-l-10 {
  padding-left: 10px; }

.p-v-10 {
  padding: 10px 0; }

.p-h-10 {
  padding: 0 10px; }

/* padding 15 */
.p-t-15 {
  padding-top: 15px; }

.p-r-15 {
  padding-right: 15px; }

.p-b-15 {
  padding-bottom: 15px; }

.p-l-15 {
  padding-left: 15px; }

.p-v-15 {
  padding: 15px 0; }

.p-h-15 {
  padding: 0 15px; }

/* padding 20 */
.p-t-20 {
  padding-top: 20px; }

.p-r-20 {
  padding-right: 20px; }

.p-b-20 {
  padding-bottom: 20px; }

.p-l-20 {
  padding-left: 20px; }

.p-v-20 {
  padding: 20px 0; }

.p-h-20 {
  padding: 0 20px; }

/* padding 25 */
.p-t-25 {
  padding-top: 25px; }

.p-r-25 {
  padding-right: 25px; }

.p-b-25 {
  padding-bottom: 25px; }

.p-l-25 {
  padding-left: 25px; }

.p-v-25 {
  padding: 25px 0; }

.p-h-25 {
  padding: 0 25px; }

/* padding 30 */
.p-t-30 {
  padding-top: 30px; }

.p-r-30 {
  padding-right: 30px; }

.p-b-30 {
  padding-bottom: 30px; }

.p-l-30 {
  padding-left: 30px; }

.p-v-30 {
  padding: 30px 0; }

.p-h-30 {
  padding: 0 30px; }

/* padding 35 */
.p-t-35 {
  padding-top: 35px; }

.p-r-35 {
  padding-right: 35px; }

.p-b-35 {
  padding-bottom: 35px; }

.p-l-35 {
  padding-left: 35px; }

.p-v-35 {
  padding: 35px 0; }

.p-h-35 {
  padding: 0 35px; }

/* padding 40 */
.p-t-40 {
  padding-top: 40px; }

.p-r-40 {
  padding-right: 40px; }

.p-b-40 {
  padding-bottom: 40px; }

.p-l-40 {
  padding-left: 40px; }

.p-v-40 {
  padding-top: 40px;
  padding-bottom: 40px; }

.p-h-40 {
  padding: 0 40px; }

/* padding 45 */
.p-t-45 {
  padding-top: 45px; }

.p-r-45 {
  padding-right: 45px; }

.p-b-45 {
  padding-bottom: 45px; }

.p-l-45 {
  padding-left: 45px; }

.p-v-45 {
  padding: 45px 0; }

.p-h-45 {
  padding: 0 45px; }

/* padding 50 */
.p-t-50 {
  padding-top: 50px; }

.p-r-50 {
  padding-right: 50px; }

.p-b-50 {
  padding-bottom: 50px; }

.p-l-50 {
  padding-left: 50px; }

.p-v-50 {
  padding: 50px 0; }

.p-h-50 {
  padding: 0 50px; }

/* padding 55 */
.p-t-55 {
  padding-top: 55px; }

.p-r-55 {
  padding-right: 55px; }

.p-b-55 {
  padding-bottom: 55px; }

.p-l-55 {
  padding-left: 55px; }

.p-v-55 {
  padding: 55px 0; }

.p-h-55 {
  padding: 0 55px; }

/* padding 60 */
.p-t-60 {
  padding-top: 60px; }

.p-r-60 {
  padding-right: 60px; }

.p-b-60 {
  padding-bottom: 60px; }

.p-l-60 {
  padding-left: 60px; }

.p-v-60 {
  padding: 60px 0; }

.p-h-60 {
  padding: 0 60px; }

/* padding 65 */
.p-t-65 {
  padding-top: 65px; }

.p-r-65 {
  padding-right: 65px; }

.p-b-65 {
  padding-bottom: 65px; }

.p-l-65 {
  padding-left: 65px; }

.p-v-65 {
  padding: 65px 0; }

.p-h-65 {
  padding: 0 65px; }

/* padding 70 */
.p-t-70 {
  padding-top: 70px; }

.p-r-70 {
  padding-right: 70px; }

.p-b-70 {
  padding-bottom: 70px; }

.p-l-70 {
  padding-left: 70px; }

.p-v-70 {
  padding: 70px 0; }

.p-h-70 {
  padding: 0 70px; }

/* padding 75 */
.p-t-75 {
  padding-top: 75px; }

.p-r-75 {
  padding-right: 75px; }

.p-b-75 {
  padding-bottom: 75px; }

.p-l-75 {
  padding-left: 75px; }

.p-v-75 {
  padding: 75px 0; }

.p-h-75 {
  padding: 0 75px; }

/* padding 80 */
.p-t-80 {
  padding-top: 80px; }

.p-r-80 {
  padding-right: 80px; }

.p-b-80 {
  padding-bottom: 80px; }

.p-l-80 {
  padding-left: 80px; }

.p-v-80 {
  padding: 80px 0; }

.p-h-80 {
  padding: 0 80px; }

/* padding 0 */
.no-p {
  padding: 0px; }

.no-p-t {
  padding-top: 0px; }

.no-p-r {
  padding-right: 0px; }

.no-p-b {
  padding-bottom: 0px; }

.no-p-l {
  padding-left: 0px; }

.no-p-v {
  padding: 0px 0; }

.no-p-h {
  padding: 0 0px; }

/* margin classes */
/* margin 5 */
.m-5 {
  margin: 5px; }

.m-t-5 {
  margin-top: 5px; }

.m-r-5 {
  margin-right: 5px; }

.m-b-5 {
  margin-bottom: 5px; }

.m-l-5 {
  margin-left: 5px; }

.m-v-5 {
  margin: 5px 0; }

.m-h-5 {
  margin: 0 5px; }

/* margin 10 */
.m-10 {
  margin: 10px; }

.m-t-10 {
  margin-top: 10px; }

.m-r-10 {
  margin-right: 10px; }

.m-b-10 {
  margin-bottom: 10px; }

.m-l-10 {
  margin-left: 10px; }

.m-v-10 {
  margin: 10px 0; }

.m-h-10 {
  margin: 0 10px; }

/* margin 15 */
.m-15 {
  margin: 15px; }

.m-t-15 {
  margin-top: 15px; }

.m-r-15 {
  margin-right: 15px; }

.m-b-15 {
  margin-bottom: 15px; }

.m-l-15 {
  margin-left: 15px; }

.m-v-15 {
  margin: 15px 0; }

.m-h-15 {
  margin: 0 15px; }

/* margin 20 */
.m-20 {
  margin: 20px; }

.m-t-20 {
  margin-top: 20px; }

.m-r-20 {
  margin-right: 20px; }

.m-b-20 {
  margin-bottom: 20px; }

.m-l-20 {
  margin-left: 20px; }

.m-v-20 {
  margin: 20px 0; }

.m-h-20 {
  margin: 0 20px; }

/* margin 25 */
.m-25 {
  margin: 25px; }

.m-t-25 {
  margin-top: 25px; }

.m-r-25 {
  margin-right: 25px; }

.m-b-25 {
  margin-bottom: 25px; }

.m-l-25 {
  margin-left: 25px; }

.m-v-25 {
  margin: 25px 0; }

.m-h-25 {
  margin: 0 25px; }

/* margin 30 */
.m-30 {
  margin: 30px; }

.m-t-30 {
  margin-top: 30px; }

.m-r-30 {
  margin-right: 30px; }

.m-b-30 {
  margin-bottom: 30px; }

.m-l-30 {
  margin-left: 30px; }

.m-v-30 {
  margin: 30px 0; }

.m-h-30 {
  margin: 0 30px; }

/* margin 35 */
.m-35 {
  margin: 35px; }

.m-t-35 {
  margin-top: 35px; }

.m-r-35 {
  margin-right: 35px; }

.m-b-35 {
  margin-bottom: 35px; }

.m-l-35 {
  margin-left: 35px; }

.m-v-35 {
  margin: 35px 0; }

.m-h-35 {
  margin: 0 35px; }

/* margin 40 */
.m-40 {
  margin: 40px; }

.m-t-40 {
  margin-top: 40px; }

.m-r-40 {
  margin-right: 40px; }

.m-b-40 {
  margin-bottom: 40px; }

.m-l-40 {
  margin-left: 40px; }

.m-v-40 {
  margin: 40px 0; }

.m-h-40 {
  margin: 0 40px; }

/* margin 45 */
.m-45 {
  margin: 45px; }

.m-t-45 {
  margin-top: 45px; }

.m-r-45 {
  margin-right: 45px; }

.m-b-45 {
  margin-bottom: 45px; }

.m-l-45 {
  margin-left: 45px; }

.m-v-45 {
  margin: 45px 0; }

.m-h-45 {
  margin: 0 45px; }

/* margin 50 */
.m-50 {
  margin: 50px; }

.m-t-50 {
  margin-top: 50px; }

.m-r-50 {
  margin-right: 50px; }

.m-b-50 {
  margin-bottom: 50px; }

.m-l-50 {
  margin-left: 50px; }

.m-v-50 {
  margin: 50px 0; }

.m-h-50 {
  margin: 0 50px; }

/* margin 55 */
.m-55 {
  margin: 55px; }

.m-t-55 {
  margin-top: 55px; }

.m-r-55 {
  margin-right: 55px; }

.m-b-55 {
  margin-bottom: 55px; }

.m-l-55 {
  margin-left: 55px; }

.m-v-55 {
  margin: 55px 0; }

.m-h-55 {
  margin: 0 55px; }

/* margin 60 */
.m-60 {
  margin: 60px; }

.m-t-60 {
  margin-top: 60px; }

.m-r-60 {
  margin-right: 60px; }

.m-b-60 {
  margin-bottom: 60px; }

.m-l-60 {
  margin-left: 60px; }

.m-v-60 {
  margin: 60px 0; }

.m-h-60 {
  margin: 0 60px; }

/* margin 65 */
.m-65 {
  margin: 65px; }

.m-t-65 {
  margin-top: 65px; }

.m-r-65 {
  margin-right: 65px; }

.m-b-65 {
  margin-bottom: 65px; }

.m-l-65 {
  margin-left: 65px; }

.m-v-65 {
  margin: 65px 0; }

.m-h-65 {
  margin: 0 65px; }

/* margin 70 */
.m-70 {
  margin: 70px; }

.m-t-70 {
  margin-top: 70px; }

.m-r-70 {
  margin-right: 70px; }

.m-b-70 {
  margin-bottom: 70px; }

.m-l-70 {
  margin-left: 70px; }

.m-v-70 {
  margin: 70px 0; }

.m-h-70 {
  margin: 0 70px; }

/* margin 75 */
.m-75 {
  margin: 75px; }

.m-t-75 {
  margin-top: 75px; }

.m-r-75 {
  margin-right: 75px; }

.m-b-75 {
  margin-bottom: 75px; }

.m-l-75 {
  margin-left: 75px; }

.m-v-75 {
  margin: 75px 0; }

.m-h-75 {
  margin: 0 75px; }

/* margin 80 */
.m-80 {
  margin: 80px; }

.m-t-80 {
  margin-top: 80px; }

.m-r-80 {
  margin-right: 80px; }

.m-b-80 {
  margin-bottom: 80px; }

.m-l-80 {
  margin-left: 80px; }

.m-v-80 {
  margin: 80px 0; }

.m-h-80 {
  margin: 0 80px; }

/* margin 0 */
.no-m {
  margin: 0px; }

.no-m-t {
  margin-top: 0px; }

.no-m-r {
  margin-right: 0px; }

.no-m-b {
  margin-bottom: 0px; }

.no-m-l {
  margin-left: 0px; }

.no-m-v {
  margin: 0px 0; }

.no-m-h {
  margin: 0 0px; }

/* static non-generated stuff */
/* margin helpers */
.no-margin {
  margin: 0 !important; }

.no-m-lr, .no-m-rl {
  margin-left: 0 !important;
  margin-right: 0 !important; }

.no-m-tb, .no-m-bt {
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

.m-t-only {
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important; }

.m-b-only {
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-top: 0 !important; }

.m-l-only {
  margin-right: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

.m-r-only {
  margin-left: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

.m-auto {
  margin-left: auto;
  margin-right: auto; }

/* padding helpers */
.no-padding {
  padding: 0 !important; }

.no-pad-lr, .no-pad-rl {
  padding-left: 0 !important;
  padding-right: 0 !important; }

.no-pad-tb, .no-pad-bt {
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

.pad-t-only {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important; }

.pad-b-only {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important; }

.pad-l-only {
  padding-right: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

.pad-r-only {
  padding-left: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

/* border helpers */
.no-border {
  border: none !important; }

.no-border-t {
  border-top: none !important; }

.no-border-r {
  border-right: none !important; }

.no-border-b {
  border-bottom: none !important; }

.no-border-l {
  border-left: none !important; }

.no-border-lr, .no-border-rl {
  border-left: none !important;
  border-right: none !important; }

.no-border-tb, .no-border-bt {
  border-top: none !important;
  border-bottom: none !important; }

.no-border-tl, .no-border-lt {
  border-top: none !important;
  border-left: none !important; }

.no-border-tr, .no-border-rt {
  border-top: none !important;
  border-right: none !important; }

.no-border-bl, .no-border-lb {
  border-bottom: none !important;
  border-left: none !important; }

.no-border-br, .no-border-rb {
  border-bottom: none !important;
  border-right: none !important; }

.border-dashed {
  border-style: dashed !important; }

.border-dotted {
  border-style: dashed !important; }

.border-black {
  border-color: black; }

.border-light-grey {
  border-color: #e5e5e5; }

.border-medium-grey {
  border-color: #cccccc; }

.border-grey {
  border-color: #999999; }

.border-dark-grey {
  border-color: #222222; }

.border-white, .border-fff {
  border-color: white; }

/* background colors */
.bg-black {
  background-color: black; }

.bg-light-grey {
  background-color: #e5e5e5; }

.bg-medium-grey {
  background-color: #cccccc; }

.bg-grey {
  background-color: #999999; }

.bg-dark-grey {
  background-color: #222222; }

.bg-white, .bg-fff {
  background-color: white; }

.bg-none, .no-bg {
  background: none;
  background-image: none;
  background-color: transparent; }

.bg-facebook {
  background-color: #47639E; }

.bg-twitter {
  background-color: #02A8F3; }

/* font stuff */
.lh-1 {
  line-height: 1 !important; }

.lh-13 {
  line-height: 1.3 !important; }

.lh-15 {
  line-height: 1.5 !important; }

.bold, .strong {
  font-weight: bold; }

.no-bold {
  font-weight: normal; }

.italic, .em {
  font-style: italic; }

.strike {
  text-decoration: line-through; }

.underline {
  text-decoration: underline; }

.normal {
  font-weight: normal;
  font-style: normal; }

.sans-serif {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; }

.serif {
  font-family: Georgia, "Times New Romain", serif; }

.uppercase {
  text-transform: uppercase; }

.t-right {
  text-align: right; }

.t-center {
  text-align: center; }

.mw400 {
  max-width: 400px; }

.mw500 {
  max-width: 500px; }

.mw600 {
  max-width: 600px; }

.w100 {
  font-weight: 100; }

.w200 {
  font-weight: 200; }

.w300 {
  font-weight: 300; }

.w400 {
  font-weight: 400; }

.w500 {
  font-weight: 500; }

.w600 {
  font-weight: 600; }

.w700 {
  font-weight: 700; }

.w800 {
  font-weight: 800; }

.w900 {
  font-weight: 900; }

.f9 {
  font-size: 9px; }

.f10 {
  font-size: 10px; }

.f11 {
  font-size: 11px; }

.f12 {
  font-size: 12px; }

.f13 {
  font-size: 13px; }

.f14 {
  font-size: 14px; }

.f15 {
  font-size: 15px; }

.f16 {
  font-size: 16px; }

.f17 {
  font-size: 17px; }

.f18 {
  font-size: 18px;
  line-height: 30px; }

.f19 {
  font-size: 19px; }

.f20 {
  font-size: 20px; }

.f30 {
  font-size: 30px; }

.f40 {
  font-size: 40px; }

.f50 {
  font-size: 50px; }

.f60 {
  font-size: 60px; }

.size-small {
  font-size: 75% !important; }

.size-normal {
  font-size: 100% !important; }

.size-medium {
  font-size: 125% !important; }

.size-big, .size-large {
  font-size: 150% !important; }

.size-huge {
  font-size: 200% !important; }

.inherit {
  font: inherit; }

.no-wrap {
  white-space: nowrap; }

.auto-cell-size {
  white-space: nowrap;
  width: 1%; }

.ls-0 {
  letter-spacing: -3px;
  margin-left: 10px;
  margin-right: 10px;
  white-space: nowrap; }

.no-ul, .no-ul:hover, .no-ul a, .no-ul a:hover {
  text-decoration: none; }

/* can go on <a> or on its parent */
/* general helpers */
.color-inherit {
  color: inherit; }

.clear {
  clear: both; }

.clear:after {
  display: table;
  content: " ";
  clear: both; }

.f-left {
  float: left; }

.f-right {
  float: right; }

.f-none {
  float: none; }

.block {
  display: block !important; }

.inline {
  display: inline !important; }

.table {
  display: table; }

.in-block {
  display: inline-block !important;
  *display: inline !important;
  zoom: 1; }

.d-none, .hide, .hidden {
  display: none !important; }

.rel, .relative {
  position: relative !important; }

.abs, .absolute {
  position: absolute; }

.static {
  position: static; }

.fixed {
  position: fixed; }

.t-0 {
  top: 0; }

.b-0 {
  bottom: 0; }

.l-0 {
  left: 0; }

.r-0 {
  right: 0; }

.tb-0 {
  top: 0;
  bottom: 0; }

.lr-0 {
  left: 0;
  right: 0; }

.v-mid, .v-m {
  vertical-align: middle !important; }

.v-top, .v-t {
  vertical-align: top !important; }

.v-bottom, .v-b {
  vertical-align: bottom !important; }

.v-super {
  vertical-align: super !important; }

.full-input input, .full-input select, .full-input textarea {
  width: 100%; }

.normal input, .normal select, .normal textarea, .full-input input[type=checkbox], .full-input input[type=radio] {
  width: auto; }

.no-shadow {
  box-shadow: none !important; }

.no-border-radius {
  border-radius: 0 !important; }

.overflow-x-scroll {
  max-width: 100%;
  overflow-x: auto; }

.overflow-no {
  overflow: hidden; }

.overflow-auto {
  overflow: auto; }

.overflow-scroll {
  overflow: scroll; }

.pointer {
  cursor: pointer; }

.halfwidth {
  width: 50% !important; }

.fullwidth {
  width: 100% !important; }

.fullheight {
  height: 100% !important; }

.nolist {
  list-style: none; }

.text-shadow {
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4); }

.radius3 {
  border-radius: 3px; }

.radius5 {
  border-radius: 5px; }

.radius10 {
  border-radius: 10px; }

.radiushalf {
  border-radius: 50%; }

.text-rgb-2 {
  color: rgba(0, 0, 0, 0.2); }

.text-rgb-3 {
  color: rgba(0, 0, 0, 0.3); }

.text-rgb-4 {
  color: rgba(0, 0, 0, 0.4); }

.text-rgb-5 {
  color: rgba(0, 0, 0, 0.5); }

.mh-100 {
  min-height: 100px; }

.mh-200 {
  min-height: 200px; }

.mh-300 {
  min-height: 300px; }

.margin-auto {
  margin: 0% auto; }

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto; }

.flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: -o-flex;
  display: flex; }

.flex1 {
  -webkit-flex: 1;
  -moz-flex: 1;
  -ms-flex: 1;
  -o-flex: 1;
  flex: 1;
  height: 100%;
  width: 100%; }

.flexrow {
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  -ms-flex-direction: row;
  -o-flex-direction: row;
  flex-direction: row; }

.flex-right {
  -webkit-flex-direction: row-reverse;
  -moz-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  -o-flex-direction: row-reverse;
  flex-direction: row-reverse; }

textarea {
  resize: both; }

textarea.vertical {
  resize: vertical; }

textarea.horizontal {
  resize: vertical; }

textarea.noresize {
  resize: none; }

@media (max-width: 479px) {
  .hide-mobile {
    display: none; } }

@media (min-width: 480px) and (max-width: 839px) {
  .hide-tablet {
    display: none; }
  .p-r-10-tablet {
    padding-right: 10px; }
  .p-l-10-tablet {
    padding-left: 10px; } }

@media (max-width: 839px) {
  .hide-from-tablet {
    display: none; }
  .p-20--small {
    padding: 20px; } }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Material Design Lite */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html {
  color: rgba(0,0,0, 0.87);
  font-size: 1em;
  line-height: 1.4; }

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */
::selection {
  background: #b3d4fc;
  text-shadow: none; }

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical; }

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */
.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Hide visually and from screen readers:
 */
.hidden {
  display: none !important; }

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

/*
 * Hide visually and from screen readers, but maintain layout
 */
.invisible {
  visibility: hidden; }

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before, .dingo-pagination-container:before,
.clearfix:after,
.dingo-pagination-container:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.clearfix:after, .dingo-pagination-container:after {
  clear: both; }

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */ }

@media print, (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */ }

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
@media print {
  *,
  *:before,
  *:after,
  *:first-letter {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster: http://www.sanbeiji.com/archives/953 */
    box-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Remove the unwanted box around FAB buttons */
/* More info: http://goo.gl/IPwKi */
a, .mdl-accordion, .mdl-button, .mdl-card, .mdl-checkbox, .mdl-dropdown-menu,
.mdl-icon-toggle, .mdl-item, .mdl-radio, .mdl-slider, .mdl-switch, .mdl-tabs__tab {
  -webkit-tap-highlight-color: transparent;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0); }

/*
 * Make html take up the entire screen
 * Then set touch-action to avoid touch delay on mobile IE
 */
html {
  width: 100%;
  height: 100%;
  -ms-touch-action: manipulation;
  touch-action: manipulation; }

/*
* Make body take up the entire screen
* Remove body margin so layout containers don't cause extra overflow.
*/
body {
  width: 100%;
  min-height: 100%;
  margin: 0; }

/*
 * Main display reset for IE support.
 * Source: http://weblog.west-wind.com/posts/2015/Jan/12/main-HTML5-Tag-not-working-in-Internet-Explorer-91011
 */
main {
  display: block; }

/*
* Apply no display to elements with the hidden attribute.
* IE 9 and 10 support.
*/
*[hidden] {
  display: none !important; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
html, body {
  font-family: "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px; }

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
  padding: 0; }

/**
  * Styles for HTML elements
  */
h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.02em;
  opacity: 0.54;
  font-size: 0.6em; }

h1 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.02em;
  margin-top: 24px;
  margin-bottom: 24px; }

h2 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 45px;
  font-weight: 400;
  line-height: 48px;
  margin-top: 24px;
  margin-bottom: 24px; }

h3 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 34px;
  font-weight: 400;
  line-height: 40px;
  margin-top: 24px;
  margin-bottom: 24px; }

h4 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  -moz-osx-font-smoothing: grayscale;
  margin-top: 24px;
  margin-bottom: 16px; }

h5 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
  margin-top: 24px;
  margin-bottom: 16px; }

h6 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.04em;
  margin-top: 24px;
  margin-bottom: 16px; }

p {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  margin-bottom: 16px; }

a {
  color: rgb(255,64,129);
  font-weight: 500; }

blockquote {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  position: relative;
  font-size: 24px;
  font-weight: 300;
  font-style: italic;
  line-height: 1.35;
  letter-spacing: 0.08em; }
  blockquote:before {
    position: absolute;
    left: -0.5em;
    content: '“'; }
  blockquote:after {
    content: '”';
    margin-left: -0.05em; }

mark {
  background-color: #f4ff81; }

dt {
  font-weight: 700; }

address {
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  font-style: normal; }

ul, ol {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0; }

/**
 * Class Name Styles
 */
.mdl-typography--display-4 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 112px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.04em; }

.mdl-typography--display-4-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 112px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.04em;
  opacity: 0.54; }

.mdl-typography--display-3 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.02em; }

.mdl-typography--display-3-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.02em;
  opacity: 0.54; }

.mdl-typography--display-2 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 45px;
  font-weight: 400;
  line-height: 48px; }

.mdl-typography--display-2-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 45px;
  font-weight: 400;
  line-height: 48px;
  opacity: 0.54; }

.mdl-typography--display-1 {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 34px;
  font-weight: 400;
  line-height: 40px; }

.mdl-typography--display-1-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 34px;
  font-weight: 400;
  line-height: 40px;
  opacity: 0.54; }

.mdl-typography--headline {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  -moz-osx-font-smoothing: grayscale; }

.mdl-typography--headline-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  -moz-osx-font-smoothing: grayscale;
  opacity: 0.87; }

.mdl-typography--title {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em; }

.mdl-typography--title-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
  opacity: 0.87; }

.mdl-typography--subhead {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.04em; }

.mdl-typography--subhead-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.04em;
  opacity: 0.87; }

.mdl-typography--body-2 {
  font-size: 14px;
  font-weight: bold;
  line-height: 24px;
  letter-spacing: 0; }

.mdl-typography--body-2-color-contrast {
  font-size: 14px;
  font-weight: bold;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--body-1 {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0; }

.mdl-typography--body-1-color-contrast {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--body-2-force-preferred-font {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0; }

.mdl-typography--body-2-force-preferred-font-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--body-1-force-preferred-font {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0; }

.mdl-typography--body-1-force-preferred-font-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--caption {
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0; }

.mdl-typography--caption-force-preferred-font {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0; }

.mdl-typography--caption-color-contrast {
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.54; }

.mdl-typography--caption-force-preferred-font-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.54; }

.mdl-typography--menu {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0; }

.mdl-typography--menu-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--button {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: 0; }

.mdl-typography--button-color-contrast {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--text-left {
  text-align: left; }

.mdl-typography--text-right {
  text-align: right; }

.mdl-typography--text-center {
  text-align: center; }

.mdl-typography--text-justify {
  text-align: justify; }

.mdl-typography--text-nowrap {
  white-space: nowrap; }

.mdl-typography--text-lowercase {
  text-transform: lowercase; }

.mdl-typography--text-uppercase {
  text-transform: uppercase; }

.mdl-typography--text-capitalize {
  text-transform: capitalize; }

.mdl-typography--font-thin {
  font-weight: 200 !important; }

.mdl-typography--font-light {
  font-weight: 300 !important; }

.mdl-typography--font-regular {
  font-weight: 400 !important; }

.mdl-typography--font-medium {
  font-weight: 500 !important; }

.mdl-typography--font-bold {
  font-weight: 700 !important; }

.mdl-typography--font-black {
  font-weight: 900 !important; }

.material-icons, .dingo-menu-container > ul > li > a::before, .dingo-menu-container > ul > li > a::after, [dingo-icon-name] > a::before, [dingo-icon-name] > a::after, [dingo-icon-name] > span::before, [dingo-icon-name] > span::after {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  word-wrap: normal;
  font-feature-settings: 'liga';
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-color-text--red {
  color: rgb(244,67,54) !important; }

.mdl-color--red {
  background-color: rgb(244,67,54) !important; }

.mdl-color-text--red-50 {
  color: rgb(255,235,238) !important; }

.mdl-color--red-50 {
  background-color: rgb(255,235,238) !important; }

.mdl-color-text--red-100 {
  color: rgb(255,205,210) !important; }

.mdl-color--red-100 {
  background-color: rgb(255,205,210) !important; }

.mdl-color-text--red-200 {
  color: rgb(239,154,154) !important; }

.mdl-color--red-200 {
  background-color: rgb(239,154,154) !important; }

.mdl-color-text--red-300 {
  color: rgb(229,115,115) !important; }

.mdl-color--red-300 {
  background-color: rgb(229,115,115) !important; }

.mdl-color-text--red-400 {
  color: rgb(239,83,80) !important; }

.mdl-color--red-400 {
  background-color: rgb(239,83,80) !important; }

.mdl-color-text--red-500 {
  color: rgb(244,67,54) !important; }

.mdl-color--red-500 {
  background-color: rgb(244,67,54) !important; }

.mdl-color-text--red-600 {
  color: rgb(229,57,53) !important; }

.mdl-color--red-600 {
  background-color: rgb(229,57,53) !important; }

.mdl-color-text--red-700 {
  color: rgb(211,47,47) !important; }

.mdl-color--red-700 {
  background-color: rgb(211,47,47) !important; }

.mdl-color-text--red-800 {
  color: rgb(198,40,40) !important; }

.mdl-color--red-800 {
  background-color: rgb(198,40,40) !important; }

.mdl-color-text--red-900 {
  color: rgb(183,28,28) !important; }

.mdl-color--red-900 {
  background-color: rgb(183,28,28) !important; }

.mdl-color-text--red-A100 {
  color: rgb(255,138,128) !important; }

.mdl-color--red-A100 {
  background-color: rgb(255,138,128) !important; }

.mdl-color-text--red-A200 {
  color: rgb(255,82,82) !important; }

.mdl-color--red-A200 {
  background-color: rgb(255,82,82) !important; }

.mdl-color-text--red-A400 {
  color: rgb(255,23,68) !important; }

.mdl-color--red-A400 {
  background-color: rgb(255,23,68) !important; }

.mdl-color-text--red-A700 {
  color: rgb(213,0,0) !important; }

.mdl-color--red-A700 {
  background-color: rgb(213,0,0) !important; }

.mdl-color-text--pink {
  color: rgb(233,30,99) !important; }

.mdl-color--pink {
  background-color: rgb(233,30,99) !important; }

.mdl-color-text--pink-50 {
  color: rgb(252,228,236) !important; }

.mdl-color--pink-50 {
  background-color: rgb(252,228,236) !important; }

.mdl-color-text--pink-100 {
  color: rgb(248,187,208) !important; }

.mdl-color--pink-100 {
  background-color: rgb(248,187,208) !important; }

.mdl-color-text--pink-200 {
  color: rgb(244,143,177) !important; }

.mdl-color--pink-200 {
  background-color: rgb(244,143,177) !important; }

.mdl-color-text--pink-300 {
  color: rgb(240,98,146) !important; }

.mdl-color--pink-300 {
  background-color: rgb(240,98,146) !important; }

.mdl-color-text--pink-400 {
  color: rgb(236,64,122) !important; }

.mdl-color--pink-400 {
  background-color: rgb(236,64,122) !important; }

.mdl-color-text--pink-500 {
  color: rgb(233,30,99) !important; }

.mdl-color--pink-500 {
  background-color: rgb(233,30,99) !important; }

.mdl-color-text--pink-600 {
  color: rgb(216,27,96) !important; }

.mdl-color--pink-600 {
  background-color: rgb(216,27,96) !important; }

.mdl-color-text--pink-700 {
  color: rgb(194,24,91) !important; }

.mdl-color--pink-700 {
  background-color: rgb(194,24,91) !important; }

.mdl-color-text--pink-800 {
  color: rgb(173,20,87) !important; }

.mdl-color--pink-800 {
  background-color: rgb(173,20,87) !important; }

.mdl-color-text--pink-900 {
  color: rgb(136,14,79) !important; }

.mdl-color--pink-900 {
  background-color: rgb(136,14,79) !important; }

.mdl-color-text--pink-A100 {
  color: rgb(255,128,171) !important; }

.mdl-color--pink-A100 {
  background-color: rgb(255,128,171) !important; }

.mdl-color-text--pink-A200 {
  color: rgb(255,64,129) !important; }

.mdl-color--pink-A200 {
  background-color: rgb(255,64,129) !important; }

.mdl-color-text--pink-A400 {
  color: rgb(245,0,87) !important; }

.mdl-color--pink-A400 {
  background-color: rgb(245,0,87) !important; }

.mdl-color-text--pink-A700 {
  color: rgb(197,17,98) !important; }

.mdl-color--pink-A700 {
  background-color: rgb(197,17,98) !important; }

.mdl-color-text--purple {
  color: rgb(156,39,176) !important; }

.mdl-color--purple {
  background-color: rgb(156,39,176) !important; }

.mdl-color-text--purple-50 {
  color: rgb(243,229,245) !important; }

.mdl-color--purple-50 {
  background-color: rgb(243,229,245) !important; }

.mdl-color-text--purple-100 {
  color: rgb(225,190,231) !important; }

.mdl-color--purple-100 {
  background-color: rgb(225,190,231) !important; }

.mdl-color-text--purple-200 {
  color: rgb(206,147,216) !important; }

.mdl-color--purple-200 {
  background-color: rgb(206,147,216) !important; }

.mdl-color-text--purple-300 {
  color: rgb(186,104,200) !important; }

.mdl-color--purple-300 {
  background-color: rgb(186,104,200) !important; }

.mdl-color-text--purple-400 {
  color: rgb(171,71,188) !important; }

.mdl-color--purple-400 {
  background-color: rgb(171,71,188) !important; }

.mdl-color-text--purple-500 {
  color: rgb(156,39,176) !important; }

.mdl-color--purple-500 {
  background-color: rgb(156,39,176) !important; }

.mdl-color-text--purple-600 {
  color: rgb(142,36,170) !important; }

.mdl-color--purple-600 {
  background-color: rgb(142,36,170) !important; }

.mdl-color-text--purple-700 {
  color: rgb(123,31,162) !important; }

.mdl-color--purple-700 {
  background-color: rgb(123,31,162) !important; }

.mdl-color-text--purple-800 {
  color: rgb(106,27,154) !important; }

.mdl-color--purple-800 {
  background-color: rgb(106,27,154) !important; }

.mdl-color-text--purple-900 {
  color: rgb(74,20,140) !important; }

.mdl-color--purple-900 {
  background-color: rgb(74,20,140) !important; }

.mdl-color-text--purple-A100 {
  color: rgb(234,128,252) !important; }

.mdl-color--purple-A100 {
  background-color: rgb(234,128,252) !important; }

.mdl-color-text--purple-A200 {
  color: rgb(224,64,251) !important; }

.mdl-color--purple-A200 {
  background-color: rgb(224,64,251) !important; }

.mdl-color-text--purple-A400 {
  color: rgb(213,0,249) !important; }

.mdl-color--purple-A400 {
  background-color: rgb(213,0,249) !important; }

.mdl-color-text--purple-A700 {
  color: rgb(170,0,255) !important; }

.mdl-color--purple-A700 {
  background-color: rgb(170,0,255) !important; }

.mdl-color-text--deep-purple {
  color: rgb(103,58,183) !important; }

.mdl-color--deep-purple {
  background-color: rgb(103,58,183) !important; }

.mdl-color-text--deep-purple-50 {
  color: rgb(237,231,246) !important; }

.mdl-color--deep-purple-50 {
  background-color: rgb(237,231,246) !important; }

.mdl-color-text--deep-purple-100 {
  color: rgb(209,196,233) !important; }

.mdl-color--deep-purple-100 {
  background-color: rgb(209,196,233) !important; }

.mdl-color-text--deep-purple-200 {
  color: rgb(179,157,219) !important; }

.mdl-color--deep-purple-200 {
  background-color: rgb(179,157,219) !important; }

.mdl-color-text--deep-purple-300 {
  color: rgb(149,117,205) !important; }

.mdl-color--deep-purple-300 {
  background-color: rgb(149,117,205) !important; }

.mdl-color-text--deep-purple-400 {
  color: rgb(126,87,194) !important; }

.mdl-color--deep-purple-400 {
  background-color: rgb(126,87,194) !important; }

.mdl-color-text--deep-purple-500 {
  color: rgb(103,58,183) !important; }

.mdl-color--deep-purple-500 {
  background-color: rgb(103,58,183) !important; }

.mdl-color-text--deep-purple-600 {
  color: rgb(94,53,177) !important; }

.mdl-color--deep-purple-600 {
  background-color: rgb(94,53,177) !important; }

.mdl-color-text--deep-purple-700 {
  color: rgb(81,45,168) !important; }

.mdl-color--deep-purple-700 {
  background-color: rgb(81,45,168) !important; }

.mdl-color-text--deep-purple-800 {
  color: rgb(69,39,160) !important; }

.mdl-color--deep-purple-800 {
  background-color: rgb(69,39,160) !important; }

.mdl-color-text--deep-purple-900 {
  color: rgb(49,27,146) !important; }

.mdl-color--deep-purple-900 {
  background-color: rgb(49,27,146) !important; }

.mdl-color-text--deep-purple-A100 {
  color: rgb(179,136,255) !important; }

.mdl-color--deep-purple-A100 {
  background-color: rgb(179,136,255) !important; }

.mdl-color-text--deep-purple-A200 {
  color: rgb(124,77,255) !important; }

.mdl-color--deep-purple-A200 {
  background-color: rgb(124,77,255) !important; }

.mdl-color-text--deep-purple-A400 {
  color: rgb(101,31,255) !important; }

.mdl-color--deep-purple-A400 {
  background-color: rgb(101,31,255) !important; }

.mdl-color-text--deep-purple-A700 {
  color: rgb(98,0,234) !important; }

.mdl-color--deep-purple-A700 {
  background-color: rgb(98,0,234) !important; }

.mdl-color-text--indigo {
  color: rgb(63,81,181) !important; }

.mdl-color--indigo {
  background-color: rgb(63,81,181) !important; }

.mdl-color-text--indigo-50 {
  color: rgb(232,234,246) !important; }

.mdl-color--indigo-50 {
  background-color: rgb(232,234,246) !important; }

.mdl-color-text--indigo-100 {
  color: rgb(197,202,233) !important; }

.mdl-color--indigo-100 {
  background-color: rgb(197,202,233) !important; }

.mdl-color-text--indigo-200 {
  color: rgb(159,168,218) !important; }

.mdl-color--indigo-200 {
  background-color: rgb(159,168,218) !important; }

.mdl-color-text--indigo-300 {
  color: rgb(121,134,203) !important; }

.mdl-color--indigo-300 {
  background-color: rgb(121,134,203) !important; }

.mdl-color-text--indigo-400 {
  color: rgb(92,107,192) !important; }

.mdl-color--indigo-400 {
  background-color: rgb(92,107,192) !important; }

.mdl-color-text--indigo-500 {
  color: rgb(63,81,181) !important; }

.mdl-color--indigo-500 {
  background-color: rgb(63,81,181) !important; }

.mdl-color-text--indigo-600 {
  color: rgb(57,73,171) !important; }

.mdl-color--indigo-600 {
  background-color: rgb(57,73,171) !important; }

.mdl-color-text--indigo-700 {
  color: rgb(48,63,159) !important; }

.mdl-color--indigo-700 {
  background-color: rgb(48,63,159) !important; }

.mdl-color-text--indigo-800 {
  color: rgb(40,53,147) !important; }

.mdl-color--indigo-800 {
  background-color: rgb(40,53,147) !important; }

.mdl-color-text--indigo-900 {
  color: rgb(26,35,126) !important; }

.mdl-color--indigo-900 {
  background-color: rgb(26,35,126) !important; }

.mdl-color-text--indigo-A100 {
  color: rgb(140,158,255) !important; }

.mdl-color--indigo-A100 {
  background-color: rgb(140,158,255) !important; }

.mdl-color-text--indigo-A200 {
  color: rgb(83,109,254) !important; }

.mdl-color--indigo-A200 {
  background-color: rgb(83,109,254) !important; }

.mdl-color-text--indigo-A400 {
  color: rgb(61,90,254) !important; }

.mdl-color--indigo-A400 {
  background-color: rgb(61,90,254) !important; }

.mdl-color-text--indigo-A700 {
  color: rgb(48,79,254) !important; }

.mdl-color--indigo-A700 {
  background-color: rgb(48,79,254) !important; }

.mdl-color-text--blue {
  color: rgb(33,150,243) !important; }

.mdl-color--blue {
  background-color: rgb(33,150,243) !important; }

.mdl-color-text--blue-50 {
  color: rgb(227,242,253) !important; }

.mdl-color--blue-50 {
  background-color: rgb(227,242,253) !important; }

.mdl-color-text--blue-100 {
  color: rgb(187,222,251) !important; }

.mdl-color--blue-100 {
  background-color: rgb(187,222,251) !important; }

.mdl-color-text--blue-200 {
  color: rgb(144,202,249) !important; }

.mdl-color--blue-200 {
  background-color: rgb(144,202,249) !important; }

.mdl-color-text--blue-300 {
  color: rgb(100,181,246) !important; }

.mdl-color--blue-300 {
  background-color: rgb(100,181,246) !important; }

.mdl-color-text--blue-400 {
  color: rgb(66,165,245) !important; }

.mdl-color--blue-400 {
  background-color: rgb(66,165,245) !important; }

.mdl-color-text--blue-500 {
  color: rgb(33,150,243) !important; }

.mdl-color--blue-500 {
  background-color: rgb(33,150,243) !important; }

.mdl-color-text--blue-600 {
  color: rgb(30,136,229) !important; }

.mdl-color--blue-600 {
  background-color: rgb(30,136,229) !important; }

.mdl-color-text--blue-700 {
  color: rgb(25,118,210) !important; }

.mdl-color--blue-700 {
  background-color: rgb(25,118,210) !important; }

.mdl-color-text--blue-800 {
  color: rgb(21,101,192) !important; }

.mdl-color--blue-800 {
  background-color: rgb(21,101,192) !important; }

.mdl-color-text--blue-900 {
  color: rgb(13,71,161) !important; }

.mdl-color--blue-900 {
  background-color: rgb(13,71,161) !important; }

.mdl-color-text--blue-A100 {
  color: rgb(130,177,255) !important; }

.mdl-color--blue-A100 {
  background-color: rgb(130,177,255) !important; }

.mdl-color-text--blue-A200 {
  color: rgb(68,138,255) !important; }

.mdl-color--blue-A200 {
  background-color: rgb(68,138,255) !important; }

.mdl-color-text--blue-A400 {
  color: rgb(41,121,255) !important; }

.mdl-color--blue-A400 {
  background-color: rgb(41,121,255) !important; }

.mdl-color-text--blue-A700 {
  color: rgb(41,98,255) !important; }

.mdl-color--blue-A700 {
  background-color: rgb(41,98,255) !important; }

.mdl-color-text--light-blue {
  color: rgb(3,169,244) !important; }

.mdl-color--light-blue {
  background-color: rgb(3,169,244) !important; }

.mdl-color-text--light-blue-50 {
  color: rgb(225,245,254) !important; }

.mdl-color--light-blue-50 {
  background-color: rgb(225,245,254) !important; }

.mdl-color-text--light-blue-100 {
  color: rgb(179,229,252) !important; }

.mdl-color--light-blue-100 {
  background-color: rgb(179,229,252) !important; }

.mdl-color-text--light-blue-200 {
  color: rgb(129,212,250) !important; }

.mdl-color--light-blue-200 {
  background-color: rgb(129,212,250) !important; }

.mdl-color-text--light-blue-300 {
  color: rgb(79,195,247) !important; }

.mdl-color--light-blue-300 {
  background-color: rgb(79,195,247) !important; }

.mdl-color-text--light-blue-400 {
  color: rgb(41,182,246) !important; }

.mdl-color--light-blue-400 {
  background-color: rgb(41,182,246) !important; }

.mdl-color-text--light-blue-500 {
  color: rgb(3,169,244) !important; }

.mdl-color--light-blue-500 {
  background-color: rgb(3,169,244) !important; }

.mdl-color-text--light-blue-600 {
  color: rgb(3,155,229) !important; }

.mdl-color--light-blue-600 {
  background-color: rgb(3,155,229) !important; }

.mdl-color-text--light-blue-700 {
  color: rgb(2,136,209) !important; }

.mdl-color--light-blue-700 {
  background-color: rgb(2,136,209) !important; }

.mdl-color-text--light-blue-800 {
  color: rgb(2,119,189) !important; }

.mdl-color--light-blue-800 {
  background-color: rgb(2,119,189) !important; }

.mdl-color-text--light-blue-900 {
  color: rgb(1,87,155) !important; }

.mdl-color--light-blue-900 {
  background-color: rgb(1,87,155) !important; }

.mdl-color-text--light-blue-A100 {
  color: rgb(128,216,255) !important; }

.mdl-color--light-blue-A100 {
  background-color: rgb(128,216,255) !important; }

.mdl-color-text--light-blue-A200 {
  color: rgb(64,196,255) !important; }

.mdl-color--light-blue-A200 {
  background-color: rgb(64,196,255) !important; }

.mdl-color-text--light-blue-A400 {
  color: rgb(0,176,255) !important; }

.mdl-color--light-blue-A400 {
  background-color: rgb(0,176,255) !important; }

.mdl-color-text--light-blue-A700 {
  color: rgb(0,145,234) !important; }

.mdl-color--light-blue-A700 {
  background-color: rgb(0,145,234) !important; }

.mdl-color-text--cyan {
  color: rgb(0,188,212) !important; }

.mdl-color--cyan {
  background-color: rgb(0,188,212) !important; }

.mdl-color-text--cyan-50 {
  color: rgb(224,247,250) !important; }

.mdl-color--cyan-50 {
  background-color: rgb(224,247,250) !important; }

.mdl-color-text--cyan-100 {
  color: rgb(178,235,242) !important; }

.mdl-color--cyan-100 {
  background-color: rgb(178,235,242) !important; }

.mdl-color-text--cyan-200 {
  color: rgb(128,222,234) !important; }

.mdl-color--cyan-200 {
  background-color: rgb(128,222,234) !important; }

.mdl-color-text--cyan-300 {
  color: rgb(77,208,225) !important; }

.mdl-color--cyan-300 {
  background-color: rgb(77,208,225) !important; }

.mdl-color-text--cyan-400 {
  color: rgb(38,198,218) !important; }

.mdl-color--cyan-400 {
  background-color: rgb(38,198,218) !important; }

.mdl-color-text--cyan-500 {
  color: rgb(0,188,212) !important; }

.mdl-color--cyan-500 {
  background-color: rgb(0,188,212) !important; }

.mdl-color-text--cyan-600 {
  color: rgb(0,172,193) !important; }

.mdl-color--cyan-600 {
  background-color: rgb(0,172,193) !important; }

.mdl-color-text--cyan-700 {
  color: rgb(0,151,167) !important; }

.mdl-color--cyan-700 {
  background-color: rgb(0,151,167) !important; }

.mdl-color-text--cyan-800 {
  color: rgb(0,131,143) !important; }

.mdl-color--cyan-800 {
  background-color: rgb(0,131,143) !important; }

.mdl-color-text--cyan-900 {
  color: rgb(0,96,100) !important; }

.mdl-color--cyan-900 {
  background-color: rgb(0,96,100) !important; }

.mdl-color-text--cyan-A100 {
  color: rgb(132,255,255) !important; }

.mdl-color--cyan-A100 {
  background-color: rgb(132,255,255) !important; }

.mdl-color-text--cyan-A200 {
  color: rgb(24,255,255) !important; }

.mdl-color--cyan-A200 {
  background-color: rgb(24,255,255) !important; }

.mdl-color-text--cyan-A400 {
  color: rgb(0,229,255) !important; }

.mdl-color--cyan-A400 {
  background-color: rgb(0,229,255) !important; }

.mdl-color-text--cyan-A700 {
  color: rgb(0,184,212) !important; }

.mdl-color--cyan-A700 {
  background-color: rgb(0,184,212) !important; }

.mdl-color-text--teal {
  color: rgb(0,150,136) !important; }

.mdl-color--teal {
  background-color: rgb(0,150,136) !important; }

.mdl-color-text--teal-50 {
  color: rgb(224,242,241) !important; }

.mdl-color--teal-50 {
  background-color: rgb(224,242,241) !important; }

.mdl-color-text--teal-100 {
  color: rgb(178,223,219) !important; }

.mdl-color--teal-100 {
  background-color: rgb(178,223,219) !important; }

.mdl-color-text--teal-200 {
  color: rgb(128,203,196) !important; }

.mdl-color--teal-200 {
  background-color: rgb(128,203,196) !important; }

.mdl-color-text--teal-300 {
  color: rgb(77,182,172) !important; }

.mdl-color--teal-300 {
  background-color: rgb(77,182,172) !important; }

.mdl-color-text--teal-400 {
  color: rgb(38,166,154) !important; }

.mdl-color--teal-400 {
  background-color: rgb(38,166,154) !important; }

.mdl-color-text--teal-500 {
  color: rgb(0,150,136) !important; }

.mdl-color--teal-500 {
  background-color: rgb(0,150,136) !important; }

.mdl-color-text--teal-600 {
  color: rgb(0,137,123) !important; }

.mdl-color--teal-600 {
  background-color: rgb(0,137,123) !important; }

.mdl-color-text--teal-700 {
  color: rgb(0,121,107) !important; }

.mdl-color--teal-700 {
  background-color: rgb(0,121,107) !important; }

.mdl-color-text--teal-800 {
  color: rgb(0,105,92) !important; }

.mdl-color--teal-800 {
  background-color: rgb(0,105,92) !important; }

.mdl-color-text--teal-900 {
  color: rgb(0,77,64) !important; }

.mdl-color--teal-900 {
  background-color: rgb(0,77,64) !important; }

.mdl-color-text--teal-A100 {
  color: rgb(167,255,235) !important; }

.mdl-color--teal-A100 {
  background-color: rgb(167,255,235) !important; }

.mdl-color-text--teal-A200 {
  color: rgb(100,255,218) !important; }

.mdl-color--teal-A200 {
  background-color: rgb(100,255,218) !important; }

.mdl-color-text--teal-A400 {
  color: rgb(29,233,182) !important; }

.mdl-color--teal-A400 {
  background-color: rgb(29,233,182) !important; }

.mdl-color-text--teal-A700 {
  color: rgb(0,191,165) !important; }

.mdl-color--teal-A700 {
  background-color: rgb(0,191,165) !important; }

.mdl-color-text--green {
  color: rgb(76,175,80) !important; }

.mdl-color--green {
  background-color: rgb(76,175,80) !important; }

.mdl-color-text--green-50 {
  color: rgb(232,245,233) !important; }

.mdl-color--green-50 {
  background-color: rgb(232,245,233) !important; }

.mdl-color-text--green-100 {
  color: rgb(200,230,201) !important; }

.mdl-color--green-100 {
  background-color: rgb(200,230,201) !important; }

.mdl-color-text--green-200 {
  color: rgb(165,214,167) !important; }

.mdl-color--green-200 {
  background-color: rgb(165,214,167) !important; }

.mdl-color-text--green-300 {
  color: rgb(129,199,132) !important; }

.mdl-color--green-300 {
  background-color: rgb(129,199,132) !important; }

.mdl-color-text--green-400 {
  color: rgb(102,187,106) !important; }

.mdl-color--green-400 {
  background-color: rgb(102,187,106) !important; }

.mdl-color-text--green-500 {
  color: rgb(76,175,80) !important; }

.mdl-color--green-500 {
  background-color: rgb(76,175,80) !important; }

.mdl-color-text--green-600 {
  color: rgb(67,160,71) !important; }

.mdl-color--green-600 {
  background-color: rgb(67,160,71) !important; }

.mdl-color-text--green-700 {
  color: rgb(56,142,60) !important; }

.mdl-color--green-700 {
  background-color: rgb(56,142,60) !important; }

.mdl-color-text--green-800 {
  color: rgb(46,125,50) !important; }

.mdl-color--green-800 {
  background-color: rgb(46,125,50) !important; }

.mdl-color-text--green-900 {
  color: rgb(27,94,32) !important; }

.mdl-color--green-900 {
  background-color: rgb(27,94,32) !important; }

.mdl-color-text--green-A100 {
  color: rgb(185,246,202) !important; }

.mdl-color--green-A100 {
  background-color: rgb(185,246,202) !important; }

.mdl-color-text--green-A200 {
  color: rgb(105,240,174) !important; }

.mdl-color--green-A200 {
  background-color: rgb(105,240,174) !important; }

.mdl-color-text--green-A400 {
  color: rgb(0,230,118) !important; }

.mdl-color--green-A400 {
  background-color: rgb(0,230,118) !important; }

.mdl-color-text--green-A700 {
  color: rgb(0,200,83) !important; }

.mdl-color--green-A700 {
  background-color: rgb(0,200,83) !important; }

.mdl-color-text--light-green {
  color: rgb(139,195,74) !important; }

.mdl-color--light-green {
  background-color: rgb(139,195,74) !important; }

.mdl-color-text--light-green-50 {
  color: rgb(241,248,233) !important; }

.mdl-color--light-green-50 {
  background-color: rgb(241,248,233) !important; }

.mdl-color-text--light-green-100 {
  color: rgb(220,237,200) !important; }

.mdl-color--light-green-100 {
  background-color: rgb(220,237,200) !important; }

.mdl-color-text--light-green-200 {
  color: rgb(197,225,165) !important; }

.mdl-color--light-green-200 {
  background-color: rgb(197,225,165) !important; }

.mdl-color-text--light-green-300 {
  color: rgb(174,213,129) !important; }

.mdl-color--light-green-300 {
  background-color: rgb(174,213,129) !important; }

.mdl-color-text--light-green-400 {
  color: rgb(156,204,101) !important; }

.mdl-color--light-green-400 {
  background-color: rgb(156,204,101) !important; }

.mdl-color-text--light-green-500 {
  color: rgb(139,195,74) !important; }

.mdl-color--light-green-500 {
  background-color: rgb(139,195,74) !important; }

.mdl-color-text--light-green-600 {
  color: rgb(124,179,66) !important; }

.mdl-color--light-green-600 {
  background-color: rgb(124,179,66) !important; }

.mdl-color-text--light-green-700 {
  color: rgb(104,159,56) !important; }

.mdl-color--light-green-700 {
  background-color: rgb(104,159,56) !important; }

.mdl-color-text--light-green-800 {
  color: rgb(85,139,47) !important; }

.mdl-color--light-green-800 {
  background-color: rgb(85,139,47) !important; }

.mdl-color-text--light-green-900 {
  color: rgb(51,105,30) !important; }

.mdl-color--light-green-900 {
  background-color: rgb(51,105,30) !important; }

.mdl-color-text--light-green-A100 {
  color: rgb(204,255,144) !important; }

.mdl-color--light-green-A100 {
  background-color: rgb(204,255,144) !important; }

.mdl-color-text--light-green-A200 {
  color: rgb(178,255,89) !important; }

.mdl-color--light-green-A200 {
  background-color: rgb(178,255,89) !important; }

.mdl-color-text--light-green-A400 {
  color: rgb(118,255,3) !important; }

.mdl-color--light-green-A400 {
  background-color: rgb(118,255,3) !important; }

.mdl-color-text--light-green-A700 {
  color: rgb(100,221,23) !important; }

.mdl-color--light-green-A700 {
  background-color: rgb(100,221,23) !important; }

.mdl-color-text--lime {
  color: rgb(205,220,57) !important; }

.mdl-color--lime {
  background-color: rgb(205,220,57) !important; }

.mdl-color-text--lime-50 {
  color: rgb(249,251,231) !important; }

.mdl-color--lime-50 {
  background-color: rgb(249,251,231) !important; }

.mdl-color-text--lime-100 {
  color: rgb(240,244,195) !important; }

.mdl-color--lime-100 {
  background-color: rgb(240,244,195) !important; }

.mdl-color-text--lime-200 {
  color: rgb(230,238,156) !important; }

.mdl-color--lime-200 {
  background-color: rgb(230,238,156) !important; }

.mdl-color-text--lime-300 {
  color: rgb(220,231,117) !important; }

.mdl-color--lime-300 {
  background-color: rgb(220,231,117) !important; }

.mdl-color-text--lime-400 {
  color: rgb(212,225,87) !important; }

.mdl-color--lime-400 {
  background-color: rgb(212,225,87) !important; }

.mdl-color-text--lime-500 {
  color: rgb(205,220,57) !important; }

.mdl-color--lime-500 {
  background-color: rgb(205,220,57) !important; }

.mdl-color-text--lime-600 {
  color: rgb(192,202,51) !important; }

.mdl-color--lime-600 {
  background-color: rgb(192,202,51) !important; }

.mdl-color-text--lime-700 {
  color: rgb(175,180,43) !important; }

.mdl-color--lime-700 {
  background-color: rgb(175,180,43) !important; }

.mdl-color-text--lime-800 {
  color: rgb(158,157,36) !important; }

.mdl-color--lime-800 {
  background-color: rgb(158,157,36) !important; }

.mdl-color-text--lime-900 {
  color: rgb(130,119,23) !important; }

.mdl-color--lime-900 {
  background-color: rgb(130,119,23) !important; }

.mdl-color-text--lime-A100 {
  color: rgb(244,255,129) !important; }

.mdl-color--lime-A100 {
  background-color: rgb(244,255,129) !important; }

.mdl-color-text--lime-A200 {
  color: rgb(238,255,65) !important; }

.mdl-color--lime-A200 {
  background-color: rgb(238,255,65) !important; }

.mdl-color-text--lime-A400 {
  color: rgb(198,255,0) !important; }

.mdl-color--lime-A400 {
  background-color: rgb(198,255,0) !important; }

.mdl-color-text--lime-A700 {
  color: rgb(174,234,0) !important; }

.mdl-color--lime-A700 {
  background-color: rgb(174,234,0) !important; }

.mdl-color-text--yellow {
  color: rgb(255,235,59) !important; }

.mdl-color--yellow {
  background-color: rgb(255,235,59) !important; }

.mdl-color-text--yellow-50 {
  color: rgb(255,253,231) !important; }

.mdl-color--yellow-50 {
  background-color: rgb(255,253,231) !important; }

.mdl-color-text--yellow-100 {
  color: rgb(255,249,196) !important; }

.mdl-color--yellow-100 {
  background-color: rgb(255,249,196) !important; }

.mdl-color-text--yellow-200 {
  color: rgb(255,245,157) !important; }

.mdl-color--yellow-200 {
  background-color: rgb(255,245,157) !important; }

.mdl-color-text--yellow-300 {
  color: rgb(255,241,118) !important; }

.mdl-color--yellow-300 {
  background-color: rgb(255,241,118) !important; }

.mdl-color-text--yellow-400 {
  color: rgb(255,238,88) !important; }

.mdl-color--yellow-400 {
  background-color: rgb(255,238,88) !important; }

.mdl-color-text--yellow-500 {
  color: rgb(255,235,59) !important; }

.mdl-color--yellow-500 {
  background-color: rgb(255,235,59) !important; }

.mdl-color-text--yellow-600 {
  color: rgb(253,216,53) !important; }

.mdl-color--yellow-600 {
  background-color: rgb(253,216,53) !important; }

.mdl-color-text--yellow-700 {
  color: rgb(251,192,45) !important; }

.mdl-color--yellow-700 {
  background-color: rgb(251,192,45) !important; }

.mdl-color-text--yellow-800 {
  color: rgb(249,168,37) !important; }

.mdl-color--yellow-800 {
  background-color: rgb(249,168,37) !important; }

.mdl-color-text--yellow-900 {
  color: rgb(245,127,23) !important; }

.mdl-color--yellow-900 {
  background-color: rgb(245,127,23) !important; }

.mdl-color-text--yellow-A100 {
  color: rgb(255,255,141) !important; }

.mdl-color--yellow-A100 {
  background-color: rgb(255,255,141) !important; }

.mdl-color-text--yellow-A200 {
  color: rgb(255,255,0) !important; }

.mdl-color--yellow-A200 {
  background-color: rgb(255,255,0) !important; }

.mdl-color-text--yellow-A400 {
  color: rgb(255,234,0) !important; }

.mdl-color--yellow-A400 {
  background-color: rgb(255,234,0) !important; }

.mdl-color-text--yellow-A700 {
  color: rgb(255,214,0) !important; }

.mdl-color--yellow-A700 {
  background-color: rgb(255,214,0) !important; }

.mdl-color-text--amber {
  color: rgb(255,193,7) !important; }

.mdl-color--amber {
  background-color: rgb(255,193,7) !important; }

.mdl-color-text--amber-50 {
  color: rgb(255,248,225) !important; }

.mdl-color--amber-50 {
  background-color: rgb(255,248,225) !important; }

.mdl-color-text--amber-100 {
  color: rgb(255,236,179) !important; }

.mdl-color--amber-100 {
  background-color: rgb(255,236,179) !important; }

.mdl-color-text--amber-200 {
  color: rgb(255,224,130) !important; }

.mdl-color--amber-200 {
  background-color: rgb(255,224,130) !important; }

.mdl-color-text--amber-300 {
  color: rgb(255,213,79) !important; }

.mdl-color--amber-300 {
  background-color: rgb(255,213,79) !important; }

.mdl-color-text--amber-400 {
  color: rgb(255,202,40) !important; }

.mdl-color--amber-400 {
  background-color: rgb(255,202,40) !important; }

.mdl-color-text--amber-500 {
  color: rgb(255,193,7) !important; }

.mdl-color--amber-500 {
  background-color: rgb(255,193,7) !important; }

.mdl-color-text--amber-600 {
  color: rgb(255,179,0) !important; }

.mdl-color--amber-600 {
  background-color: rgb(255,179,0) !important; }

.mdl-color-text--amber-700 {
  color: rgb(255,160,0) !important; }

.mdl-color--amber-700 {
  background-color: rgb(255,160,0) !important; }

.mdl-color-text--amber-800 {
  color: rgb(255,143,0) !important; }

.mdl-color--amber-800 {
  background-color: rgb(255,143,0) !important; }

.mdl-color-text--amber-900 {
  color: rgb(255,111,0) !important; }

.mdl-color--amber-900 {
  background-color: rgb(255,111,0) !important; }

.mdl-color-text--amber-A100 {
  color: rgb(255,229,127) !important; }

.mdl-color--amber-A100 {
  background-color: rgb(255,229,127) !important; }

.mdl-color-text--amber-A200 {
  color: rgb(255,215,64) !important; }

.mdl-color--amber-A200 {
  background-color: rgb(255,215,64) !important; }

.mdl-color-text--amber-A400 {
  color: rgb(255,196,0) !important; }

.mdl-color--amber-A400 {
  background-color: rgb(255,196,0) !important; }

.mdl-color-text--amber-A700 {
  color: rgb(255,171,0) !important; }

.mdl-color--amber-A700 {
  background-color: rgb(255,171,0) !important; }

.mdl-color-text--orange {
  color: rgb(255,152,0) !important; }

.mdl-color--orange {
  background-color: rgb(255,152,0) !important; }

.mdl-color-text--orange-50 {
  color: rgb(255,243,224) !important; }

.mdl-color--orange-50 {
  background-color: rgb(255,243,224) !important; }

.mdl-color-text--orange-100 {
  color: rgb(255,224,178) !important; }

.mdl-color--orange-100 {
  background-color: rgb(255,224,178) !important; }

.mdl-color-text--orange-200 {
  color: rgb(255,204,128) !important; }

.mdl-color--orange-200 {
  background-color: rgb(255,204,128) !important; }

.mdl-color-text--orange-300 {
  color: rgb(255,183,77) !important; }

.mdl-color--orange-300 {
  background-color: rgb(255,183,77) !important; }

.mdl-color-text--orange-400 {
  color: rgb(255,167,38) !important; }

.mdl-color--orange-400 {
  background-color: rgb(255,167,38) !important; }

.mdl-color-text--orange-500 {
  color: rgb(255,152,0) !important; }

.mdl-color--orange-500 {
  background-color: rgb(255,152,0) !important; }

.mdl-color-text--orange-600 {
  color: rgb(251,140,0) !important; }

.mdl-color--orange-600 {
  background-color: rgb(251,140,0) !important; }

.mdl-color-text--orange-700 {
  color: rgb(245,124,0) !important; }

.mdl-color--orange-700 {
  background-color: rgb(245,124,0) !important; }

.mdl-color-text--orange-800 {
  color: rgb(239,108,0) !important; }

.mdl-color--orange-800 {
  background-color: rgb(239,108,0) !important; }

.mdl-color-text--orange-900 {
  color: rgb(230,81,0) !important; }

.mdl-color--orange-900 {
  background-color: rgb(230,81,0) !important; }

.mdl-color-text--orange-A100 {
  color: rgb(255,209,128) !important; }

.mdl-color--orange-A100 {
  background-color: rgb(255,209,128) !important; }

.mdl-color-text--orange-A200 {
  color: rgb(255,171,64) !important; }

.mdl-color--orange-A200 {
  background-color: rgb(255,171,64) !important; }

.mdl-color-text--orange-A400 {
  color: rgb(255,145,0) !important; }

.mdl-color--orange-A400 {
  background-color: rgb(255,145,0) !important; }

.mdl-color-text--orange-A700 {
  color: rgb(255,109,0) !important; }

.mdl-color--orange-A700 {
  background-color: rgb(255,109,0) !important; }

.mdl-color-text--deep-orange {
  color: rgb(255,87,34) !important; }

.mdl-color--deep-orange {
  background-color: rgb(255,87,34) !important; }

.mdl-color-text--deep-orange-50 {
  color: rgb(251,233,231) !important; }

.mdl-color--deep-orange-50 {
  background-color: rgb(251,233,231) !important; }

.mdl-color-text--deep-orange-100 {
  color: rgb(255,204,188) !important; }

.mdl-color--deep-orange-100 {
  background-color: rgb(255,204,188) !important; }

.mdl-color-text--deep-orange-200 {
  color: rgb(255,171,145) !important; }

.mdl-color--deep-orange-200 {
  background-color: rgb(255,171,145) !important; }

.mdl-color-text--deep-orange-300 {
  color: rgb(255,138,101) !important; }

.mdl-color--deep-orange-300 {
  background-color: rgb(255,138,101) !important; }

.mdl-color-text--deep-orange-400 {
  color: rgb(255,112,67) !important; }

.mdl-color--deep-orange-400 {
  background-color: rgb(255,112,67) !important; }

.mdl-color-text--deep-orange-500 {
  color: rgb(255,87,34) !important; }

.mdl-color--deep-orange-500 {
  background-color: rgb(255,87,34) !important; }

.mdl-color-text--deep-orange-600 {
  color: rgb(244,81,30) !important; }

.mdl-color--deep-orange-600 {
  background-color: rgb(244,81,30) !important; }

.mdl-color-text--deep-orange-700 {
  color: rgb(230,74,25) !important; }

.mdl-color--deep-orange-700 {
  background-color: rgb(230,74,25) !important; }

.mdl-color-text--deep-orange-800 {
  color: rgb(216,67,21) !important; }

.mdl-color--deep-orange-800 {
  background-color: rgb(216,67,21) !important; }

.mdl-color-text--deep-orange-900 {
  color: rgb(191,54,12) !important; }

.mdl-color--deep-orange-900 {
  background-color: rgb(191,54,12) !important; }

.mdl-color-text--deep-orange-A100 {
  color: rgb(255,158,128) !important; }

.mdl-color--deep-orange-A100 {
  background-color: rgb(255,158,128) !important; }

.mdl-color-text--deep-orange-A200 {
  color: rgb(255,110,64) !important; }

.mdl-color--deep-orange-A200 {
  background-color: rgb(255,110,64) !important; }

.mdl-color-text--deep-orange-A400 {
  color: rgb(255,61,0) !important; }

.mdl-color--deep-orange-A400 {
  background-color: rgb(255,61,0) !important; }

.mdl-color-text--deep-orange-A700 {
  color: rgb(221,44,0) !important; }

.mdl-color--deep-orange-A700 {
  background-color: rgb(221,44,0) !important; }

.mdl-color-text--brown {
  color: rgb(121,85,72) !important; }

.mdl-color--brown {
  background-color: rgb(121,85,72) !important; }

.mdl-color-text--brown-50 {
  color: rgb(239,235,233) !important; }

.mdl-color--brown-50 {
  background-color: rgb(239,235,233) !important; }

.mdl-color-text--brown-100 {
  color: rgb(215,204,200) !important; }

.mdl-color--brown-100 {
  background-color: rgb(215,204,200) !important; }

.mdl-color-text--brown-200 {
  color: rgb(188,170,164) !important; }

.mdl-color--brown-200 {
  background-color: rgb(188,170,164) !important; }

.mdl-color-text--brown-300 {
  color: rgb(161,136,127) !important; }

.mdl-color--brown-300 {
  background-color: rgb(161,136,127) !important; }

.mdl-color-text--brown-400 {
  color: rgb(141,110,99) !important; }

.mdl-color--brown-400 {
  background-color: rgb(141,110,99) !important; }

.mdl-color-text--brown-500 {
  color: rgb(121,85,72) !important; }

.mdl-color--brown-500 {
  background-color: rgb(121,85,72) !important; }

.mdl-color-text--brown-600 {
  color: rgb(109,76,65) !important; }

.mdl-color--brown-600 {
  background-color: rgb(109,76,65) !important; }

.mdl-color-text--brown-700 {
  color: rgb(93,64,55) !important; }

.mdl-color--brown-700 {
  background-color: rgb(93,64,55) !important; }

.mdl-color-text--brown-800 {
  color: rgb(78,52,46) !important; }

.mdl-color--brown-800 {
  background-color: rgb(78,52,46) !important; }

.mdl-color-text--brown-900 {
  color: rgb(62,39,35) !important; }

.mdl-color--brown-900 {
  background-color: rgb(62,39,35) !important; }

.mdl-color-text--grey {
  color: rgb(158,158,158) !important; }

.mdl-color--grey {
  background-color: rgb(158,158,158) !important; }

.mdl-color-text--grey-50 {
  color: rgb(250,250,250) !important; }

.mdl-color--grey-50 {
  background-color: rgb(250,250,250) !important; }

.mdl-color-text--grey-100 {
  color: rgb(245,245,245) !important; }

.mdl-color--grey-100 {
  background-color: rgb(245,245,245) !important; }

.mdl-color-text--grey-200 {
  color: rgb(238,238,238) !important; }

.mdl-color--grey-200 {
  background-color: rgb(238,238,238) !important; }

.mdl-color-text--grey-300 {
  color: rgb(224,224,224) !important; }

.mdl-color--grey-300 {
  background-color: rgb(224,224,224) !important; }

.mdl-color-text--grey-400 {
  color: rgb(189,189,189) !important; }

.mdl-color--grey-400 {
  background-color: rgb(189,189,189) !important; }

.mdl-color-text--grey-500 {
  color: rgb(158,158,158) !important; }

.mdl-color--grey-500 {
  background-color: rgb(158,158,158) !important; }

.mdl-color-text--grey-600 {
  color: rgb(117,117,117) !important; }

.mdl-color--grey-600 {
  background-color: rgb(117,117,117) !important; }

.mdl-color-text--grey-700 {
  color: rgb(97,97,97) !important; }

.mdl-color--grey-700 {
  background-color: rgb(97,97,97) !important; }

.mdl-color-text--grey-800 {
  color: rgb(66,66,66) !important; }

.mdl-color--grey-800 {
  background-color: rgb(66,66,66) !important; }

.mdl-color-text--grey-900 {
  color: rgb(33,33,33) !important; }

.mdl-color--grey-900 {
  background-color: rgb(33,33,33) !important; }

.mdl-color-text--blue-grey {
  color: rgb(96,125,139) !important; }

.mdl-color--blue-grey {
  background-color: rgb(96,125,139) !important; }

.mdl-color-text--blue-grey-50 {
  color: rgb(236,239,241) !important; }

.mdl-color--blue-grey-50 {
  background-color: rgb(236,239,241) !important; }

.mdl-color-text--blue-grey-100 {
  color: rgb(207,216,220) !important; }

.mdl-color--blue-grey-100 {
  background-color: rgb(207,216,220) !important; }

.mdl-color-text--blue-grey-200 {
  color: rgb(176,190,197) !important; }

.mdl-color--blue-grey-200 {
  background-color: rgb(176,190,197) !important; }

.mdl-color-text--blue-grey-300 {
  color: rgb(144,164,174) !important; }

.mdl-color--blue-grey-300 {
  background-color: rgb(144,164,174) !important; }

.mdl-color-text--blue-grey-400 {
  color: rgb(120,144,156) !important; }

.mdl-color--blue-grey-400 {
  background-color: rgb(120,144,156) !important; }

.mdl-color-text--blue-grey-500 {
  color: rgb(96,125,139) !important; }

.mdl-color--blue-grey-500 {
  background-color: rgb(96,125,139) !important; }

.mdl-color-text--blue-grey-600 {
  color: rgb(84,110,122) !important; }

.mdl-color--blue-grey-600 {
  background-color: rgb(84,110,122) !important; }

.mdl-color-text--blue-grey-700 {
  color: rgb(69,90,100) !important; }

.mdl-color--blue-grey-700 {
  background-color: rgb(69,90,100) !important; }

.mdl-color-text--blue-grey-800 {
  color: rgb(55,71,79) !important; }

.mdl-color--blue-grey-800 {
  background-color: rgb(55,71,79) !important; }

.mdl-color-text--blue-grey-900 {
  color: rgb(38,50,56) !important; }

.mdl-color--blue-grey-900 {
  background-color: rgb(38,50,56) !important; }

.mdl-color--black {
  background-color: rgb(0,0,0) !important; }

.mdl-color-text--black {
  color: rgb(0,0,0) !important; }

.mdl-color--white {
  background-color: rgb(255,255,255) !important; }

.mdl-color-text--white {
  color: rgb(255,255,255) !important; }

.mdl-color--primary {
  background-color: rgb(33,150,243) !important; }

.mdl-color--primary-contrast {
  background-color: rgb(255,255,255) !important; }

.mdl-color--primary-dark {
  background-color: rgb(33,150,243) !important; }

.mdl-color--accent {
  background-color: rgb(255,64,129) !important; }

.mdl-color--accent-contrast {
  background-color: rgb(255,255,255) !important; }

.mdl-color-text--primary {
  color: rgb(33,150,243) !important; }

.mdl-color-text--primary-contrast {
  color: rgb(255,255,255) !important; }

.mdl-color-text--primary-dark {
  color: rgb(33,150,243) !important; }

.mdl-color-text--accent {
  color: rgb(255,64,129) !important; }

.mdl-color-text--accent-contrast {
  color: rgb(255,255,255) !important; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-ripple {
  background: rgb(0,0,0);
  border-radius: 50%;
  height: 50px;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  transform: translate(-50%, -50%);
  width: 50px;
  overflow: hidden; }
  .mdl-ripple.is-animating {
    transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1), width 0.3s cubic-bezier(0, 0, 0.2, 1), height 0.3s cubic-bezier(0, 0, 0.2, 1), opacity 0.6s cubic-bezier(0, 0, 0.2, 1); }
  .mdl-ripple.is-visible {
    opacity: 0.3; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-animation--default {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }

.mdl-animation--fast-out-slow-in {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }

.mdl-animation--linear-out-slow-in {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1); }

.mdl-animation--fast-out-linear-in {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1); }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-badge {
  position: relative;
  white-space: nowrap;
  margin-right: 24px; }
  .mdl-badge:not([data-badge]) {
    margin-right: auto; }
  .mdl-badge[data-badge]:after {
    content: attr(data-badge);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    align-items: center;
    position: absolute;
    top: -11px;
    right: -24px;
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-weight: 600;
    font-size: 12px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: rgb(255,64,129);
    color: rgb(255,255,255); }
    .mdl-button .mdl-badge[data-badge]:after {
      top: -10px;
      right: -5px; }
  .mdl-badge.mdl-badge--no-background[data-badge]:after {
    color: rgb(255,64,129);
    background: rgba(255,255,255,0.2);
    box-shadow: 0 0 1px gray; }
  .mdl-badge.mdl-badge--overlap {
    margin-right: 10px; }
    .mdl-badge.mdl-badge--overlap:after {
      right: -10px; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-button {
  background: transparent;
  border: none;
  border-radius: 2px;
  color: rgb(0,0,0);
  position: relative;
  height: 36px;
  margin: 0;
  min-width: 64px;
  padding: 0 16px;
  display: inline-block;
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: 0;
  overflow: hidden;
  will-change: box-shadow;
  transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  outline: none;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  line-height: 36px;
  vertical-align: middle; }
  .mdl-button::-moz-focus-inner {
    border: 0; }
  .mdl-button:hover {
    background-color: rgba(158,158,158, 0.20); }
  .mdl-button:focus:not(:active) {
    background-color: rgba(0,0,0, 0.12); }
  .mdl-button:active {
    background-color: rgba(158,158,158, 0.40); }
  .mdl-button.mdl-button--colored {
    color: rgb(63,81,181); }
    .mdl-button.mdl-button--colored:focus:not(:active) {
      background-color: rgba(0,0,0, 0.12); }

input.mdl-button[type="submit"] {
  -webkit-appearance: none; }

.mdl-button--raised {
  background: rgba(158,158,158, 0.20);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
  .mdl-button--raised:active {
    box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
    background-color: rgba(158,158,158, 0.40); }
  .mdl-button--raised:focus:not(:active) {
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36);
    background-color: rgba(158,158,158, 0.40); }
  .mdl-button--raised.mdl-button--colored {
    background: rgb(63,81,181);
    color: rgb(255,255,255); }
    .mdl-button--raised.mdl-button--colored:hover {
      background-color: rgb(63,81,181); }
    .mdl-button--raised.mdl-button--colored:active {
      background-color: rgb(63,81,181); }
    .mdl-button--raised.mdl-button--colored:focus:not(:active) {
      background-color: rgb(63,81,181); }
    .mdl-button--raised.mdl-button--colored .mdl-ripple {
      background: rgb(255,255,255); }

.mdl-button--fab {
  border-radius: 50%;
  font-size: 24px;
  height: 56px;
  margin: auto;
  min-width: 56px;
  width: 56px;
  padding: 0;
  overflow: hidden;
  background: rgba(158,158,158, 0.20);
  box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24);
  position: relative;
  line-height: normal; }
  .mdl-button--fab .material-icons, .mdl-button--fab .dingo-menu-container > ul > li > a::before, .mdl-button--fab .dingo-menu-container > ul > li > a::after, .mdl-button--fab [dingo-icon-name] > a::before, .mdl-button--fab [dingo-icon-name] > a::after, .mdl-button--fab [dingo-icon-name] > span::before, .mdl-button--fab [dingo-icon-name] > span::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-12px, -12px);
    line-height: 24px;
    width: 24px; }
  .mdl-button--fab.mdl-button--mini-fab {
    height: 40px;
    min-width: 40px;
    width: 40px; }
  .mdl-button--fab .mdl-button__ripple-container {
    border-radius: 50%;
    -webkit-mask-image: -webkit-radial-gradient(circle, white, black); }
  .mdl-button--fab:active {
    box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
    background-color: rgba(158,158,158, 0.40); }
  .mdl-button--fab:focus:not(:active) {
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36);
    background-color: rgba(158,158,158, 0.40); }
  .mdl-button--fab.mdl-button--colored {
    background: rgb(255,64,129);
    color: rgb(255,255,255); }
    .mdl-button--fab.mdl-button--colored:hover {
      background-color: rgb(255,64,129); }
    .mdl-button--fab.mdl-button--colored:focus:not(:active) {
      background-color: rgb(255,64,129); }
    .mdl-button--fab.mdl-button--colored:active {
      background-color: rgb(255,64,129); }
    .mdl-button--fab.mdl-button--colored .mdl-ripple {
      background: rgb(255,255,255); }

.mdl-button--icon {
  border-radius: 50%;
  font-size: 24px;
  height: 32px;
  margin-left: 0;
  margin-right: 0;
  min-width: 32px;
  width: 32px;
  padding: 0;
  overflow: hidden;
  color: inherit;
  line-height: normal; }
  .mdl-button--icon .material-icons, .mdl-button--icon .dingo-menu-container > ul > li > a::before, .mdl-button--icon .dingo-menu-container > ul > li > a::after, .mdl-button--icon [dingo-icon-name] > a::before, .mdl-button--icon [dingo-icon-name] > a::after, .mdl-button--icon [dingo-icon-name] > span::before, .mdl-button--icon [dingo-icon-name] > span::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-12px, -12px);
    line-height: 24px;
    width: 24px; }
  .mdl-button--icon.mdl-button--mini-icon {
    height: 24px;
    min-width: 24px;
    width: 24px; }
    .mdl-button--icon.mdl-button--mini-icon .material-icons, .mdl-button--icon.mdl-button--mini-icon .dingo-menu-container > ul > li > a::before, .mdl-button--icon.mdl-button--mini-icon .dingo-menu-container > ul > li > a::after, .mdl-button--icon.mdl-button--mini-icon [dingo-icon-name] > a::before, .mdl-button--icon.mdl-button--mini-icon [dingo-icon-name] > a::after, .mdl-button--icon.mdl-button--mini-icon [dingo-icon-name] > span::before, .mdl-button--icon.mdl-button--mini-icon [dingo-icon-name] > span::after {
      top: 0px;
      left: 0px; }
  .mdl-button--icon .mdl-button__ripple-container {
    border-radius: 50%;
    -webkit-mask-image: -webkit-radial-gradient(circle, white, black); }

.mdl-button__ripple-container {
  display: block;
  height: 100%;
  left: 0px;
  position: absolute;
  top: 0px;
  width: 100%;
  z-index: 0;
  overflow: hidden; }
  .mdl-button[disabled] .mdl-button__ripple-container .mdl-ripple,
  .mdl-button.mdl-button--disabled .mdl-button__ripple-container .mdl-ripple {
    background-color: transparent; }

.mdl-button--primary.mdl-button--primary {
  color: rgb(63,81,181); }
  .mdl-button--primary.mdl-button--primary .mdl-ripple {
    background: rgb(255,255,255); }
  .mdl-button--primary.mdl-button--primary.mdl-button--raised, .mdl-button--primary.mdl-button--primary.mdl-button--fab {
    color: rgb(255,255,255);
    background-color: rgb(63,81,181); }

.mdl-button--accent.mdl-button--accent {
  color: rgb(255,64,129); }
  .mdl-button--accent.mdl-button--accent .mdl-ripple {
    background: rgb(255,255,255); }
  .mdl-button--accent.mdl-button--accent.mdl-button--raised, .mdl-button--accent.mdl-button--accent.mdl-button--fab {
    color: rgb(255,255,255);
    background-color: rgb(255,64,129); }

.mdl-button[disabled][disabled], .mdl-button.mdl-button--disabled.mdl-button--disabled {
  color: rgba(0,0,0, 0.26);
  cursor: default;
  background-color: transparent; }

.mdl-button--fab[disabled][disabled], .mdl-button--fab.mdl-button--disabled.mdl-button--disabled {
  background-color: rgba(0,0,0, 0.12);
  color: rgba(0,0,0, 0.26); }

.mdl-button--raised[disabled][disabled], .mdl-button--raised.mdl-button--disabled.mdl-button--disabled {
  background-color: rgba(0,0,0, 0.12);
  color: rgba(0,0,0, 0.26);
  box-shadow: none; }

.mdl-button--colored[disabled][disabled], .mdl-button--colored.mdl-button--disabled.mdl-button--disabled {
  color: rgba(0,0,0, 0.26); }

.mdl-button .material-icons, .mdl-button .dingo-menu-container > ul > li > a::before, .mdl-button .dingo-menu-container > ul > li > a::after, .mdl-button [dingo-icon-name] > a::before, .mdl-button [dingo-icon-name] > a::after, .mdl-button [dingo-icon-name] > span::before, .mdl-button [dingo-icon-name] > span::after {
  vertical-align: middle; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-card {
  display: flex;
  flex-direction: column;
  font-size: 16px;
  font-weight: 400;
  min-height: 200px;
  overflow: hidden;
  width: 330px;
  z-index: 1;
  position: relative;
  background: rgb(255,255,255);
  border-radius: 2px;
  box-sizing: border-box; }

.mdl-card__media {
  background-color: rgb(255,64,129);
  background-repeat: repeat;
  background-position: 50% 50%;
  background-size: cover;
  background-origin: padding-box;
  background-attachment: scroll;
  box-sizing: border-box; }

.mdl-card__title {
  align-items: center;
  color: rgb(0,0,0);
  display: block;
  display: flex;
  justify-content: stretch;
  line-height: normal;
  padding: 16px 16px;
  perspective-origin: 165px 56px;
  transform-origin: 165px 56px;
  box-sizing: border-box; }
  .mdl-card__title.mdl-card--border {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

.mdl-card__title-text {
  align-self: flex-end;
  color: inherit;
  display: block;
  display: flex;
  font-size: 24px;
  font-weight: 300;
  line-height: normal;
  overflow: hidden;
  transform-origin: 149px 48px;
  margin: 0; }

.mdl-card__subtitle-text {
  font-size: 14px;
  color: rgba(0,0,0, 0.54);
  margin: 0; }

.mdl-card__supporting-text {
  color: rgba(0,0,0, 0.54);
  font-size: 1rem;
  line-height: 18px;
  overflow: hidden;
  padding: 16px 16px;
  width: 90%; }

.mdl-card__actions {
  font-size: 16px;
  line-height: normal;
  width: 100%;
  background-color: transparent;
  padding: 8px;
  box-sizing: border-box; }
  .mdl-card__actions.mdl-card--border {
    border-top: 1px solid rgba(0, 0, 0, 0.1); }

.mdl-card--expand {
  flex-grow: 1; }

.mdl-card__menu {
  position: absolute;
  right: 16px;
  top: 16px; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-checkbox {
  position: relative;
  z-index: 1;
  vertical-align: middle;
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  height: 24px;
  margin: 0;
  padding: 0; }
  .mdl-checkbox.is-upgraded {
    padding-left: 24px; }

.mdl-checkbox__input {
  line-height: 24px; }
  .mdl-checkbox.is-upgraded .mdl-checkbox__input {
    position: absolute;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    opacity: 0;
    -ms-appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none; }

.mdl-checkbox__box-outline {
  position: absolute;
  top: 3px;
  left: 0;
  display: inline-block;
  box-sizing: border-box;
  width: 16px;
  height: 16px;
  margin: 0;
  cursor: pointer;
  overflow: hidden;
  border: 2px solid rgba(0,0,0, 0.54);
  border-radius: 2px;
  z-index: 2; }
  .mdl-checkbox.is-checked .mdl-checkbox__box-outline {
    border: 2px solid rgb(63,81,181); }
  fieldset[disabled] .mdl-checkbox .mdl-checkbox__box-outline,
  .mdl-checkbox.is-disabled .mdl-checkbox__box-outline {
    border: 2px solid rgba(0,0,0, 0.26);
    cursor: auto; }

.mdl-checkbox__focus-helper {
  position: absolute;
  top: 3px;
  left: 0;
  display: inline-block;
  box-sizing: border-box;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: transparent; }
  .mdl-checkbox.is-focused .mdl-checkbox__focus-helper {
    box-shadow: 0 0 0px 8px rgba(0, 0, 0, 0.1);
    background-color: rgba(0, 0, 0, 0.1); }
  .mdl-checkbox.is-focused.is-checked .mdl-checkbox__focus-helper {
    box-shadow: 0 0 0px 8px rgba(63,81,181, 0.26);
    background-color: rgba(63,81,181, 0.26); }

.mdl-checkbox__tick-outline {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  mask: url("/images/tick-mask.svg?embed");
  background: transparent;
  transition-duration: 0.28s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-property: background; }
  .mdl-checkbox.is-checked .mdl-checkbox__tick-outline {
    background: rgb(63,81,181) url("/images/tick.svg?embed"); }
  fieldset[disabled] .mdl-checkbox.is-checked .mdl-checkbox__tick-outline,
  .mdl-checkbox.is-checked.is-disabled .mdl-checkbox__tick-outline {
    background: rgba(0,0,0, 0.26) url("/images/tick.svg?embed"); }

.mdl-checkbox__label {
  position: relative;
  cursor: pointer;
  font-size: 16px;
  line-height: 24px;
  margin: 0; }
  fieldset[disabled] .mdl-checkbox .mdl-checkbox__label,
  .mdl-checkbox.is-disabled .mdl-checkbox__label {
    color: rgba(0,0,0, 0.26);
    cursor: auto; }

.mdl-checkbox__ripple-container {
  position: absolute;
  z-index: 2;
  top: -6px;
  left: -10px;
  box-sizing: border-box;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  cursor: pointer;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(circle, white, black); }
  .mdl-checkbox__ripple-container .mdl-ripple {
    background: rgb(63,81,181); }
  fieldset[disabled] .mdl-checkbox .mdl-checkbox__ripple-container,
  .mdl-checkbox.is-disabled .mdl-checkbox__ripple-container {
    cursor: auto; }
  fieldset[disabled] .mdl-checkbox .mdl-checkbox__ripple-container .mdl-ripple,
  .mdl-checkbox.is-disabled .mdl-checkbox__ripple-container .mdl-ripple {
    background: transparent; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-data-table {
  position: relative;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-collapse: collapse;
  white-space: nowrap;
  font-size: 13px;
  background-color: rgb(255,255,255); }
  .mdl-data-table thead {
    padding-bottom: 3px; }
    .mdl-data-table thead .mdl-data-table__select {
      margin-top: 0; }
  .mdl-data-table tbody tr {
    position: relative;
    height: 48px;
    transition-duration: 0.28s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-property: background-color; }
    .mdl-data-table tbody tr.is-selected {
      background-color: #e0e0e0; }
    .mdl-data-table tbody tr:hover {
      background-color: #eeeeee; }
  .mdl-data-table td, .mdl-data-table th {
    padding: 0 18px 12px 18px;
    text-align: right; }
    .mdl-data-table td:first-of-type, .mdl-data-table th:first-of-type {
      padding-left: 24px; }
    .mdl-data-table td:last-of-type, .mdl-data-table th:last-of-type {
      padding-right: 24px; }
  .mdl-data-table td {
    position: relative;
    vertical-align: middle;
    height: 48px;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    padding-top: 12px;
    box-sizing: border-box; }
    .mdl-data-table td .mdl-data-table__select {
      vertical-align: middle; }
  .mdl-data-table th {
    position: relative;
    vertical-align: bottom;
    text-overflow: ellipsis;
    font-size: 14px;
    font-weight: bold;
    line-height: 24px;
    letter-spacing: 0;
    height: 48px;
    font-size: 12px;
    color: rgba(0, 0, 0, 0.54);
    padding-bottom: 8px;
    box-sizing: border-box; }
    .mdl-data-table th.mdl-data-table__header--sorted-ascending, .mdl-data-table th.mdl-data-table__header--sorted-descending {
      color: rgba(0, 0, 0, 0.87); }
      .mdl-data-table th.mdl-data-table__header--sorted-ascending:before, .mdl-data-table th.mdl-data-table__header--sorted-descending:before {
        font-family: 'Material Icons';
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 1;
        letter-spacing: normal;
        text-transform: none;
        display: inline-block;
        word-wrap: normal;
        font-feature-settings: 'liga';
        -webkit-font-feature-settings: 'liga';
        -webkit-font-smoothing: antialiased;
        font-size: 16px;
        content: "\e5d8";
        margin-right: 5px;
        vertical-align: sub; }
      .mdl-data-table th.mdl-data-table__header--sorted-ascending:hover, .mdl-data-table th.mdl-data-table__header--sorted-descending:hover {
        cursor: pointer; }
        .mdl-data-table th.mdl-data-table__header--sorted-ascending:hover:before, .mdl-data-table th.mdl-data-table__header--sorted-descending:hover:before {
          color: rgba(0, 0, 0, 0.26); }
    .mdl-data-table th.mdl-data-table__header--sorted-descending:before {
      content: "\e5db"; }

.mdl-data-table__select {
  width: 16px; }

.mdl-data-table__cell--non-numeric.mdl-data-table__cell--non-numeric {
  text-align: left; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-dialog {
  border: none;
  box-shadow: 0 9px 46px 8px rgba(0, 0, 0, 0.14), 0 11px 15px -7px rgba(0, 0, 0, 0.12), 0 24px 38px 3px rgba(0, 0, 0, 0.2);
  width: 280px; }
  .mdl-dialog__title {
    padding: 24px 24px 0;
    margin: 0;
    font-size: 2.5rem; }
  .mdl-dialog__actions {
    padding: 8px 8px 8px 24px;
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap; }
    .mdl-dialog__actions > * {
      margin-right: 8px;
      height: 36px; }
      .mdl-dialog__actions > *:first-child {
        margin-right: 0; }
    .mdl-dialog__actions--full-width {
      padding: 0 0 8px 0; }
      .mdl-dialog__actions--full-width > * {
        height: 48px;
        flex: 0 0 100%;
        padding-right: 16px;
        margin-right: 0;
        text-align: right; }
  .mdl-dialog__content {
    padding: 20px 24px 24px 24px;
    color: rgba(0,0,0, 0.54); }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-mega-footer {
  padding: 16px 40px;
  color: rgb(158,158,158);
  background-color: rgb(66,66,66); }

.mdl-mega-footer--top-section:after,
.mdl-mega-footer--middle-section:after,
.mdl-mega-footer--bottom-section:after,
.mdl-mega-footer__top-section:after,
.mdl-mega-footer__middle-section:after,
.mdl-mega-footer__bottom-section:after {
  content: '';
  display: block;
  clear: both; }

.mdl-mega-footer--left-section,
.mdl-mega-footer__left-section {
  margin-bottom: 16px; }

.mdl-mega-footer--right-section,
.mdl-mega-footer__right-section {
  margin-bottom: 16px; }

.mdl-mega-footer--right-section a,
.mdl-mega-footer__right-section a {
  display: block;
  margin-bottom: 16px;
  color: inherit;
  text-decoration: none; }

@media screen and (min-width: 760px) {
  .mdl-mega-footer--left-section,
  .mdl-mega-footer__left-section {
    float: left; }
  .mdl-mega-footer--right-section,
  .mdl-mega-footer__right-section {
    float: right; }
  .mdl-mega-footer--right-section a,
  .mdl-mega-footer__right-section a {
    display: inline-block;
    margin-left: 16px;
    line-height: 36px;
    vertical-align: middle; } }

.mdl-mega-footer--social-btn,
.mdl-mega-footer__social-btn {
  width: 36px;
  height: 36px;
  padding: 0;
  margin: 0;
  background-color: rgb(158,158,158);
  border: none; }

.mdl-mega-footer--drop-down-section,
.mdl-mega-footer__drop-down-section {
  display: block;
  position: relative; }

@media screen and (min-width: 760px) {
  .mdl-mega-footer--drop-down-section,
  .mdl-mega-footer__drop-down-section {
    width: 33%; }
  .mdl-mega-footer--drop-down-section:nth-child(1),
  .mdl-mega-footer--drop-down-section:nth-child(2),
  .mdl-mega-footer__drop-down-section:nth-child(1),
  .mdl-mega-footer__drop-down-section:nth-child(2) {
    float: left; }
  .mdl-mega-footer--drop-down-section:nth-child(3),
  .mdl-mega-footer__drop-down-section:nth-child(3) {
    float: right; }
    .mdl-mega-footer--drop-down-section:nth-child(3):after,
    .mdl-mega-footer__drop-down-section:nth-child(3):after {
      clear: right; }
  .mdl-mega-footer--drop-down-section:nth-child(4),
  .mdl-mega-footer__drop-down-section:nth-child(4) {
    clear: right;
    float: right; }
  .mdl-mega-footer--middle-section:after,
  .mdl-mega-footer__middle-section:after {
    content: '';
    display: block;
    clear: both; }
  .mdl-mega-footer--bottom-section,
  .mdl-mega-footer__bottom-section {
    padding-top: 0; } }

@media screen and (min-width: 1024px) {
  .mdl-mega-footer--drop-down-section,
  .mdl-mega-footer--drop-down-section:nth-child(3),
  .mdl-mega-footer--drop-down-section:nth-child(4),
  .mdl-mega-footer__drop-down-section,
  .mdl-mega-footer__drop-down-section:nth-child(3),
  .mdl-mega-footer__drop-down-section:nth-child(4) {
    width: 24%;
    float: left; } }

.mdl-mega-footer--heading-checkbox,
.mdl-mega-footer__heading-checkbox {
  position: absolute;
  width: 100%;
  height: 55.8px;
  padding: 32px;
  margin: 0;
  margin-top: -16px;
  cursor: pointer;
  z-index: 1;
  opacity: 0; }
  .mdl-mega-footer--heading-checkbox + .mdl-mega-footer--heading:after,
  .mdl-mega-footer--heading-checkbox + .mdl-mega-footer__heading:after,
  .mdl-mega-footer__heading-checkbox + .mdl-mega-footer--heading:after,
  .mdl-mega-footer__heading-checkbox + .mdl-mega-footer__heading:after {
    font-family: 'Material Icons';
    content: '\E5CE'; }

.mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer--link-list,
.mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer__link-list,
.mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer--heading + .mdl-mega-footer--link-list,
.mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer__heading + .mdl-mega-footer__link-list,
.mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer--link-list,
.mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer__link-list,
.mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer--heading + .mdl-mega-footer--link-list,
.mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer__heading + .mdl-mega-footer__link-list {
  display: none; }

.mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer--heading:after,
.mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer__heading:after,
.mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer--heading:after,
.mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer__heading:after {
  font-family: 'Material Icons';
  content: '\E5CF'; }

.mdl-mega-footer--heading,
.mdl-mega-footer__heading {
  position: relative;
  width: 100%;
  padding-right: 39.8px;
  margin-bottom: 16px;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 23.8px;
  font-weight: 500;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  color: rgb(224,224,224); }

.mdl-mega-footer--heading:after,
.mdl-mega-footer__heading:after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 23.8px;
  height: 23.8px;
  background-size: cover; }

.mdl-mega-footer--link-list,
.mdl-mega-footer__link-list {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-bottom: 32px; }
  .mdl-mega-footer--link-list:after,
  .mdl-mega-footer__link-list:after {
    clear: both;
    display: block;
    content: ''; }

.mdl-mega-footer--link-list li,
.mdl-mega-footer__link-list li {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  line-height: 20px; }

.mdl-mega-footer--link-list a,
.mdl-mega-footer__link-list a {
  color: inherit;
  text-decoration: none;
  white-space: nowrap; }

@media screen and (min-width: 760px) {
  .mdl-mega-footer--heading-checkbox,
  .mdl-mega-footer__heading-checkbox {
    display: none; }
    .mdl-mega-footer--heading-checkbox + .mdl-mega-footer--heading:after,
    .mdl-mega-footer--heading-checkbox + .mdl-mega-footer__heading:after,
    .mdl-mega-footer__heading-checkbox + .mdl-mega-footer--heading:after,
    .mdl-mega-footer__heading-checkbox + .mdl-mega-footer__heading:after {
      content: ''; }
  .mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer--link-list,
  .mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer__link-list,
  .mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer__heading + .mdl-mega-footer__link-list,
  .mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer--heading + .mdl-mega-footer--link-list,
  .mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer--link-list,
  .mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer__link-list,
  .mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer__heading + .mdl-mega-footer__link-list,
  .mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer--heading + .mdl-mega-footer--link-list {
    display: block; }
  .mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer--heading:after,
  .mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer__heading:after,
  .mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer--heading:after,
  .mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer__heading:after {
    content: ''; } }

.mdl-mega-footer--bottom-section,
.mdl-mega-footer__bottom-section {
  padding-top: 16px;
  margin-bottom: 16px; }

.mdl-logo {
  margin-bottom: 16px;
  color: white; }

.mdl-mega-footer--bottom-section .mdl-mega-footer--link-list li,
.mdl-mega-footer__bottom-section .mdl-mega-footer__link-list li {
  float: left;
  margin-bottom: 0;
  margin-right: 16px; }

@media screen and (min-width: 760px) {
  .mdl-logo {
    float: left;
    margin-bottom: 0;
    margin-right: 16px; } }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-mini-footer {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  padding: 32px 16px;
  color: rgb(158,158,158);
  background-color: rgb(66,66,66); }
  .mdl-mini-footer:after {
    content: '';
    display: block; }
  .mdl-mini-footer .mdl-logo {
    line-height: 36px; }

.mdl-mini-footer--link-list,
.mdl-mini-footer__link-list {
  display: flex;
  flex-flow: row nowrap;
  list-style: none;
  margin: 0;
  padding: 0; }
  .mdl-mini-footer--link-list li,
  .mdl-mini-footer__link-list li {
    margin-bottom: 0;
    margin-right: 16px; }
    @media screen and (min-width: 760px) {
      .mdl-mini-footer--link-list li,
      .mdl-mini-footer__link-list li {
        line-height: 36px; } }
  .mdl-mini-footer--link-list a,
  .mdl-mini-footer__link-list a {
    color: inherit;
    text-decoration: none;
    white-space: nowrap; }

.mdl-mini-footer--left-section,
.mdl-mini-footer__left-section {
  display: inline-block;
  order: 0; }

.mdl-mini-footer--right-section,
.mdl-mini-footer__right-section {
  display: inline-block;
  order: 1; }

.mdl-mini-footer--social-btn,
.mdl-mini-footer__social-btn {
  width: 36px;
  height: 36px;
  padding: 0;
  margin: 0;
  background-color: rgb(158,158,158);
  border: none; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-icon-toggle {
  position: relative;
  z-index: 1;
  vertical-align: middle;
  display: inline-block;
  height: 32px;
  margin: 0;
  padding: 0; }

.mdl-icon-toggle__input {
  line-height: 32px; }
  .mdl-icon-toggle.is-upgraded .mdl-icon-toggle__input {
    position: absolute;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    opacity: 0;
    -ms-appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none; }

.mdl-icon-toggle__label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  height: 32px;
  width: 32px;
  min-width: 32px;
  color: rgb(97,97,97);
  border-radius: 50%;
  padding: 0;
  margin-left: 0;
  margin-right: 0;
  text-align: center;
  background-color: transparent;
  will-change: background-color;
  transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1); }
  .mdl-icon-toggle__label.material-icons, .dingo-menu-container > ul > li > a.mdl-icon-toggle__label::before, .dingo-menu-container > ul > li > a.mdl-icon-toggle__label::after, [dingo-icon-name] > a.mdl-icon-toggle__label::before, [dingo-icon-name] > a.mdl-icon-toggle__label::after, [dingo-icon-name] > span.mdl-icon-toggle__label::before, [dingo-icon-name] > span.mdl-icon-toggle__label::after {
    line-height: 32px;
    font-size: 24px; }
  .mdl-icon-toggle.is-checked .mdl-icon-toggle__label {
    color: rgb(63,81,181); }
  .mdl-icon-toggle.is-disabled .mdl-icon-toggle__label {
    color: rgba(0,0,0, 0.26);
    cursor: auto;
    transition: none; }
  .mdl-icon-toggle.is-focused .mdl-icon-toggle__label {
    background-color: rgba(0,0,0, 0.12); }
  .mdl-icon-toggle.is-focused.is-checked .mdl-icon-toggle__label {
    background-color: rgba(63,81,181, 0.26); }

.mdl-icon-toggle__ripple-container {
  position: absolute;
  z-index: 2;
  top: -2px;
  left: -2px;
  box-sizing: border-box;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  cursor: pointer;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(circle, white, black); }
  .mdl-icon-toggle__ripple-container .mdl-ripple {
    background: rgb(97,97,97); }
  .mdl-icon-toggle.is-disabled .mdl-icon-toggle__ripple-container {
    cursor: auto; }
  .mdl-icon-toggle.is-disabled .mdl-icon-toggle__ripple-container .mdl-ripple {
    background: transparent; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-list {
  display: block;
  padding: 8px 0;
  list-style: none; }

.mdl-list__item {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.04em;
  line-height: 1;
  display: flex;
  min-height: 48px;
  box-sizing: border-box;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  padding: 16px;
  cursor: default;
  color: rgba(0,0,0, 0.87);
  overflow: hidden; }
  .mdl-list__item .mdl-list__item-primary-content {
    order: 0;
    flex-grow: 2;
    text-decoration: none;
    box-sizing: border-box;
    display: flex;
    align-items: center; }
    .mdl-list__item .mdl-list__item-primary-content .mdl-list__item-icon {
      margin-right: 32px; }
    .mdl-list__item .mdl-list__item-primary-content .mdl-list__item-avatar {
      margin-right: 16px; }
  .mdl-list__item .mdl-list__item-secondary-content {
    display: flex;
    flex-flow: column;
    align-items: flex-end;
    margin-left: 16px; }
    .mdl-list__item .mdl-list__item-secondary-content .mdl-list__item-secondary-action label {
      display: inline; }
    .mdl-list__item .mdl-list__item-secondary-content .mdl-list__item-secondary-info {
      font-size: 12px;
      font-weight: 400;
      line-height: 1;
      letter-spacing: 0;
      color: rgba(0,0,0, 0.54); }
    .mdl-list__item .mdl-list__item-secondary-content .mdl-list__item-sub-header {
      padding: 0 0 0 16px; }

.mdl-list__item-icon,
.mdl-list__item-icon.material-icons,
.dingo-menu-container > ul > li > a.mdl-list__item-icon::before,
.dingo-menu-container > ul > li > a.mdl-list__item-icon::after,
[dingo-icon-name] > a.mdl-list__item-icon::before,
[dingo-icon-name] > a.mdl-list__item-icon::after,
[dingo-icon-name] > span.mdl-list__item-icon::before,
[dingo-icon-name] > span.mdl-list__item-icon::after {
  height: 24px;
  width: 24px;
  font-size: 24px;
  box-sizing: border-box;
  color: rgb(117,117,117); }

.mdl-list__item-avatar,
.mdl-list__item-avatar.material-icons,
.dingo-menu-container > ul > li > a.mdl-list__item-avatar::before,
.dingo-menu-container > ul > li > a.mdl-list__item-avatar::after,
[dingo-icon-name] > a.mdl-list__item-avatar::before,
[dingo-icon-name] > a.mdl-list__item-avatar::after,
[dingo-icon-name] > span.mdl-list__item-avatar::before,
[dingo-icon-name] > span.mdl-list__item-avatar::after {
  height: 40px;
  width: 40px;
  box-sizing: border-box;
  border-radius: 50%;
  background-color: rgb(117,117,117);
  font-size: 40px;
  color: white; }

.mdl-list__item--two-line {
  height: 72px; }
  .mdl-list__item--two-line .mdl-list__item-primary-content {
    height: 36px;
    line-height: 20px;
    display: block; }
    .mdl-list__item--two-line .mdl-list__item-primary-content .mdl-list__item-avatar {
      float: left; }
    .mdl-list__item--two-line .mdl-list__item-primary-content .mdl-list__item-icon {
      float: left;
      margin-top: 6px; }
    .mdl-list__item--two-line .mdl-list__item-primary-content .mdl-list__item-secondary-content {
      height: 36px; }
    .mdl-list__item--two-line .mdl-list__item-primary-content .mdl-list__item-sub-title {
      font-size: 14px;
      font-weight: 400;
      line-height: 24px;
      letter-spacing: 0;
      line-height: 18px;
      color: rgba(0,0,0, 0.54);
      display: block;
      padding: 0; }

.mdl-list__item--three-line {
  height: 88px; }
  .mdl-list__item--three-line .mdl-list__item-primary-content {
    height: 52px;
    line-height: 20px;
    display: block; }
    .mdl-list__item--three-line .mdl-list__item-primary-content .mdl-list__item-avatar,
    .mdl-list__item--three-line .mdl-list__item-primary-content .mdl-list__item-icon {
      float: left; }
  .mdl-list__item--three-line .mdl-list__item-secondary-content {
    height: 52px; }
  .mdl-list__item--three-line .mdl-list__item-text-body {
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0;
    line-height: 18px;
    height: 52px;
    color: rgba(0,0,0, 0.54);
    display: block;
    padding: 0; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-menu__container {
  display: block;
  margin: 0;
  padding: 0;
  border: none;
  position: absolute;
  overflow: visible;
  height: 0;
  width: 0;
  visibility: hidden;
  z-index: -1; }
  .mdl-menu__container.is-visible, .mdl-menu__container.is-animating {
    z-index: 999;
    visibility: visible; }

.mdl-menu__outline {
  display: block;
  background: rgb(255,255,255);
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 2px;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  opacity: 0;
  transform: scale(0);
  transform-origin: 0 0;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
  will-change: transform;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: -1; }
  .mdl-menu__container.is-visible .mdl-menu__outline {
    opacity: 1;
    transform: scale(1);
    z-index: 999; }
  .mdl-menu__outline.mdl-menu--bottom-right {
    transform-origin: 100% 0; }
  .mdl-menu__outline.mdl-menu--top-left {
    transform-origin: 0 100%; }
  .mdl-menu__outline.mdl-menu--top-right {
    transform-origin: 100% 100%; }

.mdl-menu {
  position: absolute;
  list-style: none;
  top: 0;
  left: 0;
  height: auto;
  width: auto;
  min-width: 124px;
  padding: 8px 0;
  margin: 0;
  opacity: 0;
  clip: rect(0 0 0 0);
  z-index: -1; }
  .mdl-menu__container.is-visible .mdl-menu {
    opacity: 1;
    z-index: 999; }
  .mdl-menu.is-animating {
    transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), clip 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
  .mdl-menu.mdl-menu--bottom-right {
    left: auto;
    right: 0; }
  .mdl-menu.mdl-menu--top-left {
    top: auto;
    bottom: 0; }
  .mdl-menu.mdl-menu--top-right {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0; }
  .mdl-menu.mdl-menu--unaligned {
    top: auto;
    left: auto; }

.mdl-menu__item {
  display: block;
  border: none;
  color: rgba(0,0,0, 0.87);
  background-color: transparent;
  text-align: left;
  margin: 0;
  padding: 0 16px;
  outline-color: rgb(189,189,189);
  position: relative;
  overflow: hidden;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  text-decoration: none;
  cursor: pointer;
  height: 48px;
  line-height: 48px;
  white-space: nowrap;
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  user-select: none; }
  .mdl-menu__container.is-visible .mdl-menu__item {
    opacity: 1; }
  .mdl-menu__item::-moz-focus-inner {
    border: 0; }
  .mdl-menu__item--full-bleed-divider {
    border-bottom: 1px solid rgba(0,0,0, 0.12); }
  .mdl-menu__item[disabled], .mdl-menu__item[data-mdl-disabled] {
    color: rgb(189,189,189);
    background-color: transparent;
    cursor: auto; }
    .mdl-menu__item[disabled]:hover, .mdl-menu__item[data-mdl-disabled]:hover {
      background-color: transparent; }
    .mdl-menu__item[disabled]:focus, .mdl-menu__item[data-mdl-disabled]:focus {
      background-color: transparent; }
    .mdl-menu__item[disabled] .mdl-ripple, .mdl-menu__item[data-mdl-disabled] .mdl-ripple {
      background: transparent; }
  .mdl-menu__item:hover {
    background-color: rgb(238,238,238); }
  .mdl-menu__item:focus {
    outline: none;
    background-color: rgb(238,238,238); }
  .mdl-menu__item:active {
    background-color: rgb(224,224,224); }

.mdl-menu__item--ripple-container {
  display: block;
  height: 100%;
  left: 0px;
  position: absolute;
  top: 0px;
  width: 100%;
  z-index: 0;
  overflow: hidden; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-progress {
  display: block;
  position: relative;
  height: 4px;
  width: 500px;
  max-width: 100%; }

.mdl-progress > .bar {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0%;
  transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1); }

.mdl-progress > .progressbar {
  background-color: rgb(63,81,181);
  z-index: 1;
  left: 0; }

.mdl-progress > .bufferbar {
  background-image: linear-gradient(to right, rgba(255,255,255, 0.7), rgba(255,255,255, 0.7)), linear-gradient(to right, rgb(63,81,181), rgb(63,81,181));
  z-index: 0;
  left: 0; }

.mdl-progress > .auxbar {
  right: 0; }

@supports (-webkit-appearance: none) {
  .mdl-progress:not(.mdl-progress--indeterminate):not(.mdl-progress--indeterminate) > .auxbar,
  .mdl-progress:not(.mdl-progress__indeterminate):not(.mdl-progress__indeterminate) > .auxbar {
    background-image: linear-gradient(to right, rgba(255,255,255, 0.7), rgba(255,255,255, 0.7)), linear-gradient(to right, rgb(63,81,181), rgb(63,81,181));
    mask: url("/images/buffer.svg?embed"); } }

.mdl-progress:not(.mdl-progress--indeterminate) > .auxbar,
.mdl-progress:not(.mdl-progress__indeterminate) > .auxbar {
  background-image: linear-gradient(to right, rgba(255,255,255, 0.9), rgba(255,255,255, 0.9)), linear-gradient(to right, rgb(63,81,181), rgb(63,81,181)); }

.mdl-progress.mdl-progress--indeterminate > .bar1,
.mdl-progress.mdl-progress__indeterminate > .bar1 {
  background-color: rgb(63,81,181);
  animation-name: indeterminate1;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: linear; }

.mdl-progress.mdl-progress--indeterminate > .bar3,
.mdl-progress.mdl-progress__indeterminate > .bar3 {
  background-image: none;
  background-color: rgb(63,81,181);
  animation-name: indeterminate2;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: linear; }

@keyframes indeterminate1 {
  0% {
    left: 0%;
    width: 0%; }
  50% {
    left: 25%;
    width: 75%; }
  75% {
    left: 100%;
    width: 0%; } }

@keyframes indeterminate2 {
  0% {
    left: 0%;
    width: 0%; }
  50% {
    left: 0%;
    width: 0%; }
  75% {
    left: 0%;
    width: 25%; }
  100% {
    left: 100%;
    width: 0%; } }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-navigation {
  display: flex;
  flex-wrap: nowrap;
  box-sizing: border-box; }

.mdl-navigation__link {
  color: rgb(66,66,66);
  text-decoration: none;
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }
  .mdl-navigation__link .material-icons, .mdl-navigation__link .dingo-menu-container > ul > li > a::before, .mdl-navigation__link .dingo-menu-container > ul > li > a::after, .mdl-navigation__link [dingo-icon-name] > a::before, .mdl-navigation__link [dingo-icon-name] > a::after, .mdl-navigation__link [dingo-icon-name] > span::before, .mdl-navigation__link [dingo-icon-name] > span::after {
    vertical-align: middle; }

.mdl-layout {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;
  position: relative;
  -webkit-overflow-scrolling: touch; }

.mdl-layout.is-small-screen .mdl-layout--large-screen-only {
  display: none; }

.mdl-layout:not(.is-small-screen) .mdl-layout--small-screen-only {
  display: none; }

.mdl-layout__container {
  position: absolute;
  width: 100%;
  height: 100%; }

.mdl-layout__title,
.mdl-layout-title {
  display: block;
  position: relative;
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
  font-weight: 400;
  box-sizing: border-box; }

.mdl-layout-spacer {
  flex-grow: 1; }

.mdl-layout__drawer {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  width: 240px;
  height: 100%;
  max-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
  box-sizing: border-box;
  border-right: 1px solid rgb(224,224,224);
  background: rgb(250,250,250);
  transform: translateX(-250px);
  transform-style: preserve-3d;
  will-change: transform;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-property: transform;
  color: rgb(66,66,66);
  overflow: visible;
  overflow-y: auto;
  z-index: 5; }
  .mdl-layout__drawer.is-visible {
    transform: translateX(0); }
    .mdl-layout__drawer.is-visible ~ .mdl-layout__content.mdl-layout__content {
      overflow: hidden; }
  .mdl-layout__drawer > * {
    flex-shrink: 0; }
  .mdl-layout__drawer > .mdl-layout__title,
  .mdl-layout__drawer > .mdl-layout-title {
    line-height: 64px;
    padding-left: 40px; }
    @media screen and (max-width: 1024px) {
      .mdl-layout__drawer > .mdl-layout__title,
      .mdl-layout__drawer > .mdl-layout-title {
        line-height: 56px;
        padding-left: 16px; } }
  .mdl-layout__drawer .mdl-navigation {
    flex-direction: column;
    align-items: stretch;
    padding-top: 16px; }
    .mdl-layout__drawer .mdl-navigation .mdl-navigation__link {
      display: block;
      flex-shrink: 0;
      padding: 16px 40px;
      margin: 0;
      color: #757575; }
      @media screen and (max-width: 1024px) {
        .mdl-layout__drawer .mdl-navigation .mdl-navigation__link {
          padding: 16px 16px; } }
      .mdl-layout__drawer .mdl-navigation .mdl-navigation__link:hover {
        background-color: rgb(224,224,224); }
      .mdl-layout__drawer .mdl-navigation .mdl-navigation__link--current {
        background-color: rgb(0,0,0);
        color: rgb(224,224,224); }
  @media screen and (min-width: 1025px) {
    .mdl-layout--fixed-drawer > .mdl-layout__drawer {
      transform: translateX(0); } }

.mdl-layout__drawer-button {
  display: block;
  position: absolute;
  height: 48px;
  width: 48px;
  border: 0;
  flex-shrink: 0;
  overflow: hidden;
  text-align: center;
  cursor: pointer;
  font-size: 26px;
  line-height: 50px;
  font-family: Helvetica, Arial, sans-serif;
  margin: 10px 12px;
  top: 0;
  left: 0;
  color: rgb(255,255,255);
  z-index: 4; }
  .mdl-layout__header .mdl-layout__drawer-button {
    position: absolute;
    color: rgb(255,255,255);
    background-color: inherit; }
    @media screen and (max-width: 1024px) {
      .mdl-layout__header .mdl-layout__drawer-button {
        margin: 4px; } }
  @media screen and (max-width: 1024px) {
    .mdl-layout__drawer-button {
      margin: 4px;
      color: rgba(0, 0, 0, 0.5); } }
  @media screen and (min-width: 1025px) {
    .mdl-layout--fixed-drawer > .mdl-layout__drawer-button {
      display: none; }
    .mdl-layout--no-desktop-drawer-button .mdl-layout__drawer-button {
      display: none; } }
  .mdl-layout--no-drawer-button .mdl-layout__drawer-button {
    display: none; }

.mdl-layout__header {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: flex-start;
  box-sizing: border-box;
  flex-shrink: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  border: none;
  min-height: 64px;
  max-height: 1000px;
  z-index: 3;
  background-color: rgb(63,81,181);
  color: rgb(255,255,255);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-property: max-height, box-shadow; }
  @media screen and (max-width: 1024px) {
    .mdl-layout__header {
      min-height: 56px; } }
  .mdl-layout--fixed-drawer.is-upgraded:not(.is-small-screen) > .mdl-layout__header {
    margin-left: 240px;
    width: calc(100% - 240px); }
  @media screen and (min-width: 1025px) {
    .mdl-layout--fixed-drawer > .mdl-layout__header .mdl-layout__header-row {
      padding-left: 40px; } }
  .mdl-layout__header > .mdl-layout-icon {
    position: absolute;
    left: 40px;
    top: 16px;
    height: 32px;
    width: 32px;
    overflow: hidden;
    z-index: 3;
    display: block; }
    @media screen and (max-width: 1024px) {
      .mdl-layout__header > .mdl-layout-icon {
        left: 16px;
        top: 12px; } }
  .mdl-layout.has-drawer .mdl-layout__header > .mdl-layout-icon {
    display: none; }
  .mdl-layout__header.is-compact {
    max-height: 64px; }
    @media screen and (max-width: 1024px) {
      .mdl-layout__header.is-compact {
        max-height: 56px; } }
  .mdl-layout__header.is-compact.has-tabs {
    height: 112px; }
    @media screen and (max-width: 1024px) {
      .mdl-layout__header.is-compact.has-tabs {
        min-height: 104px; } }
  @media screen and (max-width: 1024px) {
    .mdl-layout__header {
      display: none; }
    .mdl-layout--fixed-header > .mdl-layout__header {
      display: flex; } }

.mdl-layout__header--transparent.mdl-layout__header--transparent {
  background-color: transparent;
  box-shadow: none; }

.mdl-layout__header--seamed {
  box-shadow: none; }

.mdl-layout__header--scroll {
  box-shadow: none; }

.mdl-layout__header--waterfall {
  box-shadow: none;
  overflow: hidden; }
  .mdl-layout__header--waterfall.is-casting-shadow {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
  .mdl-layout__header--waterfall.mdl-layout__header--waterfall-hide-top {
    justify-content: flex-end; }

.mdl-layout__header-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  flex-shrink: 0;
  box-sizing: border-box;
  align-self: stretch;
  align-items: center;
  height: 64px;
  margin: 0;
  padding: 0 40px 0 80px; }
  .mdl-layout--no-drawer-button .mdl-layout__header-row {
    padding-left: 40px; }
  @media screen and (min-width: 1025px) {
    .mdl-layout--no-desktop-drawer-button .mdl-layout__header-row {
      padding-left: 40px; } }
  @media screen and (max-width: 1024px) {
    .mdl-layout__header-row {
      height: 56px;
      padding: 0 16px 0 72px; }
      .mdl-layout--no-drawer-button .mdl-layout__header-row {
        padding-left: 16px; } }
  .mdl-layout__header-row > * {
    flex-shrink: 0; }
  .mdl-layout__header--scroll .mdl-layout__header-row {
    width: 100%; }
  .mdl-layout__header-row .mdl-navigation {
    margin: 0;
    padding: 0;
    height: 64px;
    flex-direction: row;
    align-items: center; }
    @media screen and (max-width: 1024px) {
      .mdl-layout__header-row .mdl-navigation {
        height: 56px; } }
  .mdl-layout__header-row .mdl-navigation__link {
    display: block;
    color: rgb(255,255,255);
    line-height: 64px;
    padding: 0 24px; }
    @media screen and (max-width: 1024px) {
      .mdl-layout__header-row .mdl-navigation__link {
        line-height: 56px;
        padding: 0 16px; } }

.mdl-layout__obfuscator {
  background-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 4;
  visibility: hidden;
  transition-property: background-color;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
  .mdl-layout__obfuscator.is-visible {
    background-color: rgba(0, 0, 0, 0.5);
    visibility: visible; }
  @supports (pointer-events: auto) {
    .mdl-layout__obfuscator {
      background-color: rgba(0, 0, 0, 0.5);
      opacity: 0;
      transition-property: opacity;
      visibility: visible;
      pointer-events: none; }
      .mdl-layout__obfuscator.is-visible {
        pointer-events: auto;
        opacity: 1; } }

.mdl-layout__content {
  -ms-flex: 0 1 auto;
  position: relative;
  display: inline-block;
  overflow-y: auto;
  overflow-x: hidden;
  flex-grow: 1;
  z-index: 1;
  -webkit-overflow-scrolling: touch; }
  .mdl-layout--fixed-drawer > .mdl-layout__content {
    margin-left: 240px; }
  .mdl-layout__container.has-scrolling-header .mdl-layout__content {
    overflow: visible; }
  @media screen and (max-width: 1024px) {
    .mdl-layout--fixed-drawer > .mdl-layout__content {
      margin-left: 0; }
    .mdl-layout__container.has-scrolling-header .mdl-layout__content {
      overflow-y: auto;
      overflow-x: hidden; } }

.mdl-layout__tab-bar {
  height: 96px;
  margin: 0;
  width: calc(100% - 112px);
  padding: 0 0 0 56px;
  display: flex;
  background-color: rgb(63,81,181);
  overflow-y: hidden;
  overflow-x: scroll; }
  .mdl-layout__tab-bar::-webkit-scrollbar {
    display: none; }
  .mdl-layout--no-drawer-button .mdl-layout__tab-bar {
    padding-left: 16px;
    width: calc(100% - 32px); }
  @media screen and (min-width: 1025px) {
    .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar {
      padding-left: 16px;
      width: calc(100% - 32px); } }
  @media screen and (max-width: 1024px) {
    .mdl-layout__tab-bar {
      width: calc(100% - 60px);
      padding: 0 0 0 60px; }
      .mdl-layout--no-drawer-button .mdl-layout__tab-bar {
        width: calc(100% - 8px);
        padding-left: 4px; } }
  .mdl-layout--fixed-tabs .mdl-layout__tab-bar {
    padding: 0;
    overflow: hidden;
    width: 100%; }

.mdl-layout__tab-bar-container {
  position: relative;
  height: 48px;
  width: 100%;
  border: none;
  margin: 0;
  z-index: 2;
  flex-grow: 0;
  flex-shrink: 0;
  overflow: hidden; }
  .mdl-layout__container > .mdl-layout__tab-bar-container {
    position: absolute;
    top: 0;
    left: 0; }

.mdl-layout__tab-bar-button {
  display: inline-block;
  position: absolute;
  top: 0;
  height: 48px;
  width: 56px;
  z-index: 4;
  text-align: center;
  background-color: rgb(63,81,181);
  color: transparent;
  cursor: pointer;
  user-select: none; }
  .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button,
  .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button {
    width: 16px; }
    .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button .material-icons, .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button .dingo-menu-container > ul > li > a::before, .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button .dingo-menu-container > ul > li > a::after, .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button [dingo-icon-name] > a::before, .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button [dingo-icon-name] > a::after, .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button [dingo-icon-name] > span::before, .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button [dingo-icon-name] > span::after,
    .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button .material-icons,
    .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button .dingo-menu-container > ul > li > a::before,
    .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button .dingo-menu-container > ul > li > a::after,
    .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button [dingo-icon-name] > a::before,
    .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button [dingo-icon-name] > a::after,
    .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button [dingo-icon-name] > span::before,
    .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button [dingo-icon-name] > span::after {
      position: relative;
      left: -4px; }
  @media screen and (max-width: 1024px) {
    .mdl-layout__tab-bar-button {
      display: none;
      width: 60px; } }
  .mdl-layout--fixed-tabs .mdl-layout__tab-bar-button {
    display: none; }
  .mdl-layout__tab-bar-button .material-icons, .mdl-layout__tab-bar-button .dingo-menu-container > ul > li > a::before, .mdl-layout__tab-bar-button .dingo-menu-container > ul > li > a::after, .mdl-layout__tab-bar-button [dingo-icon-name] > a::before, .mdl-layout__tab-bar-button [dingo-icon-name] > a::after, .mdl-layout__tab-bar-button [dingo-icon-name] > span::before, .mdl-layout__tab-bar-button [dingo-icon-name] > span::after {
    line-height: 48px; }
  .mdl-layout__tab-bar-button.is-active {
    color: rgb(255,255,255); }

.mdl-layout__tab-bar-left-button {
  left: 0; }

.mdl-layout__tab-bar-right-button {
  right: 0; }

.mdl-layout__tab {
  margin: 0;
  border: none;
  padding: 0 24px 0 24px;
  float: left;
  position: relative;
  display: block;
  flex-grow: 0;
  flex-shrink: 0;
  text-decoration: none;
  height: 48px;
  line-height: 48px;
  text-align: center;
  font-weight: 500;
  font-size: 14px;
  text-transform: uppercase;
  color: rgba(255,255,255, 0.6);
  overflow: hidden; }
  @media screen and (max-width: 1024px) {
    .mdl-layout__tab {
      padding: 0 12px 0 12px; } }
  .mdl-layout--fixed-tabs .mdl-layout__tab {
    float: none;
    flex-grow: 1;
    padding: 0; }
  .mdl-layout.is-upgraded .mdl-layout__tab.is-active {
    color: rgb(255,255,255); }
  .mdl-layout.is-upgraded .mdl-layout__tab.is-active::after {
    height: 2px;
    width: 100%;
    display: block;
    content: " ";
    bottom: 0;
    left: 0;
    position: absolute;
    background: rgb(255,64,129);
    animation: border-expand 0.2s cubic-bezier(0.4, 0, 0.4, 1) 0.01s alternate forwards;
    transition: all 1s cubic-bezier(0.4, 0, 1, 1); }
  .mdl-layout__tab .mdl-layout__tab-ripple-container {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 1;
    overflow: hidden; }
    .mdl-layout__tab .mdl-layout__tab-ripple-container .mdl-ripple {
      background-color: rgb(255,255,255); }

.mdl-layout__tab-panel {
  display: block; }
  .mdl-layout.is-upgraded .mdl-layout__tab-panel {
    display: none; }
  .mdl-layout.is-upgraded .mdl-layout__tab-panel.is-active {
    display: block; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-radio {
  position: relative;
  font-size: 16px;
  line-height: 24px;
  display: inline-block;
  box-sizing: border-box;
  margin: 0;
  padding-left: 0; }
  .mdl-radio.is-upgraded {
    padding-left: 24px; }

.mdl-radio__button {
  line-height: 24px; }
  .mdl-radio.is-upgraded .mdl-radio__button {
    position: absolute;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    opacity: 0;
    -ms-appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none; }

.mdl-radio__outer-circle {
  position: absolute;
  top: 4px;
  left: 0;
  display: inline-block;
  box-sizing: border-box;
  width: 16px;
  height: 16px;
  margin: 0;
  cursor: pointer;
  border: 2px solid rgba(0,0,0, 0.54);
  border-radius: 50%;
  z-index: 2; }
  .mdl-radio.is-checked .mdl-radio__outer-circle {
    border: 2px solid rgb(63,81,181); }
  .mdl-radio__outer-circle fieldset[disabled] .mdl-radio,
  .mdl-radio.is-disabled .mdl-radio__outer-circle {
    border: 2px solid rgba(0,0,0, 0.26);
    cursor: auto; }

.mdl-radio__inner-circle {
  position: absolute;
  z-index: 1;
  margin: 0;
  top: 8px;
  left: 4px;
  box-sizing: border-box;
  width: 8px;
  height: 8px;
  cursor: pointer;
  transition-duration: 0.28s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-property: transform;
  transform: scale3d(0, 0, 0);
  border-radius: 50%;
  background: rgb(63,81,181); }
  .mdl-radio.is-checked .mdl-radio__inner-circle {
    transform: scale3d(1, 1, 1); }
  fieldset[disabled] .mdl-radio .mdl-radio__inner-circle,
  .mdl-radio.is-disabled .mdl-radio__inner-circle {
    background: rgba(0,0,0, 0.26);
    cursor: auto; }
  .mdl-radio.is-focused .mdl-radio__inner-circle {
    box-shadow: 0 0 0px 10px rgba(0, 0, 0, 0.1); }

.mdl-radio__label {
  cursor: pointer; }
  fieldset[disabled] .mdl-radio .mdl-radio__label,
  .mdl-radio.is-disabled .mdl-radio__label {
    color: rgba(0,0,0, 0.26);
    cursor: auto; }

.mdl-radio__ripple-container {
  position: absolute;
  z-index: 2;
  top: -9px;
  left: -13px;
  box-sizing: border-box;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  cursor: pointer;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(circle, white, black); }
  .mdl-radio__ripple-container .mdl-ripple {
    background: rgb(63,81,181); }
  fieldset[disabled] .mdl-radio .mdl-radio__ripple-container,
  .mdl-radio.is-disabled .mdl-radio__ripple-container {
    cursor: auto; }
  fieldset[disabled] .mdl-radio .mdl-radio__ripple-container .mdl-ripple,
  .mdl-radio.is-disabled .mdl-radio__ripple-container .mdl-ripple {
    background: transparent; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
_:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
  -ms-appearance: none;
  height: 32px;
  margin: 0; }

.mdl-slider {
  width: calc(100% - 40px);
  margin: 0 20px; }
  .mdl-slider.is-upgraded {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 2px;
    background: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    outline: 0;
    padding: 0;
    color: rgb(63,81,181);
    align-self: center;
    z-index: 1;
    cursor: pointer;
    /**************************** Tracks ****************************/
    /**************************** Thumbs ****************************/
    /**************************** 0-value ****************************/
    /**************************** Disabled ****************************/ }
    .mdl-slider.is-upgraded::-moz-focus-outer {
      border: 0; }
    .mdl-slider.is-upgraded::-ms-tooltip {
      display: none; }
    .mdl-slider.is-upgraded::-webkit-slider-runnable-track {
      background: transparent; }
    .mdl-slider.is-upgraded::-moz-range-track {
      background: transparent;
      border: none; }
    .mdl-slider.is-upgraded::-ms-track {
      background: none;
      color: transparent;
      height: 2px;
      width: 100%;
      border: none; }
    .mdl-slider.is-upgraded::-ms-fill-lower {
      padding: 0;
      background: linear-gradient(to right, transparent, transparent 16px, rgb(63,81,181) 16px, rgb(63,81,181) 0); }
    .mdl-slider.is-upgraded::-ms-fill-upper {
      padding: 0;
      background: linear-gradient(to left, transparent, transparent 16px, rgba(0,0,0, 0.26) 16px, rgba(0,0,0, 0.26) 0); }
    .mdl-slider.is-upgraded::-webkit-slider-thumb {
      -webkit-appearance: none;
      width: 12px;
      height: 12px;
      box-sizing: border-box;
      border-radius: 50%;
      background: rgb(63,81,181);
      border: none;
      transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), border 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
    .mdl-slider.is-upgraded::-moz-range-thumb {
      -moz-appearance: none;
      width: 12px;
      height: 12px;
      box-sizing: border-box;
      border-radius: 50%;
      background-image: none;
      background: rgb(63,81,181);
      border: none; }
    .mdl-slider.is-upgraded:focus:not(:active)::-webkit-slider-thumb {
      box-shadow: 0 0 0 10px rgba(63,81,181, 0.26); }
    .mdl-slider.is-upgraded:focus:not(:active)::-moz-range-thumb {
      box-shadow: 0 0 0 10px rgba(63,81,181, 0.26); }
    .mdl-slider.is-upgraded:active::-webkit-slider-thumb {
      background-image: none;
      background: rgb(63,81,181);
      transform: scale(1.5); }
    .mdl-slider.is-upgraded:active::-moz-range-thumb {
      background-image: none;
      background: rgb(63,81,181);
      transform: scale(1.5); }
    .mdl-slider.is-upgraded::-ms-thumb {
      width: 32px;
      height: 32px;
      border: none;
      border-radius: 50%;
      background: rgb(63,81,181);
      transform: scale(0.375);
      transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
    .mdl-slider.is-upgraded:focus:not(:active)::-ms-thumb {
      background: radial-gradient(circle closest-side, rgb(63,81,181) 0%, rgb(63,81,181) 37.5%, rgba(63,81,181, 0.26) 37.5%, rgba(63,81,181, 0.26) 100%);
      transform: scale(1); }
    .mdl-slider.is-upgraded:active::-ms-thumb {
      background: rgb(63,81,181);
      transform: scale(0.5625); }
    .mdl-slider.is-upgraded.is-lowest-value::-webkit-slider-thumb {
      border: 2px solid rgba(0,0,0, 0.26);
      background: transparent; }
    .mdl-slider.is-upgraded.is-lowest-value::-moz-range-thumb {
      border: 2px solid rgba(0,0,0, 0.26);
      background: transparent; }
    .mdl-slider.is-upgraded.is-lowest-value +
.mdl-slider__background-flex > .mdl-slider__background-upper {
      left: 6px; }
    .mdl-slider.is-upgraded.is-lowest-value:focus:not(:active)::-webkit-slider-thumb {
      box-shadow: 0 0 0 10px rgba(0,0,0, 0.12);
      background: rgba(0,0,0, 0.12); }
    .mdl-slider.is-upgraded.is-lowest-value:focus:not(:active)::-moz-range-thumb {
      box-shadow: 0 0 0 10px rgba(0,0,0, 0.12);
      background: rgba(0,0,0, 0.12); }
    .mdl-slider.is-upgraded.is-lowest-value:active::-webkit-slider-thumb {
      border: 1.6px solid rgba(0,0,0, 0.26);
      transform: scale(1.5); }
    .mdl-slider.is-upgraded.is-lowest-value:active +
.mdl-slider__background-flex > .mdl-slider__background-upper {
      left: 9px; }
    .mdl-slider.is-upgraded.is-lowest-value:active::-moz-range-thumb {
      border: 1.5px solid rgba(0,0,0, 0.26);
      transform: scale(1.5); }
    .mdl-slider.is-upgraded.is-lowest-value::-ms-thumb {
      background: radial-gradient(circle closest-side, transparent 0%, transparent 66.67%, rgba(0,0,0, 0.26) 66.67%, rgba(0,0,0, 0.26) 100%); }
    .mdl-slider.is-upgraded.is-lowest-value:focus:not(:active)::-ms-thumb {
      background: radial-gradient(circle closest-side, rgba(0,0,0, 0.12) 0%, rgba(0,0,0, 0.12) 25%, rgba(0,0,0, 0.26) 25%, rgba(0,0,0, 0.26) 37.5%, rgba(0,0,0, 0.12) 37.5%, rgba(0,0,0, 0.12) 100%);
      transform: scale(1); }
    .mdl-slider.is-upgraded.is-lowest-value:active::-ms-thumb {
      transform: scale(0.5625);
      background: radial-gradient(circle closest-side, transparent 0%, transparent 77.78%, rgba(0,0,0, 0.26) 77.78%, rgba(0,0,0, 0.26) 100%); }
    .mdl-slider.is-upgraded.is-lowest-value::-ms-fill-lower {
      background: transparent; }
    .mdl-slider.is-upgraded.is-lowest-value::-ms-fill-upper {
      margin-left: 6px; }
    .mdl-slider.is-upgraded.is-lowest-value:active::-ms-fill-upper {
      margin-left: 9px; }
    .mdl-slider.is-upgraded:disabled:focus::-webkit-slider-thumb, .mdl-slider.is-upgraded:disabled:active::-webkit-slider-thumb, .mdl-slider.is-upgraded:disabled::-webkit-slider-thumb {
      transform: scale(0.667);
      background: rgba(0,0,0, 0.26); }
    .mdl-slider.is-upgraded:disabled:focus::-moz-range-thumb, .mdl-slider.is-upgraded:disabled:active::-moz-range-thumb, .mdl-slider.is-upgraded:disabled::-moz-range-thumb {
      transform: scale(0.667);
      background: rgba(0,0,0, 0.26); }
    .mdl-slider.is-upgraded:disabled +
.mdl-slider__background-flex > .mdl-slider__background-lower {
      background-color: rgba(0,0,0, 0.26);
      left: -6px; }
    .mdl-slider.is-upgraded:disabled +
.mdl-slider__background-flex > .mdl-slider__background-upper {
      left: 6px; }
    .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-webkit-slider-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-webkit-slider-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled::-webkit-slider-thumb {
      border: 3px solid rgba(0,0,0, 0.26);
      background: transparent;
      transform: scale(0.667); }
    .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-moz-range-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-moz-range-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled::-moz-range-thumb {
      border: 3px solid rgba(0,0,0, 0.26);
      background: transparent;
      transform: scale(0.667); }
    .mdl-slider.is-upgraded.is-lowest-value:disabled:active +
.mdl-slider__background-flex > .mdl-slider__background-upper {
      left: 6px; }
    .mdl-slider.is-upgraded:disabled:focus::-ms-thumb, .mdl-slider.is-upgraded:disabled:active::-ms-thumb, .mdl-slider.is-upgraded:disabled::-ms-thumb {
      transform: scale(0.25);
      background: rgba(0,0,0, 0.26); }
    .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-ms-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-ms-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled::-ms-thumb {
      transform: scale(0.25);
      background: radial-gradient(circle closest-side, transparent 0%, transparent 50%, rgba(0,0,0, 0.26) 50%, rgba(0,0,0, 0.26) 100%); }
    .mdl-slider.is-upgraded:disabled::-ms-fill-lower {
      margin-right: 6px;
      background: linear-gradient(to right, transparent, transparent 25px, rgba(0,0,0, 0.26) 25px, rgba(0,0,0, 0.26) 0); }
    .mdl-slider.is-upgraded:disabled::-ms-fill-upper {
      margin-left: 6px; }
    .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-ms-fill-upper {
      margin-left: 6px; }

.mdl-slider__ie-container {
  height: 18px;
  overflow: visible;
  border: none;
  margin: none;
  padding: none; }

.mdl-slider__container {
  height: 18px;
  position: relative;
  background: none;
  display: flex;
  flex-direction: row; }

.mdl-slider__background-flex {
  background: transparent;
  position: absolute;
  height: 2px;
  width: calc(100% - 52px);
  top: 50%;
  left: 0;
  margin: 0 26px;
  display: flex;
  overflow: hidden;
  border: 0;
  padding: 0;
  transform: translate(0, -1px); }

.mdl-slider__background-lower {
  background: rgb(63,81,181);
  flex: 0;
  position: relative;
  border: 0;
  padding: 0; }

.mdl-slider__background-upper {
  background: rgba(0,0,0, 0.26);
  flex: 0;
  position: relative;
  border: 0;
  padding: 0;
  transition: left 0.18s cubic-bezier(0.4, 0, 0.2, 1); }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-snackbar {
  position: fixed;
  bottom: 0;
  left: 50%;
  cursor: default;
  background-color: #323232;
  z-index: 3;
  display: block;
  display: flex;
  justify-content: space-between;
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  will-change: transform;
  transform: translate(0, 80px);
  transition: transform 0.25s cubic-bezier(0.4, 0, 1, 1);
  pointer-events: none; }
  @media (max-width: 479px) {
    .mdl-snackbar {
      width: 100%;
      left: 0;
      min-height: 48px;
      max-height: 80px; } }
  @media (min-width: 480px) {
    .mdl-snackbar {
      min-width: 288px;
      max-width: 568px;
      border-radius: 2px;
      transform: translate(-50%, 80px); } }
  .mdl-snackbar--active {
    transform: translate(0, 0);
    pointer-events: auto;
    transition: transform 0.25s cubic-bezier(0, 0, 0.2, 1); }
    @media (min-width: 480px) {
      .mdl-snackbar--active {
        transform: translate(-50%, 0); } }
  .mdl-snackbar__text {
    padding: 14px 12px 14px 24px;
    vertical-align: middle;
    color: white;
    float: left; }
  .mdl-snackbar__action {
    background: transparent;
    border: none;
    color: rgb(255,64,129);
    float: right;
    text-transform: uppercase;
    padding: 14px 24px 14px 12px;
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: 0;
    overflow: hidden;
    outline: none;
    opacity: 0;
    pointer-events: none;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
    align-self: center; }
    .mdl-snackbar__action::-moz-focus-inner {
      border: 0; }
    .mdl-snackbar__action:not([aria-hidden]) {
      opacity: 1;
      pointer-events: auto; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-spinner {
  display: inline-block;
  position: relative;
  width: 28px;
  height: 28px; }
  .mdl-spinner:not(.is-upgraded).is-active:after {
    content: "Loading..."; }
  .mdl-spinner.is-upgraded.is-active {
    animation: mdl-spinner__container-rotate 1568.23529ms linear infinite; }

@keyframes mdl-spinner__container-rotate {
  to {
    transform: rotate(360deg); } }

.mdl-spinner__layer {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0; }

.mdl-spinner__layer-1 {
  border-color: rgb(66,165,245); }
  .mdl-spinner--single-color .mdl-spinner__layer-1 {
    border-color: rgb(63,81,181); }
  .mdl-spinner.is-active .mdl-spinner__layer-1 {
    animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-1-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

.mdl-spinner__layer-2 {
  border-color: rgb(244,67,54); }
  .mdl-spinner--single-color .mdl-spinner__layer-2 {
    border-color: rgb(63,81,181); }
  .mdl-spinner.is-active .mdl-spinner__layer-2 {
    animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-2-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

.mdl-spinner__layer-3 {
  border-color: rgb(253,216,53); }
  .mdl-spinner--single-color .mdl-spinner__layer-3 {
    border-color: rgb(63,81,181); }
  .mdl-spinner.is-active .mdl-spinner__layer-3 {
    animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-3-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

.mdl-spinner__layer-4 {
  border-color: rgb(76,175,80); }
  .mdl-spinner--single-color .mdl-spinner__layer-4 {
    border-color: rgb(63,81,181); }
  .mdl-spinner.is-active .mdl-spinner__layer-4 {
    animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-4-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

@keyframes mdl-spinner__fill-unfill-rotate {
  12.5% {
    transform: rotate(135deg); }
  25% {
    transform: rotate(270deg); }
  37.5% {
    transform: rotate(405deg); }
  50% {
    transform: rotate(540deg); }
  62.5% {
    transform: rotate(675deg); }
  75% {
    transform: rotate(810deg); }
  87.5% {
    transform: rotate(945deg); }
  to {
    transform: rotate(1080deg); } }

/**
* HACK: Even though the intention is to have the current .mdl-spinner__layer-N
* at `opacity: 1`, we set it to `opacity: 0.99` instead since this forces Chrome
* to do proper subpixel rendering for the elements being animated. This is
* especially visible in Chrome 39 on Ubuntu 14.04. See:
*
* - https://github.com/Polymer/paper-spinner/issues/9
* - https://code.google.com/p/chromium/issues/detail?id=436255
*/
@keyframes mdl-spinner__layer-1-fade-in-out {
  from {
    opacity: 0.99; }
  25% {
    opacity: 0.99; }
  26% {
    opacity: 0; }
  89% {
    opacity: 0; }
  90% {
    opacity: 0.99; }
  100% {
    opacity: 0.99; } }

@keyframes mdl-spinner__layer-2-fade-in-out {
  from {
    opacity: 0; }
  15% {
    opacity: 0; }
  25% {
    opacity: 0.99; }
  50% {
    opacity: 0.99; }
  51% {
    opacity: 0; } }

@keyframes mdl-spinner__layer-3-fade-in-out {
  from {
    opacity: 0; }
  40% {
    opacity: 0; }
  50% {
    opacity: 0.99; }
  75% {
    opacity: 0.99; }
  76% {
    opacity: 0; } }

@keyframes mdl-spinner__layer-4-fade-in-out {
  from {
    opacity: 0; }
  65% {
    opacity: 0; }
  75% {
    opacity: 0.99; }
  90% {
    opacity: 0.99; }
  100% {
    opacity: 0; } }

/**
* Patch the gap that appear between the two adjacent
* div.mdl-spinner__circle-clipper while the spinner is rotating
* (appears on Chrome 38, Safari 7.1, and IE 11).
*
* Update: the gap no longer appears on Chrome when .mdl-spinner__layer-N's
* opacity is 0.99, but still does on Safari and IE.
*/
.mdl-spinner__gap-patch {
  position: absolute;
  box-sizing: border-box;
  top: 0;
  left: 45%;
  width: 10%;
  height: 100%;
  overflow: hidden;
  border-color: inherit; }
  .mdl-spinner__gap-patch .mdl-spinner__circle {
    width: 1000%;
    left: -450%; }

.mdl-spinner__circle-clipper {
  display: inline-block;
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  border-color: inherit; }
  .mdl-spinner__circle-clipper .mdl-spinner__circle {
    width: 200%; }

.mdl-spinner__circle {
  box-sizing: border-box;
  height: 100%;
  border-width: 3px;
  border-style: solid;
  border-color: inherit;
  border-bottom-color: transparent !important;
  border-radius: 50%;
  animation: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  .mdl-spinner__left .mdl-spinner__circle {
    border-right-color: transparent !important;
    transform: rotate(129deg); }
    .mdl-spinner.is-active .mdl-spinner__left .mdl-spinner__circle {
      animation: mdl-spinner__left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }
  .mdl-spinner__right .mdl-spinner__circle {
    left: -100%;
    border-left-color: transparent !important;
    transform: rotate(-129deg); }
    .mdl-spinner.is-active .mdl-spinner__right .mdl-spinner__circle {
      animation: mdl-spinner__right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

@keyframes mdl-spinner__left-spin {
  from {
    transform: rotate(130deg); }
  50% {
    transform: rotate(-5deg); }
  to {
    transform: rotate(130deg); } }

@keyframes mdl-spinner__right-spin {
  from {
    transform: rotate(-130deg); }
  50% {
    transform: rotate(5deg); }
  to {
    transform: rotate(-130deg); } }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-switch {
  position: relative;
  z-index: 1;
  vertical-align: middle;
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  height: 24px;
  margin: 0;
  padding: 0;
  overflow: visible;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .mdl-switch.is-upgraded {
    padding-left: 28px; }

.mdl-switch__input {
  line-height: 24px; }
  .mdl-switch.is-upgraded .mdl-switch__input {
    position: absolute;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    opacity: 0;
    -ms-appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none; }

.mdl-switch__track {
  background: rgba(0,0,0, 0.26);
  position: absolute;
  left: 0;
  top: 5px;
  height: 14px;
  width: 36px;
  border-radius: 14px;
  cursor: pointer; }
  .mdl-switch.is-checked .mdl-switch__track {
    background: rgba(63,81,181, 0.5); }
  .mdl-switch__track fieldset[disabled] .mdl-switch,
  .mdl-switch.is-disabled .mdl-switch__track {
    background: rgba(0,0,0, 0.12);
    cursor: auto; }

.mdl-switch__thumb {
  background: rgb(250,250,250);
  position: absolute;
  left: 0;
  top: 2px;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  cursor: pointer;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
  transition-duration: 0.28s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-property: left; }
  .mdl-switch.is-checked .mdl-switch__thumb {
    background: rgb(63,81,181);
    left: 16px;
    box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 1px 8px 0 rgba(0, 0, 0, 0.12); }
  .mdl-switch__thumb fieldset[disabled] .mdl-switch,
  .mdl-switch.is-disabled .mdl-switch__thumb {
    background: rgb(189,189,189);
    cursor: auto; }

.mdl-switch__focus-helper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-4px, -4px);
  display: inline-block;
  box-sizing: border-box;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: transparent; }
  .mdl-switch.is-focused .mdl-switch__focus-helper {
    box-shadow: 0 0 0px 20px rgba(0, 0, 0, 0.1);
    background-color: rgba(0, 0, 0, 0.1); }
  .mdl-switch.is-focused.is-checked .mdl-switch__focus-helper {
    box-shadow: 0 0 0px 20px rgba(63,81,181, 0.26);
    background-color: rgba(63,81,181, 0.26); }

.mdl-switch__label {
  position: relative;
  cursor: pointer;
  font-size: 16px;
  line-height: 24px;
  margin: 0;
  left: 24px; }
  .mdl-switch__label fieldset[disabled] .mdl-switch,
  .mdl-switch.is-disabled .mdl-switch__label {
    color: rgb(189,189,189);
    cursor: auto; }

.mdl-switch__ripple-container {
  position: absolute;
  z-index: 2;
  top: -12px;
  left: -14px;
  box-sizing: border-box;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  cursor: pointer;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(circle, white, black);
  transition-duration: 0.40s;
  transition-timing-function: step-end;
  transition-property: left; }
  .mdl-switch__ripple-container .mdl-ripple {
    background: rgb(63,81,181); }
  .mdl-switch__ripple-container fieldset[disabled] .mdl-switch,
  .mdl-switch.is-disabled .mdl-switch__ripple-container {
    cursor: auto; }
  fieldset[disabled] .mdl-switch .mdl-switch__ripple-container .mdl-ripple,
  .mdl-switch.is-disabled .mdl-switch__ripple-container .mdl-ripple {
    background: transparent; }
  .mdl-switch.is-checked .mdl-switch__ripple-container {
    left: 2px; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-tabs {
  display: block;
  width: 100%; }

.mdl-tabs__tab-bar {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-content: space-between;
  align-items: flex-start;
  height: 48px;
  padding: 0 0 0 0;
  margin: 0;
  border-bottom: 1px solid rgb(224,224,224); }

.mdl-tabs__tab {
  margin: 0;
  border: none;
  padding: 0 24px 0 24px;
  float: left;
  position: relative;
  display: block;
  text-decoration: none;
  height: 48px;
  line-height: 48px;
  text-align: center;
  font-weight: 500;
  font-size: 14px;
  text-transform: uppercase;
  color: rgba(0,0,0, 0.54);
  overflow: hidden; }
  .mdl-tabs.is-upgraded .mdl-tabs__tab.is-active {
    color: rgba(0,0,0, 0.87); }
  .mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after {
    height: 2px;
    width: 100%;
    display: block;
    content: " ";
    bottom: 0px;
    left: 0px;
    position: absolute;
    background: rgb(63,81,181);
    animation: border-expand 0.2s cubic-bezier(0.4, 0, 0.4, 1) 0.01s alternate forwards;
    transition: all 1s cubic-bezier(0.4, 0, 1, 1); }
  .mdl-tabs__tab .mdl-tabs__ripple-container {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0px;
    top: 0px;
    z-index: 1;
    overflow: hidden; }
    .mdl-tabs__tab .mdl-tabs__ripple-container .mdl-ripple {
      background: rgb(63,81,181); }

.mdl-tabs__panel {
  display: block; }
  .mdl-tabs.is-upgraded .mdl-tabs__panel {
    display: none; }
  .mdl-tabs.is-upgraded .mdl-tabs__panel.is-active {
    display: block; }

@keyframes border-expand {
  0% {
    opacity: 0;
    width: 0; }
  100% {
    opacity: 1;
    width: 100%; } }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-textfield {
  position: relative;
  font-size: 16px;
  display: inline-block;
  box-sizing: border-box;
  width: 300px;
  max-width: 100%;
  margin: 0;
  padding: 20px 0; }
  .mdl-textfield .mdl-button {
    position: absolute;
    bottom: 20px; }

.mdl-textfield--align-right {
  text-align: right; }

.mdl-textfield--full-width {
  width: 100%; }

.mdl-textfield--expandable {
  min-width: 32px;
  width: auto;
  min-height: 32px; }

.mdl-textfield__input {
  border: none;
  border-bottom: 1px solid rgba(0,0,0, 0.12);
  display: block;
  font-size: 16px;
  font-family: "Helvetica", "Arial", sans-serif;
  margin: 0;
  padding: 4px 0;
  width: 100%;
  background: none;
  text-align: left;
  color: inherit; }
  .mdl-textfield__input[type="number"] {
    -moz-appearance: textfield; }
  .mdl-textfield__input[type="number"]::-webkit-inner-spin-button, .mdl-textfield__input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  .mdl-textfield.is-focused .mdl-textfield__input {
    outline: none; }
  .mdl-textfield.is-invalid .mdl-textfield__input {
    border-color: rgb(213,0,0);
    box-shadow: none; }
  fieldset[disabled] .mdl-textfield .mdl-textfield__input,
  .mdl-textfield.is-disabled .mdl-textfield__input {
    background-color: transparent;
    border-bottom: 1px dotted rgba(0,0,0, 0.12);
    color: rgba(0,0,0, 0.26); }

.mdl-textfield textarea.mdl-textfield__input {
  display: block; }

.mdl-textfield__label {
  bottom: 0;
  color: rgba(0,0,0, 0.26);
  font-size: 16px;
  left: 0;
  right: 0;
  pointer-events: none;
  position: absolute;
  display: block;
  top: 24px;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-align: left; }
  .mdl-textfield.is-dirty .mdl-textfield__label,
  .mdl-textfield.has-placeholder .mdl-textfield__label {
    visibility: hidden; }
  .mdl-textfield--floating-label .mdl-textfield__label {
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
  .mdl-textfield--floating-label.has-placeholder .mdl-textfield__label {
    transition: none; }
  fieldset[disabled] .mdl-textfield .mdl-textfield__label,
  .mdl-textfield.is-disabled.is-disabled .mdl-textfield__label {
    color: rgba(0,0,0, 0.26); }
  .mdl-textfield--floating-label.is-focused .mdl-textfield__label,
  .mdl-textfield--floating-label.is-dirty .mdl-textfield__label,
  .mdl-textfield--floating-label.has-placeholder .mdl-textfield__label {
    color: rgb(63,81,181);
    font-size: 12px;
    top: 4px;
    visibility: visible; }
  .mdl-textfield--floating-label.is-focused .mdl-textfield__expandable-holder .mdl-textfield__label,
  .mdl-textfield--floating-label.is-dirty .mdl-textfield__expandable-holder .mdl-textfield__label,
  .mdl-textfield--floating-label.has-placeholder .mdl-textfield__expandable-holder .mdl-textfield__label {
    top: -16px; }
  .mdl-textfield--floating-label.is-invalid .mdl-textfield__label {
    color: rgb(213,0,0);
    font-size: 12px; }
  .mdl-textfield__label:after {
    background-color: rgb(63,81,181);
    bottom: 20px;
    content: '';
    height: 2px;
    left: 45%;
    position: absolute;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    visibility: hidden;
    width: 10px; }
  .mdl-textfield.is-focused .mdl-textfield__label:after {
    left: 0;
    visibility: visible;
    width: 100%; }
  .mdl-textfield.is-invalid .mdl-textfield__label:after {
    background-color: rgb(213,0,0); }

.mdl-textfield__error {
  color: rgb(213,0,0);
  position: absolute;
  font-size: 12px;
  margin-top: 3px;
  visibility: hidden;
  display: block; }
  .mdl-textfield.is-invalid .mdl-textfield__error {
    visibility: visible; }

.mdl-textfield__expandable-holder {
  display: inline-block;
  position: relative;
  margin-left: 32px;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  display: inline-block;
  max-width: 0.1px; }
  .mdl-textfield.is-focused .mdl-textfield__expandable-holder, .mdl-textfield.is-dirty .mdl-textfield__expandable-holder {
    max-width: 600px; }
  .mdl-textfield__expandable-holder .mdl-textfield__label:after {
    bottom: 0; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-tooltip {
  transform: scale(0);
  transform-origin: top center;
  will-change: transform;
  z-index: 999;
  background: rgba(97,97,97, 0.9);
  border-radius: 2px;
  color: rgb(255,255,255);
  display: inline-block;
  font-size: 10px;
  font-weight: 500;
  line-height: 14px;
  max-width: 170px;
  position: fixed;
  top: -500px;
  left: -500px;
  padding: 8px;
  text-align: center; }

.mdl-tooltip.is-active {
  animation: pulse 200ms cubic-bezier(0, 0, 0.2, 1) forwards; }

.mdl-tooltip--large {
  line-height: 14px;
  font-size: 14px;
  padding: 16px; }

@keyframes pulse {
  0% {
    transform: scale(0);
    opacity: 0; }
  50% {
    transform: scale(0.99); }
  100% {
    transform: scale(1);
    opacity: 1;
    visibility: visible; } }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-shadow--2dp {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }

.mdl-shadow--3dp {
  box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 1px 8px 0 rgba(0, 0, 0, 0.12); }

.mdl-shadow--4dp {
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2); }

.mdl-shadow--6dp {
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.2); }

.mdl-shadow--8dp {
  box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2); }

.mdl-shadow--16dp {
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2); }

.mdl-shadow--24dp {
  box-shadow: 0 9px 46px 8px rgba(0, 0, 0, 0.14), 0 11px 15px -7px rgba(0, 0, 0, 0.12), 0 24px 38px 3px rgba(0, 0, 0, 0.2); }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*
* NOTE: Some rules here are applied using duplicate selectors.
* This is on purpose to increase their specificity when applied.
* For example: `.mdl-cell--1-col-phone.mdl-cell--1-col-phone`
*/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Textfield
 * -----Switch
 * -----Spinner
 * -----Radio
 * -----Menu
 * -----List
 * -----Layout
 * -----Icon toggles
 * -----Footer
 * -----Column
 * -----Checkbox
 * -----Card
 * -----Button
 * -----Animation
 * -----Progress
 * -----Badge
 * -----Shadows
 * -----Grid
 * -----Data table
 * -----Dialog
 * -----Snackbar
 *
 * Even though all variables have the `!default` directive, most of them
 * should not be changed as they are dependent one another. This can cause
 * visual distortions (like alignment issues) that are hard to track down
 * and fix.
 */
/* ==========  TYPOGRAPHY  ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
   page loading. For important text, such as the body, we want it to load
   immediately and not wait for the web font load, whereas for other sections,
   such as headers and titles, we're OK with things taking a bit longer to load.
   We do have some optional classes and parameters in the mixins, in case you
   definitely want to make sure you're using the preferred font and don't mind
   the performance hit.
   We should be able to improve on this once CSS Font Loading L3 becomes more
   widely available.
*/
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* colors.scss */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  IMAGES  ========== */
/* ==========  Color & Themes  ========== */
/* ==========  Typography  ========== */
/* ==========  Components  ========== */
/* ==========  Standard Buttons  ========== */
/* ==========  Icon Toggles  ========== */
/* ==========  Radio Buttons  ========== */
/* ==========  Ripple effect  ========== */
/* ==========  Layout  ========== */
/* ==========  Content Tabs  ========== */
/* ==========  Checkboxes  ========== */
/* ==========  Switches  ========== */
/* ==========  Spinner  ========== */
/* ==========  Text fields  ========== */
/* ==========  Card  ========== */
/* ==========  Sliders ========== */
/* ========== Progress ========== */
/* ==========  List ========== */
/* ==========  Item ========== */
/* ==========  Dropdown menu ========== */
/* ==========  Tooltips  ========== */
/* ==========  Footer  ========== */
/* TEXTFIELD */
/* SWITCH */
/* SPINNER */
/* RADIO */
/* MENU */
/* LIST */
/* LAYOUT */
/* ICON TOGGLE */
/* FOOTER */
/*mega-footer*/
/*mini-footer*/
/* CHECKBOX */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BUTTON */
/**
 *
 * Dimensions
 *
 */
/* ANIMATION */
/* PROGRESS */
/* BADGE */
/* SHADOWS */
/* GRID */
/* DATA TABLE */
/* DIALOG */
/* SNACKBAR */
/* TOOLTIP */
.mdl-grid {
  display: flex;
  flex-flow: row wrap;
  margin: 0 auto 0 auto;
  align-items: stretch; }
  .mdl-grid.mdl-grid--no-spacing {
    padding: 0; }

.mdl-cell {
  box-sizing: border-box; }

.mdl-cell--top {
  align-self: flex-start; }

.mdl-cell--middle {
  align-self: center; }

.mdl-cell--bottom {
  align-self: flex-end; }

.mdl-cell--stretch {
  align-self: stretch; }

.mdl-grid.mdl-grid--no-spacing > .mdl-cell {
  margin: 0; }

.mdl-cell--order-1 {
  order: 1; }

.mdl-cell--order-2 {
  order: 2; }

.mdl-cell--order-3 {
  order: 3; }

.mdl-cell--order-4 {
  order: 4; }

.mdl-cell--order-5 {
  order: 5; }

.mdl-cell--order-6 {
  order: 6; }

.mdl-cell--order-7 {
  order: 7; }

.mdl-cell--order-8 {
  order: 8; }

.mdl-cell--order-9 {
  order: 9; }

.mdl-cell--order-10 {
  order: 10; }

.mdl-cell--order-11 {
  order: 11; }

.mdl-cell--order-12 {
  order: 12; }

@media (max-width: 479px) {
  .mdl-grid {
    padding: 8px; }
  .mdl-cell {
    margin: 8px;
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell {
      width: 100%; }
  .mdl-cell--hide-phone {
    display: none !important; }
  .mdl-cell--order-1-phone.mdl-cell--order-1-phone {
    order: 1; }
  .mdl-cell--order-2-phone.mdl-cell--order-2-phone {
    order: 2; }
  .mdl-cell--order-3-phone.mdl-cell--order-3-phone {
    order: 3; }
  .mdl-cell--order-4-phone.mdl-cell--order-4-phone {
    order: 4; }
  .mdl-cell--order-5-phone.mdl-cell--order-5-phone {
    order: 5; }
  .mdl-cell--order-6-phone.mdl-cell--order-6-phone {
    order: 6; }
  .mdl-cell--order-7-phone.mdl-cell--order-7-phone {
    order: 7; }
  .mdl-cell--order-8-phone.mdl-cell--order-8-phone {
    order: 8; }
  .mdl-cell--order-9-phone.mdl-cell--order-9-phone {
    order: 9; }
  .mdl-cell--order-10-phone.mdl-cell--order-10-phone {
    order: 10; }
  .mdl-cell--order-11-phone.mdl-cell--order-11-phone {
    order: 11; }
  .mdl-cell--order-12-phone.mdl-cell--order-12-phone {
    order: 12; }
  .mdl-cell--1-col,
  .mdl-cell--1-col-phone.mdl-cell--1-col-phone {
    width: calc(25% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--1-col, .mdl-grid--no-spacing >
    .mdl-cell--1-col-phone.mdl-cell--1-col-phone {
      width: 25%; }
  .mdl-cell--2-col,
  .mdl-cell--2-col-phone.mdl-cell--2-col-phone {
    width: calc(50% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--2-col, .mdl-grid--no-spacing >
    .mdl-cell--2-col-phone.mdl-cell--2-col-phone {
      width: 50%; }
  .mdl-cell--3-col,
  .mdl-cell--3-col-phone.mdl-cell--3-col-phone {
    width: calc(75% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--3-col, .mdl-grid--no-spacing >
    .mdl-cell--3-col-phone.mdl-cell--3-col-phone {
      width: 75%; }
  .mdl-cell--4-col,
  .mdl-cell--4-col-phone.mdl-cell--4-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--4-col, .mdl-grid--no-spacing >
    .mdl-cell--4-col-phone.mdl-cell--4-col-phone {
      width: 100%; }
  .mdl-cell--5-col,
  .mdl-cell--5-col-phone.mdl-cell--5-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--5-col, .mdl-grid--no-spacing >
    .mdl-cell--5-col-phone.mdl-cell--5-col-phone {
      width: 100%; }
  .mdl-cell--6-col,
  .mdl-cell--6-col-phone.mdl-cell--6-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--6-col, .mdl-grid--no-spacing >
    .mdl-cell--6-col-phone.mdl-cell--6-col-phone {
      width: 100%; }
  .mdl-cell--7-col,
  .mdl-cell--7-col-phone.mdl-cell--7-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--7-col, .mdl-grid--no-spacing >
    .mdl-cell--7-col-phone.mdl-cell--7-col-phone {
      width: 100%; }
  .mdl-cell--8-col,
  .mdl-cell--8-col-phone.mdl-cell--8-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--8-col, .mdl-grid--no-spacing >
    .mdl-cell--8-col-phone.mdl-cell--8-col-phone {
      width: 100%; }
  .mdl-cell--9-col,
  .mdl-cell--9-col-phone.mdl-cell--9-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--9-col, .mdl-grid--no-spacing >
    .mdl-cell--9-col-phone.mdl-cell--9-col-phone {
      width: 100%; }
  .mdl-cell--10-col,
  .mdl-cell--10-col-phone.mdl-cell--10-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--10-col, .mdl-grid--no-spacing >
    .mdl-cell--10-col-phone.mdl-cell--10-col-phone {
      width: 100%; }
  .mdl-cell--11-col,
  .mdl-cell--11-col-phone.mdl-cell--11-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--11-col, .mdl-grid--no-spacing >
    .mdl-cell--11-col-phone.mdl-cell--11-col-phone {
      width: 100%; }
  .mdl-cell--12-col,
  .mdl-cell--12-col-phone.mdl-cell--12-col-phone {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--12-col, .mdl-grid--no-spacing >
    .mdl-cell--12-col-phone.mdl-cell--12-col-phone {
      width: 100%; }
  .mdl-cell--1-offset,
  .mdl-cell--1-offset-phone.mdl-cell--1-offset-phone {
    margin-left: calc(25% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--1-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--1-offset-phone.mdl-cell--1-offset-phone {
      margin-left: 25%; }
  .mdl-cell--2-offset,
  .mdl-cell--2-offset-phone.mdl-cell--2-offset-phone {
    margin-left: calc(50% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--2-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--2-offset-phone.mdl-cell--2-offset-phone {
      margin-left: 50%; }
  .mdl-cell--3-offset,
  .mdl-cell--3-offset-phone.mdl-cell--3-offset-phone {
    margin-left: calc(75% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--3-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--3-offset-phone.mdl-cell--3-offset-phone {
      margin-left: 75%; } }

@media (min-width: 480px) and (max-width: 839px) {
  .mdl-grid {
    padding: 8px; }
  .mdl-cell {
    margin: 8px;
    width: calc(50% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell {
      width: 50%; }
  .mdl-cell--hide-tablet {
    display: none !important; }
  .mdl-cell--order-1-tablet.mdl-cell--order-1-tablet {
    order: 1; }
  .mdl-cell--order-2-tablet.mdl-cell--order-2-tablet {
    order: 2; }
  .mdl-cell--order-3-tablet.mdl-cell--order-3-tablet {
    order: 3; }
  .mdl-cell--order-4-tablet.mdl-cell--order-4-tablet {
    order: 4; }
  .mdl-cell--order-5-tablet.mdl-cell--order-5-tablet {
    order: 5; }
  .mdl-cell--order-6-tablet.mdl-cell--order-6-tablet {
    order: 6; }
  .mdl-cell--order-7-tablet.mdl-cell--order-7-tablet {
    order: 7; }
  .mdl-cell--order-8-tablet.mdl-cell--order-8-tablet {
    order: 8; }
  .mdl-cell--order-9-tablet.mdl-cell--order-9-tablet {
    order: 9; }
  .mdl-cell--order-10-tablet.mdl-cell--order-10-tablet {
    order: 10; }
  .mdl-cell--order-11-tablet.mdl-cell--order-11-tablet {
    order: 11; }
  .mdl-cell--order-12-tablet.mdl-cell--order-12-tablet {
    order: 12; }
  .mdl-cell--1-col,
  .mdl-cell--1-col-tablet.mdl-cell--1-col-tablet {
    width: calc(12.5% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--1-col, .mdl-grid--no-spacing >
    .mdl-cell--1-col-tablet.mdl-cell--1-col-tablet {
      width: 12.5%; }
  .mdl-cell--2-col,
  .mdl-cell--2-col-tablet.mdl-cell--2-col-tablet {
    width: calc(25% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--2-col, .mdl-grid--no-spacing >
    .mdl-cell--2-col-tablet.mdl-cell--2-col-tablet {
      width: 25%; }
  .mdl-cell--3-col,
  .mdl-cell--3-col-tablet.mdl-cell--3-col-tablet {
    width: calc(37.5% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--3-col, .mdl-grid--no-spacing >
    .mdl-cell--3-col-tablet.mdl-cell--3-col-tablet {
      width: 37.5%; }
  .mdl-cell--4-col,
  .mdl-cell--4-col-tablet.mdl-cell--4-col-tablet {
    width: calc(50% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--4-col, .mdl-grid--no-spacing >
    .mdl-cell--4-col-tablet.mdl-cell--4-col-tablet {
      width: 50%; }
  .mdl-cell--5-col,
  .mdl-cell--5-col-tablet.mdl-cell--5-col-tablet {
    width: calc(62.5% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--5-col, .mdl-grid--no-spacing >
    .mdl-cell--5-col-tablet.mdl-cell--5-col-tablet {
      width: 62.5%; }
  .mdl-cell--6-col,
  .mdl-cell--6-col-tablet.mdl-cell--6-col-tablet {
    width: calc(75% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--6-col, .mdl-grid--no-spacing >
    .mdl-cell--6-col-tablet.mdl-cell--6-col-tablet {
      width: 75%; }
  .mdl-cell--7-col,
  .mdl-cell--7-col-tablet.mdl-cell--7-col-tablet {
    width: calc(87.5% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--7-col, .mdl-grid--no-spacing >
    .mdl-cell--7-col-tablet.mdl-cell--7-col-tablet {
      width: 87.5%; }
  .mdl-cell--8-col,
  .mdl-cell--8-col-tablet.mdl-cell--8-col-tablet {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--8-col, .mdl-grid--no-spacing >
    .mdl-cell--8-col-tablet.mdl-cell--8-col-tablet {
      width: 100%; }
  .mdl-cell--9-col,
  .mdl-cell--9-col-tablet.mdl-cell--9-col-tablet {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--9-col, .mdl-grid--no-spacing >
    .mdl-cell--9-col-tablet.mdl-cell--9-col-tablet {
      width: 100%; }
  .mdl-cell--10-col,
  .mdl-cell--10-col-tablet.mdl-cell--10-col-tablet {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--10-col, .mdl-grid--no-spacing >
    .mdl-cell--10-col-tablet.mdl-cell--10-col-tablet {
      width: 100%; }
  .mdl-cell--11-col,
  .mdl-cell--11-col-tablet.mdl-cell--11-col-tablet {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--11-col, .mdl-grid--no-spacing >
    .mdl-cell--11-col-tablet.mdl-cell--11-col-tablet {
      width: 100%; }
  .mdl-cell--12-col,
  .mdl-cell--12-col-tablet.mdl-cell--12-col-tablet {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--12-col, .mdl-grid--no-spacing >
    .mdl-cell--12-col-tablet.mdl-cell--12-col-tablet {
      width: 100%; }
  .mdl-cell--1-offset,
  .mdl-cell--1-offset-tablet.mdl-cell--1-offset-tablet {
    margin-left: calc(12.5% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--1-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--1-offset-tablet.mdl-cell--1-offset-tablet {
      margin-left: 12.5%; }
  .mdl-cell--2-offset,
  .mdl-cell--2-offset-tablet.mdl-cell--2-offset-tablet {
    margin-left: calc(25% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--2-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--2-offset-tablet.mdl-cell--2-offset-tablet {
      margin-left: 25%; }
  .mdl-cell--3-offset,
  .mdl-cell--3-offset-tablet.mdl-cell--3-offset-tablet {
    margin-left: calc(37.5% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--3-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--3-offset-tablet.mdl-cell--3-offset-tablet {
      margin-left: 37.5%; }
  .mdl-cell--4-offset,
  .mdl-cell--4-offset-tablet.mdl-cell--4-offset-tablet {
    margin-left: calc(50% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--4-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--4-offset-tablet.mdl-cell--4-offset-tablet {
      margin-left: 50%; }
  .mdl-cell--5-offset,
  .mdl-cell--5-offset-tablet.mdl-cell--5-offset-tablet {
    margin-left: calc(62.5% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--5-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--5-offset-tablet.mdl-cell--5-offset-tablet {
      margin-left: 62.5%; }
  .mdl-cell--6-offset,
  .mdl-cell--6-offset-tablet.mdl-cell--6-offset-tablet {
    margin-left: calc(75% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--6-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--6-offset-tablet.mdl-cell--6-offset-tablet {
      margin-left: 75%; }
  .mdl-cell--7-offset,
  .mdl-cell--7-offset-tablet.mdl-cell--7-offset-tablet {
    margin-left: calc(87.5% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--7-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--7-offset-tablet.mdl-cell--7-offset-tablet {
      margin-left: 87.5%; } }

@media (min-width: 840px) {
  .mdl-grid {
    padding: 8px; }
  .mdl-cell {
    margin: 8px;
    width: calc(33.33333% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell {
      width: 33.33333%; }
  .mdl-cell--hide-desktop {
    display: none !important; }
  .mdl-cell--order-1-desktop.mdl-cell--order-1-desktop {
    order: 1; }
  .mdl-cell--order-2-desktop.mdl-cell--order-2-desktop {
    order: 2; }
  .mdl-cell--order-3-desktop.mdl-cell--order-3-desktop {
    order: 3; }
  .mdl-cell--order-4-desktop.mdl-cell--order-4-desktop {
    order: 4; }
  .mdl-cell--order-5-desktop.mdl-cell--order-5-desktop {
    order: 5; }
  .mdl-cell--order-6-desktop.mdl-cell--order-6-desktop {
    order: 6; }
  .mdl-cell--order-7-desktop.mdl-cell--order-7-desktop {
    order: 7; }
  .mdl-cell--order-8-desktop.mdl-cell--order-8-desktop {
    order: 8; }
  .mdl-cell--order-9-desktop.mdl-cell--order-9-desktop {
    order: 9; }
  .mdl-cell--order-10-desktop.mdl-cell--order-10-desktop {
    order: 10; }
  .mdl-cell--order-11-desktop.mdl-cell--order-11-desktop {
    order: 11; }
  .mdl-cell--order-12-desktop.mdl-cell--order-12-desktop {
    order: 12; }
  .mdl-cell--1-col,
  .mdl-cell--1-col-desktop.mdl-cell--1-col-desktop {
    width: calc(8.33333% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--1-col, .mdl-grid--no-spacing >
    .mdl-cell--1-col-desktop.mdl-cell--1-col-desktop {
      width: 8.33333%; }
  .mdl-cell--2-col,
  .mdl-cell--2-col-desktop.mdl-cell--2-col-desktop {
    width: calc(16.66667% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--2-col, .mdl-grid--no-spacing >
    .mdl-cell--2-col-desktop.mdl-cell--2-col-desktop {
      width: 16.66667%; }
  .mdl-cell--3-col,
  .mdl-cell--3-col-desktop.mdl-cell--3-col-desktop {
    width: calc(25% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--3-col, .mdl-grid--no-spacing >
    .mdl-cell--3-col-desktop.mdl-cell--3-col-desktop {
      width: 25%; }
  .mdl-cell--4-col,
  .mdl-cell--4-col-desktop.mdl-cell--4-col-desktop {
    width: calc(33.33333% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--4-col, .mdl-grid--no-spacing >
    .mdl-cell--4-col-desktop.mdl-cell--4-col-desktop {
      width: 33.33333%; }
  .mdl-cell--5-col,
  .mdl-cell--5-col-desktop.mdl-cell--5-col-desktop {
    width: calc(41.66667% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--5-col, .mdl-grid--no-spacing >
    .mdl-cell--5-col-desktop.mdl-cell--5-col-desktop {
      width: 41.66667%; }
  .mdl-cell--6-col,
  .mdl-cell--6-col-desktop.mdl-cell--6-col-desktop {
    width: calc(50% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--6-col, .mdl-grid--no-spacing >
    .mdl-cell--6-col-desktop.mdl-cell--6-col-desktop {
      width: 50%; }
  .mdl-cell--7-col,
  .mdl-cell--7-col-desktop.mdl-cell--7-col-desktop {
    width: calc(58.33333% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--7-col, .mdl-grid--no-spacing >
    .mdl-cell--7-col-desktop.mdl-cell--7-col-desktop {
      width: 58.33333%; }
  .mdl-cell--8-col,
  .mdl-cell--8-col-desktop.mdl-cell--8-col-desktop {
    width: calc(66.66667% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--8-col, .mdl-grid--no-spacing >
    .mdl-cell--8-col-desktop.mdl-cell--8-col-desktop {
      width: 66.66667%; }
  .mdl-cell--9-col,
  .mdl-cell--9-col-desktop.mdl-cell--9-col-desktop {
    width: calc(75% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--9-col, .mdl-grid--no-spacing >
    .mdl-cell--9-col-desktop.mdl-cell--9-col-desktop {
      width: 75%; }
  .mdl-cell--10-col,
  .mdl-cell--10-col-desktop.mdl-cell--10-col-desktop {
    width: calc(83.33333% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--10-col, .mdl-grid--no-spacing >
    .mdl-cell--10-col-desktop.mdl-cell--10-col-desktop {
      width: 83.33333%; }
  .mdl-cell--11-col,
  .mdl-cell--11-col-desktop.mdl-cell--11-col-desktop {
    width: calc(91.66667% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--11-col, .mdl-grid--no-spacing >
    .mdl-cell--11-col-desktop.mdl-cell--11-col-desktop {
      width: 91.66667%; }
  .mdl-cell--12-col,
  .mdl-cell--12-col-desktop.mdl-cell--12-col-desktop {
    width: calc(100% - 16px); }
    .mdl-grid--no-spacing > .mdl-cell--12-col, .mdl-grid--no-spacing >
    .mdl-cell--12-col-desktop.mdl-cell--12-col-desktop {
      width: 100%; }
  .mdl-cell--1-offset,
  .mdl-cell--1-offset-desktop.mdl-cell--1-offset-desktop {
    margin-left: calc(8.33333% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--1-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--1-offset-desktop.mdl-cell--1-offset-desktop {
      margin-left: 8.33333%; }
  .mdl-cell--2-offset,
  .mdl-cell--2-offset-desktop.mdl-cell--2-offset-desktop {
    margin-left: calc(16.66667% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--2-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--2-offset-desktop.mdl-cell--2-offset-desktop {
      margin-left: 16.66667%; }
  .mdl-cell--3-offset,
  .mdl-cell--3-offset-desktop.mdl-cell--3-offset-desktop {
    margin-left: calc(25% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--3-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--3-offset-desktop.mdl-cell--3-offset-desktop {
      margin-left: 25%; }
  .mdl-cell--4-offset,
  .mdl-cell--4-offset-desktop.mdl-cell--4-offset-desktop {
    margin-left: calc(33.33333% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--4-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--4-offset-desktop.mdl-cell--4-offset-desktop {
      margin-left: 33.33333%; }
  .mdl-cell--5-offset,
  .mdl-cell--5-offset-desktop.mdl-cell--5-offset-desktop {
    margin-left: calc(41.66667% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--5-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--5-offset-desktop.mdl-cell--5-offset-desktop {
      margin-left: 41.66667%; }
  .mdl-cell--6-offset,
  .mdl-cell--6-offset-desktop.mdl-cell--6-offset-desktop {
    margin-left: calc(50% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--6-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--6-offset-desktop.mdl-cell--6-offset-desktop {
      margin-left: 50%; }
  .mdl-cell--7-offset,
  .mdl-cell--7-offset-desktop.mdl-cell--7-offset-desktop {
    margin-left: calc(58.33333% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--7-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--7-offset-desktop.mdl-cell--7-offset-desktop {
      margin-left: 58.33333%; }
  .mdl-cell--8-offset,
  .mdl-cell--8-offset-desktop.mdl-cell--8-offset-desktop {
    margin-left: calc(66.66667% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--8-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--8-offset-desktop.mdl-cell--8-offset-desktop {
      margin-left: 66.66667%; }
  .mdl-cell--9-offset,
  .mdl-cell--9-offset-desktop.mdl-cell--9-offset-desktop {
    margin-left: calc(75% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--9-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--9-offset-desktop.mdl-cell--9-offset-desktop {
      margin-left: 75%; }
  .mdl-cell--10-offset,
  .mdl-cell--10-offset-desktop.mdl-cell--10-offset-desktop {
    margin-left: calc(83.33333% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--10-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--10-offset-desktop.mdl-cell--10-offset-desktop {
      margin-left: 83.33333%; }
  .mdl-cell--11-offset,
  .mdl-cell--11-offset-desktop.mdl-cell--11-offset-desktop {
    margin-left: calc(91.66667% + 8px); }
    .mdl-grid.mdl-grid--no-spacing > .mdl-cell--11-offset, .mdl-grid.mdl-grid--no-spacing >
    .mdl-cell--11-offset-desktop.mdl-cell--11-offset-desktop {
      margin-left: 91.66667%; } }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 200;
  src: local("Roboto Thin"), local("Roboto-Thin"), url(../fonts/Roboto-Thin.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 200;
  src: local("Roboto ThinItalic"), local("Roboto-ThinItalic"), url(../fonts/Roboto-ThinItalic.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local("Roboto Light"), local("Roboto-Light"), url(../fonts/Roboto-Light.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 300;
  src: local("Roboto LightItalic"), local("Roboto-LightItalic"), url(../fonts/Roboto-LightItalic.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local("Roboto Regular"), local("Roboto-Regular"), url(../fonts/Roboto-Regular.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: local("Roboto Italic"), local("Roboto-Italic"), url(../fonts/Roboto-Italic.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local("Roboto Medium"), local("Roboto-Medium"), url(../fonts/Roboto-Medium.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 500;
  src: local("Roboto MediumItalic"), local("Roboto-MediumItalic"), url(../fonts/Roboto-MediumItalic.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local("Roboto Bold"), local("Roboto-Bold"), url(../fonts/Roboto-Bold.ttf) format("truetype"); }

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 700;
  src: local("Roboto BoldItalic"), local("Roboto-BoldItalic"), url(../fonts/Roboto-BoldItalic.ttf) format("truetype"); }

@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/MaterialIcons-Regular.eot);
  /* For IE6-8 */
  src: local("Material Icons"), local("MaterialIcons-Regular"), url('') format("woff2"), url('') format("woff"), url('') format("truetype"); }

.md,
.material-icons,
.dingo-menu-container > ul > li > a::before,
.dingo-menu-container > ul > li > a::after,
[dingo-icon-name] > a::before,
[dingo-icon-name] > a::after,
[dingo-icon-name] > span::before,
[dingo-icon-name] > span::after {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  /* Preferred icon size */
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  word-break: normal;
  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;
  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;
  /* Support for IE. */
  -webkit-font-feature-settings: 'liga';
  -moz-font-feature-settings: 'liga';
  font-feature-settings: 'liga'; }
  .md.md-14,
  .material-icons.md-14,
  .dingo-menu-container > ul > li > a.md-14::before,
  .dingo-menu-container > ul > li > a.md-14::after,
  [dingo-icon-name] > a.md-14::before,
  [dingo-icon-name] > a.md-14::after,
  [dingo-icon-name] > span.md-14::before,
  [dingo-icon-name] > span.md-14::after {
    font-size: 14px; }
  .md.md-18,
  .material-icons.md-18,
  .dingo-menu-container > ul > li > a.md-18::before,
  .dingo-menu-container > ul > li > a.md-18::after,
  [dingo-icon-name] > a.md-18::before,
  [dingo-icon-name] > a.md-18::after,
  [dingo-icon-name] > span.md-18::before,
  [dingo-icon-name] > span.md-18::after {
    font-size: 18px; }
  .md.md-24,
  .material-icons.md-24,
  .dingo-menu-container > ul > li > a.md-24::before,
  .dingo-menu-container > ul > li > a.md-24::after,
  [dingo-icon-name] > a.md-24::before,
  [dingo-icon-name] > a.md-24::after,
  [dingo-icon-name] > span.md-24::before,
  [dingo-icon-name] > span.md-24::after {
    font-size: 24px; }
  .md.md-36,
  .material-icons.md-36,
  .dingo-menu-container > ul > li > a.md-36::before,
  .dingo-menu-container > ul > li > a.md-36::after,
  [dingo-icon-name] > a.md-36::before,
  [dingo-icon-name] > a.md-36::after,
  [dingo-icon-name] > span.md-36::before,
  [dingo-icon-name] > span.md-36::after {
    font-size: 36px; }
  .md.md-48,
  .material-icons.md-48,
  .dingo-menu-container > ul > li > a.md-48::before,
  .dingo-menu-container > ul > li > a.md-48::after,
  [dingo-icon-name] > a.md-48::before,
  [dingo-icon-name] > a.md-48::after,
  [dingo-icon-name] > span.md-48::before,
  [dingo-icon-name] > span.md-48::after {
    font-size: 48px; }
  .md.md-dark,
  .material-icons.md-dark,
  .dingo-menu-container > ul > li > a.md-dark::before,
  .dingo-menu-container > ul > li > a.md-dark::after,
  [dingo-icon-name] > a.md-dark::before,
  [dingo-icon-name] > a.md-dark::after,
  [dingo-icon-name] > span.md-dark::before,
  [dingo-icon-name] > span.md-dark::after {
    color: rgba(0, 0, 0, 0.54); }
  .md.md-dark.md-inactive,
  .material-icons.md-dark.md-inactive,
  .dingo-menu-container > ul > li > a.md-dark.md-inactive::before,
  .dingo-menu-container > ul > li > a.md-dark.md-inactive::after,
  [dingo-icon-name] > a.md-dark.md-inactive::before,
  [dingo-icon-name] > a.md-dark.md-inactive::after,
  [dingo-icon-name] > span.md-dark.md-inactive::before,
  [dingo-icon-name] > span.md-dark.md-inactive::after {
    color: rgba(0, 0, 0, 0.26); }
  .md.md-light,
  .material-icons.md-light,
  .dingo-menu-container > ul > li > a.md-light::before,
  .dingo-menu-container > ul > li > a.md-light::after,
  [dingo-icon-name] > a.md-light::before,
  [dingo-icon-name] > a.md-light::after,
  [dingo-icon-name] > span.md-light::before,
  [dingo-icon-name] > span.md-light::after {
    color: white; }
  .md.md-light.md-inactive,
  .material-icons.md-light.md-inactive,
  .dingo-menu-container > ul > li > a.md-light.md-inactive::before,
  .dingo-menu-container > ul > li > a.md-light.md-inactive::after,
  [dingo-icon-name] > a.md-light.md-inactive::before,
  [dingo-icon-name] > a.md-light.md-inactive::after,
  [dingo-icon-name] > span.md-light.md-inactive::before,
  [dingo-icon-name] > span.md-light.md-inactive::after {
    color: rgba(255, 255, 255, 0.3); }

.dingo-layout {
  width: 100%; }
  .dingo-layout .mdl-layout__content {
    overflow: auto; }
    .dingo-layout .mdl-layout__content.has-header {
      padding-top: 48px; }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar {
      width: 8px;
      height: 8px; }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar-button {
      width: 0;
      height: 0; }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar-thumb {
      background: #ccc;
      border: 0 none #ffffff;
      border-radius: 50px; }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar-thumb:hover {
      background: rgb(33,150,243); }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar-thumb:active {
      background: rgb(33,150,243); }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar-track {
      background: transparent;
      border: 0 none #ffffff;
      border-radius: 50px; }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar-track:hover {
      background: transparent; }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar-track:active {
      background: transparent; }
    .dingo-layout .mdl-layout__content::-webkit-scrollbar-corner {
      background: transparent; }
  .dingo-layout .mdl-layout__header, .dingo-layout .mdl-layout__tab-bar {
    background-color: #0277bd; }
  .dingo-layout.mdl-layout.is-upgraded .mdl-layout__tab.is-active::after {
    background: rgb(255,255,255); }
  .dingo-layout .mdl-layout-text {
    color: rgba(255,255,255, 0.54); }
  .dingo-layout .mdl-navigation__link > .material-icons, .dingo-layout .dingo-menu-container > ul > li.mdl-navigation__link > a::before, .dingo-layout .dingo-menu-container > ul > li.mdl-navigation__link > a::after, .dingo-layout [dingo-icon-name].mdl-navigation__link > a::before, .dingo-layout [dingo-icon-name].mdl-navigation__link > a::after, .dingo-layout [dingo-icon-name].mdl-navigation__link > span::before, .dingo-layout [dingo-icon-name].mdl-navigation__link > span::after {
    vertical-align: middle; }
  .dingo-layout .mdl-layout__drawer {
    background-color: #fff; }

.dingo-layout__sidebar {
  height: 100%; }
  .dingo-layout__sidebar > .sidebar-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 64px;
    border-bottom: 1px solid rgba(0,0,0, 0.12); }
    .dingo-layout__sidebar > .sidebar-header > a {
      text-decoration: none; }
      .dingo-layout__sidebar > .sidebar-header > a:hover, .dingo-layout__sidebar > .sidebar-header > a:focus {
        text-decoration: none; }
      .dingo-layout__sidebar > .sidebar-header > a:first-child {
        float: left;
        display: block;
        width: 110px;
        height: 64px;
        background: url(../images/logo.png) no-repeat center center;
        color: transparent; }
      .dingo-layout__sidebar > .sidebar-header > a:last-child {
        float: left;
        width: 100px;
        padding: 22px 10px;
        color: #757575; }
        .dingo-layout__sidebar > .sidebar-header > a:last-child > .material-icons, .dingo-layout__sidebar > .sidebar-header > a[dingo-icon-name]:last-child > a::before, .dingo-layout__sidebar > .sidebar-header > a[dingo-icon-name]:last-child > a::after, .dingo-layout__sidebar > .sidebar-header > a[dingo-icon-name]:last-child > span::before, .dingo-layout__sidebar > .sidebar-header > a[dingo-icon-name]:last-child > span::after {
          position: relative;
          top: -1px;
          margin-left: 3px;
          margin-right: 3px;
          vertical-align: middle; }
  .dingo-layout__sidebar > .sidebar-body {
    position: absolute;
    top: 64px;
    right: 0;
    bottom: 40px;
    left: 0;
    overflow: visible;
    overflow-y: auto; }
  .dingo-layout__sidebar > .sidebar-footer {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 8px 16px;
    border-top: 1px solid rgba(0,0,0, 0.12);
    line-height: 24px; }

.dingo-layout__content {
  position: absolute;
  top: 0;
  right: 0;
  left: 56px;
  min-height: 100%;
  -webkit-transition: left 0.35s ease;
  -o-transition: left 0.35s ease;
  transition: left 0.35s ease; }

.dingo-page__header {
  position: fixed;
  top: 64px;
  min-height: 40px;
  height: 48px;
  margin-bottom: 24px;
  padding: 0 24px;
  width: calc(100% - 240px);
  box-sizing: border-box;
  background-color: #fff;
  z-index: 999;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 3px 5px 0 rgba(0, 0, 0, 0.12); }
  .dingo-page__header:before, .dingo-page__header:after {
    content: " ";
    display: table; }
  .dingo-page__header:after {
    clear: both; }
  .dingo-page__header .mdl-button {
    height: 32px;
    line-height: 32px; }
  .dingo-page__header .dingo-search {
    height: 48px; }
  .dingo-page__header + .dingo-page__body {
    padding-top: 24px; }
    .dingo-page__header + .dingo-page__body .dingo-table-container {
      margin-top: 0; }

.dingo-page__footer {
  height: 40px; }

.mdl-layout__content {
  z-index: 4; }

.dingo-page-subnav__header {
  padding: 0;
  background-color: transparent; }
  .dingo-page-subnav__header .mdl-layout__tab-bar {
    padding: 0; }

.dingo-page__header-tabbar {
  padding: 0;
  background-color: #0277bd; }
  .dingo-page__header-tabbar .mdl-layout__tab-bar {
    height: 48px;
    width: 100%;
    padding: 0; }

.dingo-view-all {
  display: inline-block;
  height: 32px;
  margin-left: 16px;
  font-size: 12px;
  line-height: 32px;
  text-transform: uppercase;
  text-decoration: none;
  color: rgb(33,150,243); }

.mdl-layout__header-row {
  padding-right: 12px; }

@media screen and (max-width: 1024px) {
  .dingo-page__header {
    width: 100%;
    top: 56px;
    display: block; } }

@media screen and (min-width: 1025px) {
  .mdl-layout--fixed-drawer > .mdl-layout__header .mdl-layout__header-row {
    padding-left: 24px; }
  .dingo-page__col-2 .dingo-page__col-right {
    width: calc(100% - 320px);
    float: left; }
  .dingo-page__col-2 .dingo-page__col-left {
    float: left;
    width: 320px; }
    .dingo-page__col-2 .dingo-page__col-left h5 {
      margin-top: 0; } }

body {
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  background-color: #f5f5f5; }

a {
  color: rgb(33,150,243); }
  a:focus, a:hover {
    color: rgb(33,150,243); }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: inherit;
  font-weight: 400;
  line-height: 1.1;
  color: #444; }
  h1 small,
  h1 .small, h2 small,
  h2 .small, h3 small,
  h3 .small, h4 small,
  h4 .small, h5 small,
  h5 .small, h6 small,
  h6 .small,
  .h1 small,
  .h1 .small, .h2 small,
  .h2 .small, .h3 small,
  .h3 .small, .h4 small,
  .h4 .small, .h5 small,
  .h5 .small, .h6 small,
  .h6 .small {
    font-weight: normal;
    line-height: 1;
    color: #bbb; }

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 23px;
  margin-bottom: 11.5px; }
  h1 small,
  h1 .small, .h1 small,
  .h1 .small,
  h2 small,
  h2 .small, .h2 small,
  .h2 .small,
  h3 small,
  h3 .small, .h3 small,
  .h3 .small {
    font-size: 65%; }

h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 11.5px;
  margin-bottom: 11.5px; }
  h4 small,
  h4 .small, .h4 small,
  .h4 .small,
  h5 small,
  h5 .small, .h5 small,
  .h5 .small,
  h6 small,
  h6 .small, .h6 small,
  .h6 .small {
    font-size: 75%; }

h1, .h1 {
  font-size: 33px; }

h2, .h2 {
  font-size: 27px; }

h3, .h3 {
  font-size: 23px; }

h4, .h4 {
  font-size: 17px; }

h5, .h5 {
  font-size: 13px; }

h6, .h6 {
  font-size: 12px; }

p {
  margin: 0 0 11.5px; }

.lead {
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.4; }

small,
.small {
  font-size: 92%; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

.text-nowrap {
  white-space: nowrap; }

.text-lowercase {
  text-transform: lowercase; }

.text-uppercase, .initialism {
  text-transform: uppercase; }

.text-capitalize {
  text-transform: capitalize; }

ul,
ol {
  margin-top: 0;
  margin-bottom: 11.5px; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin-bottom: 0; }

.list-unstyled {
  padding-left: 0;
  list-style: none; }

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px; }
  .list-inline > li {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px; }

dl {
  margin-top: 0;
  margin-bottom: 23px; }

dt,
dd {
  line-height: 1.846; }

dt {
  font-weight: bold; }

dd {
  margin-left: 0; }

.dl-horizontal dd:before, .dl-horizontal dd:after {
  content: " ";
  display: table; }

.dl-horizontal dd:after {
  clear: both; }

abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #bbb; }

.initialism {
  font-size: 90%; }

blockquote {
  font-size: 16.25px; }
  blockquote p:last-child,
  blockquote ul:last-child,
  blockquote ol:last-child {
    margin-bottom: 0; }
  blockquote footer,
  blockquote small,
  blockquote .small {
    display: block;
    font-size: 80%;
    line-height: 1.846;
    color: #bbb; }
    blockquote footer:before,
    blockquote small:before,
    blockquote .small:before {
      content: '\2014 \00A0'; }

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right; }
  .blockquote-reverse footer:before,
  .blockquote-reverse small:before,
  .blockquote-reverse .small:before,
  blockquote.pull-right footer:before,
  blockquote.pull-right small:before,
  blockquote.pull-right .small:before {
    content: ''; }
  .blockquote-reverse footer:after,
  .blockquote-reverse small:after,
  .blockquote-reverse .small:after,
  blockquote.pull-right footer:after,
  blockquote.pull-right small:after,
  blockquote.pull-right .small:after {
    content: '\00A0 \2014'; }

address {
  margin-bottom: 23px;
  font-style: normal;
  line-height: 1.846; }

.dingo-form-container {
  margin: 24px;
  padding: 24px;
  background-color: #fff;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }

.dingo-slideout__body .dingo-form-container {
  margin: 0;
  padding: 0;
  box-shadow: none; }

.dingo-form__actions {
  margin-top: 24px; }
  .dingo-form__actions:before, .dingo-form__actions:after {
    content: " ";
    display: table; }
  .dingo-form__actions:after {
    clear: both; }
  .dingo-form__actions .mdl-button {
    float: right; }
    .dingo-form__actions .mdl-button + .mdl-button {
      margin-right: 8px; }

.dingo-search-container {
  float: right;
  z-index: 1;
  background-color: inherit; }

.dingo-search, .dingo-global-search {
  height: 56px;
  padding: 14px 6px; }
  .dingo-search .mdl-button, .dingo-global-search .mdl-button {
    top: 10px; }
  .dingo-search .dingo-search__label, .dingo-global-search .dingo-search__label {
    color: rgba(0,0,0, 0.54); }
  .dingo-search .dingo-search__input, .dingo-global-search .dingo-search__input {
    font-size: 14px; }
  .dingo-search .dingo-search__clear, .dingo-global-search .dingo-search__clear {
    display: none; }
  .dingo-search.is-dirty .dingo-search__label, .dingo-search.is-dirty .dingo-search__label:hover, .dingo-search.is-focused .dingo-search__label, .dingo-search.is-focused .dingo-search__label:hover, .dingo-global-search.is-dirty .dingo-search__label, .dingo-global-search.is-dirty .dingo-search__label:hover, .dingo-global-search.is-focused .dingo-search__label, .dingo-global-search.is-focused .dingo-search__label:hover {
    background-color: transparent;
    cursor: default; }
  .dingo-search.is-dirty .dingo-search__clear, .dingo-search.is-focused .dingo-search__clear, .dingo-global-search.is-dirty .dingo-search__clear, .dingo-global-search.is-focused .dingo-search__clear {
    right: -7px;
    display: block; }

.dingo-field__label {
  display: block;
  max-width: 100%;
  font-size: 12px;
  color: rgba(0,0,0, 0.54);
  font-weight: 500; }

.dingo-field__value {
  display: block;
  padding: 4px 0; }

.dingo-field__input {
  width: 100%; }

.dingo-field__block {
  display: block;
  padding-bottom: 20px;
  position: relative; }

.chosen-container {
  margin-top: 8px; }

.dingo-field__show {
  display: none;
  margin-top: 8px;
  margin-bottom: 20px; }

[data-upgraded] > .dingo-field__show {
  margin-bottom: 0; }

.dingo-page__show .dingo-field__show {
  display: block; }

.dingo-page__show .dingo-field__edit, .dingo-page__show .dingo-fieldset__delete, .dingo-page__show .dingo-fieldset__add {
  display: none; }

.dingo-page__edit .dingo-field__show {
  display: none; }

.dingo-page__edit .dingo-field__edit, .dingo-page__edit .dingo-fieldset__delete {
  display: block; }

.dingo-page__edit .dingo-fieldset__add {
  display: inline-block; }
  .dingo-page__edit .dingo-fieldset__add.mdl-menu__item {
    display: block; }

.dingo-field {
  padding-top: 4px;
  padding-bottom: 4px; }
  .dingo-field.is-error {
    margin-bottom: 16px; }
    .dingo-field.is-error .dingo-field__label,
    .dingo-field.is-error .dingo-field__error,
    .dingo-field.is-error .mdl-textfield__label {
      color: rgb(255,64,129); }
    .dingo-field.is-error .dingo-field__error {
      display: block;
      font-size: 12px; }
      .dingo-field.is-error .dingo-field__error > i {
        font-size: 18px;
        vertical-align: top; }
      .dingo-field.is-error .dingo-field__error > span + span {
        margin-left: 8px; }
    .dingo-field.is-error .mdl-textfield + .dingo-field__error,
    .dingo-field.is-error .dingo-field__block + .dingo-field__error {
      margin-top: -16px; }
  .dingo-field .mdl-textfield__label {
    font-weight: 500; }
  .dingo-field .mdl-checkbox__label {
    font-size: 14px; }

.dingo-field .mdl-textfield__label {
  color: rgba(0,0,0, 0.54);
  font-size: 12px;
  top: 4px; }

.dingo-field .mdl-textfield__input {
  font-size: 14px; }

.dingo-field .mdl-textfield.is-dirty .mdl-textfield__label {
  visibility: visible; }

.dingo-textfield--condensed {
  padding-top: 0;
  padding-bottom: 0; }
  .dingo-textfield--condensed .mdl-textfield__label {
    top: 0;
    font-size: 14px; }
    .dingo-textfield--condensed .mdl-textfield__label:after {
      bottom: 0; }
  .dingo-textfield--condensed .mdl-textfield__input {
    font-size: 14px; }

.dingo-file {
  position: relative;
  display: block;
  margin-top: 8px; }

.dingo-file__list {
  overflow: hidden; }
  .dingo-file__list > ul {
    margin-top: 12px;
    margin-bottom: 0;
    padding-left: 0;
    list-style: none; }
    .dingo-file__list > ul > li {
      position: relative;
      float: left;
      display: block;
      width: 150px;
      height: 150px;
      margin-right: 10px;
      margin-bottom: 10px;
      border: 1px solid rgba(0,0,0, 0.12);
      background-color: rgb(255,255,255);
      overflow: hidden; }
      .dingo-file__list > ul > li > span {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1;
        display: block;
        padding: 5px;
        font-size: 12px;
        line-height: 20px;
        text-align: center;
        background-color: rgba(255,255,255, 0.5); }
        .dingo-file__list > ul > li > span:first-letter {
          text-transform: uppercase; }
      .dingo-file__list > ul > li img {
        display: block;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
        max-height: 160px; }
  .dingo-file__list .dingo-file__list-item {
    position: relative;
    display: inline-block;
    width: 150px;
    height: 80px;
    border: 1px solid rgba(0,0,0, 0.12);
    background-color: rgb(255,255,255);
    margin-top: 12px; }
    .dingo-file__list .dingo-file__list-item .dingo-file__action {
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      top: 0;
      z-index: 1;
      display: block;
      padding: 5px;
      font-size: 12px;
      line-height: 20px;
      text-align: center;
      background-color: rgba(0,0,0, 0.75);
      opacity: 0; }
      .dingo-file__list .dingo-file__list-item .dingo-file__action a {
        display: inline-block;
        color: #fff;
        width: 48px;
        height: 48px;
        margin-top: 16%; }
        .dingo-file__list .dingo-file__list-item .dingo-file__action a:hover i {
          color: rgb(33,150,243); }
    .dingo-file__list .dingo-file__list-item:hover .dingo-file__action {
      opacity: 1; }
    .dingo-file__list .dingo-file__list-item > span {
      display: flex;
      font-size: 12px;
      width: 100%;
      align-items: center;
      height: 80px; }
      .dingo-file__list .dingo-file__list-item > span span {
        display: inline-block;
        width: 100%;
        box-sizing: border-box;
        padding: 0 12px;
        text-align: center;
        word-break: break-word; }

.dingo-fieldset {
  position: relative;
  margin-top: 16px;
  margin-bottom: 16px;
  padding: 16px 24px;
  border: 1px solid rgba(0,0,0, 0.12);
  background-color: rgb(250,250,250); }
  .dingo-fieldset .mdl-textfield__input {
    margin-top: 10px; }
  .dingo-fieldset .dingo-fieldset {
    background-color: #fff; }
    .dingo-fieldset .dingo-fieldset .dingo-fieldset {
      background-color: rgb(250,250,250); }

.dingo-fieldset__delete {
  position: absolute;
  top: 8px;
  right: 8px; }

.dingo-fieldset__alert {
  padding-top: 8px;
  padding-bottom: 8px;
  text-align: center; }

.dingo-section-columns-2 .dingo-field {
  width: 50%;
  float: left;
  padding-right: 40px;
  box-sizing: border-box; }
  .dingo-section-columns-2 .dingo-field .mdl-textfield .dingo-field__edit {
    margin-top: 14px; }

.dingo-section-columns-3 .dingo-field {
  width: 33.33%;
  float: left;
  padding-right: 20px;
  box-sizing: border-box; }

.promotion-coupons .dingo-section-columns-3 .dingo-field:first-child {
  width: 50%; }
  .promotion-coupons .dingo-section-columns-3 .dingo-field:first-child .mdl-textfield {
    width: 100% !important; }

.promotion-coupons .dingo-section-columns-3 .dingo-field:last-child {
  margin-top: 36px; }

.promotion-coupons .dingo-section-columns-3 .dingo-field:nth-child(2) {
  width: 60px; }
  .promotion-coupons .dingo-section-columns-3 .dingo-field:nth-child(2) .mdl-textfield__label {
    overflow: inherit; }

.CodeMirror {
  height: auto;
  min-height: 300px;
  border: 1px solid #ddd;
  padding: 10px;
  font: inherit;
  z-index: 1; }

.CodeMirror-scroll {
  min-height: 300px; }

.CodeMirror-fullscreen {
  background: #fff;
  position: fixed !important;
  top: 50px;
  left: 240px;
  right: 0;
  bottom: 0;
  height: auto;
  z-index: 9; }
  @media screen and (max-width: 1024px) {
    .CodeMirror-fullscreen {
      left: 0; } }

.CodeMirror-sided {
  width: calc(50% - 120px) !important; }
  @media screen and (max-width: 1024px) {
    .CodeMirror-sided {
      width: 50% !important; } }

.editor-toolbar {
  position: relative;
  opacity: .6;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
  padding: 0 10px;
  border-top: 1px solid #bbb;
  border-left: 1px solid #bbb;
  border-right: 1px solid #bbb; }
  .editor-toolbar:after {
    display: block;
    content: ' ';
    height: 1px; }
  .editor-toolbar:before {
    display: block;
    content: ' ';
    height: 1px;
    margin-bottom: 8px; }
  .editor-toolbar:after {
    margin-top: 8px; }
  .editor-toolbar:hover {
    opacity: 0.8; }

.editor-wrapper input.title:focus, .editor-wrapper input.title:hover {
  opacity: 0.8; }

.editor-toolbar.fullscreen {
  width: 100%;
  height: 50px;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  padding-top: 10px;
  padding-bottom: 10px;
  box-sizing: border-box;
  background: #fff;
  border: 0;
  position: fixed;
  top: 0;
  left: 240px;
  opacity: 1;
  z-index: 9; }
  @media screen and (max-width: 1024px) {
    .editor-toolbar.fullscreen {
      left: 0; } }
  .editor-toolbar.fullscreen::before {
    width: 20px;
    height: 50px;
    background: -moz-linear-gradient(left, white 0%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, white), color-stop(100%, rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(left, white 0%, rgba(255, 255, 255, 0) 100%);
    background: -o-linear-gradient(left, white 0%, rgba(255, 255, 255, 0) 100%);
    background: -ms-linear-gradient(left, white 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0) 100%);
    position: fixed;
    top: 0;
    margin: 0;
    padding: 0; }
  .editor-toolbar.fullscreen::after {
    width: 20px;
    height: 50px;
    background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, white));
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 100%);
    background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 100%);
    background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 100%);
    position: fixed;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0; }

.editor-toolbar a {
  display: inline-block;
  text-align: center;
  text-decoration: none !important;
  color: #2c3e50 !important;
  width: 30px;
  height: 30px;
  margin: 0;
  border: 1px solid transparent;
  cursor: pointer; }
  .editor-toolbar a.active, .editor-toolbar a:hover {
    background: #fcfcfc;
    border-color: #95a5a6; }
  .editor-toolbar a:before {
    line-height: 30px; }

.editor-toolbar i.separator {
  display: inline-block;
  width: 0;
  border-left: 1px solid #d9d9d9;
  border-right: 1px solid #fff;
  color: transparent;
  text-indent: -10px;
  margin: 0 6px; }

.editor-toolbar a.fa-header-x:after {
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 65%;
  vertical-align: text-bottom;
  position: relative;
  top: 2px; }

.editor-toolbar a.fa-header-1:after {
  content: "1"; }

.editor-toolbar a.fa-header-2:after {
  content: "2"; }

.editor-toolbar a.fa-header-3:after {
  content: "3"; }

.editor-toolbar a.fa-header-bigger:after {
  content: "▲"; }

.editor-toolbar a.fa-header-smaller:after {
  content: "▼"; }

.editor-toolbar.disabled-for-preview a:not(.no-disable) {
  pointer-events: none;
  background: #fff;
  border-color: transparent;
  text-shadow: inherit; }

@media only screen and (max-width: 700px) {
  .editor-toolbar a.no-mobile {
    display: none; } }

.editor-statusbar {
  padding: 8px 10px;
  font-size: 12px;
  color: #959694;
  text-align: right; }
  .editor-statusbar span {
    display: inline-block;
    min-width: 4em;
    margin-left: 1em; }
  .editor-statusbar .lines:before {
    content: "lines: "; }
  .editor-statusbar .words:before {
    content: "words: "; }
  .editor-statusbar .characters:before {
    content: "characters: "; }

.editor-preview {
  padding: 10px;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #fafafa;
  z-index: 7;
  overflow: auto;
  display: none;
  box-sizing: border-box; }

.editor-preview-side {
  padding: 10px;
  position: fixed;
  bottom: 0;
  width: calc(50% - 120px);
  top: 50px;
  right: 0;
  background: #fafafa;
  z-index: 9;
  overflow: auto;
  display: none;
  box-sizing: border-box;
  border: 1px solid #ddd; }
  @media screen and (max-width: 1024px) {
    .editor-preview-side {
      width: 50%; } }

.editor-preview-active-side, .editor-preview-active {
  display: block; }

.editor-preview > p, .editor-preview-side > p {
  margin-top: 0; }

.editor-preview pre, .editor-preview-side pre {
  background: #eee;
  margin-bottom: 10px; }

.editor-preview table td, .editor-preview table th {
  border: 1px solid #ddd;
  padding: 5px; }

.editor-preview-side table td, .editor-preview-side table th {
  border: 1px solid #ddd;
  padding: 5px; }

.CodeMirror .CodeMirror-code .cm-tag {
  color: #63a35c; }

.CodeMirror .CodeMirror-code .cm-attribute {
  color: #795da3; }

.CodeMirror .CodeMirror-code .cm-string {
  color: #183691; }

.CodeMirror .CodeMirror-selected {
  background: #d9d9d9; }

.CodeMirror .CodeMirror-code .cm-header-1 {
  font-size: 200%;
  line-height: 200%; }

.CodeMirror .CodeMirror-code .cm-header-2 {
  font-size: 160%;
  line-height: 160%; }

.CodeMirror .CodeMirror-code .cm-header-3 {
  font-size: 125%;
  line-height: 125%; }

.CodeMirror .CodeMirror-code .cm-header-4 {
  font-size: 110%;
  line-height: 110%; }

.CodeMirror .CodeMirror-code .cm-comment {
  background: rgba(0, 0, 0, 0.05);
  border-radius: 2px; }

.CodeMirror .CodeMirror-code .cm-link {
  color: #7f8c8d; }

.CodeMirror .CodeMirror-code .cm-url {
  color: #aab2b3; }

.CodeMirror .CodeMirror-code .cm-strikethrough {
  text-decoration: line-through; }

.CodeMirror .CodeMirror-placeholder {
  opacity: .5; }

.dingo-button--small {
  height: 32px;
  line-height: 32px; }

.dingo-button--new, .dingo-button--edit {
  position: fixed;
  right: 32px;
  bottom: 32px;
  z-index: 1;
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2); }

.dingo-button--accent {
  color: #fff;
  background-color: rgb(255,64,129) !important; }

.dingo-button--muted {
  color: rgba(0,0,0, 0.54); }

.dingo-card {
  width: auto; }

.dingo-card-short {
  min-height: 0; }

.dingo-card-count {
  padding: 30px;
  text-align: center; }
  .dingo-card-count > p {
    font-sze: 16px;
    margin: 0 !important; }
  .dingo-card-count > h2 {
    font-size: 27px;
    margin: 0 !important;
    line-height: 28px; }

.dingo-card-list > .mdl-card {
  margin-bottom: 25px; }

.dingo-card-msg .dingo-msg {
  margin: 10px 0; }
  .dingo-card-msg .dingo-msg > .data > p {
    margin: 0; }
  .dingo-card-msg .dingo-msg > .dingo-msg-timestamp {
    font-size: 12px; }

.dingo-card-post .timestamp {
  font-size: 14px;
  line-height: 18px; }

.dingo-card-post .status {
  font-size: 14px;
  line-height: 18px; }

.ml-card-holder {
  position: relative; }
  .ml-card-holder.ml-card-holder-first {
    margin-top: -81px; }
  @media (max-width: 992px) {
    .ml-card-holder {
      margin-top: 0px; } }

.ml-list-profile .material-icons, .ml-list-profile .dingo-menu-container > ul > li > a::before, .ml-list-profile .dingo-menu-container > ul > li > a::after, .ml-list-profile [dingo-icon-name] > a::before, .ml-list-profile [dingo-icon-name] > a::after, .ml-list-profile [dingo-icon-name] > span::before, .ml-list-profile [dingo-icon-name] > span::after {
  padding: 10px 10px 0 0; }

.ml-card-horizontal {
  flex-flow: row wrap;
  min-height: auto;
  height: auto; }
  .ml-card-horizontal .ml-card-horizontal--image {
    flex: 1 auto;
    order: 1;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover; }
  .ml-card-horizontal .ml-card-horizontal--content {
    flex: 3 0px;
    order: 2; }

.dingo-card-message-box {
  color: rgba(0,0,0, 0.54);
  font-size: 1rem;
  line-height: 18px;
  overflow: hidden;
  padding: 0 16px; }

.sidebar-header .profile .avatar {
  width: 45px;
  height: 100%; }

.alertify-logs > * {
  padding: 12px 24px;
  color: #202020;
  -webkit-box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2); }

.alertify-logs > *,
.alertify-logs > *.default {
  background: #F8F8F8; }

.alertify-logs > *.error p {
  margin-bottom: 0; }

.alertify-logs > *.success p {
  margin-bottom: 0; }

.alertify {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1700;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3); }

.alertify.hide {
  pointer-events: none;
  opacity: 0; }

.alertify,
.alertify.show,
.alertify.hide {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.33s cubic-bezier(0.25, 0.8, 0.25, 1);
  -o-transition: all 0.33s cubic-bezier(0.25, 0.8, 0.25, 1);
  transition: all 0.33s cubic-bezier(0.25, 0.8, 0.25, 1); }

.alertify,
.alertify * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.alertify .dialog {
  padding: 12px; }

.alertify .dialog,
.alertify .alert {
  position: relative;
  top: 50%;
  width: 100%;
  margin: 0 auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%); }

.alertify .dialog > *,
.alertify .alert > * {
  width: 400px;
  max-width: 95%;
  padding: 12px;
  margin: 0 auto;
  text-align: center;
  background: #fff;
  -webkit-box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.14), 0 4px 5px 0 rgba(0, 0, 0, 0.098), 0 1px 10px 0 rgba(0, 0, 0, 0.084);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.14), 0 4px 5px 0 rgba(0, 0, 0, 0.098), 0 1px 10px 0 rgba(0, 0, 0, 0.084); }

.alertify .dialog .msg,
.alertify .alert .msg {
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  font-size: 16px;
  color: rgba(0, 0, 0, 0.5);
  line-height: 24px;
  text-align: left;
  letter-spacing: 0.03px;
  padding-top: 21px;
  padding-left: 24px;
  padding-right: 24px;
  padding-bottom: 12px;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0; }

.alertify .dialog input,
.alertify .alert input {
  width: 100%;
  height: 36px;
  padding: 6px 15px;
  margin-bottom: 15px;
  font-size: 14px;
  line-height: 1.57142857;
  color: #76838f;
  background-color: #fff;
  background-image: none;
  border: 1px solid #e4eaec;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transition: -webkit-box-shadow .25s linear, border .25s linear, color .25s linear, background-color .25s linear;
  -o-transition: box-shadow .25s linear, border .25s linear, color .25s linear, background-color .25s linear;
  transition: box-shadow .25s linear, border .25s linear, color .25s linear, background-color .25s linear; }

.alertify .dialog input:focus,
.alertify .alert input:focus {
  border-color: #62a8ea;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(98, 168, 234, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(98, 168, 234, 0.6); }

.alertify .dialog input.focus,
.alertify .alert input.focus,
.alertify .dialog input:focus,
.alertify .alert input:focus {
  border-color: #62a8ea;
  -webkit-box-shadow: none;
  box-shadow: none; }

.alertify .dialog input::-moz-placeholder,
.alertify .alert input::-moz-placeholder {
  color: #a3afb7;
  opacity: 1; }

.alertify .dialog input:-ms-input-placeholder,
.alertify .alert input:-ms-input-placeholder {
  color: #a3afb7; }

.alertify .dialog input::-webkit-input-placeholder,
.alertify .alert input::-webkit-input-placeholder {
  color: #a3afb7; }

.alertify .dialog nav,
.alertify .alert nav {
  text-align: right; }

.alertify .dialog nav .btn,
.alertify .alert nav .btn {
  margin: 4px 5px; }

.alertify-logs {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 1699; }

.alertify-logs > * {
  position: relative;
  float: right;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 10px;
  clear: both;
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  -o-transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-perspective: 1000;
  perspective: 1000; }

.alertify-logs > *.show {
  right: 0;
  opacity: 1; }

.alertify-logs > *,
.alertify-logs > *.hide {
  right: -100%;
  opacity: 0; }

.alertify .dialog button {
  border: none;
  /* Form */
  display: inline-block;
  height: 36px;
  background-color: rgba(9, 9, 9, 0);
  /* Typography */
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  font-size: 14px;
  color: rgba(33, 150, 243, 0.9);
  line-height: 36px;
  text-align: center;
  letter-spacing: 0.4px;
  /* Internal padding */
  padding-top: 0;
  padding-left: 8px;
  padding-right: 8px;
  padding-bottom: 0;
  /* External padding – Touch target size */
  margin-top: 6px;
  margin-left: 4px;
  margin-right: 4px;
  margin-bottom: 6px; }

.dingo-label {
  display: inline;
  padding: 1px 8px;
  border: 1px solid rgba(0,0,0, 0.12);
  font-size: 12px;
  line-height: 1;
  background-color: #fff;
  color: rgba(0,0,0, 0.26);
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em; }
  .dingo-label.is-active {
    border-color: rgba(33,150,243, 0.87);
    color: rgb(33,150,243); }

.dingo-login-ribbon {
  width: 100%;
  height: 40vh;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.dingo-login-main {
  margin-top: -15vh;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.dingo-signup-main {
  margin-top: -20vh;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.mdl-data-table {
  position: static;
  white-space: normal; }

.mdl-table-striped > tbody > tr:nth-of-type(even) {
  background-color: #f9f9f9; }

.mdl-table-bordered > thead > tr > td,
.mdl-table-bordered > tbody > tr > td {
  border: 1px solid #F0F0F0 !important; }

.mdl-data-table-pager .mdl-button {
  min-width: auto; }

.dingo-search-center-menu {
  content: "\e8b6"; }

.dingo-menu {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none; }
  .dingo-menu > li > a {
    display: block;
    padding: 8px 40px;
    font-weight: 500;
    color: #000;
    overflow: hidden;
    text-decoration: none; }
    .dingo-menu > li > a:hover, .dingo-menu > li > a:focus {
      background-color: rgba(0,0,0, 0.12);
      text-decoration: none; }
    .dingo-menu > li > a > span {
      left: 8px;
      position: absolute;
      top: 8px;
      width: 24px;
      height: 24px;
      font-size: 18px;
      line-height: 24px;
      text-align: center;
      color: inherit; }
  .dingo-menu > li > ul > li > a {
    padding: 4px 16px 4px 40px;
    font-weight: normal; }
  .dingo-menu > .active > a,
  .dingo-menu > .active > a:hover,
  .dingo-menu > .active > a:focus,
  .dingo-menu > .active:hover > a,
  .dingo-menu > .active:hover > a:hover,
  .dingo-menu > .active:hover > a:focus {
    color: rgb(33,150,243);
    cursor: default; }

.dingo-menu-container {
  padding-top: 8px;
  padding-bottom: 8px; }
  .dingo-menu-container > ul > li > a {
    position: relative; }
    .dingo-menu-container > ul > li > a::before, .dingo-menu-container > ul > li > a::after {
      position: absolute;
      top: 8px;
      width: 24px;
      height: 24px;
      font-size: 18px;
      line-height: 24px;
      text-align: center;
      color: inherit; }
    .dingo-menu-container > ul > li > a::before {
      left: 8px; }
    .dingo-menu-container > ul > li > a::after {
      right: 8px; }
  .dingo-menu-container > ul > .has-menu > a::after {
    content: "\e5ce"; }
  .dingo-menu-container > ul > .is-expanded > a::after {
    content: "\e5cf"; }

.mdl-layout.is-upgraded .mdl-layout__tab.is-active::after {
  background-color: #fff; }

[dingo-icon-name] > a, [dingo-icon-name] > span {
  display: block;
  padding: 0 20px 0 54px;
  position: relative; }
  [dingo-icon-name] > a::before, [dingo-icon-name] > a::after, [dingo-icon-name] > span::before, [dingo-icon-name] > span::after {
    position: absolute;
    top: 11px;
    left: 20px;
    width: 24px;
    height: 24px;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: inherit; }

[dingo-icon-name].mdl-menu__item {
  padding: 0; }

[dingo-icon-name="Delete"] > a::before {
  content: "\e872"; }

[dingo-icon-name="Edit"] > a::before {
  content: "\e254"; }

[dingo-icon-name] > a::before, [dingo-icon-name] > a::after, [dingo-icon-name] > span::before, [dingo-icon-name] > span::after {
  top: 8px; }

[dingo-icon-name] > a::before, [dingo-icon-name] > span::before {
  left: 8px; }

[dingo-icon-name] > a::after, [dingo-icon-name] > span::after {
  right: 8px;
  left: auto; }

[dingo-icon-name*="Dashboard"] > a::before {
  content: "\e871"; }

[dingo-icon-name*="Asset"] > a::before {
  content: "\e2c7"; }

[dingo-icon-name*="Product"] > a::before {
  content: "\e1db"; }

[dingo-icon-name*="Site"] > a::before {
  content: "\e051"; }

[dingo-icon-name*="Store"] > a::before {
  content: "\e8d1"; }

[dingo-icon-name*="Newsletter"] > a::before, [dingo-icon-name*="Email"] > a::before {
  content: "\e0be"; }

[dingo-icon-name*="Translate"] > a::before, [dingo-icon-name*="Translation"] > a::before {
  content: "\e8e2"; }

[dingo-icon-name*="Report"] > a::before, [dingo-icon-name*="Chart"] > a::before {
  content: "\e24b"; }

[dingo-icon-name*="Order"] > a::before {
  content: "\e8cc"; }

[dingo-icon-name*="User"] > a::before {
  content: "\e7fd"; }

[dingo-icon-name*="Translation"] > a::before {
  content: "\e894"; }

[dingo-icon-name*="Publish"] > a::before {
  content: "\e255"; }

[dingo-icon-name*="Setting"] > a::before {
  content: "\e8b8"; }

[dingo-icon-name*="Search"] > a::before, [dingo-icon-name*="Search"] > span::before {
  content: "\e8b6"; }

[dingo-icon-name*="Client Services"] > a::before {
  content: "\e5c3"; }

[dingo-icon-name*="Transaction Logs"] > a::before {
  content: "\e889"; }

[dingo-icon-name*="Notification"] > a::before {
  content: "\e7f4"; }

[dingo-icon-name*="Workers"] > a::before {
  content: "\e8f9"; }

[dingo-icon-name] [dingo-icon-name] > a::before {
  content: " " !important; }

.dingo-alert {
  margin: 0 24px 24px 24px;
  padding: 16px 24px;
  line-height: 24px;
  color: rgb(97,97,97);
  background-color: rgb(245,245,245);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
  .dingo-alert:before, .dingo-alert:after {
    content: " ";
    display: table; }
  .dingo-alert:after {
    clear: both; }
  .dingo-alert > button {
    float: right;
    margin: -4px 0 -4px 4px;
    color: inherit;
    opacity: 0.5; }
    .dingo-alert > button:hover, .dingo-alert > button:focus {
      opacity: 0.8; }

.dingo-alert--success {
  color: rgb(25,118,210);
  background-color: rgb(187,222,251); }

.dingo-alert--error {
  color: rgb(194,24,91);
  background-color: rgb(248,187,208); }

.dingo-error {
  margin: 24px;
  padding-left: 0;
  background-color: #fff;
  list-style: none;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
  .dingo-error > li {
    border: 1px solid rgba(0,0,0, 0.12); }
    .dingo-error > li + li {
      margin-top: -1px; }
    .dingo-error > li > label {
      position: relative;
      display: block;
      margin-bottom: 0;
      padding: 16px 24px 16px 56px;
      line-height: 24px;
      font-weight: normal;
      color: rgb(255,64,129); }
      .dingo-error > li > label > i {
        position: absolute;
        top: 16px;
        left: 24px;
        vertical-align: top; }
      .dingo-error > li > label > span + span {
        margin-left: 8px; }

.dingo-actions {
  float: left;
  min-height: 32px;
  margin-right: 16px;
  padding: 8px 0; }
  .dingo-actions:before, .dingo-actions:after {
    content: " ";
    display: table; }
  .dingo-actions:after {
    clear: both; }
  .dingo-actions:first-child .dingo-selector {
    margin-left: 0; }
  .dingo-actions:last-child {
    margin-right: 0; }
  .dingo-actions .dingo-selector,
  .dingo-actions .dingo-action--text,
  .dingo-actions .dingo-action--label,
  .dingo-actions .dingo-action--select,
  .dingo-actions .dingo-action--button {
    float: left; }

.dingo-action--select {
  height: 32px;
  border: 2px solid rgb(33,150,243); }

.dingo-action--label {
  display: inline-block;
  height: 28px;
  padding-left: 8px;
  padding-right: 8px;
  font-size: 14px;
  line-height: 28px;
  color: rgba(0,0,0, 0.54);
  background-color: #fff;
  border: 2px solid rgba(0,0,0, 0.12);
  border-radius: 2px;
  cursor: pointer;
  text-decoration: none; }
  .dingo-action--label:hover, .dingo-action--label:focus {
    text-decoration: none;
    color: rgba(0,0,0, 0.54); }
  .dingo-action--label.is-active {
    padding-right: 0;
    color: rgba(0,0,0, 0.87);
    border-color: rgb(33,150,243); }
  .dingo-action--label > i {
    display: inline-block;
    width: 30px;
    height: 28px;
    margin-left: 6px;
    padding-left: 2px;
    font-size: 16px;
    line-height: 28px;
    background-color: rgb(33,150,243);
    color: #fff;
    text-align: center;
    vertical-align: top; }
  .dingo-action--label + .dingo-action--select,
  .dingo-action--label + .dingo-action--label {
    margin-left: 8px; }

.dingo-action-bulk-buttons, .dingo-action-forms {
  display: inline-block;
  vertical-align: middle;
  padding: 8px 0; }

.dingo-action--button {
  height: 32px;
  line-height: 32px; }
  .dingo-action--button + .dingo-action--button {
    margin-left: 8px; }

.dingo-action-bulk-edit {
  float: left; }

.dingo-action-forms .dingo-form__actions {
  margin-top: 0; }

.dingo-action-forms > .dingo-action-button {
  margin-right: 24px; }

.dingo-action-forms > .action-form {
  margin-right: 24px; }

.dingo-action-forms > .action-form, .dingo-action-forms .dingo-form-section, .dingo-action-forms .dingo-form__actions {
  display: inline-block;
  vertical-align: baseline; }

.dingo-action-forms .dingo-form__actions .mdl-button {
  float: none; }

.dingo-slideout__body .dingo-page__header {
  box-shadow: none;
  background: transparent;
  height: auto;
  min-height: 0;
  padding-top: 0;
  margin: -16px -24px 0; }
  .dingo-slideout__body .dingo-page__header .mdl-button {
    height: 36px;
    line-height: 36px;
    margin-right: 0;
    margin-left: 24px; }
  .dingo-slideout__body .dingo-page__header .dingo-action-forms {
    margin-top: 16px;
    text-align: right;
    margin-bottom: -50px; }

@media screen and (max-width: 1024px) {
  .dingo-slideout__body .dingo-page__header + .dingo-page__body {
    margin-top: 0; } }

.dingo-section {
  margin: 24px; }
  .dingo-section.dingo-section__table {
    margin: 24px 0; }
    .dingo-section.dingo-section__table .dingo-section__header {
      margin-left: 24px; }
  .dingo-section > .dingo-table-container {
    margin: 0; }

.dingo-section__header {
  margin-bottom: 8px; }

.dingo-section-title {
  font-size: 18px;
  line-height: 24px;
  margin-bottom: 8px;
  margin-top: 32px;
  color: rgba(0,0,0, 0.68); }

.dingo-pagination-container {
  margin: 24px; }

.dingo-pagination {
  float: left;
  margin: 0;
  padding: 0;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
  .dingo-pagination > li {
    display: inline; }
    .dingo-pagination > li > a,
    .dingo-pagination > li > span {
      position: relative;
      float: left;
      min-width: 32px;
      height: 32px;
      font-size: 14px;
      line-height: 32px;
      text-align: center;
      color: #333;
      text-decoration: none;
      background-color: #fff; }
      .dingo-pagination > li > a > span,
      .dingo-pagination > li > span > span {
        line-height: inherit; }
  .dingo-pagination > li > a:hover, .dingo-pagination > li > a:focus,
  .dingo-pagination > li > span:hover,
  .dingo-pagination > li > span:focus {
    color: rgb(rgb(33,150,243));
    background-color: #eee; }
  .dingo-pagination > .active > a, .dingo-pagination > .active > a:hover, .dingo-pagination > .active > a:focus,
  .dingo-pagination > .active > span,
  .dingo-pagination > .active > span:hover,
  .dingo-pagination > .active > span:focus {
    z-index: 2;
    color: #fff;
    cursor: default;
    background-color: rgb(33,150,243); }
  .dingo-pagination > .disabled > span,
  .dingo-pagination > .disabled > span:hover,
  .dingo-pagination > .disabled > span:focus,
  .dingo-pagination > .disabled > a,
  .dingo-pagination > .disabled > a:hover,
  .dingo-pagination > .disabled > a:focus {
    color: #777;
    cursor: not-allowed;
    background-color: #fff;
    border-color: #ddd; }

.dingo-pagination-all {
  float: left;
  display: block;
  height: 32px;
  margin-left: 16px;
  font-size: 12px;
  line-height: 32px;
  text-transform: uppercase;
  text-decoration: none;
  color: rgb(33,150,243); }

.clearfix:before, .dingo-pagination-container:before, .clearfix:after, .dingo-pagination-container:after {
  content: " ";
  display: table; }

.clearfix:after, .dingo-pagination-container:after {
  clear: both; }

.float-left {
  float: left; }

.float-right {
  float: right; }

.shown,
.is-shown {
  display: block !important; }

.hidden,
.is-hidden {
  display: none !important; }

.fade {
  opacity: 0;
  transition: opacity .2s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height .3s ease; }

@media only screen and (min-device-width: 320px) and (max-device-width: 736px) {
  .dingo-section {
    margin: 24px 0; }
    .dingo-section .dingo-section__header {
      margin-left: 24px; }
  .dingo-page--dashboard .dingo-table-container {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
    .dingo-page--dashboard .dingo-table-container th {
      background-color: transparent; }
  .dingo-page__header {
    margin-bottom: 2px; }
  .dingo-table-container {
    margin: 0 0 24px 0;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14); }
    .dingo-table-container th {
      background-color: #f5f5f5; }
    .dingo-table-container .mdl-data-table {
      border-top: 0; }
  .dingo-action--select + .dingo-selector, .dingo-action--select + .dingo-action--label, .dingo-action--select + .dingo-action--select {
    margin-left: 0;
    margin-right: 8px;
    margin-bottom: 8px; }
  .dingo-search.is-focused {
    width: 360px; }
  .dingo-search .mdl-textfield__expandable-holder {
    width: calc(100% - 64px); }
  .dingo-modal .mdl-card {
    margin: 24px auto; }
  .dingo-form-container {
    margin: 0;
    padding: 16px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXMiOlsiYXBwLnNjc3MiLCJfaGVscGVycy5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwibWRsL192YXJpYWJsZXMuc2NzcyIsIm1kbC9fY29sb3ItZGVmaW5pdGlvbnMuc2NzcyIsIm1kbC9fZnVuY3Rpb25zLnNjc3MiLCJfbWl4aW5zLnNjc3MiLCJtZGwvX21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL19jb2xvci1kZWZpbml0aW9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9fZnVuY3Rpb25zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL19taXhpbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvcmVzZXRzL19yZXNldHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvcmVzZXRzL19oNWJwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL3Jlc2V0cy9fbW9iaWxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL3R5cG9ncmFwaHkvX3R5cG9ncmFwaHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvcGFsZXR0ZS9fcGFsZXR0ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9yaXBwbGUvX3JpcHBsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9hbmltYXRpb24vX2FuaW1hdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9iYWRnZS9fYmFkZ2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvYnV0dG9uL19idXR0b24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvY2FyZC9fY2FyZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9jaGVja2JveC9fY2hlY2tib3guc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvZGF0YS10YWJsZS9fZGF0YS10YWJsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9kaWFsb2cvX2RpYWxvZy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9mb290ZXIvX21lZ2FfZm9vdGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL2Zvb3Rlci9fbWluaV9mb290ZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvaWNvbi10b2dnbGUvX2ljb24tdG9nZ2xlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL2xpc3QvX2xpc3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvbWVudS9fbWVudS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9wcm9ncmVzcy9fcHJvZ3Jlc3Muc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvbGF5b3V0L19sYXlvdXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvcmFkaW8vX3JhZGlvLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL3NsaWRlci9fc2xpZGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL3NuYWNrYmFyL19zbmFja2Jhci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9zcGlubmVyL19zcGlubmVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL3N3aXRjaC9fc3dpdGNoLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL3RhYnMvX3RhYnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvdGV4dGZpZWxkL190ZXh0ZmllbGQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvdG9vbHRpcC9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9zaGFkb3cvX3NoYWRvdy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9ncmlkL19ncmlkLnNjc3MiLCJhcHAvX2ZvbnRzLnNjc3MiLCJhcHAvX2ljb25zLnNjc3MiLCJhcHAvX2xheW91dC5zY3NzIiwiYXBwL190eXBvZ3JhcGh5LnNjc3MiLCJhcHAvX2Zvcm1zLnNjc3MiLCJhcHAvX2VkaXRvci5zY3NzIiwiYXBwL19idXR0b25zLnNjc3MiLCJhcHAvX2NhcmRzLnNjc3MiLCJhcHAvX2hlYWRlci5zY3NzIiwiYXBwL19kaWFsb2dzLnNjc3MiLCJhcHAvX2xhYmVscy5zY3NzIiwiYXBwL19sb2dpbi5zY3NzIiwiYXBwL190YWJsZS5zY3NzIiwiYXBwL19zZWFyY2gtY2VudGVyLnNjc3MiLCJhcHAvX21lbnUuc2NzcyIsImFwcC9fZGluZ28taWNvbnMuc2NzcyIsImFwcC9fYWxlcnRzLnNjc3MiLCJhcHAvX2Vycm9ycy5zY3NzIiwiYXBwL19hY3Rpb25zLnNjc3MiLCJhcHAvX3NlY3Rpb25zLnNjc3MiLCJhcHAvX3BhZ2luYXRpb24uc2NzcyIsImFwcC9fdXRpbGl0aWVzLnNjc3MiLCJhcHAvX21vYmlsZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvbW1vblxuQGltcG9ydCBcImhlbHBlcnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuQGltcG9ydCBcIm5vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvbWF0ZXJpYWwtZGVzaWduLWxpdGVcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcImFwcC9mb250c1wiO1xuQGltcG9ydCBcImFwcC9pY29uc1wiO1xuQGltcG9ydCBcImFwcC9sYXlvdXRcIjtcbkBpbXBvcnQgXCJhcHAvdHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImFwcC9mb3Jtc1wiO1xuQGltcG9ydCBcImFwcC9lZGl0b3JcIjtcbkBpbXBvcnQgXCJhcHAvYnV0dG9uc1wiO1xuQGltcG9ydCBcImFwcC9jYXJkc1wiO1xuQGltcG9ydCBcImFwcC9oZWFkZXJcIjtcbkBpbXBvcnQgXCJhcHAvZGlhbG9nc1wiO1xuQGltcG9ydCBcImFwcC9sYWJlbHNcIjtcbkBpbXBvcnQgXCJhcHAvbG9naW5cIjtcbkBpbXBvcnQgXCJhcHAvdGFibGVcIjtcbkBpbXBvcnQgXCJhcHAvc2VhcmNoLWNlbnRlclwiO1xuQGltcG9ydCBcImFwcC9tZW51XCI7XG5AaW1wb3J0IFwiYXBwL2RpbmdvLWljb25zXCI7XG5AaW1wb3J0IFwiYXBwL2FsZXJ0c1wiO1xuQGltcG9ydCBcImFwcC9lcnJvcnNcIjtcbkBpbXBvcnQgXCJhcHAvYWN0aW9uc1wiO1xuQGltcG9ydCBcImFwcC9zZWN0aW9uc1wiO1xuQGltcG9ydCBcImFwcC9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYXBwL3V0aWxpdGllc1wiO1xuQGltcG9ydCBcImFwcC9tb2JpbGVcIjtcbiIsIi8qIHBhZGRpbmcgY2xhc3NlcyAqL1xuLnAtNSB7IHBhZGRpbmc6IDVweDsgfVxuLnAtMTAgeyBwYWRkaW5nOiAxMHB4OyB9XG4ucC0xNSB7IHBhZGRpbmc6IDE1cHg7IH1cbi5wLTIwIHsgcGFkZGluZzogMjBweDsgfVxuLnAtMjUgeyBwYWRkaW5nOiAyNXB4OyB9XG4ucC0zMCB7IHBhZGRpbmc6IDMwcHg7IH1cbi5wLTM1IHsgcGFkZGluZzogMzVweDsgfVxuLnAtNDAgeyBwYWRkaW5nOiA0MHB4OyB9XG4ucC00NSB7IHBhZGRpbmc6IDQ1cHg7IH1cbi5wLTUwIHsgcGFkZGluZzogNTBweDsgfVxuLnAtNTUgeyBwYWRkaW5nOiA1NXB4OyB9XG4ucC02MCB7IHBhZGRpbmc6IDYwcHg7IH1cbi5wLTY1IHsgcGFkZGluZzogNjVweDsgfVxuLnAtNzAgeyBwYWRkaW5nOiA3MHB4OyB9XG4ucC03NSB7IHBhZGRpbmc6IDc1cHg7IH1cbi5wLTgwIHsgcGFkZGluZzogODBweDsgfVxuXG4vKiBwYWRkaW5nIDUgKi9cbi5wLXQtNSB7IHBhZGRpbmctdG9wOiA1cHg7IH1cbi5wLXItNSB7IHBhZGRpbmctcmlnaHQ6IDVweDsgfVxuLnAtYi01IHsgcGFkZGluZy1ib3R0b206IDVweDsgfVxuLnAtbC01IHsgcGFkZGluZy1sZWZ0OiA1cHg7IH1cbi5wLXYtNSB7IHBhZGRpbmc6IDVweCAwOyB9XG4ucC1oLTUgeyBwYWRkaW5nOiAwIDVweDsgfVxuXG4vKiBwYWRkaW5nIDEwICovXG4ucC10LTEwIHsgcGFkZGluZy10b3A6IDEwcHg7IH1cbi5wLXItMTAgeyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4ucC1iLTEwIHsgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbi5wLWwtMTAgeyBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cbi5wLXYtMTAgeyBwYWRkaW5nOiAxMHB4IDA7IH1cbi5wLWgtMTAgeyBwYWRkaW5nOiAwIDEwcHg7IH1cblxuLyogcGFkZGluZyAxNSAqL1xuLnAtdC0xNSB7IHBhZGRpbmctdG9wOiAxNXB4OyB9XG4ucC1yLTE1IHsgcGFkZGluZy1yaWdodDogMTVweDsgfVxuLnAtYi0xNSB7IHBhZGRpbmctYm90dG9tOiAxNXB4OyB9XG4ucC1sLTE1IHsgcGFkZGluZy1sZWZ0OiAxNXB4OyB9XG4ucC12LTE1IHsgcGFkZGluZzogMTVweCAwOyB9XG4ucC1oLTE1IHsgcGFkZGluZzogMCAxNXB4OyB9XG5cbi8qIHBhZGRpbmcgMjAgKi9cbi5wLXQtMjAgeyBwYWRkaW5nLXRvcDogMjBweDsgfVxuLnAtci0yMCB7IHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbi5wLWItMjAgeyBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuLnAtbC0yMCB7IHBhZGRpbmctbGVmdDogMjBweDsgfVxuLnAtdi0yMCB7IHBhZGRpbmc6IDIwcHggMDsgfVxuLnAtaC0yMCB7IHBhZGRpbmc6IDAgMjBweDsgfVxuXG4vKiBwYWRkaW5nIDI1ICovXG4ucC10LTI1IHsgcGFkZGluZy10b3A6IDI1cHg7IH1cbi5wLXItMjUgeyBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4ucC1iLTI1IHsgcGFkZGluZy1ib3R0b206IDI1cHg7IH1cbi5wLWwtMjUgeyBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cbi5wLXYtMjUgeyBwYWRkaW5nOiAyNXB4IDA7IH1cbi5wLWgtMjUgeyBwYWRkaW5nOiAwIDI1cHg7IH1cblxuLyogcGFkZGluZyAzMCAqL1xuLnAtdC0zMCB7IHBhZGRpbmctdG9wOiAzMHB4OyB9XG4ucC1yLTMwIHsgcGFkZGluZy1yaWdodDogMzBweDsgfVxuLnAtYi0zMCB7IHBhZGRpbmctYm90dG9tOiAzMHB4OyB9XG4ucC1sLTMwIHsgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XG4ucC12LTMwIHsgcGFkZGluZzogMzBweCAwOyB9XG4ucC1oLTMwIHsgcGFkZGluZzogMCAzMHB4OyB9XG5cbi8qIHBhZGRpbmcgMzUgKi9cbi5wLXQtMzUgeyBwYWRkaW5nLXRvcDogMzVweDsgfVxuLnAtci0zNSB7IHBhZGRpbmctcmlnaHQ6IDM1cHg7IH1cbi5wLWItMzUgeyBwYWRkaW5nLWJvdHRvbTogMzVweDsgfVxuLnAtbC0zNSB7IHBhZGRpbmctbGVmdDogMzVweDsgfVxuLnAtdi0zNSB7IHBhZGRpbmc6IDM1cHggMDsgfVxuLnAtaC0zNSB7IHBhZGRpbmc6IDAgMzVweDsgfVxuXG4vKiBwYWRkaW5nIDQwICovXG4ucC10LTQwIHsgcGFkZGluZy10b3A6IDQwcHg7IH1cbi5wLXItNDAgeyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG4ucC1iLTQwIHsgcGFkZGluZy1ib3R0b206IDQwcHg7IH1cbi5wLWwtNDAgeyBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cbi5wLXYtNDAgeyBwYWRkaW5nLXRvcDogNDBweDsgcGFkZGluZy1ib3R0b206NDBweDsgfVxuLnAtaC00MCB7IHBhZGRpbmc6IDAgNDBweDsgfVxuXG4vKiBwYWRkaW5nIDQ1ICovXG4ucC10LTQ1IHsgcGFkZGluZy10b3A6IDQ1cHg7IH1cbi5wLXItNDUgeyBwYWRkaW5nLXJpZ2h0OiA0NXB4OyB9XG4ucC1iLTQ1IHsgcGFkZGluZy1ib3R0b206IDQ1cHg7IH1cbi5wLWwtNDUgeyBwYWRkaW5nLWxlZnQ6IDQ1cHg7IH1cbi5wLXYtNDUgeyBwYWRkaW5nOiA0NXB4IDA7IH1cbi5wLWgtNDUgeyBwYWRkaW5nOiAwIDQ1cHg7IH1cblxuLyogcGFkZGluZyA1MCAqL1xuLnAtdC01MCB7IHBhZGRpbmctdG9wOiA1MHB4OyB9XG4ucC1yLTUwIHsgcGFkZGluZy1yaWdodDogNTBweDsgfVxuLnAtYi01MCB7IHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4ucC1sLTUwIHsgcGFkZGluZy1sZWZ0OiA1MHB4OyB9XG4ucC12LTUwIHsgcGFkZGluZzogNTBweCAwOyB9XG4ucC1oLTUwIHsgcGFkZGluZzogMCA1MHB4OyB9XG5cbi8qIHBhZGRpbmcgNTUgKi9cbi5wLXQtNTUgeyBwYWRkaW5nLXRvcDogNTVweDsgfVxuLnAtci01NSB7IHBhZGRpbmctcmlnaHQ6IDU1cHg7IH1cbi5wLWItNTUgeyBwYWRkaW5nLWJvdHRvbTogNTVweDsgfVxuLnAtbC01NSB7IHBhZGRpbmctbGVmdDogNTVweDsgfVxuLnAtdi01NSB7IHBhZGRpbmc6IDU1cHggMDsgfVxuLnAtaC01NSB7IHBhZGRpbmc6IDAgNTVweDsgfVxuXG4vKiBwYWRkaW5nIDYwICovXG4ucC10LTYwIHsgcGFkZGluZy10b3A6IDYwcHg7IH1cbi5wLXItNjAgeyBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9XG4ucC1iLTYwIHsgcGFkZGluZy1ib3R0b206IDYwcHg7IH1cbi5wLWwtNjAgeyBwYWRkaW5nLWxlZnQ6IDYwcHg7IH1cbi5wLXYtNjAgeyBwYWRkaW5nOiA2MHB4IDA7IH1cbi5wLWgtNjAgeyBwYWRkaW5nOiAwIDYwcHg7IH1cblxuLyogcGFkZGluZyA2NSAqL1xuLnAtdC02NSB7IHBhZGRpbmctdG9wOiA2NXB4OyB9XG4ucC1yLTY1IHsgcGFkZGluZy1yaWdodDogNjVweDsgfVxuLnAtYi02NSB7IHBhZGRpbmctYm90dG9tOiA2NXB4OyB9XG4ucC1sLTY1IHsgcGFkZGluZy1sZWZ0OiA2NXB4OyB9XG4ucC12LTY1IHsgcGFkZGluZzogNjVweCAwOyB9XG4ucC1oLTY1IHsgcGFkZGluZzogMCA2NXB4OyB9XG5cbi8qIHBhZGRpbmcgNzAgKi9cbi5wLXQtNzAgeyBwYWRkaW5nLXRvcDogNzBweDsgfVxuLnAtci03MCB7IHBhZGRpbmctcmlnaHQ6IDcwcHg7IH1cbi5wLWItNzAgeyBwYWRkaW5nLWJvdHRvbTogNzBweDsgfVxuLnAtbC03MCB7IHBhZGRpbmctbGVmdDogNzBweDsgfVxuLnAtdi03MCB7IHBhZGRpbmc6IDcwcHggMDsgfVxuLnAtaC03MCB7IHBhZGRpbmc6IDAgNzBweDsgfVxuXG4vKiBwYWRkaW5nIDc1ICovXG4ucC10LTc1IHsgcGFkZGluZy10b3A6IDc1cHg7IH1cbi5wLXItNzUgeyBwYWRkaW5nLXJpZ2h0OiA3NXB4OyB9XG4ucC1iLTc1IHsgcGFkZGluZy1ib3R0b206IDc1cHg7IH1cbi5wLWwtNzUgeyBwYWRkaW5nLWxlZnQ6IDc1cHg7IH1cbi5wLXYtNzUgeyBwYWRkaW5nOiA3NXB4IDA7IH1cbi5wLWgtNzUgeyBwYWRkaW5nOiAwIDc1cHg7IH1cblxuLyogcGFkZGluZyA4MCAqL1xuLnAtdC04MCB7IHBhZGRpbmctdG9wOiA4MHB4OyB9XG4ucC1yLTgwIHsgcGFkZGluZy1yaWdodDogODBweDsgfVxuLnAtYi04MCB7IHBhZGRpbmctYm90dG9tOiA4MHB4OyB9XG4ucC1sLTgwIHsgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XG4ucC12LTgwIHsgcGFkZGluZzogODBweCAwOyB9XG4ucC1oLTgwIHsgcGFkZGluZzogMCA4MHB4OyB9XG5cbi8qIHBhZGRpbmcgMCAqL1xuLm5vLXAgeyBwYWRkaW5nOiAwcHg7IH1cbi5uby1wLXQgeyBwYWRkaW5nLXRvcDogMHB4OyB9XG4ubm8tcC1yIHsgcGFkZGluZy1yaWdodDogMHB4OyB9XG4ubm8tcC1iIHsgcGFkZGluZy1ib3R0b206IDBweDsgfVxuLm5vLXAtbCB7IHBhZGRpbmctbGVmdDogMHB4OyB9XG4ubm8tcC12IHsgcGFkZGluZzogMHB4IDA7IH1cbi5uby1wLWggeyBwYWRkaW5nOiAwIDBweDsgfVxuXG4vKiBtYXJnaW4gY2xhc3NlcyAqL1xuXG4vKiBtYXJnaW4gNSAqL1xuLm0tNSB7IG1hcmdpbjogNXB4OyB9XG4ubS10LTUgeyBtYXJnaW4tdG9wOiA1cHg7IH1cbi5tLXItNSB7IG1hcmdpbi1yaWdodDogNXB4OyB9XG4ubS1iLTUgeyBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbi5tLWwtNSB7IG1hcmdpbi1sZWZ0OiA1cHg7IH1cbi5tLXYtNSB7IG1hcmdpbjogNXB4IDA7IH1cbi5tLWgtNSB7IG1hcmdpbjogMCA1cHg7IH1cblxuLyogbWFyZ2luIDEwICovXG4ubS0xMCB7IG1hcmdpbjogMTBweDsgfVxuLm0tdC0xMCB7IG1hcmdpbi10b3A6IDEwcHg7IH1cbi5tLXItMTAgeyBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbi5tLWItMTAgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4ubS1sLTEwIHsgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbi5tLXYtMTAgeyBtYXJnaW46IDEwcHggMDsgfVxuLm0taC0xMCB7IG1hcmdpbjogMCAxMHB4OyB9XG5cbi8qIG1hcmdpbiAxNSAqL1xuLm0tMTUgeyBtYXJnaW46IDE1cHg7IH1cbi5tLXQtMTUgeyBtYXJnaW4tdG9wOiAxNXB4OyB9XG4ubS1yLTE1IHsgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4ubS1iLTE1IHsgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuLm0tbC0xNSB7IG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4ubS12LTE1IHsgbWFyZ2luOiAxNXB4IDA7IH1cbi5tLWgtMTUgeyBtYXJnaW46IDAgMTVweDsgfVxuXG4vKiBtYXJnaW4gMjAgKi9cbi5tLTIwIHsgbWFyZ2luOiAyMHB4OyB9XG4ubS10LTIwIHsgbWFyZ2luLXRvcDogMjBweDsgfVxuLm0tci0yMCB7IG1hcmdpbi1yaWdodDogMjBweDsgfVxuLm0tYi0yMCB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbi5tLWwtMjAgeyBtYXJnaW4tbGVmdDogMjBweDsgfVxuLm0tdi0yMCB7IG1hcmdpbjogMjBweCAwOyB9XG4ubS1oLTIwIHsgbWFyZ2luOiAwIDIwcHg7IH1cblxuLyogbWFyZ2luIDI1ICovXG4ubS0yNSB7IG1hcmdpbjogMjVweDsgfVxuLm0tdC0yNSB7IG1hcmdpbi10b3A6IDI1cHg7IH1cbi5tLXItMjUgeyBtYXJnaW4tcmlnaHQ6IDI1cHg7IH1cbi5tLWItMjUgeyBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4ubS1sLTI1IHsgbWFyZ2luLWxlZnQ6IDI1cHg7IH1cbi5tLXYtMjUgeyBtYXJnaW46IDI1cHggMDsgfVxuLm0taC0yNSB7IG1hcmdpbjogMCAyNXB4OyB9XG5cbi8qIG1hcmdpbiAzMCAqL1xuLm0tMzAgeyBtYXJnaW46IDMwcHg7IH1cbi5tLXQtMzAgeyBtYXJnaW4tdG9wOiAzMHB4OyB9XG4ubS1yLTMwIHsgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG4ubS1iLTMwIHsgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuLm0tbC0zMCB7IG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG4ubS12LTMwIHsgbWFyZ2luOiAzMHB4IDA7IH1cbi5tLWgtMzAgeyBtYXJnaW46IDAgMzBweDsgfVxuXG4vKiBtYXJnaW4gMzUgKi9cbi5tLTM1IHsgbWFyZ2luOiAzNXB4OyB9XG4ubS10LTM1IHsgbWFyZ2luLXRvcDogMzVweDsgfVxuLm0tci0zNSB7IG1hcmdpbi1yaWdodDogMzVweDsgfVxuLm0tYi0zNSB7IG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbi5tLWwtMzUgeyBtYXJnaW4tbGVmdDogMzVweDsgfVxuLm0tdi0zNSB7IG1hcmdpbjogMzVweCAwOyB9XG4ubS1oLTM1IHsgbWFyZ2luOiAwIDM1cHg7IH1cblxuLyogbWFyZ2luIDQwICovXG4ubS00MCB7IG1hcmdpbjogNDBweDsgfVxuLm0tdC00MCB7IG1hcmdpbi10b3A6IDQwcHg7IH1cbi5tLXItNDAgeyBtYXJnaW4tcmlnaHQ6IDQwcHg7IH1cbi5tLWItNDAgeyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4ubS1sLTQwIHsgbWFyZ2luLWxlZnQ6IDQwcHg7IH1cbi5tLXYtNDAgeyBtYXJnaW46IDQwcHggMDsgfVxuLm0taC00MCB7IG1hcmdpbjogMCA0MHB4OyB9XG5cbi8qIG1hcmdpbiA0NSAqL1xuLm0tNDUgeyBtYXJnaW46IDQ1cHg7IH1cbi5tLXQtNDUgeyBtYXJnaW4tdG9wOiA0NXB4OyB9XG4ubS1yLTQ1IHsgbWFyZ2luLXJpZ2h0OiA0NXB4OyB9XG4ubS1iLTQ1IHsgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuLm0tbC00NSB7IG1hcmdpbi1sZWZ0OiA0NXB4OyB9XG4ubS12LTQ1IHsgbWFyZ2luOiA0NXB4IDA7IH1cbi5tLWgtNDUgeyBtYXJnaW46IDAgNDVweDsgfVxuXG4vKiBtYXJnaW4gNTAgKi9cbi5tLTUwIHsgbWFyZ2luOiA1MHB4OyB9XG4ubS10LTUwIHsgbWFyZ2luLXRvcDogNTBweDsgfVxuLm0tci01MCB7IG1hcmdpbi1yaWdodDogNTBweDsgfVxuLm0tYi01MCB7IG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbi5tLWwtNTAgeyBtYXJnaW4tbGVmdDogNTBweDsgfVxuLm0tdi01MCB7IG1hcmdpbjogNTBweCAwOyB9XG4ubS1oLTUwIHsgbWFyZ2luOiAwIDUwcHg7IH1cblxuLyogbWFyZ2luIDU1ICovXG4ubS01NSB7IG1hcmdpbjogNTVweDsgfVxuLm0tdC01NSB7IG1hcmdpbi10b3A6IDU1cHg7IH1cbi5tLXItNTUgeyBtYXJnaW4tcmlnaHQ6IDU1cHg7IH1cbi5tLWItNTUgeyBtYXJnaW4tYm90dG9tOiA1NXB4OyB9XG4ubS1sLTU1IHsgbWFyZ2luLWxlZnQ6IDU1cHg7IH1cbi5tLXYtNTUgeyBtYXJnaW46IDU1cHggMDsgfVxuLm0taC01NSB7IG1hcmdpbjogMCA1NXB4OyB9XG5cbi8qIG1hcmdpbiA2MCAqL1xuLm0tNjAgeyBtYXJnaW46IDYwcHg7IH1cbi5tLXQtNjAgeyBtYXJnaW4tdG9wOiA2MHB4OyB9XG4ubS1yLTYwIHsgbWFyZ2luLXJpZ2h0OiA2MHB4OyB9XG4ubS1iLTYwIHsgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuLm0tbC02MCB7IG1hcmdpbi1sZWZ0OiA2MHB4OyB9XG4ubS12LTYwIHsgbWFyZ2luOiA2MHB4IDA7IH1cbi5tLWgtNjAgeyBtYXJnaW46IDAgNjBweDsgfVxuXG4vKiBtYXJnaW4gNjUgKi9cbi5tLTY1IHsgbWFyZ2luOiA2NXB4OyB9XG4ubS10LTY1IHsgbWFyZ2luLXRvcDogNjVweDsgfVxuLm0tci02NSB7IG1hcmdpbi1yaWdodDogNjVweDsgfVxuLm0tYi02NSB7IG1hcmdpbi1ib3R0b206IDY1cHg7IH1cbi5tLWwtNjUgeyBtYXJnaW4tbGVmdDogNjVweDsgfVxuLm0tdi02NSB7IG1hcmdpbjogNjVweCAwOyB9XG4ubS1oLTY1IHsgbWFyZ2luOiAwIDY1cHg7IH1cblxuLyogbWFyZ2luIDcwICovXG4ubS03MCB7IG1hcmdpbjogNzBweDsgfVxuLm0tdC03MCB7IG1hcmdpbi10b3A6IDcwcHg7IH1cbi5tLXItNzAgeyBtYXJnaW4tcmlnaHQ6IDcwcHg7IH1cbi5tLWItNzAgeyBtYXJnaW4tYm90dG9tOiA3MHB4OyB9XG4ubS1sLTcwIHsgbWFyZ2luLWxlZnQ6IDcwcHg7IH1cbi5tLXYtNzAgeyBtYXJnaW46IDcwcHggMDsgfVxuLm0taC03MCB7IG1hcmdpbjogMCA3MHB4OyB9XG5cbi8qIG1hcmdpbiA3NSAqL1xuLm0tNzUgeyBtYXJnaW46IDc1cHg7IH1cbi5tLXQtNzUgeyBtYXJnaW4tdG9wOiA3NXB4OyB9XG4ubS1yLTc1IHsgbWFyZ2luLXJpZ2h0OiA3NXB4OyB9XG4ubS1iLTc1IHsgbWFyZ2luLWJvdHRvbTogNzVweDsgfVxuLm0tbC03NSB7IG1hcmdpbi1sZWZ0OiA3NXB4OyB9XG4ubS12LTc1IHsgbWFyZ2luOiA3NXB4IDA7IH1cbi5tLWgtNzUgeyBtYXJnaW46IDAgNzVweDsgfVxuXG4vKiBtYXJnaW4gODAgKi9cbi5tLTgwIHsgbWFyZ2luOiA4MHB4OyB9XG4ubS10LTgwIHsgbWFyZ2luLXRvcDogODBweDsgfVxuLm0tci04MCB7IG1hcmdpbi1yaWdodDogODBweDsgfVxuLm0tYi04MCB7IG1hcmdpbi1ib3R0b206IDgwcHg7IH1cbi5tLWwtODAgeyBtYXJnaW4tbGVmdDogODBweDsgfVxuLm0tdi04MCB7IG1hcmdpbjogODBweCAwOyB9XG4ubS1oLTgwIHsgbWFyZ2luOiAwIDgwcHg7IH1cblxuLyogbWFyZ2luIDAgKi9cbi5uby1tIHsgbWFyZ2luOiAwcHg7IH1cbi5uby1tLXQgeyBtYXJnaW4tdG9wOiAwcHg7IH1cbi5uby1tLXIgeyBtYXJnaW4tcmlnaHQ6IDBweDsgfVxuLm5vLW0tYiB7IG1hcmdpbi1ib3R0b206IDBweDsgfVxuLm5vLW0tbCB7IG1hcmdpbi1sZWZ0OiAwcHg7IH1cbi5uby1tLXYgeyBtYXJnaW46IDBweCAwOyB9XG4ubm8tbS1oIHsgbWFyZ2luOiAwIDBweDsgfVxuXG5cbi8qIHN0YXRpYyBub24tZ2VuZXJhdGVkIHN0dWZmICovXG4vKiBtYXJnaW4gaGVscGVycyAqL1xuLm5vLW1hcmdpbiB7IG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4ubm8tbS1sciwgLm5vLW0tcmwgeyBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLm5vLW0tdGIsIC5uby1tLWJ0IHsgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5tLXQtb25seSB7IG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5tLWItb25seSB7IG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5tLWwtb25seSB7IG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLm0tci1vbmx5IHsgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5tLWF1dG8geyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi8qIHBhZGRpbmcgaGVscGVycyAqL1xuLm5vLXBhZGRpbmcgeyBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbi5uby1wYWQtbHIsIC5uby1wYWQtcmwgeyBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4ubm8tcGFkLXRiLCAubm8tcGFkLWJ0IHsgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLnBhZC10LW9ubHkgeyBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4ucGFkLWItb25seSB7IHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5wYWQtbC1vbmx5IHsgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4ucGFkLXItb25seSB7IHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi8qIGJvcmRlciBoZWxwZXJzICovXG4ubm8tYm9yZGVyIHsgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7IH1cbi5uby1ib3JkZXItdCB7IGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDsgfVxuLm5vLWJvcmRlci1yIHsgYm9yZGVyLXJpZ2h0OiBub25lICFpbXBvcnRhbnQ7IH1cbi5uby1ib3JkZXItYiB7IGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDsgfVxuLm5vLWJvcmRlci1sIHsgYm9yZGVyLWxlZnQ6IG5vbmUgIWltcG9ydGFudDsgfVxuLm5vLWJvcmRlci1sciwgLm5vLWJvcmRlci1ybCB7IGJvcmRlci1sZWZ0OiBub25lICFpbXBvcnRhbnQ7IGJvcmRlci1yaWdodDogbm9uZSAhaW1wb3J0YW50OyB9XG4ubm8tYm9yZGVyLXRiLCAubm8tYm9yZGVyLWJ0IHsgYm9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50OyBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7IH1cbi5uby1ib3JkZXItdGwsIC5uby1ib3JkZXItbHQgeyBib3JkZXItdG9wOiBub25lICFpbXBvcnRhbnQ7IGJvcmRlci1sZWZ0OiBub25lICFpbXBvcnRhbnQ7IH1cbi5uby1ib3JkZXItdHIsIC5uby1ib3JkZXItcnQgeyBib3JkZXItdG9wOiBub25lICFpbXBvcnRhbnQ7IGJvcmRlci1yaWdodDogbm9uZSAhaW1wb3J0YW50OyB9XG4ubm8tYm9yZGVyLWJsLCAubm8tYm9yZGVyLWxiIHsgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50OyBib3JkZXItbGVmdDogbm9uZSAhaW1wb3J0YW50OyB9XG4ubm8tYm9yZGVyLWJyLCAubm8tYm9yZGVyLXJiIHsgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50OyBib3JkZXItcmlnaHQ6IG5vbmUgIWltcG9ydGFudDsgfVxuLmJvcmRlci1kYXNoZWQgeyBib3JkZXItc3R5bGU6IGRhc2hlZCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWRvdHRlZCB7IGJvcmRlci1zdHlsZTogZGFzaGVkICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYmxhY2sgeyBib3JkZXItY29sb3I6IGJsYWNrOyB9XG4uYm9yZGVyLWxpZ2h0LWdyZXkgeyBib3JkZXItY29sb3I6ICNlNWU1ZTU7IH1cbi5ib3JkZXItbWVkaXVtLWdyZXkgeyBib3JkZXItY29sb3I6ICNjY2NjY2M7IH1cbi5ib3JkZXItZ3JleSB7IGJvcmRlci1jb2xvcjogIzk5OTk5OTsgfVxuLmJvcmRlci1kYXJrLWdyZXkgeyBib3JkZXItY29sb3I6ICMyMjIyMjI7IH1cbi5ib3JkZXItd2hpdGUsIC5ib3JkZXItZmZmIHsgYm9yZGVyLWNvbG9yOiB3aGl0ZTsgfVxuXG4vKiBiYWNrZ3JvdW5kIGNvbG9ycyAqL1xuLmJnLWJsYWNrIHsgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IH1cbi5iZy1saWdodC1ncmV5IHsgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTsgfVxuLmJnLW1lZGl1bS1ncmV5IHsgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYzsgfVxuLmJnLWdyZXkgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5OTk5OyB9XG4uYmctZGFyay1ncmV5IHsgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjsgfVxuLmJnLXdoaXRlLCAuYmctZmZmIHsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cbi5iZy1ub25lLCAubm8tYmcgeyBiYWNrZ3JvdW5kOiBub25lOyBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYmctZmFjZWJvb2sgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjNDc2MzlFOyB9XG4uYmctdHdpdHRlciB7IGJhY2tncm91bmQtY29sb3I6ICMwMkE4RjM7IH1cblxuLyogZm9udCBzdHVmZiAqL1xuLmxoLTEgeyBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50OyB9XG4ubGgtMTMgeyBsaW5lLWhlaWdodDogMS4zICFpbXBvcnRhbnQ7IH1cbi5saC0xNSB7IGxpbmUtaGVpZ2h0OiAxLjUgIWltcG9ydGFudDsgfVxuLmJvbGQsIC5zdHJvbmcgeyBmb250LXdlaWdodDogYm9sZDsgfVxuLm5vLWJvbGQgeyBmb250LXdlaWdodDogbm9ybWFsOyB9XG4uaXRhbGljLCAuZW0geyBmb250LXN0eWxlOiBpdGFsaWM7IH1cbi5zdHJpa2UgeyB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsgfVxuLnVuZGVybGluZSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4ubm9ybWFsIHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zdHlsZTogbm9ybWFsOyB9XG4uc2Fucy1zZXJpZiB7IGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbi5zZXJpZiB7IGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21haW5cIiwgc2VyaWY7IH1cbi51cHBlcmNhc2UgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4udC1yaWdodCB7IHRleHQtYWxpZ246IHJpZ2h0IH1cbi50LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciB9XG5cblxuLm13NDAwIHsgbWF4LXdpZHRoOjQwMHB4OyB9XG4ubXc1MDAgeyBtYXgtd2lkdGg6NTAwcHg7IH1cbi5tdzYwMCB7IG1heC13aWR0aDo2MDBweDsgfVxuXG5cbi53MTAwIHsgZm9udC13ZWlnaHQ6IDEwMDt9XG4udzIwMCB7IGZvbnQtd2VpZ2h0OiAyMDA7fVxuLnczMDAgeyBmb250LXdlaWdodDogMzAwO31cbi53NDAwIHsgZm9udC13ZWlnaHQ6IDQwMDt9XG4udzUwMCB7IGZvbnQtd2VpZ2h0OiA1MDA7fVxuLnc2MDAgeyBmb250LXdlaWdodDogNjAwO31cbi53NzAwIHsgZm9udC13ZWlnaHQ6IDcwMDt9XG4udzgwMCB7IGZvbnQtd2VpZ2h0OiA4MDA7fVxuLnc5MDAgeyBmb250LXdlaWdodDogOTAwO31cblxuXG4uZjkgeyBmb250LXNpemU6OXB4O31cbi5mMTAgeyBmb250LXNpemU6MTBweDt9XG4uZjExIHsgZm9udC1zaXplOjExcHg7fVxuLmYxMiB7IGZvbnQtc2l6ZToxMnB4O31cbi5mMTMgeyBmb250LXNpemU6MTNweDt9XG4uZjE0IHsgZm9udC1zaXplOjE0cHg7fVxuLmYxNSB7IGZvbnQtc2l6ZToxNXB4O31cbi5mMTYgeyBmb250LXNpemU6MTZweDt9XG4uZjE3IHsgZm9udC1zaXplOjE3cHg7fVxuLmYxOCB7IGZvbnQtc2l6ZToxOHB4OyBsaW5lLWhlaWdodDozMHB4OyB9XG4uZjE5IHsgZm9udC1zaXplOjE5cHg7fVxuLmYyMCB7IGZvbnQtc2l6ZToyMHB4O31cbi5mMzAgeyBmb250LXNpemU6MzBweDt9XG4uZjQwIHsgZm9udC1zaXplOjQwcHg7fVxuLmY1MCB7IGZvbnQtc2l6ZTo1MHB4O31cbi5mNjAgeyBmb250LXNpemU6NjBweDt9XG5cblxuLnNpemUtc21hbGwgeyBmb250LXNpemU6IDc1JSAhaW1wb3J0YW50OyB9XG4uc2l6ZS1ub3JtYWwgeyBmb250LXNpemU6IDEwMCUgIWltcG9ydGFudDsgfVxuLnNpemUtbWVkaXVtIHsgZm9udC1zaXplOiAxMjUlICFpbXBvcnRhbnQ7IH1cbi5zaXplLWJpZywgLnNpemUtbGFyZ2UgeyBmb250LXNpemU6IDE1MCUgIWltcG9ydGFudDsgfVxuLnNpemUtaHVnZSB7IGZvbnQtc2l6ZTogMjAwJSAhaW1wb3J0YW50OyB9XG4uaW5oZXJpdCB7IGZvbnQ6IGluaGVyaXQ7IH1cbi5uby13cmFwIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuLmF1dG8tY2VsbC1zaXplIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgd2lkdGg6MSU7IH1cbi5scy0wIHsgbGV0dGVyLXNwYWNpbmc6IC0zcHg7IG1hcmdpbi1sZWZ0OiAxMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbi5uby11bCwgLm5vLXVsOmhvdmVyLCAubm8tdWwgYSwgLm5vLXVsIGE6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbi8qIGNhbiBnbyBvbiA8YT4gb3Igb24gaXRzIHBhcmVudCAqL1xuXG4vKiBnZW5lcmFsIGhlbHBlcnMgKi9cbi5jb2xvci1pbmhlcml0IHsgY29sb3I6IGluaGVyaXQ7IH1cbi5jbGVhciB7IGNsZWFyOiBib3RoOyB9XG4uY2xlYXI6YWZ0ZXIgeyBkaXNwbGF5OiB0YWJsZTsgY29udGVudDogXCIgXCI7IGNsZWFyOiBib3RoOyB9XG4uZi1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cbi5mLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG4uZi1ub25lIHsgZmxvYXQ6IG5vbmU7IH1cbi5ibG9jayB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbi5pbmxpbmUgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuLnRhYmxlIHsgZGlzcGxheTogdGFibGU7IH1cbi5pbi1ibG9jayB7IGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyAqZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IHpvb206IDE7IH1cbi5kLW5vbmUsIC5oaWRlLCAuaGlkZGVuIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4ucmVsLCAucmVsYXRpdmUgeyBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDsgfVxuLmFicywgLmFic29sdXRlIHsgcG9zaXRpb246IGFic29sdXRlOyB9XG4uc3RhdGljIHsgcG9zaXRpb246IHN0YXRpYzsgfVxuLmZpeGVkIHsgcG9zaXRpb246IGZpeGVkOyB9XG4udC0wIHsgdG9wOiAwOyB9XG4uYi0wIHsgYm90dG9tOiAwOyB9XG4ubC0wIHsgbGVmdDogMDsgfVxuLnItMCB7IHJpZ2h0OiAwOyB9XG4udGItMCB7IHRvcDogMDsgYm90dG9tOiAwOyB9XG4ubHItMCB7IGxlZnQ6IDA7IHJpZ2h0OiAwOyB9XG4udi1taWQsIC52LW0geyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi52LXRvcCwgLnYtdCB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLnYtYm90dG9tLCAudi1iIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4udi1zdXBlciB7IHZlcnRpY2FsLWFsaWduOiBzdXBlciAhaW1wb3J0YW50OyB9XG4uZnVsbC1pbnB1dCBpbnB1dCwgLmZ1bGwtaW5wdXQgc2VsZWN0LCAuZnVsbC1pbnB1dCB0ZXh0YXJlYSB7IHdpZHRoOiAxMDAlOyB9XG4ubm9ybWFsIGlucHV0LCAubm9ybWFsIHNlbGVjdCwgLm5vcm1hbCB0ZXh0YXJlYSwgLmZ1bGwtaW5wdXQgaW5wdXRbdHlwZT1jaGVja2JveF0sIC5mdWxsLWlucHV0IGlucHV0W3R5cGU9cmFkaW9dIHsgd2lkdGg6IGF1dG87IH1cbi5uby1zaGFkb3cgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbi5uby1ib3JkZXItcmFkaXVzIHsgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50OyB9XG4ub3ZlcmZsb3cteC1zY3JvbGwgeyBtYXgtd2lkdGg6IDEwMCU7IG92ZXJmbG93LXg6IGF1dG87IH1cbi5vdmVyZmxvdy1ubyB7IG92ZXJmbG93OiBoaWRkZW47IH1cbi5vdmVyZmxvdy1hdXRvIHsgb3ZlcmZsb3c6IGF1dG87IH1cbi5vdmVyZmxvdy1zY3JvbGwgeyBvdmVyZmxvdzogc2Nyb2xsOyB9XG4ucG9pbnRlciB7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uaGFsZndpZHRoIHsgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9XG4uZnVsbHdpZHRoIHsgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLmZ1bGxoZWlnaHQgeyBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuLm5vbGlzdCB7IGxpc3Qtc3R5bGU6IG5vbmU7ICB9XG5cbi50ZXh0LXNoYWRvdyB7IHRleHQtc2hhZG93OiAxcHggMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7IH1cbi5yYWRpdXMzIHtib3JkZXItcmFkaXVzOiAzcHg7IH1cbi5yYWRpdXM1IHtib3JkZXItcmFkaXVzOiA1cHg7IH1cbi5yYWRpdXMxMCB7Ym9yZGVyLXJhZGl1czogMTBweDsgfVxuLnJhZGl1c2hhbGYge2JvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4udGV4dC1yZ2ItMiB7IGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbi50ZXh0LXJnYi0zIHsgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxuLnRleHQtcmdiLTQgeyBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG4udGV4dC1yZ2ItNSB7IGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLm1oLTEwMCB7IG1pbi1oZWlnaHQ6IDEwMHB4OyB9XG4ubWgtMjAwIHsgbWluLWhlaWdodDogMjAwcHg7IH1cbi5taC0zMDAgeyBtaW4taGVpZ2h0OiAzMDBweDsgfVxuXG5cbi5tYXJnaW4tYXV0byB7XG4gICAgbWFyZ2luOiAwJSBhdXRvO1xufVxuLmltZy1yZXNwb25zaXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZmxleCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtby1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbn1cbi5mbGV4MSB7XG4gICAgLXdlYmtpdC1mbGV4OiAxO1xuICAgIC1tb3otZmxleDogMTtcbiAgICAtbXMtZmxleDogMTtcbiAgICAtby1mbGV4OiAxO1xuICAgIGZsZXg6IDE7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG4uZmxleHJvdyB7XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIC1tb3otZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAtby1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4uZmxleC1yaWdodCB7XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgLW1vei1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAtby1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG5cbnRleHRhcmVhIHsgcmVzaXplOmJvdGg7IH1cbnRleHRhcmVhLnZlcnRpY2FsIHsgcmVzaXplOnZlcnRpY2FsOyB9XG50ZXh0YXJlYS5ob3Jpem9udGFsIHsgcmVzaXplOnZlcnRpY2FsOyB9XG50ZXh0YXJlYS5ub3Jlc2l6ZSB7IHJlc2l6ZTpub25lOyB9XG5cblxuXG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge1xuICAuaGlkZS1tb2JpbGUge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuaGlkZS10YWJsZXQge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAucC1yLTEwLXRhYmxldCB7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxuICAucC1sLTEwLXRhYmxldCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuaGlkZS1mcm9tLXRhYmxldCB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5wLTIwLS1zbWFsbCB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxufVxuXG5cblxuIiwiLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE1hdGVyaWFsIERlc2lnbiBMaXRlJ3MgdmFyaWFibGVzXG5AaW1wb3J0IFwibWRsL3ZhcmlhYmxlc1wiO1xuXG5cbi8vIEN1c3RvbWl6ZSBwYWxldHRlXG4vLyBEb3dubG9hZDogaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2NvZGUuZ2V0bWRsLmlvLzEuMC4zL21hdGVyaWFsLmJsdWUtcGluay5taW4uY3NzXG4kY29sb3ItcHJpbWFyeTogJHBhbGV0dGUtYmx1ZS01MDA7XG4kY29sb3ItcHJpbWFyeS1kYXJrOiAkcGFsZXR0ZS1ibHVlLTUwMDtcblxuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZml4ZXI6IDk5MDtcbiR6aW5kZXgtc2xpZGVvdXQ6IDEwMDA7XG4kemluZGV4LW1vZGFsOiAxMDEwO1xuXG4kY29sb3ItbWFpbi1oZWFkZXI6ICMwMjc3YmQ7XG4kY29sb3ItZGFzaDogI2VkZWRlZDtcblxuJGNvbG9yLWJvZHktYmc6ICNmNWY1ZjU7XG5cbiRjb2xvci1wcmltYXJ5OiAgICAgICAgICAkcGFsZXR0ZS1pbmRpZ28tNTAwICFkZWZhdWx0O1xuJGNvbG9yLXByaW1hcnktZGFyazogICAgICRwYWxldHRlLWluZGlnby03MDAgIWRlZmF1bHQ7XG4kY29sb3ItYWNjZW50OiAgICAgICAgICAgJHBhbGV0dGUtcGluay1BMjAwICFkZWZhdWx0O1xuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxuJGdyYXktZGFyazogICAgICAgICAgICAgICM0NTQ1NDU7XG4kZ3JheTogICAgICAgICAgICAgICAgICAgIzY2NjtcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICAjYmJiO1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOTMuNSUpICFkZWZhdWx0OyAvLyAjZWVlXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTNweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjg0NiAhZGVmYXVsdDsgLy8gMjAvMTRcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDQwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAjNDQ0O1xuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICA2cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgM3B4ICFkZWZhdWx0O1xuXG4vLz09IFR5cGVcbi8vXG4vLyMjXG5cbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFBhZ2UgaGVhZGVyIGJvcmRlciBjb2xvclxuJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xuJGRsLWhvcml6b250YWwtb2Zmc2V0OiAgICAgICAgJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbCAhZGVmYXVsdDtcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4O1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kO1xuXG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tbWQtbWluO1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSk7XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICRDT05URU5UU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogU1RZTEUgR1VJREUgVkFSSUFCTEVTLS0tLS0tLS0tLS0tLS0tLS0tRGVjbGFyYXRpb25zIG9mIFNhc3MgdmFyaWFibGVzXG4gKiAtLS0tLVR5cG9ncmFwaHlcbiAqIC0tLS0tQ29sb3JzXG4gKiAtLS0tLVRleHRmaWVsZFxuICogLS0tLS1Td2l0Y2hcbiAqIC0tLS0tU3Bpbm5lclxuICogLS0tLS1SYWRpb1xuICogLS0tLS1NZW51XG4gKiAtLS0tLUxpc3RcbiAqIC0tLS0tTGF5b3V0XG4gKiAtLS0tLUljb24gdG9nZ2xlc1xuICogLS0tLS1Gb290ZXJcbiAqIC0tLS0tQ29sdW1uXG4gKiAtLS0tLUNoZWNrYm94XG4gKiAtLS0tLUNhcmRcbiAqIC0tLS0tQnV0dG9uXG4gKiAtLS0tLUFuaW1hdGlvblxuICogLS0tLS1Qcm9ncmVzc1xuICogLS0tLS1CYWRnZVxuICogLS0tLS1TaGFkb3dzXG4gKiAtLS0tLUdyaWRcbiAqIC0tLS0tRGF0YSB0YWJsZVxuICogLS0tLS1EaWFsb2dcbiAqIC0tLS0tU25hY2tiYXJcbiAqXG4gKiBFdmVuIHRob3VnaCBhbGwgdmFyaWFibGVzIGhhdmUgdGhlIGAhZGVmYXVsdGAgZGlyZWN0aXZlLCBtb3N0IG9mIHRoZW1cbiAqIHNob3VsZCBub3QgYmUgY2hhbmdlZCBhcyB0aGV5IGFyZSBkZXBlbmRlbnQgb25lIGFub3RoZXIuIFRoaXMgY2FuIGNhdXNlXG4gKiB2aXN1YWwgZGlzdG9ydGlvbnMgKGxpa2UgYWxpZ25tZW50IGlzc3VlcykgdGhhdCBhcmUgaGFyZCB0byB0cmFjayBkb3duXG4gKiBhbmQgZml4LlxuICovXG5cblxuLyogPT09PT09PT09PSAgVFlQT0dSQVBIWSAgPT09PT09PT09PSAqL1xuXG4vKiBXZSdyZSBzcGxpdHRpbmcgZm9udHMgaW50byBcInByZWZlcnJlZFwiIGFuZCBcInBlcmZvcm1hbmNlXCIgaW4gb3JkZXIgdG8gb3B0aW1pemVcbiAgIHBhZ2UgbG9hZGluZy4gRm9yIGltcG9ydGFudCB0ZXh0LCBzdWNoIGFzIHRoZSBib2R5LCB3ZSB3YW50IGl0IHRvIGxvYWRcbiAgIGltbWVkaWF0ZWx5IGFuZCBub3Qgd2FpdCBmb3IgdGhlIHdlYiBmb250IGxvYWQsIHdoZXJlYXMgZm9yIG90aGVyIHNlY3Rpb25zLFxuICAgc3VjaCBhcyBoZWFkZXJzIGFuZCB0aXRsZXMsIHdlJ3JlIE9LIHdpdGggdGhpbmdzIHRha2luZyBhIGJpdCBsb25nZXIgdG8gbG9hZC5cbiAgIFdlIGRvIGhhdmUgc29tZSBvcHRpb25hbCBjbGFzc2VzIGFuZCBwYXJhbWV0ZXJzIGluIHRoZSBtaXhpbnMsIGluIGNhc2UgeW91XG4gICBkZWZpbml0ZWx5IHdhbnQgdG8gbWFrZSBzdXJlIHlvdSdyZSB1c2luZyB0aGUgcHJlZmVycmVkIGZvbnQgYW5kIGRvbid0IG1pbmRcbiAgIHRoZSBwZXJmb3JtYW5jZSBoaXQuXG4gICBXZSBzaG91bGQgYmUgYWJsZSB0byBpbXByb3ZlIG9uIHRoaXMgb25jZSBDU1MgRm9udCBMb2FkaW5nIEwzIGJlY29tZXMgbW9yZVxuICAgd2lkZWx5IGF2YWlsYWJsZS5cbiovXG4kcHJlZmVycmVkX2ZvbnQ6ICdSb2JvdG8nLCAnSGVsdmV0aWNhJywgJ0FyaWFsJywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRwZXJmb3JtYW5jZV9mb250OiAnSGVsdmV0aWNhJywgJ0FyaWFsJywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgQ09MT1JTICA9PT09PT09PT09ICovXG5cbi8qKlxuKlxuKiBNYXRlcmlhbCBkZXNpZ24gY29sb3IgcGFsZXR0ZXMuXG4qIEBzZWUgaHR0cDovL3d3dy5nb29nbGUuY29tL2Rlc2lnbi9zcGVjL3N0eWxlL2NvbG9yLmh0bWxcbipcbioqL1xuXG5AaW1wb3J0IFwiY29sb3ItZGVmaW5pdGlvbnNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcblxuLyogPT09PT09PT09PSAgSU1BR0VTICA9PT09PT09PT09ICovXG4kaW1hZ2VfcGF0aDogJy9pbWFnZXMnICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09ICBDb2xvciAmIFRoZW1lcyAgPT09PT09PT09PSAqL1xuXG4vLyBEZWZpbmUgd2hldGhlciBpbmRpdmlkdWFsIGNvbG9yIHBhbGV0dGUgaXRlbXMgc2hvdWxkIGhhdmUgY2xhc3NlcyBjcmVhdGVkLlxuLy8gU2V0dGluZyB0aGlzIHRvIHRydWUgd2lsbCByZW1vdmUgaW5kaXZpZHVhbCBjb2xvciBjbGFzc2VzIGZvciBlYWNoIGNvbG9yIGluIHRoZSBwYWxldHRlcy5cbi8vIFRvIGltcHJvdmUgb3ZlcmFsbCBwZXJmb3JtYW5jZSAoYXNzdW1pbmcgdGhleSBhcmVuJ3QgdXNlZCkgYnk6XG4vLyAqIFNhdmluZyBzZXJ2ZXIgYmFuZHdpZHRoIHNlbmRpbmcgdGhlIGV4dHJhIGNsYXNzZXNcbi8vICogU2F2ZSBjbGllbnQgY29tcHV0YXRpb24gYWdhaW5zdCB0aGUgY2xhc3Nlc1xuLy8gaXQgaXMgUkVDT01NRU5ERUQgeW91IHNldCB0aGlzIHRvIHRydWUuXG4kdHJpbS1jb2xvci1jbGFzc2VzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVXNlIGNvbG9yIHByaW1hcmlseSBmb3IgZW1waGFzaXMuIENob29zZSBjb2xvcnMgdGhhdCBmaXQgd2l0aFxuLy8geW91ciBicmFuZCBhbmQgcHJvdmlkZSBnb29kIGNvbnRyYXN0IGJldHdlZW4gdmlzdWFsIGNvbXBvbmVudHMuXG4kY29sb3ItcHJpbWFyeTogJHBhbGV0dGUtaW5kaWdvLTUwMCAhZGVmYXVsdDtcbiRjb2xvci1wcmltYXJ5LWRhcms6ICRwYWxldHRlLWluZGlnby03MDAgIWRlZmF1bHQ7XG4kY29sb3ItYWNjZW50OiAkcGFsZXR0ZS1waW5rLUEyMDAgIWRlZmF1bHQ7XG5cbi8vIE91ciBwcmltYXJ5IGlzIGRhcmssIHNvIHVzZSAkY29sb3ItZGFyay1jb250cmFzdCBmb3Igb3ZlcmxhaWQgdGV4dC5cbiRjb2xvci1wcmltYXJ5LWNvbnRyYXN0OiAkY29sb3ItZGFyay1jb250cmFzdCAhZGVmYXVsdDtcbi8vIE91ciBhY2NlbnQgaXMgZGFyaywgc28gdXNlICRjb2xvci1kYXJrLWNvbnRyYXN0IGZvciBvdmVybGFpZCB0ZXh0LlxuJGNvbG9yLWFjY2VudC1jb250cmFzdDogJGNvbG9yLWRhcmstY29udHJhc3QgIWRlZmF1bHQ7XG5cbi8vIFJlcGxhY2UgYWxsIGNvbG9ycyB3aXRoIHBsYWNlaG9sZGVycyBpZiB3ZSdyZSBnZW5lcmF0aW5nIGEgdGVtcGxhdGUuXG5AaWYgJHN0eWxlZ3VpZGUtZ2VuZXJhdGUtdGVtcGxhdGUgPT0gdHJ1ZSB7XG4gICRjb2xvci1wcmltYXJ5OiAnJGNvbG9yLXByaW1hcnknO1xuICAkY29sb3ItcHJpbWFyeS1kYXJrOiAnJGNvbG9yLXByaW1hcnktZGFyayc7XG4gICRjb2xvci1hY2NlbnQ6ICckY29sb3ItYWNjZW50JztcbiAgJGNvbG9yLXByaW1hcnktY29udHJhc3Q6ICckY29sb3ItcHJpbWFyeS1jb250cmFzdCc7XG4gICRjb2xvci1hY2NlbnQtY29udHJhc3Q6ICckY29sb3ItYWNjZW50LWNvbnRyYXN0Jztcbn1cblxuLyogPT09PT09PT09PSAgVHlwb2dyYXBoeSAgPT09PT09PT09PSAqL1xuXG4vLyBXZSB1c2UgdGhlIGZvbGxvd2luZyBkZWZhdWx0IGNvbG9yIHN0eWxlczogdGV4dC1jb2xvci1wcmltYXJ5IGFuZFxuLy8gdGV4dC1jb2xvci1zZWNvbmRhcnkuIEZvciBsaWdodCB0aGVtZXMsIHVzZSB0ZXh0LWNvbG9yLXByaW1hcnktaW52ZXJzZVxuLy8gYW5kIHRleHQtY29sb3Itc2Vjb25kYXJ5LWludmVyc2UuXG5cbiR0ZXh0LWNvbG9yLXByaW1hcnk6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC44NylcIikgIWRlZmF1bHQ7XG4kdGV4dC1saW5rLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWFjY2VudH0pXCIpICFkZWZhdWx0O1xuXG4vLyBEZWZpbmUgd2hldGhlciB0byB0YXJnZXQgZWxlbWVudHMgZGlyZWN0bHkgZm9yIHR5cG9ncmFwaGljIGVuaGFuY2VtZW50cy5cbi8vIFR1cm5pbmcgdGhpcyBvZmYgbWVhbnMgeW91IG5lZWQgdG8gdXNlIG1kbC0qIGNsYXNzZXMgbW9yZSBvZnRlbi5cbi8vIE90aGVyIGNvbXBvbmVudHMgbWF5IGFsc28gZmFpbCB0byBhZGhlcmUgdG8gTUQgd2l0aG91dCB0aGVzZSBydWxlcy5cbi8vIEl0IGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkIHlvdSBsZWF2ZSB0aGlzIGFzIHRydWUuXG5cbiR0YXJnZXQtZWxlbWVudHMtZGlyZWN0bHk6IHRydWUgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIENvbXBvbmVudHMgID09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PSAgU3RhbmRhcmQgQnV0dG9ucyAgPT09PT09PT09PSAqL1xuXG4vLyBEZWZhdWx0IGJ1dHRvbiBjb2xvcnMuXG4kYnV0dG9uLXByaW1hcnktY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JHBhbGV0dGUtZ3JleS01MDB9LCAwLjIwKVwiKSAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWJsYWNrfSlcIikgIWRlZmF1bHQ7XG4kYnV0dG9uLWhvdmVyLWNvbG9yOiAkYnV0dG9uLXByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWFjdGl2ZS1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skcGFsZXR0ZS1ncmV5LTUwMH0sIDAuNDApXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1mb2N1cy1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjEyKVwiKSAhZGVmYXVsdDtcblxuLy8gQ29sb3JlZCBidXR0b24gY29sb3JzLlxuJGJ1dHRvbi1wcmltYXJ5LWNvbG9yLWFsdDogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1jb2xvci1hbHQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeS1jb250cmFzdH0pXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1ob3Zlci1jb2xvci1hbHQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1hY3RpdmUtY29sb3ItYWx0OiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcbiRidXR0b24tZm9jdXMtY29sb3ItYWx0OiAkYnV0dG9uLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBSaXBwbGUgY29sb3IgZm9yIGNvbG9yZWQgcmFpc2VkIGJ1dHRvbnMuXG4kYnV0dG9uLXJpcHBsZS1jb2xvci1hbHQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeS1jb250cmFzdH0pXCIpICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlZCBidXR0b24gY29sb3JzLlxuJGJ1dHRvbi1wcmltYXJ5LWNvbG9yLWRpc2FibGVkOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMTIpXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktY29sb3ItZGlzYWJsZWQ6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4yNilcIikgIWRlZmF1bHQ7XG5cbi8vIEZBQiBjb2xvcnMgYW5kIHNpemVzLlxuJGJ1dHRvbi1mYWItY29sb3ItYWx0OiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWFjY2VudH0pXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1mYWItaG92ZXItY29sb3ItYWx0OiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWFjY2VudH0pXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1mYWItYWN0aXZlLWNvbG9yLWFsdDogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhZGVmYXVsdDtcbiRidXR0b24tZmFiLXRleHQtY29sb3ItYWx0OiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWFjY2VudC1jb250cmFzdH0pXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1mYWItcmlwcGxlLWNvbG9yLWFsdDogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnQtY29udHJhc3R9KVwiKSAhZGVmYXVsdDtcblxuLy8gSWNvbiBidXR0b24gY29sb3JzIGFuZCBzaXplcy5cbiRidXR0b24taWNvbi1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNzAwfSlcIikgIWRlZmF1bHQ7XG4kYnV0dG9uLWljb24tZm9jdXMtY29sb3I6ICRidXR0b24tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIEljb24gVG9nZ2xlcyAgPT09PT09PT09PSAqL1xuXG4kaWNvbi10b2dnbGUtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTcwMH0pXCIpICFkZWZhdWx0O1xuJGljb24tdG9nZ2xlLWZvY3VzLWNvbG9yOiAkYnV0dG9uLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuJGljb24tdG9nZ2xlLWNoZWNrZWQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFkZWZhdWx0O1xuJGljb24tdG9nZ2xlLWNoZWNrZWQtZm9jdXMtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLXByaW1hcnl9LCAwLjI2KVwiKSAhZGVmYXVsdDtcbiRpY29uLXRvZ2dsZS1kaXNhYmxlZC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjI2KVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgUmFkaW8gQnV0dG9ucyAgPT09PT09PT09PSAqL1xuXG4kcmFkaW8tY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFkZWZhdWx0O1xuJHJhZGlvLW9mZi1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjU0KVwiKSAhZGVmYXVsdDtcbiRyYWRpby1kaXNhYmxlZC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjI2KVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgUmlwcGxlIGVmZmVjdCAgPT09PT09PT09PSAqL1xuXG4kcmlwcGxlLWJnLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWxpZ2h0LWNvbnRyYXN0fSlcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIExheW91dCAgPT09PT09PT09PSAqL1xuXG4kbGF5b3V0LW5hdi1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktMzAwfSlcIikgIWRlZmF1bHQ7XG5cbi8vIERyYXdlclxuJGxheW91dC1kcmF3ZXItYmctY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTUwfSlcIikgIWRlZmF1bHQ7XG4kbGF5b3V0LWRyYXdlci1ib3JkZXItY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTMwMH0pXCIpICFkZWZhdWx0O1xuJGxheW91dC10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS04MDB9KVwiKSAhZGVmYXVsdDtcbiRsYXlvdXQtZHJhd2VyLW5hdmlnYXRpb24tY29sb3I6ICM3NTc1NzUgIWRlZmF1bHQ7XG4kbGF5b3V0LWRyYXdlci1uYXZpZ2F0aW9uLWxpbmstYWN0aXZlLWJhY2tncm91bmQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItbGlnaHQtY29udHJhc3R9KVwiKSAhZGVmYXVsdDtcbiRsYXlvdXQtZHJhd2VyLW5hdmlnYXRpb24tbGluay1hY3RpdmUtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTMwMH0pXCIpICFkZWZhdWx0O1xuXG4vLyBIZWFkZXJcbiRsYXlvdXQtaGVhZGVyLWJnLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcbiRsYXlvdXQtaGVhZGVyLXRleHQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeS1jb250cmFzdH0pXCIpICFkZWZhdWx0O1xuJGxheW91dC1oZWFkZXItbmF2LWhvdmVyLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRwYWxldHRlLWdyZXktNzAwfSwgMC42KVwiKSAhZGVmYXVsdDtcbiRsYXlvdXQtaGVhZGVyLXRhYi10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1wcmltYXJ5LWNvbnRyYXN0fSwgMC42KVwiKSAhZGVmYXVsdDtcblxuLy8gVGFic1xuJGxheW91dC1oZWFkZXItdGFiLWhpZ2hsaWdodDogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgQ29udGVudCBUYWJzICA9PT09PT09PT09ICovXG5cbiR0YWItaGlnaGxpZ2h0LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcbiR0YWItdGV4dC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjU0KVwiKSAhZGVmYXVsdDtcbiR0YWItYWN0aXZlLXRleHQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC44NylcIikgIWRlZmF1bHQ7XG4kdGFiLWJvcmRlci1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktMzAwfSlcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIENoZWNrYm94ZXMgID09PT09PT09PT0gKi9cblxuJGNoZWNrYm94LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcbiRjaGVja2JveC1vZmYtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC41NClcIikgIWRlZmF1bHQ7XG4kY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kY2hlY2tib3gtZm9jdXMtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLXByaW1hcnl9LCAwLjI2KVwiKSAhZGVmYXVsdDtcbiRjaGVja2JveC1pbWFnZS1wYXRoOiAkaW1hZ2VfcGF0aDtcblxuLyogPT09PT09PT09PSAgU3dpdGNoZXMgID09PT09PT09PT0gKi9cblxuJHN3aXRjaC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG4kc3dpdGNoLWZhZGVkLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1wcmltYXJ5fSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kc3dpdGNoLXRodW1iLWNvbG9yOiAkc3dpdGNoLWNvbG9yICFkZWZhdWx0O1xuJHN3aXRjaC10cmFjay1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItcHJpbWFyeX0sIDAuNSlcIikgIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtb2ZmLXRodW1iLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS01MH0pXCIpICFkZWZhdWx0O1xuJHN3aXRjaC1vZmYtdHJhY2stY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kc3dpdGNoLWRpc2FibGVkLXRodW1iLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS00MDB9KVwiKSAhZGVmYXVsdDtcbiRzd2l0Y2gtZGlzYWJsZWQtdHJhY2stY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4xMilcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIFNwaW5uZXIgID09PT09PT09PT0gKi9cblxuJHNwaW5uZXItY29sb3ItMTogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtNDAwfSlcIikgIWRlZmF1bHQ7XG4kc3Bpbm5lci1jb2xvci0yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcmVkLTUwMH0pXCIpICFkZWZhdWx0O1xuJHNwaW5uZXItY29sb3ItMzogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXllbGxvdy02MDB9KVwiKSAhZGVmYXVsdDtcbiRzcGlubmVyLWNvbG9yLTQ6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmVlbi01MDB9KVwiKSAhZGVmYXVsdDtcblxuJHNwaW5uZXItc2luZ2xlLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgVGV4dCBmaWVsZHMgID09PT09PT09PT0gKi9cblxuJGlucHV0LXRleHQtYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaW5wdXQtdGV4dC1sYWJlbC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjI2KVwiKSAhZGVmYXVsdDtcbiRpbnB1dC10ZXh0LWJvdHRvbS1ib3JkZXItY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4xMilcIikgIWRlZmF1bHQ7XG4kaW5wdXQtdGV4dC1oaWdobGlnaHQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFkZWZhdWx0O1xuJGlucHV0LXRleHQtZGlzYWJsZWQtY29sb3I6ICRpbnB1dC10ZXh0LWJvdHRvbS1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtdGV4dC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkaW5wdXQtdGV4dC1sYWJlbC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC10ZXh0LWVycm9yLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcmVkLUE3MDB9KVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgQ2FyZCAgPT09PT09PT09PSAqL1xuXG4kY2FyZC1iYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXdoaXRlfSlcIikgIWRlZmF1bHQ7XG4kY2FyZC10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWJsYWNrfSlcIikgIWRlZmF1bHQ7XG4kY2FyZC1pbWFnZS1wbGFjZWhvbGRlci1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhZGVmYXVsdDtcbiRjYXJkLXN1cHBvcnRpbmctdGV4dC10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuNTQpXCIpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSkgIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjU0KVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgU2xpZGVycyA9PT09PT09PT09ICovXG5cbiRyYW5nZS1iZy1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjI2KVwiKSAhZGVmYXVsdDtcbiRyYW5nZS1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG4kcmFuZ2UtZmFkZWQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLXByaW1hcnl9LCAwLjI2KVwiKSAhZGVmYXVsdDtcbiRyYW5nZS1iZy1mb2N1cy1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjEyKVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSBQcm9ncmVzcyA9PT09PT09PT09ICovXG4kcHJvZ3Jlc3MtbWFpbi1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3Mtc2Vjb25kYXJ5LWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1wcmltYXJ5LWNvbnRyYXN0fSwgMC43KVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mYWxsYmFjay1idWZmZXItY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLXByaW1hcnktY29udHJhc3R9LCAwLjkpXCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWltYWdlLXBhdGg6ICRpbWFnZV9wYXRoO1xuXG4vKiA9PT09PT09PT09ICBMaXN0ID09PT09PT09PT0gKi9cblxuJGxpc3QtbWFpbi10ZXh0LXRleHQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC44NylcIikgIWRlZmF1bHQ7XG4kbGlzdC1zdXBwb3J0aW5nLXRleHQtdGV4dC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjU0KVwiKSAhZGVmYXVsdDtcbiRsaXN0LWljb24tY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTYwMH0pXCIpICFkZWZhdWx0O1xuJGxpc3QtYXZhdGFyLWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgSXRlbSA9PT09PT09PT09ICovXG5cbi8vIERlZmF1bHQgSXRlbSBDb2xvcnNcbiRkZWZhdWx0LWl0ZW0tdGV4dC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjg3KVwiKSAhZGVmYXVsdDtcbiRkZWZhdWx0LWl0ZW0tb3V0bGluZS1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNDAwfSlcIikgIWRlZmF1bHQ7XG4kZGVmYXVsdC1pdGVtLWhvdmVyLWJnLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS0yMDB9KVwiKSAhZGVmYXVsdDtcbiRkZWZhdWx0LWl0ZW0tZm9jdXMtYmctY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTIwMH0pXCIpICFkZWZhdWx0O1xuJGRlZmF1bHQtaXRlbS1hY3RpdmUtYmctY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTMwMH0pXCIpICFkZWZhdWx0O1xuJGRlZmF1bHQtaXRlbS1kaXZpZGVyLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMTIpXCIpICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlZCBCdXR0b24gQ29sb3JzXG4kZGlzYWJsZWQtaXRlbS10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS00MDB9KVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgRHJvcGRvd24gbWVudSA9PT09PT09PT09ICovXG5cbiRkZWZhdWx0LWRyb3Bkb3duLWJnLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXdoaXRlfSlcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIFRvb2x0aXBzICA9PT09PT09PT09ICovXG5cbiR0b29sdGlwLXRleHQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3Itd2hpdGV9KVwiKSAhZGVmYXVsdDtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JHBhbGV0dGUtZ3JleS03MDB9LCAwLjkpXCIpICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09ICBGb290ZXIgID09PT09PT09PT0gKi9cblxuJGZvb3Rlci1iZy1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktODAwfSlcIikgIWRlZmF1bHQ7XG4kZm9vdGVyLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS01MDB9KVwiKSAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktMzAwfSlcIikgIWRlZmF1bHQ7XG4kZm9vdGVyLWJ1dHRvbi1maWxsLWNvbG9yOiAkZm9vdGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvb3Rlci11bmRlcmxpbmUtY29sb3I6ICRmb290ZXItY29sb3IgIWRlZmF1bHQ7XG5cblxuLyogVEVYVEZJRUxEICovXG5cbiRpbnB1dC10ZXh0LWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcbiRpbnB1dC10ZXh0LXdpZHRoOiAxMDAlICFkZWZhdWx0O1xuJGlucHV0LXRleHQtcGFkZGluZzogNHB4ICFkZWZhdWx0O1xuJGlucHV0LXRleHQtdmVydGljYWwtc3BhY2luZzogMjBweCAhZGVmYXVsdDtcblxuJGlucHV0LXRleHQtYnV0dG9uLXNpemU6IDMycHggIWRlZmF1bHQ7XG4kaW5wdXQtdGV4dC1mbG9hdGluZy1sYWJlbC1mb250c2l6ZTogMTJweCAhZGVmYXVsdDtcbiRpbnB1dC10ZXh0LWV4cGFuZGFibGUtaWNvbi10b3A6IDE2cHggIWRlZmF1bHQ7XG5cblxuLyogU1dJVENIICovXG5cbiRzd2l0Y2gtbGFiZWwtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJHN3aXRjaC1sYWJlbC1oZWlnaHQ6IDI0cHggIWRlZmF1bHQ7XG4kc3dpdGNoLXRyYWNrLWhlaWdodDogMTRweCAhZGVmYXVsdDtcbiRzd2l0Y2gtdHJhY2stbGVuZ3RoOiAzNnB4ICFkZWZhdWx0O1xuJHN3aXRjaC10aHVtYi1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJHN3aXRjaC10cmFjay10b3A6ICgkc3dpdGNoLWxhYmVsLWhlaWdodCAtICRzd2l0Y2gtdHJhY2staGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG4kc3dpdGNoLXRodW1iLXRvcDogKCRzd2l0Y2gtbGFiZWwtaGVpZ2h0IC0gJHN3aXRjaC10aHVtYi1zaXplKSAvIDIgIWRlZmF1bHQ7XG4kc3dpdGNoLXJpcHBsZS1zaXplOiAkc3dpdGNoLWxhYmVsLWhlaWdodCAqIDIgIWRlZmF1bHQ7XG4kc3dpdGNoLWhlbHBlci1zaXplOiA4cHggIWRlZmF1bHQ7XG5cbi8qIFNQSU5ORVIgKi9cblxuJHNwaW5uZXItc2l6ZTogMjhweCAhZGVmYXVsdDtcbiRzcGlubmVyLXN0cm9rZS13aWR0aDogM3B4ICFkZWZhdWx0O1xuXG4vLyBBbW91bnQgb2YgY2lyY2xlIHRoZSBhcmMgdGFrZXMgdXAuXG4kc3Bpbm5lci1hcmMtc2l6ZTogMjcwZGVnICFkZWZhdWx0O1xuLy8gVGltZSBpdCB0YWtlcyB0byBleHBhbmQgYW5kIGNvbnRyYWN0IGFyYy5cbiRzcGlubmVyLWFyYy10aW1lOiAxMzMzbXMgIWRlZmF1bHQ7XG4vLyBIb3cgbXVjaCB0aGUgc3RhcnQgbG9jYXRpb24gb2YgdGhlIGFyYyBzaG91bGQgcm90YXRlIGVhY2ggdGltZS5cbiRzcGlubmVyLWFyYy1zdGFydC1yb3Q6IDIxNmRlZyAhZGVmYXVsdDtcblxuJHNwaW5uZXItZHVyYXRpb246IDM2MCAqICRzcGlubmVyLWFyYy10aW1lIC8gKFxuICAgIHN0cmlwLXVuaXRzKCRzcGlubmVyLWFyYy1zdGFydC1yb3QgKyAoMzYwZGVnIC0gJHNwaW5uZXItYXJjLXNpemUpKSk7XG5cblxuLyogUkFESU8gKi9cblxuJHJhZGlvLWxhYmVsLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcbiRyYWRpby1sYWJlbC1oZWlnaHQ6IDI0cHggIWRlZmF1bHQ7XG4kcmFkaW8tYnV0dG9uLXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kcmFkaW8taW5uZXItbWFyZ2luOiAkcmFkaW8tYnV0dG9uLXNpemUgLyA0O1xuJHJhZGlvLXBhZGRpbmc6IDhweCAhZGVmYXVsdDtcbiRyYWRpby10b3Atb2Zmc2V0OiAoJHJhZGlvLWxhYmVsLWhlaWdodCAtICRyYWRpby1idXR0b24tc2l6ZSkgLyAyO1xuJHJhZGlvLXJpcHBsZS1zaXplOiA0MnB4ICFkZWZhdWx0O1xuXG5cbi8qIE1FTlUgKi9cblxuJG1lbnUtZXhwYW5kLWR1cmF0aW9uOiAwLjNzICFkZWZhdWx0O1xuJG1lbnUtZmFkZS1kdXJhdGlvbjogMC4ycyAhZGVmYXVsdDtcblxuLyogTElTVCAqL1xuXG4kbGlzdC1ib3JkZXI6IDhweCAhZGVmYXVsdDtcbiRsaXN0LW1pbi1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG4kbGlzdC1taW4tcGFkZGluZzogMTZweCAhZGVmYXVsdDtcbiRsaXN0LWJvdHRvbS1wYWRkaW5nOiAyMHB4ICFkZWZhdWx0O1xuJGxpc3QtYXZhdGFyLXRleHQtbGVmdC1kaXN0YW5jZTogNzJweCAhZGVmYXVsdDtcbiRsaXN0LWljb24tdGV4dC1sZWZ0LWRpc3RhbmNlOiA3MnB4ICFkZWZhdWx0O1xuXG4kbGlzdC1hdmF0YXItc2l6ZTogNDBweCAhZGVmYXVsdDtcbiRsaXN0LWljb24tc2l6ZTogMjRweCAhZGVmYXVsdDtcblxuJGxpc3QtdHdvLWxpbmUtaGVpZ2h0OiA3MnB4ICFkZWZhdWx0O1xuJGxpc3QtdGhyZWUtbGluZS1oZWlnaHQ6IDg4cHggIWRlZmF1bHQ7XG5cbi8qIExBWU9VVCAqL1xuXG4kbGF5b3V0LWRyYXdlci1uYXJyb3c6IDI0MHB4ICFkZWZhdWx0O1xuJGxheW91dC1kcmF3ZXItd2lkZTogNDU2cHggIWRlZmF1bHQ7XG4kbGF5b3V0LWRyYXdlci13aWR0aDogJGxheW91dC1kcmF3ZXItbmFycm93ICFkZWZhdWx0O1xuXG4kbGF5b3V0LWhlYWRlci1pY29uLXNpemU6IDMycHggIWRlZmF1bHQ7XG4kbGF5b3V0LXNjcmVlbi1zaXplLXRocmVzaG9sZDogMTAyNHB4ICFkZWZhdWx0O1xuJGxheW91dC1oZWFkZXItaWNvbi1tYXJnaW46IDI0cHggIWRlZmF1bHQ7XG4kbGF5b3V0LWRyYXdlci1idXR0b24tbW9iaWxlLXNpemU6IDMycHggIWRlZmF1bHQ7XG4kbGF5b3V0LWRyYXdlci1idXR0b24tZGVza3RvcC1zaXplOiA0OHB4ICFkZWZhdWx0O1xuXG4kbGF5b3V0LWhlYWRlci1tb2JpbGUtcm93LWhlaWdodDogNTZweCAhZGVmYXVsdDtcbiRsYXlvdXQtbW9iaWxlLWhlYWRlci1oZWlnaHQ6ICRsYXlvdXQtaGVhZGVyLW1vYmlsZS1yb3ctaGVpZ2h0O1xuJGxheW91dC1oZWFkZXItZGVza3RvcC1yb3ctaGVpZ2h0OiA2NHB4ICFkZWZhdWx0O1xuJGxheW91dC1kZXNrdG9wLWhlYWRlci1oZWlnaHQ6ICRsYXlvdXQtaGVhZGVyLWRlc2t0b3Atcm93LWhlaWdodDtcblxuJGxheW91dC1oZWFkZXItZGVza3RvcC1iYXNlbGluZTogODBweCAhZGVmYXVsdDtcbiRsYXlvdXQtaGVhZGVyLW1vYmlsZS1iYXNlbGluZTogNzJweCAhZGVmYXVsdDtcbiRsYXlvdXQtaGVhZGVyLW1vYmlsZS1pbmRlbnQ6IDE2cHggIWRlZmF1bHQ7XG4kbGF5b3V0LWhlYWRlci1kZXNrdG9wLWluZGVudDogNDBweCAhZGVmYXVsdDtcblxuJGxheW91dC10YWItZm9udC1zaXplOiAxNHB4ICFkZWZhdWx0O1xuJGxheW91dC10YWItYmFyLWhlaWdodDogNDhweCAhZGVmYXVsdDtcbiRsYXlvdXQtdGFiLW1vYmlsZS1wYWRkaW5nOiAxMnB4ICFkZWZhdWx0O1xuJGxheW91dC10YWItZGVza3RvcC1wYWRkaW5nOiAyNHB4ICFkZWZhdWx0O1xuJGxheW91dC10YWItaGlnaGxpZ2h0LXRoaWNrbmVzczogMnB4ICFkZWZhdWx0O1xuXG5cbi8qIElDT04gVE9HR0xFICovXG5cbiRpY29uLXRvZ2dsZS1zaXplOiAzMnB4ICFkZWZhdWx0O1xuJGljb24tdG9nZ2xlLWZvbnQtc2l6ZTogMjRweCAhZGVmYXVsdDtcbiRpY29uLXRvZ2dsZS1yaXBwbGUtc2l6ZTogMzZweCAhZGVmYXVsdDtcblxuLyogRk9PVEVSICovXG5cbi8qbWVnYS1mb290ZXIqL1xuJGZvb3Rlci1taW4tcGFkZGluZzogMTZweCAhZGVmYXVsdDtcbiRmb290ZXItcGFkZGluZy1zaWRlczogNDBweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctbGluZS1oZWlnaHQ6ICgxLjcgKiAkZm9vdGVyLWhlYWRpbmctZm9udC1zaXplKSAhZGVmYXVsdDtcbiRmb290ZXItYnRuLXNpemU6IDM2cHggICFkZWZhdWx0O1xuXG4vKm1pbmktZm9vdGVyKi9cbiRwYWRkaW5nOiAxNnB4ICFkZWZhdWx0O1xuJGZvb3Rlci1oZWFkaW5nLWZvbnQtc2l6ZTogMjRweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1saW5lLWhlaWdodDogKDEuNSAqICRmb290ZXItaGVhZGluZy1mb250LXNpemUpICFkZWZhdWx0O1xuJGZvb3Rlci1idG4tc2l6ZTogMzZweCAhZGVmYXVsdDtcblxuLyogQ0hFQ0tCT1ggKi9cblxuJGNoZWNrYm94LWxhYmVsLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcbiRjaGVja2JveC1sYWJlbC1oZWlnaHQ6IDI0cHggIWRlZmF1bHQ7XG4kY2hlY2tib3gtYnV0dG9uLXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kY2hlY2tib3gtaW5uZXItbWFyZ2luOiAycHggIWRlZmF1bHQ7XG4kY2hlY2tib3gtcGFkZGluZzogOHB4ICFkZWZhdWx0O1xuJGNoZWNrYm94LXRvcC1vZmZzZXQ6XG4oJGNoZWNrYm94LWxhYmVsLWhlaWdodCAtICRjaGVja2JveC1idXR0b24tc2l6ZSAtICRjaGVja2JveC1pbm5lci1tYXJnaW4pIC8gMjtcbiRjaGVja2JveC1yaXBwbGUtc2l6ZTogJGNoZWNrYm94LWxhYmVsLWhlaWdodCAqIDEuNTtcblxuLyogQ0FSRCAqL1xuXG4vKiBDYXJkIGRpbWVuc2lvbnMgKi9cbiRjYXJkLXdpZHRoOiAzMzBweCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogMjAwcHggIWRlZmF1bHQ7XG4kY2FyZC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1mb250LXNpemU6IDI0cHggIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XG4kY2FyZC1ob3Jpem9udGFsLXBhZGRpbmc6IDE2cHggIWRlZmF1bHQ7XG4kY2FyZC12ZXJ0aWNhbC1wYWRkaW5nOiAxNnB4ICFkZWZhdWx0O1xuXG4kY2FyZC10aXRsZS1wZXJzcGVjdGl2ZS1vcmlnaW4teDogMTY1cHggIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1wZXJzcGVjdGl2ZS1vcmlnaW4teTogNTZweCAhZGVmYXVsdDtcblxuJGNhcmQtdGl0bGUtdHJhbnNmb3JtLW9yaWdpbi14OiAxNjVweCAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXRyYW5zZm9ybS1vcmlnaW4teTogNTZweCAhZGVmYXVsdDtcblxuJGNhcmQtdGl0bGUtdGV4dC10cmFuc2Zvcm0tb3JpZ2luLXg6IDE0OXB4ICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtdGV4dC10cmFuc2Zvcm0tb3JpZ2luLXk6IDQ4cHggIWRlZmF1bHQ7XG5cbiRjYXJkLXN1cHBvcnRpbmctdGV4dC1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zdXBwb3J0aW5nLXRleHQtbGluZS1oZWlnaHQ6IDE4cHggIWRlZmF1bHQ7XG5cbiRjYXJkLWFjdGlvbnMtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4kY2FyZC10aXRsZS10ZXh0LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kY2FyZC16LWluZGV4OiAxICFkZWZhdWx0O1xuXG4vKiBDb3ZlciBpbWFnZSAqL1xuJGNhcmQtY292ZXItaW1hZ2UtaGVpZ2h0OiAxODZweCAhZGVmYXVsdDtcbiRjYXJkLWJhY2tncm91bmQtaW1hZ2UtdXJsOiAnJyAhZGVmYXVsdDtcblxuXG4vKiBCVVRUT04gKi9cbi8qKlxuICpcbiAqIERpbWVuc2lvbnNcbiAqXG4gKi9cbiRidXR0b24tbWluLXdpZHRoOiA2NHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1oZWlnaHQ6IDM2cHggIWRlZmF1bHQ7XG4kYnV0dG9uLXBhZGRpbmc6IDE2cHggIWRlZmF1bHQ7XG4kYnV0dG9uLW1hcmdpbjogNHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG5cbiRidXR0b24tZmFiLXNpemU6IDU2cHggIWRlZmF1bHQ7XG4kYnV0dG9uLWZhYi1zaXplLW1pbmk6IDQwcHggIWRlZmF1bHQ7XG4kYnV0dG9uLWZhYi1mb250LXNpemU6IDI0cHggIWRlZmF1bHQ7XG5cbiRidXR0b24taWNvbi1zaXplOiAzMnB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1pY29uLXNpemUtbWluaTogMjRweCAhZGVmYXVsdDtcblxuXG4vKiBBTklNQVRJT04gKi9cbiRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSAhZGVmYXVsdDtcbiRhbmltYXRpb24tY3VydmUtbGluZWFyLW91dC1zbG93LWluOiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSAhZGVmYXVsdDtcbiRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtbGluZWFyLWluOiBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKSAhZGVmYXVsdDtcblxuJGFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0OiAkYW5pbWF0aW9uLWN1cnZlLWZhc3Qtb3V0LXNsb3ctaW4gIWRlZmF1bHQ7XG5cblxuLyogUFJPR1JFU1MgKi9cbiRiYXItaGVpZ2h0OiA0cHggIWRlZmF1bHQ7XG5cbi8qIEJBREdFICovXG4kYmFkZ2UtZm9udC1zaXplOiAxMnB4ICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWFjY2VudC1jb250cmFzdH0pXCIpICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yLWludmVyc2U6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50fSlcIikgIWRlZmF1bHQ7XG4kYmFkZ2UtYmFja2dyb3VuZDogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhZGVmYXVsdDtcbiRiYWRnZS1iYWNrZ3JvdW5kLWludmVyc2U6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWFjY2VudC1jb250cmFzdH0sMC4yKVwiKSAhZGVmYXVsdDtcbiRiYWRnZS1zaXplIDogMjJweCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nOiAycHggIWRlZmF1bHQ7XG4kYmFkZ2Utb3ZlcmxhcDogMTJweCAhZGVmYXVsdDtcblxuLyogU0hBRE9XUyAqL1xuXG4kc2hhZG93LWtleS11bWJyYS1vcGFjaXR5OiAwLjIgIWRlZmF1bHQ7XG4kc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5OiAwLjE0ICFkZWZhdWx0O1xuJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5OiAwLjEyICFkZWZhdWx0O1xuXG4vKiBHUklEICovXG5cbiRncmlkLWRlc2t0b3AtY29sdW1uczogMTIgIWRlZmF1bHQ7XG4kZ3JpZC1kZXNrdG9wLWd1dHRlcjogMTZweCAhZGVmYXVsdDtcbiRncmlkLWRlc2t0b3AtbWFyZ2luOiAxNnB4ICFkZWZhdWx0O1xuXG4kZ3JpZC1kZXNrdG9wLWJyZWFrcG9pbnQ6IDg0MHB4ICFkZWZhdWx0O1xuXG4kZ3JpZC10YWJsZXQtY29sdW1uczogOCAhZGVmYXVsdDtcbiRncmlkLXRhYmxldC1ndXR0ZXI6ICRncmlkLWRlc2t0b3AtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtdGFibGV0LW1hcmdpbjogJGdyaWQtZGVza3RvcC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRncmlkLXRhYmxldC1icmVha3BvaW50OiA0ODBweCAhZGVmYXVsdDtcblxuJGdyaWQtcGhvbmUtY29sdW1uczogNCAhZGVmYXVsdDtcbiRncmlkLXBob25lLWd1dHRlcjogJGdyaWQtZGVza3RvcC1ndXR0ZXIgIWRlZmF1bHQ7XG4kZ3JpZC1waG9uZS1tYXJnaW46ICRncmlkLWRlc2t0b3AtbWFyZ2luICFkZWZhdWx0O1xuXG4kZ3JpZC1jZWxsLWRlZmF1bHQtY29sdW1uczogJGdyaWQtcGhvbmUtY29sdW1ucyAhZGVmYXVsdDtcbiRncmlkLW1heC1jb2x1bW5zOiAkZ3JpZC1kZXNrdG9wLWNvbHVtbnMgIWRlZmF1bHQ7XG5cbi8qIERBVEEgVEFCTEUgKi9cblxuJGRhdGEtdGFibGUtZm9udC1zaXplOiAxM3B4ICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtaGVhZGVyLWZvbnQtc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWhlYWRlci1zb3J0LWljb24tc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuJGRhdGEtdGFibGUtaGVhZGVyLWNvbG9yOiByZ2JhKCMwMDAsIDAuNTQpICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtaGVhZGVyLXNvcnRlZC1jb2xvcjogcmdiYSgjMDAwLCAwLjg3KSAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWRpdmlkZXItY29sb3I6IHJnYmEoIzAwMCwgMC4xMikgIWRlZmF1bHQ7XG5cbiRkYXRhLXRhYmxlLWhvdmVyLWNvbG9yOiAjZWVlZWVlICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtc2VsZWN0aW9uLWNvbG9yOiAjZTBlMGUwICFkZWZhdWx0O1xuXG4kZGF0YS10YWJsZS1kaXZpZGVyczogMXB4IHNvbGlkICRkYXRhLXRhYmxlLWRpdmlkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRkYXRhLXRhYmxlLXJvdy1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1sYXN0LXJvdy1oZWlnaHQ6IDU2cHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1oZWFkZXItaGVpZ2h0OiA1NnB4ICFkZWZhdWx0O1xuXG4kZGF0YS10YWJsZS1jb2x1bW4tc3BhY2luZzogMzZweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWNvbHVtbi1wYWRkaW5nOiAkZGF0YS10YWJsZS1jb2x1bW4tc3BhY2luZyAvIDI7XG5cbiRkYXRhLXRhYmxlLWNhcmQtaGVhZGVyLWhlaWdodDogNjRweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWNhcmQtdGl0bGUtdG9wOiAyMHB4ICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtY2FyZC1wYWRkaW5nOiAyNHB4ICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtYnV0dG9uLXBhZGRpbmctcmlnaHQ6IDE2cHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1jZWxsLXRvcDogJGRhdGEtdGFibGUtY2FyZC1wYWRkaW5nIC8gMjtcblxuLyogRElBTE9HICovXG4kZGlhbG9nLWNvbnRlbnQtY29sb3I6ICRjYXJkLXN1cHBvcnRpbmctdGV4dC10ZXh0LWNvbG9yO1xuXG4vKiBTTkFDS0JBUiAqL1xuXG4vLyBIYXJkIGNvZGVkIHNpbmNlIHRoZSBjb2xvciBpcyBub3QgcHJlc2VudCBpbiBhbnkgcGFsZXR0ZS5cbiRzbmFja2Jhci1iYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyICFkZWZhdWx0O1xuJHNuYWNrYmFyLXRhYmxldC1icmVha3BvaW50OiAkZ3JpZC10YWJsZXQtYnJlYWtwb2ludDtcbiRzbmFja2Jhci1hY3Rpb24tY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50fSlcIikgIWRlZmF1bHQ7XG5cbi8qIFRPT0xUSVAgKi9cbiR0b29sdGlwLWZvbnQtc2l6ZTogMTBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWZvbnQtc2l6ZS1sYXJnZTogMTRweCAhZGVmYXVsdDtcbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qID09PT09PT09PT0gIENvbG9yIFBhbGV0dGVzICA9PT09PT09PT09ICovXG5cbi8vIENvbG9yIG9yZGVyOiA1MCwgMTAwLCAyMDAsIDMwMCwgNDAwLCA1MDAsIDYwMCwgNzAwLCA4MDAsIDkwMCwgQTEwMCwgQTIwMCxcbi8vIEE0MDAsIEE3MDAuXG5cbiRwYWxldHRlLXJlZDpcblwiMjU1LDIzNSwyMzhcIlxuXCIyNTUsMjA1LDIxMFwiXG5cIjIzOSwxNTQsMTU0XCJcblwiMjI5LDExNSwxMTVcIlxuXCIyMzksODMsODBcIlxuXCIyNDQsNjcsNTRcIlxuXCIyMjksNTcsNTNcIlxuXCIyMTEsNDcsNDdcIlxuXCIxOTgsNDAsNDBcIlxuXCIxODMsMjgsMjhcIlxuXCIyNTUsMTM4LDEyOFwiXG5cIjI1NSw4Miw4MlwiXG5cIjI1NSwyMyw2OFwiXG5cIjIxMywwLDBcIjtcblxuJHBhbGV0dGUtcmVkLTUwOiBudGgoJHBhbGV0dGUtcmVkLCAxKTtcbiRwYWxldHRlLXJlZC0xMDA6IG50aCgkcGFsZXR0ZS1yZWQsIDIpO1xuJHBhbGV0dGUtcmVkLTIwMDogbnRoKCRwYWxldHRlLXJlZCwgMyk7XG4kcGFsZXR0ZS1yZWQtMzAwOiBudGgoJHBhbGV0dGUtcmVkLCA0KTtcbiRwYWxldHRlLXJlZC00MDA6IG50aCgkcGFsZXR0ZS1yZWQsIDUpO1xuJHBhbGV0dGUtcmVkLTUwMDogbnRoKCRwYWxldHRlLXJlZCwgNik7XG4kcGFsZXR0ZS1yZWQtNjAwOiBudGgoJHBhbGV0dGUtcmVkLCA3KTtcbiRwYWxldHRlLXJlZC03MDA6IG50aCgkcGFsZXR0ZS1yZWQsIDgpO1xuJHBhbGV0dGUtcmVkLTgwMDogbnRoKCRwYWxldHRlLXJlZCwgOSk7XG4kcGFsZXR0ZS1yZWQtOTAwOiBudGgoJHBhbGV0dGUtcmVkLCAxMCk7XG4kcGFsZXR0ZS1yZWQtQTEwMDogbnRoKCRwYWxldHRlLXJlZCwgMTEpO1xuJHBhbGV0dGUtcmVkLUEyMDA6IG50aCgkcGFsZXR0ZS1yZWQsIDEyKTtcbiRwYWxldHRlLXJlZC1BNDAwOiBudGgoJHBhbGV0dGUtcmVkLCAxMyk7XG4kcGFsZXR0ZS1yZWQtQTcwMDogbnRoKCRwYWxldHRlLXJlZCwgMTQpO1xuXG4kcGFsZXR0ZS1waW5rOlxuXCIyNTIsMjI4LDIzNlwiXG5cIjI0OCwxODcsMjA4XCJcblwiMjQ0LDE0MywxNzdcIlxuXCIyNDAsOTgsMTQ2XCJcblwiMjM2LDY0LDEyMlwiXG5cIjIzMywzMCw5OVwiXG5cIjIxNiwyNyw5NlwiXG5cIjE5NCwyNCw5MVwiXG5cIjE3MywyMCw4N1wiXG5cIjEzNiwxNCw3OVwiXG5cIjI1NSwxMjgsMTcxXCJcblwiMjU1LDY0LDEyOVwiXG5cIjI0NSwwLDg3XCJcblwiMTk3LDE3LDk4XCI7XG5cbiRwYWxldHRlLXBpbmstNTA6IG50aCgkcGFsZXR0ZS1waW5rLCAxKTtcbiRwYWxldHRlLXBpbmstMTAwOiBudGgoJHBhbGV0dGUtcGluaywgMik7XG4kcGFsZXR0ZS1waW5rLTIwMDogbnRoKCRwYWxldHRlLXBpbmssIDMpO1xuJHBhbGV0dGUtcGluay0zMDA6IG50aCgkcGFsZXR0ZS1waW5rLCA0KTtcbiRwYWxldHRlLXBpbmstNDAwOiBudGgoJHBhbGV0dGUtcGluaywgNSk7XG4kcGFsZXR0ZS1waW5rLTUwMDogbnRoKCRwYWxldHRlLXBpbmssIDYpO1xuJHBhbGV0dGUtcGluay02MDA6IG50aCgkcGFsZXR0ZS1waW5rLCA3KTtcbiRwYWxldHRlLXBpbmstNzAwOiBudGgoJHBhbGV0dGUtcGluaywgOCk7XG4kcGFsZXR0ZS1waW5rLTgwMDogbnRoKCRwYWxldHRlLXBpbmssIDkpO1xuJHBhbGV0dGUtcGluay05MDA6IG50aCgkcGFsZXR0ZS1waW5rLCAxMCk7XG4kcGFsZXR0ZS1waW5rLUExMDA6IG50aCgkcGFsZXR0ZS1waW5rLCAxMSk7XG4kcGFsZXR0ZS1waW5rLUEyMDA6IG50aCgkcGFsZXR0ZS1waW5rLCAxMik7XG4kcGFsZXR0ZS1waW5rLUE0MDA6IG50aCgkcGFsZXR0ZS1waW5rLCAxMyk7XG4kcGFsZXR0ZS1waW5rLUE3MDA6IG50aCgkcGFsZXR0ZS1waW5rLCAxNCk7XG5cbiRwYWxldHRlLXB1cnBsZTpcblwiMjQzLDIyOSwyNDVcIlxuXCIyMjUsMTkwLDIzMVwiXG5cIjIwNiwxNDcsMjE2XCJcblwiMTg2LDEwNCwyMDBcIlxuXCIxNzEsNzEsMTg4XCJcblwiMTU2LDM5LDE3NlwiXG5cIjE0MiwzNiwxNzBcIlxuXCIxMjMsMzEsMTYyXCJcblwiMTA2LDI3LDE1NFwiXG5cIjc0LDIwLDE0MFwiXG5cIjIzNCwxMjgsMjUyXCJcblwiMjI0LDY0LDI1MVwiXG5cIjIxMywwLDI0OVwiXG5cIjE3MCwwLDI1NVwiO1xuXG4kcGFsZXR0ZS1wdXJwbGUtNTA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDEpO1xuJHBhbGV0dGUtcHVycGxlLTEwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgMik7XG4kcGFsZXR0ZS1wdXJwbGUtMjAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCAzKTtcbiRwYWxldHRlLXB1cnBsZS0zMDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDQpO1xuJHBhbGV0dGUtcHVycGxlLTQwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgNSk7XG4kcGFsZXR0ZS1wdXJwbGUtNTAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCA2KTtcbiRwYWxldHRlLXB1cnBsZS02MDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDcpO1xuJHBhbGV0dGUtcHVycGxlLTcwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgOCk7XG4kcGFsZXR0ZS1wdXJwbGUtODAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCA5KTtcbiRwYWxldHRlLXB1cnBsZS05MDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDEwKTtcbiRwYWxldHRlLXB1cnBsZS1BMTAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCAxMSk7XG4kcGFsZXR0ZS1wdXJwbGUtQTIwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgMTIpO1xuJHBhbGV0dGUtcHVycGxlLUE0MDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDEzKTtcbiRwYWxldHRlLXB1cnBsZS1BNzAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCAxNCk7XG5cbiRwYWxldHRlLWRlZXAtcHVycGxlOlxuXCIyMzcsMjMxLDI0NlwiXG5cIjIwOSwxOTYsMjMzXCJcblwiMTc5LDE1NywyMTlcIlxuXCIxNDksMTE3LDIwNVwiXG5cIjEyNiw4NywxOTRcIlxuXCIxMDMsNTgsMTgzXCJcblwiOTQsNTMsMTc3XCJcblwiODEsNDUsMTY4XCJcblwiNjksMzksMTYwXCJcblwiNDksMjcsMTQ2XCJcblwiMTc5LDEzNiwyNTVcIlxuXCIxMjQsNzcsMjU1XCJcblwiMTAxLDMxLDI1NVwiXG5cIjk4LDAsMjM0XCI7XG5cbiRwYWxldHRlLWRlZXAtcHVycGxlLTUwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDEpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtMTAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDIpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtMjAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDMpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtMzAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDQpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtNDAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDUpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtNTAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDYpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtNjAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDcpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtNzAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDgpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtODAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDkpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtOTAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDEwKTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLUExMDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgMTEpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtQTIwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCAxMik7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS1BNDAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDEzKTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLUE3MDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgMTQpO1xuXG4kcGFsZXR0ZS1pbmRpZ286XG5cIjIzMiwyMzQsMjQ2XCJcblwiMTk3LDIwMiwyMzNcIlxuXCIxNTksMTY4LDIxOFwiXG5cIjEyMSwxMzQsMjAzXCJcblwiOTIsMTA3LDE5MlwiXG5cIjYzLDgxLDE4MVwiXG5cIjU3LDczLDE3MVwiXG5cIjQ4LDYzLDE1OVwiXG5cIjQwLDUzLDE0N1wiXG5cIjI2LDM1LDEyNlwiXG5cIjE0MCwxNTgsMjU1XCJcblwiODMsMTA5LDI1NFwiXG5cIjYxLDkwLDI1NFwiXG5cIjQ4LDc5LDI1NFwiO1xuXG4kcGFsZXR0ZS1pbmRpZ28tNTA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDEpO1xuJHBhbGV0dGUtaW5kaWdvLTEwMDogbnRoKCRwYWxldHRlLWluZGlnbywgMik7XG4kcGFsZXR0ZS1pbmRpZ28tMjAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCAzKTtcbiRwYWxldHRlLWluZGlnby0zMDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDQpO1xuJHBhbGV0dGUtaW5kaWdvLTQwMDogbnRoKCRwYWxldHRlLWluZGlnbywgNSk7XG4kcGFsZXR0ZS1pbmRpZ28tNTAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCA2KTtcbiRwYWxldHRlLWluZGlnby02MDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDcpO1xuJHBhbGV0dGUtaW5kaWdvLTcwMDogbnRoKCRwYWxldHRlLWluZGlnbywgOCk7XG4kcGFsZXR0ZS1pbmRpZ28tODAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCA5KTtcbiRwYWxldHRlLWluZGlnby05MDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDEwKTtcbiRwYWxldHRlLWluZGlnby1BMTAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCAxMSk7XG4kcGFsZXR0ZS1pbmRpZ28tQTIwMDogbnRoKCRwYWxldHRlLWluZGlnbywgMTIpO1xuJHBhbGV0dGUtaW5kaWdvLUE0MDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDEzKTtcbiRwYWxldHRlLWluZGlnby1BNzAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCAxNCk7XG5cbiRwYWxldHRlLWJsdWU6XG5cIjIyNywyNDIsMjUzXCJcblwiMTg3LDIyMiwyNTFcIlxuXCIxNDQsMjAyLDI0OVwiXG5cIjEwMCwxODEsMjQ2XCJcblwiNjYsMTY1LDI0NVwiXG5cIjMzLDE1MCwyNDNcIlxuXCIzMCwxMzYsMjI5XCJcblwiMjUsMTE4LDIxMFwiXG5cIjIxLDEwMSwxOTJcIlxuXCIxMyw3MSwxNjFcIlxuXCIxMzAsMTc3LDI1NVwiXG5cIjY4LDEzOCwyNTVcIlxuXCI0MSwxMjEsMjU1XCJcblwiNDEsOTgsMjU1XCI7XG5cbiRwYWxldHRlLWJsdWUtNTA6IG50aCgkcGFsZXR0ZS1ibHVlLCAxKTtcbiRwYWxldHRlLWJsdWUtMTAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgMik7XG4kcGFsZXR0ZS1ibHVlLTIwMDogbnRoKCRwYWxldHRlLWJsdWUsIDMpO1xuJHBhbGV0dGUtYmx1ZS0zMDA6IG50aCgkcGFsZXR0ZS1ibHVlLCA0KTtcbiRwYWxldHRlLWJsdWUtNDAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgNSk7XG4kcGFsZXR0ZS1ibHVlLTUwMDogbnRoKCRwYWxldHRlLWJsdWUsIDYpO1xuJHBhbGV0dGUtYmx1ZS02MDA6IG50aCgkcGFsZXR0ZS1ibHVlLCA3KTtcbiRwYWxldHRlLWJsdWUtNzAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgOCk7XG4kcGFsZXR0ZS1ibHVlLTgwMDogbnRoKCRwYWxldHRlLWJsdWUsIDkpO1xuJHBhbGV0dGUtYmx1ZS05MDA6IG50aCgkcGFsZXR0ZS1ibHVlLCAxMCk7XG4kcGFsZXR0ZS1ibHVlLUExMDA6IG50aCgkcGFsZXR0ZS1ibHVlLCAxMSk7XG4kcGFsZXR0ZS1ibHVlLUEyMDA6IG50aCgkcGFsZXR0ZS1ibHVlLCAxMik7XG4kcGFsZXR0ZS1ibHVlLUE0MDA6IG50aCgkcGFsZXR0ZS1ibHVlLCAxMyk7XG4kcGFsZXR0ZS1ibHVlLUE3MDA6IG50aCgkcGFsZXR0ZS1ibHVlLCAxNCk7XG5cbiRwYWxldHRlLWxpZ2h0LWJsdWU6XG5cIjIyNSwyNDUsMjU0XCJcblwiMTc5LDIyOSwyNTJcIlxuXCIxMjksMjEyLDI1MFwiXG5cIjc5LDE5NSwyNDdcIlxuXCI0MSwxODIsMjQ2XCJcblwiMywxNjksMjQ0XCJcblwiMywxNTUsMjI5XCJcblwiMiwxMzYsMjA5XCJcblwiMiwxMTksMTg5XCJcblwiMSw4NywxNTVcIlxuXCIxMjgsMjE2LDI1NVwiXG5cIjY0LDE5NiwyNTVcIlxuXCIwLDE3NiwyNTVcIlxuXCIwLDE0NSwyMzRcIjtcblxuJHBhbGV0dGUtbGlnaHQtYmx1ZS01MDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDEpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS0xMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCAyKTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtMjAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgMyk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTMwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDQpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS00MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCA1KTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtNTAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgNik7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTYwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDcpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS03MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCA4KTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtODAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgOSk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTkwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDEwKTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtQTEwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDExKTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtQTIwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDEyKTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtQTQwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDEzKTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtQTcwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDE0KTtcblxuJHBhbGV0dGUtY3lhbjpcblwiMjI0LDI0NywyNTBcIlxuXCIxNzgsMjM1LDI0MlwiXG5cIjEyOCwyMjIsMjM0XCJcblwiNzcsMjA4LDIyNVwiXG5cIjM4LDE5OCwyMThcIlxuXCIwLDE4OCwyMTJcIlxuXCIwLDE3MiwxOTNcIlxuXCIwLDE1MSwxNjdcIlxuXCIwLDEzMSwxNDNcIlxuXCIwLDk2LDEwMFwiXG5cIjEzMiwyNTUsMjU1XCJcblwiMjQsMjU1LDI1NVwiXG5cIjAsMjI5LDI1NVwiXG5cIjAsMTg0LDIxMlwiO1xuXG4kcGFsZXR0ZS1jeWFuLTUwOiBudGgoJHBhbGV0dGUtY3lhbiwgMSk7XG4kcGFsZXR0ZS1jeWFuLTEwMDogbnRoKCRwYWxldHRlLWN5YW4sIDIpO1xuJHBhbGV0dGUtY3lhbi0yMDA6IG50aCgkcGFsZXR0ZS1jeWFuLCAzKTtcbiRwYWxldHRlLWN5YW4tMzAwOiBudGgoJHBhbGV0dGUtY3lhbiwgNCk7XG4kcGFsZXR0ZS1jeWFuLTQwMDogbnRoKCRwYWxldHRlLWN5YW4sIDUpO1xuJHBhbGV0dGUtY3lhbi01MDA6IG50aCgkcGFsZXR0ZS1jeWFuLCA2KTtcbiRwYWxldHRlLWN5YW4tNjAwOiBudGgoJHBhbGV0dGUtY3lhbiwgNyk7XG4kcGFsZXR0ZS1jeWFuLTcwMDogbnRoKCRwYWxldHRlLWN5YW4sIDgpO1xuJHBhbGV0dGUtY3lhbi04MDA6IG50aCgkcGFsZXR0ZS1jeWFuLCA5KTtcbiRwYWxldHRlLWN5YW4tOTAwOiBudGgoJHBhbGV0dGUtY3lhbiwgMTApO1xuJHBhbGV0dGUtY3lhbi1BMTAwOiBudGgoJHBhbGV0dGUtY3lhbiwgMTEpO1xuJHBhbGV0dGUtY3lhbi1BMjAwOiBudGgoJHBhbGV0dGUtY3lhbiwgMTIpO1xuJHBhbGV0dGUtY3lhbi1BNDAwOiBudGgoJHBhbGV0dGUtY3lhbiwgMTMpO1xuJHBhbGV0dGUtY3lhbi1BNzAwOiBudGgoJHBhbGV0dGUtY3lhbiwgMTQpO1xuXG4kcGFsZXR0ZS10ZWFsOlxuXCIyMjQsMjQyLDI0MVwiXG5cIjE3OCwyMjMsMjE5XCJcblwiMTI4LDIwMywxOTZcIlxuXCI3NywxODIsMTcyXCJcblwiMzgsMTY2LDE1NFwiXG5cIjAsMTUwLDEzNlwiXG5cIjAsMTM3LDEyM1wiXG5cIjAsMTIxLDEwN1wiXG5cIjAsMTA1LDkyXCJcblwiMCw3Nyw2NFwiXG5cIjE2NywyNTUsMjM1XCJcblwiMTAwLDI1NSwyMThcIlxuXCIyOSwyMzMsMTgyXCJcblwiMCwxOTEsMTY1XCI7XG5cbiRwYWxldHRlLXRlYWwtNTA6IG50aCgkcGFsZXR0ZS10ZWFsLCAxKTtcbiRwYWxldHRlLXRlYWwtMTAwOiBudGgoJHBhbGV0dGUtdGVhbCwgMik7XG4kcGFsZXR0ZS10ZWFsLTIwMDogbnRoKCRwYWxldHRlLXRlYWwsIDMpO1xuJHBhbGV0dGUtdGVhbC0zMDA6IG50aCgkcGFsZXR0ZS10ZWFsLCA0KTtcbiRwYWxldHRlLXRlYWwtNDAwOiBudGgoJHBhbGV0dGUtdGVhbCwgNSk7XG4kcGFsZXR0ZS10ZWFsLTUwMDogbnRoKCRwYWxldHRlLXRlYWwsIDYpO1xuJHBhbGV0dGUtdGVhbC02MDA6IG50aCgkcGFsZXR0ZS10ZWFsLCA3KTtcbiRwYWxldHRlLXRlYWwtNzAwOiBudGgoJHBhbGV0dGUtdGVhbCwgOCk7XG4kcGFsZXR0ZS10ZWFsLTgwMDogbnRoKCRwYWxldHRlLXRlYWwsIDkpO1xuJHBhbGV0dGUtdGVhbC05MDA6IG50aCgkcGFsZXR0ZS10ZWFsLCAxMCk7XG4kcGFsZXR0ZS10ZWFsLUExMDA6IG50aCgkcGFsZXR0ZS10ZWFsLCAxMSk7XG4kcGFsZXR0ZS10ZWFsLUEyMDA6IG50aCgkcGFsZXR0ZS10ZWFsLCAxMik7XG4kcGFsZXR0ZS10ZWFsLUE0MDA6IG50aCgkcGFsZXR0ZS10ZWFsLCAxMyk7XG4kcGFsZXR0ZS10ZWFsLUE3MDA6IG50aCgkcGFsZXR0ZS10ZWFsLCAxNCk7XG5cbiRwYWxldHRlLWdyZWVuOlxuXCIyMzIsMjQ1LDIzM1wiXG5cIjIwMCwyMzAsMjAxXCJcblwiMTY1LDIxNCwxNjdcIlxuXCIxMjksMTk5LDEzMlwiXG5cIjEwMiwxODcsMTA2XCJcblwiNzYsMTc1LDgwXCJcblwiNjcsMTYwLDcxXCJcblwiNTYsMTQyLDYwXCJcblwiNDYsMTI1LDUwXCJcblwiMjcsOTQsMzJcIlxuXCIxODUsMjQ2LDIwMlwiXG5cIjEwNSwyNDAsMTc0XCJcblwiMCwyMzAsMTE4XCJcblwiMCwyMDAsODNcIjtcblxuJHBhbGV0dGUtZ3JlZW4tNTA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgMSk7XG4kcGFsZXR0ZS1ncmVlbi0xMDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgMik7XG4kcGFsZXR0ZS1ncmVlbi0yMDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgMyk7XG4kcGFsZXR0ZS1ncmVlbi0zMDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgNCk7XG4kcGFsZXR0ZS1ncmVlbi00MDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgNSk7XG4kcGFsZXR0ZS1ncmVlbi01MDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgNik7XG4kcGFsZXR0ZS1ncmVlbi02MDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgNyk7XG4kcGFsZXR0ZS1ncmVlbi03MDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgOCk7XG4kcGFsZXR0ZS1ncmVlbi04MDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgOSk7XG4kcGFsZXR0ZS1ncmVlbi05MDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgMTApO1xuJHBhbGV0dGUtZ3JlZW4tQTEwMDogbnRoKCRwYWxldHRlLWdyZWVuLCAxMSk7XG4kcGFsZXR0ZS1ncmVlbi1BMjAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDEyKTtcbiRwYWxldHRlLWdyZWVuLUE0MDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgMTMpO1xuJHBhbGV0dGUtZ3JlZW4tQTcwMDogbnRoKCRwYWxldHRlLWdyZWVuLCAxNCk7XG5cbiRwYWxldHRlLWxpZ2h0LWdyZWVuOlxuXCIyNDEsMjQ4LDIzM1wiXG5cIjIyMCwyMzcsMjAwXCJcblwiMTk3LDIyNSwxNjVcIlxuXCIxNzQsMjEzLDEyOVwiXG5cIjE1NiwyMDQsMTAxXCJcblwiMTM5LDE5NSw3NFwiXG5cIjEyNCwxNzksNjZcIlxuXCIxMDQsMTU5LDU2XCJcblwiODUsMTM5LDQ3XCJcblwiNTEsMTA1LDMwXCJcblwiMjA0LDI1NSwxNDRcIlxuXCIxNzgsMjU1LDg5XCJcblwiMTE4LDI1NSwzXCJcblwiMTAwLDIyMSwyM1wiO1xuXG4kcGFsZXR0ZS1saWdodC1ncmVlbi01MDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCAxKTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTEwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCAyKTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTIwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCAzKTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTMwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCA0KTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTQwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCA1KTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTUwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCA2KTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTYwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCA3KTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTcwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCA4KTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTgwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCA5KTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTkwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCAxMCk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi1BMTAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDExKTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLUEyMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgMTIpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTQwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCAxMyk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi1BNzAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDE0KTtcblxuJHBhbGV0dGUtbGltZTpcblwiMjQ5LDI1MSwyMzFcIlxuXCIyNDAsMjQ0LDE5NVwiXG5cIjIzMCwyMzgsMTU2XCJcblwiMjIwLDIzMSwxMTdcIlxuXCIyMTIsMjI1LDg3XCJcblwiMjA1LDIyMCw1N1wiXG5cIjE5MiwyMDIsNTFcIlxuXCIxNzUsMTgwLDQzXCJcblwiMTU4LDE1NywzNlwiXG5cIjEzMCwxMTksMjNcIlxuXCIyNDQsMjU1LDEyOVwiXG5cIjIzOCwyNTUsNjVcIlxuXCIxOTgsMjU1LDBcIlxuXCIxNzQsMjM0LDBcIjtcblxuJHBhbGV0dGUtbGltZS01MDogbnRoKCRwYWxldHRlLWxpbWUsIDEpO1xuJHBhbGV0dGUtbGltZS0xMDA6IG50aCgkcGFsZXR0ZS1saW1lLCAyKTtcbiRwYWxldHRlLWxpbWUtMjAwOiBudGgoJHBhbGV0dGUtbGltZSwgMyk7XG4kcGFsZXR0ZS1saW1lLTMwMDogbnRoKCRwYWxldHRlLWxpbWUsIDQpO1xuJHBhbGV0dGUtbGltZS00MDA6IG50aCgkcGFsZXR0ZS1saW1lLCA1KTtcbiRwYWxldHRlLWxpbWUtNTAwOiBudGgoJHBhbGV0dGUtbGltZSwgNik7XG4kcGFsZXR0ZS1saW1lLTYwMDogbnRoKCRwYWxldHRlLWxpbWUsIDcpO1xuJHBhbGV0dGUtbGltZS03MDA6IG50aCgkcGFsZXR0ZS1saW1lLCA4KTtcbiRwYWxldHRlLWxpbWUtODAwOiBudGgoJHBhbGV0dGUtbGltZSwgOSk7XG4kcGFsZXR0ZS1saW1lLTkwMDogbnRoKCRwYWxldHRlLWxpbWUsIDEwKTtcbiRwYWxldHRlLWxpbWUtQTEwMDogbnRoKCRwYWxldHRlLWxpbWUsIDExKTtcbiRwYWxldHRlLWxpbWUtQTIwMDogbnRoKCRwYWxldHRlLWxpbWUsIDEyKTtcbiRwYWxldHRlLWxpbWUtQTQwMDogbnRoKCRwYWxldHRlLWxpbWUsIDEzKTtcbiRwYWxldHRlLWxpbWUtQTcwMDogbnRoKCRwYWxldHRlLWxpbWUsIDE0KTtcblxuJHBhbGV0dGUteWVsbG93OlxuXCIyNTUsMjUzLDIzMVwiXG5cIjI1NSwyNDksMTk2XCJcblwiMjU1LDI0NSwxNTdcIlxuXCIyNTUsMjQxLDExOFwiXG5cIjI1NSwyMzgsODhcIlxuXCIyNTUsMjM1LDU5XCJcblwiMjUzLDIxNiw1M1wiXG5cIjI1MSwxOTIsNDVcIlxuXCIyNDksMTY4LDM3XCJcblwiMjQ1LDEyNywyM1wiXG5cIjI1NSwyNTUsMTQxXCJcblwiMjU1LDI1NSwwXCJcblwiMjU1LDIzNCwwXCJcblwiMjU1LDIxNCwwXCI7XG5cbiRwYWxldHRlLXllbGxvdy01MDogbnRoKCRwYWxldHRlLXllbGxvdywgMSk7XG4kcGFsZXR0ZS15ZWxsb3ctMTAwOiBudGgoJHBhbGV0dGUteWVsbG93LCAyKTtcbiRwYWxldHRlLXllbGxvdy0yMDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDMpO1xuJHBhbGV0dGUteWVsbG93LTMwMDogbnRoKCRwYWxldHRlLXllbGxvdywgNCk7XG4kcGFsZXR0ZS15ZWxsb3ctNDAwOiBudGgoJHBhbGV0dGUteWVsbG93LCA1KTtcbiRwYWxldHRlLXllbGxvdy01MDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDYpO1xuJHBhbGV0dGUteWVsbG93LTYwMDogbnRoKCRwYWxldHRlLXllbGxvdywgNyk7XG4kcGFsZXR0ZS15ZWxsb3ctNzAwOiBudGgoJHBhbGV0dGUteWVsbG93LCA4KTtcbiRwYWxldHRlLXllbGxvdy04MDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDkpO1xuJHBhbGV0dGUteWVsbG93LTkwMDogbnRoKCRwYWxldHRlLXllbGxvdywgMTApO1xuJHBhbGV0dGUteWVsbG93LUExMDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDExKTtcbiRwYWxldHRlLXllbGxvdy1BMjAwOiBudGgoJHBhbGV0dGUteWVsbG93LCAxMik7XG4kcGFsZXR0ZS15ZWxsb3ctQTQwMDogbnRoKCRwYWxldHRlLXllbGxvdywgMTMpO1xuJHBhbGV0dGUteWVsbG93LUE3MDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDE0KTtcblxuJHBhbGV0dGUtYW1iZXI6XG5cIjI1NSwyNDgsMjI1XCJcblwiMjU1LDIzNiwxNzlcIlxuXCIyNTUsMjI0LDEzMFwiXG5cIjI1NSwyMTMsNzlcIlxuXCIyNTUsMjAyLDQwXCJcblwiMjU1LDE5Myw3XCJcblwiMjU1LDE3OSwwXCJcblwiMjU1LDE2MCwwXCJcblwiMjU1LDE0MywwXCJcblwiMjU1LDExMSwwXCJcblwiMjU1LDIyOSwxMjdcIlxuXCIyNTUsMjE1LDY0XCJcblwiMjU1LDE5NiwwXCJcblwiMjU1LDE3MSwwXCI7XG5cbiRwYWxldHRlLWFtYmVyLTUwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDEpO1xuJHBhbGV0dGUtYW1iZXItMTAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDIpO1xuJHBhbGV0dGUtYW1iZXItMjAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDMpO1xuJHBhbGV0dGUtYW1iZXItMzAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDQpO1xuJHBhbGV0dGUtYW1iZXItNDAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDUpO1xuJHBhbGV0dGUtYW1iZXItNTAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDYpO1xuJHBhbGV0dGUtYW1iZXItNjAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDcpO1xuJHBhbGV0dGUtYW1iZXItNzAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDgpO1xuJHBhbGV0dGUtYW1iZXItODAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDkpO1xuJHBhbGV0dGUtYW1iZXItOTAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDEwKTtcbiRwYWxldHRlLWFtYmVyLUExMDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgMTEpO1xuJHBhbGV0dGUtYW1iZXItQTIwMDogbnRoKCRwYWxldHRlLWFtYmVyLCAxMik7XG4kcGFsZXR0ZS1hbWJlci1BNDAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDEzKTtcbiRwYWxldHRlLWFtYmVyLUE3MDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgMTQpO1xuXG4kcGFsZXR0ZS1vcmFuZ2U6XG5cIjI1NSwyNDMsMjI0XCJcblwiMjU1LDIyNCwxNzhcIlxuXCIyNTUsMjA0LDEyOFwiXG5cIjI1NSwxODMsNzdcIlxuXCIyNTUsMTY3LDM4XCJcblwiMjU1LDE1MiwwXCJcblwiMjUxLDE0MCwwXCJcblwiMjQ1LDEyNCwwXCJcblwiMjM5LDEwOCwwXCJcblwiMjMwLDgxLDBcIlxuXCIyNTUsMjA5LDEyOFwiXG5cIjI1NSwxNzEsNjRcIlxuXCIyNTUsMTQ1LDBcIlxuXCIyNTUsMTA5LDBcIjtcblxuJHBhbGV0dGUtb3JhbmdlLTUwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCAxKTtcbiRwYWxldHRlLW9yYW5nZS0xMDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDIpO1xuJHBhbGV0dGUtb3JhbmdlLTIwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgMyk7XG4kcGFsZXR0ZS1vcmFuZ2UtMzAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCA0KTtcbiRwYWxldHRlLW9yYW5nZS00MDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDUpO1xuJHBhbGV0dGUtb3JhbmdlLTUwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgNik7XG4kcGFsZXR0ZS1vcmFuZ2UtNjAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCA3KTtcbiRwYWxldHRlLW9yYW5nZS03MDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDgpO1xuJHBhbGV0dGUtb3JhbmdlLTgwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgOSk7XG4kcGFsZXR0ZS1vcmFuZ2UtOTAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCAxMCk7XG4kcGFsZXR0ZS1vcmFuZ2UtQTEwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgMTEpO1xuJHBhbGV0dGUtb3JhbmdlLUEyMDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDEyKTtcbiRwYWxldHRlLW9yYW5nZS1BNDAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCAxMyk7XG4kcGFsZXR0ZS1vcmFuZ2UtQTcwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgMTQpO1xuXG4kcGFsZXR0ZS1kZWVwLW9yYW5nZTpcblwiMjUxLDIzMywyMzFcIlxuXCIyNTUsMjA0LDE4OFwiXG5cIjI1NSwxNzEsMTQ1XCJcblwiMjU1LDEzOCwxMDFcIlxuXCIyNTUsMTEyLDY3XCJcblwiMjU1LDg3LDM0XCJcblwiMjQ0LDgxLDMwXCJcblwiMjMwLDc0LDI1XCJcblwiMjE2LDY3LDIxXCJcblwiMTkxLDU0LDEyXCJcblwiMjU1LDE1OCwxMjhcIlxuXCIyNTUsMTEwLDY0XCJcblwiMjU1LDYxLDBcIlxuXCIyMjEsNDQsMFwiO1xuXG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS01MDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCAxKTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTEwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCAyKTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTIwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCAzKTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTMwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCA0KTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTQwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCA1KTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTUwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCA2KTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTYwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCA3KTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTcwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCA4KTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTgwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCA5KTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLTkwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCAxMCk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS1BMTAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDExKTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLUEyMDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgMTIpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtQTQwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCAxMyk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS1BNzAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDE0KTtcblxuXG4vLyBDb2xvciBvcmRlcjogNTAsIDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDAuXG5cbiRwYWxldHRlLWJyb3duOlxuXCIyMzksMjM1LDIzM1wiXG5cIjIxNSwyMDQsMjAwXCJcblwiMTg4LDE3MCwxNjRcIlxuXCIxNjEsMTM2LDEyN1wiXG5cIjE0MSwxMTAsOTlcIlxuXCIxMjEsODUsNzJcIlxuXCIxMDksNzYsNjVcIlxuXCI5Myw2NCw1NVwiXG5cIjc4LDUyLDQ2XCJcblwiNjIsMzksMzVcIjtcblxuJHBhbGV0dGUtYnJvd24tNTA6IG50aCgkcGFsZXR0ZS1icm93biwgMSk7XG4kcGFsZXR0ZS1icm93bi0xMDA6IG50aCgkcGFsZXR0ZS1icm93biwgMik7XG4kcGFsZXR0ZS1icm93bi0yMDA6IG50aCgkcGFsZXR0ZS1icm93biwgMyk7XG4kcGFsZXR0ZS1icm93bi0zMDA6IG50aCgkcGFsZXR0ZS1icm93biwgNCk7XG4kcGFsZXR0ZS1icm93bi00MDA6IG50aCgkcGFsZXR0ZS1icm93biwgNSk7XG4kcGFsZXR0ZS1icm93bi01MDA6IG50aCgkcGFsZXR0ZS1icm93biwgNik7XG4kcGFsZXR0ZS1icm93bi02MDA6IG50aCgkcGFsZXR0ZS1icm93biwgNyk7XG4kcGFsZXR0ZS1icm93bi03MDA6IG50aCgkcGFsZXR0ZS1icm93biwgOCk7XG4kcGFsZXR0ZS1icm93bi04MDA6IG50aCgkcGFsZXR0ZS1icm93biwgOSk7XG4kcGFsZXR0ZS1icm93bi05MDA6IG50aCgkcGFsZXR0ZS1icm93biwgMTApO1xuXG4kcGFsZXR0ZS1ncmV5OlxuXCIyNTAsMjUwLDI1MFwiXG5cIjI0NSwyNDUsMjQ1XCJcblwiMjM4LDIzOCwyMzhcIlxuXCIyMjQsMjI0LDIyNFwiXG5cIjE4OSwxODksMTg5XCJcblwiMTU4LDE1OCwxNThcIlxuXCIxMTcsMTE3LDExN1wiXG5cIjk3LDk3LDk3XCJcblwiNjYsNjYsNjZcIlxuXCIzMywzMywzM1wiO1xuXG4kcGFsZXR0ZS1ncmV5LTUwOiBudGgoJHBhbGV0dGUtZ3JleSwgMSk7XG4kcGFsZXR0ZS1ncmV5LTEwMDogbnRoKCRwYWxldHRlLWdyZXksIDIpO1xuJHBhbGV0dGUtZ3JleS0yMDA6IG50aCgkcGFsZXR0ZS1ncmV5LCAzKTtcbiRwYWxldHRlLWdyZXktMzAwOiBudGgoJHBhbGV0dGUtZ3JleSwgNCk7XG4kcGFsZXR0ZS1ncmV5LTQwMDogbnRoKCRwYWxldHRlLWdyZXksIDUpO1xuJHBhbGV0dGUtZ3JleS01MDA6IG50aCgkcGFsZXR0ZS1ncmV5LCA2KTtcbiRwYWxldHRlLWdyZXktNjAwOiBudGgoJHBhbGV0dGUtZ3JleSwgNyk7XG4kcGFsZXR0ZS1ncmV5LTcwMDogbnRoKCRwYWxldHRlLWdyZXksIDgpO1xuJHBhbGV0dGUtZ3JleS04MDA6IG50aCgkcGFsZXR0ZS1ncmV5LCA5KTtcbiRwYWxldHRlLWdyZXktOTAwOiBudGgoJHBhbGV0dGUtZ3JleSwgMTApO1xuXG4kcGFsZXR0ZS1ibHVlLWdyZXk6XG5cIjIzNiwyMzksMjQxXCJcblwiMjA3LDIxNiwyMjBcIlxuXCIxNzYsMTkwLDE5N1wiXG5cIjE0NCwxNjQsMTc0XCJcblwiMTIwLDE0NCwxNTZcIlxuXCI5NiwxMjUsMTM5XCJcblwiODQsMTEwLDEyMlwiXG5cIjY5LDkwLDEwMFwiXG5cIjU1LDcxLDc5XCJcblwiMzgsNTAsNTZcIjtcblxuJHBhbGV0dGUtYmx1ZS1ncmV5LTUwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCAxKTtcbiRwYWxldHRlLWJsdWUtZ3JleS0xMDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDIpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTIwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgMyk7XG4kcGFsZXR0ZS1ibHVlLWdyZXktMzAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCA0KTtcbiRwYWxldHRlLWJsdWUtZ3JleS00MDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDUpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTUwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgNik7XG4kcGFsZXR0ZS1ibHVlLWdyZXktNjAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCA3KTtcbiRwYWxldHRlLWJsdWUtZ3JleS03MDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDgpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTgwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgOSk7XG4kcGFsZXR0ZS1ibHVlLWdyZXktOTAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCAxMCk7XG5cbiRjb2xvci1ibGFjazogXCIwLDAsMFwiO1xuJGNvbG9yLXdoaXRlOiBcIjI1NSwyNTUsMjU1XCI7XG5cblxuLyogY29sb3JzLnNjc3MgKi9cbiRzdHlsZWd1aWRlLWdlbmVyYXRlLXRlbXBsYXRlOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVGhlIHR3byBwb3NzaWJsZSBjb2xvcnMgZm9yIG92ZXJsYXllZCB0ZXh0LlxuJGNvbG9yLWRhcmstY29udHJhc3Q6ICRjb2xvci13aGl0ZSAhZGVmYXVsdDtcbiRjb2xvci1saWdodC1jb250cmFzdDogJGNvbG9yLWJsYWNrICFkZWZhdWx0O1xuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXRzKCRudW1iZXIpIHtcbiAgQHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XG59XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gTWF0ZXJpYWwgRGVzaWduIExpdGUncyBtaXhpbnNcbkBpbXBvcnQgXCJtZGwvbWl4aW5zXCI7XG5cblxuLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFRleHQgb3ZlcmZsb3dcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5AbWl4aW4gc2hhZG93LTJkcC1ib3R0b20oKSB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgM3B4IDVweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KTtcbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIFR5cG9ncmFwaHkgKi9cblxuQG1peGluIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaWYgJHVzZVByZWZlcnJlZCB7XG4gICAgZm9udC1mYW1pbHk6ICRwcmVmZXJyZWRfZm9udDtcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1kaXNwbGF5LTQoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMTEycHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuNTQ7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tZGlzcGxheS0zKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDU2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuNTQ7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tZGlzcGxheS0yKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDQ1cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiA0OHB4O1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC41NDtcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1kaXNwbGF5LTEoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMzRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjU0O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWhlYWRsaW5lKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC44NztcbiAgfVxufVxuXG5AbWl4aW4gdHlwby10aXRsZSgkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuODc7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tc3ViaGVhZCgkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuODc7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tc3ViaGVhZC0yKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC44NztcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1ib2R5LTIoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiBmYWxzZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIEBpZiAkdXNlUHJlZmVycmVkIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9IEBlbHNlIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWJvZHktMSgkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC44NztcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1jYXB0aW9uKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjU0O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWJsb2NrcXVvdGUoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuXG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTAuNWVtO1xuICAgIGNvbnRlbnQ6ICfigJwnO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJ+KAnSc7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjA1ZW07XG4gIH1cblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuNTQ7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tbWVudSgkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWJ1dHRvbigkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWljb24oKSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi8qIFNoYWRvd3MgKi9cblxuLy8gRm9jdXMgc2hhZG93IG1peGluLlxuQG1peGluIGZvY3VzLXNoYWRvdygpIHtcbiAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsMCwwLC4xOCksMCA4cHggMTZweCByZ2JhKDAsMCwwLC4zNik7XG59XG5cbkBtaXhpbiBzaGFkb3ctMmRwKCkge1xuICBib3gtc2hhZG93OiAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXBlbnVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsICRzaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSk7XG59XG5AbWl4aW4gc2hhZG93LTNkcCgpIHtcbiAgYm94LXNoYWRvdzogMCAzcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAzcHggM3B4IC0ycHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAxcHggOHB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpO1xufVxuQG1peGluIHNoYWRvdy00ZHAoKSB7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDVweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgMXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsICRzaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eSk7XG59XG5AbWl4aW4gc2hhZG93LTZkcCgpIHtcbiAgYm94LXNoYWRvdzogMCA2cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgMXB4IDE4cHggMCByZ2JhKDAsIDAsIDAsICRzaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgM3B4IDVweCAtMXB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eSk7XG59XG5AbWl4aW4gc2hhZG93LThkcCgpIHtcbiAgYm94LXNoYWRvdzogMCA4cHggMTBweCAxcHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAzcHggMTRweCAycHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDVweCA1cHggLTNweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpO1xufVxuXG5AbWl4aW4gc2hhZG93LTE2ZHAoKSB7XG4gIGJveC1zaGFkb3c6IDAgMTZweCAyNHB4IDJweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXBlbnVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwICA2cHggMzBweCA1cHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwICA4cHggMTBweCAtNXB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eSk7XG59XG5cbkBtaXhpbiBzaGFkb3ctMjRkcCgpIHtcbiAgYm94LXNoYWRvdzogMCAgOXB4IDQ2cHggIDhweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXBlbnVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDExcHggMTVweCAtN3B4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAyNHB4IDM4cHggIDNweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpO1xufVxuXG4vKiBBbmltYXRpb25zICovXG5cbkBtaXhpbiBtYXRlcmlhbC1hbmltYXRpb24tZmFzdC1vdXQtc2xvdy1pbigkZHVyYXRpb246MC4ycykge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkYW5pbWF0aW9uLWN1cnZlLWZhc3Qtb3V0LXNsb3ctaW47XG59XG5cbkBtaXhpbiBtYXRlcmlhbC1hbmltYXRpb24tbGluZWFyLW91dC1zbG93LWluKCRkdXJhdGlvbjowLjJzKSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRhbmltYXRpb24tY3VydmUtbGluZWFyLW91dC1zbG93LWluO1xufVxuXG5AbWl4aW4gbWF0ZXJpYWwtYW5pbWF0aW9uLWZhc3Qtb3V0LWxpbmVhci1pbigkZHVyYXRpb246MC4ycykge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkYW5pbWF0aW9uLWN1cnZlLWZhc3Qtb3V0LWxpbmVhci1pbjtcbn1cblxuQG1peGluIG1hdGVyaWFsLWFuaW1hdGlvbi1kZWZhdWx0KCRkdXJhdGlvbjowLjJzKSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRhbmltYXRpb24tY3VydmUtZGVmYXVsdDtcbn1cblxuLyogRGlhbG9nICovXG5cbkBtaXhpbiBkaWFsb2ctd2lkdGgoJHVuaXRzOjUpIHtcbiAgQGlmKHR5cGVfb2YoJHVuaXRzKSAhPSAnbnVtYmVyJykge1xuICAgIEBlcnJvciBcIlRoZSB1bml0IGdpdmVuIHRvIGRpYWxvZy13aWR0aCBzaG91bGQgYmUgYSBudW1iZXIuXCI7XG4gIH1cbiAgLy8gNTZkcCBpcyB0aGUgYmFzZSB1bml0IHdpZHRoIGZvciBEaWFsb2dzLlxuICAvLyBXaXRoIDUgdW5pdHMgYmVpbmcgdGhlIG51bWJlciBvZiB1bml0cyBmb3IgYSBtb2JpbGUgZGV2aWNlLlxuICAvLyBodHRwczovL2dvby5nbC9zSzJPNW9cbiAgd2lkdGg6ICR1bml0cyAqIDU2cHg7XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKiBNYXRlcmlhbCBEZXNpZ24gTGl0ZSAqL1xuXG4vLyBWYXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuXG4vLyBSZXNldHMgYW5kIGRlcGVuZGVuY2llc1xuQGltcG9ydCBcInJlc2V0cy9yZXNldHNcIjtcbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5L3R5cG9ncmFwaHlcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcInBhbGV0dGUvcGFsZXR0ZVwiO1xuQGltcG9ydCBcInJpcHBsZS9yaXBwbGVcIjtcbkBpbXBvcnQgXCJhbmltYXRpb24vYW5pbWF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2UvYmFkZ2VcIjtcbkBpbXBvcnQgXCJidXR0b24vYnV0dG9uXCI7XG5AaW1wb3J0IFwiY2FyZC9jYXJkXCI7XG5AaW1wb3J0IFwiY2hlY2tib3gvY2hlY2tib3hcIjtcbkBpbXBvcnQgXCJkYXRhLXRhYmxlL2RhdGEtdGFibGVcIjtcbkBpbXBvcnQgXCJkaWFsb2cvZGlhbG9nXCI7XG5AaW1wb3J0IFwiZm9vdGVyL21lZ2FfZm9vdGVyXCI7XG5AaW1wb3J0IFwiZm9vdGVyL21pbmlfZm9vdGVyXCI7XG5AaW1wb3J0IFwiaWNvbi10b2dnbGUvaWNvbi10b2dnbGVcIjtcbkBpbXBvcnQgXCJsaXN0L2xpc3RcIjtcbkBpbXBvcnQgXCJtZW51L21lbnVcIjtcbkBpbXBvcnQgXCJwcm9ncmVzcy9wcm9ncmVzc1wiO1xuQGltcG9ydCBcImxheW91dC9sYXlvdXRcIjtcbkBpbXBvcnQgXCJyYWRpby9yYWRpb1wiO1xuQGltcG9ydCBcInNsaWRlci9zbGlkZXJcIjtcbkBpbXBvcnQgXCJzbmFja2Jhci9zbmFja2JhclwiO1xuQGltcG9ydCBcInNwaW5uZXIvc3Bpbm5lclwiO1xuQGltcG9ydCBcInN3aXRjaC9zd2l0Y2hcIjtcbkBpbXBvcnQgXCJ0YWJzL3RhYnNcIjtcbkBpbXBvcnQgXCJ0ZXh0ZmllbGQvdGV4dGZpZWxkXCI7XG5AaW1wb3J0IFwidG9vbHRpcC90b29sdGlwXCI7XG5AaW1wb3J0IFwic2hhZG93L3NoYWRvd1wiO1xuQGltcG9ydCBcImdyaWQvZ3JpZFwiO1xuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAkQ09OVEVOVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIFNUWUxFIEdVSURFIFZBUklBQkxFUy0tLS0tLS0tLS0tLS0tLS0tLURlY2xhcmF0aW9ucyBvZiBTYXNzIHZhcmlhYmxlc1xuICogLS0tLS1UeXBvZ3JhcGh5XG4gKiAtLS0tLUNvbG9yc1xuICogLS0tLS1UZXh0ZmllbGRcbiAqIC0tLS0tU3dpdGNoXG4gKiAtLS0tLVNwaW5uZXJcbiAqIC0tLS0tUmFkaW9cbiAqIC0tLS0tTWVudVxuICogLS0tLS1MaXN0XG4gKiAtLS0tLUxheW91dFxuICogLS0tLS1JY29uIHRvZ2dsZXNcbiAqIC0tLS0tRm9vdGVyXG4gKiAtLS0tLUNvbHVtblxuICogLS0tLS1DaGVja2JveFxuICogLS0tLS1DYXJkXG4gKiAtLS0tLUJ1dHRvblxuICogLS0tLS1BbmltYXRpb25cbiAqIC0tLS0tUHJvZ3Jlc3NcbiAqIC0tLS0tQmFkZ2VcbiAqIC0tLS0tU2hhZG93c1xuICogLS0tLS1HcmlkXG4gKiAtLS0tLURhdGEgdGFibGVcbiAqIC0tLS0tRGlhbG9nXG4gKiAtLS0tLVNuYWNrYmFyXG4gKlxuICogRXZlbiB0aG91Z2ggYWxsIHZhcmlhYmxlcyBoYXZlIHRoZSBgIWRlZmF1bHRgIGRpcmVjdGl2ZSwgbW9zdCBvZiB0aGVtXG4gKiBzaG91bGQgbm90IGJlIGNoYW5nZWQgYXMgdGhleSBhcmUgZGVwZW5kZW50IG9uZSBhbm90aGVyLiBUaGlzIGNhbiBjYXVzZVxuICogdmlzdWFsIGRpc3RvcnRpb25zIChsaWtlIGFsaWdubWVudCBpc3N1ZXMpIHRoYXQgYXJlIGhhcmQgdG8gdHJhY2sgZG93blxuICogYW5kIGZpeC5cbiAqL1xuXG5cbi8qID09PT09PT09PT0gIFRZUE9HUkFQSFkgID09PT09PT09PT0gKi9cblxuLyogV2UncmUgc3BsaXR0aW5nIGZvbnRzIGludG8gXCJwcmVmZXJyZWRcIiBhbmQgXCJwZXJmb3JtYW5jZVwiIGluIG9yZGVyIHRvIG9wdGltaXplXG4gICBwYWdlIGxvYWRpbmcuIEZvciBpbXBvcnRhbnQgdGV4dCwgc3VjaCBhcyB0aGUgYm9keSwgd2Ugd2FudCBpdCB0byBsb2FkXG4gICBpbW1lZGlhdGVseSBhbmQgbm90IHdhaXQgZm9yIHRoZSB3ZWIgZm9udCBsb2FkLCB3aGVyZWFzIGZvciBvdGhlciBzZWN0aW9ucyxcbiAgIHN1Y2ggYXMgaGVhZGVycyBhbmQgdGl0bGVzLCB3ZSdyZSBPSyB3aXRoIHRoaW5ncyB0YWtpbmcgYSBiaXQgbG9uZ2VyIHRvIGxvYWQuXG4gICBXZSBkbyBoYXZlIHNvbWUgb3B0aW9uYWwgY2xhc3NlcyBhbmQgcGFyYW1ldGVycyBpbiB0aGUgbWl4aW5zLCBpbiBjYXNlIHlvdVxuICAgZGVmaW5pdGVseSB3YW50IHRvIG1ha2Ugc3VyZSB5b3UncmUgdXNpbmcgdGhlIHByZWZlcnJlZCBmb250IGFuZCBkb24ndCBtaW5kXG4gICB0aGUgcGVyZm9ybWFuY2UgaGl0LlxuICAgV2Ugc2hvdWxkIGJlIGFibGUgdG8gaW1wcm92ZSBvbiB0aGlzIG9uY2UgQ1NTIEZvbnQgTG9hZGluZyBMMyBiZWNvbWVzIG1vcmVcbiAgIHdpZGVseSBhdmFpbGFibGUuXG4qL1xuJHByZWZlcnJlZF9mb250OiAnUm9ib3RvJywgJ0hlbHZldGljYScsICdBcmlhbCcsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kcGVyZm9ybWFuY2VfZm9udDogJ0hlbHZldGljYScsICdBcmlhbCcsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIENPTE9SUyAgPT09PT09PT09PSAqL1xuXG4vKipcbipcbiogTWF0ZXJpYWwgZGVzaWduIGNvbG9yIHBhbGV0dGVzLlxuKiBAc2VlIGh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9kZXNpZ24vc3BlYy9zdHlsZS9jb2xvci5odG1sXG4qXG4qKi9cblxuQGltcG9ydCBcImNvbG9yLWRlZmluaXRpb25zXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5cbi8qID09PT09PT09PT0gIElNQUdFUyAgPT09PT09PT09PSAqL1xuJGltYWdlX3BhdGg6ICcvaW1hZ2VzJyAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgQ29sb3IgJiBUaGVtZXMgID09PT09PT09PT0gKi9cblxuLy8gRGVmaW5lIHdoZXRoZXIgaW5kaXZpZHVhbCBjb2xvciBwYWxldHRlIGl0ZW1zIHNob3VsZCBoYXZlIGNsYXNzZXMgY3JlYXRlZC5cbi8vIFNldHRpbmcgdGhpcyB0byB0cnVlIHdpbGwgcmVtb3ZlIGluZGl2aWR1YWwgY29sb3IgY2xhc3NlcyBmb3IgZWFjaCBjb2xvciBpbiB0aGUgcGFsZXR0ZXMuXG4vLyBUbyBpbXByb3ZlIG92ZXJhbGwgcGVyZm9ybWFuY2UgKGFzc3VtaW5nIHRoZXkgYXJlbid0IHVzZWQpIGJ5OlxuLy8gKiBTYXZpbmcgc2VydmVyIGJhbmR3aWR0aCBzZW5kaW5nIHRoZSBleHRyYSBjbGFzc2VzXG4vLyAqIFNhdmUgY2xpZW50IGNvbXB1dGF0aW9uIGFnYWluc3QgdGhlIGNsYXNzZXNcbi8vIGl0IGlzIFJFQ09NTUVOREVEIHlvdSBzZXQgdGhpcyB0byB0cnVlLlxuJHRyaW0tY29sb3ItY2xhc3NlczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFVzZSBjb2xvciBwcmltYXJpbHkgZm9yIGVtcGhhc2lzLiBDaG9vc2UgY29sb3JzIHRoYXQgZml0IHdpdGhcbi8vIHlvdXIgYnJhbmQgYW5kIHByb3ZpZGUgZ29vZCBjb250cmFzdCBiZXR3ZWVuIHZpc3VhbCBjb21wb25lbnRzLlxuJGNvbG9yLXByaW1hcnk6ICRwYWxldHRlLWluZGlnby01MDAgIWRlZmF1bHQ7XG4kY29sb3ItcHJpbWFyeS1kYXJrOiAkcGFsZXR0ZS1pbmRpZ28tNzAwICFkZWZhdWx0O1xuJGNvbG9yLWFjY2VudDogJHBhbGV0dGUtcGluay1BMjAwICFkZWZhdWx0O1xuXG4vLyBPdXIgcHJpbWFyeSBpcyBkYXJrLCBzbyB1c2UgJGNvbG9yLWRhcmstY29udHJhc3QgZm9yIG92ZXJsYWlkIHRleHQuXG4kY29sb3ItcHJpbWFyeS1jb250cmFzdDogJGNvbG9yLWRhcmstY29udHJhc3QgIWRlZmF1bHQ7XG4vLyBPdXIgYWNjZW50IGlzIGRhcmssIHNvIHVzZSAkY29sb3ItZGFyay1jb250cmFzdCBmb3Igb3ZlcmxhaWQgdGV4dC5cbiRjb2xvci1hY2NlbnQtY29udHJhc3Q6ICRjb2xvci1kYXJrLWNvbnRyYXN0ICFkZWZhdWx0O1xuXG4vLyBSZXBsYWNlIGFsbCBjb2xvcnMgd2l0aCBwbGFjZWhvbGRlcnMgaWYgd2UncmUgZ2VuZXJhdGluZyBhIHRlbXBsYXRlLlxuQGlmICRzdHlsZWd1aWRlLWdlbmVyYXRlLXRlbXBsYXRlID09IHRydWUge1xuICAkY29sb3ItcHJpbWFyeTogJyRjb2xvci1wcmltYXJ5JztcbiAgJGNvbG9yLXByaW1hcnktZGFyazogJyRjb2xvci1wcmltYXJ5LWRhcmsnO1xuICAkY29sb3ItYWNjZW50OiAnJGNvbG9yLWFjY2VudCc7XG4gICRjb2xvci1wcmltYXJ5LWNvbnRyYXN0OiAnJGNvbG9yLXByaW1hcnktY29udHJhc3QnO1xuICAkY29sb3ItYWNjZW50LWNvbnRyYXN0OiAnJGNvbG9yLWFjY2VudC1jb250cmFzdCc7XG59XG5cbi8qID09PT09PT09PT0gIFR5cG9ncmFwaHkgID09PT09PT09PT0gKi9cblxuLy8gV2UgdXNlIHRoZSBmb2xsb3dpbmcgZGVmYXVsdCBjb2xvciBzdHlsZXM6IHRleHQtY29sb3ItcHJpbWFyeSBhbmRcbi8vIHRleHQtY29sb3Itc2Vjb25kYXJ5LiBGb3IgbGlnaHQgdGhlbWVzLCB1c2UgdGV4dC1jb2xvci1wcmltYXJ5LWludmVyc2Vcbi8vIGFuZCB0ZXh0LWNvbG9yLXNlY29uZGFyeS1pbnZlcnNlLlxuXG4kdGV4dC1jb2xvci1wcmltYXJ5OiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuODcpXCIpICFkZWZhdWx0O1xuJHRleHQtbGluay1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhZGVmYXVsdDtcblxuLy8gRGVmaW5lIHdoZXRoZXIgdG8gdGFyZ2V0IGVsZW1lbnRzIGRpcmVjdGx5IGZvciB0eXBvZ3JhcGhpYyBlbmhhbmNlbWVudHMuXG4vLyBUdXJuaW5nIHRoaXMgb2ZmIG1lYW5zIHlvdSBuZWVkIHRvIHVzZSBtZGwtKiBjbGFzc2VzIG1vcmUgb2Z0ZW4uXG4vLyBPdGhlciBjb21wb25lbnRzIG1heSBhbHNvIGZhaWwgdG8gYWRoZXJlIHRvIE1EIHdpdGhvdXQgdGhlc2UgcnVsZXMuXG4vLyBJdCBpcyBzdHJvbmdseSByZWNvbW1lbmRlZCB5b3UgbGVhdmUgdGhpcyBhcyB0cnVlLlxuXG4kdGFyZ2V0LWVsZW1lbnRzLWRpcmVjdGx5OiB0cnVlICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09ICBDb21wb25lbnRzICA9PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT0gIFN0YW5kYXJkIEJ1dHRvbnMgID09PT09PT09PT0gKi9cblxuLy8gRGVmYXVsdCBidXR0b24gY29sb3JzLlxuJGJ1dHRvbi1wcmltYXJ5LWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRwYWxldHRlLWdyZXktNTAwfSwgMC4yMClcIikgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1ibGFja30pXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1ob3Zlci1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1hY3RpdmUtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JHBhbGV0dGUtZ3JleS01MDB9LCAwLjQwKVwiKSAhZGVmYXVsdDtcbiRidXR0b24tZm9jdXMtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4xMilcIikgIWRlZmF1bHQ7XG5cbi8vIENvbG9yZWQgYnV0dG9uIGNvbG9ycy5cbiRidXR0b24tcHJpbWFyeS1jb2xvci1hbHQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktY29sb3ItYWx0OiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnktY29udHJhc3R9KVwiKSAhZGVmYXVsdDtcbiRidXR0b24taG92ZXItY29sb3ItYWx0OiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcbiRidXR0b24tYWN0aXZlLWNvbG9yLWFsdDogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvY3VzLWNvbG9yLWFsdDogJGJ1dHRvbi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuLy8gUmlwcGxlIGNvbG9yIGZvciBjb2xvcmVkIHJhaXNlZCBidXR0b25zLlxuJGJ1dHRvbi1yaXBwbGUtY29sb3ItYWx0OiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnktY29udHJhc3R9KVwiKSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZWQgYnV0dG9uIGNvbG9ycy5cbiRidXR0b24tcHJpbWFyeS1jb2xvci1kaXNhYmxlZDogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjEyKVwiKSAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWNvbG9yLWRpc2FibGVkOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMjYpXCIpICFkZWZhdWx0O1xuXG4vLyBGQUIgY29sb3JzIGFuZCBzaXplcy5cbiRidXR0b24tZmFiLWNvbG9yLWFsdDogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhZGVmYXVsdDtcbiRidXR0b24tZmFiLWhvdmVyLWNvbG9yLWFsdDogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhZGVmYXVsdDtcbiRidXR0b24tZmFiLWFjdGl2ZS1jb2xvci1hbHQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50fSlcIikgIWRlZmF1bHQ7XG4kYnV0dG9uLWZhYi10ZXh0LWNvbG9yLWFsdDogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnQtY29udHJhc3R9KVwiKSAhZGVmYXVsdDtcbiRidXR0b24tZmFiLXJpcHBsZS1jb2xvci1hbHQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50LWNvbnRyYXN0fSlcIikgIWRlZmF1bHQ7XG5cbi8vIEljb24gYnV0dG9uIGNvbG9ycyBhbmQgc2l6ZXMuXG4kYnV0dG9uLWljb24tY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTcwMH0pXCIpICFkZWZhdWx0O1xuJGJ1dHRvbi1pY29uLWZvY3VzLWNvbG9yOiAkYnV0dG9uLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09ICBJY29uIFRvZ2dsZXMgID09PT09PT09PT0gKi9cblxuJGljb24tdG9nZ2xlLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS03MDB9KVwiKSAhZGVmYXVsdDtcbiRpY29uLXRvZ2dsZS1mb2N1cy1jb2xvcjogJGJ1dHRvbi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcbiRpY29uLXRvZ2dsZS1jaGVja2VkLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcbiRpY29uLXRvZ2dsZS1jaGVja2VkLWZvY3VzLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1wcmltYXJ5fSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kaWNvbi10b2dnbGUtZGlzYWJsZWQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4yNilcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIFJhZGlvIEJ1dHRvbnMgID09PT09PT09PT0gKi9cblxuJHJhZGlvLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcbiRyYWRpby1vZmYtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC41NClcIikgIWRlZmF1bHQ7XG4kcmFkaW8tZGlzYWJsZWQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4yNilcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIFJpcHBsZSBlZmZlY3QgID09PT09PT09PT0gKi9cblxuJHJpcHBsZS1iZy1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1saWdodC1jb250cmFzdH0pXCIpICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09ICBMYXlvdXQgID09PT09PT09PT0gKi9cblxuJGxheW91dC1uYXYtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTMwMH0pXCIpICFkZWZhdWx0O1xuXG4vLyBEcmF3ZXJcbiRsYXlvdXQtZHJhd2VyLWJnLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS01MH0pXCIpICFkZWZhdWx0O1xuJGxheW91dC1kcmF3ZXItYm9yZGVyLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS0zMDB9KVwiKSAhZGVmYXVsdDtcbiRsYXlvdXQtdGV4dC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktODAwfSlcIikgIWRlZmF1bHQ7XG4kbGF5b3V0LWRyYXdlci1uYXZpZ2F0aW9uLWNvbG9yOiAjNzU3NTc1ICFkZWZhdWx0O1xuJGxheW91dC1kcmF3ZXItbmF2aWdhdGlvbi1saW5rLWFjdGl2ZS1iYWNrZ3JvdW5kOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWxpZ2h0LWNvbnRyYXN0fSlcIikgIWRlZmF1bHQ7XG4kbGF5b3V0LWRyYXdlci1uYXZpZ2F0aW9uLWxpbmstYWN0aXZlLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS0zMDB9KVwiKSAhZGVmYXVsdDtcblxuLy8gSGVhZGVyXG4kbGF5b3V0LWhlYWRlci1iZy1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG4kbGF5b3V0LWhlYWRlci10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnktY29udHJhc3R9KVwiKSAhZGVmYXVsdDtcbiRsYXlvdXQtaGVhZGVyLW5hdi1ob3Zlci1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skcGFsZXR0ZS1ncmV5LTcwMH0sIDAuNilcIikgIWRlZmF1bHQ7XG4kbGF5b3V0LWhlYWRlci10YWItdGV4dC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItcHJpbWFyeS1jb250cmFzdH0sIDAuNilcIikgIWRlZmF1bHQ7XG5cbi8vIFRhYnNcbiRsYXlvdXQtaGVhZGVyLXRhYi1oaWdobGlnaHQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50fSlcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIENvbnRlbnQgVGFicyAgPT09PT09PT09PSAqL1xuXG4kdGFiLWhpZ2hsaWdodC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG4kdGFiLXRleHQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC41NClcIikgIWRlZmF1bHQ7XG4kdGFiLWFjdGl2ZS10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuODcpXCIpICFkZWZhdWx0O1xuJHRhYi1ib3JkZXItY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTMwMH0pXCIpICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09ICBDaGVja2JveGVzICA9PT09PT09PT09ICovXG5cbiRjaGVja2JveC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG4kY2hlY2tib3gtb2ZmLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuNTQpXCIpICFkZWZhdWx0O1xuJGNoZWNrYm94LWRpc2FibGVkLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMjYpXCIpICFkZWZhdWx0O1xuJGNoZWNrYm94LWZvY3VzLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1wcmltYXJ5fSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kY2hlY2tib3gtaW1hZ2UtcGF0aDogJGltYWdlX3BhdGg7XG5cbi8qID09PT09PT09PT0gIFN3aXRjaGVzICA9PT09PT09PT09ICovXG5cbiRzd2l0Y2gtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFkZWZhdWx0O1xuJHN3aXRjaC1mYWRlZC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItcHJpbWFyeX0sIDAuMjYpXCIpICFkZWZhdWx0O1xuJHN3aXRjaC10aHVtYi1jb2xvcjogJHN3aXRjaC1jb2xvciAhZGVmYXVsdDtcbiRzd2l0Y2gtdHJhY2stY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLXByaW1hcnl9LCAwLjUpXCIpICFkZWZhdWx0O1xuXG4kc3dpdGNoLW9mZi10aHVtYi1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNTB9KVwiKSAhZGVmYXVsdDtcbiRzd2l0Y2gtb2ZmLXRyYWNrLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMjYpXCIpICFkZWZhdWx0O1xuJHN3aXRjaC1kaXNhYmxlZC10aHVtYi1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNDAwfSlcIikgIWRlZmF1bHQ7XG4kc3dpdGNoLWRpc2FibGVkLXRyYWNrLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMTIpXCIpICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09ICBTcGlubmVyICA9PT09PT09PT09ICovXG5cbiRzcGlubmVyLWNvbG9yLTE6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTQwMH0pXCIpICFkZWZhdWx0O1xuJHNwaW5uZXItY29sb3ItMjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC01MDB9KVwiKSAhZGVmYXVsdDtcbiRzcGlubmVyLWNvbG9yLTM6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNjAwfSlcIikgIWRlZmF1bHQ7XG4kc3Bpbm5lci1jb2xvci00OiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tNTAwfSlcIikgIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXNpbmdsZS1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIFRleHQgZmllbGRzICA9PT09PT09PT09ICovXG5cbiRpbnB1dC10ZXh0LWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGlucHV0LXRleHQtbGFiZWwtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kaW5wdXQtdGV4dC1ib3R0b20tYm9yZGVyLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMTIpXCIpICFkZWZhdWx0O1xuJGlucHV0LXRleHQtaGlnaGxpZ2h0LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKSAhZGVmYXVsdDtcbiRpbnB1dC10ZXh0LWRpc2FibGVkLWNvbG9yOiAkaW5wdXQtdGV4dC1ib3R0b20tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LXRleHQtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGlucHV0LXRleHQtbGFiZWwtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtdGV4dC1lcnJvci1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC1BNzAwfSlcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIENhcmQgID09PT09PT09PT0gKi9cblxuJGNhcmQtYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci13aGl0ZX0pXCIpICFkZWZhdWx0O1xuJGNhcmQtdGV4dC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1ibGFja30pXCIpICFkZWZhdWx0O1xuJGNhcmQtaW1hZ2UtcGxhY2Vob2xkZXItY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50fSlcIikgIWRlZmF1bHQ7XG4kY2FyZC1zdXBwb3J0aW5nLXRleHQtdGV4dC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjU0KVwiKSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogcmdiYSgwLDAsMCwwLjEpICFkZWZhdWx0O1xuJGNhcmQtc3VidGl0bGUtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC41NClcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIFNsaWRlcnMgPT09PT09PT09PSAqL1xuXG4kcmFuZ2UtYmctY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kcmFuZ2UtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFkZWZhdWx0O1xuJHJhbmdlLWZhZGVkLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1wcmltYXJ5fSwgMC4yNilcIikgIWRlZmF1bHQ7XG4kcmFuZ2UtYmctZm9jdXMtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4xMilcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gUHJvZ3Jlc3MgPT09PT09PT09PSAqL1xuJHByb2dyZXNzLW1haW4tY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLXNlY29uZGFyeS1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItcHJpbWFyeS1jb250cmFzdH0sIDAuNylcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZmFsbGJhY2stYnVmZmVyLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1wcmltYXJ5LWNvbnRyYXN0fSwgMC45KVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1pbWFnZS1wYXRoOiAkaW1hZ2VfcGF0aDtcblxuLyogPT09PT09PT09PSAgTGlzdCA9PT09PT09PT09ICovXG5cbiRsaXN0LW1haW4tdGV4dC10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuODcpXCIpICFkZWZhdWx0O1xuJGxpc3Qtc3VwcG9ydGluZy10ZXh0LXRleHQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC41NClcIikgIWRlZmF1bHQ7XG4kbGlzdC1pY29uLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS02MDB9KVwiKSAhZGVmYXVsdDtcbiRsaXN0LWF2YXRhci1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIEl0ZW0gPT09PT09PT09PSAqL1xuXG4vLyBEZWZhdWx0IEl0ZW0gQ29sb3JzXG4kZGVmYXVsdC1pdGVtLXRleHQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC44NylcIikgIWRlZmF1bHQ7XG4kZGVmYXVsdC1pdGVtLW91dGxpbmUtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTQwMH0pXCIpICFkZWZhdWx0O1xuJGRlZmF1bHQtaXRlbS1ob3Zlci1iZy1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktMjAwfSlcIikgIWRlZmF1bHQ7XG4kZGVmYXVsdC1pdGVtLWZvY3VzLWJnLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS0yMDB9KVwiKSAhZGVmYXVsdDtcbiRkZWZhdWx0LWl0ZW0tYWN0aXZlLWJnLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS0zMDB9KVwiKSAhZGVmYXVsdDtcbiRkZWZhdWx0LWl0ZW0tZGl2aWRlci1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjEyKVwiKSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZWQgQnV0dG9uIENvbG9yc1xuJGRpc2FibGVkLWl0ZW0tdGV4dC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNDAwfSlcIikgIWRlZmF1bHQ7XG5cbi8qID09PT09PT09PT0gIERyb3Bkb3duIG1lbnUgPT09PT09PT09PSAqL1xuXG4kZGVmYXVsdC1kcm9wZG93bi1iZy1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci13aGl0ZX0pXCIpICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09ICBUb29sdGlwcyAgPT09PT09PT09PSAqL1xuXG4kdG9vbHRpcC10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXdoaXRlfSlcIikgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRwYWxldHRlLWdyZXktNzAwfSwgMC45KVwiKSAhZGVmYXVsdDtcblxuLyogPT09PT09PT09PSAgRm9vdGVyICA9PT09PT09PT09ICovXG5cbiRmb290ZXItYmctY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTgwMH0pXCIpICFkZWZhdWx0O1xuJGZvb3Rlci1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNTAwfSlcIikgIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTMwMH0pXCIpICFkZWZhdWx0O1xuJGZvb3Rlci1idXR0b24tZmlsbC1jb2xvcjogJGZvb3Rlci1jb2xvciAhZGVmYXVsdDtcbiRmb290ZXItdW5kZXJsaW5lLWNvbG9yOiAkZm9vdGVyLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8qIFRFWFRGSUVMRCAqL1xuXG4kaW5wdXQtdGV4dC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kaW5wdXQtdGV4dC13aWR0aDogMTAwJSAhZGVmYXVsdDtcbiRpbnB1dC10ZXh0LXBhZGRpbmc6IDRweCAhZGVmYXVsdDtcbiRpbnB1dC10ZXh0LXZlcnRpY2FsLXNwYWNpbmc6IDIwcHggIWRlZmF1bHQ7XG5cbiRpbnB1dC10ZXh0LWJ1dHRvbi1zaXplOiAzMnB4ICFkZWZhdWx0O1xuJGlucHV0LXRleHQtZmxvYXRpbmctbGFiZWwtZm9udHNpemU6IDEycHggIWRlZmF1bHQ7XG4kaW5wdXQtdGV4dC1leHBhbmRhYmxlLWljb24tdG9wOiAxNnB4ICFkZWZhdWx0O1xuXG5cbi8qIFNXSVRDSCAqL1xuXG4kc3dpdGNoLWxhYmVsLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcbiRzd2l0Y2gtbGFiZWwtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuJHN3aXRjaC10cmFjay1oZWlnaHQ6IDE0cHggIWRlZmF1bHQ7XG4kc3dpdGNoLXRyYWNrLWxlbmd0aDogMzZweCAhZGVmYXVsdDtcbiRzd2l0Y2gtdGh1bWItc2l6ZTogMjBweCAhZGVmYXVsdDtcbiRzd2l0Y2gtdHJhY2stdG9wOiAoJHN3aXRjaC1sYWJlbC1oZWlnaHQgLSAkc3dpdGNoLXRyYWNrLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuJHN3aXRjaC10aHVtYi10b3A6ICgkc3dpdGNoLWxhYmVsLWhlaWdodCAtICRzd2l0Y2gtdGh1bWItc2l6ZSkgLyAyICFkZWZhdWx0O1xuJHN3aXRjaC1yaXBwbGUtc2l6ZTogJHN3aXRjaC1sYWJlbC1oZWlnaHQgKiAyICFkZWZhdWx0O1xuJHN3aXRjaC1oZWxwZXItc2l6ZTogOHB4ICFkZWZhdWx0O1xuXG4vKiBTUElOTkVSICovXG5cbiRzcGlubmVyLXNpemU6IDI4cHggIWRlZmF1bHQ7XG4kc3Bpbm5lci1zdHJva2Utd2lkdGg6IDNweCAhZGVmYXVsdDtcblxuLy8gQW1vdW50IG9mIGNpcmNsZSB0aGUgYXJjIHRha2VzIHVwLlxuJHNwaW5uZXItYXJjLXNpemU6IDI3MGRlZyAhZGVmYXVsdDtcbi8vIFRpbWUgaXQgdGFrZXMgdG8gZXhwYW5kIGFuZCBjb250cmFjdCBhcmMuXG4kc3Bpbm5lci1hcmMtdGltZTogMTMzM21zICFkZWZhdWx0O1xuLy8gSG93IG11Y2ggdGhlIHN0YXJ0IGxvY2F0aW9uIG9mIHRoZSBhcmMgc2hvdWxkIHJvdGF0ZSBlYWNoIHRpbWUuXG4kc3Bpbm5lci1hcmMtc3RhcnQtcm90OiAyMTZkZWcgIWRlZmF1bHQ7XG5cbiRzcGlubmVyLWR1cmF0aW9uOiAzNjAgKiAkc3Bpbm5lci1hcmMtdGltZSAvIChcbiAgICBzdHJpcC11bml0cygkc3Bpbm5lci1hcmMtc3RhcnQtcm90ICsgKDM2MGRlZyAtICRzcGlubmVyLWFyYy1zaXplKSkpO1xuXG5cbi8qIFJBRElPICovXG5cbiRyYWRpby1sYWJlbC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kcmFkaW8tbGFiZWwtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuJHJhZGlvLWJ1dHRvbi1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJHJhZGlvLWlubmVyLW1hcmdpbjogJHJhZGlvLWJ1dHRvbi1zaXplIC8gNDtcbiRyYWRpby1wYWRkaW5nOiA4cHggIWRlZmF1bHQ7XG4kcmFkaW8tdG9wLW9mZnNldDogKCRyYWRpby1sYWJlbC1oZWlnaHQgLSAkcmFkaW8tYnV0dG9uLXNpemUpIC8gMjtcbiRyYWRpby1yaXBwbGUtc2l6ZTogNDJweCAhZGVmYXVsdDtcblxuXG4vKiBNRU5VICovXG5cbiRtZW51LWV4cGFuZC1kdXJhdGlvbjogMC4zcyAhZGVmYXVsdDtcbiRtZW51LWZhZGUtZHVyYXRpb246IDAuMnMgIWRlZmF1bHQ7XG5cbi8qIExJU1QgKi9cblxuJGxpc3QtYm9yZGVyOiA4cHggIWRlZmF1bHQ7XG4kbGlzdC1taW4taGVpZ2h0OiA0OHB4ICFkZWZhdWx0O1xuJGxpc3QtbWluLXBhZGRpbmc6IDE2cHggIWRlZmF1bHQ7XG4kbGlzdC1ib3R0b20tcGFkZGluZzogMjBweCAhZGVmYXVsdDtcbiRsaXN0LWF2YXRhci10ZXh0LWxlZnQtZGlzdGFuY2U6IDcycHggIWRlZmF1bHQ7XG4kbGlzdC1pY29uLXRleHQtbGVmdC1kaXN0YW5jZTogNzJweCAhZGVmYXVsdDtcblxuJGxpc3QtYXZhdGFyLXNpemU6IDQwcHggIWRlZmF1bHQ7XG4kbGlzdC1pY29uLXNpemU6IDI0cHggIWRlZmF1bHQ7XG5cbiRsaXN0LXR3by1saW5lLWhlaWdodDogNzJweCAhZGVmYXVsdDtcbiRsaXN0LXRocmVlLWxpbmUtaGVpZ2h0OiA4OHB4ICFkZWZhdWx0O1xuXG4vKiBMQVlPVVQgKi9cblxuJGxheW91dC1kcmF3ZXItbmFycm93OiAyNDBweCAhZGVmYXVsdDtcbiRsYXlvdXQtZHJhd2VyLXdpZGU6IDQ1NnB4ICFkZWZhdWx0O1xuJGxheW91dC1kcmF3ZXItd2lkdGg6ICRsYXlvdXQtZHJhd2VyLW5hcnJvdyAhZGVmYXVsdDtcblxuJGxheW91dC1oZWFkZXItaWNvbi1zaXplOiAzMnB4ICFkZWZhdWx0O1xuJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQ6IDEwMjRweCAhZGVmYXVsdDtcbiRsYXlvdXQtaGVhZGVyLWljb24tbWFyZ2luOiAyNHB4ICFkZWZhdWx0O1xuJGxheW91dC1kcmF3ZXItYnV0dG9uLW1vYmlsZS1zaXplOiAzMnB4ICFkZWZhdWx0O1xuJGxheW91dC1kcmF3ZXItYnV0dG9uLWRlc2t0b3Atc2l6ZTogNDhweCAhZGVmYXVsdDtcblxuJGxheW91dC1oZWFkZXItbW9iaWxlLXJvdy1oZWlnaHQ6IDU2cHggIWRlZmF1bHQ7XG4kbGF5b3V0LW1vYmlsZS1oZWFkZXItaGVpZ2h0OiAkbGF5b3V0LWhlYWRlci1tb2JpbGUtcm93LWhlaWdodDtcbiRsYXlvdXQtaGVhZGVyLWRlc2t0b3Atcm93LWhlaWdodDogNjRweCAhZGVmYXVsdDtcbiRsYXlvdXQtZGVza3RvcC1oZWFkZXItaGVpZ2h0OiAkbGF5b3V0LWhlYWRlci1kZXNrdG9wLXJvdy1oZWlnaHQ7XG5cbiRsYXlvdXQtaGVhZGVyLWRlc2t0b3AtYmFzZWxpbmU6IDgwcHggIWRlZmF1bHQ7XG4kbGF5b3V0LWhlYWRlci1tb2JpbGUtYmFzZWxpbmU6IDcycHggIWRlZmF1bHQ7XG4kbGF5b3V0LWhlYWRlci1tb2JpbGUtaW5kZW50OiAxNnB4ICFkZWZhdWx0O1xuJGxheW91dC1oZWFkZXItZGVza3RvcC1pbmRlbnQ6IDQwcHggIWRlZmF1bHQ7XG5cbiRsYXlvdXQtdGFiLWZvbnQtc2l6ZTogMTRweCAhZGVmYXVsdDtcbiRsYXlvdXQtdGFiLWJhci1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG4kbGF5b3V0LXRhYi1tb2JpbGUtcGFkZGluZzogMTJweCAhZGVmYXVsdDtcbiRsYXlvdXQtdGFiLWRlc2t0b3AtcGFkZGluZzogMjRweCAhZGVmYXVsdDtcbiRsYXlvdXQtdGFiLWhpZ2hsaWdodC10aGlja25lc3M6IDJweCAhZGVmYXVsdDtcblxuXG4vKiBJQ09OIFRPR0dMRSAqL1xuXG4kaWNvbi10b2dnbGUtc2l6ZTogMzJweCAhZGVmYXVsdDtcbiRpY29uLXRvZ2dsZS1mb250LXNpemU6IDI0cHggIWRlZmF1bHQ7XG4kaWNvbi10b2dnbGUtcmlwcGxlLXNpemU6IDM2cHggIWRlZmF1bHQ7XG5cbi8qIEZPT1RFUiAqL1xuXG4vKm1lZ2EtZm9vdGVyKi9cbiRmb290ZXItbWluLXBhZGRpbmc6IDE2cHggIWRlZmF1bHQ7XG4kZm9vdGVyLXBhZGRpbmctc2lkZXM6IDQwcHggIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctZm9udC1zaXplOiAxNHB4ICFkZWZhdWx0O1xuJGZvb3Rlci1oZWFkaW5nLWxpbmUtaGVpZ2h0OiAoMS43ICogJGZvb3Rlci1oZWFkaW5nLWZvbnQtc2l6ZSkgIWRlZmF1bHQ7XG4kZm9vdGVyLWJ0bi1zaXplOiAzNnB4ICAhZGVmYXVsdDtcblxuLyptaW5pLWZvb3RlciovXG4kcGFkZGluZzogMTZweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1mb250LXNpemU6IDI0cHggIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctbGluZS1oZWlnaHQ6ICgxLjUgKiAkZm9vdGVyLWhlYWRpbmctZm9udC1zaXplKSAhZGVmYXVsdDtcbiRmb290ZXItYnRuLXNpemU6IDM2cHggIWRlZmF1bHQ7XG5cbi8qIENIRUNLQk9YICovXG5cbiRjaGVja2JveC1sYWJlbC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kY2hlY2tib3gtbGFiZWwtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuJGNoZWNrYm94LWJ1dHRvbi1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJGNoZWNrYm94LWlubmVyLW1hcmdpbjogMnB4ICFkZWZhdWx0O1xuJGNoZWNrYm94LXBhZGRpbmc6IDhweCAhZGVmYXVsdDtcbiRjaGVja2JveC10b3Atb2Zmc2V0OlxuKCRjaGVja2JveC1sYWJlbC1oZWlnaHQgLSAkY2hlY2tib3gtYnV0dG9uLXNpemUgLSAkY2hlY2tib3gtaW5uZXItbWFyZ2luKSAvIDI7XG4kY2hlY2tib3gtcmlwcGxlLXNpemU6ICRjaGVja2JveC1sYWJlbC1oZWlnaHQgKiAxLjU7XG5cbi8qIENBUkQgKi9cblxuLyogQ2FyZCBkaW1lbnNpb25zICovXG4kY2FyZC13aWR0aDogMzMwcHggIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6IDIwMHB4ICFkZWZhdWx0O1xuJGNhcmQtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtZm9udC1zaXplOiAyNHB4ICFkZWZhdWx0O1xuJGNhcmQtc3VidGl0bGUtZm9udC1zaXplOiAxNHB4ICFkZWZhdWx0O1xuJGNhcmQtaG9yaXpvbnRhbC1wYWRkaW5nOiAxNnB4ICFkZWZhdWx0O1xuJGNhcmQtdmVydGljYWwtcGFkZGluZzogMTZweCAhZGVmYXVsdDtcblxuJGNhcmQtdGl0bGUtcGVyc3BlY3RpdmUtb3JpZ2luLXg6IDE2NXB4ICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtcGVyc3BlY3RpdmUtb3JpZ2luLXk6IDU2cHggIWRlZmF1bHQ7XG5cbiRjYXJkLXRpdGxlLXRyYW5zZm9ybS1vcmlnaW4teDogMTY1cHggIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS10cmFuc2Zvcm0tb3JpZ2luLXk6IDU2cHggIWRlZmF1bHQ7XG5cbiRjYXJkLXRpdGxlLXRleHQtdHJhbnNmb3JtLW9yaWdpbi14OiAxNDlweCAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXRleHQtdHJhbnNmb3JtLW9yaWdpbi15OiA0OHB4ICFkZWZhdWx0O1xuXG4kY2FyZC1zdXBwb3J0aW5nLXRleHQtZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuJGNhcmQtc3VwcG9ydGluZy10ZXh0LWxpbmUtaGVpZ2h0OiAxOHB4ICFkZWZhdWx0O1xuXG4kY2FyZC1hY3Rpb25zLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuJGNhcmQtdGl0bGUtdGV4dC1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGNhcmQtei1pbmRleDogMSAhZGVmYXVsdDtcblxuLyogQ292ZXIgaW1hZ2UgKi9cbiRjYXJkLWNvdmVyLWltYWdlLWhlaWdodDogMTg2cHggIWRlZmF1bHQ7XG4kY2FyZC1iYWNrZ3JvdW5kLWltYWdlLXVybDogJycgIWRlZmF1bHQ7XG5cblxuLyogQlVUVE9OICovXG4vKipcbiAqXG4gKiBEaW1lbnNpb25zXG4gKlxuICovXG4kYnV0dG9uLW1pbi13aWR0aDogNjRweCAhZGVmYXVsdDtcbiRidXR0b24taGVpZ2h0OiAzNnB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1wYWRkaW5nOiAxNnB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1tYXJnaW46IDRweCAhZGVmYXVsdDtcbiRidXR0b24tYm9yZGVyLXJhZGl1czogMnB4ICFkZWZhdWx0O1xuXG4kYnV0dG9uLWZhYi1zaXplOiA1NnB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1mYWItc2l6ZS1taW5pOiA0MHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1mYWItZm9udC1zaXplOiAyNHB4ICFkZWZhdWx0O1xuXG4kYnV0dG9uLWljb24tc2l6ZTogMzJweCAhZGVmYXVsdDtcbiRidXR0b24taWNvbi1zaXplLW1pbmk6IDI0cHggIWRlZmF1bHQ7XG5cblxuLyogQU5JTUFUSU9OICovXG4kYW5pbWF0aW9uLWN1cnZlLWZhc3Qtb3V0LXNsb3ctaW46IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSkgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLWN1cnZlLWxpbmVhci1vdXQtc2xvdy1pbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSkgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLWN1cnZlLWZhc3Qtb3V0LWxpbmVhci1pbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMSwgMSkgIWRlZmF1bHQ7XG5cbiRhbmltYXRpb24tY3VydmUtZGVmYXVsdDogJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluICFkZWZhdWx0O1xuXG5cbi8qIFBST0dSRVNTICovXG4kYmFyLWhlaWdodDogNHB4ICFkZWZhdWx0O1xuXG4vKiBCQURHRSAqL1xuJGJhZGdlLWZvbnQtc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnQtY29udHJhc3R9KVwiKSAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvci1pbnZlcnNlOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWFjY2VudH0pXCIpICFkZWZhdWx0O1xuJGJhZGdlLWJhY2tncm91bmQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50fSlcIikgIWRlZmF1bHQ7XG4kYmFkZ2UtYmFja2dyb3VuZC1pbnZlcnNlOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1hY2NlbnQtY29udHJhc3R9LDAuMilcIikgIWRlZmF1bHQ7XG4kYmFkZ2Utc2l6ZSA6IDIycHggIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZzogMnB4ICFkZWZhdWx0O1xuJGJhZGdlLW92ZXJsYXA6IDEycHggIWRlZmF1bHQ7XG5cbi8qIFNIQURPV1MgKi9cblxuJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eTogMC4yICFkZWZhdWx0O1xuJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eTogMC4xNCAhZGVmYXVsdDtcbiRzaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eTogMC4xMiAhZGVmYXVsdDtcblxuLyogR1JJRCAqL1xuXG4kZ3JpZC1kZXNrdG9wLWNvbHVtbnM6IDEyICFkZWZhdWx0O1xuJGdyaWQtZGVza3RvcC1ndXR0ZXI6IDE2cHggIWRlZmF1bHQ7XG4kZ3JpZC1kZXNrdG9wLW1hcmdpbjogMTZweCAhZGVmYXVsdDtcblxuJGdyaWQtZGVza3RvcC1icmVha3BvaW50OiA4NDBweCAhZGVmYXVsdDtcblxuJGdyaWQtdGFibGV0LWNvbHVtbnM6IDggIWRlZmF1bHQ7XG4kZ3JpZC10YWJsZXQtZ3V0dGVyOiAkZ3JpZC1kZXNrdG9wLWd1dHRlciAhZGVmYXVsdDtcbiRncmlkLXRhYmxldC1tYXJnaW46ICRncmlkLWRlc2t0b3AtbWFyZ2luICFkZWZhdWx0O1xuXG4kZ3JpZC10YWJsZXQtYnJlYWtwb2ludDogNDgwcHggIWRlZmF1bHQ7XG5cbiRncmlkLXBob25lLWNvbHVtbnM6IDQgIWRlZmF1bHQ7XG4kZ3JpZC1waG9uZS1ndXR0ZXI6ICRncmlkLWRlc2t0b3AtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtcGhvbmUtbWFyZ2luOiAkZ3JpZC1kZXNrdG9wLW1hcmdpbiAhZGVmYXVsdDtcblxuJGdyaWQtY2VsbC1kZWZhdWx0LWNvbHVtbnM6ICRncmlkLXBob25lLWNvbHVtbnMgIWRlZmF1bHQ7XG4kZ3JpZC1tYXgtY29sdW1uczogJGdyaWQtZGVza3RvcC1jb2x1bW5zICFkZWZhdWx0O1xuXG4vKiBEQVRBIFRBQkxFICovXG5cbiRkYXRhLXRhYmxlLWZvbnQtc2l6ZTogMTNweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWhlYWRlci1mb250LXNpemU6IDEycHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1oZWFkZXItc29ydC1pY29uLXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbiRkYXRhLXRhYmxlLWhlYWRlci1jb2xvcjogcmdiYSgjMDAwLCAwLjU0KSAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWhlYWRlci1zb3J0ZWQtY29sb3I6IHJnYmEoIzAwMCwgMC44NykgIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1oZWFkZXItc29ydGVkLWljb24taG92ZXItY29sb3I6IHJnYmEoIzAwMCwgMC4yNikgIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1kaXZpZGVyLWNvbG9yOiByZ2JhKCMwMDAsIDAuMTIpICFkZWZhdWx0O1xuXG4kZGF0YS10YWJsZS1ob3Zlci1jb2xvcjogI2VlZWVlZSAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLXNlbGVjdGlvbi1jb2xvcjogI2UwZTBlMCAhZGVmYXVsdDtcblxuJGRhdGEtdGFibGUtZGl2aWRlcnM6IDFweCBzb2xpZCAkZGF0YS10YWJsZS1kaXZpZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kZGF0YS10YWJsZS1yb3ctaGVpZ2h0OiA0OHB4ICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtbGFzdC1yb3ctaGVpZ2h0OiA1NnB4ICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtaGVhZGVyLWhlaWdodDogNTZweCAhZGVmYXVsdDtcblxuJGRhdGEtdGFibGUtY29sdW1uLXNwYWNpbmc6IDM2cHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1jb2x1bW4tcGFkZGluZzogJGRhdGEtdGFibGUtY29sdW1uLXNwYWNpbmcgLyAyO1xuXG4kZGF0YS10YWJsZS1jYXJkLWhlYWRlci1oZWlnaHQ6IDY0cHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1jYXJkLXRpdGxlLXRvcDogMjBweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWNhcmQtcGFkZGluZzogMjRweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWJ1dHRvbi1wYWRkaW5nLXJpZ2h0OiAxNnB4ICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtY2VsbC10b3A6ICRkYXRhLXRhYmxlLWNhcmQtcGFkZGluZyAvIDI7XG5cbi8qIERJQUxPRyAqL1xuJGRpYWxvZy1jb250ZW50LWNvbG9yOiAkY2FyZC1zdXBwb3J0aW5nLXRleHQtdGV4dC1jb2xvcjtcblxuLyogU05BQ0tCQVIgKi9cblxuLy8gSGFyZCBjb2RlZCBzaW5jZSB0aGUgY29sb3IgaXMgbm90IHByZXNlbnQgaW4gYW55IHBhbGV0dGUuXG4kc25hY2tiYXItYmFja2dyb3VuZC1jb2xvcjogIzMyMzIzMiAhZGVmYXVsdDtcbiRzbmFja2Jhci10YWJsZXQtYnJlYWtwb2ludDogJGdyaWQtdGFibGV0LWJyZWFrcG9pbnQ7XG4kc25hY2tiYXItYWN0aW9uLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWFjY2VudH0pXCIpICFkZWZhdWx0O1xuXG4vKiBUT09MVElQICovXG4kdG9vbHRpcC1mb250LXNpemU6IDEwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1mb250LXNpemUtbGFyZ2U6IDE0cHggIWRlZmF1bHQ7XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKiA9PT09PT09PT09ICBDb2xvciBQYWxldHRlcyAgPT09PT09PT09PSAqL1xuXG4vLyBDb2xvciBvcmRlcjogNTAsIDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDAsIEExMDAsIEEyMDAsXG4vLyBBNDAwLCBBNzAwLlxuXG4kcGFsZXR0ZS1yZWQ6XG5cIjI1NSwyMzUsMjM4XCJcblwiMjU1LDIwNSwyMTBcIlxuXCIyMzksMTU0LDE1NFwiXG5cIjIyOSwxMTUsMTE1XCJcblwiMjM5LDgzLDgwXCJcblwiMjQ0LDY3LDU0XCJcblwiMjI5LDU3LDUzXCJcblwiMjExLDQ3LDQ3XCJcblwiMTk4LDQwLDQwXCJcblwiMTgzLDI4LDI4XCJcblwiMjU1LDEzOCwxMjhcIlxuXCIyNTUsODIsODJcIlxuXCIyNTUsMjMsNjhcIlxuXCIyMTMsMCwwXCI7XG5cbiRwYWxldHRlLXJlZC01MDogbnRoKCRwYWxldHRlLXJlZCwgMSk7XG4kcGFsZXR0ZS1yZWQtMTAwOiBudGgoJHBhbGV0dGUtcmVkLCAyKTtcbiRwYWxldHRlLXJlZC0yMDA6IG50aCgkcGFsZXR0ZS1yZWQsIDMpO1xuJHBhbGV0dGUtcmVkLTMwMDogbnRoKCRwYWxldHRlLXJlZCwgNCk7XG4kcGFsZXR0ZS1yZWQtNDAwOiBudGgoJHBhbGV0dGUtcmVkLCA1KTtcbiRwYWxldHRlLXJlZC01MDA6IG50aCgkcGFsZXR0ZS1yZWQsIDYpO1xuJHBhbGV0dGUtcmVkLTYwMDogbnRoKCRwYWxldHRlLXJlZCwgNyk7XG4kcGFsZXR0ZS1yZWQtNzAwOiBudGgoJHBhbGV0dGUtcmVkLCA4KTtcbiRwYWxldHRlLXJlZC04MDA6IG50aCgkcGFsZXR0ZS1yZWQsIDkpO1xuJHBhbGV0dGUtcmVkLTkwMDogbnRoKCRwYWxldHRlLXJlZCwgMTApO1xuJHBhbGV0dGUtcmVkLUExMDA6IG50aCgkcGFsZXR0ZS1yZWQsIDExKTtcbiRwYWxldHRlLXJlZC1BMjAwOiBudGgoJHBhbGV0dGUtcmVkLCAxMik7XG4kcGFsZXR0ZS1yZWQtQTQwMDogbnRoKCRwYWxldHRlLXJlZCwgMTMpO1xuJHBhbGV0dGUtcmVkLUE3MDA6IG50aCgkcGFsZXR0ZS1yZWQsIDE0KTtcblxuJHBhbGV0dGUtcGluazpcblwiMjUyLDIyOCwyMzZcIlxuXCIyNDgsMTg3LDIwOFwiXG5cIjI0NCwxNDMsMTc3XCJcblwiMjQwLDk4LDE0NlwiXG5cIjIzNiw2NCwxMjJcIlxuXCIyMzMsMzAsOTlcIlxuXCIyMTYsMjcsOTZcIlxuXCIxOTQsMjQsOTFcIlxuXCIxNzMsMjAsODdcIlxuXCIxMzYsMTQsNzlcIlxuXCIyNTUsMTI4LDE3MVwiXG5cIjI1NSw2NCwxMjlcIlxuXCIyNDUsMCw4N1wiXG5cIjE5NywxNyw5OFwiO1xuXG4kcGFsZXR0ZS1waW5rLTUwOiBudGgoJHBhbGV0dGUtcGluaywgMSk7XG4kcGFsZXR0ZS1waW5rLTEwMDogbnRoKCRwYWxldHRlLXBpbmssIDIpO1xuJHBhbGV0dGUtcGluay0yMDA6IG50aCgkcGFsZXR0ZS1waW5rLCAzKTtcbiRwYWxldHRlLXBpbmstMzAwOiBudGgoJHBhbGV0dGUtcGluaywgNCk7XG4kcGFsZXR0ZS1waW5rLTQwMDogbnRoKCRwYWxldHRlLXBpbmssIDUpO1xuJHBhbGV0dGUtcGluay01MDA6IG50aCgkcGFsZXR0ZS1waW5rLCA2KTtcbiRwYWxldHRlLXBpbmstNjAwOiBudGgoJHBhbGV0dGUtcGluaywgNyk7XG4kcGFsZXR0ZS1waW5rLTcwMDogbnRoKCRwYWxldHRlLXBpbmssIDgpO1xuJHBhbGV0dGUtcGluay04MDA6IG50aCgkcGFsZXR0ZS1waW5rLCA5KTtcbiRwYWxldHRlLXBpbmstOTAwOiBudGgoJHBhbGV0dGUtcGluaywgMTApO1xuJHBhbGV0dGUtcGluay1BMTAwOiBudGgoJHBhbGV0dGUtcGluaywgMTEpO1xuJHBhbGV0dGUtcGluay1BMjAwOiBudGgoJHBhbGV0dGUtcGluaywgMTIpO1xuJHBhbGV0dGUtcGluay1BNDAwOiBudGgoJHBhbGV0dGUtcGluaywgMTMpO1xuJHBhbGV0dGUtcGluay1BNzAwOiBudGgoJHBhbGV0dGUtcGluaywgMTQpO1xuXG4kcGFsZXR0ZS1wdXJwbGU6XG5cIjI0MywyMjksMjQ1XCJcblwiMjI1LDE5MCwyMzFcIlxuXCIyMDYsMTQ3LDIxNlwiXG5cIjE4NiwxMDQsMjAwXCJcblwiMTcxLDcxLDE4OFwiXG5cIjE1NiwzOSwxNzZcIlxuXCIxNDIsMzYsMTcwXCJcblwiMTIzLDMxLDE2MlwiXG5cIjEwNiwyNywxNTRcIlxuXCI3NCwyMCwxNDBcIlxuXCIyMzQsMTI4LDI1MlwiXG5cIjIyNCw2NCwyNTFcIlxuXCIyMTMsMCwyNDlcIlxuXCIxNzAsMCwyNTVcIjtcblxuJHBhbGV0dGUtcHVycGxlLTUwOiBudGgoJHBhbGV0dGUtcHVycGxlLCAxKTtcbiRwYWxldHRlLXB1cnBsZS0xMDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDIpO1xuJHBhbGV0dGUtcHVycGxlLTIwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgMyk7XG4kcGFsZXR0ZS1wdXJwbGUtMzAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCA0KTtcbiRwYWxldHRlLXB1cnBsZS00MDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDUpO1xuJHBhbGV0dGUtcHVycGxlLTUwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgNik7XG4kcGFsZXR0ZS1wdXJwbGUtNjAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCA3KTtcbiRwYWxldHRlLXB1cnBsZS03MDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDgpO1xuJHBhbGV0dGUtcHVycGxlLTgwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgOSk7XG4kcGFsZXR0ZS1wdXJwbGUtOTAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCAxMCk7XG4kcGFsZXR0ZS1wdXJwbGUtQTEwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgMTEpO1xuJHBhbGV0dGUtcHVycGxlLUEyMDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDEyKTtcbiRwYWxldHRlLXB1cnBsZS1BNDAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCAxMyk7XG4kcGFsZXR0ZS1wdXJwbGUtQTcwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgMTQpO1xuXG4kcGFsZXR0ZS1kZWVwLXB1cnBsZTpcblwiMjM3LDIzMSwyNDZcIlxuXCIyMDksMTk2LDIzM1wiXG5cIjE3OSwxNTcsMjE5XCJcblwiMTQ5LDExNywyMDVcIlxuXCIxMjYsODcsMTk0XCJcblwiMTAzLDU4LDE4M1wiXG5cIjk0LDUzLDE3N1wiXG5cIjgxLDQ1LDE2OFwiXG5cIjY5LDM5LDE2MFwiXG5cIjQ5LDI3LDE0NlwiXG5cIjE3OSwxMzYsMjU1XCJcblwiMTI0LDc3LDI1NVwiXG5cIjEwMSwzMSwyNTVcIlxuXCI5OCwwLDIzNFwiO1xuXG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS01MDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCAxKTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTEwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCAyKTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTIwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCAzKTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTMwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCA0KTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTQwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCA1KTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTUwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCA2KTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTYwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCA3KTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTcwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCA4KTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTgwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCA5KTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLTkwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCAxMCk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS1BMTAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDExKTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLUEyMDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgMTIpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtQTQwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCAxMyk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS1BNzAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDE0KTtcblxuJHBhbGV0dGUtaW5kaWdvOlxuXCIyMzIsMjM0LDI0NlwiXG5cIjE5NywyMDIsMjMzXCJcblwiMTU5LDE2OCwyMThcIlxuXCIxMjEsMTM0LDIwM1wiXG5cIjkyLDEwNywxOTJcIlxuXCI2Myw4MSwxODFcIlxuXCI1Nyw3MywxNzFcIlxuXCI0OCw2MywxNTlcIlxuXCI0MCw1MywxNDdcIlxuXCIyNiwzNSwxMjZcIlxuXCIxNDAsMTU4LDI1NVwiXG5cIjgzLDEwOSwyNTRcIlxuXCI2MSw5MCwyNTRcIlxuXCI0OCw3OSwyNTRcIjtcblxuJHBhbGV0dGUtaW5kaWdvLTUwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCAxKTtcbiRwYWxldHRlLWluZGlnby0xMDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDIpO1xuJHBhbGV0dGUtaW5kaWdvLTIwMDogbnRoKCRwYWxldHRlLWluZGlnbywgMyk7XG4kcGFsZXR0ZS1pbmRpZ28tMzAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCA0KTtcbiRwYWxldHRlLWluZGlnby00MDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDUpO1xuJHBhbGV0dGUtaW5kaWdvLTUwMDogbnRoKCRwYWxldHRlLWluZGlnbywgNik7XG4kcGFsZXR0ZS1pbmRpZ28tNjAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCA3KTtcbiRwYWxldHRlLWluZGlnby03MDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDgpO1xuJHBhbGV0dGUtaW5kaWdvLTgwMDogbnRoKCRwYWxldHRlLWluZGlnbywgOSk7XG4kcGFsZXR0ZS1pbmRpZ28tOTAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCAxMCk7XG4kcGFsZXR0ZS1pbmRpZ28tQTEwMDogbnRoKCRwYWxldHRlLWluZGlnbywgMTEpO1xuJHBhbGV0dGUtaW5kaWdvLUEyMDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDEyKTtcbiRwYWxldHRlLWluZGlnby1BNDAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCAxMyk7XG4kcGFsZXR0ZS1pbmRpZ28tQTcwMDogbnRoKCRwYWxldHRlLWluZGlnbywgMTQpO1xuXG4kcGFsZXR0ZS1ibHVlOlxuXCIyMjcsMjQyLDI1M1wiXG5cIjE4NywyMjIsMjUxXCJcblwiMTQ0LDIwMiwyNDlcIlxuXCIxMDAsMTgxLDI0NlwiXG5cIjY2LDE2NSwyNDVcIlxuXCIzMywxNTAsMjQzXCJcblwiMzAsMTM2LDIyOVwiXG5cIjI1LDExOCwyMTBcIlxuXCIyMSwxMDEsMTkyXCJcblwiMTMsNzEsMTYxXCJcblwiMTMwLDE3NywyNTVcIlxuXCI2OCwxMzgsMjU1XCJcblwiNDEsMTIxLDI1NVwiXG5cIjQxLDk4LDI1NVwiO1xuXG4kcGFsZXR0ZS1ibHVlLTUwOiBudGgoJHBhbGV0dGUtYmx1ZSwgMSk7XG4kcGFsZXR0ZS1ibHVlLTEwMDogbnRoKCRwYWxldHRlLWJsdWUsIDIpO1xuJHBhbGV0dGUtYmx1ZS0yMDA6IG50aCgkcGFsZXR0ZS1ibHVlLCAzKTtcbiRwYWxldHRlLWJsdWUtMzAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgNCk7XG4kcGFsZXR0ZS1ibHVlLTQwMDogbnRoKCRwYWxldHRlLWJsdWUsIDUpO1xuJHBhbGV0dGUtYmx1ZS01MDA6IG50aCgkcGFsZXR0ZS1ibHVlLCA2KTtcbiRwYWxldHRlLWJsdWUtNjAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgNyk7XG4kcGFsZXR0ZS1ibHVlLTcwMDogbnRoKCRwYWxldHRlLWJsdWUsIDgpO1xuJHBhbGV0dGUtYmx1ZS04MDA6IG50aCgkcGFsZXR0ZS1ibHVlLCA5KTtcbiRwYWxldHRlLWJsdWUtOTAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgMTApO1xuJHBhbGV0dGUtYmx1ZS1BMTAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgMTEpO1xuJHBhbGV0dGUtYmx1ZS1BMjAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgMTIpO1xuJHBhbGV0dGUtYmx1ZS1BNDAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgMTMpO1xuJHBhbGV0dGUtYmx1ZS1BNzAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgMTQpO1xuXG4kcGFsZXR0ZS1saWdodC1ibHVlOlxuXCIyMjUsMjQ1LDI1NFwiXG5cIjE3OSwyMjksMjUyXCJcblwiMTI5LDIxMiwyNTBcIlxuXCI3OSwxOTUsMjQ3XCJcblwiNDEsMTgyLDI0NlwiXG5cIjMsMTY5LDI0NFwiXG5cIjMsMTU1LDIyOVwiXG5cIjIsMTM2LDIwOVwiXG5cIjIsMTE5LDE4OVwiXG5cIjEsODcsMTU1XCJcblwiMTI4LDIxNiwyNTVcIlxuXCI2NCwxOTYsMjU1XCJcblwiMCwxNzYsMjU1XCJcblwiMCwxNDUsMjM0XCI7XG5cbiRwYWxldHRlLWxpZ2h0LWJsdWUtNTA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCAxKTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtMTAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgMik7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTIwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDMpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS0zMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCA0KTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtNDAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgNSk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTUwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDYpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS02MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCA3KTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtNzAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgOCk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTgwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDkpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS05MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCAxMCk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLUExMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCAxMSk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLUEyMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCAxMik7XG4kcGFsZXR0ZS1saWdodC1ibHVlLUE0MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCAxMyk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLUE3MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCAxNCk7XG5cbiRwYWxldHRlLWN5YW46XG5cIjIyNCwyNDcsMjUwXCJcblwiMTc4LDIzNSwyNDJcIlxuXCIxMjgsMjIyLDIzNFwiXG5cIjc3LDIwOCwyMjVcIlxuXCIzOCwxOTgsMjE4XCJcblwiMCwxODgsMjEyXCJcblwiMCwxNzIsMTkzXCJcblwiMCwxNTEsMTY3XCJcblwiMCwxMzEsMTQzXCJcblwiMCw5NiwxMDBcIlxuXCIxMzIsMjU1LDI1NVwiXG5cIjI0LDI1NSwyNTVcIlxuXCIwLDIyOSwyNTVcIlxuXCIwLDE4NCwyMTJcIjtcblxuJHBhbGV0dGUtY3lhbi01MDogbnRoKCRwYWxldHRlLWN5YW4sIDEpO1xuJHBhbGV0dGUtY3lhbi0xMDA6IG50aCgkcGFsZXR0ZS1jeWFuLCAyKTtcbiRwYWxldHRlLWN5YW4tMjAwOiBudGgoJHBhbGV0dGUtY3lhbiwgMyk7XG4kcGFsZXR0ZS1jeWFuLTMwMDogbnRoKCRwYWxldHRlLWN5YW4sIDQpO1xuJHBhbGV0dGUtY3lhbi00MDA6IG50aCgkcGFsZXR0ZS1jeWFuLCA1KTtcbiRwYWxldHRlLWN5YW4tNTAwOiBudGgoJHBhbGV0dGUtY3lhbiwgNik7XG4kcGFsZXR0ZS1jeWFuLTYwMDogbnRoKCRwYWxldHRlLWN5YW4sIDcpO1xuJHBhbGV0dGUtY3lhbi03MDA6IG50aCgkcGFsZXR0ZS1jeWFuLCA4KTtcbiRwYWxldHRlLWN5YW4tODAwOiBudGgoJHBhbGV0dGUtY3lhbiwgOSk7XG4kcGFsZXR0ZS1jeWFuLTkwMDogbnRoKCRwYWxldHRlLWN5YW4sIDEwKTtcbiRwYWxldHRlLWN5YW4tQTEwMDogbnRoKCRwYWxldHRlLWN5YW4sIDExKTtcbiRwYWxldHRlLWN5YW4tQTIwMDogbnRoKCRwYWxldHRlLWN5YW4sIDEyKTtcbiRwYWxldHRlLWN5YW4tQTQwMDogbnRoKCRwYWxldHRlLWN5YW4sIDEzKTtcbiRwYWxldHRlLWN5YW4tQTcwMDogbnRoKCRwYWxldHRlLWN5YW4sIDE0KTtcblxuJHBhbGV0dGUtdGVhbDpcblwiMjI0LDI0MiwyNDFcIlxuXCIxNzgsMjIzLDIxOVwiXG5cIjEyOCwyMDMsMTk2XCJcblwiNzcsMTgyLDE3MlwiXG5cIjM4LDE2NiwxNTRcIlxuXCIwLDE1MCwxMzZcIlxuXCIwLDEzNywxMjNcIlxuXCIwLDEyMSwxMDdcIlxuXCIwLDEwNSw5MlwiXG5cIjAsNzcsNjRcIlxuXCIxNjcsMjU1LDIzNVwiXG5cIjEwMCwyNTUsMjE4XCJcblwiMjksMjMzLDE4MlwiXG5cIjAsMTkxLDE2NVwiO1xuXG4kcGFsZXR0ZS10ZWFsLTUwOiBudGgoJHBhbGV0dGUtdGVhbCwgMSk7XG4kcGFsZXR0ZS10ZWFsLTEwMDogbnRoKCRwYWxldHRlLXRlYWwsIDIpO1xuJHBhbGV0dGUtdGVhbC0yMDA6IG50aCgkcGFsZXR0ZS10ZWFsLCAzKTtcbiRwYWxldHRlLXRlYWwtMzAwOiBudGgoJHBhbGV0dGUtdGVhbCwgNCk7XG4kcGFsZXR0ZS10ZWFsLTQwMDogbnRoKCRwYWxldHRlLXRlYWwsIDUpO1xuJHBhbGV0dGUtdGVhbC01MDA6IG50aCgkcGFsZXR0ZS10ZWFsLCA2KTtcbiRwYWxldHRlLXRlYWwtNjAwOiBudGgoJHBhbGV0dGUtdGVhbCwgNyk7XG4kcGFsZXR0ZS10ZWFsLTcwMDogbnRoKCRwYWxldHRlLXRlYWwsIDgpO1xuJHBhbGV0dGUtdGVhbC04MDA6IG50aCgkcGFsZXR0ZS10ZWFsLCA5KTtcbiRwYWxldHRlLXRlYWwtOTAwOiBudGgoJHBhbGV0dGUtdGVhbCwgMTApO1xuJHBhbGV0dGUtdGVhbC1BMTAwOiBudGgoJHBhbGV0dGUtdGVhbCwgMTEpO1xuJHBhbGV0dGUtdGVhbC1BMjAwOiBudGgoJHBhbGV0dGUtdGVhbCwgMTIpO1xuJHBhbGV0dGUtdGVhbC1BNDAwOiBudGgoJHBhbGV0dGUtdGVhbCwgMTMpO1xuJHBhbGV0dGUtdGVhbC1BNzAwOiBudGgoJHBhbGV0dGUtdGVhbCwgMTQpO1xuXG4kcGFsZXR0ZS1ncmVlbjpcblwiMjMyLDI0NSwyMzNcIlxuXCIyMDAsMjMwLDIwMVwiXG5cIjE2NSwyMTQsMTY3XCJcblwiMTI5LDE5OSwxMzJcIlxuXCIxMDIsMTg3LDEwNlwiXG5cIjc2LDE3NSw4MFwiXG5cIjY3LDE2MCw3MVwiXG5cIjU2LDE0Miw2MFwiXG5cIjQ2LDEyNSw1MFwiXG5cIjI3LDk0LDMyXCJcblwiMTg1LDI0NiwyMDJcIlxuXCIxMDUsMjQwLDE3NFwiXG5cIjAsMjMwLDExOFwiXG5cIjAsMjAwLDgzXCI7XG5cbiRwYWxldHRlLWdyZWVuLTUwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDEpO1xuJHBhbGV0dGUtZ3JlZW4tMTAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDIpO1xuJHBhbGV0dGUtZ3JlZW4tMjAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDMpO1xuJHBhbGV0dGUtZ3JlZW4tMzAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDQpO1xuJHBhbGV0dGUtZ3JlZW4tNDAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDUpO1xuJHBhbGV0dGUtZ3JlZW4tNTAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDYpO1xuJHBhbGV0dGUtZ3JlZW4tNjAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDcpO1xuJHBhbGV0dGUtZ3JlZW4tNzAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDgpO1xuJHBhbGV0dGUtZ3JlZW4tODAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDkpO1xuJHBhbGV0dGUtZ3JlZW4tOTAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDEwKTtcbiRwYWxldHRlLWdyZWVuLUExMDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgMTEpO1xuJHBhbGV0dGUtZ3JlZW4tQTIwMDogbnRoKCRwYWxldHRlLWdyZWVuLCAxMik7XG4kcGFsZXR0ZS1ncmVlbi1BNDAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDEzKTtcbiRwYWxldHRlLWdyZWVuLUE3MDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgMTQpO1xuXG4kcGFsZXR0ZS1saWdodC1ncmVlbjpcblwiMjQxLDI0OCwyMzNcIlxuXCIyMjAsMjM3LDIwMFwiXG5cIjE5NywyMjUsMTY1XCJcblwiMTc0LDIxMywxMjlcIlxuXCIxNTYsMjA0LDEwMVwiXG5cIjEzOSwxOTUsNzRcIlxuXCIxMjQsMTc5LDY2XCJcblwiMTA0LDE1OSw1NlwiXG5cIjg1LDEzOSw0N1wiXG5cIjUxLDEwNSwzMFwiXG5cIjIwNCwyNTUsMTQ0XCJcblwiMTc4LDI1NSw4OVwiXG5cIjExOCwyNTUsM1wiXG5cIjEwMCwyMjEsMjNcIjtcblxuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tNTA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgMSk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi0xMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgMik7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi0yMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgMyk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi0zMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgNCk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi00MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgNSk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi01MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgNik7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi02MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgNyk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi03MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgOCk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi04MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgOSk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi05MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgMTApO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTEwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCAxMSk7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi1BMjAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDEyKTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLUE0MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgMTMpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTcwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCAxNCk7XG5cbiRwYWxldHRlLWxpbWU6XG5cIjI0OSwyNTEsMjMxXCJcblwiMjQwLDI0NCwxOTVcIlxuXCIyMzAsMjM4LDE1NlwiXG5cIjIyMCwyMzEsMTE3XCJcblwiMjEyLDIyNSw4N1wiXG5cIjIwNSwyMjAsNTdcIlxuXCIxOTIsMjAyLDUxXCJcblwiMTc1LDE4MCw0M1wiXG5cIjE1OCwxNTcsMzZcIlxuXCIxMzAsMTE5LDIzXCJcblwiMjQ0LDI1NSwxMjlcIlxuXCIyMzgsMjU1LDY1XCJcblwiMTk4LDI1NSwwXCJcblwiMTc0LDIzNCwwXCI7XG5cbiRwYWxldHRlLWxpbWUtNTA6IG50aCgkcGFsZXR0ZS1saW1lLCAxKTtcbiRwYWxldHRlLWxpbWUtMTAwOiBudGgoJHBhbGV0dGUtbGltZSwgMik7XG4kcGFsZXR0ZS1saW1lLTIwMDogbnRoKCRwYWxldHRlLWxpbWUsIDMpO1xuJHBhbGV0dGUtbGltZS0zMDA6IG50aCgkcGFsZXR0ZS1saW1lLCA0KTtcbiRwYWxldHRlLWxpbWUtNDAwOiBudGgoJHBhbGV0dGUtbGltZSwgNSk7XG4kcGFsZXR0ZS1saW1lLTUwMDogbnRoKCRwYWxldHRlLWxpbWUsIDYpO1xuJHBhbGV0dGUtbGltZS02MDA6IG50aCgkcGFsZXR0ZS1saW1lLCA3KTtcbiRwYWxldHRlLWxpbWUtNzAwOiBudGgoJHBhbGV0dGUtbGltZSwgOCk7XG4kcGFsZXR0ZS1saW1lLTgwMDogbnRoKCRwYWxldHRlLWxpbWUsIDkpO1xuJHBhbGV0dGUtbGltZS05MDA6IG50aCgkcGFsZXR0ZS1saW1lLCAxMCk7XG4kcGFsZXR0ZS1saW1lLUExMDA6IG50aCgkcGFsZXR0ZS1saW1lLCAxMSk7XG4kcGFsZXR0ZS1saW1lLUEyMDA6IG50aCgkcGFsZXR0ZS1saW1lLCAxMik7XG4kcGFsZXR0ZS1saW1lLUE0MDA6IG50aCgkcGFsZXR0ZS1saW1lLCAxMyk7XG4kcGFsZXR0ZS1saW1lLUE3MDA6IG50aCgkcGFsZXR0ZS1saW1lLCAxNCk7XG5cbiRwYWxldHRlLXllbGxvdzpcblwiMjU1LDI1MywyMzFcIlxuXCIyNTUsMjQ5LDE5NlwiXG5cIjI1NSwyNDUsMTU3XCJcblwiMjU1LDI0MSwxMThcIlxuXCIyNTUsMjM4LDg4XCJcblwiMjU1LDIzNSw1OVwiXG5cIjI1MywyMTYsNTNcIlxuXCIyNTEsMTkyLDQ1XCJcblwiMjQ5LDE2OCwzN1wiXG5cIjI0NSwxMjcsMjNcIlxuXCIyNTUsMjU1LDE0MVwiXG5cIjI1NSwyNTUsMFwiXG5cIjI1NSwyMzQsMFwiXG5cIjI1NSwyMTQsMFwiO1xuXG4kcGFsZXR0ZS15ZWxsb3ctNTA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDEpO1xuJHBhbGV0dGUteWVsbG93LTEwMDogbnRoKCRwYWxldHRlLXllbGxvdywgMik7XG4kcGFsZXR0ZS15ZWxsb3ctMjAwOiBudGgoJHBhbGV0dGUteWVsbG93LCAzKTtcbiRwYWxldHRlLXllbGxvdy0zMDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDQpO1xuJHBhbGV0dGUteWVsbG93LTQwMDogbnRoKCRwYWxldHRlLXllbGxvdywgNSk7XG4kcGFsZXR0ZS15ZWxsb3ctNTAwOiBudGgoJHBhbGV0dGUteWVsbG93LCA2KTtcbiRwYWxldHRlLXllbGxvdy02MDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDcpO1xuJHBhbGV0dGUteWVsbG93LTcwMDogbnRoKCRwYWxldHRlLXllbGxvdywgOCk7XG4kcGFsZXR0ZS15ZWxsb3ctODAwOiBudGgoJHBhbGV0dGUteWVsbG93LCA5KTtcbiRwYWxldHRlLXllbGxvdy05MDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDEwKTtcbiRwYWxldHRlLXllbGxvdy1BMTAwOiBudGgoJHBhbGV0dGUteWVsbG93LCAxMSk7XG4kcGFsZXR0ZS15ZWxsb3ctQTIwMDogbnRoKCRwYWxldHRlLXllbGxvdywgMTIpO1xuJHBhbGV0dGUteWVsbG93LUE0MDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDEzKTtcbiRwYWxldHRlLXllbGxvdy1BNzAwOiBudGgoJHBhbGV0dGUteWVsbG93LCAxNCk7XG5cbiRwYWxldHRlLWFtYmVyOlxuXCIyNTUsMjQ4LDIyNVwiXG5cIjI1NSwyMzYsMTc5XCJcblwiMjU1LDIyNCwxMzBcIlxuXCIyNTUsMjEzLDc5XCJcblwiMjU1LDIwMiw0MFwiXG5cIjI1NSwxOTMsN1wiXG5cIjI1NSwxNzksMFwiXG5cIjI1NSwxNjAsMFwiXG5cIjI1NSwxNDMsMFwiXG5cIjI1NSwxMTEsMFwiXG5cIjI1NSwyMjksMTI3XCJcblwiMjU1LDIxNSw2NFwiXG5cIjI1NSwxOTYsMFwiXG5cIjI1NSwxNzEsMFwiO1xuXG4kcGFsZXR0ZS1hbWJlci01MDogbnRoKCRwYWxldHRlLWFtYmVyLCAxKTtcbiRwYWxldHRlLWFtYmVyLTEwMDogbnRoKCRwYWxldHRlLWFtYmVyLCAyKTtcbiRwYWxldHRlLWFtYmVyLTIwMDogbnRoKCRwYWxldHRlLWFtYmVyLCAzKTtcbiRwYWxldHRlLWFtYmVyLTMwMDogbnRoKCRwYWxldHRlLWFtYmVyLCA0KTtcbiRwYWxldHRlLWFtYmVyLTQwMDogbnRoKCRwYWxldHRlLWFtYmVyLCA1KTtcbiRwYWxldHRlLWFtYmVyLTUwMDogbnRoKCRwYWxldHRlLWFtYmVyLCA2KTtcbiRwYWxldHRlLWFtYmVyLTYwMDogbnRoKCRwYWxldHRlLWFtYmVyLCA3KTtcbiRwYWxldHRlLWFtYmVyLTcwMDogbnRoKCRwYWxldHRlLWFtYmVyLCA4KTtcbiRwYWxldHRlLWFtYmVyLTgwMDogbnRoKCRwYWxldHRlLWFtYmVyLCA5KTtcbiRwYWxldHRlLWFtYmVyLTkwMDogbnRoKCRwYWxldHRlLWFtYmVyLCAxMCk7XG4kcGFsZXR0ZS1hbWJlci1BMTAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDExKTtcbiRwYWxldHRlLWFtYmVyLUEyMDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgMTIpO1xuJHBhbGV0dGUtYW1iZXItQTQwMDogbnRoKCRwYWxldHRlLWFtYmVyLCAxMyk7XG4kcGFsZXR0ZS1hbWJlci1BNzAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDE0KTtcblxuJHBhbGV0dGUtb3JhbmdlOlxuXCIyNTUsMjQzLDIyNFwiXG5cIjI1NSwyMjQsMTc4XCJcblwiMjU1LDIwNCwxMjhcIlxuXCIyNTUsMTgzLDc3XCJcblwiMjU1LDE2NywzOFwiXG5cIjI1NSwxNTIsMFwiXG5cIjI1MSwxNDAsMFwiXG5cIjI0NSwxMjQsMFwiXG5cIjIzOSwxMDgsMFwiXG5cIjIzMCw4MSwwXCJcblwiMjU1LDIwOSwxMjhcIlxuXCIyNTUsMTcxLDY0XCJcblwiMjU1LDE0NSwwXCJcblwiMjU1LDEwOSwwXCI7XG5cbiRwYWxldHRlLW9yYW5nZS01MDogbnRoKCRwYWxldHRlLW9yYW5nZSwgMSk7XG4kcGFsZXR0ZS1vcmFuZ2UtMTAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCAyKTtcbiRwYWxldHRlLW9yYW5nZS0yMDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDMpO1xuJHBhbGV0dGUtb3JhbmdlLTMwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgNCk7XG4kcGFsZXR0ZS1vcmFuZ2UtNDAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCA1KTtcbiRwYWxldHRlLW9yYW5nZS01MDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDYpO1xuJHBhbGV0dGUtb3JhbmdlLTYwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgNyk7XG4kcGFsZXR0ZS1vcmFuZ2UtNzAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCA4KTtcbiRwYWxldHRlLW9yYW5nZS04MDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDkpO1xuJHBhbGV0dGUtb3JhbmdlLTkwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgMTApO1xuJHBhbGV0dGUtb3JhbmdlLUExMDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDExKTtcbiRwYWxldHRlLW9yYW5nZS1BMjAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCAxMik7XG4kcGFsZXR0ZS1vcmFuZ2UtQTQwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgMTMpO1xuJHBhbGV0dGUtb3JhbmdlLUE3MDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDE0KTtcblxuJHBhbGV0dGUtZGVlcC1vcmFuZ2U6XG5cIjI1MSwyMzMsMjMxXCJcblwiMjU1LDIwNCwxODhcIlxuXCIyNTUsMTcxLDE0NVwiXG5cIjI1NSwxMzgsMTAxXCJcblwiMjU1LDExMiw2N1wiXG5cIjI1NSw4NywzNFwiXG5cIjI0NCw4MSwzMFwiXG5cIjIzMCw3NCwyNVwiXG5cIjIxNiw2NywyMVwiXG5cIjE5MSw1NCwxMlwiXG5cIjI1NSwxNTgsMTI4XCJcblwiMjU1LDExMCw2NFwiXG5cIjI1NSw2MSwwXCJcblwiMjIxLDQ0LDBcIjtcblxuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtNTA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgMSk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS0xMDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgMik7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS0yMDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgMyk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS0zMDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgNCk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS00MDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgNSk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS01MDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgNik7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS02MDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgNyk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS03MDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgOCk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS04MDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgOSk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS05MDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgMTApO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtQTEwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCAxMSk7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS1BMjAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDEyKTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLUE0MDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgMTMpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtQTcwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCAxNCk7XG5cblxuLy8gQ29sb3Igb3JkZXI6IDUwLCAxMDAsIDIwMCwgMzAwLCA0MDAsIDUwMCwgNjAwLCA3MDAsIDgwMCwgOTAwLlxuXG4kcGFsZXR0ZS1icm93bjpcblwiMjM5LDIzNSwyMzNcIlxuXCIyMTUsMjA0LDIwMFwiXG5cIjE4OCwxNzAsMTY0XCJcblwiMTYxLDEzNiwxMjdcIlxuXCIxNDEsMTEwLDk5XCJcblwiMTIxLDg1LDcyXCJcblwiMTA5LDc2LDY1XCJcblwiOTMsNjQsNTVcIlxuXCI3OCw1Miw0NlwiXG5cIjYyLDM5LDM1XCI7XG5cbiRwYWxldHRlLWJyb3duLTUwOiBudGgoJHBhbGV0dGUtYnJvd24sIDEpO1xuJHBhbGV0dGUtYnJvd24tMTAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDIpO1xuJHBhbGV0dGUtYnJvd24tMjAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDMpO1xuJHBhbGV0dGUtYnJvd24tMzAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDQpO1xuJHBhbGV0dGUtYnJvd24tNDAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDUpO1xuJHBhbGV0dGUtYnJvd24tNTAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDYpO1xuJHBhbGV0dGUtYnJvd24tNjAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDcpO1xuJHBhbGV0dGUtYnJvd24tNzAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDgpO1xuJHBhbGV0dGUtYnJvd24tODAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDkpO1xuJHBhbGV0dGUtYnJvd24tOTAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDEwKTtcblxuJHBhbGV0dGUtZ3JleTpcblwiMjUwLDI1MCwyNTBcIlxuXCIyNDUsMjQ1LDI0NVwiXG5cIjIzOCwyMzgsMjM4XCJcblwiMjI0LDIyNCwyMjRcIlxuXCIxODksMTg5LDE4OVwiXG5cIjE1OCwxNTgsMTU4XCJcblwiMTE3LDExNywxMTdcIlxuXCI5Nyw5Nyw5N1wiXG5cIjY2LDY2LDY2XCJcblwiMzMsMzMsMzNcIjtcblxuJHBhbGV0dGUtZ3JleS01MDogbnRoKCRwYWxldHRlLWdyZXksIDEpO1xuJHBhbGV0dGUtZ3JleS0xMDA6IG50aCgkcGFsZXR0ZS1ncmV5LCAyKTtcbiRwYWxldHRlLWdyZXktMjAwOiBudGgoJHBhbGV0dGUtZ3JleSwgMyk7XG4kcGFsZXR0ZS1ncmV5LTMwMDogbnRoKCRwYWxldHRlLWdyZXksIDQpO1xuJHBhbGV0dGUtZ3JleS00MDA6IG50aCgkcGFsZXR0ZS1ncmV5LCA1KTtcbiRwYWxldHRlLWdyZXktNTAwOiBudGgoJHBhbGV0dGUtZ3JleSwgNik7XG4kcGFsZXR0ZS1ncmV5LTYwMDogbnRoKCRwYWxldHRlLWdyZXksIDcpO1xuJHBhbGV0dGUtZ3JleS03MDA6IG50aCgkcGFsZXR0ZS1ncmV5LCA4KTtcbiRwYWxldHRlLWdyZXktODAwOiBudGgoJHBhbGV0dGUtZ3JleSwgOSk7XG4kcGFsZXR0ZS1ncmV5LTkwMDogbnRoKCRwYWxldHRlLWdyZXksIDEwKTtcblxuJHBhbGV0dGUtYmx1ZS1ncmV5OlxuXCIyMzYsMjM5LDI0MVwiXG5cIjIwNywyMTYsMjIwXCJcblwiMTc2LDE5MCwxOTdcIlxuXCIxNDQsMTY0LDE3NFwiXG5cIjEyMCwxNDQsMTU2XCJcblwiOTYsMTI1LDEzOVwiXG5cIjg0LDExMCwxMjJcIlxuXCI2OSw5MCwxMDBcIlxuXCI1NSw3MSw3OVwiXG5cIjM4LDUwLDU2XCI7XG5cbiRwYWxldHRlLWJsdWUtZ3JleS01MDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgMSk7XG4kcGFsZXR0ZS1ibHVlLWdyZXktMTAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCAyKTtcbiRwYWxldHRlLWJsdWUtZ3JleS0yMDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDMpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTMwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgNCk7XG4kcGFsZXR0ZS1ibHVlLWdyZXktNDAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCA1KTtcbiRwYWxldHRlLWJsdWUtZ3JleS01MDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDYpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTYwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgNyk7XG4kcGFsZXR0ZS1ibHVlLWdyZXktNzAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCA4KTtcbiRwYWxldHRlLWJsdWUtZ3JleS04MDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDkpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTkwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgMTApO1xuXG4kY29sb3ItYmxhY2s6IFwiMCwwLDBcIjtcbiRjb2xvci13aGl0ZTogXCIyNTUsMjU1LDI1NVwiO1xuXG5cbi8qIGNvbG9ycy5zY3NzICovXG4kc3R5bGVndWlkZS1nZW5lcmF0ZS10ZW1wbGF0ZTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFRoZSB0d28gcG9zc2libGUgY29sb3JzIGZvciBvdmVybGF5ZWQgdGV4dC5cbiRjb2xvci1kYXJrLWNvbnRyYXN0OiAkY29sb3Itd2hpdGUgIWRlZmF1bHQ7XG4kY29sb3ItbGlnaHQtY29udHJhc3Q6ICRjb2xvci1ibGFjayAhZGVmYXVsdDtcbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBmdW5jdGlvbiBzdHJpcC11bml0cygkbnVtYmVyKSB7XG4gIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLyogVHlwb2dyYXBoeSAqL1xuXG5AbWl4aW4gdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpZiAkdXNlUHJlZmVycmVkIHtcbiAgICBmb250LWZhbWlseTogJHByZWZlcnJlZF9mb250O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWRpc3BsYXktNCgkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAxMTJweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC41NDtcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1kaXNwbGF5LTMoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogNTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC41NDtcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1kaXNwbGF5LTIoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogNDVweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDQ4cHg7XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjU0O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWRpc3BsYXktMSgkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAzNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogNDBweDtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuNTQ7XG4gIH1cbn1cblxuQG1peGluIHR5cG8taGVhZGxpbmUoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLXRpdGxlKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC44NztcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1zdWJoZWFkKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC44NztcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1zdWJoZWFkLTIoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWJvZHktMigkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgQGlmICR1c2VQcmVmZXJyZWQge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH0gQGVsc2Uge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMDtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuODc7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tYm9keS0xKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWNhcHRpb24oJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiBmYWxzZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogMDtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuNTQ7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tYmxvY2txdW90ZSgkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG5cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMC41ZW07XG4gICAgY29udGVudDogJ+KAnCc7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAn4oCdJztcbiAgICBtYXJnaW4tbGVmdDogLTAuMDVlbTtcbiAgfVxuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC41NDtcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1tZW51KCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogMDtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuODc7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tYnV0dG9uKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogMDtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuODc7XG4gIH1cbn1cblxuQG1peGluIHR5cG8taWNvbigpIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuLyogU2hhZG93cyAqL1xuXG4vLyBGb2N1cyBzaGFkb3cgbWl4aW4uXG5AbWl4aW4gZm9jdXMtc2hhZG93KCkge1xuICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwwLDAsLjE4KSwwIDhweCAxNnB4IHJnYmEoMCwwLDAsLjM2KTtcbn1cblxuQG1peGluIHNoYWRvdy0yZHAoKSB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KTtcbn1cbkBtaXhpbiBzaGFkb3ctM2RwKCkge1xuICBib3gtc2hhZG93OiAwIDNweCA0cHggMCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXBlbnVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDNweCAzcHggLTJweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDFweCA4cHggMCByZ2JhKDAsIDAsIDAsICRzaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSk7XG59XG5AbWl4aW4gc2hhZG93LTRkcCgpIHtcbiAgYm94LXNoYWRvdzogMCA0cHggNXB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAxcHggMTBweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KTtcbn1cbkBtaXhpbiBzaGFkb3ctNmRwKCkge1xuICBib3gtc2hhZG93OiAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAxcHggMThweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAzcHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KTtcbn1cbkBtaXhpbiBzaGFkb3ctOGRwKCkge1xuICBib3gtc2hhZG93OiAwIDhweCAxMHB4IDFweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXBlbnVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDNweCAxNHB4IDJweCByZ2JhKDAsIDAsIDAsICRzaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgNXB4IDVweCAtM3B4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eSk7XG59XG5cbkBtaXhpbiBzaGFkb3ctMTZkcCgpIHtcbiAgYm94LXNoYWRvdzogMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgIDZweCAzMHB4IDVweCByZ2JhKDAsIDAsIDAsICRzaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgIDhweCAxMHB4IC01cHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KTtcbn1cblxuQG1peGluIHNoYWRvdy0yNGRwKCkge1xuICBib3gtc2hhZG93OiAwICA5cHggNDZweCAgOHB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgMTFweCAxNXB4IC03cHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDI0cHggMzhweCAgM3B4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eSk7XG59XG5cbi8qIEFuaW1hdGlvbnMgKi9cblxuQG1peGluIG1hdGVyaWFsLWFuaW1hdGlvbi1mYXN0LW91dC1zbG93LWluKCRkdXJhdGlvbjowLjJzKSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbjtcbn1cblxuQG1peGluIG1hdGVyaWFsLWFuaW1hdGlvbi1saW5lYXItb3V0LXNsb3ctaW4oJGR1cmF0aW9uOjAuMnMpIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGFuaW1hdGlvbi1jdXJ2ZS1saW5lYXItb3V0LXNsb3ctaW47XG59XG5cbkBtaXhpbiBtYXRlcmlhbC1hbmltYXRpb24tZmFzdC1vdXQtbGluZWFyLWluKCRkdXJhdGlvbjowLjJzKSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtbGluZWFyLWluO1xufVxuXG5AbWl4aW4gbWF0ZXJpYWwtYW5pbWF0aW9uLWRlZmF1bHQoJGR1cmF0aW9uOjAuMnMpIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0O1xufVxuXG4vKiBEaWFsb2cgKi9cblxuQG1peGluIGRpYWxvZy13aWR0aCgkdW5pdHM6NSkge1xuICBAaWYodHlwZV9vZigkdW5pdHMpICE9ICdudW1iZXInKSB7XG4gICAgQGVycm9yIFwiVGhlIHVuaXQgZ2l2ZW4gdG8gZGlhbG9nLXdpZHRoIHNob3VsZCBiZSBhIG51bWJlci5cIjtcbiAgfVxuICAvLyA1NmRwIGlzIHRoZSBiYXNlIHVuaXQgd2lkdGggZm9yIERpYWxvZ3MuXG4gIC8vIFdpdGggNSB1bml0cyBiZWluZyB0aGUgbnVtYmVyIG9mIHVuaXRzIGZvciBhIG1vYmlsZSBkZXZpY2UuXG4gIC8vIGh0dHBzOi8vZ29vLmdsL3NLMk81b1xuICB3aWR0aDogJHVuaXRzICogNTZweDtcbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCJoNWJwXCI7XG5AaW1wb3J0IFwibW9iaWxlXCI7XG5cbi8qXG4gKiBNYWtlIGh0bWwgdGFrZSB1cCB0aGUgZW50aXJlIHNjcmVlblxuICogVGhlbiBzZXQgdG91Y2gtYWN0aW9uIHRvIGF2b2lkIHRvdWNoIGRlbGF5IG9uIG1vYmlsZSBJRVxuICovXG5odG1sIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuLypcbiogTWFrZSBib2R5IHRha2UgdXAgdGhlIGVudGlyZSBzY3JlZW5cbiogUmVtb3ZlIGJvZHkgbWFyZ2luIHNvIGxheW91dCBjb250YWluZXJzIGRvbid0IGNhdXNlIGV4dHJhIG92ZXJmbG93LlxuKi9cbmJvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKlxuICogTWFpbiBkaXNwbGF5IHJlc2V0IGZvciBJRSBzdXBwb3J0LlxuICogU291cmNlOiBodHRwOi8vd2VibG9nLndlc3Qtd2luZC5jb20vcG9zdHMvMjAxNS9KYW4vMTIvbWFpbi1IVE1MNS1UYWctbm90LXdvcmtpbmctaW4tSW50ZXJuZXQtRXhwbG9yZXItOTEwMTFcbiAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuKiBBcHBseSBubyBkaXNwbGF5IHRvIGVsZW1lbnRzIHdpdGggdGhlIGhpZGRlbiBhdHRyaWJ1dGUuXG4qIElFIDkgYW5kIDEwIHN1cHBvcnQuXG4qL1xuKltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4vKlxuICogV2hhdCBmb2xsb3dzIGlzIHRoZSByZXN1bHQgb2YgbXVjaCByZXNlYXJjaCBvbiBjcm9zcy1icm93c2VyIHN0eWxpbmcuXG4gKiBDcmVkaXQgbGVmdCBpbmxpbmUgYW5kIGJpZyB0aGFua3MgdG8gTmljb2xhcyBHYWxsYWdoZXIsIEpvbmF0aGFuIE5lYWwsXG4gKiBLcm9jIENhbWVuLCBhbmQgdGhlIEg1QlAgZGV2IGNvbW11bml0eSBhbmQgdGVhbS5cbiAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZSBzdHlsZXM6IG9waW5pb25hdGVkIGRlZmF1bHRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5odG1sIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4vKlxuICogUmVtb3ZlIHRleHQtc2hhZG93IGluIHNlbGVjdGlvbiBoaWdobGlnaHQ6XG4gKiBodHRwczovL3R3aXR0ZXIuY29tL21pa2V0YXlsci9zdGF0dXMvMTIyMjg4MDUzMDFcbiAqXG4gKiBUaGVzZSBzZWxlY3Rpb24gcnVsZSBzZXRzIGhhdmUgdG8gYmUgc2VwYXJhdGUuXG4gKiBDdXN0b21pemUgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gbWF0Y2ggeW91ciBkZXNpZ24uXG4gKi9cblxuOjpzZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICNiM2Q0ZmM7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qXG4gKiBBIGJldHRlciBsb29raW5nIGRlZmF1bHQgaG9yaXpvbnRhbCBydWxlXG4gKi9cblxuaHIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgICBtYXJnaW46IDFlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGdhcCBiZXR3ZWVuIGF1ZGlvLCBjYW52YXMsIGlmcmFtZXMsXG4gKiBpbWFnZXMsIHZpZGVvcyBhbmQgdGhlIGJvdHRvbSBvZiB0aGVpciBjb250YWluZXJzOlxuICogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvaXNzdWVzLzQ0MFxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qXG4gKiBSZW1vdmUgZGVmYXVsdCBmaWVsZHNldCBzdHlsZXMuXG4gKi9cblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLypcbiAqIEFsbG93IG9ubHkgdmVydGljYWwgcmVzaXppbmcgb2YgdGV4dGFyZWFzLlxuICovXG5cbnRleHRhcmVhIHtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQnJvd3NlciBVcGdyYWRlIFByb21wdFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmJyb3dzZXJ1cGdyYWRlIHtcbiAgICBtYXJnaW46IDAuMmVtIDA7XG4gICAgYmFja2dyb3VuZDogI2NjYztcbiAgICBjb2xvcjogIzAwMDtcbiAgICBwYWRkaW5nOiAwLjJlbSAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQXV0aG9yJ3MgY3VzdG9tIHN0eWxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVscGVyIGNsYXNzZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBIaWRlIHZpc3VhbGx5IGFuZCBmcm9tIHNjcmVlbiByZWFkZXJzOlxuICovXG5cbi5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLypcbiAqIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW4gcmVhZGVyczpcbiAqIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHlcbiAqL1xuXG4udmlzdWFsbHloaWRkZW4ge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG59XG5cbi8qXG4gKiBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnRcbiAqIHRvIGJlIGZvY3VzYWJsZSB3aGVuIG5hdmlnYXRlZCB0byB2aWEgdGhlIGtleWJvYXJkOlxuICogaHR0cHM6Ly93d3cuZHJ1cGFsLm9yZy9ub2RlLzg5NzYzOFxuICovXG5cbi52aXN1YWxseWhpZGRlbi5mb2N1c2FibGU6YWN0aXZlLFxuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTpmb2N1cyB7XG4gICAgY2xpcDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG59XG5cbi8qXG4gKiBIaWRlIHZpc3VhbGx5IGFuZCBmcm9tIHNjcmVlbiByZWFkZXJzLCBidXQgbWFpbnRhaW4gbGF5b3V0XG4gKi9cblxuLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuICogQ2xlYXJmaXg6IGNvbnRhaW4gZmxvYXRzXG4gKlxuICogRm9yIG1vZGVybiBicm93c2Vyc1xuICogMS4gVGhlIHNwYWNlIGNvbnRlbnQgaXMgb25lIHdheSB0byBhdm9pZCBhbiBPcGVyYSBidWcgd2hlbiB0aGVcbiAqICAgIGBjb250ZW50ZWRpdGFibGVgIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbiAqICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuICogICAgdGhhdCByZWNlaXZlIHRoZSBgY2xlYXJmaXhgIGNsYXNzLlxuICogMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbiAqICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbiAqL1xuXG4uY2xlYXJmaXg6YmVmb3JlLFxuLmNsZWFyZml4OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjsgLyogMSAqL1xuICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAyICovXG59XG5cbi5jbGVhcmZpeDphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFWEFNUExFIE1lZGlhIFF1ZXJpZXMgZm9yIFJlc3BvbnNpdmUgRGVzaWduLlxuICAgVGhlc2UgZXhhbXBsZXMgb3ZlcnJpZGUgdGhlIHByaW1hcnkgKCdtb2JpbGUgZmlyc3QnKSBzdHlsZXMuXG4gICBNb2RpZnkgYXMgY29udGVudCByZXF1aXJlcy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzVlbSkge1xuICAgIC8qIFN0eWxlIGFkanVzdG1lbnRzIGZvciB2aWV3cG9ydHMgdGhhdCBtZWV0IHRoZSBjb25kaXRpb24gKi9cbn1cblxuQG1lZGlhIHByaW50LFxuICAgICAgIChtaW4tcmVzb2x1dGlvbjogMS4yNWRwcHgpLFxuICAgICAgIChtaW4tcmVzb2x1dGlvbjogMTIwZHBpKSB7XG4gICAgLyogU3R5bGUgYWRqdXN0bWVudHMgZm9yIGhpZ2ggcmVzb2x1dGlvbiBkZXZpY2VzICovXG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQcmludCBzdHlsZXMuXG4gICBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbiAgIGh0dHA6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6YmVmb3JlLFxuICAgICo6YWZ0ZXIsXG4gICAgKjpmaXJzdC1sZXR0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvKiBCbGFjayBwcmludHMgZmFzdGVyOiBodHRwOi8vd3d3LnNhbmJlaWppLmNvbS9hcmNoaXZlcy85NTMgKi9cbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgYVtocmVmXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIH1cblxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAgKiBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgICovXG5cbiAgICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogUHJpbnRpbmcgVGFibGVzOlxuICAgICAqIGh0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS93aWtpL1ByaW50aW5nX1RhYmxlc1xuICAgICAqL1xuXG4gICAgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBvcnBoYW5zOiAzO1xuICAgICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5cbi8qIFJlbW92ZSB0aGUgdW53YW50ZWQgYm94IGFyb3VuZCBGQUIgYnV0dG9ucyAqL1xuLyogTW9yZSBpbmZvOiBodHRwOi8vZ29vLmdsL0lQd0tpICovXG5hLCAubWRsLWFjY29yZGlvbiwgLm1kbC1idXR0b24sIC5tZGwtY2FyZCwgLm1kbC1jaGVja2JveCwgLm1kbC1kcm9wZG93bi1tZW51LFxuLm1kbC1pY29uLXRvZ2dsZSwgLm1kbC1pdGVtLCAubWRsLXJhZGlvLCAubWRsLXNsaWRlciwgLm1kbC1zd2l0Y2gsIC5tZGwtdGFic19fdGFiIHtcblxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG5AaWYgJHRhcmdldC1lbGVtZW50cy1kaXJlY3RseSA9PSB0cnVlIHtcbiAgaHRtbCwgYm9keSB7XG4gICAgZm9udC1mYW1pbHk6ICRwZXJmb3JtYW5jZV9mb250O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB9XG5cbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKipcbiAgKiBTdHlsZXMgZm9yIEhUTUwgZWxlbWVudHNcbiAgKi9cblxuICBoMSBzbWFsbCwgaDIgc21hbGwsIGgzIHNtYWxsLCBoNCBzbWFsbCwgaDUgc21hbGwsIGg2IHNtYWxsIHtcbiAgICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktMygkY29sb3JDb250cmFzdDogdHJ1ZSk7XG5cbiAgICBmb250LXNpemU6IDAuNmVtO1xuICB9XG5cbiAgaDEge1xuICAgIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0zO1xuXG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0yO1xuXG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG5cbiAgaDMge1xuICAgIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0xO1xuXG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG5cbiAgaDQge1xuICAgIEBpbmNsdWRlIHR5cG8taGVhZGxpbmU7XG5cbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICBoNSB7XG4gICAgQGluY2x1ZGUgdHlwby10aXRsZTtcblxuICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgfVxuXG4gIGg2IHtcbiAgICBAaW5jbHVkZSB0eXBvLXN1YmhlYWQ7XG5cbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICBwIHtcbiAgICBAaW5jbHVkZSB0eXBvLWJvZHktMTtcblxuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJHRleHQtbGluay1jb2xvcjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgYmxvY2txdW90ZSB7XG4gICAgQGluY2x1ZGUgdHlwby1ibG9ja3F1b3RlO1xuICB9XG5cbiAgbWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZmY4MTtcbiAgfVxuXG4gIGR0IHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgYWRkcmVzcyB7XG4gICAgQGluY2x1ZGUgdHlwby1jYXB0aW9uO1xuXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG5cbiAgdWwsIG9sIHtcbiAgICBAaW5jbHVkZSB0eXBvLWJvZHktMTtcbiAgfVxufVxuXG4vKipcbiAqIENsYXNzIE5hbWUgU3R5bGVzXG4gKi9cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTQge1xuICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktNDtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTQtY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktNCgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgdHlwby1kaXNwbGF5LTM7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tZGlzcGxheS0zLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1kaXNwbGF5LTMoJGNvbG9yQ29udHJhc3Q6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0yO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWRpc3BsYXktMi1jb2xvci1jb250cmFzdCB7XG4gIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0yKCRjb2xvckNvbnRyYXN0OiB0cnVlKTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTEge1xuICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktMTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTEtY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktMSgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0taGVhZGxpbmUge1xuICBAaW5jbHVkZSB0eXBvLWhlYWRsaW5lO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWhlYWRsaW5lLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1oZWFkbGluZSgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tdGl0bGUge1xuICBAaW5jbHVkZSB0eXBvLXRpdGxlO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRpdGxlLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby10aXRsZSgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tc3ViaGVhZCB7XG4gIEBpbmNsdWRlIHR5cG8tc3ViaGVhZDtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1zdWJoZWFkLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1zdWJoZWFkKCRjb2xvckNvbnRyYXN0OiB0cnVlKTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTIge1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMjtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTItY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMigkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tYm9keS0xIHtcbiAgQGluY2x1ZGUgdHlwby1ib2R5LTE7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tYm9keS0xLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1ib2R5LTEoJGNvbG9yQ29udHJhc3Q6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWJvZHktMi1mb3JjZS1wcmVmZXJyZWQtZm9udCB7XG4gIEBpbmNsdWRlIHR5cG8tYm9keS0yKCR1c2VQcmVmZXJyZWQ6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWJvZHktMi1mb3JjZS1wcmVmZXJyZWQtZm9udC1jb2xvci1jb250cmFzdCB7XG4gIEBpbmNsdWRlIHR5cG8tYm9keS0yKCRjb2xvckNvbnRyYXN0OiB0cnVlLCAkdXNlUHJlZmVycmVkOiB0cnVlKTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTEtZm9yY2UtcHJlZmVycmVkLWZvbnQge1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMSgkdXNlUHJlZmVycmVkOiB0cnVlKTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTEtZm9yY2UtcHJlZmVycmVkLWZvbnQtY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMSgkY29sb3JDb250cmFzdDogdHJ1ZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tY2FwdGlvbiB7XG4gIEBpbmNsdWRlIHR5cG8tY2FwdGlvbjtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1jYXB0aW9uLWZvcmNlLXByZWZlcnJlZC1mb250IHtcbiAgQGluY2x1ZGUgdHlwby1jYXB0aW9uKCR1c2VQcmVmZXJyZWQ6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWNhcHRpb24tY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWNhcHRpb24oJGNvbG9yQ29udHJhc3Q6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWNhcHRpb24tZm9yY2UtcHJlZmVycmVkLWZvbnQtY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWNhcHRpb24oJGNvbG9yQ29udHJhc3Q6IHRydWUsICR1c2VQcmVmZXJyZWQ6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLW1lbnUge1xuICBAaW5jbHVkZSB0eXBvLW1lbnU7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tbWVudS1jb2xvci1jb250cmFzdCB7XG4gIEBpbmNsdWRlIHR5cG8tbWVudSgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tYnV0dG9uIHtcbiAgQGluY2x1ZGUgdHlwby1idXR0b247XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tYnV0dG9uLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1idXR0b24oJGNvbG9yQ29udHJhc3Q6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tdGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tdGV4dC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS10ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tdGV4dC1jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tZm9udC10aGluIHtcbiAgZm9udC13ZWlnaHQ6IDIwMCAhaW1wb3J0YW50O1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtbGlnaHQge1xuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tZm9udC1yZWd1bGFyIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtbWVkaXVtIHtcbiAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1mb250LWJsYWNrIHtcbiAgZm9udC13ZWlnaHQ6IDkwMCAhaW1wb3J0YW50O1xufVxuXG4ubWF0ZXJpYWwtaWNvbnMge1xuICBAaW5jbHVkZSB0eXBvLWljb247XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbkBpZiAkdHJpbS1jb2xvci1jbGFzc2VzID09IGZhbHNlIHtcbiAgLy8gUmVkXG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcmVkLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1yZWQtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcmVkLTUwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1yZWQtNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1yZWQtNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtMzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTUwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtNjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTgwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtOTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtQTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1yZWQtQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1yZWQtQTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC1BMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcmVkLUEyMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcmVkLUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcmVkLUEyMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1yZWQtQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXJlZC1BNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC1BNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXJlZC1BNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcmVkLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1yZWQtQTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1yZWQtQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1yZWQtQTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXJlZC1BNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIFBpbmtcblxuICAubWRsLWNvbG9yLXRleHQtLXBpbmsge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcGluay01MCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXBpbmstNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcGluay0xMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcGluay0xMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXBpbmstMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXBpbmstMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1waW5rLTMwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1waW5rLTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcGluay00MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcGluay00MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXBpbmstNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXBpbmstNTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1waW5rLTYwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1waW5rLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcGluay03MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcGluay03MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXBpbmstODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstODAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXBpbmstODAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1waW5rLTkwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1waW5rLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcGluay1BMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1waW5rLUExMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1waW5rLUEyMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay1BMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXBpbmstQTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXBpbmstQTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcGluay1BNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay1BNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcGluay1BNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1waW5rLUE3MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1waW5rLUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gUHVycGxlXG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcHVycGxlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1wdXJwbGUtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcHVycGxlLTUwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1wdXJwbGUtNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1wdXJwbGUtNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtMzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTUwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtNjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTgwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtOTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtQTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1wdXJwbGUtQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1wdXJwbGUtQTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS1BMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tcHVycGxlLUEyMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcHVycGxlLUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tcHVycGxlLUEyMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1wdXJwbGUtQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXB1cnBsZS1BNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS1BNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXB1cnBsZS1BNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcHVycGxlLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1wdXJwbGUtQTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1wdXJwbGUtQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1wdXJwbGUtQTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXB1cnBsZS1BNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIERlZXAgUHVycGxlLlxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZGVlcC1wdXJwbGUge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWRlZXAtcHVycGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZGVlcC1wdXJwbGUtNTAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1wdXJwbGUtNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLXB1cnBsZS01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtcHVycGxlLTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLXB1cnBsZS0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1wdXJwbGUtMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZGVlcC1wdXJwbGUtMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtcHVycGxlLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLXB1cnBsZS0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLXB1cnBsZS0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLXB1cnBsZS0zMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWRlZXAtcHVycGxlLTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtcHVycGxlLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtcHVycGxlLTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLXB1cnBsZS00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1wdXJwbGUtNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZGVlcC1wdXJwbGUtNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtcHVycGxlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLXB1cnBsZS01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLXB1cnBsZS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLXB1cnBsZS02MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWRlZXAtcHVycGxlLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtcHVycGxlLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtcHVycGxlLTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLXB1cnBsZS03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1wdXJwbGUtNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZGVlcC1wdXJwbGUtODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtcHVycGxlLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLXB1cnBsZS04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLXB1cnBsZS04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLXB1cnBsZS05MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWRlZXAtcHVycGxlLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtcHVycGxlLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtcHVycGxlLUExMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLXB1cnBsZS1BMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtcHVycGxlLUEyMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLXB1cnBsZS1BMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtcHVycGxlLUE0MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLXB1cnBsZS1BNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtcHVycGxlLUE3MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLXB1cnBsZS1BNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1wdXJwbGUtQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBJbmRpZ29cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnbyB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1pbmRpZ28tNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWluZGlnbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWluZGlnby01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1pbmRpZ28tNTAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWluZGlnby01MCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWluZGlnby01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby0xMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby0yMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby0zMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tMzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby00MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby01MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tNTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby02MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tNjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby03MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby04MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tODAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby05MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tOTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby1BMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWluZGlnby1BMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWluZGlnby1BMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1pbmRpZ28tQTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1pbmRpZ28tQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1pbmRpZ28tQTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWluZGlnby1BMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0taW5kaWdvLUE0MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0taW5kaWdvLUE0MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1pbmRpZ28tQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWluZGlnby1BNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWluZGlnby1BNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWluZGlnby1BNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtaW5kaWdvLUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQmx1ZVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYmx1ZSB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLTUwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS01MCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ibHVlLTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYmx1ZS0yMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJsdWUtMzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJsdWUtMzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ibHVlLTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYmx1ZS01MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJsdWUtNjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJsdWUtNjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ibHVlLTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYmx1ZS04MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJsdWUtOTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJsdWUtOTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLUExMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS1BMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJsdWUtQTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJsdWUtQTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1BMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS1BMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYmx1ZS1BNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ibHVlLUE0MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLUE3MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS1BNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJsdWUtQTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBMaWdodCBCbHVlXG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saWdodC1ibHVlIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWJsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWJsdWUtNTAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ibHVlLTUwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWJsdWUtMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWJsdWUtMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saWdodC1ibHVlLTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ibHVlLTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtYmx1ZS0zMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtYmx1ZS0zMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWJsdWUtNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWJsdWUtNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saWdodC1ibHVlLTUwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ibHVlLTUwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtYmx1ZS02MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtYmx1ZS02MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWJsdWUtNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWJsdWUtNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saWdodC1ibHVlLTgwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ibHVlLTgwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtODAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtYmx1ZS05MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtYmx1ZS05MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWJsdWUtQTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtYmx1ZS1BMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS1BMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtYmx1ZS1BMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ibHVlLUEyMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saWdodC1ibHVlLUE0MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS1BNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWJsdWUtQTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWJsdWUtQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWJsdWUtQTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ibHVlLUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtYmx1ZS1BNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtYmx1ZS1BNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIEN5YW5cblxuICAubWRsLWNvbG9yLXRleHQtLWN5YW4ge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tY3lhbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tY3lhbi01MCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWN5YW4tNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tY3lhbi0xMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tY3lhbi0xMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWN5YW4tMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWN5YW4tMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1jeWFuLTMwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1jeWFuLTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tY3lhbi00MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tY3lhbi00MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWN5YW4tNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWN5YW4tNTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1jeWFuLTYwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1jeWFuLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tY3lhbi03MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tY3lhbi03MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWN5YW4tODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tODAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWN5YW4tODAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1jeWFuLTkwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1jeWFuLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tY3lhbi1BMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1jeWFuLUExMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1jeWFuLUEyMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi1BMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWN5YW4tQTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWN5YW4tQTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tY3lhbi1BNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtY3lhbi1BNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tY3lhbi1BNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWN5YW4tQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1jeWFuLUE3MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1jeWFuLUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gVGVhbFxuXG4gIC5tZGwtY29sb3ItdGV4dC0tdGVhbCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS10ZWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS10ZWFsLTUwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tdGVhbC01MCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS10ZWFsLTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS10ZWFsLTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tdGVhbC0yMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tdGVhbC0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXRlYWwtMzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXRlYWwtMzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS10ZWFsLTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS10ZWFsLTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tdGVhbC01MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tdGVhbC01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXRlYWwtNjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXRlYWwtNjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS10ZWFsLTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS10ZWFsLTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tdGVhbC04MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tdGVhbC04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXRlYWwtOTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXRlYWwtOTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS10ZWFsLUExMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC1BMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXRlYWwtQTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXRlYWwtQTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tdGVhbC1BMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC1BMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tdGVhbC1BNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS10ZWFsLUE0MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS10ZWFsLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS10ZWFsLUE3MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtdGVhbC1BNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXRlYWwtQTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXRlYWwtQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBHcmVlblxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JlZW4ge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JlZW4tNTAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZ3JlZW4tNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmVlbi01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZWVuLTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmVlbi0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZ3JlZW4tMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JlZW4tMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZWVuLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmVlbi0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmVlbi0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ncmVlbi0zMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWdyZWVuLTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZWVuLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZWVuLTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmVlbi00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZ3JlZW4tNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JlZW4tNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZWVuLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmVlbi01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmVlbi01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ncmVlbi02MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWdyZWVuLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZWVuLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZWVuLTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmVlbi03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZ3JlZW4tNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JlZW4tODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZWVuLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmVlbi04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmVlbi04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ncmVlbi05MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWdyZWVuLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZWVuLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZWVuLUExMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmVlbi1BMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZWVuLUEyMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmVlbi1BMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZWVuLUE0MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmVlbi1BNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZWVuLUE3MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmVlbi1BNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JlZW4tQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBMaWdodCBHcmVlblxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtZ3JlZW4ge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtZ3JlZW4tNTAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtZ3JlZW4tNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ncmVlbi01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWdyZWVuLTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ncmVlbi0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtZ3JlZW4tMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtZ3JlZW4tMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWdyZWVuLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ncmVlbi0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ncmVlbi0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saWdodC1ncmVlbi0zMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWdyZWVuLTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWdyZWVuLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWdyZWVuLTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ncmVlbi00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtZ3JlZW4tNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtZ3JlZW4tNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWdyZWVuLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ncmVlbi01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ncmVlbi01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saWdodC1ncmVlbi02MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWdyZWVuLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWdyZWVuLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWdyZWVuLTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ncmVlbi03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGlnaHQtZ3JlZW4tNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGlnaHQtZ3JlZW4tODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWdyZWVuLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ncmVlbi04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saWdodC1ncmVlbi04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saWdodC1ncmVlbi05MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpZ2h0LWdyZWVuLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpZ2h0LWdyZWVuLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWdyZWVuLUExMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ncmVlbi1BMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWdyZWVuLUEyMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ncmVlbi1BMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWdyZWVuLUE0MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ncmVlbi1BNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpZ2h0LWdyZWVuLUE3MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saWdodC1ncmVlbi1BNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBMaW1lXG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saW1lIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpbWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpbWUtNTAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saW1lLTUwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpbWUtMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpbWUtMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saW1lLTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saW1lLTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGltZS0zMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGltZS0zMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpbWUtNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpbWUtNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saW1lLTUwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saW1lLTUwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGltZS02MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGltZS02MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpbWUtNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpbWUtNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saW1lLTgwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saW1lLTgwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtODAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGltZS05MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGltZS05MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpbWUtQTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGltZS1BMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS1BMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tbGltZS1BMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1saW1lLUEyMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1saW1lLUE0MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS1BNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWxpbWUtQTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWxpbWUtQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWxpbWUtQTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1saW1lLUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tbGltZS1BNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtbGltZS1BNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIFllbGxvd1xuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93IHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXllbGxvdy01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0teWVsbG93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUteWVsbG93LTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXllbGxvdy01MCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0teWVsbG93LTUwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUteWVsbG93LTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy0xMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTMwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy0zMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy00MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTUwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTYwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy02MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy03MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTgwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctODAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctODAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LTkwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy05MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LUExMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUteWVsbG93LUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0teWVsbG93LUExMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLXllbGxvdy1BMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXllbGxvdy1BMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLXllbGxvdy1BMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUteWVsbG93LUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS15ZWxsb3ctQTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS15ZWxsb3ctQTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXllbGxvdy1BNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0teWVsbG93LUE3MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUteWVsbG93LUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0teWVsbG93LUE3MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS15ZWxsb3ctQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBBbWJlclxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYW1iZXIge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWFtYmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYW1iZXItNTAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYW1iZXItNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1hbWJlci01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWFtYmVyLTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1hbWJlci0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYW1iZXItMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYW1iZXItMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWFtYmVyLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1hbWJlci0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1hbWJlci0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1hbWJlci0zMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWFtYmVyLTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWFtYmVyLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWFtYmVyLTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1hbWJlci00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYW1iZXItNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYW1iZXItNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWFtYmVyLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1hbWJlci01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1hbWJlci01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1hbWJlci02MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWFtYmVyLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWFtYmVyLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWFtYmVyLTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1hbWJlci03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYW1iZXItNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYW1iZXItODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWFtYmVyLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1hbWJlci04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1hbWJlci04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1hbWJlci05MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWFtYmVyLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWFtYmVyLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWFtYmVyLUExMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1hbWJlci1BMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItQTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWFtYmVyLUEyMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1hbWJlci1BMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWFtYmVyLUE0MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1hbWJlci1BNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWFtYmVyLUE3MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1hbWJlci1BNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYW1iZXItQTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBPcmFuZ2VcblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZSB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1vcmFuZ2UtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLW9yYW5nZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLW9yYW5nZS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1vcmFuZ2UtNTAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLW9yYW5nZS01MCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLW9yYW5nZS01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS0xMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS0yMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS0zMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtMzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS00MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtNDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS01MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtNTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS02MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtNjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS03MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS04MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtODAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS05MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtOTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS1BMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLW9yYW5nZS1BMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLW9yYW5nZS1BMTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1vcmFuZ2UtQTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1vcmFuZ2UtQTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1vcmFuZ2UtQTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLW9yYW5nZS1BMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tb3JhbmdlLUE0MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tb3JhbmdlLUE0MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1vcmFuZ2UtQTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLW9yYW5nZS1BNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLW9yYW5nZS1BNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLW9yYW5nZS1BNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtb3JhbmdlLUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gRGVlcCBPcmFuZ2VcblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtb3JhbmdlIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLW9yYW5nZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtb3JhbmdlLTUwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWRlZXAtb3JhbmdlLTUwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1vcmFuZ2UtNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLW9yYW5nZS0xMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1vcmFuZ2UtMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWRlZXAtb3JhbmdlLTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtb3JhbmdlLTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLW9yYW5nZS0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1vcmFuZ2UtMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1vcmFuZ2UtMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZGVlcC1vcmFuZ2UtMzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLW9yYW5nZS0zMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLW9yYW5nZS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLW9yYW5nZS00MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1vcmFuZ2UtNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWRlZXAtb3JhbmdlLTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtb3JhbmdlLTUwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLW9yYW5nZS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1vcmFuZ2UtNTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1vcmFuZ2UtNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZGVlcC1vcmFuZ2UtNjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLW9yYW5nZS02MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLW9yYW5nZS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLW9yYW5nZS03MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1vcmFuZ2UtNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWRlZXAtb3JhbmdlLTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWRlZXAtb3JhbmdlLTgwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLW9yYW5nZS04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1vcmFuZ2UtODAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZGVlcC1vcmFuZ2UtODAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZGVlcC1vcmFuZ2UtOTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1kZWVwLW9yYW5nZS05MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1kZWVwLW9yYW5nZS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLW9yYW5nZS1BMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1vcmFuZ2UtQTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLUExMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLW9yYW5nZS1BMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1vcmFuZ2UtQTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLUEyMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLW9yYW5nZS1BNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1vcmFuZ2UtQTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLUE0MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1kZWVwLW9yYW5nZS1BNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZGVlcC1vcmFuZ2UtQTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWRlZXAtb3JhbmdlLUE3MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQnJvd25cblxuICAubWRsLWNvbG9yLXRleHQtLWJyb3duIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1icm93biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJyb3duLTUwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTUwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJyb3duLTUwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYnJvd24tNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1icm93bi0xMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYnJvd24tMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJyb3duLTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJyb3duLTIwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1icm93bi0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYnJvd24tMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYnJvd24tMjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYnJvd24tMzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTMwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1icm93bi0zMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1icm93bi0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1icm93bi00MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYnJvd24tNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJyb3duLTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJyb3duLTUwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1icm93bi01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYnJvd24tNTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYnJvd24tNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYnJvd24tNjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTYwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1icm93bi02MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1icm93bi02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1icm93bi03MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYnJvd24tNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWJyb3duLTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJyb3duLTgwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1icm93bi04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYnJvd24tODAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYnJvd24tODAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYnJvd24tOTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJyb3duLTkwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1icm93bi05MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1icm93bi05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gR3JleVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JleSB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmV5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ncmV5LTUwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZ3JleS01MCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ncmV5LTEwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTEwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmV5LTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktMTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JleS0yMDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZ3JleS0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTIwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZXktMzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktMzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWdyZXktMzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ncmV5LTQwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTQwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmV5LTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNDAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JleS01MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZ3JleS01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZXktNjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNjAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWdyZXktNjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ncmV5LTcwMCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTcwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ncmV5LTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNzAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tZ3JleS04MDAge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tZ3JleS04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTgwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWdyZXktOTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktOTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItLWdyZXktOTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQmx1ZSBHcmV5XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXkge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS1ncmV5LTUwMH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ibHVlLWdyZXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLWdyZXktNTAwfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0tYmx1ZS1ncmV5LTUwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS01MH0pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLS1ibHVlLWdyZXktNTAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLWdyZXktNTB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktMTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS0xMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktMjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS0yMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktMzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS0zMDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktNDAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS00MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktNTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTUwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS01MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktNjAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS02MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktNzAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTcwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS03MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktODAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTgwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS04MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci10ZXh0LS1ibHVlLWdyZXktOTAwIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kbC1jb2xvci0tYmx1ZS1ncmV5LTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWJsdWUtZ3JleS05MDB9KVwiKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQmxhY2tcblxuICAubWRsLWNvbG9yLS1ibGFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1ibGFja30pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWRsLWNvbG9yLXRleHQtLWJsYWNrIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1ibGFja30pXCIpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBXaGl0ZVxuXG4gIC5tZGwtY29sb3ItLXdoaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXdoaXRlfSlcIikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZGwtY29sb3ItdGV4dC0td2hpdGUge1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXdoaXRlfSlcIikgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBQcmltYXJ5IGFuZCBhY2NlbnRcblxuLm1kbC1jb2xvci0tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpICFpbXBvcnRhbnQ7XG59XG5cbi5tZGwtY29sb3ItLXByaW1hcnktY29udHJhc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnktY29udHJhc3R9KVwiKSAhaW1wb3J0YW50O1xufVxuXG4ubWRsLWNvbG9yLS1wcmltYXJ5LWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnktZGFya30pXCIpICFpbXBvcnRhbnQ7XG59XG5cbi5tZGwtY29sb3ItLWFjY2VudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50fSlcIikgIWltcG9ydGFudDtcbn1cblxuLm1kbC1jb2xvci0tYWNjZW50LWNvbnRyYXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnQtY29udHJhc3R9KVwiKSAhaW1wb3J0YW50O1xufVxuXG4ubWRsLWNvbG9yLXRleHQtLXByaW1hcnkge1xuICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIikgIWltcG9ydGFudDtcbn1cblxuLm1kbC1jb2xvci10ZXh0LS1wcmltYXJ5LWNvbnRyYXN0IHtcbiAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeS1jb250cmFzdH0pXCIpICFpbXBvcnRhbnQ7XG59XG5cbi5tZGwtY29sb3ItdGV4dC0tcHJpbWFyeS1kYXJrIHtcbiAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeS1kYXJrfSlcIikgIWltcG9ydGFudDtcbn1cblxuLm1kbC1jb2xvci10ZXh0LS1hY2NlbnQge1xuICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhaW1wb3J0YW50O1xufVxuXG4ubWRsLWNvbG9yLXRleHQtLWFjY2VudC1jb250cmFzdCB7XG4gIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWFjY2VudC1jb250cmFzdH0pXCIpICFpbXBvcnRhbnQ7XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi5tZGwtcmlwcGxlIHtcbiAgYmFja2dyb3VuZCAgICAgICA6ICRyaXBwbGUtYmctY29sb3I7XG4gIGJvcmRlci1yYWRpdXMgICAgOiA1MCU7XG4gIGhlaWdodCAgICAgICAgICAgOiA1MHB4O1xuICBsZWZ0ICAgICAgICAgICAgIDogMDtcbiAgb3BhY2l0eSAgICAgICAgICA6IDA7XG4gIHBvaW50ZXItZXZlbnRzICAgOiBub25lO1xuICBwb3NpdGlvbiAgICAgICAgIDogYWJzb2x1dGU7XG4gIHRvcCAgICAgICAgICAgICAgOiAwO1xuICB0cmFuc2Zvcm0gICAgICAgIDogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aCAgICAgICAgICAgIDogNTBweDtcbiAgb3ZlcmZsb3cgICAgICAgICA6IGhpZGRlbjtcblxuICAmLmlzLWFuaW1hdGluZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgJGFuaW1hdGlvbi1jdXJ2ZS1saW5lYXItb3V0LXNsb3ctaW4sXG4gICAgd2lkdGggMC4zcyAkYW5pbWF0aW9uLWN1cnZlLWxpbmVhci1vdXQtc2xvdy1pbixcbiAgICBoZWlnaHQgMC4zcyAkYW5pbWF0aW9uLWN1cnZlLWxpbmVhci1vdXQtc2xvdy1pbixcbiAgICBvcGFjaXR5IDAuNnMgJGFuaW1hdGlvbi1jdXJ2ZS1saW5lYXItb3V0LXNsb3ctaW47XG4gIH1cblxuICAmLmlzLXZpc2libGUge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgfVxufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG5cbi5tZGwtYW5pbWF0aW9uLS1kZWZhdWx0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRhbmltYXRpb24tY3VydmUtZGVmYXVsdDtcbn1cblxuLm1kbC1hbmltYXRpb24tLWZhc3Qtb3V0LXNsb3ctaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluO1xufVxuXG4ubWRsLWFuaW1hdGlvbi0tbGluZWFyLW91dC1zbG93LWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRhbmltYXRpb24tY3VydmUtbGluZWFyLW91dC1zbG93LWluO1xufVxuXG4ubWRsLWFuaW1hdGlvbi0tZmFzdC1vdXQtbGluZWFyLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtbGluZWFyLWluO1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4ubWRsLWJhZGdlIHtcbiAgcG9zaXRpb24gOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAoJGJhZGdlLXNpemUgKyAkYmFkZ2UtcGFkZGluZyk7XG5cbiAgJjpub3QoW2RhdGEtYmFkZ2VdKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgJltkYXRhLWJhZGdlXTphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWJhZGdlKTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtKCRiYWRnZS1zaXplIC8gMik7XG4gICAgcmlnaHQ6IC0oJGJhZGdlLXNpemUgKyAkYmFkZ2UtcGFkZGluZyk7XG5cbiAgICAubWRsLWJ1dHRvbiAmIHtcbiAgICAgIHRvcDogLTEwcHg7XG4gICAgICByaWdodDogLTVweDtcbiAgICB9XG5cbiAgICBmb250LWZhbWlseTogJHByZWZlcnJlZF9mb250O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAkYmFkZ2UtZm9udC1zaXplO1xuICAgIHdpZHRoOiAkYmFkZ2Utc2l6ZTtcbiAgICBoZWlnaHQ6ICRiYWRnZS1zaXplO1xuICAgIGJvcmRlci1yYWRpdXMgOiA1MCU7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuICB9XG5cbiAgJi5tZGwtYmFkZ2UtLW5vLWJhY2tncm91bmQge1xuICAgICZbZGF0YS1iYWRnZV06YWZ0ZXIge1xuICAgICAgY29sb3I6ICRiYWRnZS1jb2xvci1pbnZlcnNlO1xuICAgICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQtaW52ZXJzZTtcblxuICAgICAgYm94LXNoYWRvdzogMCAwIDFweCBncmF5O1xuICAgIH1cbiAgfVxuICAmLm1kbC1iYWRnZS0tb3ZlcmxhcCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAoJGJhZGdlLXNpemUgLSAkYmFkZ2Utb3ZlcmxhcCk7XG4gICAgJjphZnRlciB7XG4gICAgICByaWdodDogLSgkYmFkZ2Utc2l6ZSAtICRiYWRnZS1vdmVybGFwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9taXhpbnNcIjtcblxuLy8gVGhlIGJ1dHRvbiBjb21wb25lbnQuIERlZmF1bHRzIHRvIGEgZmxhdCBidXR0b24uXG4ubWRsLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWNvbG9yO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJGJ1dHRvbi1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgbWluLXdpZHRoOiAkYnV0dG9uLW1pbi13aWR0aDtcbiAgcGFkZGluZzogMCAkYnV0dG9uLXBhZGRpbmc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgQGluY2x1ZGUgdHlwby1idXR0b24oKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IGJveC1zaGFkb3c7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyAkYW5pbWF0aW9uLWN1cnZlLWZhc3Qtb3V0LWxpbmVhci1pbixcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwLjJzICRhbmltYXRpb24tY3VydmUtZGVmYXVsdCxcbiAgICAgICAgICAgICAgY29sb3IgMC4ycyAkYW5pbWF0aW9uLWN1cnZlLWRlZmF1bHQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1czpub3QoOmFjdGl2ZSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZm9jdXMtY29sb3I7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1hY3RpdmUtY29sb3I7XG4gIH1cblxuICAmLm1kbC1idXR0b24tLWNvbG9yZWQge1xuICAgIGNvbG9yOiAkYnV0dG9uLXByaW1hcnktY29sb3ItYWx0O1xuXG4gICAgJjpmb2N1czpub3QoOmFjdGl2ZSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mb2N1cy1jb2xvci1hbHQ7XG4gICAgfVxuICB9XG59XG5cbmlucHV0Lm1kbC1idXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xufVxuXG4gIC8vIFJhaXNlZCBidXR0b25zXG4gIC5tZGwtYnV0dG9uLS1yYWlzZWQge1xuICAgIGJhY2tncm91bmQ6ICRidXR0b24tcHJpbWFyeS1jb2xvcjtcbiAgICBAaW5jbHVkZSBzaGFkb3ctMmRwKCk7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBzaGFkb3ctNGRwKCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzOm5vdCg6YWN0aXZlKSB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1zaGFkb3coKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYWN0aXZlLWNvbG9yO1xuICAgIH1cblxuICAgICYubWRsLWJ1dHRvbi0tY29sb3JlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLXByaW1hcnktY29sb3ItYWx0O1xuICAgICAgY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWNvbG9yLWFsdDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24taG92ZXItY29sb3ItYWx0O1xuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYWN0aXZlLWNvbG9yLWFsdDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1czpub3QoOmFjdGl2ZSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWFjdGl2ZS1jb2xvci1hbHQ7XG4gICAgICB9XG5cbiAgICAgICYgLm1kbC1yaXBwbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLXJpcHBsZS1jb2xvci1hbHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBGQUJzXG4gIC5tZGwtYnV0dG9uLS1mYWIge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmb250LXNpemU6ICRidXR0b24tZmFiLWZvbnQtc2l6ZTtcbiAgICBoZWlnaHQ6ICRidXR0b24tZmFiLXNpemU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1pbi13aWR0aDogJGJ1dHRvbi1mYWItc2l6ZTtcbiAgICB3aWR0aDogJGJ1dHRvbi1mYWItc2l6ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1wcmltYXJ5LWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDEuNXB4IDAgcmdiYSgwLDAsMCwwLjEyKSwgMCAxcHggMXB4IDAgcmdiYSgwLDAsMCwwLjI0KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgICYgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLSAkYnV0dG9uLWZhYi1mb250LXNpemUgLyAyLCAtICRidXR0b24tZmFiLWZvbnQtc2l6ZSAvIDIpO1xuICAgICAgbGluZS1oZWlnaHQ6ICRidXR0b24tZmFiLWZvbnQtc2l6ZTtcbiAgICAgIHdpZHRoOiAkYnV0dG9uLWZhYi1mb250LXNpemU7XG4gICAgfVxuXG4gICAgJi5tZGwtYnV0dG9uLS1taW5pLWZhYiB7XG4gICAgICBoZWlnaHQ6ICRidXR0b24tZmFiLXNpemUtbWluaTtcbiAgICAgIG1pbi13aWR0aDogJGJ1dHRvbi1mYWItc2l6ZS1taW5pO1xuICAgICAgd2lkdGg6ICRidXR0b24tZmFiLXNpemUtbWluaTtcbiAgICB9XG5cbiAgICAmIC5tZGwtYnV0dG9uX19yaXBwbGUtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIC8vIEZpeGVzIGNsaXBwaW5nIGJ1ZyBpbiBTYWZhcmkuXG4gICAgICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgd2hpdGUsIGJsYWNrKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBzaGFkb3ctNGRwKCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzOm5vdCg6YWN0aXZlKSB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1zaGFkb3coKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYWN0aXZlLWNvbG9yO1xuICAgIH1cblxuICAgICYubWRsLWJ1dHRvbi0tY29sb3JlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZhYi1jb2xvci1hbHQ7XG4gICAgICBjb2xvcjogJGJ1dHRvbi1mYWItdGV4dC1jb2xvci1hbHQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZhYi1ob3Zlci1jb2xvci1hbHQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXM6bm90KDphY3RpdmUpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mYWItYWN0aXZlLWNvbG9yLWFsdDtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZhYi1hY3RpdmUtY29sb3ItYWx0O1xuICAgICAgfVxuXG4gICAgICAmIC5tZGwtcmlwcGxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJ1dHRvbi1mYWItcmlwcGxlLWNvbG9yLWFsdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIEljb24gYnV0dG9uc1xuICAubWRsLWJ1dHRvbi0taWNvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1mYWItZm9udC1zaXplO1xuICAgIGhlaWdodDogJGJ1dHRvbi1pY29uLXNpemU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1pbi13aWR0aDogJGJ1dHRvbi1pY29uLXNpemU7XG4gICAgd2lkdGg6ICRidXR0b24taWNvbi1zaXplO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuXG4gICAgJiAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtICRidXR0b24tZmFiLWZvbnQtc2l6ZSAvIDIsIC0gJGJ1dHRvbi1mYWItZm9udC1zaXplIC8gMik7XG4gICAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi1mYWItZm9udC1zaXplO1xuICAgICAgd2lkdGg6ICRidXR0b24tZmFiLWZvbnQtc2l6ZTtcbiAgICB9XG5cbiAgICAmLm1kbC1idXR0b24tLW1pbmktaWNvbiB7XG4gICAgICBoZWlnaHQ6ICRidXR0b24taWNvbi1zaXplLW1pbmk7XG4gICAgICBtaW4td2lkdGg6ICRidXR0b24taWNvbi1zaXplLW1pbmk7XG4gICAgICB3aWR0aDogJGJ1dHRvbi1pY29uLXNpemUtbWluaTtcblxuICAgICAgJiAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICB0b3A6ICgkYnV0dG9uLWljb24tc2l6ZS1taW5pIC0gJGJ1dHRvbi1mYWItZm9udC1zaXplKSAvIDI7XG4gICAgICAgIGxlZnQ6ICgkYnV0dG9uLWljb24tc2l6ZS1taW5pIC0gJGJ1dHRvbi1mYWItZm9udC1zaXplKSAvIDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAubWRsLWJ1dHRvbl9fcmlwcGxlLWNvbnRhaW5lciB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAvLyBGaXhlcyBjbGlwcGluZyBidWcgaW4gU2FmYXJpLlxuICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHdoaXRlLCBibGFjayk7XG4gICAgfVxuICB9XG5cblxuICAvLyBSaXBwbGVzXG4gIC5tZGwtYnV0dG9uX19yaXBwbGUtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAubWRsLWJ1dHRvbltkaXNhYmxlZF0gJiAubWRsLXJpcHBsZSxcbiAgICAubWRsLWJ1dHRvbi5tZGwtYnV0dG9uLS1kaXNhYmxlZCAmIC5tZGwtcmlwcGxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4vLyBDb2xvcml6ZWQgYnV0dG9uc1xuXG4ubWRsLWJ1dHRvbi0tcHJpbWFyeS5tZGwtYnV0dG9uLS1wcmltYXJ5IHtcbiAgY29sb3I6ICRidXR0b24tcHJpbWFyeS1jb2xvci1hbHQ7XG4gICYgLm1kbC1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6ICRidXR0b24tc2Vjb25kYXJ5LWNvbG9yLWFsdDtcbiAgfVxuICAmLm1kbC1idXR0b24tLXJhaXNlZCwgJi5tZGwtYnV0dG9uLS1mYWIge1xuICAgIGNvbG9yOiAkYnV0dG9uLXNlY29uZGFyeS1jb2xvci1hbHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWNvbG9yLWFsdDtcbiAgfVxufVxuXG4ubWRsLWJ1dHRvbi0tYWNjZW50Lm1kbC1idXR0b24tLWFjY2VudCB7XG4gIGNvbG9yOiAkYnV0dG9uLWZhYi1jb2xvci1hbHQ7XG4gICYgLm1kbC1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6ICRidXR0b24tZmFiLXRleHQtY29sb3ItYWx0O1xuICB9XG4gICYubWRsLWJ1dHRvbi0tcmFpc2VkLCAmLm1kbC1idXR0b24tLWZhYiB7XG4gICAgY29sb3I6ICRidXR0b24tZmFiLXRleHQtY29sb3ItYWx0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZmFiLWNvbG9yLWFsdDtcbiAgfVxufVxuXG4vLyBEaXNhYmxlZCBidXR0b25zXG5cbi5tZGwtYnV0dG9uIHtcbiAgLy8gQnVtcCB1cCBzcGVjaWZpY2l0eSBieSB1c2luZyBbZGlzYWJsZWRdIHR3aWNlLlxuICAmW2Rpc2FibGVkXVtkaXNhYmxlZF0sXG4gICYubWRsLWJ1dHRvbi0tZGlzYWJsZWQubWRsLWJ1dHRvbi0tZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnV0dG9uLXNlY29uZGFyeS1jb2xvci1kaXNhYmxlZDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLS1mYWIge1xuICAgIC8vIEJ1bXAgdXAgc3BlY2lmaWNpdHkgYnkgdXNpbmcgW2Rpc2FibGVkXSB0d2ljZS5cbiAgICAmW2Rpc2FibGVkXVtkaXNhYmxlZF0sXG4gICAgJi5tZGwtYnV0dG9uLS1kaXNhYmxlZC5tZGwtYnV0dG9uLS1kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXByaW1hcnktY29sb3ItZGlzYWJsZWQ7XG4gICAgICBjb2xvcjogJGJ1dHRvbi1zZWNvbmRhcnktY29sb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgJi0tcmFpc2VkIHtcbiAgICAvLyBCdW1wIHVwIHNwZWNpZmljaXR5IGJ5IHVzaW5nIFtkaXNhYmxlZF0gdHdpY2UuXG4gICAgJltkaXNhYmxlZF1bZGlzYWJsZWRdLFxuICAgICYubWRsLWJ1dHRvbi0tZGlzYWJsZWQubWRsLWJ1dHRvbi0tZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWNvbG9yLWRpc2FibGVkO1xuICAgICAgY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWNvbG9yLWRpc2FibGVkO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cbiAgJi0tY29sb3JlZCB7XG4gICAgLy8gQnVtcCB1cCBzcGVjaWZpY2l0eSBieSB1c2luZyBbZGlzYWJsZWRdIHR3aWNlLlxuICAgICZbZGlzYWJsZWRdW2Rpc2FibGVkXSxcbiAgICAmLm1kbC1idXR0b24tLWRpc2FibGVkLm1kbC1idXR0b24tLWRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnV0dG9uLXNlY29uZGFyeS1jb2xvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWxpZ24gaWNvbnMgaW5zaWRlIGJ1dHRvbnMgd2l0aCB0ZXh0XG4ubWRsLWJ1dHRvbiAubWF0ZXJpYWwtaWNvbnMge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4ubWRsLWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LXNpemU6ICRjYXJkLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWluLWhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogJGNhcmQtd2lkdGg7XG4gIHotaW5kZXg6ICRjYXJkLXotaW5kZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZC1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWRsLWNhcmRfX21lZGlhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtaW1hZ2UtcGxhY2Vob2xkZXItY29sb3I7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveDtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tZGwtY2FyZF9fdGl0bGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogJGNhcmQtdGV4dC1jb2xvcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogJGNhcmQtdmVydGljYWwtcGFkZGluZyAkY2FyZC1ob3Jpem9udGFsLXBhZGRpbmc7XG4gIHBlcnNwZWN0aXZlLW9yaWdpbjogJGNhcmQtdGl0bGUtcGVyc3BlY3RpdmUtb3JpZ2luLXggJGNhcmQtdGl0bGUtcGVyc3BlY3RpdmUtb3JpZ2luLXk7XG4gIHRyYW5zZm9ybS1vcmlnaW46ICRjYXJkLXRpdGxlLXRyYW5zZm9ybS1vcmlnaW4teCAkY2FyZC10aXRsZS10cmFuc2Zvcm0tb3JpZ2luLXk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgJi5tZGwtY2FyZC0tYm9yZGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cbi5tZGwtY2FyZF9fdGl0bGUtdGV4dCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogJGNhcmQtdGl0bGUtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGNhcmQtdGl0bGUtdGV4dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogJGNhcmQtdGl0bGUtdGV4dC10cmFuc2Zvcm0tb3JpZ2luLXggJGNhcmQtdGl0bGUtdGV4dC10cmFuc2Zvcm0tb3JpZ2luLXk7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1kbC1jYXJkX19zdWJ0aXRsZS10ZXh0IHtcbiAgZm9udC1zaXplOiAkY2FyZC1zdWJ0aXRsZS1mb250LXNpemU7XG4gIGNvbG9yOiAkY2FyZC1zdWJ0aXRsZS1jb2xvcjtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubWRsLWNhcmRfX3N1cHBvcnRpbmctdGV4dCB7XG4gIGNvbG9yOiAkY2FyZC1zdXBwb3J0aW5nLXRleHQtdGV4dC1jb2xvcjtcbiAgZm9udC1zaXplOiAkY2FyZC1zdXBwb3J0aW5nLXRleHQtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGNhcmQtc3VwcG9ydGluZy10ZXh0LWxpbmUtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAkY2FyZC12ZXJ0aWNhbC1wYWRkaW5nICRjYXJkLWhvcml6b250YWwtcGFkZGluZztcbiAgd2lkdGg6IDkwJTtcbn1cblxuLm1kbC1jYXJkX19hY3Rpb25zIHtcbiAgZm9udC1zaXplOiAkY2FyZC1hY3Rpb25zLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG4gIHBhZGRpbmc6IDhweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAmLm1kbC1jYXJkLS1ib3JkZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuLm1kbC1jYXJkLS1leHBhbmQge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cblxuLm1kbC1jYXJkX19tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTZweDtcbiAgdG9wOiAxNnB4O1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG4ubWRsLWNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHotaW5kZXg6IDE7XG5cbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGNoZWNrYm94LWxhYmVsLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICYuaXMtdXBncmFkZWQge1xuICAgIHBhZGRpbmctbGVmdDogJGNoZWNrYm94LWJ1dHRvbi1zaXplICsgJGNoZWNrYm94LXBhZGRpbmc7XG4gIH1cbn1cblxuLm1kbC1jaGVja2JveF9faW5wdXQge1xuICBsaW5lLWhlaWdodDogJGNoZWNrYm94LWxhYmVsLWhlaWdodDtcblxuICAubWRsLWNoZWNrYm94LmlzLXVwZ3JhZGVkICYge1xuICAgIC8vIEhpZGUgaW5wdXQgZWxlbWVudCwgd2hpbGUgc3RpbGwgbWFraW5nIGl0IHJlc3BvbmQgdG8gZm9jdXMuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuLm1kbC1jaGVja2JveF9fYm94LW91dGxpbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogJGNoZWNrYm94LXRvcC1vZmZzZXQ7XG4gIGxlZnQ6IDA7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAkY2hlY2tib3gtYnV0dG9uLXNpemU7XG4gIGhlaWdodDogJGNoZWNrYm94LWJ1dHRvbi1zaXplO1xuICBtYXJnaW46IDA7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGJvcmRlcjogMnB4IHNvbGlkICRjaGVja2JveC1vZmYtY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcblxuICB6LWluZGV4OiAyO1xuXG4gIC5tZGwtY2hlY2tib3guaXMtY2hlY2tlZCAmIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY2hlY2tib3gtY29sb3I7XG4gIH1cblxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1kbC1jaGVja2JveCAmLFxuICAubWRsLWNoZWNrYm94LmlzLWRpc2FibGVkICYge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjaGVja2JveC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLm1kbC1jaGVja2JveF9fZm9jdXMtaGVscGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICRjaGVja2JveC10b3Atb2Zmc2V0O1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogJGNoZWNrYm94LWJ1dHRvbi1zaXplO1xuICBoZWlnaHQ6ICRjaGVja2JveC1idXR0b24tc2l6ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIC5tZGwtY2hlY2tib3guaXMtZm9jdXNlZCAmIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMHB4ICgkY2hlY2tib3gtYnV0dG9uLXNpemUgLyAyKSByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG5cbiAgLm1kbC1jaGVja2JveC5pcy1mb2N1c2VkLmlzLWNoZWNrZWQgJiB7XG4gICAgYm94LXNoYWRvdzogMCAwIDBweCAoJGNoZWNrYm94LWJ1dHRvbi1zaXplIC8gMikgJGNoZWNrYm94LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjaGVja2JveC1mb2N1cy1jb2xvcjtcbiAgfVxufVxuXG4ubWRsLWNoZWNrYm94X190aWNrLW91dGxpbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFzazogdXJsKFwiI3skY2hlY2tib3gtaW1hZ2UtcGF0aH0vdGljay1tYXNrLnN2Zz9lbWJlZFwiKTtcblxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgbWF0ZXJpYWwtYW5pbWF0aW9uLWRlZmF1bHQoMC4yOHMpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kO1xuXG4gIC5tZGwtY2hlY2tib3guaXMtY2hlY2tlZCAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkY2hlY2tib3gtY29sb3IgdXJsKFwiI3skY2hlY2tib3gtaW1hZ2UtcGF0aH0vdGljay5zdmc/ZW1iZWRcIik7XG4gIH1cblxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1kbC1jaGVja2JveC5pcy1jaGVja2VkICYsXG4gIC5tZGwtY2hlY2tib3guaXMtY2hlY2tlZC5pcy1kaXNhYmxlZCAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkY2hlY2tib3gtZGlzYWJsZWQtY29sb3IgdXJsKFwiI3skY2hlY2tib3gtaW1hZ2UtcGF0aH0vdGljay5zdmc/ZW1iZWRcIik7XG4gIH1cbn1cblxuLm1kbC1jaGVja2JveF9fbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAkY2hlY2tib3gtbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGNoZWNrYm94LWxhYmVsLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAubWRsLWNoZWNrYm94ICYsXG4gIC5tZGwtY2hlY2tib3guaXMtZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6ICRjaGVja2JveC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLm1kbC1jaGVja2JveF9fcmlwcGxlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAtKCgkY2hlY2tib3gtcmlwcGxlLXNpemUgLSAkY2hlY2tib3gtbGFiZWwtaGVpZ2h0KSAvIDIpO1xuICBsZWZ0OiAtKCgkY2hlY2tib3gtcmlwcGxlLXNpemUgLSAkY2hlY2tib3gtYnV0dG9uLXNpemUpIC8gMik7XG5cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6ICRjaGVja2JveC1yaXBwbGUtc2l6ZTtcbiAgaGVpZ2h0OiAkY2hlY2tib3gtcmlwcGxlLXNpemU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHdoaXRlLCBibGFjayk7XG5cbiAgJiAubWRsLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZDogJGNoZWNrYm94LWNvbG9yO1xuICB9XG5cbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5tZGwtY2hlY2tib3ggJixcbiAgLm1kbC1jaGVja2JveC5pcy1kaXNhYmxlZCAmIHtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cblxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1kbC1jaGVja2JveCAmIC5tZGwtcmlwcGxlLFxuICAubWRsLWNoZWNrYm94LmlzLWRpc2FibGVkICYgLm1kbC1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi4vbWl4aW5zXCI7XG5cbi5tZGwtZGF0YS10YWJsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAkZGF0YS10YWJsZS1kaXZpZGVycztcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZm9udC1zaXplOiAkZGF0YS10YWJsZS1mb250LXNpemU7XG4gIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3Itd2hpdGV9KVwiKTtcblxuICB0aGVhZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDNweDtcblxuICAgIC5tZGwtZGF0YS10YWJsZV9fc2VsZWN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkge1xuICAgIHRyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogJGRhdGEtdGFibGUtcm93LWhlaWdodDtcbiAgICAgIEBpbmNsdWRlIG1hdGVyaWFsLWFuaW1hdGlvbi1kZWZhdWx0KDAuMjhzKTtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3I7XG5cbiAgICAgICYuaXMtc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0YS10YWJsZS1zZWxlY3Rpb24tY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0YS10YWJsZS1ob3Zlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0ZCwgdGgge1xuICAgIHBhZGRpbmc6IDAgJGRhdGEtdGFibGUtY29sdW1uLXBhZGRpbmcgMTJweCAkZGF0YS10YWJsZS1jb2x1bW4tcGFkZGluZztcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gICAgfVxuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgICB9XG4gIH1cblxuICB0ZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgaGVpZ2h0OiAkZGF0YS10YWJsZS1yb3ctaGVpZ2h0O1xuICAgIGJvcmRlci10b3A6ICRkYXRhLXRhYmxlLWRpdmlkZXJzO1xuICAgIGJvcmRlci1ib3R0b206ICRkYXRhLXRhYmxlLWRpdmlkZXJzO1xuICAgIHBhZGRpbmctdG9wOiAkZGF0YS10YWJsZS1jZWxsLXRvcDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgLm1kbC1kYXRhLXRhYmxlX19zZWxlY3Qge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICB0aCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgQGluY2x1ZGUgdHlwby1ib2R5LTIoKTtcbiAgICBoZWlnaHQ6ICRkYXRhLXRhYmxlLXJvdy1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkZGF0YS10YWJsZS1oZWFkZXItZm9udC1zaXplO1xuICAgIGNvbG9yOiAkZGF0YS10YWJsZS1oZWFkZXItY29sb3I7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgJi5tZGwtZGF0YS10YWJsZV9faGVhZGVyLS1zb3J0ZWQtYXNjZW5kaW5nLFxuICAgICYubWRsLWRhdGEtdGFibGVfX2hlYWRlci0tc29ydGVkLWRlc2NlbmRpbmcge1xuICAgICAgY29sb3I6ICRkYXRhLXRhYmxlLWhlYWRlci1zb3J0ZWQtY29sb3I7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHR5cG8taWNvbjtcbiAgICAgICAgZm9udC1zaXplOiAkZGF0YS10YWJsZS1oZWFkZXItc29ydC1pY29uLXNpemU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlNWQ4XCI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbG9yOiAkZGF0YS10YWJsZS1oZWFkZXItc29ydGVkLWljb24taG92ZXItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5tZGwtZGF0YS10YWJsZV9faGVhZGVyLS1zb3J0ZWQtZGVzY2VuZGluZzpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU1ZGJcIjtcbiAgICB9XG4gIH1cbn1cblxuLm1kbC1kYXRhLXRhYmxlX19zZWxlY3Qge1xuICB3aWR0aDogMTZweDtcbn1cblxuLm1kbC1kYXRhLXRhYmxlX19jZWxsLS1ub24tbnVtZXJpYy5tZGwtZGF0YS10YWJsZV9fY2VsbC0tbm9uLW51bWVyaWMge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG4ubWRsLWRpYWxvZyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIEBpbmNsdWRlIHNoYWRvdy0yNGRwO1xuICAgIEBpbmNsdWRlIGRpYWxvZy13aWR0aDtcblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgcGFkZGluZzogMjRweCAyNHB4IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgfVxuICAgICZfX2FjdGlvbnMge1xuICAgICAgICBwYWRkaW5nOiA4cHggOHB4IDhweCAyNHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtLWZ1bGwtd2lkdGgge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCA4cHggMDtcbiAgICAgICAgICA+ICoge1xuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDI0cHggMjRweCAyNHB4O1xuICAgICAgICBjb2xvcjogJGRpYWxvZy1jb250ZW50LWNvbG9yO1xuICAgIH1cbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9taXhpbnNcIjtcblxuLm1kbC1tZWdhLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRmb290ZXItbWluLXBhZGRpbmcgJGZvb3Rlci1wYWRkaW5nLXNpZGVzO1xuXG4gIGNvbG9yOiAkZm9vdGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLWJnLWNvbG9yO1xufVxuXG5cbi5tZGwtbWVnYS1mb290ZXItLXRvcC1zZWN0aW9uOmFmdGVyLFxuLm1kbC1tZWdhLWZvb3Rlci0tbWlkZGxlLXNlY3Rpb246YWZ0ZXIsXG4ubWRsLW1lZ2EtZm9vdGVyLS1ib3R0b20tc2VjdGlvbjphZnRlcixcbi5tZGwtbWVnYS1mb290ZXJfX3RvcC1zZWN0aW9uOmFmdGVyLFxuLm1kbC1tZWdhLWZvb3Rlcl9fbWlkZGxlLXNlY3Rpb246YWZ0ZXIsXG4ubWRsLW1lZ2EtZm9vdGVyX19ib3R0b20tc2VjdGlvbjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5tZGwtbWVnYS1mb290ZXItLWxlZnQtc2VjdGlvbixcbi5tZGwtbWVnYS1mb290ZXJfX2xlZnQtc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206ICRmb290ZXItbWluLXBhZGRpbmc7XG59XG5cbi5tZGwtbWVnYS1mb290ZXItLXJpZ2h0LXNlY3Rpb24sXG4ubWRsLW1lZ2EtZm9vdGVyX19yaWdodC1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvb3Rlci1taW4tcGFkZGluZztcbn1cblxuLm1kbC1tZWdhLWZvb3Rlci0tcmlnaHQtc2VjdGlvbiBhLFxuLm1kbC1tZWdhLWZvb3Rlcl9fcmlnaHQtc2VjdGlvbiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgbWFyZ2luLWJvdHRvbTogJGZvb3Rlci1taW4tcGFkZGluZztcblxuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAubWRsLW1lZ2EtZm9vdGVyLS1sZWZ0LXNlY3Rpb24sXG4gIC5tZGwtbWVnYS1mb290ZXJfX2xlZnQtc2VjdGlvbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAubWRsLW1lZ2EtZm9vdGVyLS1yaWdodC1zZWN0aW9uLFxuICAubWRsLW1lZ2EtZm9vdGVyX19yaWdodC1zZWN0aW9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAubWRsLW1lZ2EtZm9vdGVyLS1yaWdodC1zZWN0aW9uIGEsXG4gIC5tZGwtbWVnYS1mb290ZXJfX3JpZ2h0LXNlY3Rpb24gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgbWFyZ2luLWxlZnQ6ICRmb290ZXItbWluLXBhZGRpbmc7XG5cbiAgICBsaW5lLWhlaWdodDogJGZvb3Rlci1idG4tc2l6ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi5tZGwtbWVnYS1mb290ZXItLXNvY2lhbC1idG4sXG4ubWRsLW1lZ2EtZm9vdGVyX19zb2NpYWwtYnRuIHtcbiAgd2lkdGg6ICRmb290ZXItYnRuLXNpemU7XG4gIGhlaWdodDogJGZvb3Rlci1idG4tc2l6ZTtcblxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1idXR0b24tZmlsbC1jb2xvcjtcblxuICBib3JkZXI6IG5vbmU7XG59XG5cbi5tZGwtbWVnYS1mb290ZXItLWRyb3AtZG93bi1zZWN0aW9uLFxuLm1kbC1tZWdhLWZvb3Rlcl9fZHJvcC1kb3duLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2MHB4KSB7XG4gIC5tZGwtbWVnYS1mb290ZXItLWRyb3AtZG93bi1zZWN0aW9uLFxuICAubWRsLW1lZ2EtZm9vdGVyX19kcm9wLWRvd24tc2VjdGlvbiB7XG4gICAgd2lkdGg6IDMzJTtcbiAgfVxuXG4gIC5tZGwtbWVnYS1mb290ZXItLWRyb3AtZG93bi1zZWN0aW9uOm50aC1jaGlsZCgxKSxcbiAgLm1kbC1tZWdhLWZvb3Rlci0tZHJvcC1kb3duLXNlY3Rpb246bnRoLWNoaWxkKDIpLFxuICAubWRsLW1lZ2EtZm9vdGVyX19kcm9wLWRvd24tc2VjdGlvbjpudGgtY2hpbGQoMSksXG4gIC5tZGwtbWVnYS1mb290ZXJfX2Ryb3AtZG93bi1zZWN0aW9uOm50aC1jaGlsZCgyKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAubWRsLW1lZ2EtZm9vdGVyLS1kcm9wLWRvd24tc2VjdGlvbjpudGgtY2hpbGQoMyksXG4gIC5tZGwtbWVnYS1mb290ZXJfX2Ryb3AtZG93bi1zZWN0aW9uOm50aC1jaGlsZCgzKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjbGVhcjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLm1kbC1tZWdhLWZvb3Rlci0tZHJvcC1kb3duLXNlY3Rpb246bnRoLWNoaWxkKDQpLFxuICAubWRsLW1lZ2EtZm9vdGVyX19kcm9wLWRvd24tc2VjdGlvbjpudGgtY2hpbGQoNCkge1xuICAgIGNsZWFyOiByaWdodDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAubWRsLW1lZ2EtZm9vdGVyLS1taWRkbGUtc2VjdGlvbjphZnRlcixcbiAgLm1kbC1tZWdhLWZvb3Rlcl9fbWlkZGxlLXNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBjbGVhcjogYm90aDtcbiAgfVxuXG4gIC5tZGwtbWVnYS1mb290ZXItLWJvdHRvbS1zZWN0aW9uLFxuICAubWRsLW1lZ2EtZm9vdGVyX19ib3R0b20tc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5tZGwtbWVnYS1mb290ZXItLWRyb3AtZG93bi1zZWN0aW9uLFxuICAubWRsLW1lZ2EtZm9vdGVyLS1kcm9wLWRvd24tc2VjdGlvbjpudGgtY2hpbGQoMyksXG4gIC5tZGwtbWVnYS1mb290ZXItLWRyb3AtZG93bi1zZWN0aW9uOm50aC1jaGlsZCg0KSxcbiAgLm1kbC1tZWdhLWZvb3Rlcl9fZHJvcC1kb3duLXNlY3Rpb24sXG4gIC5tZGwtbWVnYS1mb290ZXJfX2Ryb3AtZG93bi1zZWN0aW9uOm50aC1jaGlsZCgzKSxcbiAgLm1kbC1tZWdhLWZvb3Rlcl9fZHJvcC1kb3duLXNlY3Rpb246bnRoLWNoaWxkKDQpIHtcbiAgICB3aWR0aDogMjQlO1xuXG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLm1kbC1tZWdhLWZvb3Rlci0taGVhZGluZy1jaGVja2JveCxcbi5tZGwtbWVnYS1mb290ZXJfX2hlYWRpbmctY2hlY2tib3gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRmb290ZXItaGVhZGluZy1saW5lLWhlaWdodCArICgkZm9vdGVyLW1pbi1wYWRkaW5nICogMik7XG5cbiAgcGFkZGluZzogKCRmb290ZXItbWluLXBhZGRpbmcgKiAyKTtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tdG9wOiAtJGZvb3Rlci1taW4tcGFkZGluZztcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMDtcblxuICAmICsgLm1kbC1tZWdhLWZvb3Rlci0taGVhZGluZzphZnRlcixcbiAgJiArIC5tZGwtbWVnYS1mb290ZXJfX2hlYWRpbmc6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXEU1Q0UnXG4gIH1cbn1cblxuLm1kbC1tZWdhLWZvb3Rlci0taGVhZGluZy1jaGVja2JveDpjaGVja2VkLFxuLm1kbC1tZWdhLWZvb3Rlcl9faGVhZGluZy1jaGVja2JveDpjaGVja2VkIHtcbiAgLy8gV2ViVmlld3MgaW4gaU9TIDkgYnJlYWsgdGhlIFwiflwiIG9wZXJhdG9yLCBhbmQgV2ViVmlld3MgaW4gT1MgWCAxMC4xMFxuICAvLyBicmVhayBjb25zZWN1dGl2ZSBcIitcIiBvcGVyYXRvcnMgaW4gc29tZSBjYXNlcy4gVGhlcmVmb3JlLCB3ZSBuZWVkIHRvIHVzZVxuICAvLyBib3RoIGhlcmUgdG8gY292ZXIgYWxsIHRoZSBiYXNlcy5cbiAgJiB+IC5tZGwtbWVnYS1mb290ZXItLWxpbmstbGlzdCxcbiAgJiB+IC5tZGwtbWVnYS1mb290ZXJfX2xpbmstbGlzdCxcbiAgJiArIC5tZGwtbWVnYS1mb290ZXItLWhlYWRpbmcgKyAubWRsLW1lZ2EtZm9vdGVyLS1saW5rLWxpc3QsXG4gICYgKyAubWRsLW1lZ2EtZm9vdGVyX19oZWFkaW5nICsgLm1kbC1tZWdhLWZvb3Rlcl9fbGluay1saXN0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJiArIC5tZGwtbWVnYS1mb290ZXItLWhlYWRpbmc6YWZ0ZXIsXG4gICYgKyAubWRsLW1lZ2EtZm9vdGVyX19oZWFkaW5nOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxFNUNGJ1xuICB9XG59XG5cbi5tZGwtbWVnYS1mb290ZXItLWhlYWRpbmcsXG4ubWRsLW1lZ2EtZm9vdGVyX19oZWFkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICBwYWRkaW5nLXJpZ2h0OiAkZm9vdGVyLWhlYWRpbmctbGluZS1oZWlnaHQgKyAkZm9vdGVyLW1pbi1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkZm9vdGVyLW1pbi1wYWRkaW5nO1xuXG4gIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcblxuICBmb250LXNpemU6ICRmb290ZXItaGVhZGluZy1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkZm9vdGVyLWhlYWRpbmctbGluZS1oZWlnaHQ7XG5cbiAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBjb2xvcjogJGZvb3Rlci1oZWFkaW5nLWNvbG9yO1xufVxuXG4ubWRsLW1lZ2EtZm9vdGVyLS1oZWFkaW5nOmFmdGVyLFxuLm1kbC1tZWdhLWZvb3Rlcl9faGVhZGluZzphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICB3aWR0aDogJGZvb3Rlci1oZWFkaW5nLWxpbmUtaGVpZ2h0O1xuICBoZWlnaHQ6ICRmb290ZXItaGVhZGluZy1saW5lLWhlaWdodDtcblxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ubWRsLW1lZ2EtZm9vdGVyLS1saW5rLWxpc3QsXG4ubWRsLW1lZ2EtZm9vdGVyX19saW5rLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICBtYXJnaW4tYm90dG9tOiAkZm9vdGVyLW1pbi1wYWRkaW5nICogMjtcbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gIH1cbn1cblxuLm1kbC1tZWdhLWZvb3Rlci0tbGluay1saXN0IGxpLFxuLm1kbC1tZWdhLWZvb3Rlcl9fbGluay1saXN0IGxpIHtcbiAgQGluY2x1ZGUgdHlwby1ib2R5LTEoKTtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG5cbi5tZGwtbWVnYS1mb290ZXItLWxpbmstbGlzdCBhLFxuLm1kbC1tZWdhLWZvb3Rlcl9fbGluay1saXN0IGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAubWRsLW1lZ2EtZm9vdGVyLS1oZWFkaW5nLWNoZWNrYm94LFxuICAubWRsLW1lZ2EtZm9vdGVyX19oZWFkaW5nLWNoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJiArIC5tZGwtbWVnYS1mb290ZXItLWhlYWRpbmc6YWZ0ZXIsXG4gICAgJiArIC5tZGwtbWVnYS1mb290ZXJfX2hlYWRpbmc6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgfVxuICB9XG4gIC5tZGwtbWVnYS1mb290ZXItLWhlYWRpbmctY2hlY2tib3g6Y2hlY2tlZCxcbiAgLm1kbC1tZWdhLWZvb3Rlcl9faGVhZGluZy1jaGVja2JveDpjaGVja2VkIHtcbiAgICAvLyBXZWJWaWV3cyBpbiBpT1MgOSBicmVhayB0aGUgXCJ+XCIgb3BlcmF0b3IsIGFuZCBXZWJWaWV3cyBpbiBPUyBYIDEwLjEwXG4gICAgLy8gYnJlYWsgY29uc2VjdXRpdmUgXCIrXCIgb3BlcmF0b3JzIGluIHNvbWUgY2FzZXMuIFRoZXJlZm9yZSwgd2UgbmVlZCB0byB1c2VcbiAgICAvLyBib3RoIGhlcmUgdG8gY292ZXIgYWxsIHRoZSBiYXNlcy5cbiAgICAmIH4gLm1kbC1tZWdhLWZvb3Rlci0tbGluay1saXN0LFxuICAgICYgfiAubWRsLW1lZ2EtZm9vdGVyX19saW5rLWxpc3QsXG4gICAgJiArIC5tZGwtbWVnYS1mb290ZXJfX2hlYWRpbmcgKyAubWRsLW1lZ2EtZm9vdGVyX19saW5rLWxpc3QsXG4gICAgJiArIC5tZGwtbWVnYS1mb290ZXItLWhlYWRpbmcgKyAubWRsLW1lZ2EtZm9vdGVyLS1saW5rLWxpc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJiArIC5tZGwtbWVnYS1mb290ZXItLWhlYWRpbmc6YWZ0ZXIsXG4gICAgJiArIC5tZGwtbWVnYS1mb290ZXJfX2hlYWRpbmc6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgfVxuICB9XG59XG5cbi5tZGwtbWVnYS1mb290ZXItLWJvdHRvbS1zZWN0aW9uLFxuLm1kbC1tZWdhLWZvb3Rlcl9fYm90dG9tLXNlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogJGZvb3Rlci1taW4tcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGZvb3Rlci1taW4tcGFkZGluZztcbn1cblxuLm1kbC1sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvb3Rlci1taW4tcGFkZGluZztcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ubWRsLW1lZ2EtZm9vdGVyLS1ib3R0b20tc2VjdGlvbiAubWRsLW1lZ2EtZm9vdGVyLS1saW5rLWxpc3QgbGksXG4ubWRsLW1lZ2EtZm9vdGVyX19ib3R0b20tc2VjdGlvbiAubWRsLW1lZ2EtZm9vdGVyX19saW5rLWxpc3QgbGkge1xuICBmbG9hdDogbGVmdDtcblxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tcmlnaHQ6ICRmb290ZXItbWluLXBhZGRpbmc7XG59XG5cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAubWRsLWxvZ28ge1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb290ZXItbWluLXBhZGRpbmc7XG4gIH1cbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLm1kbC1taW5pLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICBwYWRkaW5nOiAoJHBhZGRpbmcgKiAyKSAkcGFkZGluZztcblxuICBjb2xvcjogJGZvb3Rlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1iZy1jb2xvcjtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLm1kbC1sb2dvIHtcbiAgICBsaW5lLWhlaWdodDogJGZvb3Rlci1idG4tc2l6ZTtcbiAgfVxufVxuXG4ubWRsLW1pbmktZm9vdGVyLS1saW5rLWxpc3QsXG4ubWRsLW1pbmktZm9vdGVyX19saW5rLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG5cbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgJiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRwYWRkaW5nO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYwcHgpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkZm9vdGVyLWJ0bi1zaXplO1xuICAgIH1cbiAgfVxuXG4gICYgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuLm1kbC1taW5pLWZvb3Rlci0tbGVmdC1zZWN0aW9uLFxuLm1kbC1taW5pLWZvb3Rlcl9fbGVmdC1zZWN0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcmRlcjogMDtcbn1cblxuLm1kbC1taW5pLWZvb3Rlci0tcmlnaHQtc2VjdGlvbixcbi5tZGwtbWluaS1mb290ZXJfX3JpZ2h0LXNlY3Rpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9yZGVyOiAxO1xufVxuXG4ubWRsLW1pbmktZm9vdGVyLS1zb2NpYWwtYnRuLFxuLm1kbC1taW5pLWZvb3Rlcl9fc29jaWFsLWJ0biB7XG4gIHdpZHRoOiAkZm9vdGVyLWJ0bi1zaXplO1xuICBoZWlnaHQ6ICRmb290ZXItYnRuLXNpemU7XG5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXItYnV0dG9uLWZpbGwtY29sb3I7XG5cbiAgYm9yZGVyOiBub25lO1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4ubWRsLWljb24tdG9nZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHotaW5kZXg6IDE7XG5cbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogJGljb24tdG9nZ2xlLXNpemU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1kbC1pY29uLXRvZ2dsZV9faW5wdXQge1xuICBsaW5lLWhlaWdodDogJGljb24tdG9nZ2xlLXNpemU7XG5cbiAgLm1kbC1pY29uLXRvZ2dsZS5pcy11cGdyYWRlZCAmIHtcbiAgICAvLyBIaWRlIGlucHV0IGVsZW1lbnQsIHdoaWxlIHN0aWxsIG1ha2luZyBpdCByZXNwb25kIHRvIGZvY3VzLlxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5cbi5tZGwtaWNvbi10b2dnbGVfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAkaWNvbi10b2dnbGUtc2l6ZTtcbiAgd2lkdGg6ICRpY29uLXRvZ2dsZS1zaXplO1xuICBtaW4td2lkdGg6ICRpY29uLXRvZ2dsZS1zaXplO1xuICBjb2xvcjogJGljb24tdG9nZ2xlLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpbGwtY2hhbmdlOiBiYWNrZ3JvdW5kLWNvbG9yO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgJGFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0LFxuICBjb2xvciAwLjJzICRhbmltYXRpb24tY3VydmUtZGVmYXVsdDtcblxuICAmLm1hdGVyaWFsLWljb25zIHtcbiAgICBsaW5lLWhlaWdodDogJGljb24tdG9nZ2xlLXNpemU7XG4gICAgZm9udC1zaXplOiAkaWNvbi10b2dnbGUtZm9udC1zaXplO1xuICB9XG5cbiAgLm1kbC1pY29uLXRvZ2dsZS5pcy1jaGVja2VkICYge1xuICAgIGNvbG9yOiAkaWNvbi10b2dnbGUtY2hlY2tlZC1jb2xvcjtcbiAgfVxuXG4gIC5tZGwtaWNvbi10b2dnbGUuaXMtZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6ICRpY29uLXRvZ2dsZS1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5tZGwtaWNvbi10b2dnbGUuaXMtZm9jdXNlZCAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi10b2dnbGUtZm9jdXMtY29sb3I7XG4gIH1cblxuICAubWRsLWljb24tdG9nZ2xlLmlzLWZvY3VzZWQuaXMtY2hlY2tlZCAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi10b2dnbGUtY2hlY2tlZC1mb2N1cy1jb2xvcjtcbiAgfVxufVxuXG5cbi5tZGwtaWNvbi10b2dnbGVfX3JpcHBsZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogLSgoJGljb24tdG9nZ2xlLXJpcHBsZS1zaXplIC0gJGljb24tdG9nZ2xlLXNpemUpIC8gMik7XG4gIGxlZnQ6IC0oKCRpY29uLXRvZ2dsZS1yaXBwbGUtc2l6ZSAtICRpY29uLXRvZ2dsZS1zaXplKSAvIDIpO1xuXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAkaWNvbi10b2dnbGUtcmlwcGxlLXNpemU7XG4gIGhlaWdodDogJGljb24tdG9nZ2xlLXJpcHBsZS1zaXplO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCB3aGl0ZSwgYmxhY2spO1xuXG4gICYgLm1kbC1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6ICRpY29uLXRvZ2dsZS1jb2xvcjtcbiAgfVxuXG4gIC5tZGwtaWNvbi10b2dnbGUuaXMtZGlzYWJsZWQgJiB7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG5cbiAgLm1kbC1pY29uLXRvZ2dsZS5pcy1kaXNhYmxlZCAmIC5tZGwtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG5cbi5tZGwtbGlzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ib3JkZXIgMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm1kbC1saXN0X19pdGVtIHtcbiAgQGluY2x1ZGUgdHlwby1zdWJoZWFkKCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4taGVpZ2h0OiAkbGlzdC1taW4taGVpZ2h0O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGxpc3QtbWluLXBhZGRpbmc7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6ICRsaXN0LW1haW4tdGV4dC10ZXh0LWNvbG9yO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICYgLm1kbC1saXN0X19pdGVtLXByaW1hcnktY29udGVudCB7XG4gICAgb3JkZXI6IDA7XG4gICAgZmxleC1ncm93OiAyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICYgLm1kbC1saXN0X19pdGVtLWljb24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pY29uLXRleHQtbGVmdC1kaXN0YW5jZSAtICRsaXN0LWljb24tc2l6ZSAtICRsaXN0LW1pbi1wYWRkaW5nO1xuICAgIH1cblxuICAgICYgLm1kbC1saXN0X19pdGVtLWF2YXRhciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWF2YXRhci10ZXh0LWxlZnQtZGlzdGFuY2UgLSAkbGlzdC1hdmF0YXItc2l6ZSAtICRsaXN0LW1pbi1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gICYgLm1kbC1saXN0X19pdGVtLXNlY29uZGFyeS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tbGVmdDogJGxpc3QtbWluLXBhZGRpbmc7XG5cbiAgICAmIC5tZGwtbGlzdF9faXRlbS1zZWNvbmRhcnktYWN0aW9uIGxhYmVsIHsgZGlzcGxheTogaW5saW5lOyB9XG4gICAgJiAubWRsLWxpc3RfX2l0ZW0tc2Vjb25kYXJ5LWluZm8ge1xuICAgICAgQGluY2x1ZGUgdHlwby1jYXB0aW9uKCk7XG4gICAgICBjb2xvcjogJGxpc3Qtc3VwcG9ydGluZy10ZXh0LXRleHQtY29sb3I7XG4gICAgfVxuICAgICYgLm1kbC1saXN0X19pdGVtLXN1Yi1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMCAwIDAgJGxpc3QtbWluLXBhZGRpbmc7XG4gICAgfVxuICB9XG59XG5cbi5tZGwtbGlzdF9faXRlbS1pY29uLFxuLm1kbC1saXN0X19pdGVtLWljb24ubWF0ZXJpYWwtaWNvbnMge1xuICBoZWlnaHQ6ICRsaXN0LWljb24tc2l6ZTtcbiAgd2lkdGg6ICRsaXN0LWljb24tc2l6ZTtcbiAgZm9udC1zaXplOiAkbGlzdC1pY29uLXNpemU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAkbGlzdC1pY29uLWNvbG9yO1xufVxuXG4ubWRsLWxpc3RfX2l0ZW0tYXZhdGFyLFxuLm1kbC1saXN0X19pdGVtLWF2YXRhci5tYXRlcmlhbC1pY29ucyB7XG4gIGhlaWdodDogJGxpc3QtYXZhdGFyLXNpemU7XG4gIHdpZHRoOiAkbGlzdC1hdmF0YXItc2l6ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAvLyBTZXQgYSBiYWNrZ3JvdW5kIGNvbG91ciBpbiBjYXNlIHRoZSB1c2VyIGRvZXNuJ3QgcHJvdmlkZSBhbiBpbWFnZS5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtaWNvbi1jb2xvcjtcbiAgLy8gU2V0IGEgZm9udCBzaXplIGFuZCBjb2xvciBpbiBjYXNlIHRoZSB1c2VyIHByb3ZpZGVzIGEgTWF0ZXJpYWwgSWNvbi5cbiAgZm9udC1zaXplOiAkbGlzdC1hdmF0YXItc2l6ZTtcbiAgY29sb3I6ICRsaXN0LWF2YXRhci1jb2xvcjtcbn1cblxuLm1kbC1saXN0X19pdGVtLS10d28tbGluZSB7XG4gIGhlaWdodDogJGxpc3QtdHdvLWxpbmUtaGVpZ2h0O1xuXG4gICYgLm1kbC1saXN0X19pdGVtLXByaW1hcnktY29udGVudCB7XG4gICAgaGVpZ2h0OiAkbGlzdC10d28tbGluZS1oZWlnaHQgLSAkbGlzdC1taW4tcGFkZGluZyAtICRsaXN0LWJvdHRvbS1wYWRkaW5nO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJiAubWRsLWxpc3RfX2l0ZW0tYXZhdGFye1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgJiAubWRsLWxpc3RfX2l0ZW0taWNvbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIC8vIEljb25zIGFyZSBhbGlnbmVkIHRvIGNlbnRlciBvZiB0ZXh0IGluIGEgdHdvIGxpbmUgbGlzdC5cbiAgICAgIG1hcmdpbi10b3A6XG4gICAgICAgICgkbGlzdC10d28tbGluZS1oZWlnaHQgLSAkbGlzdC1taW4tcGFkZGluZyAtICRsaXN0LWJvdHRvbS1wYWRkaW5nIC1cbiAgICAgICAgICRsaXN0LWljb24tc2l6ZSkgLyAyO1xuICAgIH1cblxuICAgICYgLm1kbC1saXN0X19pdGVtLXNlY29uZGFyeS1jb250ZW50IHtcbiAgICAgIGhlaWdodDogJGxpc3QtdHdvLWxpbmUtaGVpZ2h0IC0gJGxpc3QtbWluLXBhZGRpbmcgLSAkbGlzdC1ib3R0b20tcGFkZGluZztcbiAgICB9XG5cbiAgICAmIC5tZGwtbGlzdF9faXRlbS1zdWItdGl0bGUge1xuICAgICAgQGluY2x1ZGUgdHlwby1ib2R5LTEoKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgY29sb3I6ICRsaXN0LXN1cHBvcnRpbmctdGV4dC10ZXh0LWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ubWRsLWxpc3RfX2l0ZW0tLXRocmVlLWxpbmUge1xuICBoZWlnaHQ6ICRsaXN0LXRocmVlLWxpbmUtaGVpZ2h0O1xuXG4gICYgLm1kbC1saXN0X19pdGVtLXByaW1hcnktY29udGVudCB7XG4gICAgaGVpZ2h0OiAkbGlzdC10aHJlZS1saW5lLWhlaWdodCAtICRsaXN0LW1pbi1wYWRkaW5nIC0gJGxpc3QtYm90dG9tLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmIC5tZGwtbGlzdF9faXRlbS1hdmF0YXIsXG4gICAgJiAubWRsLWxpc3RfX2l0ZW0taWNvbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAmIC5tZGwtbGlzdF9faXRlbS1zZWNvbmRhcnktY29udGVudCB7XG4gICAgaGVpZ2h0OiAkbGlzdC10aHJlZS1saW5lLWhlaWdodCAtICRsaXN0LW1pbi1wYWRkaW5nIC0gJGxpc3QtYm90dG9tLXBhZGRpbmc7XG4gIH1cblxuICAmIC5tZGwtbGlzdF9faXRlbS10ZXh0LWJvZHkge1xuICAgIEBpbmNsdWRlIHR5cG8tYm9keS0xKCk7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgaGVpZ2h0OiAkbGlzdC10aHJlZS1saW5lLWhlaWdodCAtICRsaXN0LW1pbi1wYWRkaW5nIC0gJGxpc3QtYm90dG9tLXBhZGRpbmc7XG4gICAgY29sb3I6ICRsaXN0LXN1cHBvcnRpbmctdGV4dC10ZXh0LWNvbG9yO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9taXhpbnNcIjtcblxuLm1kbC1tZW51X19jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogLTE7XG5cbiAgJi5pcy12aXNpYmxlLFxuICAmLmlzLWFuaW1hdGluZyB7XG4gICAgei1pbmRleDogOTk5O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuLm1kbC1tZW51X19vdXRsaW5lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6ICRkZWZhdWx0LWRyb3Bkb3duLWJnLWNvbG9yO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICBAaW5jbHVkZSBzaGFkb3ctMmRwKCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkbWVudS1leHBhbmQtZHVyYXRpb24gJGFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0LFxuICAgICAgb3BhY2l0eSAkbWVudS1mYWRlLWR1cmF0aW9uICRhbmltYXRpb24tY3VydmUtZGVmYXVsdDtcbiAgei1pbmRleDogLTE7XG5cbiAgLm1kbC1tZW51X19jb250YWluZXIuaXMtdmlzaWJsZSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgei1pbmRleDogOTk5O1xuICB9XG5cbiAgJi5tZGwtbWVudS0tYm90dG9tLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIH1cblxuICAmLm1kbC1tZW51LS10b3AtbGVmdCB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICB9XG5cbiAgJi5tZGwtbWVudS0tdG9wLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIH1cbn1cblxuLm1kbC1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMTI0cHg7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIHotaW5kZXg6IC0xO1xuXG4gIC5tZGwtbWVudV9fY29udGFpbmVyLmlzLXZpc2libGUgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiA5OTk7XG4gIH1cblxuICAmLmlzLWFuaW1hdGluZyB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkbWVudS1mYWRlLWR1cmF0aW9uICRhbmltYXRpb24tY3VydmUtZGVmYXVsdCxcbiAgICAgICAgY2xpcCAkbWVudS1leHBhbmQtZHVyYXRpb24gJGFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0O1xuICB9XG5cbiAgJi5tZGwtbWVudS0tYm90dG9tLXJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG5cbiAgJi5tZGwtbWVudS0tdG9wLWxlZnQge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7XG4gIH1cblxuICAmLm1kbC1tZW51LS10b3AtcmlnaHQge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gICYubWRsLW1lbnUtLXVuYWxpZ25lZCB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLm1kbC1tZW51X19pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICRkZWZhdWx0LWl0ZW0tdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBvdXRsaW5lLWNvbG9yOiAkZGVmYXVsdC1pdGVtLW91dGxpbmUtY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHlwby1ib2R5LTEoKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogNDhweDtcbiAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgJG1lbnUtZmFkZS1kdXJhdGlvbiAkYW5pbWF0aW9uLWN1cnZlLWRlZmF1bHQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gIC5tZGwtbWVudV9fY29udGFpbmVyLmlzLXZpc2libGUgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYtLWZ1bGwtYmxlZWQtZGl2aWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkZWZhdWx0LWl0ZW0tZGl2aWRlci1jb2xvcjtcbiAgfVxuXG4gICZbZGlzYWJsZWRdLCAmW2RhdGEtbWRsLWRpc2FibGVkXSB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC1pdGVtLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBhdXRvO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICYgLm1kbC1yaXBwbGUge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZmF1bHQtaXRlbS1ob3Zlci1iZy1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZmF1bHQtaXRlbS1mb2N1cy1iZy1jb2xvcjtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVmYXVsdC1pdGVtLWFjdGl2ZS1iZy1jb2xvcjtcbiAgfVxufVxuXG5cbi5tZGwtbWVudV9faXRlbS0tcmlwcGxlLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi5tZGwtcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6ICRiYXItaGVpZ2h0O1xuICB3aWR0aDogNTAwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm1kbC1wcm9ncmVzcyA+IC5iYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDAlO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzICRhbmltYXRpb24tY3VydmUtZGVmYXVsdDtcbn1cblxuLm1kbC1wcm9ncmVzcyA+IC5wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1tYWluLWNvbG9yO1xuICB6LWluZGV4OiAxO1xuICBsZWZ0OiAwO1xufVxuXG4ubWRsLXByb2dyZXNzID4gLmJ1ZmZlcmJhciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHByb2dyZXNzLXNlY29uZGFyeS1jb2xvciwgJHByb2dyZXNzLXNlY29uZGFyeS1jb2xvciksXG4gICAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkcHJvZ3Jlc3MtbWFpbi1jb2xvciwgJHByb2dyZXNzLW1haW4tY29sb3IpO1xuICB6LWluZGV4OiAwO1xuICBsZWZ0OiAwO1xufVxuXG4ubWRsLXByb2dyZXNzID4gLmF1eGJhciB7XG4gIHJpZ2h0OiAwO1xufVxuXG4vLyBXZWJraXQgb25seVxuQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6bm9uZSkge1xuICAubWRsLXByb2dyZXNzOm5vdCgubWRsLXByb2dyZXNzLS1pbmRldGVybWluYXRlKTpub3QoLm1kbC1wcm9ncmVzcy0taW5kZXRlcm1pbmF0ZSkgPiAuYXV4YmFyLFxuICAubWRsLXByb2dyZXNzOm5vdCgubWRsLXByb2dyZXNzX19pbmRldGVybWluYXRlKTpub3QoLm1kbC1wcm9ncmVzc19faW5kZXRlcm1pbmF0ZSkgPiAuYXV4YmFyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRwcm9ncmVzcy1zZWNvbmRhcnktY29sb3IsICRwcm9ncmVzcy1zZWNvbmRhcnktY29sb3IpLFxuICAgICAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkcHJvZ3Jlc3MtbWFpbi1jb2xvciwgJHByb2dyZXNzLW1haW4tY29sb3IpO1xuICAgIG1hc2s6IHVybCgnI3skcHJvZ3Jlc3MtaW1hZ2UtcGF0aH0vYnVmZmVyLnN2Zz9lbWJlZCcpO1xuICB9XG59XG5cbi5tZGwtcHJvZ3Jlc3M6bm90KC5tZGwtcHJvZ3Jlc3MtLWluZGV0ZXJtaW5hdGUpID4gLmF1eGJhcixcbi5tZGwtcHJvZ3Jlc3M6bm90KC5tZGwtcHJvZ3Jlc3NfX2luZGV0ZXJtaW5hdGUpID4gLmF1eGJhciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHByb2dyZXNzLWZhbGxiYWNrLWJ1ZmZlci1jb2xvciwgJHByb2dyZXNzLWZhbGxiYWNrLWJ1ZmZlci1jb2xvciksXG4gICAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkcHJvZ3Jlc3MtbWFpbi1jb2xvciwgJHByb2dyZXNzLW1haW4tY29sb3IpO1xufVxuXG4ubWRsLXByb2dyZXNzLm1kbC1wcm9ncmVzcy0taW5kZXRlcm1pbmF0ZSA+IC5iYXIxLFxuLm1kbC1wcm9ncmVzcy5tZGwtcHJvZ3Jlc3NfX2luZGV0ZXJtaW5hdGUgPiAuYmFyMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1tYWluLWNvbG9yO1xuICBhbmltYXRpb24tbmFtZTogaW5kZXRlcm1pbmF0ZTE7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG5cbi5tZGwtcHJvZ3Jlc3MubWRsLXByb2dyZXNzLS1pbmRldGVybWluYXRlID4gLmJhcjMsXG4ubWRsLXByb2dyZXNzLm1kbC1wcm9ncmVzc19faW5kZXRlcm1pbmF0ZSA+IC5iYXIzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLW1haW4tY29sb3I7XG4gIGFuaW1hdGlvbi1uYW1lOiBpbmRldGVybWluYXRlMjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cblxuQGtleWZyYW1lcyBpbmRldGVybWluYXRlMSB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwJTtcbiAgICB3aWR0aDogMCU7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAyNSU7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICA3NSUge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgd2lkdGg6IDAlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaW5kZXRlcm1pbmF0ZTIge1xuICAwJSB7XG4gICAgbGVmdDogMCU7XG4gICAgd2lkdGg6IDAlO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogMCU7XG4gICAgd2lkdGg6IDAlO1xuICB9XG4gIDc1JSB7XG4gICAgbGVmdDogMCU7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHdpZHRoOiAwJTtcbiAgfVxufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG4vLyBOYXZpZ2F0aW9uIGNsYXNzZXMuIE9ubHkgdXNlZCBoZXJlIGZvciBub3csIGJ1dCB3ZSBtYXkgYXQgc29tZSBwb2ludCBtb3ZlXG4vLyB0aGlzIHRvIGl0cyBvd24gY29tcG9uZW50LlxuLm1kbC1uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tZGwtbmF2aWdhdGlvbl9fbGluayB7XG4gIGNvbG9yOiAkbGF5b3V0LXRleHQtY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMSh0cnVlKTtcblxuICAvLyBBbGlnbiBpY29ucyBpbnNpZGUgbGluayB3aXRoIHRleHRcbiAgJiAubWF0ZXJpYWwtaWNvbnMge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuLy8gTWFpbiBsYXlvdXQgY2xhc3MuXG4ubWRsLWxheW91dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi8vIFV0aWxpdHkgY2xhc3NlcyBmb3Igc2NyZWVuIHNpemVzLlxuLm1kbC1sYXlvdXQuaXMtc21hbGwtc2NyZWVuIC5tZGwtbGF5b3V0LS1sYXJnZS1zY3JlZW4tb25seSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZGwtbGF5b3V0Om5vdCguaXMtc21hbGwtc2NyZWVuKSAubWRsLWxheW91dC0tc21hbGwtc2NyZWVuLW9ubHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWRsLWxheW91dF9fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5cbiAgLy8gT3B0aW9uYWwgdXRpbGl0eSBjbGFzc2VzIGZvciBmb3JtYXR0aW5nIHNwZWNpYWwgYmxvY2tzIGluIHRoaXMgY29tcG9uZW50LlxuICAubWRsLWxheW91dF9fdGl0bGUsXG4gIC5tZGwtbGF5b3V0LXRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSB0eXBvLXRpdGxlKCk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLm1kbC1sYXlvdXQtc3BhY2VyIHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuXG4gIC8vIERyYXdlci5cbiAgLm1kbC1sYXlvdXRfX2RyYXdlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgd2lkdGg6ICRsYXlvdXQtZHJhd2VyLXdpZHRoO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgQGluY2x1ZGUgc2hhZG93LTJkcCgpO1xuXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkbGF5b3V0LWRyYXdlci1ib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGxheW91dC1kcmF3ZXItYmctY29sb3I7XG5cbiAgICAvLyBUcmFuc2Zvcm0gb2Zmc2NyZWVuLlxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJGxheW91dC1kcmF3ZXItd2lkdGggLSAxMHB4KTtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG5cbiAgICBAaW5jbHVkZSBtYXRlcmlhbC1hbmltYXRpb24tZGVmYXVsdCgpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcblxuICAgIGNvbG9yOiAkbGF5b3V0LXRleHQtY29sb3I7XG5cbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgei1pbmRleDogNTtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAmIH4gLm1kbC1sYXlvdXRfX2NvbnRlbnQubWRsLWxheW91dF9fY29udGVudCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiA+ICoge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxuXG4gICAgJiA+IC5tZGwtbGF5b3V0X190aXRsZSxcbiAgICAmID4gLm1kbC1sYXlvdXQtdGl0bGUge1xuICAgICAgbGluZS1oZWlnaHQ6ICRsYXlvdXQtZGVza3RvcC1oZWFkZXItaGVpZ2h0O1xuICAgICAgcGFkZGluZy1sZWZ0OiAkbGF5b3V0LWhlYWRlci1kZXNrdG9wLWluZGVudDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsYXlvdXQtbW9iaWxlLWhlYWRlci1oZWlnaHQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxheW91dC1oZWFkZXItbW9iaWxlLWluZGVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5tZGwtbmF2aWdhdGlvbiB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICBwYWRkaW5nLXRvcDogMTZweDtcblxuICAgICAgJiAubWRsLW5hdmlnYXRpb25fX2xpbmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIHBhZGRpbmc6IDE2cHggJGxheW91dC1oZWFkZXItZGVza3RvcC1pbmRlbnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBjb2xvcjogJGxheW91dC1kcmF3ZXItbmF2aWdhdGlvbi1jb2xvcjtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGF5b3V0LXNjcmVlbi1zaXplLXRocmVzaG9sZCkge1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHggJGxheW91dC1oZWFkZXItbW9iaWxlLWluZGVudDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsYXlvdXQtbmF2LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tY3VycmVudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGF5b3V0LWRyYXdlci1uYXZpZ2F0aW9uLWxpbmstYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgICAgICBjb2xvcjogJGxheW91dC1kcmF3ZXItbmF2aWdhdGlvbi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXlvdXQtc2NyZWVuLXNpemUtdGhyZXNob2xkICsgMXB4KSB7XG4gICAgICAubWRsLWxheW91dC0tZml4ZWQtZHJhd2VyID4gJiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIERyYXdlciBidXR0b24uXG4gIC8vIFRPRE8oc2dvbWVzKTogUmVwbGFjZSB3aXRoIGFuIGljb24gYnV0dG9uIHdoZW4gd2UgaGF2ZSB0aGF0IGNvbXBvbmVudC5cbiAgLm1kbC1sYXlvdXRfX2RyYXdlci1idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogJGxheW91dC1kcmF3ZXItYnV0dG9uLWRlc2t0b3Atc2l6ZTtcbiAgICB3aWR0aDogJGxheW91dC1kcmF3ZXItYnV0dG9uLWRlc2t0b3Atc2l6ZTtcbiAgICBib3JkZXI6IDA7XG5cbiAgICBmbGV4LXNocmluazogMDtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6ICRsYXlvdXQtZHJhd2VyLWJ1dHRvbi1kZXNrdG9wLXNpemUgKyAyO1xuICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbjogMTBweCAxMnB4O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbG9yOiAkbGF5b3V0LWhlYWRlci10ZXh0LWNvbG9yO1xuXG4gICAgei1pbmRleDogNDtcblxuICAgIC5tZGwtbGF5b3V0X19oZWFkZXIgJiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb2xvcjogJGxheW91dC1oZWFkZXItdGV4dC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsYXlvdXQtc2NyZWVuLXNpemUtdGhyZXNob2xkKSB7XG4gICAgICAgIG1hcmdpbjogNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsYXlvdXQtc2NyZWVuLXNpemUtdGhyZXNob2xkKSB7XG4gICAgICBtYXJnaW46IDRweDtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQgKyAxcHgpIHtcbiAgICAgIC5tZGwtbGF5b3V0LS1maXhlZC1kcmF3ZXIgPiAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLm1kbC1sYXlvdXQtLW5vLWRlc2t0b3AtZHJhd2VyLWJ1dHRvbiAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWRsLWxheW91dC0tbm8tZHJhd2VyLWJ1dHRvbiAmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLm1kbC1sYXlvdXRfX2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6ICRsYXlvdXQtZGVza3RvcC1oZWFkZXItaGVpZ2h0O1xuICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcbiAgICB6LWluZGV4OiAzO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxheW91dC1oZWFkZXItYmctY29sb3I7XG4gICAgY29sb3I6ICRsYXlvdXQtaGVhZGVyLXRleHQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBzaGFkb3ctMmRwKCk7XG4gICAgQGluY2x1ZGUgbWF0ZXJpYWwtYW5pbWF0aW9uLWRlZmF1bHQoKTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBtYXgtaGVpZ2h0LCBib3gtc2hhZG93O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgIG1pbi1oZWlnaHQ6ICRsYXlvdXQtbW9iaWxlLWhlYWRlci1oZWlnaHQ7XG4gICAgfVxuXG4gICAgLm1kbC1sYXlvdXQtLWZpeGVkLWRyYXdlci5pcy11cGdyYWRlZDpub3QoLmlzLXNtYWxsLXNjcmVlbikgPiAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbGF5b3V0LWRyYXdlci13aWR0aDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRsYXlvdXQtZHJhd2VyLXdpZHRofSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQgKyAxcHgpIHtcbiAgICAgIC5tZGwtbGF5b3V0LS1maXhlZC1kcmF3ZXIgPiAmIHtcbiAgICAgICAgLm1kbC1sYXlvdXRfX2hlYWRlci1yb3cge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYgPiAubWRsLWxheW91dC1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6ICRsYXlvdXQtaGVhZGVyLWRlc2t0b3AtaW5kZW50O1xuICAgICAgdG9wOiAoJGxheW91dC1kZXNrdG9wLWhlYWRlci1oZWlnaHQgLSAkbGF5b3V0LWhlYWRlci1pY29uLXNpemUpIC8gMjtcbiAgICAgIGhlaWdodDogJGxheW91dC1oZWFkZXItaWNvbi1zaXplO1xuICAgICAgd2lkdGg6ICRsYXlvdXQtaGVhZGVyLWljb24tc2l6ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsYXlvdXQtc2NyZWVuLXNpemUtdGhyZXNob2xkKSB7XG4gICAgICAgIGxlZnQ6ICRsYXlvdXQtaGVhZGVyLW1vYmlsZS1pbmRlbnQ7XG4gICAgICAgIHRvcDogKCRsYXlvdXQtbW9iaWxlLWhlYWRlci1oZWlnaHQgLSAkbGF5b3V0LWhlYWRlci1pY29uLXNpemUpIC8gMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWRsLWxheW91dC5oYXMtZHJhd2VyICYgPiAubWRsLWxheW91dC1pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5pcy1jb21wYWN0IHtcbiAgICAgIG1heC1oZWlnaHQ6ICRsYXlvdXQtZGVza3RvcC1oZWFkZXItaGVpZ2h0O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGF5b3V0LXNjcmVlbi1zaXplLXRocmVzaG9sZCkge1xuICAgICAgICBtYXgtaGVpZ2h0OiAkbGF5b3V0LW1vYmlsZS1oZWFkZXItaGVpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtY29tcGFjdC5oYXMtdGFicyB7XG4gICAgICBoZWlnaHQ6ICRsYXlvdXQtZGVza3RvcC1oZWFkZXItaGVpZ2h0ICsgJGxheW91dC10YWItYmFyLWhlaWdodDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgICAgbWluLWhlaWdodDogJGxheW91dC1tb2JpbGUtaGVhZGVyLWhlaWdodCArICRsYXlvdXQtdGFiLWJhci1oZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgICYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAubWRsLWxheW91dC0tZml4ZWQtaGVhZGVyID4gJiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgICAubWRsLWxheW91dF9faGVhZGVyLS10cmFuc3BhcmVudC5tZGwtbGF5b3V0X19oZWFkZXItLXRyYW5zcGFyZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAubWRsLWxheW91dF9faGVhZGVyLS1zZWFtZWQge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAubWRsLWxheW91dF9faGVhZGVyLS1zY3JvbGwge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAubWRsLWxheW91dF9faGVhZGVyLS13YXRlcmZhbGwge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICYuaXMtY2FzdGluZy1zaGFkb3cge1xuICAgICAgICBAaW5jbHVkZSBzaGFkb3ctMmRwKCk7XG4gICAgICB9XG5cbiAgICAgICYubWRsLWxheW91dF9faGVhZGVyLS13YXRlcmZhbGwtaGlkZS10b3Age1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZGwtbGF5b3V0X19oZWFkZXItcm93IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogJGxheW91dC1oZWFkZXItZGVza3RvcC1yb3ctaGVpZ2h0O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAkbGF5b3V0LWhlYWRlci1kZXNrdG9wLWluZGVudCAwICRsYXlvdXQtaGVhZGVyLWRlc2t0b3AtYmFzZWxpbmU7XG5cbiAgICAgIC5tZGwtbGF5b3V0LS1uby1kcmF3ZXItYnV0dG9uICYge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRsYXlvdXQtaGVhZGVyLWRlc2t0b3AtaW5kZW50O1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGF5b3V0LXNjcmVlbi1zaXplLXRocmVzaG9sZCArIDFweCkge1xuICAgICAgICAubWRsLWxheW91dC0tbm8tZGVza3RvcC1kcmF3ZXItYnV0dG9uICYge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGxheW91dC1oZWFkZXItZGVza3RvcC1pbmRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgICAgaGVpZ2h0OiAkbGF5b3V0LWhlYWRlci1tb2JpbGUtcm93LWhlaWdodDtcbiAgICAgICAgcGFkZGluZzogMCAkbGF5b3V0LWhlYWRlci1tb2JpbGUtaW5kZW50IDAgJGxheW91dC1oZWFkZXItbW9iaWxlLWJhc2VsaW5lO1xuXG4gICAgICAgIC5tZGwtbGF5b3V0LS1uby1kcmF3ZXItYnV0dG9uICYge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGxheW91dC1oZWFkZXItbW9iaWxlLWluZGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmID4gKiB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuXG4gICAgICAubWRsLWxheW91dF9faGVhZGVyLS1zY3JvbGwgJiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAmIC5tZGwtbmF2aWdhdGlvbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiAkbGF5b3V0LWhlYWRlci1kZXNrdG9wLXJvdy1oZWlnaHQ7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgICAgICBoZWlnaHQ6ICRsYXlvdXQtaGVhZGVyLW1vYmlsZS1yb3ctaGVpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgLm1kbC1uYXZpZ2F0aW9uX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkbGF5b3V0LWhlYWRlci10ZXh0LWNvbG9yO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxheW91dC1oZWFkZXItZGVza3RvcC1yb3ctaGVpZ2h0O1xuICAgICAgICBwYWRkaW5nOiAwIDI0cHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogJGxheW91dC1oZWFkZXItbW9iaWxlLXJvdy1oZWlnaHQ7XG4gICAgICAgICAgcGFkZGluZzogMCAkbGF5b3V0LWhlYWRlci1tb2JpbGUtaW5kZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIC8vIE9iZnVzY2F0b3IuXG4gIC5tZGwtbGF5b3V0X19vYmZ1c2NhdG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3I7XG4gICAgQGluY2x1ZGUgbWF0ZXJpYWwtYW5pbWF0aW9uLWRlZmF1bHQoKTtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIEBzdXBwb3J0cyAocG9pbnRlci1ldmVudHM6IGF1dG8pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBDb250ZW50LlxuICAubWRsLWxheW91dF9fY29udGVudCB7XG4gICAgLy8gRml4IElFMTAgYnVnLlxuICAgIC1tcy1mbGV4OiAwIDEgYXV0bztcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgLm1kbC1sYXlvdXQtLWZpeGVkLWRyYXdlciA+ICYge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRsYXlvdXQtZHJhd2VyLXdpZHRoO1xuICAgIH1cblxuICAgIC5tZGwtbGF5b3V0X19jb250YWluZXIuaGFzLXNjcm9sbGluZy1oZWFkZXIgJiB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGF5b3V0LXNjcmVlbi1zaXplLXRocmVzaG9sZCkge1xuICAgICAgLm1kbC1sYXlvdXQtLWZpeGVkLWRyYXdlciA+ICYge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLm1kbC1sYXlvdXRfX2NvbnRhaW5lci5oYXMtc2Nyb2xsaW5nLWhlYWRlciAmIHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFRhYnMuXG4gIC5tZGwtbGF5b3V0X190YWItYmFyIHtcbiAgICBoZWlnaHQ6ICRsYXlvdXQtdGFiLWJhci1oZWlnaHQgKiAyO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC1cbiAgICAgICAgI3soKCRsYXlvdXQtaGVhZGVyLWRlc2t0b3AtYmFzZWxpbmUgLSAkbGF5b3V0LXRhYi1kZXNrdG9wLXBhZGRpbmcpICogMil9KTtcbiAgICBwYWRkaW5nOiAwIDAgMFxuICAgICAgICAoJGxheW91dC1oZWFkZXItZGVza3RvcC1iYXNlbGluZSAtICRsYXlvdXQtdGFiLWRlc2t0b3AtcGFkZGluZyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGF5b3V0LWhlYWRlci1iZy1jb2xvcjtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubWRsLWxheW91dC0tbm8tZHJhd2VyLWJ1dHRvbiAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGxheW91dC1oZWFkZXItZGVza3RvcC1pbmRlbnQgLSAkbGF5b3V0LXRhYi1kZXNrdG9wLXBhZGRpbmc7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC1cbiAgICAgICAgICAjeygoJGxheW91dC1oZWFkZXItZGVza3RvcC1pbmRlbnQgLSAkbGF5b3V0LXRhYi1kZXNrdG9wLXBhZGRpbmcpICogMil9KTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGF5b3V0LXNjcmVlbi1zaXplLXRocmVzaG9sZCArIDFweCkge1xuICAgICAgLm1kbC1sYXlvdXQtLW5vLWRlc2t0b3AtZHJhd2VyLWJ1dHRvbiAmIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGF5b3V0LWhlYWRlci1kZXNrdG9wLWluZGVudCAtICRsYXlvdXQtdGFiLWRlc2t0b3AtcGFkZGluZztcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtXG4gICAgICAgICAgICAjeygoJGxheW91dC1oZWFkZXItZGVza3RvcC1pbmRlbnQgLSAkbGF5b3V0LXRhYi1kZXNrdG9wLXBhZGRpbmcpICogMil9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGF5b3V0LXNjcmVlbi1zaXplLXRocmVzaG9sZCkge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtXG4gICAgICAgICAgI3soJGxheW91dC1oZWFkZXItbW9iaWxlLWJhc2VsaW5lIC0gJGxheW91dC10YWItbW9iaWxlLXBhZGRpbmcpfSk7XG4gICAgICBwYWRkaW5nOiAwIDAgMFxuICAgICAgICAgICgkbGF5b3V0LWhlYWRlci1tb2JpbGUtYmFzZWxpbmUgLSAkbGF5b3V0LXRhYi1tb2JpbGUtcGFkZGluZyk7XG5cbiAgICAgIC5tZGwtbGF5b3V0LS1uby1kcmF3ZXItYnV0dG9uICYge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC1cbiAgICAgICAgICAgICN7KCgkbGF5b3V0LWhlYWRlci1tb2JpbGUtaW5kZW50IC0gJGxheW91dC10YWItbW9iaWxlLXBhZGRpbmcpICogMil9KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGF5b3V0LWhlYWRlci1tb2JpbGUtaW5kZW50IC0gJGxheW91dC10YWItbW9iaWxlLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kbC1sYXlvdXQtLWZpeGVkLXRhYnMgJiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5tZGwtbGF5b3V0X190YWItYmFyLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogJGxheW91dC10YWItYmFyLWhlaWdodDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAubWRsLWxheW91dF9fY29udGFpbmVyID4gJiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5tZGwtbGF5b3V0X190YWItYmFyLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LXRhYi1iYXItaGVpZ2h0O1xuICAgIHdpZHRoOiAkbGF5b3V0LWhlYWRlci1kZXNrdG9wLWJhc2VsaW5lIC0gJGxheW91dC10YWItZGVza3RvcC1wYWRkaW5nO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsYXlvdXQtaGVhZGVyLWJnLWNvbG9yO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAubWRsLWxheW91dC0tbm8tZGVza3RvcC1kcmF3ZXItYnV0dG9uICYsXG4gICAgLm1kbC1sYXlvdXQtLW5vLWRyYXdlci1idXR0b24gJiB7XG4gICAgICB3aWR0aDogJGxheW91dC1oZWFkZXItZGVza3RvcC1pbmRlbnQgLSAkbGF5b3V0LXRhYi1kZXNrdG9wLXBhZGRpbmc7XG5cbiAgICAgICYgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAoJGxheW91dC1oZWFkZXItZGVza3RvcC1pbmRlbnQgLSAkbGF5b3V0LXRhYi1kZXNrdG9wLXBhZGRpbmcgLSAyNHB4KSAvIDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB3aWR0aDogJGxheW91dC1oZWFkZXItbW9iaWxlLWJhc2VsaW5lIC0gJGxheW91dC10YWItbW9iaWxlLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm1kbC1sYXlvdXQtLWZpeGVkLXRhYnMgJiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGF5b3V0LXRhYi1iYXItaGVpZ2h0O1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbGF5b3V0LWhlYWRlci10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5tZGwtbGF5b3V0X190YWItYmFyLWxlZnQtYnV0dG9uIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLm1kbC1sYXlvdXRfX3RhYi1iYXItcmlnaHQtYnV0dG9uIHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIC5tZGwtbGF5b3V0X190YWIge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMCAkbGF5b3V0LXRhYi1kZXNrdG9wLXBhZGRpbmcgMCAkbGF5b3V0LXRhYi1kZXNrdG9wLXBhZGRpbmc7XG5cbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGhlaWdodDogJGxheW91dC10YWItYmFyLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGxheW91dC10YWItYmFyLWhlaWdodDtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogJGxheW91dC10YWItZm9udC1zaXplO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICBjb2xvcjogJGxheW91dC1oZWFkZXItdGFiLXRleHQtY29sb3I7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsYXlvdXQtc2NyZWVuLXNpemUtdGhyZXNob2xkKSB7XG4gICAgICBwYWRkaW5nOiAwICRsYXlvdXQtdGFiLW1vYmlsZS1wYWRkaW5nIDAgJGxheW91dC10YWItbW9iaWxlLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm1kbC1sYXlvdXQtLWZpeGVkLXRhYnMgJiB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLm1kbC1sYXlvdXQuaXMtdXBncmFkZWQgJi5pcy1hY3RpdmUge1xuICAgICAgY29sb3I6ICRsYXlvdXQtaGVhZGVyLXRleHQtY29sb3I7XG4gICAgfVxuXG4gICAgLm1kbC1sYXlvdXQuaXMtdXBncmFkZWQgJi5pcy1hY3RpdmU6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogJGxheW91dC10YWItaGlnaGxpZ2h0LXRoaWNrbmVzcztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGF5b3V0LWhlYWRlci10YWItaGlnaGxpZ2h0O1xuICAgICAgYW5pbWF0aW9uOiBib3JkZXItZXhwYW5kIDAuMnMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjQsIDEpIDAuMDFzIGFsdGVybmF0ZSBmb3J3YXJkcztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDEsIDEpO1xuICAgIH1cblxuICAgICYgLm1kbC1sYXlvdXRfX3RhYi1yaXBwbGUtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICYgLm1kbC1yaXBwbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGF5b3V0LWhlYWRlci10ZXh0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZGwtbGF5b3V0X190YWItcGFuZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLm1kbC1sYXlvdXQuaXMtdXBncmFkZWQgJiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5tZGwtbGF5b3V0LmlzLXVwZ3JhZGVkICYuaXMtYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG4ubWRsLXJhZGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGZvbnQtc2l6ZTogJHJhZGlvLWxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRyYWRpby1sYWJlbC1oZWlnaHQ7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICYuaXMtdXBncmFkZWQge1xuICAgIHBhZGRpbmctbGVmdDogJHJhZGlvLWJ1dHRvbi1zaXplICsgJHJhZGlvLXBhZGRpbmc7XG4gIH1cbn1cblxuLm1kbC1yYWRpb19fYnV0dG9uIHtcbiAgbGluZS1oZWlnaHQ6ICRyYWRpby1sYWJlbC1oZWlnaHQ7XG5cbiAgLm1kbC1yYWRpby5pcy11cGdyYWRlZCAmIHtcbiAgICAvLyBIaWRlIGlucHV0IGVsZW1lbnQsIHdoaWxlIHN0aWxsIG1ha2luZyBpdCByZXNwb25kIHRvIGZvY3VzLlxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5cbi5tZGwtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAkcmFkaW8tdG9wLW9mZnNldDtcbiAgbGVmdDogMDtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6ICRyYWRpby1idXR0b24tc2l6ZTtcbiAgaGVpZ2h0OiAkcmFkaW8tYnV0dG9uLXNpemU7XG4gIG1hcmdpbjogMDtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLW9mZi1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIHotaW5kZXg6IDI7XG5cbiAgLm1kbC1yYWRpby5pcy1jaGVja2VkICYge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1jb2xvcjtcbiAgfVxuXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAubWRsLXJhZGlvLFxuICAubWRsLXJhZGlvLmlzLWRpc2FibGVkICYge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLm1kbC1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW46IDA7XG4gIHRvcDogJHJhZGlvLXRvcC1vZmZzZXQgKyAkcmFkaW8taW5uZXItbWFyZ2luO1xuICBsZWZ0OiAkcmFkaW8taW5uZXItbWFyZ2luO1xuXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAkcmFkaW8tYnV0dG9uLXNpemUgLSAoJHJhZGlvLWlubmVyLW1hcmdpbiAqIDIpO1xuICBoZWlnaHQ6ICRyYWRpby1idXR0b24tc2l6ZSAtICgkcmFkaW8taW5uZXItbWFyZ2luICogMik7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpbmNsdWRlIG1hdGVyaWFsLWFuaW1hdGlvbi1kZWZhdWx0KDAuMjhzKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2Zvcm06IHNjYWxlM2QoMCwgMCwgMCk7XG5cbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAkcmFkaW8tY29sb3I7XG5cbiAgLm1kbC1yYWRpby5pcy1jaGVja2VkICYge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAubWRsLXJhZGlvICYsXG4gIC5tZGwtcmFkaW8uaXMtZGlzYWJsZWQgJiB7XG4gICAgYmFja2dyb3VuZDogJHJhZGlvLWRpc2FibGVkLWNvbG9yO1xuICAgIGN1cnNvcjogYXV0bztcbiAgfVxuXG4gIC5tZGwtcmFkaW8uaXMtZm9jdXNlZCAmIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMHB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG59XG5cbi5tZGwtcmFkaW9fX2xhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAubWRsLXJhZGlvICYsXG4gIC5tZGwtcmFkaW8uaXMtZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6ICRyYWRpby1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLm1kbC1yYWRpb19fcmlwcGxlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAtKCgkcmFkaW8tcmlwcGxlLXNpemUgLSAkcmFkaW8tbGFiZWwtaGVpZ2h0KSAvIDIpO1xuICBsZWZ0OiAtKCgkcmFkaW8tcmlwcGxlLXNpemUgLSAkcmFkaW8tYnV0dG9uLXNpemUpIC8gMik7XG5cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6ICRyYWRpby1yaXBwbGUtc2l6ZTtcbiAgaGVpZ2h0OiAkcmFkaW8tcmlwcGxlLXNpemU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHdoaXRlLCBibGFjayk7XG5cbiAgJiAubWRsLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZDogJHJhZGlvLWNvbG9yO1xuICB9XG5cbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5tZGwtcmFkaW8gJixcbiAgLm1kbC1yYWRpby5pcy1kaXNhYmxlZCAmIHtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cblxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1kbC1yYWRpbyAmIC5tZGwtcmlwcGxlLFxuICAubWRsLXJhZGlvLmlzLWRpc2FibGVkICYgLm1kbC1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi8vIFNvbWUgQ1NTIG1hZ2ljIHRvIHRhcmdldCBvbmx5IElFLlxuXzotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIDpyb290IC5tZGwtc2xpZGVyLm1kbC1zbGlkZXIuaXMtdXBncmFkZWQge1xuICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgLy8gVGhlIHRodW1iIGNhbid0IG92ZXJmbG93IHRoZSB0cmFjayBvciB0aGUgcmVzdCBvZiB0aGUgY29udHJvbCBpbiBJRSwgc28gd2VcbiAgLy8gbmVlZCB0byBtYWtlIGl0IHRhbGwgZW5vdWdoIHRvIGNvbnRhaW4gdGhlIGxhcmdlc3QgdmVyc2lvbiBvZiB0aGUgdGh1bWIuXG4gIGhlaWdodDogMzJweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBTbGlkZXIgY29tcG9uZW50IChzdHlsZWQgaW5wdXRbdHlwZT1yYW5nZV0pLlxuLm1kbC1zbGlkZXIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gIG1hcmdpbjogMCAyMHB4O1xuXG4gICYuaXMtdXBncmFkZWQge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAkcmFuZ2UtY29sb3I7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG5cbiAgICAvLyBEaXNhYmxlIGRlZmF1bHQgZm9jdXMgb24gRmlyZWZveC5cbiAgICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlIHRvb2x0aXAgb24gSUUuXG4gICAgJjo6LW1zLXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqIFRyYWNrcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRyYWNrIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAvLyBNYXJnaW4gb24gLW1zLXRyYWNrIGRvZXNuJ3Qgd29yayByaWdodCwgc28gd2UgdXNlIGdyYWRpZW50cyBvbiB0aGVcbiAgICAgIC8vIGZpbGxzLlxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgdHJhbnNwYXJlbnQsXG4gICAgICB0cmFuc3BhcmVudCAxNnB4LFxuICAgICAgJHJhbmdlLWNvbG9yIDE2cHgsXG4gICAgICAkcmFuZ2UtY29sb3IgMCk7XG4gICAgfVxuXG4gICAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC8vIE1hcmdpbiBvbiAtbXMtdHJhY2sgZG9lc24ndCB3b3JrIHJpZ2h0LCBzbyB3ZSB1c2UgZ3JhZGllbnRzIG9uIHRoZVxuICAgICAgLy8gZmlsbHMuXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCxcbiAgICAgIHRyYW5zcGFyZW50LFxuICAgICAgdHJhbnNwYXJlbnQgMTZweCxcbiAgICAgICRyYW5nZS1iZy1jb2xvciAxNnB4LFxuICAgICAgJHJhbmdlLWJnLWNvbG9yIDApO1xuICAgIH1cblxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiogVGh1bWJzICoqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogJHJhbmdlLWNvbG9yO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMThzICRhbmltYXRpb24tY3VydmUtZGVmYXVsdCxcbiAgICAgIGJvcmRlciAwLjE4cyAkYW5pbWF0aW9uLWN1cnZlLWRlZmF1bHQsXG4gICAgICBib3gtc2hhZG93IDAuMThzICRhbmltYXRpb24tY3VydmUtZGVmYXVsdCxcbiAgICAgIGJhY2tncm91bmQgMC4yOHMgJGFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6ICRyYW5nZS1jb2xvcjtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIC8vIC1tb3otcmFuZ2UtdGh1bWIgZG9lc24ndCBjdXJyZW50bHkgc3VwcG9ydCB0cmFuc2l0aW9ucy5cbiAgICB9XG5cbiAgICAmOmZvY3VzOm5vdCg6YWN0aXZlKTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTBweCAkcmFuZ2UtZmFkZWQtY29sb3I7XG4gICAgfVxuXG4gICAgJjpmb2N1czpub3QoOmFjdGl2ZSk6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTBweCAkcmFuZ2UtZmFkZWQtY29sb3I7XG4gICAgfVxuXG4gICAgJjphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAkcmFuZ2UtY29sb3I7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgfVxuXG4gICAgJjphY3RpdmU6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6ICRyYW5nZS1jb2xvcjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB9XG5cbiAgICAmOjotbXMtdGh1bWIge1xuICAgICAgd2lkdGg6IDMycHg7XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkcmFuZ2UtY29sb3I7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMzc1KTtcbiAgICAgIC8vIC1tcy10aHVtYiBkb2Vzbid0IGN1cnJlbnRseSBzdXBwb3J0IHRyYW5zaXRpb25zLCBidXQgbGVhdmluZyB0aGlzIGhlcmVcbiAgICAgIC8vIGluIGNhc2Ugc3VwcG9ydCBldmVyIGdldHMgYWRkZWQuXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xOHMgJGFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0LFxuICAgICAgYmFja2dyb3VuZCAwLjI4cyAkYW5pbWF0aW9uLWN1cnZlLWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjpmb2N1czpub3QoOmFjdGl2ZSk6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGNsb3Nlc3Qtc2lkZSxcbiAgICAgICRyYW5nZS1jb2xvciAwJSxcbiAgICAgICRyYW5nZS1jb2xvciAzNy41JSxcbiAgICAgICRyYW5nZS1mYWRlZC1jb2xvciAzNy41JSxcbiAgICAgICRyYW5nZS1mYWRlZC1jb2xvciAxMDAlKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuXG4gICAgJjphY3RpdmU6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcmFuZ2UtY29sb3I7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNTYyNSk7XG4gICAgfVxuXG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAwLXZhbHVlICoqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYW5nZS1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICYuaXMtbG93ZXN0LXZhbHVlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYW5nZS1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICYuaXMtbG93ZXN0LXZhbHVlICtcbiAgICAgICAgLm1kbC1zbGlkZXJfX2JhY2tncm91bmQtZmxleCA+IC5tZGwtc2xpZGVyX19iYWNrZ3JvdW5kLXVwcGVyIHtcbiAgICAgIGxlZnQ6IDZweDtcbiAgICB9XG5cbiAgICAmLmlzLWxvd2VzdC12YWx1ZTpmb2N1czpub3QoOmFjdGl2ZSk6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwcHggJHJhbmdlLWJnLWZvY3VzLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogJHJhbmdlLWJnLWZvY3VzLWNvbG9yO1xuICAgIH1cblxuICAgICYuaXMtbG93ZXN0LXZhbHVlOmZvY3VzOm5vdCg6YWN0aXZlKTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxMHB4ICRyYW5nZS1iZy1mb2N1cy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6ICRyYW5nZS1iZy1mb2N1cy1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmlzLWxvd2VzdC12YWx1ZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJvcmRlcjogMS42cHggc29saWQgJHJhbmdlLWJnLWNvbG9yO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIH1cblxuICAgICYuaXMtbG93ZXN0LXZhbHVlOmFjdGl2ZSArXG4gICAgICAgIC5tZGwtc2xpZGVyX19iYWNrZ3JvdW5kLWZsZXggPiAubWRsLXNsaWRlcl9fYmFja2dyb3VuZC11cHBlciB7XG4gICAgICBsZWZ0OiA5cHg7XG4gICAgfVxuXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6YWN0aXZlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJvcmRlcjogMS41cHggc29saWQgJHJhbmdlLWJnLWNvbG9yO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIH1cblxuICAgICYuaXMtbG93ZXN0LXZhbHVlOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBjbG9zZXN0LXNpZGUsXG4gICAgICB0cmFuc3BhcmVudCAwJSxcbiAgICAgIHRyYW5zcGFyZW50IDY2LjY3JSxcbiAgICAgICRyYW5nZS1iZy1jb2xvciA2Ni42NyUsXG4gICAgICAkcmFuZ2UtYmctY29sb3IgMTAwJSk7XG4gICAgfVxuXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6Zm9jdXM6bm90KDphY3RpdmUpOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBjbG9zZXN0LXNpZGUsXG4gICAgICAkcmFuZ2UtYmctZm9jdXMtY29sb3IgMCUsXG4gICAgICAkcmFuZ2UtYmctZm9jdXMtY29sb3IgMjUlLFxuICAgICAgJHJhbmdlLWJnLWNvbG9yIDI1JSxcbiAgICAgICRyYW5nZS1iZy1jb2xvciAzNy41JSxcbiAgICAgICRyYW5nZS1iZy1mb2N1cy1jb2xvciAzNy41JSxcbiAgICAgICRyYW5nZS1iZy1mb2N1cy1jb2xvciAxMDAlKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6YWN0aXZlOjotbXMtdGh1bWIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjU2MjUpO1xuICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBjbG9zZXN0LXNpZGUsXG4gICAgICB0cmFuc3BhcmVudCAwJSxcbiAgICAgIHRyYW5zcGFyZW50IDc3Ljc4JSxcbiAgICAgICRyYW5nZS1iZy1jb2xvciA3Ny43OCUsXG4gICAgICAkcmFuZ2UtYmctY29sb3IgMTAwJSk7XG4gICAgfVxuXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICYuaXMtbG93ZXN0LXZhbHVlOjotbXMtZmlsbC11cHBlciB7XG4gICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgIH1cblxuICAgICYuaXMtbG93ZXN0LXZhbHVlOmFjdGl2ZTo6LW1zLWZpbGwtdXBwZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDlweDtcbiAgICB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBEaXNhYmxlZCAqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgJjpkaXNhYmxlZDpmb2N1czo6LXdlYmtpdC1zbGlkZXItdGh1bWIsXG4gICAgJjpkaXNhYmxlZDphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1iLFxuICAgICY6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC42NjcpO1xuICAgICAgYmFja2dyb3VuZDogJHJhbmdlLWJnLWNvbG9yO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQ6Zm9jdXM6Oi1tb3otcmFuZ2UtdGh1bWIsXG4gICAgJjpkaXNhYmxlZDphY3RpdmU6Oi1tb3otcmFuZ2UtdGh1bWIsXG4gICAgJjpkaXNhYmxlZDo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNjY3KTtcbiAgICAgIGJhY2tncm91bmQ6ICRyYW5nZS1iZy1jb2xvcjtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkICtcbiAgICAgICAgLm1kbC1zbGlkZXJfX2JhY2tncm91bmQtZmxleCA+IC5tZGwtc2xpZGVyX19iYWNrZ3JvdW5kLWxvd2VyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyYW5nZS1iZy1jb2xvcjtcbiAgICAgIGxlZnQ6IC02cHg7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCArXG4gICAgICAgIC5tZGwtc2xpZGVyX19iYWNrZ3JvdW5kLWZsZXggPiAubWRsLXNsaWRlcl9fYmFja2dyb3VuZC11cHBlciB7XG4gICAgICBsZWZ0OiA2cHg7XG4gICAgfVxuXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6ZGlzYWJsZWQ6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1iLFxuICAgICYuaXMtbG93ZXN0LXZhbHVlOmRpc2FibGVkOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIsXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICRyYW5nZS1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2Nyk7XG4gICAgfVxuXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6ZGlzYWJsZWQ6Zm9jdXM6Oi1tb3otcmFuZ2UtdGh1bWIsXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6ZGlzYWJsZWQ6YWN0aXZlOjotbW96LXJhbmdlLXRodW1iLFxuICAgICYuaXMtbG93ZXN0LXZhbHVlOmRpc2FibGVkOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICRyYW5nZS1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2Nyk7XG4gICAgfVxuXG4gICAgJi5pcy1sb3dlc3QtdmFsdWU6ZGlzYWJsZWQ6YWN0aXZlICtcbiAgICAgICAgLm1kbC1zbGlkZXJfX2JhY2tncm91bmQtZmxleCA+IC5tZGwtc2xpZGVyX19iYWNrZ3JvdW5kLXVwcGVyIHtcbiAgICAgIGxlZnQ6IDZweDtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkOmZvY3VzOjotbXMtdGh1bWIsXG4gICAgJjpkaXNhYmxlZDphY3RpdmU6Oi1tcy10aHVtYixcbiAgICAmOmRpc2FibGVkOjotbXMtdGh1bWIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjI1KTtcbiAgICAgIGJhY2tncm91bmQ6ICRyYW5nZS1iZy1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmlzLWxvd2VzdC12YWx1ZTpkaXNhYmxlZDpmb2N1czo6LW1zLXRodW1iLFxuICAgICYuaXMtbG93ZXN0LXZhbHVlOmRpc2FibGVkOmFjdGl2ZTo6LW1zLXRodW1iLFxuICAgICYuaXMtbG93ZXN0LXZhbHVlOmRpc2FibGVkOjotbXMtdGh1bWIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjI1KTtcbiAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgY2xvc2VzdC1zaWRlLFxuICAgICAgdHJhbnNwYXJlbnQgMCUsXG4gICAgICB0cmFuc3BhcmVudCA1MCUsXG4gICAgICAkcmFuZ2UtYmctY29sb3IgNTAlLFxuICAgICAgJHJhbmdlLWJnLWNvbG9yIDEwMCUpO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQ6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgdHJhbnNwYXJlbnQsXG4gICAgICB0cmFuc3BhcmVudCAyNXB4LFxuICAgICAgJHJhbmdlLWJnLWNvbG9yIDI1cHgsXG4gICAgICAkcmFuZ2UtYmctY29sb3IgMCk7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZDo6LW1zLWZpbGwtdXBwZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICB9XG5cbiAgICAmLmlzLWxvd2VzdC12YWx1ZTpkaXNhYmxlZDphY3RpdmU6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgfVxuICB9XG59XG5cbiAgLy8gU2luY2Ugd2UgbmVlZCB0byBzcGVjaWZ5IGEgaGVpZ2h0IG9mIDMycHggaW4gSUUsIHdlIGFkZCBhIGNsYXNzIGhlcmUgZm9yIGFcbiAgLy8gY29udGFpbmVyIHRoYXQgYnJpbmdzIGl0IGJhY2sgdG8gYSByZWFzb25hYmxlIGhlaWdodC5cbiAgLm1kbC1zbGlkZXJfX2llLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IG5vbmU7XG4gICAgcGFkZGluZzogbm9uZTtcbiAgfVxuXG4gIC8vIFdlIHVzZSBhIHNldCBvZiBkaXZzIGJlaGluZCB0aGUgdHJhY2sgdG8gc3R5bGUgaXQgaW4gYWxsIG5vbi1JRSBicm93c2Vycy5cbiAgLy8gVGhpcyBvbmUgY29udGFpbnMgYm90aCB0aGUgYmFja2dyb3VuZCBhbmQgdGhlIHNsaWRlci5cbiAgLm1kbC1zbGlkZXJfX2NvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC8vIFRoaXMgb25lIHNldHMgdXAgYSBmbGV4IGJveCBmb3IgdGhlIHN0eWxlZCB1cHBlciBhbmQgbG93ZXIgcG9ydGlvbnMgb2YgdGhlXG4gIC8vIHRoZSBzbGlkZXIgdHJhY2suXG4gIC5tZGwtc2xpZGVyX19iYWNrZ3JvdW5kLWZsZXgge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNTJweCk7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IDAgMjZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTFweCk7XG4gIH1cblxuICAvLyBUaGlzIG9uZSBzdHlsZXMgdGhlIGxvd2VyIHBhcnQgb2YgdGhlIHNsaWRlciB0cmFjay5cbiAgLm1kbC1zbGlkZXJfX2JhY2tncm91bmQtbG93ZXIge1xuICAgIGJhY2tncm91bmQ6ICRyYW5nZS1jb2xvcjtcbiAgICBmbGV4OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFRoaXMgb25lIHN0eWxlcyB0aGUgdXBwZXIgcGFydCBvZiB0aGUgc2xpZGVyIHRyYWNrLlxuICAubWRsLXNsaWRlcl9fYmFja2dyb3VuZC11cHBlciB7XG4gICAgYmFja2dyb3VuZDogJHJhbmdlLWJnLWNvbG9yO1xuICAgIGZsZXg6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRyYW5zaXRpb246IGxlZnQgMC4xOHMgJGFuaW1hdGlvbi1jdXJ2ZS1kZWZhdWx0XG4gIH1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9taXhpbnNcIjtcblxuLm1kbC1zbmFja2JhciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNuYWNrYmFyLWJhY2tncm91bmQtY29sb3I7XG4gIHotaW5kZXg6IDM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtZmFtaWx5OiAkcHJlZmVycmVkX2ZvbnQ7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDgwcHgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1saW5lYXItaW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBAbWVkaWEobWF4LXdpZHRoOiAkc25hY2tiYXItdGFibGV0LWJyZWFrcG9pbnQgLSAxKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgIG1heC1oZWlnaHQ6IDgwcHg7XG4gIH1cbiAgQG1lZGlhKG1pbi13aWR0aDogJHNuYWNrYmFyLXRhYmxldC1icmVha3BvaW50KSB7XG4gICAgbWluLXdpZHRoOiAyODhweDtcbiAgICBtYXgtd2lkdGg6IDU2OHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA4MHB4KTtcbiAgfVxuICAmLS1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyAkYW5pbWF0aW9uLWN1cnZlLWxpbmVhci1vdXQtc2xvdy1pbjtcblxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRzbmFja2Jhci10YWJsZXQtYnJlYWtwb2ludCkge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgcGFkZGluZzogMTRweCAxMnB4IDE0cHggMjRweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gICZfX2FjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAkc25hY2tiYXItYWN0aW9uLWNvbG9yO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IDE0cHggMjRweCAxNHB4IDEycHg7XG4gICAgQGluY2x1ZGUgdHlwby1idXR0b24oKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gICAgJjpub3QoW2FyaWEtaGlkZGVuXSkge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG5cbi5tZGwtc3Bpbm5lciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogJHNwaW5uZXItc2l6ZTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1zaXplO1xuXG4gICY6bm90KC5pcy11cGdyYWRlZCkuaXMtYWN0aXZlOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIkxvYWRpbmcuLi5cIjtcbiAgfVxuXG4gICYuaXMtdXBncmFkZWQuaXMtYWN0aXZlIHtcbiAgICBhbmltYXRpb246IG1kbC1zcGlubmVyX19jb250YWluZXItcm90YXRlICRzcGlubmVyLWR1cmF0aW9uIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kbC1zcGlubmVyX19jb250YWluZXItcm90YXRlIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cbn1cblxuLm1kbC1zcGlubmVyX19sYXllciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm1kbC1zcGlubmVyX19sYXllci0xIHtcbiAgYm9yZGVyLWNvbG9yOiAkc3Bpbm5lci1jb2xvci0xO1xuXG4gIC5tZGwtc3Bpbm5lci0tc2luZ2xlLWNvbG9yICYge1xuICAgIGJvcmRlci1jb2xvcjogJHNwaW5uZXItc2luZ2xlLWNvbG9yO1xuICB9XG5cbiAgLm1kbC1zcGlubmVyLmlzLWFjdGl2ZSAmIHtcbiAgICBhbmltYXRpb246XG4gICAgICAgIG1kbC1zcGlubmVyX19maWxsLXVuZmlsbC1yb3RhdGUgKDQgKiAkc3Bpbm5lci1hcmMtdGltZSlcbiAgICAgICAgICAgICRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbiBpbmZpbml0ZSBib3RoLFxuICAgICAgICBtZGwtc3Bpbm5lcl9fbGF5ZXItMS1mYWRlLWluLW91dCAoNCAqICRzcGlubmVyLWFyYy10aW1lKVxuICAgICAgICAgICAgJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluIGluZmluaXRlIGJvdGg7XG4gIH1cbn1cblxuLm1kbC1zcGlubmVyX19sYXllci0yIHtcbiAgYm9yZGVyLWNvbG9yOiAkc3Bpbm5lci1jb2xvci0yO1xuXG4gIC5tZGwtc3Bpbm5lci0tc2luZ2xlLWNvbG9yICYge1xuICAgIGJvcmRlci1jb2xvcjogJHNwaW5uZXItc2luZ2xlLWNvbG9yO1xuICB9XG5cbiAgLm1kbC1zcGlubmVyLmlzLWFjdGl2ZSAmIHtcbiAgICBhbmltYXRpb246XG4gICAgICAgIG1kbC1zcGlubmVyX19maWxsLXVuZmlsbC1yb3RhdGUgKDQgKiAkc3Bpbm5lci1hcmMtdGltZSlcbiAgICAgICAgICAgICRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbiBpbmZpbml0ZSBib3RoLFxuICAgICAgICBtZGwtc3Bpbm5lcl9fbGF5ZXItMi1mYWRlLWluLW91dCAoNCAqICRzcGlubmVyLWFyYy10aW1lKVxuICAgICAgICAgICAgJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluIGluZmluaXRlIGJvdGg7XG4gIH1cbn1cblxuLm1kbC1zcGlubmVyX19sYXllci0zIHtcbiAgYm9yZGVyLWNvbG9yOiAkc3Bpbm5lci1jb2xvci0zO1xuXG4gIC5tZGwtc3Bpbm5lci0tc2luZ2xlLWNvbG9yICYge1xuICAgIGJvcmRlci1jb2xvcjogJHNwaW5uZXItc2luZ2xlLWNvbG9yO1xuICB9XG5cbiAgLm1kbC1zcGlubmVyLmlzLWFjdGl2ZSAmIHtcbiAgICBhbmltYXRpb246XG4gICAgICAgIG1kbC1zcGlubmVyX19maWxsLXVuZmlsbC1yb3RhdGUgKDQgKiAkc3Bpbm5lci1hcmMtdGltZSlcbiAgICAgICAgICAgICRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbiBpbmZpbml0ZSBib3RoLFxuICAgICAgICBtZGwtc3Bpbm5lcl9fbGF5ZXItMy1mYWRlLWluLW91dCAoNCAqICRzcGlubmVyLWFyYy10aW1lKVxuICAgICAgICAgICAgJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluIGluZmluaXRlIGJvdGg7XG4gIH1cbn1cblxuLm1kbC1zcGlubmVyX19sYXllci00IHtcbiAgYm9yZGVyLWNvbG9yOiAkc3Bpbm5lci1jb2xvci00O1xuXG4gIC5tZGwtc3Bpbm5lci0tc2luZ2xlLWNvbG9yICYge1xuICAgIGJvcmRlci1jb2xvcjogJHNwaW5uZXItc2luZ2xlLWNvbG9yO1xuICB9XG5cbiAgLm1kbC1zcGlubmVyLmlzLWFjdGl2ZSAmIHtcbiAgICBhbmltYXRpb246XG4gICAgICAgIG1kbC1zcGlubmVyX19maWxsLXVuZmlsbC1yb3RhdGUgKDQgKiAkc3Bpbm5lci1hcmMtdGltZSlcbiAgICAgICAgICAgICRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbiBpbmZpbml0ZSBib3RoLFxuICAgICAgICBtZGwtc3Bpbm5lcl9fbGF5ZXItNC1mYWRlLWluLW91dCAoNCAqICRzcGlubmVyLWFyYy10aW1lKVxuICAgICAgICAgICAgJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluIGluZmluaXRlIGJvdGg7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGwtc3Bpbm5lcl9fZmlsbC11bmZpbGwtcm90YXRlIHtcbiAgMTIuNSUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwLjUgKiAkc3Bpbm5lci1hcmMtc2l6ZSk7ICB9XG4gIDI1JSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoJHNwaW5uZXItYXJjLXNpemUpOyAgfVxuICAzNy41JSB7IHRyYW5zZm9ybTogcm90YXRlKDEuNSAqICRzcGlubmVyLWFyYy1zaXplKTsgIH1cbiAgNTAlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgyICogJHNwaW5uZXItYXJjLXNpemUpOyAgfVxuICA2Mi41JSB7IHRyYW5zZm9ybTogcm90YXRlKDIuNSAqICRzcGlubmVyLWFyYy1zaXplKTsgIH1cbiAgNzUlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzICogJHNwaW5uZXItYXJjLXNpemUpOyAgfVxuICA4Ny41JSB7IHRyYW5zZm9ybTogcm90YXRlKDMuNSAqICRzcGlubmVyLWFyYy1zaXplKTsgfVxuICB0byAgICB7IHRyYW5zZm9ybTogcm90YXRlKDQgKiAkc3Bpbm5lci1hcmMtc2l6ZSk7IH1cbn1cblxuLyoqXG4qIEhBQ0s6IEV2ZW4gdGhvdWdoIHRoZSBpbnRlbnRpb24gaXMgdG8gaGF2ZSB0aGUgY3VycmVudCAubWRsLXNwaW5uZXJfX2xheWVyLU5cbiogYXQgYG9wYWNpdHk6IDFgLCB3ZSBzZXQgaXQgdG8gYG9wYWNpdHk6IDAuOTlgIGluc3RlYWQgc2luY2UgdGhpcyBmb3JjZXMgQ2hyb21lXG4qIHRvIGRvIHByb3BlciBzdWJwaXhlbCByZW5kZXJpbmcgZm9yIHRoZSBlbGVtZW50cyBiZWluZyBhbmltYXRlZC4gVGhpcyBpc1xuKiBlc3BlY2lhbGx5IHZpc2libGUgaW4gQ2hyb21lIDM5IG9uIFVidW50dSAxNC4wNC4gU2VlOlxuKlxuKiAtIGh0dHBzOi8vZ2l0aHViLmNvbS9Qb2x5bWVyL3BhcGVyLXNwaW5uZXIvaXNzdWVzLzlcbiogLSBodHRwczovL2NvZGUuZ29vZ2xlLmNvbS9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9NDM2MjU1XG4qL1xuQGtleWZyYW1lcyBtZGwtc3Bpbm5lcl9fbGF5ZXItMS1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwLjk5OyB9XG4gIDI1JSB7IG9wYWNpdHk6IDAuOTk7IH1cbiAgMjYlIHsgb3BhY2l0eTogMDsgfVxuICA4OSUgeyBvcGFjaXR5OiAwOyB9XG4gIDkwJSB7IG9wYWNpdHk6IDAuOTk7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDAuOTk7IH1cbn1cblxuQGtleWZyYW1lcyBtZGwtc3Bpbm5lcl9fbGF5ZXItMi1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDE1JSB7IG9wYWNpdHk6IDA7IH1cbiAgMjUlIHsgb3BhY2l0eTogMC45OTsgfVxuICA1MCUgeyBvcGFjaXR5OiAwLjk5OyB9XG4gIDUxJSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyBtZGwtc3Bpbm5lcl9fbGF5ZXItMy1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDQwJSB7IG9wYWNpdHk6IDA7IH1cbiAgNTAlIHsgb3BhY2l0eTogMC45OTsgfVxuICA3NSUgeyBvcGFjaXR5OiAwLjk5OyB9XG4gIDc2JSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyBtZGwtc3Bpbm5lcl9fbGF5ZXItNC1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDY1JSB7IG9wYWNpdHk6IDA7IH1cbiAgNzUlIHsgb3BhY2l0eTogMC45OTsgfVxuICA5MCUgeyBvcGFjaXR5OiAwLjk5OyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbi8qKlxuKiBQYXRjaCB0aGUgZ2FwIHRoYXQgYXBwZWFyIGJldHdlZW4gdGhlIHR3byBhZGphY2VudFxuKiBkaXYubWRsLXNwaW5uZXJfX2NpcmNsZS1jbGlwcGVyIHdoaWxlIHRoZSBzcGlubmVyIGlzIHJvdGF0aW5nXG4qIChhcHBlYXJzIG9uIENocm9tZSAzOCwgU2FmYXJpIDcuMSwgYW5kIElFIDExKS5cbipcbiogVXBkYXRlOiB0aGUgZ2FwIG5vIGxvbmdlciBhcHBlYXJzIG9uIENocm9tZSB3aGVuIC5tZGwtc3Bpbm5lcl9fbGF5ZXItTidzXG4qIG9wYWNpdHkgaXMgMC45OSwgYnV0IHN0aWxsIGRvZXMgb24gU2FmYXJpIGFuZCBJRS5cbiovXG4ubWRsLXNwaW5uZXJfX2dhcC1wYXRjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdG9wOiAwO1xuICBsZWZ0OiA0NSU7XG4gIHdpZHRoOiAxMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuXG4gICYgLm1kbC1zcGlubmVyX19jaXJjbGUge1xuICAgIHdpZHRoOiAxMDAwJTtcbiAgICBsZWZ0OiAtNDUwJTtcbiAgfVxufVxuXG4ubWRsLXNwaW5uZXJfX2NpcmNsZS1jbGlwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA1MCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuXG4gICYgLm1kbC1zcGlubmVyX19jaXJjbGUge1xuICAgIHdpZHRoOiAyMDAlO1xuICB9XG59XG5cbi5tZGwtc3Bpbm5lcl9fY2lyY2xlIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLXN0cm9rZS13aWR0aDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogbm9uZTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcblxuICAubWRsLXNwaW5uZXJfX2xlZnQgJiB7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDEyOWRlZyk7XG5cbiAgICAubWRsLXNwaW5uZXIuaXMtYWN0aXZlICYge1xuICAgICAgYW5pbWF0aW9uOiBtZGwtc3Bpbm5lcl9fbGVmdC1zcGluICRzcGlubmVyLWFyYy10aW1lXG4gICAgICAgICAgJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluIGluZmluaXRlIGJvdGg7XG4gICAgfVxuICB9XG5cbiAgLm1kbC1zcGlubmVyX19yaWdodCAmIHtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTI5ZGVnKTtcblxuICAgIC5tZGwtc3Bpbm5lci5pcy1hY3RpdmUgJiB7XG4gICAgICBhbmltYXRpb246IG1kbC1zcGlubmVyX19yaWdodC1zcGluICRzcGlubmVyLWFyYy10aW1lXG4gICAgICAgICAgJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluIGluZmluaXRlIGJvdGg7XG4gICAgfVxuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRsLXNwaW5uZXJfX2xlZnQtc3BpbiB7XG4gIGZyb20geyB0cmFuc2Zvcm06IHJvdGF0ZSgxMzBkZWcpOyB9XG4gIDUwJSB7IHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTsgfVxuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDEzMGRlZyk7IH1cbn1cblxuQGtleWZyYW1lcyBtZGwtc3Bpbm5lcl9fcmlnaHQtc3BpbiB7XG4gIGZyb20geyB0cmFuc2Zvcm06IHJvdGF0ZSgtMTMwZGVnKTsgfVxuICA1MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTsgfVxuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9taXhpbnNcIjtcblxuLm1kbC1zd2l0Y2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgei1pbmRleDogMTtcblxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkc3dpdGNoLWxhYmVsLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICYuaXMtdXBncmFkZWQge1xuICAgIHBhZGRpbmctbGVmdDogJHN3aXRjaC10cmFjay1sZW5ndGggLSA4cHg7XG4gIH1cblxuICAvLyBhdm9pZHMgYmx1ZSBib3ggYXJvdW5kIHN3aXRjaFxuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5tZGwtc3dpdGNoX19pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiAkc3dpdGNoLWxhYmVsLWhlaWdodDtcblxuICAubWRsLXN3aXRjaC5pcy11cGdyYWRlZCAmIHtcbiAgICAvLyBIaWRlIGlucHV0IGVsZW1lbnQsIHdoaWxlIHN0aWxsIG1ha2luZyBpdCByZXNwb25kIHRvIGZvY3VzLlxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5cbi5tZGwtc3dpdGNoX190cmFjayB7XG4gIGJhY2tncm91bmQ6ICRzd2l0Y2gtb2ZmLXRyYWNrLWNvbG9yO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogJHN3aXRjaC10cmFjay10b3A7XG4gIGhlaWdodDogJHN3aXRjaC10cmFjay1oZWlnaHQ7XG4gIHdpZHRoOiAkc3dpdGNoLXRyYWNrLWxlbmd0aDtcbiAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC10cmFjay1oZWlnaHQ7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC5tZGwtc3dpdGNoLmlzLWNoZWNrZWQgJiB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC10cmFjay1jb2xvcjtcbiAgfVxuXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAubWRsLXN3aXRjaCxcbiAgLm1kbC1zd2l0Y2guaXMtZGlzYWJsZWQgJiB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1kaXNhYmxlZC10cmFjay1jb2xvcjtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLm1kbC1zd2l0Y2hfX3RodW1iIHtcbiAgYmFja2dyb3VuZDogJHN3aXRjaC1vZmYtdGh1bWItY29sb3I7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAkc3dpdGNoLXRodW1iLXRvcDtcbiAgaGVpZ2h0OiAkc3dpdGNoLXRodW1iLXNpemU7XG4gIHdpZHRoOiAkc3dpdGNoLXRodW1iLXNpemU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgQGluY2x1ZGUgc2hhZG93LTJkcCgpO1xuXG4gIEBpbmNsdWRlIG1hdGVyaWFsLWFuaW1hdGlvbi1kZWZhdWx0KDAuMjhzKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDtcblxuICAubWRsLXN3aXRjaC5pcy1jaGVja2VkICYge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtdGh1bWItY29sb3I7XG4gICAgbGVmdDogJHN3aXRjaC10cmFjay1sZW5ndGggLSAkc3dpdGNoLXRodW1iLXNpemU7XG5cbiAgICBAaW5jbHVkZSBzaGFkb3ctM2RwKCk7XG4gIH1cblxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1kbC1zd2l0Y2gsXG4gIC5tZGwtc3dpdGNoLmlzLWRpc2FibGVkICYge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtZGlzYWJsZWQtdGh1bWItY29sb3I7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG59XG5cbi5tZGwtc3dpdGNoX19mb2N1cy1oZWxwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG5cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLSRzd2l0Y2gtaGVscGVyLXNpemUgLyAyLCAtJHN3aXRjaC1oZWxwZXItc2l6ZSAvIDIpO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogJHN3aXRjaC1oZWxwZXItc2l6ZTtcbiAgaGVpZ2h0OiAkc3dpdGNoLWhlbHBlci1zaXplO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgLm1kbC1zd2l0Y2guaXMtZm9jdXNlZCAmIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMHB4ICgoJHN3aXRjaC1yaXBwbGUtc2l6ZSAtICRzd2l0Y2gtaGVscGVyLXNpemUpIC8gMilcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgfVxuXG4gIC5tZGwtc3dpdGNoLmlzLWZvY3VzZWQuaXMtY2hlY2tlZCAmIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMHB4ICgoJHN3aXRjaC1yaXBwbGUtc2l6ZSAtICRzd2l0Y2gtaGVscGVyLXNpemUpIC8gMilcbiAgICAgICAgJHN3aXRjaC1mYWRlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLWZhZGVkLWNvbG9yO1xuICB9XG59XG5cbi5tZGwtc3dpdGNoX19sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6ICRzd2l0Y2gtbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJHN3aXRjaC1sYWJlbC1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgbGVmdDogMjRweDtcblxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1kbC1zd2l0Y2gsXG4gIC5tZGwtc3dpdGNoLmlzLWRpc2FibGVkICYge1xuICAgIGNvbG9yOiAkc3dpdGNoLWRpc2FibGVkLXRodW1iLWNvbG9yO1xuICAgIGN1cnNvcjogYXV0bztcbiAgfVxufVxuXG4ubWRsLXN3aXRjaF9fcmlwcGxlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAtKCRzd2l0Y2gtcmlwcGxlLXNpemUgLSAkc3dpdGNoLWxhYmVsLWhlaWdodCkgLyAyO1xuICBsZWZ0OiAkc3dpdGNoLXRodW1iLXNpemUgLyAyIC0gJHN3aXRjaC1yaXBwbGUtc2l6ZSAvIDI7XG5cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6ICRzd2l0Y2gtcmlwcGxlLXNpemU7XG4gIGhlaWdodDogJHN3aXRjaC1yaXBwbGUtc2l6ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgd2hpdGUsIGJsYWNrKTtcblxuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjQwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHN0ZXAtZW5kO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0O1xuXG4gICYgLm1kbC1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtY29sb3I7XG4gIH1cblxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1kbC1zd2l0Y2gsXG4gIC5tZGwtc3dpdGNoLmlzLWRpc2FibGVkICYge1xuICAgIGN1cnNvcjogYXV0bztcbiAgfVxuXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAubWRsLXN3aXRjaCAmIC5tZGwtcmlwcGxlLFxuICAubWRsLXN3aXRjaC5pcy1kaXNhYmxlZCAmIC5tZGwtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5tZGwtc3dpdGNoLmlzLWNoZWNrZWQgJiB7XG4gICAgbGVmdDogJHN3aXRjaC10cmFjay1sZW5ndGggLSAkc3dpdGNoLXJpcHBsZS1zaXplIC8gMiAtXG4gICAgICAgICRzd2l0Y2gtdGh1bWItc2l6ZSAvIDI7XG4gIH1cbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuXG4ubWRsLXRhYnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tZGwtdGFic19fdGFiLWJhciB7XG4gICAgZGlzcGxheSAgICAgICAgIDogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbiAgOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50IDogY2VudGVyOyAvLyDih75cbiAgICBhbGlnbi1jb250ZW50ICAgOiBzcGFjZS1iZXR3ZWVuOyAvLyB8fFxuICAgIGFsaWduLWl0ZW1zICAgICA6IGZsZXgtc3RhcnQ7IC8vIOKGk1xuXG4gICAgaGVpZ2h0ICAgICAgICAgIDogNDhweDtcbiAgICBwYWRkaW5nICAgICAgICAgOiAwIDAgMCAwO1xuICAgIG1hcmdpbiAgICAgICAgICA6IDA7XG4gICAgYm9yZGVyLWJvdHRvbSAgIDogMXB4IHNvbGlkICR0YWItYm9yZGVyLWNvbG9yO1xufVxuXG4ubWRsLXRhYnNfX3RhYiB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwIDI0cHggMCAyNHB4O1xuXG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgaGVpZ2h0OiA0OHB4O1xuICBsaW5lLWhlaWdodDogNDhweDtcblxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogJGxheW91dC10YWItZm9udC1zaXplO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIGNvbG9yOiAkdGFiLXRleHQtY29sb3I7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1kbC10YWJzLmlzLXVwZ3JhZGVkICYuaXMtYWN0aXZlIHtcbiAgICBjb2xvcjogJHRhYi1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgfVxuXG4gIC5tZGwtdGFicy5pcy11cGdyYWRlZCAmLmlzLWFjdGl2ZTphZnRlciB7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAkdGFiLWhpZ2hsaWdodC1jb2xvcjtcbiAgICBhbmltYXRpb246IGJvcmRlci1leHBhbmQgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuNCwgMSkgMC4wMXMgYWx0ZXJuYXRlIGZvcndhcmRzO1xuICAgIHRyYW5zaXRpb246IGFsbCAxcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDEsIDEpO1xuICB9XG5cbiAgJiAubWRsLXRhYnNfX3JpcHBsZS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMHB4O1xuICAgIHRvcDogMHB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYgLm1kbC1yaXBwbGUge1xuICAgICAgYmFja2dyb3VuZDogJHRhYi1oaWdobGlnaHQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5tZGwtdGFic19fcGFuZWwge1xuICBkaXNwbGF5OiBibG9jaztcblxuICAubWRsLXRhYnMuaXMtdXBncmFkZWQgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5tZGwtdGFicy5pcy11cGdyYWRlZCAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3JkZXItZXhwYW5kIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi4vbWl4aW5zXCI7XG5cbi8vIFRoZSBjb250YWluZXIgZm9yIHRoZSB3aG9sZSBjb21wb25lbnQuXG4ubWRsLXRleHRmaWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAkaW5wdXQtdGV4dC1mb250LXNpemU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDMwMHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogJGlucHV0LXRleHQtdmVydGljYWwtc3BhY2luZyAwO1xuXG4gIC8vIEFsaWduIGJ1dHRvbnMsIGlmIHVzZWQuXG4gICYgLm1kbC1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206ICRpbnB1dC10ZXh0LXZlcnRpY2FsLXNwYWNpbmc7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWwgY2xhc3MgdG8gYWxpZ24gcmlnaHQuXG4ubWRsLXRleHRmaWVsZC0tYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLy8gT3B0aW9uYWwgY2xhc3MgdG8gZGlzcGxheSBhdCBmdWxsIHdpZHRoLlxuLm1kbC10ZXh0ZmllbGQtLWZ1bGwtd2lkdGgge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gT3B0aW9uYWwgY2xhc3MgdG8gbWFrZSB0aGUgdGV4dCBmaWVsZCBleHBhbmRhYmxlLlxuLm1kbC10ZXh0ZmllbGQtLWV4cGFuZGFibGUge1xuICBtaW4td2lkdGg6ICRpbnB1dC10ZXh0LWJ1dHRvbi1zaXplO1xuICB3aWR0aDogYXV0bztcbiAgbWluLWhlaWdodDogJGlucHV0LXRleHQtYnV0dG9uLXNpemU7XG59XG5cbi8vIFN0eWxpbmcgZm9yIHRoZSBpbnB1dCBlbGVtZW50LlxuLm1kbC10ZXh0ZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlucHV0LXRleHQtYm90dG9tLWJvcmRlci1jb2xvcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogJGlucHV0LXRleHQtZm9udC1zaXplO1xuICBmb250LWZhbWlseTogJHBlcmZvcm1hbmNlX2ZvbnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogJGlucHV0LXRleHQtcGFkZGluZyAwO1xuICB3aWR0aDogJGlucHV0LXRleHQtd2lkdGg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICZbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIH1cblxuICAmW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICZbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5tZGwtdGV4dGZpZWxkLmlzLWZvY3VzZWQgJiB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC5tZGwtdGV4dGZpZWxkLmlzLWludmFsaWQgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtdGV4dC1lcnJvci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5tZGwtdGV4dGZpZWxkICYsXG4gIC5tZGwtdGV4dGZpZWxkLmlzLWRpc2FibGVkICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGlucHV0LXRleHQtZGlzYWJsZWQtY29sb3I7XG4gICAgY29sb3I6ICRpbnB1dC10ZXh0LWRpc2FibGVkLXRleHQtY29sb3I7XG4gIH1cbn1cblxuLm1kbC10ZXh0ZmllbGQgdGV4dGFyZWEubWRsLXRleHRmaWVsZF9faW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gU3R5bGluZyBmb3IgdGhlIGxhYmVsIC8gZmxvYXRpbmcgbGFiZWwuXG4ubWRsLXRleHRmaWVsZF9fbGFiZWwge1xuICBib3R0b206IDA7XG4gIGNvbG9yOiAkaW5wdXQtdGV4dC1sYWJlbC1jb2xvcjtcbiAgZm9udC1zaXplOiAkaW5wdXQtdGV4dC1mb250LXNpemU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiAoJGlucHV0LXRleHQtcGFkZGluZyArICRpbnB1dC10ZXh0LXZlcnRpY2FsLXNwYWNpbmcpO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAubWRsLXRleHRmaWVsZC5pcy1kaXJ0eSAmLFxuICAubWRsLXRleHRmaWVsZC5oYXMtcGxhY2Vob2xkZXIgJiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gRmxvYXRpbmcgTGFiZWxcbiAgLm1kbC10ZXh0ZmllbGQtLWZsb2F0aW5nLWxhYmVsICYge1xuICAgIEBpbmNsdWRlIG1hdGVyaWFsLWFuaW1hdGlvbi1kZWZhdWx0KCk7XG4gIH1cblxuICAubWRsLXRleHRmaWVsZC0tZmxvYXRpbmctbGFiZWwuaGFzLXBsYWNlaG9sZGVyICYge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1kbC10ZXh0ZmllbGQgJixcbiAgLm1kbC10ZXh0ZmllbGQuaXMtZGlzYWJsZWQuaXMtZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6ICRpbnB1dC10ZXh0LWRpc2FibGVkLXRleHQtY29sb3I7XG4gIH1cblxuICAubWRsLXRleHRmaWVsZC0tZmxvYXRpbmctbGFiZWwuaXMtZm9jdXNlZCAmLFxuICAubWRsLXRleHRmaWVsZC0tZmxvYXRpbmctbGFiZWwuaXMtZGlydHkgJixcbiAgLm1kbC10ZXh0ZmllbGQtLWZsb2F0aW5nLWxhYmVsLmhhcy1wbGFjZWhvbGRlciAmIHtcbiAgICBjb2xvcjogJGlucHV0LXRleHQtaGlnaGxpZ2h0LWNvbG9yO1xuICAgIGZvbnQtc2l6ZSA6ICRpbnB1dC10ZXh0LWZsb2F0aW5nLWxhYmVsLWZvbnRzaXplO1xuICAgIHRvcDogJGlucHV0LXRleHQtdmVydGljYWwtc3BhY2luZyAtICgkaW5wdXQtdGV4dC1mbG9hdGluZy1sYWJlbC1mb250c2l6ZSArICRpbnB1dC10ZXh0LXBhZGRpbmcpO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAubWRsLXRleHRmaWVsZC0tZmxvYXRpbmctbGFiZWwuaXMtZm9jdXNlZCAubWRsLXRleHRmaWVsZF9fZXhwYW5kYWJsZS1ob2xkZXIgJixcbiAgLm1kbC10ZXh0ZmllbGQtLWZsb2F0aW5nLWxhYmVsLmlzLWRpcnR5IC5tZGwtdGV4dGZpZWxkX19leHBhbmRhYmxlLWhvbGRlciAmLFxuICAubWRsLXRleHRmaWVsZC0tZmxvYXRpbmctbGFiZWwuaGFzLXBsYWNlaG9sZGVyIC5tZGwtdGV4dGZpZWxkX19leHBhbmRhYmxlLWhvbGRlciAmIHtcbiAgICB0b3A6IC0oJGlucHV0LXRleHQtZmxvYXRpbmctbGFiZWwtZm9udHNpemUgKyAkaW5wdXQtdGV4dC1wYWRkaW5nKTtcbiAgfVxuXG4gIC5tZGwtdGV4dGZpZWxkLS1mbG9hdGluZy1sYWJlbC5pcy1pbnZhbGlkICYge1xuICAgIGNvbG9yOiAkaW5wdXQtdGV4dC1lcnJvci1jb2xvcjtcbiAgICBmb250LXNpemU6ICRpbnB1dC10ZXh0LWZsb2F0aW5nLWxhYmVsLWZvbnRzaXplO1xuICB9XG5cbiAgLy8gVGhlIGFmdGVyIGxhYmVsIGlzIHRoZSBjb2xvcmVkIHVuZGVybGluZSBmb3IgdGhlIFRleHRGaWVsZC5cbiAgJjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LXRleHQtaGlnaGxpZ2h0LWNvbG9yO1xuICAgIGJvdHRvbTogJGlucHV0LXRleHQtdmVydGljYWwtc3BhY2luZztcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBsZWZ0OiA0NSU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIEBpbmNsdWRlIG1hdGVyaWFsLWFuaW1hdGlvbi1kZWZhdWx0KCk7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAxMHB4O1xuICB9XG5cbiAgLm1kbC10ZXh0ZmllbGQuaXMtZm9jdXNlZCAmOmFmdGVyIHtcbiAgICBsZWZ0OiAwO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAubWRsLXRleHRmaWVsZC5pcy1pbnZhbGlkICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC10ZXh0LWVycm9yLWNvbG9yO1xuICB9XG59XG5cbi8vIFRleHRGaWVsZCBFcnJvci5cbi5tZGwtdGV4dGZpZWxkX19lcnJvciB7XG4gIGNvbG9yOiAkaW5wdXQtdGV4dC1lcnJvci1jb2xvcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6ICRpbnB1dC10ZXh0LWZsb2F0aW5nLWxhYmVsLWZvbnRzaXplO1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLm1kbC10ZXh0ZmllbGQuaXMtaW52YWxpZCAmIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbi8vIEV4cGFuZGFibGUgSG9sZGVyLlxuLm1kbC10ZXh0ZmllbGRfX2V4cGFuZGFibGUtaG9sZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAkaW5wdXQtdGV4dC1idXR0b24tc2l6ZTtcblxuICBAaW5jbHVkZSBtYXRlcmlhbC1hbmltYXRpb24tZGVmYXVsdCgpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgLy8gU2FmYXJpIChwb3NzaWJseSBvdGhlcnMpIG5lZWQgdG8gYmUgY29udmluY2VkIHRoYXQgdGhpcyBmaWVsZCBpcyBhY3R1YWxseVxuICAvLyB2aXNpYmxlLCBvdGhlcndpc2UgaXQgY2Fubm90IGJlIHRhYmJlZCB0byBub3IgZm9jdXNlZCB2aWEgYSA8bGFiZWw+LlxuICAvLyBUT0RPOiBJbiBzb21lIGNhc2VzIChSZXRpbmEgZGlzcGxheXMpLCB0aGlzIGlzIGJpZyBlbm91Z2ggdG8gcmVuZGVyIHRoZVxuICAvLyBpbm5lciBlbGVtZW50IDooXG4gIG1heC13aWR0aDogMC4xcHg7XG5cbiAgLm1kbC10ZXh0ZmllbGQuaXMtZm9jdXNlZCAmLCAubWRsLXRleHRmaWVsZC5pcy1kaXJ0eSAmIHtcbiAgICAvLyBUaGlzIGlzIGFuIHVuZm9ydHVuYXRlIGhhY2suIEFuaW1hdGluZyBiZXR3ZWVuIHdpZHRocyBpbiBwZXJjZW50ICglKVxuICAgIC8vIGluIG1hbnkgYnJvd3NlcnMgKENocm9tZSwgRmlyZWZveCkgb25seSBhbmltYXRlcyB0aGUgaW5uZXIgdmlzdWFsIHN0eWxlXG4gICAgLy8gb2YgdGhlIGlucHV0IC0gdGhlIG91dGVyIGJvdW5kaW5nIGJveCBzdGlsbCAnanVtcHMnLlxuICAgIC8vIFRodXMgYXNzdW1lIGEgc2Vuc2libGUgbWF4aW11bSwgYW5kIGFuaW1hdGUgdG8vZnJvbSB0aGF0IHZhbHVlLlxuICAgIG1heC13aWR0aDogNjAwcHg7XG4gIH1cbiAgLm1kbC10ZXh0ZmllbGRfX2xhYmVsOmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gIH1cbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLm1kbC10b29sdGlwIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgei1pbmRleDogOTk5O1xuICBiYWNrZ3JvdW5kOiAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGNvbG9yOiAkdG9vbHRpcC10ZXh0LWNvbG9yO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogJHRvb2x0aXAtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgbWF4LXdpZHRoOiAxNzBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC01MDBweDtcbiAgbGVmdDogLTUwMHB4O1xuICBwYWRkaW5nOiA4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZGwtdG9vbHRpcC5pcy1hY3RpdmUge1xuICBhbmltYXRpb246IHB1bHNlIDIwMG1zICRhbmltYXRpb24tY3VydmUtbGluZWFyLW91dC1zbG93LWluIGZvcndhcmRzO1xufVxuXG4ubWRsLXRvb2x0aXAtLWxhcmdlIHtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIGZvbnQtc2l6ZTogJHRvb2x0aXAtZm9udC1zaXplLWxhcmdlO1xuICBwYWRkaW5nOiAxNnB4O1xufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIC8vIEZpeGVzIGEgd2VpcmQgYnVnIHdpdGggdGhlIGludGVyYWN0aW9uIGJldHdlZW4gU2FmYXJpIGFuZCB0aGUgcmVzdWx0IG9mXG4gICAgLy8gdGhlIFNBU1MgY29tcGlsYXRpb24gZm9yIHRoZSBhbmltYXRpb24uXG4gICAgLy8gRXNzZW50aWFsbHksIHdlIG5lZWQgdG8gbWFrZSBzdXJlIHRoYXQgXCI1MCVcIiBhbmQgXCIxMDAlXCIgZG9uJ3QgZ2V0IG1lcmdlZFxuICAgIC8vIGludG8gYSBzaW5nbGUgXCI1MCUsIDEwMCVcIiBlbnRyeSwgc28gd2UgbmVlZCB0byBhdm9pZCB0aGVtIGhhdmluZyBhbnlcbiAgICAvLyBtYXRjaGluZyBwcm9wZXJ0aWVzLlxuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9taXhpbnNcIjtcblxuLm1kbC1zaGFkb3ctLTJkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy0yZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLTNkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy0zZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLTRkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy00ZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLTZkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy02ZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLThkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy04ZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLTE2ZHAge1xuICBAaW5jbHVkZSBzaGFkb3ctMTZkcCgpO1xufVxuXG4ubWRsLXNoYWRvdy0tMjRkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy0yNGRwKCk7XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKlxuKiBOT1RFOiBTb21lIHJ1bGVzIGhlcmUgYXJlIGFwcGxpZWQgdXNpbmcgZHVwbGljYXRlIHNlbGVjdG9ycy5cbiogVGhpcyBpcyBvbiBwdXJwb3NlIHRvIGluY3JlYXNlIHRoZWlyIHNwZWNpZmljaXR5IHdoZW4gYXBwbGllZC5cbiogRm9yIGV4YW1wbGU6IGAubWRsLWNlbGwtLTEtY29sLXBob25lLm1kbC1jZWxsLS0xLWNvbC1waG9uZWBcbiovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLm1kbC1ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgbWFyZ2luOiAwIGF1dG8gMCBhdXRvO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAmLm1kbC1ncmlkLS1uby1zcGFjaW5nIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5tZGwtY2VsbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLm1kbC1jZWxsLS10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWRsLWNlbGwtLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLm1kbC1jZWxsLS1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLm1kbC1jZWxsLS1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLm1kbC1ncmlkLm1kbC1ncmlkLS1uby1zcGFjaW5nID4gLm1kbC1jZWxsIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBEZWZpbmUgb3JkZXIgb3ZlcnJpZGUgY2xhc3Nlcy5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtbWF4LWNvbHVtbnMge1xuICAubWRsLWNlbGwtLW9yZGVyLSN7JGl9IHtcbiAgICBvcmRlcjogJGk7XG4gIH1cbn1cblxuXG4vLyBNaXhpbnMgZm9yIHdpZHRoIGNhbGN1bGF0aW9uLlxuQG1peGluIHBhcnRpYWwtc2l6ZSgkc2l6ZSwgJGNvbHVtbnMsICRndXR0ZXIpIHtcbiAgd2lkdGg6IGNhbGMoI3soKCRzaXplIC8gJGNvbHVtbnMpICogMTAwKStcIiVcIn0gLSAjeyRndXR0ZXJ9KTtcblxuICAubWRsLWdyaWQtLW5vLXNwYWNpbmcgPiAmIHtcbiAgICB3aWR0aDogI3soKCRzaXplIC8gJGNvbHVtbnMpICogMTAwKStcIiVcIn07XG4gIH1cbn1cblxuQG1peGluIGZ1bGwtc2l6ZSgkZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIHBhcnRpYWwtc2l6ZSgxLCAxLCAkZ3V0dGVyKTtcbn1cblxuQG1peGluIG9mZnNldC1zaXplKCRzaXplLCAkY29sdW1ucywgJGd1dHRlcikge1xuICBtYXJnaW4tbGVmdDogY2FsYygjeygoJHNpemUgLyAkY29sdW1ucykgKiAxMDApK1wiJVwifSArICN7JGd1dHRlciAvIDJ9KTtcblxuICAubWRsLWdyaWQubWRsLWdyaWQtLW5vLXNwYWNpbmcgPiAmIHtcbiAgICBtYXJnaW4tbGVmdDogI3soKCRzaXplIC8gJGNvbHVtbnMpICogMTAwKStcIiVcIn07XG4gIH1cbn1cblxuXG5cbi8vLy8vLy8vLy8gUGhvbmUgLy8vLy8vLy8vL1xuXG5AbWVkaWEgKG1heC13aWR0aDogJGdyaWQtdGFibGV0LWJyZWFrcG9pbnQgLSAxKSB7XG4gIC5tZGwtZ3JpZCB7XG4gICAgcGFkZGluZzogJGdyaWQtcGhvbmUtbWFyZ2luIC0gKCRncmlkLXBob25lLWd1dHRlciAvIDIpO1xuICB9XG5cbiAgLm1kbC1jZWxsIHtcbiAgICBtYXJnaW46ICRncmlkLXBob25lLWd1dHRlciAvIDI7XG4gICAgQGluY2x1ZGUgcGFydGlhbC1zaXplKCRncmlkLWNlbGwtZGVmYXVsdC1jb2x1bW5zLCAkZ3JpZC1waG9uZS1jb2x1bW5zLFxuICAgICAgICAkZ3JpZC1waG9uZS1ndXR0ZXIpO1xuICB9XG5cbiAgLm1kbC1jZWxsLS1oaWRlLXBob25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBEZWZpbmUgb3JkZXIgb3ZlcnJpZGUgY2xhc3Nlcy5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1tYXgtY29sdW1ucyB7XG4gICAgLm1kbC1jZWxsLS1vcmRlci0jeyRpfS1waG9uZS5tZGwtY2VsbC0tb3JkZXItI3skaX0tcGhvbmUge1xuICAgICAgb3JkZXI6ICRpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluZSBwYXJ0aWFsIHNpemVzIGZvciBjb2x1bW5OdW1iZXIgPCB0b3RhbENvbHVtbnMuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRncmlkLXBob25lLWNvbHVtbnMgLSAxKSB7XG4gICAgLm1kbC1jZWxsLS0jeyRpfS1jb2wsXG4gICAgLm1kbC1jZWxsLS0jeyRpfS1jb2wtcGhvbmUubWRsLWNlbGwtLSN7JGl9LWNvbC1waG9uZSB7XG4gICAgICBAaW5jbHVkZSBwYXJ0aWFsLXNpemUoJGksICRncmlkLXBob25lLWNvbHVtbnMsICRncmlkLXBob25lLWd1dHRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5lIDEwMCUgZm9yIGV2ZXJ5dGhpbmcgZWxzZS5cbiAgQGZvciAkaSBmcm9tICRncmlkLXBob25lLWNvbHVtbnMgdGhyb3VnaCAkZ3JpZC1kZXNrdG9wLWNvbHVtbnMge1xuICAgIC5tZGwtY2VsbC0tI3skaX0tY29sLFxuICAgIC5tZGwtY2VsbC0tI3skaX0tY29sLXBob25lLm1kbC1jZWxsLS0jeyRpfS1jb2wtcGhvbmUge1xuICAgICAgQGluY2x1ZGUgZnVsbC1zaXplKCRncmlkLXBob25lLWd1dHRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5lIHZhbGlkIHBob25lIG9mZnNldHMuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRncmlkLXBob25lLWNvbHVtbnMgLSAxKSB7XG4gICAgLm1kbC1jZWxsLS0jeyRpfS1vZmZzZXQsXG4gICAgLm1kbC1jZWxsLS0jeyRpfS1vZmZzZXQtcGhvbmUubWRsLWNlbGwtLSN7JGl9LW9mZnNldC1waG9uZSB7XG4gICAgICBAaW5jbHVkZSBvZmZzZXQtc2l6ZSgkaSwgJGdyaWQtcGhvbmUtY29sdW1ucywgJGdyaWQtcGhvbmUtZ3V0dGVyKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vIFRhYmxldCAvLy8vLy8vLy8vXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC10YWJsZXQtYnJlYWtwb2ludCkgYW5kIChtYXgtd2lkdGg6ICRncmlkLWRlc2t0b3AtYnJlYWtwb2ludCAtIDEpIHtcbiAgLm1kbC1ncmlkIHtcbiAgICBwYWRkaW5nOiAkZ3JpZC10YWJsZXQtbWFyZ2luIC0gKCRncmlkLXRhYmxldC1ndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIC5tZGwtY2VsbCB7XG4gICAgbWFyZ2luOiAkZ3JpZC10YWJsZXQtZ3V0dGVyIC8gMjtcbiAgICBAaW5jbHVkZSBwYXJ0aWFsLXNpemUoJGdyaWQtY2VsbC1kZWZhdWx0LWNvbHVtbnMsICRncmlkLXRhYmxldC1jb2x1bW5zLFxuICAgICAgICAkZ3JpZC10YWJsZXQtZ3V0dGVyKTtcbiAgfVxuXG4gIC5tZGwtY2VsbC0taGlkZS10YWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIERlZmluZSBvcmRlciBvdmVycmlkZSBjbGFzc2VzLlxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLW1heC1jb2x1bW5zIHtcbiAgICAubWRsLWNlbGwtLW9yZGVyLSN7JGl9LXRhYmxldC5tZGwtY2VsbC0tb3JkZXItI3skaX0tdGFibGV0IHtcbiAgICAgIG9yZGVyOiAkaTtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbmUgcGFydGlhbCBzaXplcyBmb3IgY29sdW1uTnVtYmVyIDwgdG90YWxDb2x1bW5zLlxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkZ3JpZC10YWJsZXQtY29sdW1ucyAtIDEpIHtcbiAgICAubWRsLWNlbGwtLSN7JGl9LWNvbCxcbiAgICAubWRsLWNlbGwtLSN7JGl9LWNvbC10YWJsZXQubWRsLWNlbGwtLSN7JGl9LWNvbC10YWJsZXQge1xuICAgICAgQGluY2x1ZGUgcGFydGlhbC1zaXplKCRpLCAkZ3JpZC10YWJsZXQtY29sdW1ucywgJGdyaWQtdGFibGV0LWd1dHRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5lIDEwMCUgZm9yIGV2ZXJ5dGhpbmcgZWxzZS5cbiAgQGZvciAkaSBmcm9tICRncmlkLXRhYmxldC1jb2x1bW5zIHRocm91Z2ggJGdyaWQtZGVza3RvcC1jb2x1bW5zIHtcbiAgICAubWRsLWNlbGwtLSN7JGl9LWNvbCxcbiAgICAubWRsLWNlbGwtLSN7JGl9LWNvbC10YWJsZXQubWRsLWNlbGwtLSN7JGl9LWNvbC10YWJsZXQge1xuICAgICAgQGluY2x1ZGUgZnVsbC1zaXplKCRncmlkLXRhYmxldC1ndXR0ZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluZSB2YWxpZCB0YWJsZXQgb2Zmc2V0cy5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGdyaWQtdGFibGV0LWNvbHVtbnMgLSAxKSB7XG4gICAgLm1kbC1jZWxsLS0jeyRpfS1vZmZzZXQsXG4gICAgLm1kbC1jZWxsLS0jeyRpfS1vZmZzZXQtdGFibGV0Lm1kbC1jZWxsLS0jeyRpfS1vZmZzZXQtdGFibGV0IHtcbiAgICAgIEBpbmNsdWRlIG9mZnNldC1zaXplKCRpLCAkZ3JpZC10YWJsZXQtY29sdW1ucywgJGdyaWQtdGFibGV0LWd1dHRlcik7XG4gICAgfVxuICB9XG59XG5cblxuLy8vLy8vLy8vLyBEZXNrdG9wIC8vLy8vLy8vLy9cblxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWRlc2t0b3AtYnJlYWtwb2ludCkge1xuICAubWRsLWdyaWQge1xuICAgIHBhZGRpbmc6ICRncmlkLWRlc2t0b3AtbWFyZ2luIC0gKCRncmlkLWRlc2t0b3AtZ3V0dGVyIC8gMik7XG4gIH1cblxuICAubWRsLWNlbGwge1xuICAgIG1hcmdpbjogJGdyaWQtZGVza3RvcC1ndXR0ZXIgLyAyO1xuICAgIEBpbmNsdWRlIHBhcnRpYWwtc2l6ZSgkZ3JpZC1jZWxsLWRlZmF1bHQtY29sdW1ucywgJGdyaWQtZGVza3RvcC1jb2x1bW5zLFxuICAgICAgICAkZ3JpZC1kZXNrdG9wLWd1dHRlcik7XG4gIH1cblxuICAubWRsLWNlbGwtLWhpZGUtZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gRGVmaW5lIG9yZGVyIG92ZXJyaWRlIGNsYXNzZXMuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtbWF4LWNvbHVtbnMge1xuICAgIC5tZGwtY2VsbC0tb3JkZXItI3skaX0tZGVza3RvcC5tZGwtY2VsbC0tb3JkZXItI3skaX0tZGVza3RvcCB7XG4gICAgICBvcmRlcjogJGk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5lIHBhcnRpYWwgc2l6ZXMgZm9yIGFsbCBudW1iZXJzIG9mIGNvbHVtbnMuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtZGVza3RvcC1jb2x1bW5zIHtcbiAgICAubWRsLWNlbGwtLSN7JGl9LWNvbCxcbiAgICAubWRsLWNlbGwtLSN7JGl9LWNvbC1kZXNrdG9wLm1kbC1jZWxsLS0jeyRpfS1jb2wtZGVza3RvcCB7XG4gICAgICBAaW5jbHVkZSBwYXJ0aWFsLXNpemUoJGksICRncmlkLWRlc2t0b3AtY29sdW1ucywgJGdyaWQtZGVza3RvcC1ndXR0ZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluZSB2YWxpZCBkZXNrdG9wIG9mZnNldHMuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRncmlkLWRlc2t0b3AtY29sdW1ucyAtIDEpIHtcbiAgICAubWRsLWNlbGwtLSN7JGl9LW9mZnNldCxcbiAgICAubWRsLWNlbGwtLSN7JGl9LW9mZnNldC1kZXNrdG9wLm1kbC1jZWxsLS0jeyRpfS1vZmZzZXQtZGVza3RvcCB7XG4gICAgICBAaW5jbHVkZSBvZmZzZXQtc2l6ZSgkaSwgJGdyaWQtZGVza3RvcC1jb2x1bW5zLCAkZ3JpZC1kZXNrdG9wLWd1dHRlcik7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb250c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMjAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gVGhpbicpLCBsb2NhbCgnUm9ib3RvLVRoaW4nKSwgdXJsKC4uL2ZvbnRzL1JvYm90by1UaGluLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBUaGluSXRhbGljJyksIGxvY2FsKCdSb2JvdG8tVGhpbkl0YWxpYycpLCB1cmwoLi4vZm9udHMvUm9ib3RvLVRoaW5JdGFsaWMudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIExpZ2h0JyksIGxvY2FsKCdSb2JvdG8tTGlnaHQnKSwgdXJsKC4uL2ZvbnRzL1JvYm90by1MaWdodC50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gTGlnaHRJdGFsaWMnKSwgbG9jYWwoJ1JvYm90by1MaWdodEl0YWxpYycpLCB1cmwoLi4vZm9udHMvUm9ib3RvLUxpZ2h0SXRhbGljLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBSZWd1bGFyJyksIGxvY2FsKCdSb2JvdG8tUmVndWxhcicpLCB1cmwoLi4vZm9udHMvUm9ib3RvLVJlZ3VsYXIudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIEl0YWxpYycpLCBsb2NhbCgnUm9ib3RvLUl0YWxpYycpLCB1cmwoLi4vZm9udHMvUm9ib3RvLUl0YWxpYy50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gTWVkaXVtJyksIGxvY2FsKCdSb2JvdG8tTWVkaXVtJyksIHVybCguLi9mb250cy9Sb2JvdG8tTWVkaXVtLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzogbG9jYWwoJ1JvYm90byBNZWRpdW1JdGFsaWMnKSwgbG9jYWwoJ1JvYm90by1NZWRpdW1JdGFsaWMnKSwgdXJsKC4uL2ZvbnRzL1JvYm90by1NZWRpdW1JdGFsaWMudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnUm9ib3RvIEJvbGQnKSwgbG9jYWwoJ1JvYm90by1Cb2xkJyksIHVybCguLi9mb250cy9Sb2JvdG8tQm9sZC50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IGxvY2FsKCdSb2JvdG8gQm9sZEl0YWxpYycpLCBsb2NhbCgnUm9ib3RvLUJvbGRJdGFsaWMnKSwgdXJsKC4uL2ZvbnRzL1JvYm90by1Cb2xkSXRhbGljLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuIiwiLy8gSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIGh0dHA6Ly9nb29nbGUuZ2l0aHViLmlvL21hdGVyaWFsLWRlc2lnbi1pY29ucy8jaWNvbi1mb250LWZvci10aGUtd2ViXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybCguLi9mb250cy9NYXRlcmlhbEljb25zLVJlZ3VsYXIuZW90KTsgLyogRm9yIElFNi04ICovXG4gIHNyYzogbG9jYWwoJ01hdGVyaWFsIEljb25zJyksXG4gICAgICAgbG9jYWwoJ01hdGVyaWFsSWNvbnMtUmVndWxhcicpLFxuICAgICAgIHVybCguLi9mb250cy9NYXRlcmlhbEljb25zLVJlZ3VsYXIud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoLi4vZm9udHMvTWF0ZXJpYWxJY29ucy1SZWd1bGFyLndvZmYpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCguLi9mb250cy9NYXRlcmlhbEljb25zLVJlZ3VsYXIudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbi5tZCxcbi5tYXRlcmlhbC1pY29ucyB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMjRweDsgIC8qIFByZWZlcnJlZCBpY29uIHNpemUgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuXG4gIC8qIFN1cHBvcnQgZm9yIGFsbCBXZWJLaXQgYnJvd3NlcnMuICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAvKiBTdXBwb3J0IGZvciBTYWZhcmkgYW5kIENocm9tZS4gKi9cbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcblxuICAvKiBTdXBwb3J0IGZvciBGaXJlZm94LiAqL1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG4gIC8qIFN1cHBvcnQgZm9yIElFLiAqL1xuICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcblxuICAvLyBSdWxlcyBmb3Igc2l6aW5nIHRoZSBpY29uLlxuICAmLm1kLTE0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAmLm1kLTE4IHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cblxuICAmLm1kLTI0IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cblxuICAmLm1kLTM2IHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gIH1cblxuICAmLm1kLTQ4IHtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gIH1cblxuICAvLyBSdWxlcyBmb3IgdXNpbmcgaWNvbnMgYXMgYmxhY2sgb24gYSBsaWdodCBiYWNrZ3JvdW5kLlxuICAmLm1kLWRhcmsge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xuICB9XG5cbiAgJi5tZC1kYXJrLm1kLWluYWN0aXZlIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcbiAgfVxuXG4gIC8vIFJ1bGVzIGZvciB1c2luZyBpY29ucyBhcyB3aGl0ZSBvbiBhIGRhcmsgYmFja2dyb3VuZC5cbiAgJi5tZC1saWdodCB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gIH1cblxuICAmLm1kLWxpZ2h0Lm1kLWluYWN0aXZlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICB9XG59XG4iLCIuZGluZ28tbGF5b3V0IHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLm1kbC1sYXlvdXRfX2NvbnRlbnR7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgJi5oYXMtaGVhZGVye1xuICAgICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICB9XG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgICAgYm9yZGVyOiAwIG5vbmUgI2ZmZmZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpO1xuICAgIH1cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIik7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwIG5vbmUgI2ZmZmZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjazphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubWRsLWxheW91dF9faGVhZGVyLC5tZGwtbGF5b3V0X190YWItYmFye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1tYWluLWhlYWRlcjtcbiAgfVxuXG4gICYubWRsLWxheW91dC5pcy11cGdyYWRlZCAubWRsLWxheW91dF9fdGFiLmlzLWFjdGl2ZTo6YWZ0ZXJ7XG4gICAgYmFja2dyb3VuZDogdW5xdW90ZShcInJnYigjeyRjb2xvci13aGl0ZX0pXCIpO1xuICB9XG5cbiAgLm1kbC1sYXlvdXQtdGV4dCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLXdoaXRlfSwgMC41NClcIik7XG4gIH1cblxuICAubWRsLW5hdmlnYXRpb25fX2xpbmsgPiAubWF0ZXJpYWwtaWNvbnMge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAubWRsLWxheW91dF9fZHJhd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG59XG5cbi5kaW5nby1sYXlvdXRfX3NpZGViYXIge1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgPiAuc2lkZWJhci1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4xMilcIik7XG5cbiAgICA+IGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICBoZWlnaHQ6IDY0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbG9nby5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDIycHggMTBweDtcbiAgICAgICAgY29sb3I6ICM3NTc1NzU7XG5cbiAgICAgICAgPiAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiAuc2lkZWJhci1ib2R5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2NHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogNDBweDtcbiAgICBsZWZ0OiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cblxuICA+IC5zaWRlYmFyLWZvb3RlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMTIpXCIpO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB9XG59XG5cbi5kaW5nby1sYXlvdXRfX2NvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IC8vIEluaGVyaXQgYm9keSBoZWlnaHQgd2l0aCBhYnNvbHV0ZSBwb3NpdGlvblxuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiA1NnB4O1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMC4zNXMgZWFzZTtcbiAgICAgICAtby10cmFuc2l0aW9uOiBsZWZ0IDAuMzVzIGVhc2U7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjM1cyBlYXNlO1xufVxuXG4uZGluZ28tcGFnZV9faGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDY0cHg7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIGhlaWdodDogNDhweDtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgcGFkZGluZzogMCAyNHB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gMjQwcHgpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB6LWluZGV4OiA5OTk7XG4gIEBpbmNsdWRlIHNoYWRvdy0yZHAtYm90dG9tKCk7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gIC5tZGwtYnV0dG9ue1xuICAgIGhlaWdodDogMzJweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxuICAuZGluZ28tc2VhcmNoe1xuICAgIGhlaWdodDogNDhweDtcbiAgfVxuICArIC5kaW5nby1wYWdlX19ib2R5e1xuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuICAgIC5kaW5nby10YWJsZS1jb250YWluZXJ7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZGluZ28tcGFnZV9fZm9vdGVyIHtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuXG4ubWRsLWxheW91dF9fY29udGVudHtcbiAgei1pbmRleDogNDtcbn1cblxuLmRpbmdvLXBhZ2Utc3VibmF2X19oZWFkZXJ7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAubWRsLWxheW91dF9fdGFiLWJhcntcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5kaW5nby1wYWdlX19oZWFkZXItdGFiYmFye1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbWFpbi1oZWFkZXI7XG4gIC5tZGwtbGF5b3V0X190YWItYmFye1xuICAgIGhlaWdodDogNDhweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5kaW5nby12aWV3LWFsbHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDMycHg7XG4gIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKTtcbn1cblxuLm1kbC1sYXlvdXRfX2hlYWRlci1yb3d7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCl7XG4gIC5kaW5nby1wYWdlX19oZWFkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogNTZweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCl7XG4gIC5tZGwtbGF5b3V0LS1maXhlZC1kcmF3ZXI+Lm1kbC1sYXlvdXRfX2hlYWRlciAubWRsLWxheW91dF9faGVhZGVyLXJvdyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gIH1cblxuICAuZGluZ28tcGFnZV9fY29sLTJ7XG4gICAgLmRpbmdvLXBhZ2VfX2NvbC1yaWdodHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMjBweCk7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgLmRpbmdvLXBhZ2VfX2NvbC1sZWZ0e1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMzIwcHg7XG4gICAgICBoNXtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cbn1cblxuXG4iLCJib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRwcmVmZXJyZWRfZm9udDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbn1cblxuYSB7XG4gIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKTtcblxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5LWRhcmt9KVwiKTtcbiAgfVxufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGhlYWRpbmdzLXNtYWxsLWNvbG9yO1xuICB9XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIG1hcmdpbi10b3A6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNjUlO1xuICB9XG59XG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgfVxufVxuXG5oMSwgLmgxIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgxOyB9XG5oMiwgLmgyIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgyOyB9XG5oMywgLmgzIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgzOyB9XG5oNCwgLmg0IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg0OyB9XG5oNSwgLmg1IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg1OyB9XG5oNiwgLmg2IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg2OyB9XG5cblxuLy8gQm9keSB0ZXh0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnAge1xuICBtYXJnaW46IDAgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG59XG5cbi5sZWFkIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6IGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAxLjE1KSk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cblxuLy8gRW1waGFzaXMgJiBtaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEV4OiAoMTJweCBzbWFsbCBmb250IC8gMTRweCBiYXNlIGZvbnQpICogMTAwJSA9IGFib3V0IDg1JVxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IGZsb29yKCgxMDAlICogJGZvbnQtc2l6ZS1zbWFsbCAvICRmb250LXNpemUtYmFzZSkpO1xufVxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4vLyBMaXN0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVbm9yZGVyZWQgYW5kIE9yZGVyZWQgbGlzdHNcbnVsLFxub2wge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIHVsLFxuICBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBMaXN0IG9wdGlvbnNcblxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5saXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cblxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgfVxufVxuXG4vLyBEZXNjcmlwdGlvbiBMaXN0c1xuZGwge1xuICBtYXJnaW4tdG9wOiAwOyAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbn1cbmR0LFxuZGQge1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuZGQge1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuLy8gSG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0c1xuLy9cbi8vIERlZmF1bHRzIHRvIGJlaW5nIHN0YWNrZWQgd2l0aG91dCBhbnkgb2YgdGhlIGJlbG93IHN0eWxlcyBhcHBsaWVkLCB1bnRpbCB0aGVcbi8vIGdyaWQgYnJlYWtwb2ludCBpcyByZWFjaGVkIChkZWZhdWx0IG9mIH43NjhweCkuXG5cbi5kbC1ob3Jpem9udGFsIHtcbiAgZGQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBDbGVhciB0aGUgZmxvYXRlZCBgZHRgIGlmIGFuIGVtcHR5IGBkZGAgaXMgcHJlc2VudFxuICB9XG59XG5cblxuLy8gTWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBYmJyZXZpYXRpb25zIGFuZCBhY3Jvbnltc1xuYWJiclt0aXRsZV0sXG4vLyBBZGQgZGF0YS0qIGF0dHJpYnV0ZSB0byBoZWxwIG91dCBvdXIgdG9vbHRpcCBwbHVnaW4sIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGFiYnItYm9yZGVyLWNvbG9yO1xufVxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgQGV4dGVuZCAudGV4dC11cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG5ibG9ja3F1b3RlIHtcbiAgLy8gcGFkZGluZzogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgLy8gbWFyZ2luOiAwIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcbiAgLy8gYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG5cbiAgcCxcbiAgdWwsXG4gIG9sIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBOb3RlOiBEZXByZWNhdGVkIHNtYWxsIGFuZCAuc21hbGwgYXMgb2YgdjMuMS4wXG4gIC8vIENvbnRleHQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NjBcbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDgwJTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7IC8vIGVtIGRhc2gsIG5ic3BcbiAgICB9XG4gIH1cbn1cblxuLy8gT3Bwb3NpdGUgYWxpZ25tZW50IG9mIGJsb2NrcXVvdGVcbi8vXG4vLyBIZWFkcyB1cDogYGJsb2NrcXVvdGUucHVsbC1yaWdodGAgaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiB2My4xLjAuXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAvLyBBY2NvdW50IGZvciBjaXRhdGlvblxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgICY6YmVmb3JlIHsgY29udGVudDogJyc7IH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwQTAgXFwyMDE0JzsgLy8gbmJzcCwgZW0gZGFzaFxuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRyZXNzZXNcbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuIiwiLy8gRm9ybXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRm9ybVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZGluZ28tZm9ybS1jb250YWluZXIge1xuICBtYXJnaW46IDI0cHg7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIEBpbmNsdWRlIHNoYWRvdy0yZHAoKTtcbn1cbi5kaW5nby1zbGlkZW91dF9fYm9keSAuZGluZ28tZm9ybS1jb250YWluZXJ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5kaW5nby1mb3JtX19hY3Rpb25zIHtcbiAgbWFyZ2luLXRvcDogMjRweDtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICAubWRsLWJ1dHRvbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgKyAubWRsLWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWFyY2ggRm9ybVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5kaW5nby1zZWFyY2gtY29udGFpbmVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBBZGQgdG8gLmRpbmdvLXBhZ2VfX2hlYWRlclxuXG4uZGluZ28tc2VhcmNoLC5kaW5nby1nbG9iYWwtc2VhcmNoIHtcbiAgaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nOiAxNHB4IDZweDtcbiAgLm1kbC1idXR0b24ge1xuICAgIHRvcDogMTBweDtcbiAgfVxuXG4gIC5kaW5nby1zZWFyY2hfX2xhYmVsIHtcbiAgICBjb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjU0KVwiKTtcbiAgfVxuXG4gIC5kaW5nby1zZWFyY2hfX2lucHV0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAuZGluZ28tc2VhcmNoX19jbGVhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYuaXMtZGlydHksXG4gICYuaXMtZm9jdXNlZCB7XG4gICAgLmRpbmdvLXNlYXJjaF9fbGFiZWwge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kaW5nby1zZWFyY2hfX2NsZWFyIHtcbiAgICAgIHJpZ2h0OiAtN3B4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmllbGRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmRpbmdvLWZpZWxkX19sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC41NClcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5kaW5nby1maWVsZF9fdmFsdWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNHB4IDA7XG59XG5cbi5kaW5nby1maWVsZF9faW5wdXQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmRpbmdvLWZpZWxkX19ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2hvc2VuLWNvbnRhaW5lcntcbiAgbWFyZ2luLXRvcDogOHB4O1xufVxuXG4uZGluZ28tZmllbGRfX3Nob3cge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5bZGF0YS11cGdyYWRlZF0gPiAuZGluZ28tZmllbGRfX3Nob3d7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5kaW5nby1wYWdlX19zaG93IHtcbiAgLmRpbmdvLWZpZWxkX19zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5kaW5nby1maWVsZF9fZWRpdCwgLmRpbmdvLWZpZWxkc2V0X19kZWxldGUsIC5kaW5nby1maWVsZHNldF9fYWRkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5kaW5nby1wYWdlX19lZGl0IHtcbiAgLmRpbmdvLWZpZWxkX19zaG93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmRpbmdvLWZpZWxkX19lZGl0LCAuZGluZ28tZmllbGRzZXRfX2RlbGV0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmRpbmdvLWZpZWxkc2V0X19hZGR7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICYubWRsLW1lbnVfX2l0ZW17XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLmRpbmdvLWZpZWxkIHtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcblxuICAmLmlzLWVycm9yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuXG4gICAgLmRpbmdvLWZpZWxkX19sYWJlbCxcbiAgICAuZGluZ28tZmllbGRfX2Vycm9yLFxuICAgIC5tZGwtdGV4dGZpZWxkX19sYWJlbCB7XG4gICAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKTtcbiAgICB9XG5cbiAgICAuZGluZ28tZmllbGRfX2Vycm9yIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICA+IGkge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG5cbiAgICAgID4gc3BhbiB7XG4gICAgICAgICsgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tZGwtdGV4dGZpZWxkLFxuICAgIC5kaW5nby1maWVsZF9fYmxvY2sge1xuICAgICAgKyAuZGluZ28tZmllbGRfX2Vycm9yIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1kbC10ZXh0ZmllbGRfX2xhYmVse1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICAubWRsLWNoZWNrYm94X19sYWJlbCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG5cbi8vIEN1c3RvbSBtb2RpZmllciBmb3IgLm1kbC10ZXh0ZmllbGRcbi5kaW5nby1maWVsZCB7XG4gIC5tZGwtdGV4dGZpZWxkX19sYWJlbCB7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC41NClcIik7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRvcDogNHB4O1xuICB9XG5cbiAgLm1kbC10ZXh0ZmllbGRfX2lucHV0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAubWRsLXRleHRmaWVsZC5pcy1kaXJ0eSAubWRsLXRleHRmaWVsZF9fbGFiZWwge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuLmRpbmdvLXRleHRmaWVsZC0tY29uZGVuc2VkIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gIC5tZGwtdGV4dGZpZWxkX19sYWJlbCB7XG4gICAgdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5tZGwtdGV4dGZpZWxkX19pbnB1dCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG5cblxuLy8gRmlsZSBpbnB1dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZGluZ28tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cblxuLmRpbmdvLWZpbGVfX2xpc3Qge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gID4gdWwge1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgID4gbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjEyKVwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3Itd2hpdGV9KVwiKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgID4gc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci13aGl0ZX0sIDAuNSlcIik7XG5cbiAgICAgICAgJjpmaXJzdC1sZXR0ZXIge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTYwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5kaW5nby1maWxlX19saXN0LWl0ZW17XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTUwcHg7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4xMilcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci13aGl0ZX0pXCIpO1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgLmRpbmdvLWZpbGVfX2FjdGlvbntcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjc1KVwiKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBhe1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB3aWR0aDogNDhweDtcbiAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxNiU7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgaXtcbiAgICAgICAgICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgIC5kaW5nby1maWxlX19hY3Rpb257XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICAgID4gc3BhbntcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBzcGFue1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGaWVsZHNldFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZGluZ28tZmllbGRzZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIHBhZGRpbmc6IDE2cHggMjRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjEyKVwiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLWdyZXktNTB9KVwiKTtcbiAgLm1kbC10ZXh0ZmllbGRfX2lucHV0e1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cblxuICAuZGluZ28tZmllbGRzZXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgLmRpbmdvLWZpZWxkc2V0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTUwfSlcIik7XG4gICAgfVxuICB9XG59XG5cbi5kaW5nby1maWVsZHNldF9fZGVsZXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDhweDtcbiAgcmlnaHQ6IDhweDtcbn1cblxuLmRpbmdvLWZpZWxkc2V0X19hbGVydCB7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gU2VjdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZGluZ28tc2VjdGlvbi1jb2x1bW5zLTIgLmRpbmdvLWZpZWxkIHtcbiAgd2lkdGg6IDUwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC5tZGwtdGV4dGZpZWxkIC5kaW5nby1maWVsZF9fZWRpdHtcbiAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICB9XG59XG5cbi5kaW5nby1zZWN0aW9uLWNvbHVtbnMtMyAuZGluZ28tZmllbGQge1xuICB3aWR0aDogMzMuMzMlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLnByb21vdGlvbi1jb3Vwb25zIC5kaW5nby1zZWN0aW9uLWNvbHVtbnMtMyAuZGluZ28tZmllbGR7XG4gICY6Zmlyc3QtY2hpbGR7XG4gICAgd2lkdGg6IDUwJTtcbiAgICAubWRsLXRleHRmaWVsZHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZHtcbiAgICBtYXJnaW4tdG9wOiAzNnB4O1xuICB9XG4gICY6bnRoLWNoaWxkKDIpe1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIC5tZGwtdGV4dGZpZWxkX19sYWJlbHtcbiAgICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIH1cbiAgfVxufVxuIiwiLkNvZGVNaXJyb3Ige1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250OiBpbmhlcml0O1xuICB6LWluZGV4OiAxO1xufVxuXG4uQ29kZU1pcnJvci1zY3JvbGwge1xuICBtaW4taGVpZ2h0OiAzMDBweDtcbn1cblxuLkNvZGVNaXJyb3ItZnVsbHNjcmVlbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICB0b3A6IDUwcHg7XG4gIGxlZnQ6IDI0MHB4O1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IDk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5Db2RlTWlycm9yLXNpZGVkIHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMTIwcHgpICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVkaXRvci10b29sYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAuNjtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAtby11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNiYmI7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2JiYjtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2JiYjtcblxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnICc7XG4gICAgaGVpZ2h0OiAxcHg7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJyAnO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxufVxuXG4uZWRpdG9yLXdyYXBwZXIgaW5wdXQudGl0bGUge1xuICAmOmZvY3VzLCAmOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjg7XG4gIH1cbn1cblxuLmVkaXRvci10b29sYmFyIHtcbiAgJi5mdWxsc2NyZWVuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMjQwcHg7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiA5O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxheW91dC1zY3JlZW4tc2l6ZS10aHJlc2hvbGQpIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpKSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMTAwJSk7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzJjM2U1MCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJi5hY3RpdmUsICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZjZmNmYztcbiAgICAgIGJvcmRlci1jb2xvcjogIzk1YTVhNjtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG4gIH1cblxuICBpLnNlcGFyYXRvciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZmZmO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWluZGVudDogLTEwcHg7XG4gICAgbWFyZ2luOiAwIDZweDtcbiAgfVxuXG4gIGEge1xuICAgICYuZmEtaGVhZGVyLXg6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogNjUlO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAycHg7XG4gICAgfVxuXG4gICAgJi5mYS1oZWFkZXItMTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIjFcIjtcbiAgICB9XG5cbiAgICAmLmZhLWhlYWRlci0yOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiMlwiO1xuICAgIH1cblxuICAgICYuZmEtaGVhZGVyLTM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIzXCI7XG4gICAgfVxuXG4gICAgJi5mYS1oZWFkZXItYmlnZ2VyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi4payXCI7XG4gICAgfVxuXG4gICAgJi5mYS1oZWFkZXItc21hbGxlcjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIuKWvFwiO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQtZm9yLXByZXZpZXcgYTpub3QoLm5vLWRpc2FibGUpIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IGluaGVyaXQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MDBweCkge1xuICAuZWRpdG9yLXRvb2xiYXIgYS5uby1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmVkaXRvci1zdGF0dXNiYXIge1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogIzk1OTY5NDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1pbi13aWR0aDogNGVtO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gIH1cblxuICAubGluZXM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcImxpbmVzOiBcIjtcbiAgfVxuXG4gIC53b3JkczpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwid29yZHM6IFwiO1xuICB9XG5cbiAgLmNoYXJhY3RlcnM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcImNoYXJhY3RlcnM6IFwiO1xuICB9XG59XG5cbi5lZGl0b3ItcHJldmlldyB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICB6LWluZGV4OiA3O1xuICBvdmVyZmxvdzogYXV0bztcbiAgZGlzcGxheTogbm9uZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmVkaXRvci1wcmV2aWV3LXNpZGUge1xuICBwYWRkaW5nOiAxMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMTIwcHgpO1xuICB0b3A6IDUwcHg7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICB6LWluZGV4OiA5O1xuICBvdmVyZmxvdzogYXV0bztcbiAgZGlzcGxheTogbm9uZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGF5b3V0LXNjcmVlbi1zaXplLXRocmVzaG9sZCkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmVkaXRvci1wcmV2aWV3LWFjdGl2ZS1zaWRlLCAuZWRpdG9yLXByZXZpZXctYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5lZGl0b3ItcHJldmlldyA+IHAsIC5lZGl0b3ItcHJldmlldy1zaWRlID4gcCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5lZGl0b3ItcHJldmlldyBwcmUsIC5lZGl0b3ItcHJldmlldy1zaWRlIHByZSB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5lZGl0b3ItcHJldmlldyB0YWJsZSB7XG4gIHRkLCB0aCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cbn1cblxuLmVkaXRvci1wcmV2aWV3LXNpZGUgdGFibGUge1xuICB0ZCwgdGgge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgcGFkZGluZzogNXB4O1xuICB9XG59XG5cbi5Db2RlTWlycm9yIHtcbiAgLkNvZGVNaXJyb3ItY29kZSB7XG4gICAgLmNtLXRhZyB7XG4gICAgICBjb2xvcjogIzYzYTM1YztcbiAgICB9XG5cbiAgICAuY20tYXR0cmlidXRlIHtcbiAgICAgIGNvbG9yOiAjNzk1ZGEzO1xuICAgIH1cblxuICAgIC5jbS1zdHJpbmcge1xuICAgICAgY29sb3I6ICMxODM2OTE7XG4gICAgfVxuICB9XG5cbiAgLkNvZGVNaXJyb3Itc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQ6ICNkOWQ5ZDk7XG4gIH1cblxuICAuQ29kZU1pcnJvci1jb2RlIHtcbiAgICAuY20taGVhZGVyLTEge1xuICAgICAgZm9udC1zaXplOiAyMDAlO1xuICAgICAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gICAgfVxuXG4gICAgLmNtLWhlYWRlci0yIHtcbiAgICAgIGZvbnQtc2l6ZTogMTYwJTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICAgIH1cblxuICAgIC5jbS1oZWFkZXItMyB7XG4gICAgICBmb250LXNpemU6IDEyNSU7XG4gICAgICBsaW5lLWhlaWdodDogMTI1JTtcbiAgICB9XG5cbiAgICAuY20taGVhZGVyLTQge1xuICAgICAgZm9udC1zaXplOiAxMTAlO1xuICAgICAgbGluZS1oZWlnaHQ6IDExMCU7XG4gICAgfVxuXG4gICAgLmNtLWNvbW1lbnQge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB9XG5cbiAgICAuY20tbGluayB7XG4gICAgICBjb2xvcjogIzdmOGM4ZDtcbiAgICB9XG5cbiAgICAuY20tdXJsIHtcbiAgICAgIGNvbG9yOiAjYWFiMmIzO1xuICAgIH1cblxuICAgIC5jbS1zdHJpa2V0aHJvdWdoIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgIH1cbiAgfVxuXG4gIC5Db2RlTWlycm9yLXBsYWNlaG9sZGVyIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgfVxufSIsIi8vIEJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5kaW5nby1idXR0b24tLXNtYWxsIHtcbiAgaGVpZ2h0OiAzMnB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbn1cblxuLmRpbmdvLWJ1dHRvbi0tbmV3LCAuZGluZ28tYnV0dG9uLS1lZGl0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMzJweDtcbiAgYm90dG9tOiAzMnB4O1xuICB6LWluZGV4OiAxO1xuICBAaW5jbHVkZSBzaGFkb3ctNGRwKCk7XG59XG5cbi5kaW5nby1idXR0b24tLWFjY2VudHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItYWNjZW50fSlcIikgIWltcG9ydGFudDtcbn1cblxuLmRpbmdvLWJ1dHRvbi0tbXV0ZWQge1xuICBjb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjU0KVwiKTtcbn1cbiIsIi5kaW5nby1jYXJkIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5kaW5nby1jYXJkLXNob3J0IHtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLmRpbmdvLWNhcmQtY291bnQge1xuICBwYWRkaW5nOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gID4gcCB7XG4gICAgZm9udC1zemU6IDE2cHg7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgPiBoMiB7XG4gICAgZm9udC1zaXplOiAyN3B4O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICB9XG59XG5cbi5kaW5nby1jYXJkLWxpc3Qge1xuICA+IC5tZGwtY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxufVxuXG4uZGluZ28tY2FyZC1tc2cge1xuICAuZGluZ28tbXNnIHtcbiAgICBtYXJnaW46IDEwcHggMDtcblxuICAgID4gLmRhdGEge1xuICAgICAgPiBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5kaW5nby1tc2ctdGltZXN0YW1wIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG4gIH1cbn1cblxuLmRpbmdvLWNhcmQtcG9zdCB7XG4gIC50aW1lc3RhbXAge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgfVxuXG4gIC5zdGF0dXMge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgfVxufVxuXG4ubWwtY2FyZC1ob2xkZXIge1xuICAmLm1sLWNhcmQtaG9sZGVyLWZpcnN0IHtcbiAgICBtYXJnaW4tdG9wOi04MXB4O1xuICB9XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi10b3A6MHB4O1xuICB9XG59XG5cblxuLm1sLWxpc3QtcHJvZmlsZSB7XG4gIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgcGFkZGluZzogMTBweCAxMHB4IDAgMDtcbiAgfVxufVxuXG4ubWwtY2FyZC1ob3Jpem9udGFsIHtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgbWluLWhlaWdodDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuXG4gIC5tbC1jYXJkLWhvcml6b250YWwtLWltYWdlIHtcbiAgICBmbGV4OiAxIGF1dG87XG4gICAgb3JkZXI6IDE7XG5cbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgfVxuXG4gIC5tbC1jYXJkLWhvcml6b250YWwtLWNvbnRlbnQge1xuICAgIGZsZXg6IDMgMHB4O1xuICAgIG9yZGVyOiAyO1xuICB9XG59XG5cbi5kaW5nby1jYXJkLW1lc3NhZ2UtYm94IHtcbiAgY29sb3I6ICRjYXJkLXN1cHBvcnRpbmctdGV4dC10ZXh0LWNvbG9yO1xuICBmb250LXNpemU6ICRjYXJkLXN1cHBvcnRpbmctdGV4dC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkY2FyZC1zdXBwb3J0aW5nLXRleHQtbGluZS1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgJGNhcmQtaG9yaXpvbnRhbC1wYWRkaW5nO1xufVxuIiwiLnNpZGViYXItaGVhZGVyIHtcblxuICAucHJvZmlsZSB7XG4gICAgLmF2YXRhciB7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuIiwiLmFsZXJ0aWZ5LWxvZ3MgPiAqIHtcbiAgcGFkZGluZzogMTJweCAyNHB4O1xuICBjb2xvcjogIzIwMjAyMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDJweCAxMnB4IHJnYmEoMCwgMCwgMCwgLjIpO1xuICBib3gtc2hhZG93OiAwIDJweCAxMnB4IHJnYmEoMCwgMCwgMCwgLjIpO1xufVxuLmFsZXJ0aWZ5LWxvZ3MgPiAqLFxuLmFsZXJ0aWZ5LWxvZ3MgPiAqLmRlZmF1bHQge1xuICBiYWNrZ3JvdW5kOiAjRjhGOEY4O1xufVxuLmFsZXJ0aWZ5LWxvZ3MgPiAqLmVycm9yIHtcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLmFsZXJ0aWZ5LWxvZ3MgPiAqLnN1Y2Nlc3Mge1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uYWxlcnRpZnkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTcwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMyk7XG59XG4uYWxlcnRpZnkuaGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xufVxuLmFsZXJ0aWZ5LFxuLmFsZXJ0aWZ5LnNob3csXG4uYWxlcnRpZnkuaGlkZSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuMzNzIGN1YmljLWJlemllciguMjUsIC44LCAuMjUsIDEpO1xuICAtby10cmFuc2l0aW9uOiBhbGwgLjMzcyBjdWJpYy1iZXppZXIoLjI1LCAuOCwgLjI1LCAxKTtcbiAgdHJhbnNpdGlvbjogYWxsIC4zM3MgY3ViaWMtYmV6aWVyKC4yNSwgLjgsIC4yNSwgMSk7XG59XG4uYWxlcnRpZnksXG4uYWxlcnRpZnkgKiB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLmFsZXJ0aWZ5IC5kaWFsb2cge1xuICBwYWRkaW5nOiAxMnB4O1xufVxuLmFsZXJ0aWZ5IC5kaWFsb2csXG4uYWxlcnRpZnkgLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4uYWxlcnRpZnkgLmRpYWxvZyA+ICosXG4uYWxlcnRpZnkgLmFsZXJ0ID4gKiB7XG4gIHdpZHRoOiA0MDBweDtcbiAgbWF4LXdpZHRoOiA5NSU7XG4gIHBhZGRpbmc6IDEycHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAycHggMTJweCByZ2JhKDAsIDAsIDAsIC4yKTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIC4xNCksIDAgNHB4IDVweCAwIHJnYmEoMCwgMCwgMCwgLjA5OCksIDAgMXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIC4wODQpO1xuICBib3gtc2hhZG93OiAwIDJweCAxMnB4IHJnYmEoMCwgMCwgMCwgLjIpO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIC4xNCksIDAgNHB4IDVweCAwIHJnYmEoMCwgMCwgMCwgLjA5OCksIDAgMXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIC4wODQpO1xufVxuLmFsZXJ0aWZ5IC5kaWFsb2cgLm1zZyxcbi5hbGVydGlmeSAuYWxlcnQgLm1zZyB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogcmdiYSgwLDAsMCwuNSk7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsZXR0ZXItc3BhY2luZzogMC4wM3B4O1xuICBwYWRkaW5nLXRvcDogMjFweDtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hbGVydGlmeSAuZGlhbG9nIGlucHV0LFxuLmFsZXJ0aWZ5IC5hbGVydCBpbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM2cHg7XG4gIHBhZGRpbmc6IDZweCAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU3MTQyODU3O1xuICBjb2xvcjogIzc2ODM4ZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U0ZWFlYztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtYm94LXNoYWRvdyAuMjVzIGxpbmVhciwgYm9yZGVyIC4yNXMgbGluZWFyLCBjb2xvciAuMjVzIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAuMjVzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogICAgICAgICBib3gtc2hhZG93IC4yNXMgbGluZWFyLCBib3JkZXIgLjI1cyBsaW5lYXIsIGNvbG9yIC4yNXMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjI1cyBsaW5lYXIsIGJvcmRlciAuMjVzIGxpbmVhciwgY29sb3IgLjI1cyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgLjI1cyBsaW5lYXI7XG59XG4uYWxlcnRpZnkgLmRpYWxvZyBpbnB1dDpmb2N1cyxcbi5hbGVydGlmeSAuYWxlcnQgaW5wdXQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM2MmE4ZWE7XG4gIG91dGxpbmU6IDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggcmdiYSg5OCwgMTY4LCAyMzQsIC42KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggcmdiYSg5OCwgMTY4LCAyMzQsIC42KTtcbn1cbi5hbGVydGlmeSAuZGlhbG9nIGlucHV0LmZvY3VzLFxuLmFsZXJ0aWZ5IC5hbGVydCBpbnB1dC5mb2N1cyxcbi5hbGVydGlmeSAuZGlhbG9nIGlucHV0OmZvY3VzLFxuLmFsZXJ0aWZ5IC5hbGVydCBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzYyYThlYTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLmFsZXJ0aWZ5IC5kaWFsb2cgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIsXG4uYWxlcnRpZnkgLmFsZXJ0IGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNhM2FmYjc7XG4gIG9wYWNpdHk6IDE7XG59XG4uYWxlcnRpZnkgLmRpYWxvZyBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4uYWxlcnRpZnkgLmFsZXJ0IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYTNhZmI3O1xufVxuLmFsZXJ0aWZ5IC5kaWFsb2cgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4uYWxlcnRpZnkgLmFsZXJ0IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNhM2FmYjc7XG59XG4uYWxlcnRpZnkgLmRpYWxvZyBuYXYsXG4uYWxlcnRpZnkgLmFsZXJ0IG5hdiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmFsZXJ0aWZ5IC5kaWFsb2cgbmF2IC5idG4sXG4uYWxlcnRpZnkgLmFsZXJ0IG5hdiAuYnRuIHtcbiAgbWFyZ2luOiA0cHggNXB4O1xufVxuLmFsZXJ0aWZ5LWxvZ3Mge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAxNnB4O1xuICBib3R0b206IDE2cHg7XG4gIHotaW5kZXg6IDE2OTk7XG59XG4uYWxlcnRpZnktbG9ncyA+ICoge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiByaWdodDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGNsZWFyOiBib3RoO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC4yNSwgLjgsIC4yNSwgMSk7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC4yNSwgLjgsIC4yNSwgMSk7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC4yNSwgLjgsIC4yNSwgMSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwO1xuICBwZXJzcGVjdGl2ZTogMTAwMDtcbn1cbi5hbGVydGlmeS1sb2dzID4gKi5zaG93IHtcbiAgcmlnaHQ6IDA7XG4gIG9wYWNpdHk6IDE7XG59XG4uYWxlcnRpZnktbG9ncyA+ICosXG4uYWxlcnRpZnktbG9ncyA+ICouaGlkZSB7XG4gIHJpZ2h0OiAtMTAwJTtcbiAgb3BhY2l0eTogMDtcbn1cbi5hbGVydGlmeSAuZGlhbG9nIHtcblxuICBidXR0b24ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAvKiBGb3JtICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMzZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDksOSw5LDApO1xuICAgIC8qIFR5cG9ncmFwaHkgKi9cbiAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6IHJnYmEoMzMsMTUwLDI0MywwLjkpO1xuICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC40cHg7XG4gICAgLyogSW50ZXJuYWwgcGFkZGluZyAqL1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAvKiBFeHRlcm5hbCBwYWRkaW5nIOKAkyBUb3VjaCB0YXJnZXQgc2l6ZSAqL1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgfVxufVxuIiwiLmRpbmdvLWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiAxcHggOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuMTIpXCIpO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjI2KVwiKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItcHJpbWFyeX0sIDAuODcpXCIpO1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKTtcbiAgfVxufVxuIiwiLmRpbmdvLWxvZ2luLXJpYmJvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwdmg7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAwO1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLmRpbmdvLWxvZ2luLW1haW4ge1xuICBtYXJnaW4tdG9wOiAtMTV2aDtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uZGluZ28tc2lnbnVwLW1haW4ge1xuICBtYXJnaW4tdG9wOiAtMjB2aDtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuIiwiLm1kbC1kYXRhLXRhYmxlIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLm1kbC10YWJsZS1zdHJpcGVkID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG59XG5cblxuLm1kbC10YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZCxcbi5tZGwtdGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGQgIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0YwRjBGMCAhaW1wb3J0YW50O1xufVxuXG4ubWRsLWRhdGEtdGFibGUtcGFnZXIge1xuICAubWRsLWJ1dHRvbiB7XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICB9XG59XG5cbiIsIi5kaW5nby1zZWFyY2gtY2VudGVyLW1lbnUge1xuICBjb250ZW50OiBcIlxcZThiNlwiO1xufVxuIiwiLy8gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmRpbmdvLW1lbnUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgPiBsaSB7XG4gICAgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogOHB4IDQwcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4xMilcIik7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgbGVmdDogOHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogOHB4O1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cblxuICAgID4gdWwgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogNHB4IDE2cHggNHB4IDQwcHg7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSxcbiAgPiAuYWN0aXZlOmhvdmVyIHtcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1wcmltYXJ5fSlcIik7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICB9XG59XG5cbi5kaW5nby1tZW51LWNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG5cbiAgPiB1bCAge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogOHB4O1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBAZXh0ZW5kIC5tYXRlcmlhbC1pY29ucztcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogOHB4O1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiA4cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuaGFzLW1lbnUgPiBhIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGU1Y2VcIjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5pcy1leHBhbmRlZCA+IGEge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcZTVjZlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWRsLWxheW91dC5pcy11cGdyYWRlZCAubWRsLWxheW91dF9fdGFiLmlzLWFjdGl2ZTo6YWZ0ZXJ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4iLCJbZGluZ28taWNvbi1uYW1lXXtcbiAgPiBhLCA+IHNwYW57XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMCAyMHB4IDAgNTRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTFweDtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBAZXh0ZW5kIC5tYXRlcmlhbC1pY29ucztcbiAgICB9XG4gIH1cbiAgJi5tZGwtbWVudV9faXRlbXtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbltkaW5nby1pY29uLW5hbWU9XCJEZWxldGVcIl0gPiBhOjpiZWZvcmV7XG4gIGNvbnRlbnQ6IFwiXFxlODcyXCI7XG59XG5cbltkaW5nby1pY29uLW5hbWU9XCJFZGl0XCJde1xuICA+IGE6OmJlZm9yZXtcbiAgICBjb250ZW50OiBcIlxcZTI1NFwiO1xuICB9XG59XG5cbltkaW5nby1pY29uLW5hbWVdID4gYSwgW2RpbmdvLWljb24tbmFtZV0gPiBzcGFuIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgdG9wOiA4cHg7XG4gIH1cbiAgJjo6YmVmb3JlIHtcbiAgICBsZWZ0OiA4cHg7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgcmlnaHQ6IDhweDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbltkaW5nby1pY29uLW5hbWUqPVwiRGFzaGJvYXJkXCJdID4gYTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU4NzFcIjtcbn1cblxuW2RpbmdvLWljb24tbmFtZSo9XCJBc3NldFwiXSA+IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMmM3XCI7XG59XG5cbltkaW5nby1pY29uLW5hbWUqPVwiUHJvZHVjdFwiXSA+IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMWRiXCI7XG59XG5cbltkaW5nby1pY29uLW5hbWUqPVwiU2l0ZVwiXSA+IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDUxXCI7XG59XG5cbltkaW5nby1pY29uLW5hbWUqPVwiU3RvcmVcIl0gPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZThkMVwiO1xufVxuXG5bZGluZ28taWNvbi1uYW1lKj1cIk5ld3NsZXR0ZXJcIl0gPiBhOjpiZWZvcmUsIFtkaW5nby1pY29uLW5hbWUqPVwiRW1haWxcIl0gPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTBiZVwiO1xufVxuXG5bZGluZ28taWNvbi1uYW1lKj1cIlRyYW5zbGF0ZVwiXSA+IGE6OmJlZm9yZSwgW2RpbmdvLWljb24tbmFtZSo9XCJUcmFuc2xhdGlvblwiXSA+IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOGUyXCI7XG59XG5cbltkaW5nby1pY29uLW5hbWUqPVwiUmVwb3J0XCJdID4gYTo6YmVmb3JlLCBbZGluZ28taWNvbi1uYW1lKj1cIkNoYXJ0XCJdID4gYTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUyNGJcIjtcbn1cblxuW2RpbmdvLWljb24tbmFtZSo9XCJPcmRlclwiXSA+IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOGNjXCI7XG59XG5cbltkaW5nby1pY29uLW5hbWUqPVwiVXNlclwiXSA+IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlN2ZkXCI7XG59XG5cbltkaW5nby1pY29uLW5hbWUqPVwiVHJhbnNsYXRpb25cIl0gPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTg5NFwiO1xufVxuXG5bZGluZ28taWNvbi1uYW1lKj1cIlB1Ymxpc2hcIl0gPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTI1NVwiO1xufVxuXG5bZGluZ28taWNvbi1uYW1lKj1cIlNldHRpbmdcIl0gPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZThiOFwiO1xufVxuXG5bZGluZ28taWNvbi1uYW1lKj1cIlNlYXJjaFwiXSA+IGE6OmJlZm9yZSxbZGluZ28taWNvbi1uYW1lKj1cIlNlYXJjaFwiXSA+IHNwYW46OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOGI2XCI7XG59XG5cbltkaW5nby1pY29uLW5hbWUqPVwiQ2xpZW50IFNlcnZpY2VzXCJdID4gYTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU1YzNcIjtcbn1cblxuW2RpbmdvLWljb24tbmFtZSo9XCJUcmFuc2FjdGlvbiBMb2dzXCJdID4gYTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU4ODlcIjtcbn1cblxuW2RpbmdvLWljb24tbmFtZSo9XCJOb3RpZmljYXRpb25cIl0gPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTdmNFwiO1xufVxuXG5bZGluZ28taWNvbi1uYW1lKj1cIldvcmtlcnNcIl0gPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZThmOVwiO1xufVxuXG5bZGluZ28taWNvbi1uYW1lXSBbZGluZ28taWNvbi1uYW1lXSA+IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBBbGVydHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5kaW5nby1hbGVydCB7XG4gIG1hcmdpbjogMCAyNHB4IDI0cHggMjRweDtcbiAgcGFkZGluZzogMTZweCAyNHB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ncmV5LTcwMH0pXCIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtZ3JleS0xMDB9KVwiKTtcbiAgQGluY2x1ZGUgc2hhZG93LTJkcCgpO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXG4gID4gYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAtNHB4IDAgLTRweCA0cHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgb3BhY2l0eTogMC41O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG4gIH1cbn1cblxuLmRpbmdvLWFsZXJ0LS1zdWNjZXNzIHtcbiAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skcGFsZXR0ZS1ibHVlLTcwMH0pXCIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtYmx1ZS0xMDB9KVwiKTtcbn1cblxuLmRpbmdvLWFsZXJ0LS1lcnJvciB7XG4gIGNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JHBhbGV0dGUtcGluay03MDB9KVwiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5xdW90ZShcInJnYigjeyRwYWxldHRlLXBpbmstMTAwfSlcIik7XG59XG4iLCIvLyBFcnJvcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5kaW5nby1lcnJvciB7XG4gIG1hcmdpbjogMjRweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBAaW5jbHVkZSBzaGFkb3ctMmRwKCk7XG5cbiAgPiBsaSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjEyKVwiKTtcblxuICAgICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICB9XG5cbiAgICA+IGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDE2cHggMjRweCAxNnB4IDU2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBjb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKTtcblxuICAgICAgPiBpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgIGxlZnQ6IDI0cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG5cbiAgICAgID4gc3BhbiB7XG4gICAgICAgICsgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmRpbmdvLWFjdGlvbnMge1xuICBmbG9hdDogbGVmdDtcbiAgbWluLWhlaWdodDogMzJweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICBwYWRkaW5nOiA4cHggMDtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAuZGluZ28tc2VsZWN0b3Ige1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICAuZGluZ28tc2VsZWN0b3IsXG4gIC5kaW5nby1hY3Rpb24tLXRleHQsXG4gIC5kaW5nby1hY3Rpb24tLWxhYmVsLFxuICAuZGluZ28tYWN0aW9uLS1zZWxlY3QsXG4gIC5kaW5nby1hY3Rpb24tLWJ1dHRvbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLmRpbmdvLWFjdGlvbi0tc2VsZWN0IHtcbiAgaGVpZ2h0OiAzMnB4O1xuICBib3JkZXI6IDJweCBzb2xpZCB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKTtcbn1cblxuLmRpbmdvLWFjdGlvbi0tbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMjhweDtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC41NClcIik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC4xMilcIik7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuNTQpXCIpO1xuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC44NylcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKTtcbiAgfVxuXG4gID4gaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMjhweDtcbiAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXByaW1hcnl9KVwiKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gICsgLmRpbmdvLWFjdGlvbi0tc2VsZWN0LFxuICArIC5kaW5nby1hY3Rpb24tLWxhYmVsIHtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICB9XG59XG4uZGluZ28tYWN0aW9uLWJ1bGstYnV0dG9ucywuZGluZ28tYWN0aW9uLWZvcm1ze1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDhweCAwO1xufVxuLmRpbmdvLWFjdGlvbi0tYnV0dG9uIHtcbiAgaGVpZ2h0OiAzMnB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcblxuICArIC5kaW5nby1hY3Rpb24tLWJ1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgfVxufVxuXG4uZGluZ28tYWN0aW9uLWJ1bGstZWRpdHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZGluZ28tYWN0aW9uLWZvcm1ze1xuICAuZGluZ28tZm9ybV9fYWN0aW9uc3tcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gID4gLmRpbmdvLWFjdGlvbi1idXR0b257XG4gICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xuICB9XG4gID4gLmFjdGlvbi1mb3Jte1xuICAgIG1hcmdpbi1yaWdodDogMjRweDtcbiAgfVxuICA+IC5hY3Rpb24tZm9ybSwgLmRpbmdvLWZvcm0tc2VjdGlvbiwgLmRpbmdvLWZvcm1fX2FjdGlvbnN7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuICAuZGluZ28tZm9ybV9fYWN0aW9uc3tcbiAgICAubWRsLWJ1dHRvbntcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZGluZ28tc2xpZGVvdXRfX2JvZHl7XG4gIC5kaW5nby1wYWdlX19oZWFkZXJ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBtYXJnaW46IC0xNnB4IC0yNHB4IDA7XG4gICAgLm1kbC1idXR0b257XG4gICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICAgIH1cbiAgICAuZGluZ28tYWN0aW9uLWZvcm1ze1xuICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTUwcHg7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCl7XG4gICAgLmRpbmdvLXNsaWRlb3V0X19ib2R5IC5kaW5nby1wYWdlX19oZWFkZXIrLmRpbmdvLXBhZ2VfX2JvZHl7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cblxuXG4iLCIuZGluZ28tc2VjdGlvbiB7XG4gIG1hcmdpbjogMjRweDtcblxuICAmLmRpbmdvLXNlY3Rpb25fX3RhYmxle1xuICAgIG1hcmdpbjogMjRweCAwO1xuICAgIC5kaW5nby1zZWN0aW9uX19oZWFkZXJ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICAgIH1cbiAgfVxuICA+IC5kaW5nby10YWJsZS1jb250YWluZXIge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uZGluZ28tc2VjdGlvbl9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4uZGluZ28tc2VjdGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgbWFyZ2luLXRvcDogMzJweDtcbiAgY29sb3I6IHVucXVvdGUoXCJyZ2JhKCN7JGNvbG9yLWJsYWNrfSwgMC42OClcIik7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZGluZ28tcGFnaW5hdGlvbi1jb250YWluZXIge1xuICBtYXJnaW46IDI0cHg7XG4gIEBleHRlbmQgLmNsZWFyZml4O1xufVxuXG4uZGluZ28tcGFnaW5hdGlvbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIEBpbmNsdWRlIHNoYWRvdy0yZHAoKTtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IC8vIFJlbW92ZSBsaXN0LXN0eWxlIGFuZCBibG9jay1sZXZlbCBkZWZhdWx0c1xuXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1pbi13aWR0aDogMzJweDtcbiAgICAgIGhlaWdodDogMzJweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICMzMzM7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogdW5xdW90ZShcInJnYigje3VucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpfSlcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IHNwYW4ge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpO1xuICAgIH1cbiAgfVxuXG4gID4gLmRpc2FibGVkIHtcbiAgICA+IHNwYW4sXG4gICAgPiBzcGFuOmhvdmVyLFxuICAgID4gc3Bhbjpmb2N1cyxcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzc3NztcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICAgIH1cbiAgfVxufVxuXG4uZGluZ28tcGFnaW5hdGlvbi1hbGwge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzJweDtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHVucXVvdGUoXCJyZ2IoI3skY29sb3ItcHJpbWFyeX0pXCIpO1xufVxuIiwiLy8gVXRpbGl0eSBjbGFzc2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBGbG9hdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5cbi8vIFRvZ2dsaW5nIGNvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnNob3duLFxuLmlzLXNob3duIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmhpZGRlbixcbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgbGluZWFyO1xuXG4gICYuaW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmluIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgLjNzIGVhc2U7XG59XG4iLCJAbWVkaWEgb25seSBzY3JlZW4gXG5hbmQgKG1pbi1kZXZpY2Utd2lkdGggOiAzMjBweCkgXG5hbmQgKG1heC1kZXZpY2Utd2lkdGggOiA3MzZweCkge1xuICAuZGluZ28tc2VjdGlvbntcbiAgICBtYXJnaW46IDI0cHggMDtcbiAgICAuZGluZ28tc2VjdGlvbl9faGVhZGVye1xuICAgICAgbWFyZ2luLWxlZnQ6IDI0cHg7XG4gICAgfVxuICB9XG4gIC5kaW5nby1wYWdlLS1kYXNoYm9hcmQgLmRpbmdvLXRhYmxlLWNvbnRhaW5lcntcbiAgICBAaW5jbHVkZSBzaGFkb3ctMmRwKCk7XG4gICAgdGh7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbiAgLmRpbmdvLXBhZ2VfX2hlYWRlcntcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gIH1cbiAgLmRpbmdvLXRhYmxlLWNvbnRhaW5lcntcbiAgICBtYXJnaW46IDAgMCAyNHB4IDA7XG4gICAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KTtcbiAgICB0aHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAgfVxuICAgIC5tZGwtZGF0YS10YWJsZXtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICB9XG4gIC5kaW5nby1hY3Rpb24tLXNlbGVjdCArIC5kaW5nby1zZWxlY3RvciwgLmRpbmdvLWFjdGlvbi0tc2VsZWN0ICsgLmRpbmdvLWFjdGlvbi0tbGFiZWwsIC5kaW5nby1hY3Rpb24tLXNlbGVjdCArIC5kaW5nby1hY3Rpb24tLXNlbGVjdHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIH1cbiAgLmRpbmdvLXNlYXJjaHtcbiAgICAmLmlzLWZvY3VzZWR7XG4gICAgICB3aWR0aDogMzYwcHg7XG4gICAgfVxuICAgIC5tZGwtdGV4dGZpZWxkX19leHBhbmRhYmxlLWhvbGRlcntcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2NHB4KTtcbiAgICB9XG4gIH1cbiAgLmRpbmdvLW1vZGFsIC5tZGwtY2FyZHtcbiAgICBtYXJnaW46IDI0cHggYXV0bztcbiAgfVxuICAuZGluZ28tZm9ybS1jb250YWluZXJ7XG4gICAgbWFyZ2luOiAwO1xuICAg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QUFNLENBQUM7RUFBRSxTQUFTLEVBQUMsS0FBTSxHQUFJOztBQUM3QixBQUFBLE1BQU0sQ0FBQztFQUFFLFNBQVMsRUFBQyxLQUFNLEdBQUk7O0FBQzdCLEFBQUEsTUFBTSxDQUFDO0VBQUUsU0FBUyxFQUFDLEtBQU0sR0FBSTs7QUFHN0IsQUFBQSxLQUFLLENBQUM7RUFBRSxXQUFXLEVBQUUsR0FBSSxHQUFHOztBQUM1QixBQUFBLEtBQUssQ0FBQztFQUFFLFdBQVcsRUFBRSxHQUFJLEdBQUc7O0FBQzVCLEFBQUEsS0FBSyxDQUFDO0VBQUUsV0FBVyxFQUFFLEdBQUksR0FBRzs7QUFDNUIsQUFBQSxLQUFLLENBQUM7RUFBRSxXQUFXLEVBQUUsR0FBSSxHQUFHOztBQUM1QixBQUFBLEtBQUssQ0FBQztFQUFFLFdBQVcsRUFBRSxHQUFJLEdBQUc7O0FBQzVCLEFBQUEsS0FBSyxDQUFDO0VBQUUsV0FBVyxFQUFFLEdBQUksR0FBRzs7QUFDNUIsQUFBQSxLQUFLLENBQUM7RUFBRSxXQUFXLEVBQUUsR0FBSSxHQUFHOztBQUM1QixBQUFBLEtBQUssQ0FBQztFQUFFLFdBQVcsRUFBRSxHQUFJLEdBQUc7O0FBQzVCLEFBQUEsS0FBSyxDQUFDO0VBQUUsV0FBVyxFQUFFLEdBQUksR0FBRzs7QUFHNUIsQUFBQSxHQUFHLENBQUM7RUFBRSxTQUFTLEVBQUMsR0FBSSxHQUFHOztBQUN2QixBQUFBLElBQUksQ0FBQztFQUFFLFNBQVMsRUFBQyxJQUFLLEdBQUc7O0FBQ3pCLEFBQUEsSUFBSSxDQUFDO0VBQUUsU0FBUyxFQUFDLElBQUssR0FBRzs7QUFDekIsQUFBQSxJQUFJLENBQUM7RUFBRSxTQUFTLEVBQUMsSUFBSyxHQUFHOztBQUN6QixBQUFBLElBQUksQ0FBQztFQUFFLFNBQVMsRUFBQyxJQUFLLEdBQUc7O0FBQ3pCLEFBQUEsSUFBSSxDQUFDO0VBQUUsU0FBUyxFQUFDLElBQUssR0FBRzs7QUFDekIsQUFBQSxJQUFJLENBQUM7RUFBRSxTQUFTLEVBQUMsSUFBSyxHQUFHOztBQUN6QixBQUFBLElBQUksQ0FB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 */
