.galleryOverlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.75);
  opacity: 1;
  transition: opacity 0.25s;
  z-index: 1; }
  .galleryOverlay.overlayFading {
    opacity: 0; }
  .galleryOverlay.overlayHidden {
    display: none; }
  .galleryOverlay .overlayImage {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    max-height: 95%;
    max-width: 95%; }
  .galleryOverlay .overlayCloseButton {
    position: fixed;
    top: 12px;
    right: 12px;
    width: 33px;
    height: 33px;
    font-weight: bold;
    color: white;
    font-size: 25px;
    padding: 6px;
    background: #4EB56E;
    border-radius: 3px;
    cursor: pointer;
    text-align: center; }

.galleryOuterContainer {
  width: 100%;
  height: auto;
  position: relative; }

.galleryContainer {
  margin: 0 auto;
  position: relative;
  overflow: hidden; }
  .galleryContainer .galleryImage {
    display: inline-block;
    background: white;
    float: left;
    text-align: center;
    padding: 5px;
    box-sizing: border-box;
    opacity: 1;
    transition: margin 1s, width 1s, height 1s, box-shadow 1s;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .galleryContainer .galleryImage img {
    max-height: 100%;
    max-width: 100%; }

.galleryContainer .galleryImage.offscreenHidden {
  width: 0;
  margin-left: 0;
  margin-right: 0;
  padding: 0; }

.galleryContainer .galleryReel {
  position: relative;
  height: 100%; }

.galleryNavButton {
  background: #3D4B60;
  display: inline-block;
  position: absolute;
  border-radius: 3px;
  -moz-transition: background-color 180ms ease-in-out;
  -webkit-transition: background-color 180ms ease-in-out;
  transition: background-color 180ms ease-in-out;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .galleryNavButton:hover {
    background-color: #086ca1; }

#left.galleryNavButton {
  left: 0; }

#right.galleryNavButton {
  right: 0; }

.galleryStats {
  margin: 10px 0;
  text-align: right; }
  .galleryStats p {
    display: inline-block;
    background-color: #4EB56E;
    color: #fff;
    padding: 12px;
    border-radius: 5px; }

/* Older web enabled phones and small form factor devices */
/* iPhones in portrait orientation and older web enabled phones in landscape */
/* Anything less than this will only display a single image */
@media only screen and (max-width: 399px) {
  .galleryNavButton {
    width: 20px;
    height: 20px;
    top: 44px;
    padding: 8px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 10px solid transparent;
      border-bottom: 10px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 4px;
      border-right: 10px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 6px;
      border-left: 10px solid #fff; }
  .galleryContainer {
    width: 224px;
    height: 132px; }
    .galleryContainer .galleryReel {
      width: 890px;
      left: -444px; }
    .galleryContainer .galleryImage {
      margin-left: 4px;
      margin-right: 4px; }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 226px; }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 448px; }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 670px; }
  .largeImg, .smallImg {
    width: 214px;
    height: 120px;
    margin-top: 0;
    box-shadow: 0 3px 9px -3px black; } }

/* iPhones in landscape and other smartphones in portrait */
@media only screen and (min-width: 400px) and (max-width: 599px) {
  .galleryNavButton {
    width: 20px;
    height: 20px;
    top: 16px;
    padding: 8px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 10px solid transparent;
      border-bottom: 10px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 4px;
      border-right: 10px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 6px;
      border-left: 10px solid #fff; }
  .galleryContainer {
    width: 304px;
    /* min - 64(nav[160 - 94]) - 16*2(bodyOverflowPadding) */
    height: 67px;
    /* Equal to height of largest image + (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 486px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -91px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 0;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */
      margin-right: 0;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 91px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 182px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 392px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 119px;
    /* 39% of galleryContainer width */
    height: 67px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 0 0 0 black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 91px;
    /* 30% of galleryContainer Width */
    height: 51px;
    /* (Small Image Width / 16) * 9 [to keep 16:9 aspect ratio] */
    margin-top: 8px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 8px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

/* Kindle Fire in portrait */
@media only screen and (min-width: 600px) and (max-width: 767px) {
  .galleryNavButton {
    width: 24px;
    height: 24px;
    top: 36px;
    padding: 8px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 12px solid transparent;
      border-bottom: 12px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 5px;
      border-right: 12px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 7px;
      border-left: 12px solid #fff; }
  .galleryContainer {
    width: 504px;
    /* min - 64(nav[160 - 94]) - 16*2(bodyOverflowPadding) */
    height: 114px;
    /* Equal to height of largest image + (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 812px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -154px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 1px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */
      margin-right: 1px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 154px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 307px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 659px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 197px;
    /* 39% of galleryContainer width */
    height: 111px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 1px 3px -1px black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 151px;
    /* 30% of galleryContainer Width */
    height: 85px;
    /* (Small Image Width / 16) * 9 [to keep 16:9 aspect ratio] */
    margin-top: 13px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 13px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

/* iPads and tablets in portrait and smartphones in landscape */
@media only screen and (min-width: 768px) and (max-width: 959px) {
  .galleryNavButton {
    width: 24px;
    height: 24px;
    top: 26px;
    padding: 8px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 12px solid transparent;
      border-bottom: 12px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 5px;
      border-right: 12px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 7px;
      border-left: 12px solid #fff; }
  .galleryContainer {
    width: 426px;
    /* min - 250(nav) - 46*2(bodyOverflowPadding) */
    height: 96px;
    /* Equal to height of largest image + (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 688px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -131px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 1px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */
      margin-right: 1px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 131px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 261px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 559px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 166px;
    /* 39% of galleryContainer width */
    height: 93px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 1px 3px -1px black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 128px;
    /* 30% of galleryContainer Width */
    height: 72px;
    /* (Small Image Width / 16) * 9 [to keep 16:9 aspect ratio] */
    margin-top: 10px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 10px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

@media only screen and (min-width: 960px) and (max-width: 1099px) {
  .galleryNavButton {
    width: 28px;
    height: 28px;
    top: 48px;
    padding: 10px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 14px solid transparent;
      border-bottom: 14px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 6px;
      border-right: 14px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 8px;
      border-left: 14px solid #fff; }
  .galleryContainer {
    width: 618px;
    /* min - 250(nav) - 46*2(bodyOverflowPadding) */
    height: 139px;
    /* Equal to height of largest image + (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 994px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -188px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 1px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */
      margin-right: 1px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 188px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 375px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 805px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 241px;
    /* 39% of galleryContainer width */
    height: 136px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 1px 3px -1px black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 185px;
    /* 30% of galleryContainer Width */
    height: 104px;
    /* (Small Image Width / 16) * 9 [to keep 16:9 aspect ratio] */
    margin-top: 16px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 16px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

@media only screen and (min-width: 1100px) and (max-width: 1249px) {
  .galleryNavButton {
    width: 28px;
    height: 28px;
    top: 60px;
    padding: 10px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 14px solid transparent;
      border-bottom: 14px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 6px;
      border-right: 14px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 8px;
      border-left: 14px solid #fff; }
  .galleryContainer {
    width: 758px;
    /* min - 250(nav) - 46*2(bodyOverflowPadding) */
    height: 173px;
    /* Equal to height of largest image + (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 1224px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -233px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 2px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */
      margin-right: 2px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 233px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 464px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 995px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 296px;
    /* 39% of galleryContainer width */
    height: 167px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 2px 6px -1px black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 227px;
    /* 30% of galleryContainer Width */
    height: 128px;
    /* (Small Image Width / 16) * 9 [to keep 16:9 aspect ratio] */
    margin-top: 19px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 19px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

@media only screen and (min-width: 1250px) and (max-width: 1399px) {
  .galleryNavButton {
    width: 28px;
    height: 28px;
    top: 78px;
    padding: 10px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 14px solid transparent;
      border-bottom: 14px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 6px;
      border-right: 14px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 8px;
      border-left: 14px solid #fff; }
  .galleryContainer {
    width: 908px;
    /* min - 250(nav) - 46*2(bodyOverflowPadding) */
    height: 205px;
    /* Equal to height of largest image + (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 1464px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -278px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 2px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */
      margin-right: 2px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 278px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 554px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 1188px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 354px;
    /* 39% of galleryContainer width */
    height: 199px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 2px 6px -2px black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 272px;
    /* 30% of galleryContainer Width */
    height: 153px;
    /* (Small Image Width / 16) * 9 [to keep 16:9 aspect ratio] */
    margin-top: 23px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 23px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

@media only screen and (min-width: 1400px) and (max-width: 1600px) {
  .galleryNavButton {
    width: 28px;
    height: 28px;
    top: 94px;
    padding: 10px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 14px solid transparent;
      border-bottom: 14px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 6px;
      border-right: 14px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 8px;
      border-left: 14px solid #fff; }
  .galleryContainer {
    width: 1058px;
    /* min - 250(nav) - 46*2(bodyOverflowPadding) */
    height: 238px;
    /* Equal to height of largest image + (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 1704px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -323px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 2px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */
      margin-right: 2px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 323px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 644px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 1382px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 413px;
    /* 39% of galleryContainer width */
    height: 232px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 2px 6px -2px black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 317px;
    /* 30% of galleryContainer Width */
    height: 178px;
    /* (Small Image Width / 16) * 9 [to keep 16:9 aspect ratio] */
    margin-top: 27px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 27px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

@media only screen and (min-width: 1601px) and (max-width: 1800px) {
  .galleryNavButton {
    width: 32px;
    height: 32px;
    top: 114px;
    padding: 12px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 16px solid transparent;
      border-bottom: 16px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 7px;
      border-right: 16px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 9px;
      border-left: 16px solid #fff; }
  .galleryContainer {
    width: 1259px;
    /* min - 250(nav) - 46*2(bodyOverflowPadding) */
    height: 285px;
    /* Equal to height of largest image + (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 2033px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -387px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 3px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */
      margin-right: 3px;
      /* (GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 387px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 771px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 1652px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 491px;
    /* ~39% of galleryContainer width */
    height: 276px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 3px 9px -3px black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 378px;
    /* ~30% of galleryContainer Width */
    height: 213px;
    /* (Small Image Width / 16) * 9 [to keep 16:9 aspect ratio] */
    margin-top: 31px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 31px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

@media only screen and (min-width: 1801px) {
  .galleryNavButton {
    width: 32px;
    height: 32px;
    top: 140px;
    padding: 12px; }
    .galleryNavButton .arrowLeft, .galleryNavButton .arrowRight {
      width: 0;
      height: 0;
      border-top: 16px solid transparent;
      border-bottom: 16px solid transparent; }
    .galleryNavButton .arrowLeft {
      margin-left: 7px;
      border-right: 16px solid #fff; }
    .galleryNavButton .arrowRight {
      margin-left: 9px;
      border-left: 16px solid #fff; }
  .galleryContainer {
    width: 1459px;
    /* min - 250(nav) - 46*2(bodyOverflowPadding) */
    height: 320px;
    /* Equal to height of largest image */
    padding-bottom: 9px;
    /* (3 * GalleryImage-margin-left) */ }
    .galleryContainer .galleryReel {
      width: 2353px;
      /* GalleryContainerWidth + (2 * smallImgWidth) + (6 * GalleryImage-margin-left) */
      left: -447px;
      /* -(smallImageWidth + (3 * GalleryImage-margin-left)) */ }
    .galleryContainer .galleryImage {
      margin-left: 3px;
      /* RoundDown((GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4)   */
      margin-right: 3px;
      /* RoundDown((GalleryContainerWidth - LargeImageWidth - 2 * SmallImageWidth) / 4)   */ }
    .galleryContainer .galleryImage.margin-left-1 {
      margin-left: 447px;
      /* smallImageWidth + 3 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-2 {
      margin-left: 891px;
      /* 2 * smallImageWidth + 5 * GalleryImage-margin-left */ }
    .galleryContainer .galleryImage.margin-left-4 {
      margin-left: 1910px;
      /* largeImageWidth + (3 * smallImageWidth) + (9 * GalleryImage-margin-left) */ }
  .largeImg {
    width: 569px;
    /* ~39% of galleryContainer width */
    height: 320px;
    /* (Large Image Width  /  16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 0;
    /* Always Zero */
    box-shadow: 0 3px 9px -3px black;
    /* 0, GalleryImage-margin-left, 3 * GalleryImage-margin-left, -GalleryImage-margin-left */ }
  .smallImg {
    width: 438px;
    /* ~30% of galleryContainer Width */
    height: 246px;
    /* (Small Image Width / 16) * 9    [to keep 16:9 aspect ratio] */
    margin-top: 37px;
    /* (Large Image Height - Small Image Height ) / 2  */
    margin-bottom: 37px;
    /* (Large Image Height - Small Image Height ) / 2  */ } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VHYWxsZXJ5LmNzcyIsInNvdXJjZXMiOlsiaW1hZ2VHYWxsZXJ5LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLmdhbGxlcnlPdmVybGF5IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC43NSk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cztcclxuICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgJi5vdmVybGF5RmFkaW5nIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYub3ZlcmxheUhpZGRlbiB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAub3ZlcmxheUltYWdlIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICBtYXgtaGVpZ2h0OiA5NSU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5NSU7XHJcbiAgICB9XHJcblxyXG4gICAgLm92ZXJsYXlDbG9zZUJ1dHRvbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogMTJweDtcclxuICAgICAgICByaWdodDogMTJweDtcclxuICAgICAgICB3aWR0aDogMzNweDtcclxuICAgICAgICBoZWlnaHQ6IDMzcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICBwYWRkaW5nOiA2cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzRFQjU2RTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmdhbGxlcnlPdXRlckNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmdhbGxlcnlDb250YWluZXIge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIC5nYWxsZXJ5SW1hZ2Uge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBtYXJnaW4gMXMsIHdpZHRoIDFzLCBoZWlnaHQgMXMsIGJveC1zaGFkb3cgMXM7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmdhbGxlcnlJbWFnZSBpbWcge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZ2FsbGVyeUNvbnRhaW5lciB7XHJcblxyXG4gICAgLmdhbGxlcnlJbWFnZS5vZmZzY3JlZW5IaWRkZW4ge1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5nYWxsZXJ5UmVlbCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmdhbGxlcnlOYXZCdXR0b24ge1xyXG4gICAgYmFja2dyb3VuZDogIzNENEI2MDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxODBtcyBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxODBtcyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTgwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwODZjYTE7XHJcbiAgICB9XHJcbn1cclxuXHJcbiNsZWZ0LmdhbGxlcnlOYXZCdXR0b24ge1xyXG4gICAgbGVmdDogMDtcclxufVxyXG5cclxuI3JpZ2h0LmdhbGxlcnlOYXZCdXR0b24ge1xyXG4gICAgcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5nYWxsZXJ5U3RhdHMge1xyXG4gICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzRFQjU2RTtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIH1cclxufVxyXG5cclxuLyogT2xkZXIgd2ViIGVuYWJsZWQgcGhvbmVzIGFuZCBzbWFsbCBmb3JtIGZhY3RvciBkZXZpY2VzICovXHJcbi8qIGlQaG9uZXMgaW4gcG9ydHJhaXQgb3JpZW50YXRpb24gYW5kIG9sZGVyIHdlYiBlbmFibGVkIHBob25lcyBpbiBsYW5kc2NhcGUgKi9cclxuLyogQW55dGhpbmcgbGVzcyB0aGFuIHRoaXMgd2lsbCBvbmx5IGRpc3BsYXkgYSBzaW5nbGUgaW1hZ2UgKi9cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOTlweCkge1xyXG4gICAgLmdhbGxlcnlOYXZCdXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB0b3A6IDQ0cHg7XHJcbiAgICAgICAgcGFkZGluZzogOHB4O1xyXG5cclxuICAgICAgICAuYXJyb3dMZWZ0LCAuYXJyb3dSaWdodCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYXJyb3dMZWZ0IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYXJyb3dSaWdodCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5nYWxsZXJ5Q29udGFpbmVyIHtcclxuICAgICAgICB3aWR0aDogMjI0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMzJweDtcclxuXHJcbiAgICAgICAgLmdhbGxlcnlSZWVsIHtcclxuICAgICAgICAgICAgd2lkdGg6IDg5MHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAtNDQ0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTEge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjI2cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNDQ4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNjcwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sYXJnZUltZywgLnNtYWxsSW1nIHtcclxuICAgICAgICB3aWR0aDogMjE0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMjBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDlweCAtM3B4IGJsYWNrO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBpUGhvbmVzIGluIGxhbmRzY2FwZSBhbmQgb3RoZXIgc21hcnRwaG9uZXMgaW4gcG9ydHJhaXQgKi9cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MDBweCkgYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XHJcbiAgICAuZ2FsbGVyeU5hdkJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHRvcDogMTZweDtcclxuICAgICAgICBwYWRkaW5nOiA4cHg7XHJcblxyXG4gICAgICAgIC5hcnJvd0xlZnQsIC5hcnJvd1JpZ2h0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcnJvd0xlZnQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgI2ZmZjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcnJvd1JpZ2h0IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmdhbGxlcnlDb250YWluZXIge1xyXG4gICAgICAgIHdpZHRoOiAzMDRweDsgLyogbWluIC0gNjQobmF2WzE2MCAtIDk0XSkgLSAxNioyKGJvZHlPdmVyZmxvd1BhZGRpbmcpICovXHJcbiAgICAgICAgaGVpZ2h0OiA2N3B4OyAvKiBFcXVhbCB0byBoZWlnaHQgb2YgbGFyZ2VzdCBpbWFnZSArICgzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSAqL1xyXG4gICAgICAgIC5nYWxsZXJ5UmVlbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0ODZweDsgLyogR2FsbGVyeUNvbnRhaW5lcldpZHRoICsgKDIgKiBzbWFsbEltZ1dpZHRoKSArICg2ICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSAqL1xyXG4gICAgICAgICAgICBsZWZ0OiAtOTFweDsgLyogLShzbWFsbEltYWdlV2lkdGggKyAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkpICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IC8qIChHYWxsZXJ5Q29udGFpbmVyV2lkdGggLSBMYXJnZUltYWdlV2lkdGggLSAyICogU21hbGxJbWFnZVdpZHRoKSAvIDQgICAqL1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IC8qIChHYWxsZXJ5Q29udGFpbmVyV2lkdGggLSBMYXJnZUltYWdlV2lkdGggLSAyICogU21hbGxJbWFnZVdpZHRoKSAvIDQgICAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC0xIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDkxcHg7IC8qIHNtYWxsSW1hZ2VXaWR0aCArIDMgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxODJweDsgLyogMiAqIHNtYWxsSW1hZ2VXaWR0aCArIDUgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtNCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzOTJweDsgLyogbGFyZ2VJbWFnZVdpZHRoICsgKDMgKiBzbWFsbEltYWdlV2lkdGgpICsgKDkgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpICovXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sYXJnZUltZyB7XHJcbiAgICAgICAgd2lkdGg6IDExOXB4OyAvKiAzOSUgb2YgZ2FsbGVyeUNvbnRhaW5lciB3aWR0aCAqL1xyXG4gICAgICAgIGhlaWdodDogNjdweDsgLyogKExhcmdlIEltYWdlIFdpZHRoICAvICAxNikgKiA5ICAgIFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7IC8qIEFsd2F5cyBaZXJvICovXHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCBibGFjazsgLyogMCwgR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0LCAzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0LCAtR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICB9XHJcblxyXG4gICAgLnNtYWxsSW1nIHtcclxuICAgICAgICB3aWR0aDogOTFweDsgLyogMzAlIG9mIGdhbGxlcnlDb250YWluZXIgV2lkdGggKi9cclxuICAgICAgICBoZWlnaHQ6IDUxcHg7IC8qIChTbWFsbCBJbWFnZSBXaWR0aCAvIDE2KSAqIDkgW3RvIGtlZXAgMTY6OSBhc3BlY3QgcmF0aW9dICovXHJcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4OyAvKiAoTGFyZ2UgSW1hZ2UgSGVpZ2h0IC0gU21hbGwgSW1hZ2UgSGVpZ2h0ICkgLyAyICAqL1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsgLyogKExhcmdlIEltYWdlIEhlaWdodCAtIFNtYWxsIEltYWdlIEhlaWdodCApIC8gMiAgKi9cclxuICAgIH1cclxufVxyXG5cclxuLyogS2luZGxlIEZpcmUgaW4gcG9ydHJhaXQgKi9cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAuZ2FsbGVyeU5hdkJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgIHRvcDogMzZweDtcclxuICAgICAgICBwYWRkaW5nOiA4cHg7XHJcblxyXG4gICAgICAgIC5hcnJvd0xlZnQsIC5hcnJvd1JpZ2h0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMTJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcnJvd0xlZnQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEycHggc29saWQgI2ZmZjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcnJvd1JpZ2h0IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEycHggc29saWQgI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmdhbGxlcnlDb250YWluZXIge1xyXG4gICAgICAgIHdpZHRoOiA1MDRweDsgLyogbWluIC0gNjQobmF2WzE2MCAtIDk0XSkgLSAxNioyKGJvZHlPdmVyZmxvd1BhZGRpbmcpICovXHJcbiAgICAgICAgaGVpZ2h0OiAxMTRweDsgLyogRXF1YWwgdG8gaGVpZ2h0IG9mIGxhcmdlc3QgaW1hZ2UgKyAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICAuZ2FsbGVyeVJlZWwge1xyXG4gICAgICAgICAgICB3aWR0aDogODEycHg7IC8qIEdhbGxlcnlDb250YWluZXJXaWR0aCArICgyICogc21hbGxJbWdXaWR0aCkgKyAoNiAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICAgICAgbGVmdDogLTE1NHB4OyAvKiAtKHNtYWxsSW1hZ2VXaWR0aCArICgzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSkgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2Uge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMXB4OyAvKiAoR2FsbGVyeUNvbnRhaW5lcldpZHRoIC0gTGFyZ2VJbWFnZVdpZHRoIC0gMiAqIFNtYWxsSW1hZ2VXaWR0aCkgLyA0ICAgKi9cclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7IC8qIChHYWxsZXJ5Q29udGFpbmVyV2lkdGggLSBMYXJnZUltYWdlV2lkdGggLSAyICogU21hbGxJbWFnZVdpZHRoKSAvIDQgICAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC0xIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1NHB4OyAvKiBzbWFsbEltYWdlV2lkdGggKyAzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMzA3cHg7IC8qIDIgKiBzbWFsbEltYWdlV2lkdGggKyA1ICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNjU5cHg7IC8qIGxhcmdlSW1hZ2VXaWR0aCArICgzICogc21hbGxJbWFnZVdpZHRoKSArICg5ICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSAqL1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGFyZ2VJbWcge1xyXG4gICAgICAgIHdpZHRoOiAxOTdweDsgLyogMzklIG9mIGdhbGxlcnlDb250YWluZXIgd2lkdGggKi9cclxuICAgICAgICBoZWlnaHQ6IDExMXB4OyAvKiAoTGFyZ2UgSW1hZ2UgV2lkdGggIC8gIDE2KSAqIDkgICAgW3RvIGtlZXAgMTY6OSBhc3BlY3QgcmF0aW9dICovXHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgLyogQWx3YXlzIFplcm8gKi9cclxuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggLTFweCBibGFjazsgLyogMCwgR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0LCAzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0LCAtR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICB9XHJcblxyXG4gICAgLnNtYWxsSW1nIHtcclxuICAgICAgICB3aWR0aDogMTUxcHg7IC8qIDMwJSBvZiBnYWxsZXJ5Q29udGFpbmVyIFdpZHRoICovXHJcbiAgICAgICAgaGVpZ2h0OiA4NXB4OyAvKiAoU21hbGwgSW1hZ2UgV2lkdGggLyAxNikgKiA5IFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEzcHg7IC8qIChMYXJnZSBJbWFnZSBIZWlnaHQgLSBTbWFsbCBJbWFnZSBIZWlnaHQgKSAvIDIgICovXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTNweDsgLyogKExhcmdlIEltYWdlIEhlaWdodCAtIFNtYWxsIEltYWdlIEhlaWdodCApIC8gMiAgKi9cclxuICAgIH1cclxufVxyXG5cclxuLyogaVBhZHMgYW5kIHRhYmxldHMgaW4gcG9ydHJhaXQgYW5kIHNtYXJ0cGhvbmVzIGluIGxhbmRzY2FwZSAqL1xyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcclxuICAgIC5nYWxsZXJ5TmF2QnV0dG9uIHtcclxuICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgdG9wOiAyNnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDhweDtcclxuXHJcbiAgICAgICAgLmFycm93TGVmdCwgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93TGVmdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTJweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTJweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ2FsbGVyeUNvbnRhaW5lciB7XHJcbiAgICAgICAgd2lkdGg6IDQyNnB4OyAvKiBtaW4gLSAyNTAobmF2KSAtIDQ2KjIoYm9keU92ZXJmbG93UGFkZGluZykgKi9cclxuICAgICAgICBoZWlnaHQ6IDk2cHg7IC8qIEVxdWFsIHRvIGhlaWdodCBvZiBsYXJnZXN0IGltYWdlICsgKDMgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpICovXHJcbiAgICAgICAgLmdhbGxlcnlSZWVsIHtcclxuICAgICAgICAgICAgd2lkdGg6IDY4OHB4OyAvKiBHYWxsZXJ5Q29udGFpbmVyV2lkdGggKyAoMiAqIHNtYWxsSW1nV2lkdGgpICsgKDYgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpICovXHJcbiAgICAgICAgICAgIGxlZnQ6IC0xMzFweDsgLyogLShzbWFsbEltYWdlV2lkdGggKyAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkpICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDsgLyogKEdhbGxlcnlDb250YWluZXJXaWR0aCAtIExhcmdlSW1hZ2VXaWR0aCAtIDIgKiBTbWFsbEltYWdlV2lkdGgpIC8gNCAgICovXHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXB4OyAvKiAoR2FsbGVyeUNvbnRhaW5lcldpZHRoIC0gTGFyZ2VJbWFnZVdpZHRoIC0gMiAqIFNtYWxsSW1hZ2VXaWR0aCkgLyA0ICAgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtMSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMzFweDsgLyogc21hbGxJbWFnZVdpZHRoICsgMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC0yIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI2MXB4OyAvKiAyICogc21hbGxJbWFnZVdpZHRoICsgNSAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC00IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDU1OXB4OyAvKiBsYXJnZUltYWdlV2lkdGggKyAoMyAqIHNtYWxsSW1hZ2VXaWR0aCkgKyAoOSAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxhcmdlSW1nIHtcclxuICAgICAgICB3aWR0aDogMTY2cHg7IC8qIDM5JSBvZiBnYWxsZXJ5Q29udGFpbmVyIHdpZHRoICovXHJcbiAgICAgICAgaGVpZ2h0OiA5M3B4OyAvKiAoTGFyZ2UgSW1hZ2UgV2lkdGggIC8gIDE2KSAqIDkgICAgW3RvIGtlZXAgMTY6OSBhc3BlY3QgcmF0aW9dICovXHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgLyogQWx3YXlzIFplcm8gKi9cclxuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggLTFweCBibGFjazsgLyogMCwgR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0LCAzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0LCAtR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICB9XHJcblxyXG4gICAgLnNtYWxsSW1nIHtcclxuICAgICAgICB3aWR0aDogMTI4cHg7IC8qIDMwJSBvZiBnYWxsZXJ5Q29udGFpbmVyIFdpZHRoICovXHJcbiAgICAgICAgaGVpZ2h0OiA3MnB4OyAvKiAoU21hbGwgSW1hZ2UgV2lkdGggLyAxNikgKiA5IFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IC8qIChMYXJnZSBJbWFnZSBIZWlnaHQgLSBTbWFsbCBJbWFnZSBIZWlnaHQgKSAvIDIgICovXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgLyogKExhcmdlIEltYWdlIEhlaWdodCAtIFNtYWxsIEltYWdlIEhlaWdodCApIC8gMiAgKi9cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkgYW5kIChtYXgtd2lkdGg6IDEwOTlweCkge1xyXG4gICAgLmdhbGxlcnlOYXZCdXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICB0b3A6IDQ4cHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICAgICAgLmFycm93TGVmdCwgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93TGVmdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTRweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTRweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ2FsbGVyeUNvbnRhaW5lciB7XHJcbiAgICAgICAgd2lkdGg6IDYxOHB4OyAvKiBtaW4gLSAyNTAobmF2KSAtIDQ2KjIoYm9keU92ZXJmbG93UGFkZGluZykgKi9cclxuICAgICAgICBoZWlnaHQ6IDEzOXB4OyAvKiBFcXVhbCB0byBoZWlnaHQgb2YgbGFyZ2VzdCBpbWFnZSArICgzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSAqL1xyXG4gICAgICAgIC5nYWxsZXJ5UmVlbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA5OTRweDsgLyogR2FsbGVyeUNvbnRhaW5lcldpZHRoICsgKDIgKiBzbWFsbEltZ1dpZHRoKSArICg2ICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSAqL1xyXG4gICAgICAgICAgICBsZWZ0OiAtMTg4cHg7IC8qIC0oc21hbGxJbWFnZVdpZHRoICsgKDMgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpKSAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcHg7IC8qIChHYWxsZXJ5Q29udGFpbmVyV2lkdGggLSBMYXJnZUltYWdlV2lkdGggLSAyICogU21hbGxJbWFnZVdpZHRoKSAvIDQgICAqL1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgLyogKEdhbGxlcnlDb250YWluZXJXaWR0aCAtIExhcmdlSW1hZ2VXaWR0aCAtIDIgKiBTbWFsbEltYWdlV2lkdGgpIC8gNCAgICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTEge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTg4cHg7IC8qIHNtYWxsSW1hZ2VXaWR0aCArIDMgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzNzVweDsgLyogMiAqIHNtYWxsSW1hZ2VXaWR0aCArIDUgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtNCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4MDVweDsgLyogbGFyZ2VJbWFnZVdpZHRoICsgKDMgKiBzbWFsbEltYWdlV2lkdGgpICsgKDkgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpICovXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sYXJnZUltZyB7XHJcbiAgICAgICAgd2lkdGg6IDI0MXB4OyAvKiAzOSUgb2YgZ2FsbGVyeUNvbnRhaW5lciB3aWR0aCAqL1xyXG4gICAgICAgIGhlaWdodDogMTM2cHg7IC8qIChMYXJnZSBJbWFnZSBXaWR0aCAgLyAgMTYpICogOSAgICBbdG8ga2VlcCAxNjo5IGFzcGVjdCByYXRpb10gKi9cclxuICAgICAgICBtYXJnaW4tdG9wOiAwOyAvKiBBbHdheXMgWmVybyAqL1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCAtMXB4IGJsYWNrOyAvKiAwLCBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQsIDMgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQsIC1HYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgIH1cclxuXHJcbiAgICAuc21hbGxJbWcge1xyXG4gICAgICAgIHdpZHRoOiAxODVweDsgLyogMzAlIG9mIGdhbGxlcnlDb250YWluZXIgV2lkdGggKi9cclxuICAgICAgICBoZWlnaHQ6IDEwNHB4OyAvKiAoU21hbGwgSW1hZ2UgV2lkdGggLyAxNikgKiA5IFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7IC8qIChMYXJnZSBJbWFnZSBIZWlnaHQgLSBTbWFsbCBJbWFnZSBIZWlnaHQgKSAvIDIgICovXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsgLyogKExhcmdlIEltYWdlIEhlaWdodCAtIFNtYWxsIEltYWdlIEhlaWdodCApIC8gMiAgKi9cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMjQ5cHgpIHtcclxuICAgIC5nYWxsZXJ5TmF2QnV0dG9uIHtcclxuICAgICAgICB3aWR0aDogMjhweDtcclxuICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgdG9wOiA2MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcblxyXG4gICAgICAgIC5hcnJvd0xlZnQsIC5hcnJvd1JpZ2h0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMTRweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTRweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcnJvd0xlZnQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDE0cHggc29saWQgI2ZmZjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcnJvd1JpZ2h0IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDE0cHggc29saWQgI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmdhbGxlcnlDb250YWluZXIge1xyXG4gICAgICAgIHdpZHRoOiA3NThweDsgLyogbWluIC0gMjUwKG5hdikgLSA0NioyKGJvZHlPdmVyZmxvd1BhZGRpbmcpICovXHJcbiAgICAgICAgaGVpZ2h0OiAxNzNweDsgLyogRXF1YWwgdG8gaGVpZ2h0IG9mIGxhcmdlc3QgaW1hZ2UgKyAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICAuZ2FsbGVyeVJlZWwge1xyXG4gICAgICAgICAgICB3aWR0aDogMTIyNHB4OyAvKiBHYWxsZXJ5Q29udGFpbmVyV2lkdGggKyAoMiAqIHNtYWxsSW1nV2lkdGgpICsgKDYgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpICovXHJcbiAgICAgICAgICAgIGxlZnQ6IC0yMzNweDsgLyogLShzbWFsbEltYWdlV2lkdGggKyAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkpICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDsgLyogKEdhbGxlcnlDb250YWluZXJXaWR0aCAtIExhcmdlSW1hZ2VXaWR0aCAtIDIgKiBTbWFsbEltYWdlV2lkdGgpIC8gNCAgICovXHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4OyAvKiAoR2FsbGVyeUNvbnRhaW5lcldpZHRoIC0gTGFyZ2VJbWFnZVdpZHRoIC0gMiAqIFNtYWxsSW1hZ2VXaWR0aCkgLyA0ICAgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtMSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMzNweDsgLyogc21hbGxJbWFnZVdpZHRoICsgMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC0yIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQ2NHB4OyAvKiAyICogc21hbGxJbWFnZVdpZHRoICsgNSAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC00IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDk5NXB4OyAvKiBsYXJnZUltYWdlV2lkdGggKyAoMyAqIHNtYWxsSW1hZ2VXaWR0aCkgKyAoOSAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxhcmdlSW1nIHtcclxuICAgICAgICB3aWR0aDogMjk2cHg7IC8qIDM5JSBvZiBnYWxsZXJ5Q29udGFpbmVyIHdpZHRoICovXHJcbiAgICAgICAgaGVpZ2h0OiAxNjdweDsgLyogKExhcmdlIEltYWdlIFdpZHRoICAvICAxNikgKiA5ICAgIFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7IC8qIEFsd2F5cyBaZXJvICovXHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNnB4IC0xcHggYmxhY2s7IC8qIDAsIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCwgMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCwgLUdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgfVxyXG5cclxuICAgIC5zbWFsbEltZyB7XHJcbiAgICAgICAgd2lkdGg6IDIyN3B4OyAvKiAzMCUgb2YgZ2FsbGVyeUNvbnRhaW5lciBXaWR0aCAqL1xyXG4gICAgICAgIGhlaWdodDogMTI4cHg7IC8qIChTbWFsbCBJbWFnZSBXaWR0aCAvIDE2KSAqIDkgW3RvIGtlZXAgMTY6OSBhc3BlY3QgcmF0aW9dICovXHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDsgLyogKExhcmdlIEltYWdlIEhlaWdodCAtIFNtYWxsIEltYWdlIEhlaWdodCApIC8gMiAgKi9cclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOXB4OyAvKiAoTGFyZ2UgSW1hZ2UgSGVpZ2h0IC0gU21hbGwgSW1hZ2UgSGVpZ2h0ICkgLyAyICAqL1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNTBweCkgYW5kIChtYXgtd2lkdGg6IDEzOTlweCkge1xyXG4gICAgLmdhbGxlcnlOYXZCdXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICB0b3A6IDc4cHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICAgICAgLmFycm93TGVmdCwgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93TGVmdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTRweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTRweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ2FsbGVyeUNvbnRhaW5lciB7XHJcbiAgICAgICAgd2lkdGg6IDkwOHB4OyAvKiBtaW4gLSAyNTAobmF2KSAtIDQ2KjIoYm9keU92ZXJmbG93UGFkZGluZykgKi9cclxuICAgICAgICBoZWlnaHQ6IDIwNXB4OyAvKiBFcXVhbCB0byBoZWlnaHQgb2YgbGFyZ2VzdCBpbWFnZSArICgzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSAqL1xyXG4gICAgICAgIC5nYWxsZXJ5UmVlbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNDY0cHg7IC8qIEdhbGxlcnlDb250YWluZXJXaWR0aCArICgyICogc21hbGxJbWdXaWR0aCkgKyAoNiAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICAgICAgbGVmdDogLTI3OHB4OyAvKiAtKHNtYWxsSW1hZ2VXaWR0aCArICgzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSkgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2Uge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4OyAvKiAoR2FsbGVyeUNvbnRhaW5lcldpZHRoIC0gTGFyZ2VJbWFnZVdpZHRoIC0gMiAqIFNtYWxsSW1hZ2VXaWR0aCkgLyA0ICAgKi9cclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IC8qIChHYWxsZXJ5Q29udGFpbmVyV2lkdGggLSBMYXJnZUltYWdlV2lkdGggLSAyICogU21hbGxJbWFnZVdpZHRoKSAvIDQgICAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC0xIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI3OHB4OyAvKiBzbWFsbEltYWdlV2lkdGggKyAzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNTU0cHg7IC8qIDIgKiBzbWFsbEltYWdlV2lkdGggKyA1ICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTE4OHB4OyAvKiBsYXJnZUltYWdlV2lkdGggKyAoMyAqIHNtYWxsSW1hZ2VXaWR0aCkgKyAoOSAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxhcmdlSW1nIHtcclxuICAgICAgICB3aWR0aDogMzU0cHg7IC8qIDM5JSBvZiBnYWxsZXJ5Q29udGFpbmVyIHdpZHRoICovXHJcbiAgICAgICAgaGVpZ2h0OiAxOTlweDsgLyogKExhcmdlIEltYWdlIFdpZHRoICAvICAxNikgKiA5ICAgIFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7IC8qIEFsd2F5cyBaZXJvICovXHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNnB4IC0ycHggYmxhY2s7IC8qIDAsIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCwgMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCwgLUdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgfVxyXG5cclxuICAgIC5zbWFsbEltZyB7XHJcbiAgICAgICAgd2lkdGg6IDI3MnB4OyAvKiAzMCUgb2YgZ2FsbGVyeUNvbnRhaW5lciBXaWR0aCAqL1xyXG4gICAgICAgIGhlaWdodDogMTUzcHg7IC8qIChTbWFsbCBJbWFnZSBXaWR0aCAvIDE2KSAqIDkgW3RvIGtlZXAgMTY6OSBhc3BlY3QgcmF0aW9dICovXHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjNweDsgLyogKExhcmdlIEltYWdlIEhlaWdodCAtIFNtYWxsIEltYWdlIEhlaWdodCApIC8gMiAgKi9cclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyM3B4OyAvKiAoTGFyZ2UgSW1hZ2UgSGVpZ2h0IC0gU21hbGwgSW1hZ2UgSGVpZ2h0ICkgLyAyICAqL1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0MDBweCkgYW5kIChtYXgtd2lkdGg6IDE2MDBweCkge1xyXG4gICAgLmdhbGxlcnlOYXZCdXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICB0b3A6IDk0cHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICAgICAgLmFycm93TGVmdCwgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93TGVmdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTRweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTRweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ2FsbGVyeUNvbnRhaW5lciB7XHJcbiAgICAgICAgd2lkdGg6IDEwNThweDsgLyogbWluIC0gMjUwKG5hdikgLSA0NioyKGJvZHlPdmVyZmxvd1BhZGRpbmcpICovXHJcbiAgICAgICAgaGVpZ2h0OiAyMzhweDsgLyogRXF1YWwgdG8gaGVpZ2h0IG9mIGxhcmdlc3QgaW1hZ2UgKyAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICAuZ2FsbGVyeVJlZWwge1xyXG4gICAgICAgICAgICB3aWR0aDogMTcwNHB4OyAvKiBHYWxsZXJ5Q29udGFpbmVyV2lkdGggKyAoMiAqIHNtYWxsSW1nV2lkdGgpICsgKDYgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpICovXHJcbiAgICAgICAgICAgIGxlZnQ6IC0zMjNweDsgLyogLShzbWFsbEltYWdlV2lkdGggKyAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkpICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDsgLyogKEdhbGxlcnlDb250YWluZXJXaWR0aCAtIExhcmdlSW1hZ2VXaWR0aCAtIDIgKiBTbWFsbEltYWdlV2lkdGgpIC8gNCAgICovXHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4OyAvKiAoR2FsbGVyeUNvbnRhaW5lcldpZHRoIC0gTGFyZ2VJbWFnZVdpZHRoIC0gMiAqIFNtYWxsSW1hZ2VXaWR0aCkgLyA0ICAgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtMSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMjNweDsgLyogc21hbGxJbWFnZVdpZHRoICsgMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC0yIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDY0NHB4OyAvKiAyICogc21hbGxJbWFnZVdpZHRoICsgNSAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC00IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEzODJweDsgLyogbGFyZ2VJbWFnZVdpZHRoICsgKDMgKiBzbWFsbEltYWdlV2lkdGgpICsgKDkgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpICovXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sYXJnZUltZyB7XHJcbiAgICAgICAgd2lkdGg6IDQxM3B4OyAvKiAzOSUgb2YgZ2FsbGVyeUNvbnRhaW5lciB3aWR0aCAqL1xyXG4gICAgICAgIGhlaWdodDogMjMycHg7IC8qIChMYXJnZSBJbWFnZSBXaWR0aCAgLyAgMTYpICogOSAgICBbdG8ga2VlcCAxNjo5IGFzcGVjdCByYXRpb10gKi9cclxuICAgICAgICBtYXJnaW4tdG9wOiAwOyAvKiBBbHdheXMgWmVybyAqL1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDZweCAtMnB4IGJsYWNrOyAvKiAwLCBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQsIDMgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQsIC1HYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgIH1cclxuXHJcbiAgICAuc21hbGxJbWcge1xyXG4gICAgICAgIHdpZHRoOiAzMTdweDsgLyogMzAlIG9mIGdhbGxlcnlDb250YWluZXIgV2lkdGggKi9cclxuICAgICAgICBoZWlnaHQ6IDE3OHB4OyAvKiAoU21hbGwgSW1hZ2UgV2lkdGggLyAxNikgKiA5IFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDI3cHg7IC8qIChMYXJnZSBJbWFnZSBIZWlnaHQgLSBTbWFsbCBJbWFnZSBIZWlnaHQgKSAvIDIgICovXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjdweDsgLyogKExhcmdlIEltYWdlIEhlaWdodCAtIFNtYWxsIEltYWdlIEhlaWdodCApIC8gMiAgKi9cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAxcHgpIGFuZCAobWF4LXdpZHRoOiAxODAwcHgpIHtcclxuICAgIC5nYWxsZXJ5TmF2QnV0dG9uIHtcclxuICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgdG9wOiAxMTRweDtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG5cclxuICAgICAgICAuYXJyb3dMZWZ0LCAuYXJyb3dSaWdodCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDE2cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDE2cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYXJyb3dMZWZ0IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxNnB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYXJyb3dSaWdodCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA5cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxNnB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5nYWxsZXJ5Q29udGFpbmVyIHtcclxuICAgICAgICB3aWR0aDogMTI1OXB4OyAvKiBtaW4gLSAyNTAobmF2KSAtIDQ2KjIoYm9keU92ZXJmbG93UGFkZGluZykgKi9cclxuICAgICAgICBoZWlnaHQ6IDI4NXB4OyAvKiBFcXVhbCB0byBoZWlnaHQgb2YgbGFyZ2VzdCBpbWFnZSArICgzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSAqL1xyXG4gICAgICAgIC5nYWxsZXJ5UmVlbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMDMzcHg7IC8qIEdhbGxlcnlDb250YWluZXJXaWR0aCArICgyICogc21hbGxJbWdXaWR0aCkgKyAoNiAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICAgICAgbGVmdDogLTM4N3B4OyAvKiAtKHNtYWxsSW1hZ2VXaWR0aCArICgzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSkgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2Uge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4OyAvKiAoR2FsbGVyeUNvbnRhaW5lcldpZHRoIC0gTGFyZ2VJbWFnZVdpZHRoIC0gMiAqIFNtYWxsSW1hZ2VXaWR0aCkgLyA0ICAgKi9cclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7IC8qIChHYWxsZXJ5Q29udGFpbmVyV2lkdGggLSBMYXJnZUltYWdlV2lkdGggLSAyICogU21hbGxJbWFnZVdpZHRoKSAvIDQgICAqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdhbGxlcnlJbWFnZS5tYXJnaW4tbGVmdC0xIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDM4N3B4OyAvKiBzbWFsbEltYWdlV2lkdGggKyAzICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNzcxcHg7IC8qIDIgKiBzbWFsbEltYWdlV2lkdGggKyA1ICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0ICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTY1MnB4OyAvKiBsYXJnZUltYWdlV2lkdGggKyAoMyAqIHNtYWxsSW1hZ2VXaWR0aCkgKyAoOSAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxhcmdlSW1nIHtcclxuICAgICAgICB3aWR0aDogNDkxcHg7IC8qIH4zOSUgb2YgZ2FsbGVyeUNvbnRhaW5lciB3aWR0aCAqL1xyXG4gICAgICAgIGhlaWdodDogMjc2cHg7IC8qIChMYXJnZSBJbWFnZSBXaWR0aCAgLyAgMTYpICogOSAgICBbdG8ga2VlcCAxNjo5IGFzcGVjdCByYXRpb10gKi9cclxuICAgICAgICBtYXJnaW4tdG9wOiAwOyAvKiBBbHdheXMgWmVybyAqL1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDlweCAtM3B4IGJsYWNrOyAvKiAwLCBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQsIDMgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQsIC1HYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgIH1cclxuXHJcbiAgICAuc21hbGxJbWcge1xyXG4gICAgICAgIHdpZHRoOiAzNzhweDsgLyogfjMwJSBvZiBnYWxsZXJ5Q29udGFpbmVyIFdpZHRoICovXHJcbiAgICAgICAgaGVpZ2h0OiAyMTNweDsgLyogKFNtYWxsIEltYWdlIFdpZHRoIC8gMTYpICogOSBbdG8ga2VlcCAxNjo5IGFzcGVjdCByYXRpb10gKi9cclxuICAgICAgICBtYXJnaW4tdG9wOiAzMXB4OyAvKiAoTGFyZ2UgSW1hZ2UgSGVpZ2h0IC0gU21hbGwgSW1hZ2UgSGVpZ2h0ICkgLyAyICAqL1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMxcHg7IC8qIChMYXJnZSBJbWFnZSBIZWlnaHQgLSBTbWFsbCBJbWFnZSBIZWlnaHQgKSAvIDIgICovXHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTgwMXB4KSB7XHJcbiAgICAuZ2FsbGVyeU5hdkJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgIHRvcDogMTQwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTJweDtcclxuXHJcbiAgICAgICAgLmFycm93TGVmdCwgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93TGVmdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTZweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93UmlnaHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOXB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTZweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ2FsbGVyeUNvbnRhaW5lciB7XHJcbiAgICAgICAgd2lkdGg6IDE0NTlweDsgLyogbWluIC0gMjUwKG5hdikgLSA0NioyKGJvZHlPdmVyZmxvd1BhZGRpbmcpICovXHJcbiAgICAgICAgaGVpZ2h0OiAzMjBweDsgLyogRXF1YWwgdG8gaGVpZ2h0IG9mIGxhcmdlc3QgaW1hZ2UgKi9cclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOXB4OyAvKiAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkgKi9cclxuICAgICAgICAuZ2FsbGVyeVJlZWwge1xyXG4gICAgICAgICAgICB3aWR0aDogMjM1M3B4OyAvKiBHYWxsZXJ5Q29udGFpbmVyV2lkdGggKyAoMiAqIHNtYWxsSW1nV2lkdGgpICsgKDYgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQpICovXHJcbiAgICAgICAgICAgIGxlZnQ6IC00NDdweDsgLyogLShzbWFsbEltYWdlV2lkdGggKyAoMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCkpICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDsgLyogUm91bmREb3duKChHYWxsZXJ5Q29udGFpbmVyV2lkdGggLSBMYXJnZUltYWdlV2lkdGggLSAyICogU21hbGxJbWFnZVdpZHRoKSAvIDQpICAgKi9cclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7IC8qIFJvdW5kRG93bigoR2FsbGVyeUNvbnRhaW5lcldpZHRoIC0gTGFyZ2VJbWFnZVdpZHRoIC0gMiAqIFNtYWxsSW1hZ2VXaWR0aCkgLyA0KSAgICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ2FsbGVyeUltYWdlLm1hcmdpbi1sZWZ0LTEge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNDQ3cHg7IC8qIHNtYWxsSW1hZ2VXaWR0aCArIDMgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4OTFweDsgLyogMiAqIHNtYWxsSW1hZ2VXaWR0aCArIDUgKiBHYWxsZXJ5SW1hZ2UtbWFyZ2luLWxlZnQgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nYWxsZXJ5SW1hZ2UubWFyZ2luLWxlZnQtNCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxOTEwcHg7IC8qIGxhcmdlSW1hZ2VXaWR0aCArICgzICogc21hbGxJbWFnZVdpZHRoKSArICg5ICogR2FsbGVyeUltYWdlLW1hcmdpbi1sZWZ0KSAqL1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGFyZ2VJbWcge1xyXG4gICAgICAgIHdpZHRoOiA1NjlweDsgLyogfjM5JSBvZiBnYWxsZXJ5Q29udGFpbmVyIHdpZHRoICovXHJcbiAgICAgICAgaGVpZ2h0OiAzMjBweDsgLyogKExhcmdlIEltYWdlIFdpZHRoICAvICAxNikgKiA5ICAgIFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7IC8qIEFsd2F5cyBaZXJvICovXHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAzcHggOXB4IC0zcHggYmxhY2s7IC8qIDAsIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCwgMyAqIEdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCwgLUdhbGxlcnlJbWFnZS1tYXJnaW4tbGVmdCAqL1xyXG4gICAgfVxyXG5cclxuICAgIC5zbWFsbEltZyB7XHJcbiAgICAgICAgd2lkdGg6IDQzOHB4OyAvKiB+MzAlIG9mIGdhbGxlcnlDb250YWluZXIgV2lkdGggKi9cclxuICAgICAgICBoZWlnaHQ6IDI0NnB4OyAvKiAoU21hbGwgSW1hZ2UgV2lkdGggLyAxNikgKiA5ICAgIFt0byBrZWVwIDE2OjkgYXNwZWN0IHJhdGlvXSAqL1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDM3cHg7IC8qIChMYXJnZSBJbWFnZSBIZWlnaHQgLSBTbWFsbCBJbWFnZSBIZWlnaHQgKSAvIDIgICovXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzdweDsgLyogKExhcmdlIEltYWdlIEhlaWdodCAtIFNtYWxsIEltYWdlIEhlaWdodCApIC8gMiAgKi9cclxuICAgIH1cclxufVxyXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsQUFBQSxlQUFlLENBQUM7RUFDWixRQUFRLEVBQUUsS0FBSztFQUNmLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osVUFBVSxFQUFFLG1CQUFnQjtFQUM1QixPQUFPLEVBQUUsQ0FBQztFQUNWLFVBQVUsRUFBRSxhQUFhO0VBQ3pCLE9BQU8sRUFBRSxDQUFDLEdBb0NiO0VBN0NELEFBV0ksZUFYVyxBQVdWLGNBQWMsQ0FBQztJQUNaLE9BQU8sRUFBRSxDQUFDLEdBQ2I7RUFiTCxBQWVJLGVBZlcsQUFlVixjQUFjLENBQUM7SUFDWixPQUFPLEVBQUUsSUFBSSxHQUNoQjtFQWpCTCxBQW1CSSxlQW5CVyxDQW1CWCxhQUFhLENBQUM7SUFDVixRQUFRLEVBQUUsS0FBSztJQUNmLEdBQUcsRUFBRSxDQUFDO0lBQ04sSUFBSSxFQUFFLENBQUM7SUFDUCxNQUFNLEVBQUUsQ0FBQztJQUNULEtBQUssRUFBRSxDQUFDO0lBQ1IsTUFBTSxFQUFFLElBQUk7SUFDWixVQUFVLEVBQUUsR0FBRztJQUNmLFNBQVMsRUFBRSxHQUFHLEdBQ2pCO0VBNUJMLEFBOEJJLGVBOUJXLENBOEJYLG1CQUFtQixDQUFDO0lBQ2hCLFFBQVEsRUFBRSxLQUFLO0lBQ2YsR0FBRyxFQUFFLElBQUk7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixXQUFXLEVBQUUsSUFBSTtJQUNqQixLQUFLLEVBQUUsS0FBSztJQUNaLFNBQVMsRUFBRSxJQUFJO0lBQ2YsT0FBTyxFQUFFLEdBQUc7SUFDWixVQUFVLEVBQUUsT0FBTztJQUNuQixhQUFhLEVBQUUsR0FBRztJQUNsQixNQUFNLEVBQUUsT0FBTztJQUNmLFVBQVUsRUFBRSxNQUFNLEdBQ3JCOztBQUdMLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFFBQVEsRUFBRSxRQUFRLEdBQ3JCOztBQUVELEFBQUEsaUJBQWlCLENBQUM7RUFDZCxNQUFNLEVBQUUsTUFBTTtFQUNkLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFFBQVEsRUFBRSxNQUFNLEdBc0JuQjtFQXpCRCxBQUtJLGlCQUxhLENBS2IsYUFBYSxDQUFDO0lBQ1YsT0FBTyxFQUFFLFlBQVk7SUFDckIsVUFBVSxFQUFFLEtBQUs7SUFDakIsS0FBSyxFQUFFLElBQUk7SUFDWCxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRztJQUNaLFVBQVUsRUFBRSxVQUFVO0lBQ3RCLE9BQU8sRUFBRSxDQUFDO0lBQ1YsVUFBVSxFQUFFLDZDQUE2QztJQUN6RCxNQUFNLEVBQUUsT0FBTztJQUNmLG1CQUFtQixFQUFFLElBQUk7SUFDekIsZ0JBQWdCLEVBQUUsSUFBSTtJQUN0QixlQUFlLEVBQUUsSUFBSTtJQUNyQixXQUFXLEVBQUUsSUFBSSxHQUNwQjtFQW5CTCxBQXFCSSxpQkFyQmEsQ0FxQmIsYUFBYSxDQUFDLEdBQUcsQ0FBQztJQUNkLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFNBQVMsRUFBRSxJQUFJLEdBQ2xCOztBQUdMLEFBRUksaUJBRmEsQ0FFYixhQUFhLEFBQUEsZ0JBQWdCLENBQUM7RUFDMUIsS0FBSyxFQUFFLENBQUM7RUFDUixXQUFXLEVBQUUsQ0FBQztFQUNkLFlBQVksRUFBRSxDQUFDO0VBQ2YsT0FBTyxFQUFFLENBQUMsR0FDYjs7QUFQTCxBQVNJLGlCQVRhLENBU2IsWUFBWSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLElBQUksR0FDZjs7QUFHTCxBQUFBLGlCQUFpQixDQUFDO0VBQ2QsVUFBVSxFQUFFLE9BQU87RUFDbkIsT0FBTyxFQUFFLFlBQVk7RUFDckIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsYUFBYSxFQUFFLEdBQUc7RUFDbEIsZUFBZSxFQUFFLGtDQUFrQztFQUNuRCxrQkFBa0IsRUFBRSxrQ0FBa0M7RUFDdEQsVUFBVSxFQUFFLGtDQUFrQztFQUM5QyxNQUFNLEVBQUUsT0FBTztFQUNmLG1CQUFtQixFQUFFLElBQUk7RUFDekIsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixlQUFlLEVBQUUsSUFBSTtFQUNyQixXQUFXLEVBQUUsSUFBSSxHQUtwQjtFQWpCRCxBQWNJLGlCQWRhLEFBY1osTUFBTSxDQUFDO0lBQ0osZ0JBQWdCLEVBQUUsT0FBTyxHQUM1Qjs7QUFHTCxBQUFBLEtBQUssQUFBQSxpQkFBaUIsQ0FBQztFQUNuQixJQUFJLEVBQUUsQ0FBQyxHQUNWOztBQUVELEFBQUEsTUFBTSxBQUFBLGlCQUFpQixDQUFDO0VBQ3BCLEtBQUssRUFBRSxDQUFDLEdBQ1g7O0FBRUQsQUFBQSxhQUFhLENBQUM7RUFDVixNQUFNLEVBQUUsTUFBTTtFQUNkLFVBQVUsRUFBRSxLQUFLLEdBU3BCO0VBWEQsQUFJSSxhQUpTLENBSVQsQ0FBQyxDQUFDO0lBQ0UsT0FBTyxFQUFFLFlBQVk7SUFDckIsZ0JBQWdCLEVBQUUsT0FBTztJQUN6QixLQUFLLEVBQUUsSUFBSTtJQUNYLE9BQU8sRUFBRSxJQUFJO0lBQ2IsYUFBYSxFQUFFLEdBQUcsR0FDckI7O0FBR0wsNERBQTREO0FBQzVELCtFQUErRTtBQUMvRSw4REFBOEQ7QUFDOUQsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUNwQyxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEdBQUcsRUFBRSxJQUFJO0lBQ1QsT0FBTyxFQUFFLEdBQUcsR0FrQmY7SUF0QkQsQUFNSSxpQkFOYSxDQU1iLFVBQVUsRUFOZCxpQkFBaUIsQ0FNRCxXQUFXLENBQUM7TUFDcEIsS0FBSyxFQUFFLENBQUM7TUFDUixNQUFNLEVBQUUsQ0FBQztNQUNULFVBQVUsRUFBRSxzQkFBc0I7TUFDbEMsYUFBYSxFQUFFLHNCQUFzQixHQUN4QztJQVhMLEFBYUksaUJBYmEsQ0FhYixVQUFVLENBQUM7TUFDUCxXQUFXLEVBQUUsR0FBRztNQUNoQixZQUFZLEVBQUUsZUFBZSxHQUNoQztJQWhCTCxBQWtCSSxpQkFsQmEsQ0FrQmIsV0FBVyxDQUFDO01BQ1IsV0FBVyxFQUFFLEdBQUc7TUFDaEIsV0FBVyxFQUFFLGVBQWUsR0FDL0I7RUFHTCxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsS0FBSyxHQXVCaEI7SUF6QkQsQUFJSSxpQkFKYSxDQUliLFlBQVksQ0FBQztNQUNULEtBQUssRUFBRSxLQUFLO01BQ1osSUFBSSxFQUFFLE1BQU0sR0FDZjtJQVBMLEFBU0ksaUJBVGEsQ0FTYixhQUFhLENBQUM7TUFDVixXQUFXLEVBQUUsR0FBRztNQUNoQixZQUFZLEVBQUUsR0FBRyxHQUNwQjtJQVpMLEFBY0ksaUJBZGEsQ0FjYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxLQUFLLEdBQ3JCO0lBaEJMLEFBa0JJLGlCQWxCYSxDQWtCYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxLQUFLLEdBQ3JCO0lBcEJMLEFBc0JJLGlCQXRCYSxDQXNCYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxLQUFLLEdBQ3JCO0VBR0wsQUFBQSxTQUFTLEVBQUUsU0FBUyxDQUFDO0lBQ2pCLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLEtBQUs7SUFDYixVQUFVLEVBQUUsQ0FBQztJQUNiLFVBQVUsRUFBRSxvQkFBb0IsR0FDbkM7O0FBR0wsNERBQTREO0FBQzVELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsS0FBSztFQUMzRCxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEdBQUcsRUFBRSxJQUFJO0lBQ1QsT0FBTyxFQUFFLEdBQUcsR0FrQmY7SUF0QkQsQUFNSSxpQkFOYSxDQU1iLFVBQVUsRUFOZCxpQkFBaUIsQ0FNRCxXQUFXLENBQUM7TUFDcEIsS0FBSyxFQUFFLENBQUM7TUFDUixNQUFNLEVBQUUsQ0FBQztNQUNULFVBQVUsRUFBRSxzQkFBc0I7TUFDbEMsYUFBYSxFQUFFLHNCQUFzQixHQUN4QztJQVhMLEFBYUksaUJBYmEsQ0FhYixVQUFVLENBQUM7TUFDUCxXQUFXLEVBQUUsR0FBRztNQUNoQixZQUFZLEVBQUUsZUFBZSxHQUNoQztJQWhCTCxBQWtCSSxpQkFsQmEsQ0FrQmIsV0FBVyxDQUFDO01BQ1IsV0FBVyxFQUFFLEdBQUc7TUFDaEIsV0FBVyxFQUFFLGVBQWUsR0FDL0I7RUFHTCxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLEtBQUs7SUFBRSx5REFBeUQ7SUFDdkUsTUFBTSxFQUFFLElBQUk7SUFBRSx1RUFBdUUsRUFzQnhGO0lBeEJELEFBR0ksaUJBSGEsQ0FHYixZQUFZLENBQUM7TUFDVCxLQUFLLEVBQUUsS0FBSztNQUFFLGtGQUFrRjtNQUNoRyxJQUFJLEVBQUUsS0FBSztNQUFFLHlEQUF5RCxFQUN6RTtJQU5MLEFBUUksaUJBUmEsQ0FRYixhQUFhLENBQUM7TUFDVixXQUFXLEVBQUUsQ0FBQztNQUFFLDJFQUEyRTtNQUMzRixZQUFZLEVBQUUsQ0FBQztNQUFFLDJFQUEyRSxFQUMvRjtJQVhMLEFBYUksaUJBYmEsQ0FhYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxJQUFJO01BQUUsb0RBQW9ELEVBQzFFO0lBZkwsQUFpQkksaUJBakJhLENBaUJiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLEtBQUs7TUFBRSx3REFBd0QsRUFDL0U7SUFuQkwsQUFxQkksaUJBckJhLENBcUJiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLEtBQUs7TUFBRSw4RUFBOEUsRUFDckc7RUFHTCxBQUFBLFNBQVMsQ0FBQztJQUNOLEtBQUssRUFBRSxLQUFLO0lBQUUsbUNBQW1DO0lBQ2pELE1BQU0sRUFBRSxJQUFJO0lBQUUsbUVBQW1FO0lBQ2pGLFVBQVUsRUFBRSxDQUFDO0lBQUUsaUJBQWlCO0lBQ2hDLFVBQVUsRUFBRSxhQUFhO0lBQUUsMEZBQTBGLEVBQ3hIO0VBRUQsQUFBQSxTQUFTLENBQUM7SUFDTixLQUFLLEVBQUUsSUFBSTtJQUFFLG1DQUFtQztJQUNoRCxNQUFNLEVBQUUsSUFBSTtJQUFFLDhEQUE4RDtJQUM1RSxVQUFVLEVBQUUsR0FBRztJQUFFLHFEQUFxRDtJQUN0RSxhQUFhLEVBQUUsR0FBRztJQUFFLHFEQUFxRCxFQUM1RTs7QUFHTCw2QkFBNkI7QUFDN0IsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBQzNELEFBQUEsaUJBQWlCLENBQUM7SUFDZCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osR0FBRyxFQUFFLElBQUk7SUFDVCxPQUFPLEVBQUUsR0FBRyxHQWtCZjtJQXRCRCxBQU1JLGlCQU5hLENBTWIsVUFBVSxFQU5kLGlCQUFpQixDQU1ELFdBQVcsQ0FBQztNQUNwQixLQUFLLEVBQUUsQ0FBQztNQUNSLE1BQU0sRUFBRSxDQUFDO01BQ1QsVUFBVSxFQUFFLHNCQUFzQjtNQUNsQyxhQUFhLEVBQUUsc0JBQXNCLEdBQ3hDO0lBWEwsQUFhSSxpQkFiYSxDQWFiLFVBQVUsQ0FBQztNQUNQLFdBQVcsRUFBRSxHQUFHO01BQ2hCLFlBQVksRUFBRSxlQUFlLEdBQ2hDO0lBaEJMLEFBa0JJLGlCQWxCYSxDQWtCYixXQUFXLENBQUM7TUFDUixXQUFXLEVBQUUsR0FBRztNQUNoQixXQUFXLEVBQUUsZUFBZSxHQUMvQjtFQUdMLEFBQUEsaUJBQWlCLENBQUM7SUFDZCxLQUFLLEVBQUUsS0FBSztJQUFFLHlEQUF5RDtJQUN2RSxNQUFNLEVBQUUsS0FBSztJQUFFLHVFQUF1RSxFQXNCekY7SUF4QkQsQUFHSSxpQkFIYSxDQUdiLFlBQVksQ0FBQztNQUNULEtBQUssRUFBRSxLQUFLO01BQUUsa0ZBQWtGO01BQ2hHLElBQUksRUFBRSxNQUFNO01BQUUseURBQXlELEVBQzFFO0lBTkwsQUFRSSxpQkFSYSxDQVFiLGFBQWEsQ0FBQztNQUNWLFdBQVcsRUFBRSxHQUFHO01BQUUsMkVBQTJFO01BQzdGLFlBQVksRUFBRSxHQUFHO01BQUUsMkVBQTJFLEVBQ2pHO0lBWEwsQUFhSSxpQkFiYSxDQWFiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLEtBQUs7TUFBRSxvREFBb0QsRUFDM0U7SUFmTCxBQWlCSSxpQkFqQmEsQ0FpQmIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLHdEQUF3RCxFQUMvRTtJQW5CTCxBQXFCSSxpQkFyQmEsQ0FxQmIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLDhFQUE4RSxFQUNyRztFQUdMLEFBQUEsU0FBUyxDQUFDO0lBQ04sS0FBSyxFQUFFLEtBQUs7SUFBRSxtQ0FBbUM7SUFDakQsTUFBTSxFQUFFLEtBQUs7SUFBRSxtRUFBbUU7SUFDbEYsVUFBVSxFQUFFLENBQUM7SUFBRSxpQkFBaUI7SUFDaEMsVUFBVSxFQUFFLG9CQUFvQjtJQUFFLDBGQUEwRixFQUMvSDtFQUVELEFBQUEsU0FBUyxDQUFDO0lBQ04sS0FBSyxFQUFFLEtBQUs7SUFBRSxtQ0FBbUM7SUFDakQsTUFBTSxFQUFFLElBQUk7SUFBRSw4REFBOEQ7SUFDNUUsVUFBVSxFQUFFLElBQUk7SUFBRSxxREFBcUQ7SUFDdkUsYUFBYSxFQUFFLElBQUk7SUFBRSxxREFBcUQsRUFDN0U7O0FBR0wsZ0VBQWdFO0FBQ2hFLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsS0FBSztFQUMzRCxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEdBQUcsRUFBRSxJQUFJO0lBQ1QsT0FBTyxFQUFFLEdBQUcsR0FrQmY7SUF0QkQsQUFNSSxpQkFOYSxDQU1iLFVBQVUsRUFOZCxpQkFBaUIsQ0FNRCxXQUFXLENBQUM7TUFDcEIsS0FBSyxFQUFFLENBQUM7TUFDUixNQUFNLEVBQUUsQ0FBQztNQUNULFVBQVUsRUFBRSxzQkFBc0I7TUFDbEMsYUFBYSxFQUFFLHNCQUFzQixHQUN4QztJQVhMLEFBYUksaUJBYmEsQ0FhYixVQUFVLENBQUM7TUFDUCxXQUFXLEVBQUUsR0FBRztNQUNoQixZQUFZLEVBQUUsZUFBZSxHQUNoQztJQWhCTCxBQWtCSSxpQkFsQmEsQ0FrQmIsV0FBVyxDQUFDO01BQ1IsV0FBVyxFQUFFLEdBQUc7TUFDaEIsV0FBVyxFQUFFLGVBQWUsR0FDL0I7RUFHTCxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLEtBQUs7SUFBRSxnREFBZ0Q7SUFDOUQsTUFBTSxFQUFFLElBQUk7SUFBRSx1RUFBdUUsRUFzQnhGO0lBeEJELEFBR0ksaUJBSGEsQ0FHYixZQUFZLENBQUM7TUFDVCxLQUFLLEVBQUUsS0FBSztNQUFFLGtGQUFrRjtNQUNoRyxJQUFJLEVBQUUsTUFBTTtNQUFFLHlEQUF5RCxFQUMxRTtJQU5MLEFBUUksaUJBUmEsQ0FRYixhQUFhLENBQUM7TUFDVixXQUFXLEVBQUUsR0FBRztNQUFFLDJFQUEyRTtNQUM3RixZQUFZLEVBQUUsR0FBRztNQUFFLDJFQUEyRSxFQUNqRztJQVhMLEFBYUksaUJBYmEsQ0FhYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxLQUFLO01BQUUsb0RBQW9ELEVBQzNFO0lBZkwsQUFpQkksaUJBakJhLENBaUJiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLEtBQUs7TUFBRSx3REFBd0QsRUFDL0U7SUFuQkwsQUFxQkksaUJBckJhLENBcUJiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLEtBQUs7TUFBRSw4RUFBOEUsRUFDckc7RUFHTCxBQUFBLFNBQVMsQ0FBQztJQUNOLEtBQUssRUFBRSxLQUFLO0lBQUUsbUNBQW1DO0lBQ2pELE1BQU0sRUFBRSxJQUFJO0lBQUUsbUVBQW1FO0lBQ2pGLFVBQVUsRUFBRSxDQUFDO0lBQUUsaUJBQWlCO0lBQ2hDLFVBQVUsRUFBRSxvQkFBb0I7SUFBRSwwRkFBMEYsRUFDL0g7RUFFRCxBQUFBLFNBQVMsQ0FBQztJQUNOLEtBQUssRUFBRSxLQUFLO0lBQUUsbUNBQW1DO0lBQ2pELE1BQU0sRUFBRSxJQUFJO0lBQUUsOERBQThEO0lBQzVFLFVBQVUsRUFBRSxJQUFJO0lBQUUscURBQXFEO0lBQ3ZFLGFBQWEsRUFBRSxJQUFJO0lBQUUscURBQXFELEVBQzdFOztBQUdMLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssT0FBTyxTQUFTLEVBQUUsTUFBTTtFQUM1RCxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEdBQUcsRUFBRSxJQUFJO0lBQ1QsT0FBTyxFQUFFLElBQUksR0FrQmhCO0lBdEJELEFBTUksaUJBTmEsQ0FNYixVQUFVLEVBTmQsaUJBQWlCLENBTUQsV0FBVyxDQUFDO01BQ3BCLEtBQUssRUFBRSxDQUFDO01BQ1IsTUFBTSxFQUFFLENBQUM7TUFDVCxVQUFVLEVBQUUsc0JBQXNCO01BQ2xDLGFBQWEsRUFBRSxzQkFBc0IsR0FDeEM7SUFYTCxBQWFJLGlCQWJhLENBYWIsVUFBVSxDQUFDO01BQ1AsV0FBVyxFQUFFLEdBQUc7TUFDaEIsWUFBWSxFQUFFLGVBQWUsR0FDaEM7SUFoQkwsQUFrQkksaUJBbEJhLENBa0JiLFdBQVcsQ0FBQztNQUNSLFdBQVcsRUFBRSxHQUFHO01BQ2hCLFdBQVcsRUFBRSxlQUFlLEdBQy9CO0VBR0wsQUFBQSxpQkFBaUIsQ0FBQztJQUNkLEtBQUssRUFBRSxLQUFLO0lBQUUsZ0RBQWdEO0lBQzlELE1BQU0sRUFBRSxLQUFLO0lBQUUsdUVBQXVFLEVBc0J6RjtJQXhCRCxBQUdJLGlCQUhhLENBR2IsWUFBWSxDQUFDO01BQ1QsS0FBSyxFQUFFLEtBQUs7TUFBRSxrRkFBa0Y7TUFDaEcsSUFBSSxFQUFFLE1BQU07TUFBRSx5REFBeUQsRUFDMUU7SUFOTCxBQVFJLGlCQVJhLENBUWIsYUFBYSxDQUFDO01BQ1YsV0FBVyxFQUFFLEdBQUc7TUFBRSwyRUFBMkU7TUFDN0YsWUFBWSxFQUFFLEdBQUc7TUFBRSwyRUFBMkUsRUFDakc7SUFYTCxBQWFJLGlCQWJhLENBYWIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLG9EQUFvRCxFQUMzRTtJQWZMLEFBaUJJLGlCQWpCYSxDQWlCYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxLQUFLO01BQUUsd0RBQXdELEVBQy9FO0lBbkJMLEFBcUJJLGlCQXJCYSxDQXFCYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxLQUFLO01BQUUsOEVBQThFLEVBQ3JHO0VBR0wsQUFBQSxTQUFTLENBQUM7SUFDTixLQUFLLEVBQUUsS0FBSztJQUFFLG1DQUFtQztJQUNqRCxNQUFNLEVBQUUsS0FBSztJQUFFLG1FQUFtRTtJQUNsRixVQUFVLEVBQUUsQ0FBQztJQUFFLGlCQUFpQjtJQUNoQyxVQUFVLEVBQUUsb0JBQW9CO0lBQUUsMEZBQTBGLEVBQy9IO0VBRUQsQUFBQSxTQUFTLENBQUM7SUFDTixLQUFLLEVBQUUsS0FBSztJQUFFLG1DQUFtQztJQUNqRCxNQUFNLEVBQUUsS0FBSztJQUFFLDhEQUE4RDtJQUM3RSxVQUFVLEVBQUUsSUFBSTtJQUFFLHFEQUFxRDtJQUN2RSxhQUFhLEVBQUUsSUFBSTtJQUFFLHFEQUFxRCxFQUM3RTs7QUFHTCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFDN0QsQUFBQSxpQkFBaUIsQ0FBQztJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixHQUFHLEVBQUUsSUFBSTtJQUNULE9BQU8sRUFBRSxJQUFJLEdBa0JoQjtJQXRCRCxBQU1JLGlCQU5hLENBTWIsVUFBVSxFQU5kLGlCQUFpQixDQU1ELFdBQVcsQ0FBQztNQUNwQixLQUFLLEVBQUUsQ0FBQztNQUNSLE1BQU0sRUFBRSxDQUFDO01BQ1QsVUFBVSxFQUFFLHNCQUFzQjtNQUNsQyxhQUFhLEVBQUUsc0JBQXNCLEdBQ3hDO0lBWEwsQUFhSSxpQkFiYSxDQWFiLFVBQVUsQ0FBQztNQUNQLFdBQVcsRUFBRSxHQUFHO01BQ2hCLFlBQVksRUFBRSxlQUFlLEdBQ2hDO0lBaEJMLEFBa0JJLGlCQWxCYSxDQWtCYixXQUFXLENBQUM7TUFDUixXQUFXLEVBQUUsR0FBRztNQUNoQixXQUFXLEVBQUUsZUFBZSxHQUMvQjtFQUdMLEFBQUEsaUJBQWlCLENBQUM7SUFDZCxLQUFLLEVBQUUsS0FBSztJQUFFLGdEQUFnRDtJQUM5RCxNQUFNLEVBQUUsS0FBSztJQUFFLHVFQUF1RSxFQXNCekY7SUF4QkQsQUFHSSxpQkFIYSxDQUdiLFlBQVksQ0FBQztNQUNULEtBQUssRUFBRSxNQUFNO01BQUUsa0ZBQWtGO01BQ2pHLElBQUksRUFBRSxNQUFNO01BQUUseURBQXlELEVBQzFFO0lBTkwsQUFRSSxpQkFSYSxDQVFiLGFBQWEsQ0FBQztNQUNWLFdBQVcsRUFBRSxHQUFHO01BQUUsMkVBQTJFO01BQzdGLFlBQVksRUFBRSxHQUFHO01BQUUsMkVBQTJFLEVBQ2pHO0lBWEwsQUFhSSxpQkFiYSxDQWFiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLEtBQUs7TUFBRSxvREFBb0QsRUFDM0U7SUFmTCxBQWlCSSxpQkFqQmEsQ0FpQmIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLHdEQUF3RCxFQUMvRTtJQW5CTCxBQXFCSSxpQkFyQmEsQ0FxQmIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLDhFQUE4RSxFQUNyRztFQUdMLEFBQUEsU0FBUyxDQUFDO0lBQ04sS0FBSyxFQUFFLEtBQUs7SUFBRSxtQ0FBbUM7SUFDakQsTUFBTSxFQUFFLEtBQUs7SUFBRSxtRUFBbUU7SUFDbEYsVUFBVSxFQUFFLENBQUM7SUFBRSxpQkFBaUI7SUFDaEMsVUFBVSxFQUFFLG9CQUFvQjtJQUFFLDBGQUEwRixFQUMvSDtFQUVELEFBQUEsU0FBUyxDQUFDO0lBQ04sS0FBSyxFQUFFLEtBQUs7SUFBRSxtQ0FBbUM7SUFDakQsTUFBTSxFQUFFLEtBQUs7SUFBRSw4REFBOEQ7SUFDN0UsVUFBVSxFQUFFLElBQUk7SUFBRSxxREFBcUQ7SUFDdkUsYUFBYSxFQUFFLElBQUk7SUFBRSxxREFBcUQsRUFDN0U7O0FBR0wsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTSxPQUFPLFNBQVMsRUFBRSxNQUFNO0VBQzdELEFBQUEsaUJBQWlCLENBQUM7SUFDZCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osR0FBRyxFQUFFLElBQUk7SUFDVCxPQUFPLEVBQUUsSUFBSSxHQWtCaEI7SUF0QkQsQUFNSSxpQkFOYSxDQU1iLFVBQVUsRUFOZCxpQkFBaUIsQ0FNRCxXQUFXLENBQUM7TUFDcEIsS0FBSyxFQUFFLENBQUM7TUFDUixNQUFNLEVBQUUsQ0FBQztNQUNULFVBQVUsRUFBRSxzQkFBc0I7TUFDbEMsYUFBYSxFQUFFLHNCQUFzQixHQUN4QztJQVhMLEFBYUksaUJBYmEsQ0FhYixVQUFVLENBQUM7TUFDUCxXQUFXLEVBQUUsR0FBRztNQUNoQixZQUFZLEVBQUUsZUFBZSxHQUNoQztJQWhCTCxBQWtCSSxpQkFsQmEsQ0FrQmIsV0FBVyxDQUFDO01BQ1IsV0FBVyxFQUFFLEdBQUc7TUFDaEIsV0FBVyxFQUFFLGVBQWUsR0FDL0I7RUFHTCxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLEtBQUs7SUFBRSxnREFBZ0Q7SUFDOUQsTUFBTSxFQUFFLEtBQUs7SUFBRSx1RUFBdUUsRUFzQnpGO0lBeEJELEFBR0ksaUJBSGEsQ0FHYixZQUFZLENBQUM7TUFDVCxLQUFLLEVBQUUsTUFBTTtNQUFFLGtGQUFrRjtNQUNqRyxJQUFJLEVBQUUsTUFBTTtNQUFFLHlEQUF5RCxFQUMxRTtJQU5MLEFBUUksaUJBUmEsQ0FRYixhQUFhLENBQUM7TUFDVixXQUFXLEVBQUUsR0FBRztNQUFFLDJFQUEyRTtNQUM3RixZQUFZLEVBQUUsR0FBRztNQUFFLDJFQUEyRSxFQUNqRztJQVhMLEFBYUksaUJBYmEsQ0FhYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxLQUFLO01BQUUsb0RBQW9ELEVBQzNFO0lBZkwsQUFpQkksaUJBakJhLENBaUJiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLEtBQUs7TUFBRSx3REFBd0QsRUFDL0U7SUFuQkwsQUFxQkksaUJBckJhLENBcUJiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLE1BQU07TUFBRSw4RUFBOEUsRUFDdEc7RUFHTCxBQUFBLFNBQVMsQ0FBQztJQUNOLEtBQUssRUFBRSxLQUFLO0lBQUUsbUNBQW1DO0lBQ2pELE1BQU0sRUFBRSxLQUFLO0lBQUUsbUVBQW1FO0lBQ2xGLFVBQVUsRUFBRSxDQUFDO0lBQUUsaUJBQWlCO0lBQ2hDLFVBQVUsRUFBRSxvQkFBb0I7SUFBRSwwRkFBMEYsRUFDL0g7RUFFRCxBQUFBLFNBQVMsQ0FBQztJQUNOLEtBQUssRUFBRSxLQUFLO0lBQUUsbUNBQW1DO0lBQ2pELE1BQU0sRUFBRSxLQUFLO0lBQUUsOERBQThEO0lBQzdFLFVBQVUsRUFBRSxJQUFJO0lBQUUscURBQXFEO0lBQ3ZFLGFBQWEsRUFBRSxJQUFJO0lBQUUscURBQXFELEVBQzdFOztBQUdMLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU0sT0FBTyxTQUFTLEVBQUUsTUFBTTtFQUM3RCxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEdBQUcsRUFBRSxJQUFJO0lBQ1QsT0FBTyxFQUFFLElBQUksR0FrQmhCO0lBdEJELEFBTUksaUJBTmEsQ0FNYixVQUFVLEVBTmQsaUJBQWlCLENBTUQsV0FBVyxDQUFDO01BQ3BCLEtBQUssRUFBRSxDQUFDO01BQ1IsTUFBTSxFQUFFLENBQUM7TUFDVCxVQUFVLEVBQUUsc0JBQXNCO01BQ2xDLGFBQWEsRUFBRSxzQkFBc0IsR0FDeEM7SUFYTCxBQWFJLGlCQWJhLENBYWIsVUFBVSxDQUFDO01BQ1AsV0FBVyxFQUFFLEdBQUc7TUFDaEIsWUFBWSxFQUFFLGVBQWUsR0FDaEM7SUFoQkwsQUFrQkksaUJBbEJhLENBa0JiLFdBQVcsQ0FBQztNQUNSLFdBQVcsRUFBRSxHQUFHO01BQ2hCLFdBQVcsRUFBRSxlQUFlLEdBQy9CO0VBR0wsQUFBQSxpQkFBaUIsQ0FBQztJQUNkLEtBQUssRUFBRSxNQUFNO0lBQUUsZ0RBQWdEO0lBQy9ELE1BQU0sRUFBRSxLQUFLO0lBQUUsdUVBQXVFLEVBc0J6RjtJQXhCRCxBQUdJLGlCQUhhLENBR2IsWUFBWSxDQUFDO01BQ1QsS0FBSyxFQUFFLE1BQU07TUFBRSxrRkFBa0Y7TUFDakcsSUFBSSxFQUFFLE1BQU07TUFBRSx5REFBeUQsRUFDMUU7SUFOTCxBQVFJLGlCQVJhLENBUWIsYUFBYSxDQUFDO01BQ1YsV0FBVyxFQUFFLEdBQUc7TUFBRSwyRUFBMkU7TUFDN0YsWUFBWSxFQUFFLEdBQUc7TUFBRSwyRUFBMkUsRUFDakc7SUFYTCxBQWFJLGlCQWJhLENBYWIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLG9EQUFvRCxFQUMzRTtJQWZMLEFBaUJJLGlCQWpCYSxDQWlCYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxLQUFLO01BQUUsd0RBQXdELEVBQy9FO0lBbkJMLEFBcUJJLGlCQXJCYSxDQXFCYixhQUFhLEFBQUEsY0FBYyxDQUFDO01BQ3hCLFdBQVcsRUFBRSxNQUFNO01BQUUsOEVBQThFLEVBQ3RHO0VBR0wsQUFBQSxTQUFTLENBQUM7SUFDTixLQUFLLEVBQUUsS0FBSztJQUFFLG1DQUFtQztJQUNqRCxNQUFNLEVBQUUsS0FBSztJQUFFLG1FQUFtRTtJQUNsRixVQUFVLEVBQUUsQ0FBQztJQUFFLGlCQUFpQjtJQUNoQyxVQUFVLEVBQUUsb0JBQW9CO0lBQUUsMEZBQTBGLEVBQy9IO0VBRUQsQUFBQSxTQUFTLENBQUM7SUFDTixLQUFLLEVBQUUsS0FBSztJQUFFLG1DQUFtQztJQUNqRCxNQUFNLEVBQUUsS0FBSztJQUFFLDhEQUE4RDtJQUM3RSxVQUFVLEVBQUUsSUFBSTtJQUFFLHFEQUFxRDtJQUN2RSxhQUFhLEVBQUUsSUFBSTtJQUFFLHFEQUFxRCxFQUM3RTs7QUFHTCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFDN0QsQUFBQSxpQkFBaUIsQ0FBQztJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixHQUFHLEVBQUUsS0FBSztJQUNWLE9BQU8sRUFBRSxJQUFJLEdBa0JoQjtJQXRCRCxBQU1JLGlCQU5hLENBTWIsVUFBVSxFQU5kLGlCQUFpQixDQU1ELFdBQVcsQ0FBQztNQUNwQixLQUFLLEVBQUUsQ0FBQztNQUNSLE1BQU0sRUFBRSxDQUFDO01BQ1QsVUFBVSxFQUFFLHNCQUFzQjtNQUNsQyxhQUFhLEVBQUUsc0JBQXNCLEdBQ3hDO0lBWEwsQUFhSSxpQkFiYSxDQWFiLFVBQVUsQ0FBQztNQUNQLFdBQVcsRUFBRSxHQUFHO01BQ2hCLFlBQVksRUFBRSxlQUFlLEdBQ2hDO0lBaEJMLEFBa0JJLGlCQWxCYSxDQWtCYixXQUFXLENBQUM7TUFDUixXQUFXLEVBQUUsR0FBRztNQUNoQixXQUFXLEVBQUUsZUFBZSxHQUMvQjtFQUdMLEFBQUEsaUJBQWlCLENBQUM7SUFDZCxLQUFLLEVBQUUsTUFBTTtJQUFFLGdEQUFnRDtJQUMvRCxNQUFNLEVBQUUsS0FBSztJQUFFLHVFQUF1RSxFQXNCekY7SUF4QkQsQUFHSSxpQkFIYSxDQUdiLFlBQVksQ0FBQztNQUNULEtBQUssRUFBRSxNQUFNO01BQUUsa0ZBQWtGO01BQ2pHLElBQUksRUFBRSxNQUFNO01BQUUseURBQXlELEVBQzFFO0lBTkwsQUFRSSxpQkFSYSxDQVFiLGFBQWEsQ0FBQztNQUNWLFdBQVcsRUFBRSxHQUFHO01BQUUsMkVBQTJFO01BQzdGLFlBQVksRUFBRSxHQUFHO01BQUUsMkVBQTJFLEVBQ2pHO0lBWEwsQUFhSSxpQkFiYSxDQWFiLGFBQWEsQUFBQSxjQUFjLENBQUM7TUFDeEIsV0FBVyxFQUFFLEtBQUs7TUFBRSxvREFBb0QsRUFDM0U7SUFmTCxBQWlCSSxpQkFqQmEsQ0FpQmIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLHdEQUF3RCxFQUMvRTtJQW5CTCxBQXFCSSxpQkFyQmEsQ0FxQmIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsTUFBTTtNQUFFLDhFQUE4RSxFQUN0RztFQUdMLEFBQUEsU0FBUyxDQUFDO0lBQ04sS0FBSyxFQUFFLEtBQUs7SUFBRSxvQ0FBb0M7SUFDbEQsTUFBTSxFQUFFLEtBQUs7SUFBRSxtRUFBbUU7SUFDbEYsVUFBVSxFQUFFLENBQUM7SUFBRSxpQkFBaUI7SUFDaEMsVUFBVSxFQUFFLG9CQUFvQjtJQUFFLDBGQUEwRixFQUMvSDtFQUVELEFBQUEsU0FBUyxDQUFDO0lBQ04sS0FBSyxFQUFFLEtBQUs7SUFBRSxvQ0FBb0M7SUFDbEQsTUFBTSxFQUFFLEtBQUs7SUFBRSw4REFBOEQ7SUFDN0UsVUFBVSxFQUFFLElBQUk7SUFBRSxxREFBcUQ7SUFDdkUsYUFBYSxFQUFFLElBQUk7SUFBRSxxREFBcUQsRUFDN0U7O0FBR0wsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFQUNyQyxBQUFBLGlCQUFpQixDQUFDO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEdBQUcsRUFBRSxLQUFLO0lBQ1YsT0FBTyxFQUFFLElBQUksR0FrQmhCO0lBdEJELEFBTUksaUJBTmEsQ0FNYixVQUFVLEVBTmQsaUJBQWlCLENBTUQsV0FBVyxDQUFDO01BQ3BCLEtBQUssRUFBRSxDQUFDO01BQ1IsTUFBTSxFQUFFLENBQUM7TUFDVCxVQUFVLEVBQUUsc0JBQXNCO01BQ2xDLGFBQWEsRUFBRSxzQkFBc0IsR0FDeEM7SUFYTCxBQWFJLGlCQWJhLENBYWIsVUFBVSxDQUFDO01BQ1AsV0FBVyxFQUFFLEdBQUc7TUFDaEIsWUFBWSxFQUFFLGVBQWUsR0FDaEM7SUFoQkwsQUFrQkksaUJBbEJhLENBa0JiLFdBQVcsQ0FBQztNQUNSLFdBQVcsRUFBRSxHQUFHO01BQ2hCLFdBQVcsRUFBRSxlQUFlLEdBQy9CO0VBR0wsQUFBQSxpQkFBaUIsQ0FBQztJQUNkLEtBQUssRUFBRSxNQUFNO0lBQUUsZ0RBQWdEO0lBQy9ELE1BQU0sRUFBRSxLQUFLO0lBQUUsc0NBQXNDO0lBQ3JELGNBQWMsRUFBRSxHQUFHO0lBQUUsb0NBQW9DLEVBc0I1RDtJQXpCRCxBQUlJLGlCQUphLENBSWIsWUFBWSxDQUFDO01BQ1QsS0FBSyxFQUFFLE1BQU07TUFBRSxrRkFBa0Y7TUFDakcsSUFBSSxFQUFFLE1BQU07TUFBRSx5REFBeUQsRUFDMUU7SUFQTCxBQVNJLGlCQVRhLENBU2IsYUFBYSxDQUFDO01BQ1YsV0FBVyxFQUFFLEdBQUc7TUFBRSxzRkFBc0Y7TUFDeEcsWUFBWSxFQUFFLEdBQUc7TUFBRSxzRkFBc0YsRUFDNUc7SUFaTCxBQWNJLGlCQWRhLENBY2IsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLG9EQUFvRCxFQUMzRTtJQWhCTCxBQWtCSSxpQkFsQmEsQ0FrQmIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsS0FBSztNQUFFLHdEQUF3RCxFQUMvRTtJQXBCTCxBQXNCSSxpQkF0QmEsQ0FzQmIsYUFBYSxBQUFBLGNBQWMsQ0FBQztNQUN4QixXQUFXLEVBQUUsTUFBTTtNQUFFLDhFQUE4RSxFQUN0RztFQUdMLEFBQUEsU0FBUyxDQUFDO0lBQ04sS0FBSyxFQUFFLEtBQUs7SUFBRSxvQ0FBb0M7SUFDbEQsTUFBTSxFQUFFLEtBQUs7SUFBRSxtRUFBbUU7SUFDbEYsVUFBVSxFQUFFLENBQUM7SUFBRSxpQkFBaUI7SUFDaEMsVUFBVSxFQUFFLG9CQUFvQjtJQUFFLDBGQUEwRixFQUMvSDtFQUVELEFBQUEsU0FBUyxDQUFDO0lBQ04sS0FBSyxFQUFFLEtBQUs7SUFBRSxvQ0FBb0M7SUFDbEQsTUFBTSxFQUFFLEtBQUs7SUFBRSxpRUFBaUU7SUFDaEYsVUFBVSxFQUFFLElBQUk7SUFBRSxxREFBcUQ7SUFDdkUsYUFBYSxFQUFFLElBQUk7SUFBRSxxREFBcUQsRUFDN0UifQ== */
