*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}
::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}
  /********************* CSS RESET  **************************************/
  /* https://piccalil.li/blog/a-modern-css-reset/ */

  /* Box sizing rules */
  *, *::before, *::after {
    box-sizing: border-box;
  }

  * {
    margin: 0;
    padding: 0;
  }

  /* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
  ul[role="list"], ol[role="list"], ul, ol {
    list-style: none;
  }

  /* Set core root defaults */
  html:focus-within {
    scroll-behavior: smooth;
  }

  html, body {
    height: 100%;
  }

  /* Set core body defaults */
  body {
    text-rendering: optimizeSpeed;
    line-height: 1.5;
  }

  /* A elements that don't have a class get default styles */
  a:not([class]) {
    -webkit-text-decoration-skip: ink;
            text-decoration-skip-ink: auto;
  }

  /* Make images easier to work with */
  img, picture, svg {
    max-width: 100%;
    display: block;
  }

  /* Inherit fonts for inputs and buttons */
  input, button, textarea, select {
    font: inherit;
  }

  /* remove animations for people who've turned them off */
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      scroll-behavior: auto !important;
    }
  }

  /* RESET Added by TBones*/

  body a:where(:not(.wp-element-button)), a {
    text-decoration: none;
  }
  body{
  --tw-bg-opacity: 1;
  background-color: rgb(217 217 217 / var(--tw-bg-opacity));
}

  p{
  font-size: 1rem;
}

  @media (min-width: 768px){
  p{
    font-size: 1.25rem;
  }
}
.visible{
  visibility: visible;
}
.static{
  position: static;
}
.fixed{
  position: fixed;
}
.absolute{
  position: absolute;
}
.relative{
  position: relative;
}
.sticky{
  position: sticky;
}
.bottom-0{
  bottom: 0px;
}
.left-10{
  left: 2.5rem;
}
.right-10{
  right: 2.5rem;
}
.top-0{
  top: 0px;
}
.block{
  display: block;
}
.flex{
  display: flex;
}
.table{
  display: table;
}
.hidden{
  display: none;
}
.size-full{
  width: 100%;
  height: 100%;
}
.h-10{
  height: 2.5rem;
}
.min-h-fit{
  min-height: -moz-fit-content;
  min-height: fit-content;
}
.w-1\/3{
  width: 33.333333%;
}
.w-10{
  width: 2.5rem;
}
.w-full{
  width: 100%;
}
.flex-row{
  flex-direction: row;
}
.flex-col{
  flex-direction: column;
}
.space-x-5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(1.25rem * var(--tw-space-x-reverse));
  margin-left: calc(1.25rem * calc(1 - var(--tw-space-x-reverse)));
}
.overflow-hidden{
  overflow: hidden;
}
.border{
  border-width: 1px;
}
.bg-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.p-10{
  padding: 2.5rem;
}
.p-5{
  padding: 1.25rem;
}
.px-0{
  padding-left: 0px;
  padding-right: 0px;
}
.px-4{
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-8{
  padding-left: 2rem;
  padding-right: 2rem;
}
.pt-12{
  padding-top: 3rem;
}
.pt-4{
  padding-top: 1rem;
}
.align-middle{
  vertical-align: middle;
}
.font-bold{
  font-weight: 700;
}
.uppercase{
  text-transform: uppercase;
}
.text-clr-primary{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.shadow{
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sh-01{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);;
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.transition{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
/* Import variables */
/* ------------------- */
/* All variables   */
/* ------------------- */
/*
  TODO Next things to implement in theme
 - Fluid typography (https://www.smashingmagazine.com/2022/01/modern-fluid-typography-css-clamp/)
 - Keep theme.json values mobile first as tailwind is mobile first

*/
/*************** BreakPoints - tailwind.config.json ***************

    xs: "480px",
    sm: "640px",
    md: "768px",
    lg: "1024px",
    xl: "1280px",
    2xl: "1536px",

  - Tailwind (CSS) usage
  ----------------------------------------
  theme(screens.xs)

  */
/*************** Font Sizes ******************************

- Slugs
----------------------------------------
fs-xs - 12px / 0.75rem
fs-sm - 14px / 0.875rem
fs-custom - 15px / 0.938rem
fs-base - 16px / 1rem
fs-lg - 18px / 1.125rem
fs-xl - 20px / 1.25rem
fs-2-xl - 24px / 1.5rem
fs-3-xl - 30px / 1.875rem
fs-4-xl - 36px / 2.25rem
fs-max-36 - 36px
fs-max-48 - 48px
fs-max-60 - 60px
fs-max-72 - 72px

- Tailwind usage
----------------------------------------
text-fs-xs

- WP usage
----------------------------------------
--wp--preset--font-size--fs-xs
--wp--preset--font-size--fs-custom
--wp--preset--font-size--fs-sm
--wp--preset--font-size--fs-base
--wp--preset--font-size--fs-lg
--wp--preset--font-size--fs-xl
--wp--preset--font-size--fs-2-xl
--wp--preset--font-size--fs-3-xl
--wp--preset--font-size--fs-4-xl
--wp--preset--font-size--fs-max-36
--wp--preset--font-size--fs-max-48
--wp--preset--font-size--fs-max-60
--wp--preset--font-size--fs-max-72

*/
/*************** Colors ******************************

- Slugs
----------------------------------------
clr-base - #F4F4F4 // Rutgers Light Grey
clr-primary - #CC0033 // Rutgers Red
clr-secondary - #5F6A72 // Rutgers Dark grey
clr-white - #fff
clr-black - #000

- Tailwind usage
----------------------------------------
text-clr-base
bg-clr-base
border-clr-base

- WP variables
----------------------------------------
--wp--preset--color--clr-base
--wp--preset--color--clr-primary
--wp--preset--color--clr-secondary
--wp--preset--color--clr-white
--wp--preset--color--clr-black

*/
/*************** Font Families ******************************
/*
- WP based names
----------------------------------------

--ff-sans: var(--wp--preset--font-family--ff-source-sans);

*/
/*************** Font Weights ******************************

 - Slugs
 ----------------------------------------
 fw-thin: 100;
 fw-extra-light: 200;
 fw-light: 300;
 fw-regular: 400;
 fw-medium: 500;
 fw-semi-bold: 600;
 fw-bold: 700;
 fw-extra-bold: 800;
 fw-black: 900;

 - Tailwind usage
 ----------------------------------------
 font-fw-thin

 - WP usage
 ----------------------------------------
--wp--custom--typography--font-weight--fw-thin
--wp--custom--typography--font-weight--fw-extra-light
--wp--custom--typography--font-weight--fw-light
--wp--custom--typography--font-weight--fw-regular
--wp--custom--typography--font-weight--fw-medium
--wp--custom--typography--font-weight--fw-semi-bold
--wp--custom--typography--font-weight--fw-bold
--wp--custom--typography--font-weight--fw-extra-bold
--wp--custom--typography--font-weight--fw-black


*/
/*************** Line Heights ******************************

- Slugs
----------------------------------------

lh-none	    //  1;
lh-tight	//  1.25;
lh-snug	    //  1.375;
lh-normal	//  1.5;
lh-relaxed	//  1.625;
lh-loose	//  2;

- WP usage
----------------------------------------
--wp--custom--typography--line-height--lh-none: 1;
--wp--custom--typography--line-height--lh-tight: 1.25;
--wp--custom--typography--line-height--lh-snug: 1.375;
--wp--custom--typography--line-height--lh-normal: 1.5;
--wp--custom--typography--line-height--lh-relaxed: 1.625;
--wp--custom--typography--line-height--lh-loose: 2;

*/
/*************** Spacing ******************************

 - Slugs
 ----------------------------------------
sp-0  // 0 - 0;
sp-xs  // 0.5rem - 8px;
sp-sm  // 1rem - 16px;
sp-base  // 1.5rem - 24px;
sp-lg: // 2rem - 32px;
sp-xl: // 2.5rem - 40px;
sp-inner: // 2rem - 40px;


- tailwind classes
----------------------------------------
p-sp-0
p-sp-xs


- WP usage
----------------------------------------
--wp--preset--spacing--sp-0  // 0 - 0;
--wp--preset--spacing--sp-xs  // 0.5rem - 8px;
--wp--preset--spacing--sp-sm  // 1rem - 16px;
--wp--preset--spacing--sp-base  // 1.5rem - 24px;
--wp--preset--spacing--sp-lg: // 2rem - 32px;
--wp--preset--spacing--sp-xl: // 2.5rem - 40px;


*/
/*************** layout Sizes ******************************

- WP based names
----------------------------------------
 --wp--style--global--content-size         // 1200px;
 --wp--style--global--wide-size             // 1280px;

*/
/*************** Block Gap ******************************

- WP based names
----------------------------------------
 --wp--style--block-gap

*/
:root {
  --ff-sans: var(--wp--preset--font-family--ff-source-sans);
}
/* Resets */
/* CSS Reset */
/* Spacings */
/* Vertical Spacings */
:root body .wp-site-blocks > * + *, :root body .is-layout-constrained > * + * {
      margin-block-start: var(--wp--preset--spacing--sp-base);
    }
:root body header + .wp-block-post-content {
      margin: 0;
    }
:root body .wp-site-blocks h1 + *, :root body .wp-site-blocks h2 + *, :root body .wp-site-blocks h3 + *, :root body .wp-site-blocks h4.h5 + *, :root body .wp-site-blocks h6 + * {
          margin-block-start: var(--wp--preset--spacing--sp-sm);
        }
@media screen and (min-width: 768px) {
      :root body .wp-site-blocks > * + *, :root body .is-layout-constrained > * + * {
        margin-block-start: var(--wp--preset--spacing--sp-xl);
      }
          :root body .wp-site-blocks h1 + *, :root body .wp-site-blocks h2 + *, :root body .wp-site-blocks h3 + *, :root body .wp-site-blocks h4.h5 + *, :root body .wp-site-blocks h6 + * {
            margin-block-start: var(--wp--preset--spacing--sp-base);
          }
    }
/*Exceptions*/
.ta-video-container {
  gap: var(--wp--preset--spacing--sp-sm) !important;
}
.ta-video-container h3 + * {
    margin-block-start: var(--wp--preset--spacing--sp-xs);
  }
/* Import Block/Templates/Patterns Styles */
body h1, body h2, body.editor-styles-wrapper h1{
  font-size: 1.5rem;
}
@media (min-width: 768px){
  body h1, body h2, body.editor-styles-wrapper h1{
    font-size: 36px;
  }
}
body h3{
  font-size: 1rem;
  line-height: 1.25;
}
@media (min-width: 768px){
  body h3{
    font-size: 1.25rem;
  }
}
body h2.ta-secondary-heading{
  --tw-text-opacity: 1;
  color: rgb(233 94 90 / var(--tw-text-opacity));
}
body h1{
  --tw-text-opacity: 1;
  color: rgb(200 252 202 / var(--tw-text-opacity));
}
.sidebar h3{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
@media (min-width: 1024px){
  .sidebar h3{
    font-size: 1.5rem;
  }
}
.sidebar .ta-sidebar-search h3{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
@media (min-width: 1024px){
  .sidebar .ta-sidebar-search h3{
    font-size: 1.25rem;
  }
}
/* Bulletted list */
.ta-bulleted-list{
  margin-left: 0.125rem;
}
.ta-bulleted-list li {
    display: flex;
  }
.ta-bulleted-list li:before {
      content: url("/wp-content/uploads/2022/12/right-caret.svg");
      margin-right: 10px;
    }
/* Quick Links */
div div.wp-block-group.ta-quick-links{
  margin-top: 1.25rem;
  margin-bottom: 0.75rem;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
}
div div.wp-block-group.ta-quick-links > p{
  padding-bottom: 0.5rem;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 700;
}
div div.wp-block-group.ta-quick-links .wp-block-navigation__container{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
}
div div.wp-block-group.ta-quick-links .wp-block-navigation__container .wp-block-navigation-item__content{
  border-width: 0px;
  border-bottom-width: 2px;
  border-style: solid;
  border-color: transparent;
  padding-bottom: 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
  text-decoration-line: none;
      font-size: clamp(0.86rem, 1.3vw, 1rem);
}
div div.wp-block-group.ta-quick-links .wp-block-navigation__container .wp-block-navigation-item__content:hover{
  border-width: 0px;
  border-bottom-width: 2px;
  --tw-border-opacity: 1;
  border-color: rgb(58 146 141 / var(--tw-border-opacity));
}
@media screen and (min-width: 1024px) and (max-width: 1100px) {
  div div.ta-quick-links{
    flex-direction: column;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--sp-00);
  }
}
.ta-qucklinks-2{
  margin-top: 1rem !important;
}
@media (min-width: 1024px){
  .ta-qucklinks-2{
    display: none;
  }
}
.ta-qucklinks-2 .wp-block-navigation__container{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
}
.ta-qucklinks-2 .wp-block-navigation-item{
  margin-right: 0.25rem;
  margin-top: 0.75rem;
}
@media (min-width: 640px){
  .ta-qucklinks-2 .wp-block-navigation-item{
    margin-right: 0.5rem;
  }
}
/* for tags & categories, and quick links */
.ta-tags, .ta-qucklinks-2 .wp-block-navigation-item, .ta-category-listing .ta-tags, .ta-category-listing [rel="tag"], .ta-category-listing a{
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(58 146 141 / var(--tw-bg-opacity));
  padding: 0.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.is-layout-constrained.ta-tags,.is-layout-constrained .ta-qucklinks-2 .wp-block-navigation-item,.is-layout-constrained .ta-category-listing .ta-tags,.is-layout-constrained .ta-category-listing [rel="tag"],.is-layout-constrained .ta-category-listing a{
 background-color:;
  background-color: #3a928d;
}
@media (min-width: 640px){
  .ta-tags, .ta-qucklinks-2 .wp-block-navigation-item, .ta-category-listing .ta-tags, .ta-category-listing [rel="tag"], .ta-category-listing a{
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}
.ta-tags a, .ta-qucklinks-2 .wp-block-navigation-item a, .ta-category-listing .ta-tags a, .ta-category-listing [rel="tag"] a, .ta-category-listing a a{
  text-decoration-line: none;
}
@media screen and (min-width: 1024px) {
.ta-tags, .ta-qucklinks-2 .wp-block-navigation-item, .ta-category-listing .ta-tags, .ta-category-listing [rel="tag"], .ta-category-listing a{
    background-color: transparent;
    padding: 0.25rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(58 146 141 / var(--tw-text-opacity));
  }
  }
/* Hamburger Menu */
.hamburger {
  cursor: pointer;
  width: 24px;
  height: 24px;
  transition: all 0.25s;
  position: relative;
}
.hamburger-top, .hamburger-middle, .hamburger-bottom {
  position: absolute;
  width: 24px;
  height: 2px;
  top: 0;
  left: 0;
  transform: rotate(0);
  transition: all 0.5s;
  --tw-bg-opacity: 1;
  background-color: rgb(58 146 141 / var(--tw-bg-opacity));
}
.is-layout-constrained.hamburger-top,.is-layout-constrained .hamburger-middle,.is-layout-constrained .hamburger-bottom{
 background-color:;
  background-color: #3a928d;
}
.hamburger-middle {
  transform: translateY(7px);
}
.hamburger-bottom {
  transform: translateY(14px);
}
.open {
  transform: rotate(90deg);
}
.open .hamburger-top {
  transform: rotate(45deg) translateY(6px) translateX(6px);
}
.open .hamburger-middle {
  display: none;
}
.open .hamburger-bottom {
  transform: rotate(-45deg) translateY(6px) translateX(-6px);
}
.dropdown:hover .dropdown-menu {
  display: block;
}
.dropdown:hover > a{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.active-nav-item-parent > a{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.wp-block-navigation__submenu-container
  .wp-block-navigation-item.current-menu-item{
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(217 217 217 / var(--tw-bg-opacity));
}
.wp-block-navigation__container > .current-menu-item > a{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.dropdown-menu{
  z-index: 50;
}
.dropdown-menu > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}
.dropdown-menu{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 0.75rem;
}
.dropdown-menu li{
  padding: 0.75rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.dropdown-menu li:hover{
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(217 217 217 / var(--tw-bg-opacity));
}
.dropdown-menu p{
  font-size: 0.875rem;
}
#site-menu-wrapper .dropdown-menu a{
  text-decoration-line: none;
}
#site-menu-wrapper .dropdown-menu a:hover{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
#site-menu-wrapper .ta-desktop-nav{
  display: none;
  flex-direction: row;
  justify-content: flex-end;
}
@media (min-width: 1024px){
  #site-menu-wrapper .ta-desktop-nav{
    display: flex;
  }
  #site-menu-wrapper .ta-desktop-nav > :not([hidden]) ~ :not([hidden]){
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
  }
  #site-menu-wrapper .ta-desktop-nav{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
@media (min-width: 1280px){
  #site-menu-wrapper .ta-desktop-nav > :not([hidden]) ~ :not([hidden]){
    --tw-space-x-reverse: 0;
    margin-right: calc(2rem * var(--tw-space-x-reverse));
    margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));
  }
  #site-menu-wrapper .ta-desktop-nav{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
#site-menu-wrapper > ul > li > a{
  text-decoration-line: none;
}
@media (min-width: 1024px){
  #site-menu-wrapper > ul > li > a{
    font-size: 1rem;
  }
}
@media screen and (min-width: 1024px) {
#site-menu-wrapper > ul > li > a {
      font-size: clamp(0.9rem, 1.5vw, 1.25rem)
  }
    }
/* Main Navigation Style using Core block */
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container{
  flex-direction: row;
  justify-content: flex-end;
  gap: 0px;
}
@media (min-width: 1024px){
  .ta-desktop-nav.wp-block-navigation .wp-block-navigation__container{
    display: flex;
  }
  .ta-desktop-nav.wp-block-navigation .wp-block-navigation__container > :not([hidden]) ~ :not([hidden]){
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
  }
  .ta-desktop-nav.wp-block-navigation .wp-block-navigation__container{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
@media (min-width: 1280px){
  .ta-desktop-nav.wp-block-navigation .wp-block-navigation__container > :not([hidden]) ~ :not([hidden]){
    --tw-space-x-reverse: 0;
    margin-right: calc(2rem * var(--tw-space-x-reverse));
    margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));
  }
  .ta-desktop-nav.wp-block-navigation .wp-block-navigation__container{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .active-nav-item-parent, .ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .active-nav-item-top-lvl{
  background-color: transparent !important;
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .active-nav-item{
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(217 217 217 / var(--tw-bg-opacity));
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .active-nav-item .wp-block-navigation-item__description{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .active-nav-item.active-nav-item-top-lvl{
  border-radius: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item{
  position: relative;
  display: inline-block;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item a{
  font-weight: 700;
  text-decoration-line: none;
}
@media (min-width: 1024px){
  .ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item a{
    font-size: 1rem;
  }
}
@media screen and (min-width: 1024px) {
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item a {
          font-size: clamp(0.86rem, 1.3vw, 1.25rem)
      }
        }
/* submenu container */
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container{
  z-index: 50;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container{
  border-style: none;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 0.75rem;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container li {
        }
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container p{
  font-size: 0.875rem;
}
/* submenu single item */
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item{
  padding: 0.75rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item:hover{
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(217 217 217 / var(--tw-bg-opacity));
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item:hover .wp-block-navigation-item__description{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content{
  display: block;
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__label{
  display: block;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__description{
  display: block;
  font-weight: 400;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__responsive-container-close svg, .ta-desktop-nav.wp-block-navigation .wp-block-navigation__responsive-container-open svg{
  fill: #3A928D;
}
/* Making about nav's submenu right aligned */
@media screen and (min-width: 1024px) {
.ta-desktop-nav.wp-block-navigation .ta-about-nav .wp-block-navigation__submenu-container {
        right: -10vw;
        left: unset
    }
      }
/* Fixing Responsiveness for the Main Menu */
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__responsive-container-open{
  display: flex;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__responsive-container-close{
  top: 1.5rem;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__responsive-container{
  display: none;
}
.ta-desktop-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open{
  display: flex;
}
@media screen and (min-width: 1024px) {
    .ta-desktop-nav.wp-block-navigation .wp-block-navigation__responsive-container-open{
    display: none;
  }
    .ta-desktop-nav.wp-block-navigation .wp-block-navigation__responsive-container{
    display: block;
  }
  }
.is-layout-constrained.bg-clr-primary{
 background-color:;
}
@media (min-width: 1024px){
  .ta-mobile-search{
    display: none;
  }
}
.wp-block-search .wp-block-search__button{
  margin-left: 0px;
  box-sizing: border-box;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(233 94 90 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(233 94 90 / var(--tw-bg-opacity));
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
.wp-block-search .wp-block-search__button{
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
    }
.wp-block-search .wp-block-search__inside-wrapper{
  border-radius: 10px;
  border-style: none;
}
.wp-block-search .wp-block-search__input{
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  border-width: 1px;
  border-right-width: 0px;
  border-style: solid;
  --tw-border-opacity: 1;
  border-color: rgb(233 94 90 / var(--tw-border-opacity));
  padding: 1rem;
}
/* Import templates, parts, patterns related styles */
/* Search results archive / Blog page styling */
/* search.html & archive.html */
.ta-page-title{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.ta-query-loop-wrapper .wp-block-post{
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 2rem;
}
.ta-query-loop-wrapper .wp-block-post:hover{
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.ta-query-loop-wrapper .wp-block-post-title, .ta-query-loop-wrapper .wp-block-post-title a{
  margin-top: 1.25rem;
  font-size: 1.875rem;
  --tw-text-opacity: 1;
  color: rgb(233 94 90 / var(--tw-text-opacity));
  text-decoration-line: none;
}
.ta-query-loop-wrapper .wp-block-post-author__content{
  display: flex;
}
.ta-query-loop-wrapper .wp-block-post-author__content .wp-block-post-author__byline{
  width: auto;
  white-space: nowrap;
  padding-right: 0.25rem;
  font-size: 1.25rem;
}
.ta-query-loop-wrapper .wp-post-image{
  border-radius: 10px;
}
/* Single blog page -  single.html */
.ta-single-post-content-wrapper .wp-block-post-title{
  margin-top: 1.25rem;
}
.ta-single-post-content-wrapper .wp-post-image{
  border-radius: 10px;
}
.ta-single-post-content-wrapper .wp-block-post-author__content{
  display: flex;
}
.ta-single-post-content-wrapper .wp-block-post-author__content .wp-block-post-author__byline{
  width: auto;
  font-size: 1.25rem;
}
.sidebar > .wp-block-group{
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 1.5rem;
}
/* Global styles */
/* BASIC STYLING */
.wp-block-post-content a, .wp-site-blocks a{
  text-decoration-line: underline;
}
.wp-block-post-content a:hover, .wp-site-blocks a:hover{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.wp-block-post-content .ta-qucklinks-2 a:hover{
  --tw-text-opacity: 1 !important;
  color: rgb(255 255 255 / var(--tw-text-opacity)) !important;
}
.wp-block-post-content .wp-element-button, .wp-block-post-content .wp-block-button__link{
  text-decoration-line: none;
}
.wp-block-post-content .wp-element-button:hover, .wp-block-post-content .wp-block-button__link:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.ta-quick-links .wp-block-group.is-layout-flex > p{
  padding-bottom: 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
}
/* menu style */
@media screen and (min-width: 1024px) {
        #site-menu-wrapper > ul > li > a {
          font-size: clamp(1.2rem, 1.3vw, 1.375rem);
        }
        .ta-desktop-nav.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item a {
          font-size: clamp(1.2rem, 1.3vw, 1.375rem);
        }
}
.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content{
  --tw-text-opacity: 1 !important;
  color: rgb(58 146 141 / var(--tw-text-opacity)) !important;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}
.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content:hover{
  --tw-text-opacity: 1 !important;
  color: rgb(233 94 90 / var(--tw-text-opacity)) !important;
}
/* menu style */
/* Sidebar Widgets */
.ta-sidebar-widget{
  border-radius: 0.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 1.75rem;
}
/* Custom Classes/Styling */
.ta-teamblock-name {
  font-size: 1.15rem !important;
  margin-bottom: 5px;
  font-weight: 700;
}
.ta-teamblock-details {
  text-transform: uppercase;
  margin-bottom: 5px;
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.ta-team-container h3 {
  /* font-size: 19px; */
}
.ta-team-container .ta-section-wrapper p {
  font-size: 13px;
  line-height: 1.35;
}
.ta-rounded-border {
  border-radius: 10px;
}
.ta-rounded-border-div {
  border-radius: 0 0 10px 10px;
}
.sfas-carousel .swiper-button-prev {
  background-image: url(/wp-content/uploads/2022/12/caroussel-arrow-left.svg);
}
.sfas-carousel .swiper-button-next {
  background-image: url(/wp-content/uploads/2022/12/caroussel-arrow-right.svg);
}
.sfas-carousel .swiper-button-prev, .sfas-carousel .swiper-button-next {
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center;
  height: 2.5rem;
  width: 2.5rem;
  top: 40%;
}
.sfas-carousel .swiper-button-next:after, .sfas-carousel .swiper-button-prev:after {
  display: none;
}
@media screen and (min-width: 976px) and (max-width: 1135px) {
  #top-header .ta-header-logo-container {
    max-width: 22%;
  }

  #top-header .ta-header-logo {
    width: 70%;
  }
}
#ta-sidebar input {
    font-size: 1rem;
  }
#ta-sidebar .ta-tags {
    border-radius: 8px;
  }
.ta-image-text-block-wrapper h2{
  margin-bottom: 0.75rem;
}
.ta-item-spacings p, .ta-image-text-block-wrapper p{
  margin-bottom: 0.75rem;
}
.ta-image-text-block-wrapper p{
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.ta-sidebar-search{
  display: none;
}
@media (min-width: 1024px){
  .ta-sidebar-search{
    display: block;
  }
}
.ta-mobile-search{
  display: block;
}
@media (min-width: 1024px){
  .ta-mobile-search{
    display: none;
  }
}
/* Staff page */
.ta-team-member-wrapper{
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  border-radius: 0.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.ta-team-member-wrapper img {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
  }
.ta-team-member-wrapper .ta-team-member-wrapper-inner{
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  align-self: flex-start;
}
@media not all and (min-width: 640px){
  .ta-team-member-wrapper .ta-team-member-wrapper-inner{
    padding-left: 1.75rem;
    padding-right: 1.75rem;
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
  }
}
@media (min-width: 640px){
  .ta-team-member-wrapper .ta-team-member-wrapper-inner{
    flex-direction: row;
    align-items: flex-start;
  }
}
.ta-team-member-wrapper .ta-team-member-avatar{
  width: 100%;
}
@media not all and (min-width: 1024px){
  .ta-team-member-wrapper .ta-team-member-avatar{
    max-width: none;
  }
}
@media not all and (min-width: 768px){
  .ta-team-member-wrapper .ta-team-member-avatar{
    width: 11rem;
  }
}
@media not all and (min-width: 640px){
  .ta-team-member-wrapper .ta-team-member-avatar{
    width: 10rem;
  }
}
@media (min-width: 768px){
  .ta-team-member-wrapper .ta-team-member-avatar{
    width: 13rem;
  }
}
/* Lottie Container */
.wp-site-blocks .ta-lottie-container{
  margin-top: 0px;
  margin-block-start: var(--wp--preset--spacing--sp-0) !important;
}
/* Headers */
body .ta-header-1{
  --tw-bg-opacity: 1;
  background-color: rgb(217 217 217 / var(--tw-bg-opacity));
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
    background-color: #f4f0ee;
}
body .ta-header-1 .wp-block-site-logo .custom-logo{
  max-height: 85px !important;
  width: 10rem;
}
@media (min-width: 1024px){
  body .ta-header-1 .wp-block-site-logo .custom-logo{
    width: 20rem;
  }
}
body .wp-site-blocks .ta-header-2-wrapper, body .wp-site-blocks .ta-header-1 {
  margin-block-start: 0;
}
body .wp-block-group.ta-header-2{
  display: none;
}
@media (min-width: 1024px){
  body .wp-block-group.ta-header-2{
    display: flex;
  }
}
.ta-header-2, .ta-header-2-wrapper{
  display: none;
}
@media (min-width: 1024px){
  .ta-header-2, .ta-header-2-wrapper{
    display: block;
  }
}
/* Featured Items */
body .ta-featured-items.wp-block-group > * + * {
    margin-block-start: 0;
  }
body .ta-featured-items.wp-block-group .is-layout-flow > * + * {
    margin-block-start: 0;
  }
body .ta-featured-items.wp-block-group .wp-block-columns {
    gap: 0;
  }
body .ta-featured-items.wp-block-group h4{
  margin-top: 0px;
  background-image: url("../images/bullet-icon.svg");
  background-position: left top 0.25rem;
  background-repeat: no-repeat;
  padding-left: 1.25rem;
  text-align: left;
  line-height: 1.5rem;
}
body .ta-featured-items.wp-block-group .ta-flex-fix-featured {
    flex-grow: 1;
  }
@media screen and (min-width: 768px) and (max-width: 1024px) {
body .ta-featured-items.wp-block-group .ta-flex-fix-featured {
      flex-wrap: wrap !important
  }

      body .ta-featured-items.wp-block-group .ta-flex-fix-featured .wp-block-column {
        flex: 50%;
      }
    }
body .ta-featured-items.wp-block-group figure.wp-block-image{
  display: none;
}
@media screen and (min-width: 1024px) {
    body .ta-featured-items.wp-block-group > * + * {
      margin-block-start: var(--wp--preset--spacing--sp-xl);
    }

    body .ta-featured-items.wp-block-group .is-layout-flow > * + * {
      margin-block-start: var(--wp--preset--spacing--sp-base);
    }

    body .ta-featured-items.wp-block-group .wp-block-columns {
      gap: var(--wp--preset--spacing--sp-base);
    }

    body .ta-featured-items.wp-block-group figure.wp-block-image{
    display: table;
  }

    body .ta-featured-items.wp-block-group h4{
    margin-top: 1.25rem;
    background-image: none;
    padding-left: 0px;
    text-align: center;
    font-size: 1.125rem;
  }
  }
/* ==========================To be removed================================= */
/* Student Success Stories / Sidebar Blog Widget  */
/* for backward compatibility */
.ta-sidebar-blog-widget{
  display: flex;
  flex-direction: column;
}
.ta-sidebar-blog-widget > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget, .ta-sidebar-blog-widget .ta-sidebar-blog-widget{
  display: flex;
  flex-direction: column;
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget > :not([hidden]) ~ :not([hidden]), .ta-sidebar-blog-widget .ta-sidebar-blog-widget > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item{
  display: flex;
  flex-direction: column;
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item > :not([hidden]) ~ :not([hidden]), .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item{
  border-width: 0px;
  border-bottom-width: 1px;
  border-style: solid;
  border-color: rgb(233 94 90 / var(--tw-border-opacity));
  --tw-border-opacity: 0.3;
  padding-bottom: 1.5rem;
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item:last-child, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item:last-child{
  border-width: 0px;
  padding-bottom: 0px;
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item a, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item a{
  text-decoration-line: none;
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item .ta-post-title, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item .ta-post-title{
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 700;
}
@media screen and (min-width: 1200px) {
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item .ta-post-title, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item .ta-post-title {
        color: green !important
    }
      }
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item .ta-author, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item .ta-author{
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 700;
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item .ta-post-date, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item .ta-post-date{
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.wp-block-tbones-p-post-list .ta-sidebar-blog-widget__blog-item .ta-name-initials a, .ta-sidebar-blog-widget .ta-sidebar-blog-widget__blog-item .ta-name-initials a{
  display: flex;
  height: 3rem;
  width: 3rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(233 94 90 / var(--tw-bg-opacity));
  text-transform: uppercase;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.ta-category-listing{
  margin-bottom: 0px;
  display: block;
  gap: 0.25rem;
}
.ta-category-listing .ta-tags, .ta-category-listing [rel="tag"], .ta-category-listing a{
  margin-bottom: 0.25rem;
  margin-right: 0.25rem;
  display: inline-block;
}
@media screen and (min-width: 976px) {
.ta-category-listing .ta-tags, .ta-category-listing [rel="tag"], .ta-category-listing a{
    --tw-bg-opacity: 1;
    background-color: rgb(58 146 141 / var(--tw-bg-opacity));
    font-size: 0.75rem;
    line-height: 1rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
    text-decoration-line: none;
  }
.is-layout-constrained.ta-category-listing .ta-tags,.is-layout-constrained .ta-category-listing [rel="tag"],.is-layout-constrained .ta-category-listing a{
 background-color:;
  background-color: #3a928d;
}
    }
.ta-category-listing .ta-tags:hover, .ta-category-listing [rel="tag"]:hover, .ta-category-listing a:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.ta-category-listing .wp-block-post-terms__separator{
  display: none;
}
/* ==========================To be removed ends================================= */
/* Video Popup */
.wpzoom-video-popup-block_icon path{
  fill: #fff;
}
/* Footer Styling */
.ta-footer-container.is-layout-constrained{
  margin-top: 2.5rem;
  padding: 1.5rem;
}
.ta-footer-container.is-layout-constrained a{
  text-decoration-line: none;
}
.ta-footer-container.is-layout-constrained a:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.ta-footer-container.is-layout-constrained > .wp-block-group:first-child{
  margin-top: 2rem;
}
.ta-footer-container.is-layout-constrained > * + * {
    margin-block-start: 3rem;
  }
.ta-footer-container.is-layout-constrained .ta-footer__bottom-text{
  font-size: 0.875rem;
}
.ta-footer-container.is-layout-constrained .ta-footer__bottom-text p{
  font-size: 1rem;
}
.ta-footer-container.is-layout-constrained .ta-footer__main-nav .wp-block-navigation-item__content{
  font-size: 1.125rem;
  font-weight: 700;
}
.ta-footer-container.is-layout-constrained .wp-block-image img{
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px){
  .ta-footer-container.is-layout-constrained .wp-block-image img{
    margin-left: 0px;
    margin-right: 0px;
  }
}
.ta-footer-container.is-layout-constrained .ta-footer-nav-1 .wp-block-navigation__container, .ta-footer-container.is-layout-constrained .ta-footer-nav-2 .wp-block-navigation__container{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media (min-width: 768px){
  .ta-footer-container.is-layout-constrained .ta-footer-nav-1 .wp-block-navigation__container, .ta-footer-container.is-layout-constrained .ta-footer-nav-2 .wp-block-navigation__container{
    flex-direction: row;
    gap: 1.5rem;
  }
}
.ta-footer-container.is-layout-constrained .ta-footer-social-icons {
  }
/* page content wrapper styling*/
@media not all and (min-width: 1024px){
  div.ta-content-wrapper{
    flex-wrap: wrap !important;
  }
  div.ta-content-wrapper div.ta-left-content{
    flex-basis: 100% !important;
  }
  div.ta-content-wrapper div.ta-right-content{
    flex-basis: 100% !important;
  }
}
.wp-site-blocks > div.wp-block-group.alignfull:has(.ta-content-wrapper) {
      /* @apply max-md:px-sp-00; */
    }
@media screen and (max-width: 768px) {
    .wp-block-group.sidebar > div.wp-block-group{
    border-radius: 0px;
      margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
      margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
  }
}
/* page content wrapper styling*/
/* class page  */
/* .ta-class-left-content{
  .is-layout-flex{
    gap: var(--wp--preset--spacing--sp-base);
  }
} */
/* class page  */
/* Staff page */
.ta-staff-card{
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 1.75rem;
  font-size: 0.875rem;
}
@media (min-width: 768px){
  .ta-staff-card{
    padding: 0px;
  }
  @media not all and (min-width: 1024px){
    .ta-staff-card{
      flex-wrap: nowrap !important;
    }
  }
}
.ta-staff-card.is-layout-flex {
    gap: var(--wp--preset--spacing--sp-sm);
  }
@media (min-width: 768px){
  @media not all and (min-width: 1024px){
    .ta-staff-card.is-layout-flex{
      gap: 1.5rem;
    }
  }
}
.ta-staff-card p{
  font-size: 0.75rem;
  line-height: 1rem;
  line-height: 1.25;
}
@media not all and (min-width: 1024px){
  .ta-staff-card p{
    font-size: 0.875rem;
  }
}
.ta-staff-card * + * {
    margin-block-start: var(--wp--preset--spacing--sp-xs);
  }
.ta-staff-card .ta-staff-card__info-wrapper {
    margin-block-start: var(--wp--preset--spacing--sp-0);
    align-self: flex-start;
    padding: 0.75rem;
    padding-left: 0px;
  }
.ta-staff-card .ta-staff-card__info-wrapper * + * {
      margin-block-start: var(--wp--preset--spacing--sp-xs);
    }
.ta-staff-card__name{
  font-size: 1.25rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
@media not all and (min-width: 768px){
  .ta-staff-card__name{
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 1024px) {
.ta-staff-card__name {
      font-size: clamp(1rem, 1.2vw, 1.25rem)
  }
    }
.ta-staff-card__title{
  text-transform: uppercase;
}
.ta-staff-card__email{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.ta-staff-card__email a{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.ta-staff-card__email{

    margin-block-start: var(--wp--preset--spacing--sp-0);
}
.ta-staff-card img{
  width: 11rem;
  border-radius: 10px;
}
@media (min-width: 768px){
  .ta-staff-card img{
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
  }
  @media not all and (min-width: 1024px){
    .ta-staff-card img{
      width: 100%;
    }
  }
}
@media (min-width: 1024px){
  @media not all and (min-width: 1280px){
    .ta-staff-card img{
      border-radius: 10px;
    }
  }
}
@media (min-width: 1280px){
  .ta-staff-card img{
    width: 13rem;
  }
}
.ta-staff-card img {
    /* @media screen and (max-width: theme(screens.md)) {
      width: 150px;
    } */
  }
.ta-staff-card div.wp-block-column{
  flex-basis: 100%;
}
@media (min-width: 1024px){
  .ta-staff-card div.wp-block-column{
    flex-basis: 50%;
  }
  @media not all and (min-width: 1280px){
    .ta-staff-card > div.is-layout-flow.wp-block-column:has(.wp-block-image){
      padding: 0.75rem;
      padding-right: 0;
    }
  }
}
@media screen and (max-width: 768px) {
.ta-staff-card{
    border-radius: 0px;
    margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
    margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
  }
  }
@media not all and (min-width: 1024px){
  div.ta-staff-block .wp-block-columns > .wp-block-column{
    flex-basis: 100% !important;
  }
}
div.ta-staff-block > div.wp-block-columns{
  flex-wrap: wrap !important;
}
@media (min-width: 1024px){
  div.ta-staff-block > div.wp-block-columns{
    flex-wrap: nowrap !important;
  }
}
@media (min-width: 768px){
  @media not all and (min-width: 1024px){
    div.ta-staff-block .ta-staff-card > div.wp-block-column:first-child{
      flex-basis: 33.333333% !important;
    }
  }
}
div.ta-staff-block .ta-staff-block-columns > div.is-layout-flow.wp-block-column{
  border-radius: 10px;
}
@media screen and (max-width: 1024px) {
    div.ta-staff-block h3.ta-staff-block-heading {
      margin-block-start: var(--wp--preset--spacing--sp-base);
    }

    div.ta-staff-block .ta-staff-block-columns {
      margin-block-start: var(--wp--preset--spacing--sp-base);
    }

    div.ta-staff-block .ta-staff-block-columns.ta-staff-block-has-empty-column {
      gap: var(--wp--preset--spacing--sp-0);
    }
  }
/* services columns */
.ta-services-columns.is-layout-flex {
  gap: var(--wp--preset--spacing--sp-base);
}
.ta-services-columns.ta-services-columns-with-blank-col {
  gap: var(--wp--preset--spacing--sp-0);
}
.ta-services-columns-without-btn .ta-info-block-small{
  padding-bottom: 2rem !important;
}
@media not all and (min-width: 768px){
  .ta-services-columns-without-btn .ta-info-block-small{
    padding-bottom: 1.5rem !important;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1160px) {
  .ta-services-columns{
    flex-wrap: wrap !important;
  }

    .ta-services-columns .is-layout-flow.wp-block-column{
    flex-basis: 100% !important;
  }
}
/* ta-services-columns */
/*  */
/* */
/* Featured Box */
body .ta-featured-box{
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 2.5rem;
  padding-bottom: 0px !important;
  --tw-text-opacity: 1;
  color: rgb(233 94 90 / var(--tw-text-opacity));
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);;
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
@media not all and (min-width: 1024px){
  body .ta-featured-box{
    padding: 1.5rem;
  }
}
body .ta-featured-box .wp-block-button:has(.wp-block-button__link){
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px){
  body .ta-featured-box .wp-block-button:has(.wp-block-button__link){
    margin-left: 0px;
    margin-right: 0px;
  }
}
body .ta-featured-box .wp-block-button__link{
  padding-left: 3.5rem;
  padding-right: 3.5rem;
  text-decoration-line: none;
}
body .ta-featured-box .wp-block-button__link:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
body .ta-featured-box__col-1 h2, body .ta-featured-box__col-1 h3, body .ta-featured-box__col-1 h4, body .ta-featured-box__col-1 h5, body .ta-featured-box__col-1 h6{
  font-size: 4.5rem;
  --tw-text-opacity: 1;
  color: rgb(233 94 90 / var(--tw-text-opacity));
      font-size: clamp(1.75rem, 2.5vw, 2.25rem);
}
body .ta-featured-box__col-2 ul * + *{
  margin-top: 0.75rem;
}
body .ta-featured-box__col-2 ul li {
        /* @apply text-fs-xl; */
        font-size: clamp(1rem, 2.5vw, 1.25rem);
        background-image: url("../images/bullet-icon.svg");
        background-position: left top 0.5rem;
        background-repeat: no-repeat;
        padding-left: 1.25rem;
        text-align: left;
        line-height: 1.75rem;
      }
body .ta-featured-box__col-2 .ta-featured-box-ul {
      margin-block-start: var(--wp--preset--spacing--sp-sm);
    }
body .ta-featured-box p {
    font-size: clamp(1rem, 2.5vw, 1.25rem);
  }
@media screen and (max-width: 1024px) {
body .ta-featured-box {
    gap: var(--wp--preset--spacing--sp-base)
}
  }
body .ta-featured-box .ta-featured-box__col-2-ul {
    margin-block-start: var(--wp--preset--spacing--sp-sm);
  }
body .ta-featured-box:not(:has(.wp-block-buttons)){
  padding-bottom: 1.5rem !important;
}
@media (min-width: 1024px){
  body .ta-featured-box:not(:has(.wp-block-buttons)){
    padding: 2.5rem !important;
  }
}
@media screen and (max-width: 1024px) {
  body .ta-featured-box {
    margin-block-start: var(--wp--preset--spacing--sp-base);
  }
}
/* Text Over Image Section */
body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-cover__inner-container{
  padding-bottom: 5rem !important;
}
body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-cover__inner-container > .wp-block-group{
  position: static;
}
body .ta-text-over-image.wp-block-cover.wp-block-cover {
    justify-content: unset;
    align-items: unset;
    padding: 3rem;
    padding-left: 0;
    padding-right: 0;
  }
body .ta-text-over-image.wp-block-cover .wp-block-cover__inner-container {
    max-width: 500px;
    border-radius: 10px;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    padding: 4rem;
    font-size: 1rem;
    --tw-text-opacity: 1;
    color: rgb(233 94 90 / var(--tw-text-opacity));
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);;
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  }
body .ta-text-over-image.wp-block-cover .wp-block-cover__inner-container .wp-block-group > * + * {
      margin-block-start: var(--wp--preset--spacing--sp-sm);
    }
body .ta-text-over-image.wp-block-cover .wp-block-cover__inner-container h2 {
      font-size: clamp(1.75rem, 2vw, 2.25rem);
    }
body .ta-text-over-image.wp-block-cover .wp-block-cover__inner-container p {
      font-size: clamp(1rem, 2vw, 1.25rem);
    }
body .ta-text-over-image.wp-block-cover .wp-block-cover__image-background {
    width: 75%;
    right: 0;
    left: unset;
    -o-object-position: top right !important;
       object-position: top right !important;
    border-radius: 10px;
  }
body .ta-text-over-image.wp-block-cover .wp-block-cover__background {
    background: none;
  }
body .ta-text-over-image.wp-block-cover .wp-block-cover__image-background{
  border-radius: 10px;
}
/* Left Image */
body .ta-text-over-image.wp-block-cover.ta-text-over-image__left{
  justify-content: flex-end;
}
body .ta-text-over-image.wp-block-cover.ta-text-over-image__left .wp-block-cover__image-background {
      right: unset;
      left: 0;
      -o-object-position: top left !important;
         object-position: top left !important;
    }
body .ta-text-over-image.wp-block-cover.ta-text-over-image__left .wp-block-cover__inner-container {
    }
@media screen and (max-width: 768px) {
  .wp-block-cover.ta-text-over-image{
    flex-direction: column;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

    .wp-block-cover.ta-text-over-image img.wp-block-cover__image-background {
      position: unset;
      width: 100% !important;
      border-top-left-radius: 10px;
      border-top-right-radius: 10px;
      border-bottom-right-radius: 0px !important;
      border-bottom-left-radius: 0px !important;
    }

    .wp-block-cover.ta-text-over-image .wp-block-cover__inner-container{
    margin-left: auto;
    margin-right: auto;
    max-width: 100% !important;
    border-top-left-radius: 0px !important;
    border-top-right-radius: 0px !important;
    padding: 1.5rem !important;
  }

      .wp-block-cover.ta-text-over-image .wp-block-cover__inner-container:has(.wp-block-buttons){
    padding-bottom: 0 !important;
  }
}
/* Info block Small - Best fitted into 3 col layout */
body .wp-block-column .ta-info-block-small{
  height: 100%;
}
body .ta-info-block-small{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 10px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 1.5rem;
  padding-bottom: 0px !important;
  text-align: center;
}
@media (min-width: 768px){
  body .ta-info-block-small{
    padding: 2rem;
  }
}
body .ta-info-block-small.ta-info-block-small-carousel{
  position: relative;
  justify-content: flex-start;
  padding: 0px;
  padding-bottom: 4rem !important;
}
body .ta-info-block-small.ta-info-block-small-carousel .wp-block-image img{
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
body .ta-info-block-small.ta-info-block-small-carousel .ta-info-box-carousel-text-wrapper{
  position: static;
  margin: 0px;
  width: 100%;
  padding: 1.25rem;
  padding-bottom: 0px;
}
body .ta-info-block-small .ta-info-block-small__title{
  margin: 0px !important;
  text-align: left;
  --tw-text-opacity: 1;
  color: rgb(233 94 90 / var(--tw-text-opacity));
    font-size: clamp(1.25rem, 2vw, 1.5rem);
}
body .ta-info-block-small .ta-info-block-small__text{
  margin-bottom: auto;
  text-align: left;
  --tw-text-opacity: 1;
  color: rgb(233 94 90 / var(--tw-text-opacity));
    font-size: clamp(1rem, 2vw, 1.25rem);
}
body .ta-info-block-small .wp-block-buttons {
    justify-content: center;
  }
body .ta-info-block-small ul {
    margin-block-start: var(--wp--preset--spacing--sp-base);
  }
body .ta-info-block-small ul li {
      font-size: clamp(1rem, 2.5vw, 1.25rem);
      background-image: url("../images/bullet-icon.svg");
      background-position: left top 0.5rem;
      background-repeat: no-repeat;
      padding-left: 1.25rem;
      text-align: left;
      line-height: 1.75rem;
      --tw-text-opacity: 1;
      color: rgb(233 94 90 / var(--tw-text-opacity));
    }
@media screen and (max-width: 768px) {
  .ta-info-block-small.ta-info-block-small-group {
    margin-block-start: var(--wp--preset--spacing--sp-base) !important;
  }
}
/* Template Header footer */
.wp-block-post-content {
  margin-top: 0;
}
/* Carousel common */
/* 
const imageClass = showImage ? "" : "ta-img-hidden";
const wrapperClass = showImage ? "" : "ta-wrapper-rounded-border";
const ctaClass = showCTA ? "" : "ta-cta-hidden"; */
.ta-carousel-container .ta-carousel-text-wrapper{
  width: 100%;
}
.ta-carousel-container.ta-img-hidden img {
      display: none;
    }
.ta-carousel-container.ta-wrapper-rounded-border .ta-carousel-text-wrapper{
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.ta-carousel-container.ta-cta-hidden .ta-carousel__button {
      display: none;
    }
.ta-carousel-container.ta-cta-hidden .ta-carousel-text-wrapper{
  padding-bottom: 1rem;
}
@media screen and (max-width: 640px) {
  body .ta-carousel-container.wp-block-group, body .ta-carousel-container.wp-block-tbones-p-carousel-slider {
    margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
    margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
  }
}
body .ta-carousel-container.wp-block-group .ta-carousel__button, .wp-block-tbones-p-carousel-slider .ta-carousel__button{
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.75rem;
  display: inline-block;
  justify-content: center;
  --tw-bg-opacity: 1;
  background-color: rgb(58 146 141 / var(--tw-bg-opacity));
  padding: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: center;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  text-decoration-line: none;
}
body.is-layout-constrained .ta-carousel-container.wp-block-group .ta-carousel__button,.is-layout-constrained .wp-block-tbones-p-carousel-slider .ta-carousel__button{
 background-color:;
  background-color: #3a928d;
}
@media (min-width: 1024px){
  body .ta-carousel-container.wp-block-group .ta-carousel__button, .wp-block-tbones-p-carousel-slider .ta-carousel__button{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
body .ta-carousel-container.wp-block-group .ta-carousel__button:hover, .wp-block-tbones-p-carousel-slider .ta-carousel__button:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
@media screen and (min-width: 1024px) and (max-width: 1100px) {
body .ta-carousel-container.wp-block-group .ta-carousel__button, .wp-block-tbones-p-carousel-slider .ta-carousel__button{
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
    }
body .ta-carousel-container.wp-block-group .ta-carousel__button:hover, .wp-block-tbones-p-carousel-slider .ta-carousel__button:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
/* Styling for bottom aligned button */
.ta-bottom-aligned-button-parent, .ta-query-loop-wrapper .wp-block-post, body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-cover__inner-container{
  position: relative;
  padding-bottom: 5rem;
}
.ta-bottom-aligned-button, .ta-query-loop-wrapper .wp-block-read-more, body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-buttons, body .ta-info-block-small.ta-info-block-small-carousel .wp-block-buttons {
  transform: translate(-50%, 0);
  position: absolute;
  left: 50%;
  bottom: 0px;
  margin: 0px !important;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.75rem;
  display: inline-block;
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  justify-content: center;
  --tw-bg-opacity: 1;
  background-color: rgb(58 146 141 / var(--tw-bg-opacity));
  padding: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: center;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  text-decoration-line: none;
}
.is-layout-constrained.ta-bottom-aligned-button,.is-layout-constrained .ta-query-loop-wrapper .wp-block-read-more, body.is-layout-constrained .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-buttons, body.is-layout-constrained .ta-info-block-small.ta-info-block-small-carousel .wp-block-buttons{
 background-color:;
  background-color: #3a928d;
}
@media (min-width: 1024px){
  .ta-bottom-aligned-button, .ta-query-loop-wrapper .wp-block-read-more, body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-buttons, body .ta-info-block-small.ta-info-block-small-carousel .wp-block-buttons{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.ta-bottom-aligned-button, .ta-query-loop-wrapper .wp-block-read-more, body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-buttons, body .ta-info-block-small.ta-info-block-small-carousel .wp-block-buttons {
  width: -moz-max-content;
  width: max-content;
}
.ta-bottom-aligned-button:hover, .ta-query-loop-wrapper .wp-block-read-more:hover, body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-buttons:hover, body .ta-info-block-small.ta-info-block-small-carousel .wp-block-buttons:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.ta-bottom-aligned-button .wp-block-button__link, .ta-query-loop-wrapper .wp-block-read-more .wp-block-button__link, body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-buttons .wp-block-button__link, body .ta-info-block-small.ta-info-block-small-carousel .wp-block-buttons .wp-block-button__link {
    padding: 0;
  }
@media screen and (min-width: 1024px) and (max-width: 1100px) {
.ta-bottom-aligned-button, .ta-query-loop-wrapper .wp-block-read-more, body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-buttons, body .ta-info-block-small.ta-info-block-small-carousel .wp-block-buttons{
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  }
.ta-bottom-aligned-button:hover, .ta-query-loop-wrapper .wp-block-read-more:hover, body .ta-text-over-image.wp-block-cover.is-style-bottom-button .wp-block-buttons:hover, body .ta-info-block-small.ta-info-block-small-carousel .wp-block-buttons:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
/* ========================================= */
.swiper-pagination-bullet-active{
  --tw-bg-opacity: 1;
  background-color: rgb(58 146 141 / var(--tw-bg-opacity));
}
.is-layout-constrained.swiper-pagination-bullet-active{
 background-color:;
  background-color: #3a928d;
}
.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: auto;
}
.swiper .swiper-pagination {
  margin-top: 3.5rem;
  margin-bottom: 2.5rem;
}
/* Carousel Styling */
@media screen and (max-width: 768px) {
.has-global-padding
  :where(.has-global-padding)
  > .alignfull.ta-carousel-container {
    margin-right: calc(var(--wp--style--root--padding-right) * -1);
    margin-left: calc(var(--wp--style--root--padding-left) * -1)
}
  }
.sfas-carousel .swiper-slide h4{
  margin-bottom: 0.75rem;
  text-align: left;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.sfas-carousel .swiper-slide p{
  text-align: left;
  font-size: 0.938rem;
  line-height: 1.25rem;
}
.sfas-carousel .swiper-wrapper {
  align-items: start;
}
.sfas-carousel .swiper {
  width: 100%;
  overflow: visible;
}
.sfas-carousel .swiper-slide {
  text-align: center;
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: start;
  margin: 0px;
  background: white;
  transition: all 0.3s ease;
  opacity: 0.5;
}
.sfas-carousel .swiper-slide img{
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.sfas-carousel .swiper-slide img.image-hidden{
  display: none;
}
.sfas-carousel .swiper-slide.swiper-slide-active {
  background: #fff;
  transform: scale(1.2);
  z-index: 2;
  opacity: 1;
}
.sfas-carousel .swiper-button-prev, .sfas-carousel .swiper-button-next {
  /* @apply text-white bg-clr-primary rounded-full w-10 h-10; */
}
.sfas-carousel .swiper-button-next:after, .sfas-carousel .swiper-button-prev:after {
  /* @apply text-white text-sm font-bold; */
}
.sfas-carousel .swiper-button-next {
  right: clamp(6%, 8.5vw, 28%);
}
.sfas-carousel .swiper-button-prev {
  left: clamp(6%, 8.5vw, 28%);
}
@media screen and (min-width: 480px) {
  .sfas-carousel .swiper-button-next {
    right: clamp(6%, 10.5vw, 28%);
  }

  .sfas-carousel .swiper-button-prev {
    left: clamp(6%, 10.5vw, 28%);
  }
}
@media screen and (min-width: 640px) {
  .sfas-carousel .swiper-button-next {
    right: clamp(6%, 11.5vw, 28%);
  }

  .sfas-carousel .swiper-button-prev {
    left: clamp(6%, 11.5vw, 28%);
  }
}
@media screen and (min-width: 768px) {
  .sfas-carousel .swiper-button-next {
    right: clamp(6%, 6.5vw, 28%);
  }

  .sfas-carousel .swiper-button-prev {
    left: clamp(6%, 6.5vw, 28%);
  }
}
@media screen and (min-width: 1024px) {
  .sfas-carousel .swiper-button-next {
    right: clamp(6%, 18vw, 28.5%);
  }

  .sfas-carousel .swiper-button-prev {
    left: clamp(6%, 18vw, 28.5%);
  }
}
/* 
@media screen and (min-width: theme(screens.lg)) {
  .sfas-carousel .swiper-button-next {
    right: 10%;
  }
  .sfas-carousel .swiper-button-prev {
    left: 10%;
  }
  .sfas-carousel .swiper-slide {
    font-size: 16px;
  }
}

@media screen and (min-width: theme(screens.md)) {
  .sfas-carousel .swiper-button-next {
    right: 23%;
    @media screen and (max-width: theme(screens.xs)) {
      right: 8.5%;
    }
  }
  .sfas-carousel .swiper-button-prev {
    left: 23%;
    @media screen and (max-width: theme(screens.xs)) {
      left: 8.5%;
    }
  }
} */
/* ARROWS */
.sfas-carousel .swiper-button-prev, .sfas-carousel .swiper-button-next {
  color: #f69259;
}
.mySwiper, .sfas-carousel, .ta-testimonials-swiper {
  width: 100%;
}
.sfas-carousel, .ta-testimonials-swiper {
  padding-bottom: 50px;
}
@media screen and (max-width: 1024px) {
  div.wp-block-tbones-p-carousel-slider.ta-carousel-container {
    margin-block-start: var(--wp--preset--spacing--sp-base);
  }
}
/* changes related breadcrumbs */
body.ta-show-breadcrumbs div.yoast-breadcrumbs {
    display: block;
  }
div.yoast-breadcrumbs{
  padding-bottom: 0.5rem;
}
body.ta-hide-breadcrumbs div.yoast-breadcrumbs {
    display: none;
  }
/* changes related breadcrumbs */
/* Style related */
/* Group with centered text */
body .wp-block-group.is-style-centered-text *{
  text-align: center;
}
/* Fixing font for animation */
.wp-block-lpb-lottie-player .lpbLottiePlayer lottie-player {
  font-family: var(--wp--preset--font-family--ff-source-sans) !important;
}
#ta-lottie-animation #wpadminbar {
  display: none !important;
}
/* hide lottie admin bar */
.page-id-568.admin-bar div#wpadminbar {
  display: none;
}
.page-id-568.admin-bar .wp-site-blocks {
  margin-top: clamp(-47px, -14vw, -31px);
}
body {
  font-display: optional;
}
.wp-block-lpb-lottie-player {
  min-height: clamp(150px, 44vw, 100vw) !important;
}
/* Vitality Style- Home page */
@font-face {
  font-family: "Catchy Mager";
  font-weight: 400;
  src: url("/assets/build/fonts/catchy-mager/catchy_mager_regular-webfont.woff")
    format("woff");
}
.hover-bg {
  --tw-bg-opacity: 1;
  background-color: #a84845;
}
:root body{
  font-family: Corporative Alt;
  font-size: 1.125rem;
    background-color: #f4f0ee;
}
@media screen and (min-width: 768px) {
      :root body .custom-banner-block {
        margin-block-start: 0px;
      }
    }
:root body p{
  margin-bottom: 1.25rem;
}
@media (min-width: 768px){
  :root body p{
    font-size: 1.125rem;
  }
}
a.call-btn, button{
  margin-top: 1rem;
  margin-bottom: 1rem;
  margin-left: 0px;
  margin-right: 0px;
  display: block;
  width: -moz-max-content;
  width: max-content;
  border-radius: 1.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(233 94 90 / var(--tw-bg-opacity));
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 1.25rem !important;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  text-decoration-line: none !important;
}
a.call-btn:hover, button:hover{
  --tw-text-opacity: 1 !important;
  color: rgb(255 255 255 / var(--tw-text-opacity)) !important;
  --tw-bg-opacity: 1;
    background-color: #a84845;
}
.section_three{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2rem;
}
@media (min-width: 768px){
  .section_three{
    flex-direction: row;
  }
}
.section_three .content-left{
  display: flex;
  flex-basis: 40%;
  flex-direction: column;
  gap: 1.25rem;
  text-align: left;
}
.section_three .content-left p{
  margin-bottom: 0px;
}
.section_three .content-left h3{
  margin-bottom: 0px;
  font-size: 36px;
  font-weight: 800;
}
.section_three .content-right{
  flex-basis: 60%;
  text-align: left;
}
.service-card h3 {
    font-family: "";
  }
.testimonials__title{
  margin-left: auto;
  margin-right: auto;
  display: block;
  font-size: 36px;
  font-weight: 800;
  line-height: 1.75rem;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.testimonials__grid{
  display: flex;
  justify-content: center;
  gap: 1rem;
}
.testimonials .card{
  height: 380px;
  flex-basis: 33.33%;
  --tw-bg-opacity: 1;
  background-color: rgb(196 195 195 / var(--tw-bg-opacity));
}
/* footer */
@media (max-width: 768px) {
  .footer {
    /* flex-direction: column;
    text-align: center; */
  }

  .footer__menu {
    flex-direction: column;
    gap: 0.5rem;
    font-size: 18px;
  }

  .footer__social {
    display: flex;
    flex-direction: row;
    padding: 1.5rem;
  }
  .footer__social-link {
    margin: 0.5rem 0;
  }
}
.footer{
  --tw-bg-opacity: 1;
  background-color: rgb(200 252 202 / var(--tw-bg-opacity));
  padding-top: 6rem;
  padding-bottom: 6rem;
  padding-left: 4rem !important;
  padding-right: 4rem !important;
  text-align: center;
  font-family: Corporative Alt;
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
}
.footer > .is-layout-flex{
  align-items: center !important;
  justify-content: space-between;
}
.footer .wp-block-columns > .wp-block-column{
  margin-top: 0px;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
}
.footer__column{
  flex: 1 1 0%;
  flex: 1;
  text-align: center;
}
.footer__logo{
  margin-bottom: 1rem;
  text-align: left;
  font-size: 36px;
  font-weight: 500;
  line-height: 50px;
}
@media not all and (min-width: 768px){
  .footer__logo{
    text-align: center;
  }
}
.footer__nav{
  margin-bottom: 1rem;
}
.footer__menu{
  margin: 0px;
  display: grid;
  list-style-type: none;
  justify-content: center;
  gap: 1rem;
  padding: 0px;
  text-align: left;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 2rem;
}
.footer__menu li a{
  --tw-text-opacity: 1;
  color: rgb(58 146 141 / var(--tw-text-opacity));
  text-decoration-line: none !important;
  --tw-shadow: 0 0 #0000 !important;
  --tw-shadow-colored: 0 0 #0000 !important;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
}
.footer__menu li a:hover{
  --tw-text-opacity: 1;
  color: rgb(233 94 90 / var(--tw-text-opacity));
}
.footer__link {
  color: #3a928d;
  text-decoration: none;
  font-weight: bold;
}
.footer__social {
  display: grid;
  justify-content: center;
  gap: 1rem;
}
.footer__social li.wp-social-link{
  border-radius: 0px;
}
.footer__social li.wp-social-link svg{
  height: 32px;
  width: 32px;
}
.footer__social li.wp-social-link a{
  padding: 2px;
}
.footer__social-link{
  display: flex;
  align-items: center;
  justify-content: center;
  --tw-bg-opacity: 1;
  background-color: rgb(58 146 141 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  text-decoration-line: none;
}
.is-layout-constrained.footer__social-link{
 background-color:;
  background-color: #3a928d;
}
.footer__social-link:before{
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 8px;
  padding-right: 8px;
  font-size: 1.5rem;
}
.footer__social-link:hover {
  color: #52d1cb;
}
.footer-section{
  --tw-bg-opacity: 1 !important;
  background-color: rgb(200 252 202 / var(--tw-bg-opacity)) !important;
}
.is-layout-constrained.bg-clr-primary {
  background-color: #3a928d;
}
/* spacing */
@media (min-width: 768px){
  body .ta-header-1, body .team, body .services__container, body .custom-banner-block > div > div, body .section_three, body .testimonials{
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }
}
@media (min-width: 1024px){
  body .ta-header-1, body .team, body .services__container, body .custom-banner-block > div > div, body .section_three, body .testimonials{
    margin-left: 4rem !important;
    margin-right: 4rem !important;
  }
  .lg\:p-20{
    padding: 5rem;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy90YWlsd2luZGNzcy9iYXNlLmNzcyIsIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy90YWlsd2luZGNzcy91dGlsaXRpZXMuY3NzIiwiYXBwLnBjc3MiLCJpbmMvX3ZhcmlhYmxlcy5wY3NzIiwiaW5jL19yZXNldC5wY3NzIiwiaW5jL19zcGFjaW5ncy5wY3NzIiwiaW5jL292ZXJyaWRlcy9fY29yZS0taGVhZGluZy5wY3NzIiwiaW5jL292ZXJyaWRlcy9fY29yZS0tbGlzdC5wY3NzIiwiaW5jL292ZXJyaWRlcy9fY29yZS0tbmF2aWdhdGlvbi5wY3NzIiwiaW5jL292ZXJyaWRlcy9fY29yZS0tc2VhcmNoLnBjc3MiLCJpbmMvX3RlbXBsYXRlcy5wY3NzIiwiaW5jL190ZW1wbGF0ZS1wYXJ0cy5wY3NzIiwiaW5jL19nbG9iYWwucGNzcyIsIjxubyBzb3VyY2U+Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQUEsd0JBQWM7RUFBZCx3QkFBYztFQUFkLG1CQUFjO0VBQWQsbUJBQWM7RUFBZCxjQUFjO0VBQWQsY0FBYztFQUFkLGNBQWM7RUFBZCxlQUFjO0VBQWQsZUFBYztFQUFkLGFBQWM7RUFBZCxhQUFjO0VBQWQsa0JBQWM7RUFBZCxzQ0FBYztFQUFkLDhCQUFjO0VBQWQsNkJBQWM7RUFBZCw0QkFBYztFQUFkLGVBQWM7RUFBZCxvQkFBYztFQUFkLHNCQUFjO0VBQWQsdUJBQWM7RUFBZCx3QkFBYztFQUFkLGtCQUFjO0VBQWQsMkJBQWM7RUFBZCw0QkFBYztFQUFkLHNDQUFjO0VBQWQsa0NBQWM7RUFBZCwyQkFBYztFQUFkLHNCQUFjO0VBQWQsOEJBQWM7RUFBZCxZQUFjO0VBQWQsa0JBQWM7RUFBZCxnQkFBYztFQUFkLGlCQUFjO0VBQWQsa0JBQWM7RUFBZCxjQUFjO0VBQWQsZ0JBQWM7RUFBZCxhQUFjO0VBQWQsbUJBQWM7RUFBZCxxQkFBYztFQUFkLDJCQUFjO0VBQWQseUJBQWM7RUFBZCwwQkFBYztFQUFkLDJCQUFjO0VBQWQsdUJBQWM7RUFBZCx3QkFBYztFQUFkLHlCQUFjO0VBQWQsc0JBQWM7RUFBZCxvQkFBYztFQUFkLHNCQUFjO0VBQWQscUJBQWM7RUFBZDtBQUFjO0FBQWQ7RUFBQSx3QkFBYztFQUFkLHdCQUFjO0VBQWQsbUJBQWM7RUFBZCxtQkFBYztFQUFkLGNBQWM7RUFBZCxjQUFjO0VBQWQsY0FBYztFQUFkLGVBQWM7RUFBZCxlQUFjO0VBQWQsYUFBYztFQUFkLGFBQWM7RUFBZCxrQkFBYztFQUFkLHNDQUFjO0VBQWQsOEJBQWM7RUFBZCw2QkFBYztFQUFkLDRCQUFjO0VBQWQsZUFBYztFQUFkLG9CQUFjO0VBQWQsc0JBQWM7RUFBZCx1QkFBYztFQUFkLHdCQUFjO0VBQWQsa0JBQWM7RUFBZCwyQkFBYztFQUFkLDRCQUFjO0VBQWQsc0NBQWM7RUFBZCxrQ0FBYztFQUFkLDJCQUFjO0VBQWQsc0JBQWM7RUFBZCw4QkFBYztFQUFkLFlBQWM7RUFBZCxrQkFBYztFQUFkLGdCQUFjO0VBQWQsaUJBQWM7RUFBZCxrQkFBYztFQUFkLGNBQWM7RUFBZCxnQkFBYztFQUFkLGFBQWM7RUFBZCxtQkFBYztFQUFkLHFCQUFjO0VBQWQsMkJBQWM7RUFBZCx5QkFBYztFQUFkLDBCQUFjO0VBQWQsMkJBQWM7RUFBZCx1QkFBYztFQUFkLHdCQUFjO0VBQWQseUJBQWM7RUFBZCxzQkFBYztFQUFkLG9CQUFjO0VBQWQsc0JBQWM7RUFBZCxxQkFBYztFQUFkO0FBQWM7RUFBZCx3RUFBYztFQUFkLGlEQUFjOztFQUFkLHFCQUFjO0VBQWQ7SUFBQSxzQkFBYztFQUFBOztFQUFkO0lBQUEsU0FBYztJQUFkLFVBQWM7RUFBQTs7RUFBZCwyR0FBYztFQUFkO0lBQUEsZ0JBQWM7RUFBQTs7RUFBZCwyQkFBYztFQUFkO0lBQUEsdUJBQWM7RUFBQTs7RUFBZDtJQUFBLFlBQWM7RUFBQTs7RUFBZCwyQkFBYztFQUFkO0lBQUEsNkJBQWM7SUFBZCxnQkFBYztFQUFBOztFQUFkLDBEQUFjO0VBQWQ7SUFBQSxpQ0FBYztZQUFkLDhCQUFjO0VBQUE7O0VBQWQsb0NBQWM7RUFBZDtJQUFBLGVBQWM7SUFBZCxjQUFjO0VBQUE7O0VBQWQseUNBQWM7RUFBZDtJQUFBLGFBQWM7RUFBQTs7RUFBZCx3REFBYztFQUFkO0lBQUE7TUFBQSxxQ0FBYztNQUFkLHVDQUFjO01BQWQsc0NBQWM7TUFBZCxnQ0FBYztJQUFBO0VBQUE7O0VBQWQseUJBQWM7O0VBQWQ7SUFBQSxxQkFBYztFQUFBO0VBQWQ7RUFBQSxrQkFBYztFQUFkO0FBQWM7O0VBQWQ7RUFBQTtBQUFjOztFQUFkO0VBQUE7SUFBQTtFQUFjO0FBQUE7QUNBZDtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsNEJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLHVCQUFtQjtFQUFuQix1REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsa0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLGlCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxvQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSwwRUFBbUI7RUFBbkIsOEZBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsOEVBQW1CO0VBQW5CLGlHQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsZ0tBQW1CO0VBQW5CLHdKQUFtQjtFQUFuQixpTEFBbUI7RUFBbkIsd0RBQW1CO0VBQW5CO0FBQW1CO0FDSW5CLHFCQUFxQjtBQ0pyQix3QkFBd0I7QUFDeEIsb0JBQW9CO0FBQ3BCLHdCQUF3QjtBQUV4Qjs7Ozs7Q0FLQztBQUVEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFFSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FzQ0M7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBd0JDO0FBRUQ7Ozs7Ozs7Q0FPQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBK0JDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXFCQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQTZCQztBQUVEOzs7Ozs7O0NBT0M7QUFFRDs7Ozs7O0NBTUM7QUFFRDtFQUNFLHlEQUF5RDtBQUMzRDtBRHhNQSxXQUFXO0FFUFgsY0FBYztBRlVkLGFBQWE7QUdUWCxzQkFBc0I7QUFHcEI7TUFFRSx1REFBdUQ7SUFDekQ7QUFFQTtNQUNFLFNBQVM7SUFDWDtBQVFJO1VBQ0UscURBQXFEO1FBQ3ZEO0FBSUo7TUFDRTtRQUVFLHFEQUFxRDtNQUN2RDtVQU9JO1lBQ0UsdURBQXVEO1VBQ3pEO0lBR047QUFHSixhQUFhO0FBQ2I7RUFDRSxpREFBaUQ7QUFJbkQ7QUFIRTtJQUNFLHFEQUFxRDtFQUN2RDtBSHBDRiwyQ0FBMkM7QUlUdkM7RUFBQTtBQUFxQztBQUFyQztFQUFBO0lBQUE7RUFBcUM7QUFBQTtBQUdyQztFQUFBLGVBQWtEO0VBQWxEO0FBQWtEO0FBQWxEO0VBQUE7SUFBQTtFQUFrRDtBQUFBO0FBSWxEO0VBQUEsb0JBQXlCO0VBQXpCO0FBQXlCO0FBR3pCO0VBQUEsb0JBQXNCO0VBQXRCO0FBQXNCO0FBS3RCO0VBQUEsb0JBQXVDO0VBQXZDO0FBQXVDO0FBQXZDO0VBQUE7SUFBQTtFQUF1QztBQUFBO0FBSXJDO0VBQUEsb0JBQW1DO0VBQW5DO0FBQW1DO0FBQW5DO0VBQUE7SUFBQTtFQUFtQztBQUFBO0FDdkJ6QyxtQkFBbUI7QUFHakI7RUFBQTtBQUFhO0FBQ2I7SUFDRSxhQUFhO0VBS2Y7QUFKRTtNQUNFLDJEQUEyRDtNQUMzRCxrQkFBa0I7SUFDcEI7QUNUSixnQkFBZ0I7QUFHZDtFQUFBLG1CQUF3QjtFQUF4QixzQkFBd0I7RUFBeEIsd0JBQXdCO09BQXhCO0FBQXdCO0FBR3RCO0VBQUEsc0JBQW1DO0VBQW5DLGVBQW1DO0VBQW5DLG1CQUFtQztFQUFuQztBQUFtQztBQUluQztFQUFBLGFBQW1EO0VBQW5ELG1CQUFtRDtFQUFuRCxlQUFtRDtFQUFuRCxtQkFBbUQ7RUFBbkQsd0JBQW1EO09BQW5EO0FBQW1EO0FBRWpEO0VBQUEsaUJBQTZIO0VBQTdILHdCQUE2SDtFQUE3SCxtQkFBNkg7RUFBN0gseUJBQTZIO0VBQTdILHNCQUE2SDtFQUE3SCxlQUE2SDtFQUE3SCxnQkFBNkg7RUFBN0gsaUJBQTZIO0VBQTdILG9CQUE2SDtFQUE3SCwrQ0FBNkg7RUFBN0gsMEJBQTZIO01BQzdIO0FBRDZIO0FBRzNIO0VBQUEsaUJBQThDO0VBQTlDLHdCQUE4QztFQUE5QyxzQkFBOEM7RUFBOUM7QUFBOEM7QUFLdEQ7RUFFSTtJQUFBLHNCQUEyQjtJQUEzQix1QkFBMkI7SUFDM0I7RUFEMkI7QUFHL0I7QUFHRTtFQUFBO0FBQXNCO0FBQXRCO0VBQUE7SUFBQTtFQUFzQjtBQUFBO0FBR3BCO0VBQUEsYUFBMkM7RUFBM0MsbUJBQTJDO0VBQTNDLGVBQTJDO0VBQTNDO0FBQTJDO0FBSTNDO0VBQUEscUJBQXdCO0VBQXhCO0FBQXdCO0FBQXhCO0VBQUE7SUFBQTtFQUF3QjtBQUFBO0FBSzVCLDJDQUEyQztBQUV6QztFQUFBLHFCQUEyRjtFQUEzRixrQkFBMkY7RUFBM0Ysd0RBQTJGO0VBQTNGLGVBQTJGO0VBQTNGLHFCQUEyRjtFQUEzRixzQkFBMkY7RUFBM0Ysa0JBQTJGO0VBQTNGLGlCQUEyRjtFQUEzRixnQkFBMkY7RUFBM0Ysb0JBQTJGO0VBQTNGO0FBQTJGO0FBQTNGO0NBQUEsaUJBQTJGO0VBQTNGLHlCQUEyRjtBQUFBO0FBQTNGO0VBQUE7SUFBQSxrQkFBMkY7SUFBM0YsbUJBQTJGO0lBQTNGLG1CQUEyRjtJQUEzRjtFQUEyRjtBQUFBO0FBRXpGO0VBQUE7QUFBbUI7QUFFckI7QUFDRTtJQUFBLDZCQUFtRTtJQUFuRSxnQkFBbUU7SUFBbkUsa0JBQW1FO0lBQW5FLG1CQUFtRTtJQUFuRSxlQUFtRTtJQUFuRSxtQkFBbUU7SUFBbkUsZ0JBQW1FO0lBQW5FLG9CQUFtRTtJQUFuRTtFQUFtRTtFQUNyRTtBQUdGLG1CQUFtQjtBQUNuQjtFQUNFLGVBQWU7RUFDZixXQUFXO0VBQ1gsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixrQkFBa0I7QUFDcEI7QUFFQTtFQUdFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsV0FBVztFQUNYLE1BQU07RUFDTixPQUFPO0VBQ1Asb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixrQkFBcUI7RUFBckIsd0RBQXFCO0FBQ3ZCO0FBREU7Q0FBQSxpQkFBcUI7RUFBckIseUJBQXFCO0FBQUE7QUFHdkI7RUFDRSwwQkFBMEI7QUFDNUI7QUFFQTtFQUNFLDJCQUEyQjtBQUM3QjtBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCO0FBRUE7RUFDRSx3REFBd0Q7QUFDMUQ7QUFFQTtFQUNFLGFBQWE7QUFDZjtBQUVBO0VBQ0UsMERBQTBEO0FBQzVEO0FBRUE7RUFDRSxjQUFjO0FBQ2hCO0FBRUU7RUFBQSxvQkFBdUI7RUFBdkI7QUFBdUI7QUFJdkI7RUFBQSxvQkFBdUI7RUFBdkI7QUFBdUI7QUFLdkI7O0VBQUEsbUJBQTBCO0VBQTFCLGtCQUEwQjtFQUExQjtBQUEwQjtBQUkxQjtFQUFBLG9CQUF1QjtFQUF2QjtBQUF1QjtBQUl2QjtFQUFBO0FBQWtDO0FBQWxDO0VBQUEsdUJBQWtDO0VBQWxDLCtEQUFrQztFQUFsQztBQUFrQztBQUFsQztFQUFBLGtCQUFrQztFQUFsQyx5REFBa0M7RUFBbEM7QUFBa0M7QUFFaEM7RUFBQSxnQkFBdUI7RUFBdkIsb0JBQXVCO0VBQXZCLHVCQUF1QjtFQUF2QixtQkFBdUI7RUFBdkI7QUFBdUI7QUFFckI7RUFBQSxtQkFBMEI7RUFBMUIsa0JBQTBCO0VBQTFCO0FBQTBCO0FBSTVCO0VBQUE7QUFBaUI7QUFNakI7RUFBQTtBQUFtQjtBQUVqQjtFQUFBLG9CQUFxQjtFQUFyQjtBQUFxQjtBQUl2QjtFQUFBLGFBQTBGO0VBQTFGLG1CQUEwRjtFQUExRjtBQUEwRjtBQUExRjtFQUFBO0lBQUE7RUFBMEY7RUFBMUY7SUFBQSx1QkFBMEY7SUFBMUYsb0RBQTBGO0lBQTFGO0VBQTBGO0VBQTFGO0lBQUEsbUJBQTBGO0lBQTFGO0VBQTBGO0FBQUE7QUFBMUY7RUFBQTtJQUFBLHVCQUEwRjtJQUExRixvREFBMEY7SUFBMUY7RUFBMEY7RUFBMUY7SUFBQSxtQkFBMEY7SUFBMUY7RUFBMEY7QUFBQTtBQUcxRjtFQUFBO0FBQW1DO0FBQW5DO0VBQUE7SUFBQTtFQUFtQztBQUFBO0FBQ25DO0FBRkY7TUFHSTtFQUVKO0lBREU7QUFJSiwyQ0FBMkM7QUFJdkM7RUFBQSxtQkFBMEY7RUFBMUYseUJBQTBGO0VBQTFGO0FBQTBGO0FBQTFGO0VBQUE7SUFBQTtFQUEwRjtFQUExRjtJQUFBLHVCQUEwRjtJQUExRixvREFBMEY7SUFBMUY7RUFBMEY7RUFBMUY7SUFBQSxtQkFBMEY7SUFBMUY7RUFBMEY7QUFBQTtBQUExRjtFQUFBO0lBQUEsdUJBQTBGO0lBQTFGLG9EQUEwRjtJQUExRjtFQUEwRjtFQUExRjtJQUFBLG1CQUEwRjtJQUExRjtFQUEwRjtBQUFBO0FBSXhGO0VBQUEsd0NBQXVDO0VBQXZDLG9CQUF1QztFQUF2QztBQUF1QztBQUl2QztFQUFBLG1CQUEwQjtFQUExQixrQkFBMEI7RUFBMUI7QUFBMEI7QUFFeEI7RUFBQSxvQkFBcUI7RUFBckI7QUFBcUI7QUFHckI7RUFBQSxrQkFBaUQ7RUFBakQsa0JBQWlEO0VBQWpELHlEQUFpRDtFQUFqRCxvQkFBaUQ7RUFBakQ7QUFBaUQ7QUFLbkQ7RUFBQSxrQkFBNEI7RUFBNUI7QUFBNEI7QUFFMUI7RUFBQSxnQkFBNkM7RUFBN0M7QUFBNkM7QUFBN0M7RUFBQTtJQUFBO0VBQTZDO0FBQUE7QUFDN0M7QUFGRjtVQUdJO01BRUo7UUFERTtBQUVGLHNCQUFzQjtBQUVwQjtFQUFBO0FBQThDO0FBQTlDO0VBQUEsdUJBQThDO0VBQTlDLCtEQUE4QztFQUE5QztBQUE4QztBQUE5QztFQUFBLGtCQUE4QztFQUE5QyxrQkFBOEM7RUFBOUMseURBQThDO0VBQTlDO0FBQThDO0FBQzlDO1FBQ0E7QUFFRTtFQUFBO0FBQWlCO0FBRW5CLHdCQUF3QjtBQUV0QjtFQUFBLGdCQUFlO0VBQWYsb0JBQWU7RUFBZjtBQUFlO0FBRWI7RUFBQSxtQkFBMEI7RUFBMUIsa0JBQTBCO0VBQTFCO0FBQTBCO0FBRXhCO0VBQUEsb0JBQXFCO0VBQXJCO0FBQXFCO0FBSXZCO0VBQUEsY0FBb0I7RUFBcEIsbUJBQW9CO0VBQXBCO0FBQW9CO0FBR3BCO0VBQUEsY0FBdUM7RUFBdkMsZ0JBQXVDO0VBQXZDLG9CQUF1QztFQUF2QztBQUF1QztBQUd2QztFQUFBLGNBQXdCO0VBQXhCO0FBQXdCO0FBU2hDO0VBQUE7QUFBdUI7QUFHekIsNkNBQTZDO0FBR3pDO0FBREY7UUFFSSxZQUFZO1FBQ1o7SUFFSjtNQURFO0FBSUosNENBQTRDO0FBRzFDO0VBQUE7QUFBVztBQUlYO0VBQUE7QUFBWTtBQUlaO0VBQUE7QUFBYTtBQUVYO0VBQUE7QUFBVztBQUlmO0lBRUk7SUFBQTtFQUFhO0lBR2I7SUFBQTtFQUFZO0VBRWhCO0FBR0Y7Q0FDQyxpQkFBaUI7QUFDbEI7QUMzUEU7RUFBQTtJQUFBO0VBQWdCO0FBQUE7QUFLZDtFQUFBLGdCQUE2RTtFQUE3RSxzQkFBNkU7RUFBN0UsNkJBQTZFO0VBQTdFLGdDQUE2RTtFQUE3RSxpQkFBNkU7RUFBN0Usc0JBQTZFO0VBQTdFLHVEQUE2RTtFQUE3RSxrQkFBNkU7RUFBN0U7QUFBNkU7QUFDN0U7QUFDRTtJQUFBLG9CQUFXO0lBQVg7RUFBVztJQUNiO0FBR0E7RUFBQSxtQkFBMEI7RUFBMUI7QUFBMEI7QUFHMUI7RUFBQSw0QkFBd0U7RUFBeEUsK0JBQXdFO0VBQXhFLGlCQUF3RTtFQUF4RSx1QkFBd0U7RUFBeEUsbUJBQXdFO0VBQXhFLHNCQUF3RTtFQUF4RSx1REFBd0U7RUFBeEU7QUFBd0U7QVBDNUUscURBQXFEO0FRaEJyRCwrQ0FBK0M7QUFDL0MsK0JBQStCO0FBRTdCO0VBQUEsb0JBQXVCO0VBQXZCO0FBQXVCO0FBS3JCO0VBQUEsbUJBQStCO0VBQS9CLGtCQUErQjtFQUEvQix5REFBK0I7RUFBL0I7QUFBK0I7QUFHN0I7RUFBQSwwRUFBYTtFQUFiLDhGQUFhO0VBQWI7QUFBYTtBQU1mO0VBQUEsbUJBQXdEO0VBQXhELG1CQUF3RDtFQUF4RCxvQkFBd0Q7RUFBeEQsOENBQXdEO0VBQXhEO0FBQXdEO0FBSXhEO0VBQUE7QUFBVztBQUVUO0VBQUEsV0FBK0M7RUFBL0MsbUJBQStDO0VBQS9DLHNCQUErQztFQUEvQztBQUErQztBQUlqRDtFQUFBO0FBQWM7QUFRbEIsb0NBQW9DO0FBSWhDO0VBQUE7QUFBVztBQUdYO0VBQUE7QUFBYztBQUdkO0VBQUE7QUFBVztBQUVUO0VBQUEsV0FBd0I7RUFBeEI7QUFBd0I7QUM3QzFCO0VBQUEsbUJBQXFDO0VBQXJDLGtCQUFxQztFQUFyQyx5REFBcUM7RUFBckM7QUFBcUM7QVRtQnpDLGtCQUFrQjtBVXJCbEIsa0JBQWtCO0FBYWhCO0VBQUE7QUFBZ0I7QUFHZDtFQUFBLG9CQUF1QjtFQUF2QjtBQUF1QjtBQU12QjtFQUFBLCtCQUFzQjtFQUF0QjtBQUFzQjtBQU14QjtFQUFBO0FBQW1CO0FBR2pCO0VBQUEsb0JBQXFCO0VBQXJCO0FBQXFCO0FBT25CO0VBQUEsc0JBQW1EO0VBQW5ELGVBQW1EO0VBQW5ELGdCQUFtRDtFQUFuRDtBQUFtRDtBQUt6RCxlQUFlO0FBQ2Y7UUFJUTtVQUNFLHlDQUF5QztRQUMzQztRQU9BO1VBQ0UseUNBQXlDO1FBQzNDO0FBSVI7QUFHSTtFQUFBLCtCQUF3QjtFQUF4QiwwREFBd0I7SUFDeEI7QUFEd0I7QUFHdEI7RUFBQSwrQkFBMEI7RUFBMUI7QUFBMEI7QUFLaEMsZUFBZTtBQUVmLG9CQUFvQjtBQUdsQjtFQUFBLHFCQUE4QjtFQUE5QixrQkFBOEI7RUFBOUIseURBQThCO0VBQTlCO0FBQThCO0FBR2hDLDJCQUEyQjtBQUMzQjtFQUNFLDZCQUE2QjtFQUM3QixrQkFBa0I7RUFFbEIsZ0JBQWdCO0FBQ2xCO0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLG1CQUFjO0VBQWQsb0JBQWM7QUFDaEI7QUFFQTtFQUNFLHFCQUFxQjtBQUN2QjtBQUVBO0VBQ0UsZUFBZTtFQUNmLGlCQUFpQjtBQUNuQjtBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCO0FBRUE7RUFDRSw0QkFBNEI7QUFDOUI7QUFFQTtFQUNFLDJFQUEyRTtBQUM3RTtBQUVBO0VBQ0UsNEVBQTRFO0FBQzlFO0FBRUE7RUFFRSw0QkFBNEI7RUFDNUIsMEJBQTBCO0VBQzFCLDJCQUEyQjtFQUMzQixjQUFnQjtFQUFoQixhQUFnQjtFQUNoQixRQUFRO0FBQ1Y7QUFFQTtFQUVFLGFBQWE7QUFDZjtBQUVBO0VBQ0U7SUFDRSxjQUFjO0VBQ2hCOztFQUVBO0lBQ0UsVUFBVTtFQUNaO0FBQ0Y7QUFHRTtJQUNFLGVBQWU7RUFDakI7QUFFQTtJQUNFLGtCQUFrQjtFQUNwQjtBQUlBO0VBQUE7QUFBVztBQUtYO0VBQUE7QUFBVztBQUlYO0VBQUEsbUJBQWM7RUFBZDtBQUFjO0FBSWQ7RUFBQTtBQUFzQjtBQUF0QjtFQUFBO0lBQUE7RUFBc0I7QUFBQTtBQUl0QjtFQUFBO0FBQXNCO0FBQXRCO0VBQUE7SUFBQTtFQUFzQjtBQUFBO0FBR3hCLGVBQWU7QUFHYjtFQUFBLGFBQW1FO0VBQW5FLFdBQW1FO0VBQW5FLG1CQUFtRTtFQUFuRSw4QkFBbUU7RUFBbkUscUJBQW1FO0VBQW5FLGtCQUFtRTtFQUFuRTtBQUFtRTtBQUVuRTtJQUNFLDRCQUE0QjtJQUM1QiwrQkFBK0I7RUFDakM7QUFHRTtFQUFBLGFBQXFHO0VBQXJHLFdBQXFHO0VBQXJHLHNCQUFxRztFQUFyRyx1QkFBcUc7RUFBckc7QUFBcUc7QUFBckc7RUFBQTtJQUFBLHFCQUFxRztJQUFyRyxzQkFBcUc7SUFBckcsb0JBQXFHO0lBQXJHO0VBQXFHO0FBQUE7QUFBckc7RUFBQTtJQUFBLG1CQUFxRztJQUFyRztFQUFxRztBQUFBO0FBSXJHO0VBQUE7QUFBK0Q7QUFBL0Q7RUFBQTtJQUFBO0VBQStEO0FBQUE7QUFBL0Q7RUFBQTtJQUFBO0VBQStEO0FBQUE7QUFBL0Q7RUFBQTtJQUFBO0VBQStEO0FBQUE7QUFBL0Q7RUFBQTtJQUFBO0VBQStEO0FBQUE7QUFJbkUscUJBQXFCO0FBR25CO0VBQUEsZUFBVztFQUNYO0FBRFc7QUFJYixZQUFZO0FBR1I7RUFBQSxrQkFBdUI7RUFBdkIseURBQXVCO0VBQXZCLG9CQUF1QjtFQUF2Qix1QkFBdUI7SUFDdkI7QUFEdUI7QUFJckI7RUFBQSwyQkFBaUM7RUFBakM7QUFBaUM7QUFBakM7RUFBQTtJQUFBO0VBQWlDO0FBQUE7QUFLdkM7RUFFRSxxQkFBcUI7QUFDdkI7QUFHRTtFQUFBO0FBQXFCO0FBQXJCO0VBQUE7SUFBQTtFQUFxQjtBQUFBO0FBS3JCO0VBQUE7QUFBc0I7QUFBdEI7RUFBQTtJQUFBO0VBQXNCO0FBQUE7QUFHeEIsbUJBQW1CO0FBRWpCO0lBQ0UscUJBQXFCO0VBQ3ZCO0FBRUE7SUFDRSxxQkFBcUI7RUFDdkI7QUFFQTtJQUNFLE1BQU07RUFDUjtBQUdFO0VBQUEsZUFBNkc7RUFBN0csa0RBQTZHO0VBQTdHLHFDQUE2RztFQUE3Ryw0QkFBNkc7RUFBN0cscUJBQTZHO0VBQTdHLGdCQUE2RztFQUE3RztBQUE2RztBQUcvRztJQUNFLFlBQVk7RUFTZDtBQVBFO0FBSEY7TUFJSTtFQU1KOztNQUpJO1FBQ0UsU0FBUztNQUNYO0lBQ0Y7QUFJQTtFQUFBO0FBQWE7QUFHZjtJQUNFO01BQ0UscURBQXFEO0lBQ3ZEOztJQUVBO01BQ0UsdURBQXVEO0lBQ3pEOztJQUVBO01BQ0Usd0NBQXdDO0lBQzFDOztJQUdFO0lBQUE7RUFBWTs7SUFJWjtJQUFBLG1CQUErQztJQUEvQyxzQkFBK0M7SUFBL0MsaUJBQStDO0lBQS9DLGtCQUErQztJQUEvQztFQUErQztFQUVuRDtBQUdGLDZFQUE2RTtBQUU3RSxtREFBbUQ7QUFFbkQsK0JBQStCO0FBRTdCO0VBQUEsYUFBOEI7RUFBOUI7QUFBOEI7QUFBOUI7RUFBQSx1QkFBOEI7RUFBOUIsOERBQThCO0VBQTlCO0FBQThCO0FBTTVCO0VBQUEsYUFBOEI7RUFBOUI7QUFBOEI7QUFBOUI7RUFBQSx1QkFBOEI7RUFBOUIsOERBQThCO0VBQTlCO0FBQThCO0FBSTlCO0VBQUEsYUFBdUg7RUFBdkg7QUFBdUg7QUFBdkg7RUFBQSx1QkFBdUg7RUFBdkgsK0RBQXVIO0VBQXZIO0FBQXVIO0FBQXZIO0VBQUEsaUJBQXVIO0VBQXZILHdCQUF1SDtFQUF2SCxtQkFBdUg7RUFBdkgsdURBQXVIO0VBQXZILHdCQUF1SDtFQUF2SDtBQUF1SDtBQUF2SDtFQUFBLGlCQUF1SDtFQUdySDtBQUhxSDtBQU9ySDtFQUFBO0FBQW1CO0FBSW5CO0VBQUEsZUFBMEI7RUFBMUIsbUJBQTBCO0VBQTFCO0FBQTBCO0FBRTFCO0FBSEY7UUFJSTtJQUVKO01BREU7QUFJQTtFQUFBLGVBQTBCO0VBQTFCLG1CQUEwQjtFQUExQjtBQUEwQjtBQUkxQjtFQUFBLG1CQUFjO0VBQWQ7QUFBYztBQUtaO0VBQUEsYUFBOEc7RUFBOUcsWUFBOEc7RUFBOUcsV0FBOEc7RUFBOUcsbUJBQThHO0VBQTlHLHVCQUE4RztFQUE5RyxxQkFBOEc7RUFBOUcsa0JBQThHO0VBQTlHLHVEQUE4RztFQUE5Ryx5QkFBOEc7RUFBOUcsaUJBQThHO0VBQTlHLG9CQUE4RztFQUE5RztBQUE4RztBQU9wSDtFQUFBLGtCQUF1QjtFQUF2QixjQUF1QjtFQUF2QjtBQUF1QjtBQU1yQjtFQUFBLHNCQUE2QjtFQUE3QixxQkFBNkI7RUFBN0I7QUFBNkI7QUFFN0I7QUFDRTtJQUFBLGtCQUFxRDtJQUFyRCx3REFBcUQ7SUFBckQsa0JBQXFEO0lBQXJELGlCQUFxRDtJQUFyRCxvQkFBcUQ7SUFBckQsZ0RBQXFEO0lBQXJEO0VBQXFEO0FBQXJEO0NBQUEsaUJBQXFEO0VBQXJELHlCQUFxRDtBQUFBO0lBQ3ZEO0FBR0U7RUFBQSxvQkFBaUI7RUFBakI7QUFBaUI7QUFLbkI7RUFBQTtBQUFhO0FBSWpCLGtGQUFrRjtBQUVsRixnQkFBZ0I7QUFHWjtFQUFBO0FBQWlCO0FBSXJCLG1CQUFtQjtBQUVqQjtFQUFBLGtCQUFzQjtFQUF0QjtBQUFzQjtBQUdwQjtFQUFBO0FBQW1CO0FBR2pCO0VBQUEsb0JBQXFCO0VBQXJCO0FBQXFCO0FBS3ZCO0VBQUE7QUFBZTtBQUdqQjtJQUNFLHdCQUF3QjtFQUMxQjtBQUdFO0VBQUE7QUFBaUI7QUFHZjtFQUFBO0FBQW1CO0FBTW5CO0VBQUEsbUJBQThCO0VBQTlCO0FBQThCO0FBS2hDO0VBQUEsaUJBQXNCO0VBQXRCO0FBQXNCO0FBQXRCO0VBQUE7SUFBQSxnQkFBc0I7SUFBdEI7RUFBc0I7QUFBQTtBQU1wQjtFQUFBLGFBQXFEO0VBQXJELHNCQUFxRDtFQUFyRDtBQUFxRDtBQUFyRDtFQUFBO0lBQUEsbUJBQXFEO0lBQXJEO0VBQXFEO0FBQUE7QUFJekQ7RUFDQTtBQUdGLGdDQUFnQztBQUc5QjtFQUFBO0lBQUE7RUFBd0I7RUFHdEI7SUFBQTtFQUF5QjtFQUl6QjtJQUFBO0VBQXlCO0FBUEg7QUFhdEI7TUFDRSw0QkFBNEI7SUFDOUI7QUFJSjtJQUdNO0lBQUEsa0JBQW1CO01BQ25CLHlFQUF5RTtNQUN6RTtFQUZtQjtBQUt6QjtBQUVBLGdDQUFnQztBQUVoQyxnQkFBZ0I7QUFDaEI7Ozs7R0FJRztBQUNILGdCQUFnQjtBQUVoQixlQUFlO0FBR2I7RUFBQSxtQkFBaUQ7RUFBakQsa0JBQWlEO0VBQWpELHlEQUFpRDtFQUFqRCxnQkFBaUQ7RUFBakQ7QUFBaUQ7QUFBakQ7RUFBQTtJQUFBO0VBQWlEO0VBQ2pEO0lBQUE7TUFBQTtJQUE2QjtFQUFBO0FBRG9CO0FBR2pEO0lBQ0Usc0NBQXNDO0VBRXhDO0FBREU7RUFBQTtJQUFBO01BQUE7SUFBNEI7RUFBQTtBQUFBO0FBSTVCO0VBQUEsa0JBQWlEO0VBQWpELGlCQUFpRDtFQUFqRDtBQUFpRDtBQUFqRDtFQUFBO0lBQUE7RUFBaUQ7QUFBQTtBQUduRDtJQUNFLHFEQUFxRDtFQUN2RDtBQUVBO0lBQ0Usb0RBQW9EO0lBQ3BELHNCQUEwQjtJQUExQixnQkFBMEI7SUFBMUIsaUJBQTBCO0VBSzVCO0FBSEU7TUFDRSxxREFBcUQ7SUFDdkQ7QUFJQTtFQUFBLGtCQUFpRTtFQUFqRSxnQkFBaUU7RUFBakUsb0JBQWlFO0VBQWpFO0FBQWlFO0FBQWpFO0VBQUE7SUFBQTtFQUFpRTtBQUFBO0FBRWpFO0FBSEY7TUFJSTtFQUVKO0lBREU7QUFJQTtFQUFBO0FBQWdCO0FBSWhCO0VBQUEsb0JBQXVCO0VBQXZCO0FBQXVCO0FBR3JCO0VBQUEsb0JBQXVCO0VBQXZCO0FBQXVCO0FDdGY3Qjs7SUR5Zkk7Q0N6Zko7QUQ2Zkk7RUFBQSxZQUFnSTtFQUFoSTtBQUFnSTtBQUFoSTtFQUFBO0lBQUEsNEJBQWdJO0lBQWhJLCtCQUFnSTtJQUFoSSw0QkFBZ0k7SUFBaEk7RUFBZ0k7RUFBaEk7SUFBQTtNQUFBO0lBQWdJO0VBQUE7QUFBQTtBQUFoSTtFQUFBO0lBQUE7TUFBQTtJQUFnSTtFQUFBO0FBQUE7QUFBaEk7RUFBQTtJQUFBO0VBQWdJO0FBQUE7QUFEbEk7SUFFRTs7T0FFRztFQUNMO0FBR0U7RUFBQTtBQUE4QjtBQUE5QjtFQUFBO0lBQUE7RUFBOEI7RUFLNUI7SUFBQTtNQUFBLGdCQUF1QztNQUF2QztJQUF1QztFQUFBO0FBTFg7QUFTaEM7QUFDRTtJQUFBLGtCQUFtQjtJQUNuQix5RUFBeUU7SUFDekU7RUFGbUI7RUFHckI7QUFNSTtFQUFBO0lBQUE7RUFBeUI7QUFBQTtBQUszQjtFQUFBO0FBQWlDO0FBQWpDO0VBQUE7SUFBQTtFQUFpQztBQUFBO0FBTTdCO0VBQUE7SUFBQTtNQUFBO0lBQTJCO0VBQUE7QUFBQTtBQU83QjtFQUFBO0FBQWM7QUFJbEI7SUFDRTtNQUNFLHVEQUF1RDtJQUN6RDs7SUFFQTtNQUNFLHVEQUF1RDtJQUN6RDs7SUFFQTtNQUNFLHFDQUFxQztJQUN2QztFQUNGO0FBR0YscUJBQXFCO0FBQ3JCO0VBQ0Usd0NBQXdDO0FBQzFDO0FBRUE7RUFDRSxxQ0FBcUM7QUFDdkM7QUFJSTtFQUFBO0FBQXNDO0FBQXRDO0VBQUE7SUFBQTtFQUFzQztBQUFBO0FBSTFDO0VBRUk7SUFBQTtFQUFpQjs7SUFHZjtJQUFBO0VBQWtCO0FBR3hCO0FBRUEsd0JBQXdCO0FBRXhCLEtBQUs7QUFFTCxJQUFJO0FBRUosaUJBQWlCO0FBR2Y7RUFBQSxtQkFBdUY7RUFBdkYsa0JBQXVGO0VBQXZGLHlEQUF1RjtFQUF2RixlQUF1RjtFQUF2Riw4QkFBdUY7RUFBdkYsb0JBQXVGO0VBQXZGLDhDQUF1RjtFQUF2Riw4RUFBdUY7RUFBdkYsaUdBQXVGO0VBQXZGO0FBQXVGO0FBQXZGO0VBQUE7SUFBQTtFQUF1RjtBQUFBO0FBSW5GO0VBQUEsaUJBQXNCO0VBQXRCO0FBQXNCO0FBQXRCO0VBQUE7SUFBQSxnQkFBc0I7SUFBdEI7RUFBc0I7QUFBQTtBQUt4QjtFQUFBLG9CQUF5QjtFQUF6QixxQkFBeUI7RUFBekI7QUFBeUI7QUFHdkI7RUFBQSxvQkFBaUI7RUFBakI7QUFBaUI7QUFVakI7RUFBQSxpQkFBc0M7RUFBdEMsb0JBQXNDO0VBQXRDLDhDQUFzQztNQUN0QztBQURzQztBQVFwQztFQUFBO0FBQVc7QUFHYjtRQUNFLHVCQUF1QjtRQUN2QixzQ0FBc0M7UUFDdEMsa0RBQXVHO1FBQXZHLG9DQUF1RztRQUF2Ryw0QkFBdUc7UUFBdkcscUJBQXVHO1FBQXZHLGdCQUF1RztRQUF2RyxvQkFBdUc7TUFDekc7QUFHRjtNQUNFLHFEQUFxRDtJQUN2RDtBQUdGO0lBQ0Usc0NBQXNDO0VBQ3hDO0FBRUE7QUFsREY7SUFtREk7QUFVSjtFQVRFO0FBRUE7SUFDRSxxREFBcUQ7RUFDdkQ7QUFHRTtFQUFBO0FBQTJCO0FBQTNCO0VBQUE7SUFBQTtFQUEyQjtBQUFBO0FBSS9CO0VBQ0U7SUFDRSx1REFBdUQ7RUFDekQ7QUFDRjtBQUVBLDRCQUE0QjtBQUt0QjtFQUFBO0FBQWE7QUFHWDtFQUFBO0FBQWE7QUFTbkI7SUFDRSxzQkFBc0I7SUFDdEIsa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixlQUFlO0lBQ2YsZ0JBQWdCO0VBQ2xCO0FBRUE7SUFDRSxnQkFBZ0I7SUFDaEIsbUJBQWdGO0lBQWhGLGtCQUFnRjtJQUFoRix5REFBZ0Y7SUFBaEYsYUFBZ0Y7SUFBaEYsZUFBZ0Y7SUFBaEYsb0JBQWdGO0lBQWhGLDhDQUFnRjtJQUFoRiw4RUFBZ0Y7SUFBaEYsaUdBQWdGO0lBQWhGLHVHQUFnRjtFQWFsRjtBQVhFO01BQ0UscURBQXFEO0lBQ3ZEO0FBRUE7TUFDRSx1Q0FBdUM7SUFDekM7QUFFQTtNQUNFLG9DQUFvQztJQUN0QztBQUdGO0lBQ0UsVUFBVTtJQUNWLFFBQVE7SUFDUixXQUFXO0lBQ1gsd0NBQXFDO09BQXJDLHFDQUFxQztJQUNyQyxtQkFBYztFQUNoQjtBQUVBO0lBQ0UsZ0JBQWdCO0VBQ2xCO0FBR0U7RUFBQTtBQUFjO0FBR2hCLGVBQWU7QUFFYjtFQUFBO0FBQWtCO0FBRWxCO01BQ0UsWUFBWTtNQUNaLE9BQU87TUFDUCx1Q0FBb0M7U0FBcEMsb0NBQW9DO0lBQ3RDO0FBRUE7SUFDQTtBQUlKO0VBRUk7SUFBQSxzQkFBeUI7SUFBekIseUJBQXlCO0lBQXpCO0VBQXlCOztJQUV6QjtNQUNFLGVBQWU7TUFDZixzQkFBd0M7TUFBeEMsNEJBQXdDO01BQXhDLDZCQUF3QztNQUF4QywwQ0FBd0M7TUFBeEMseUNBQXdDO0lBQzFDOztJQUdFO0lBQUEsaUJBQXFEO0lBQXJELGtCQUFxRDtJQUFyRCwwQkFBcUQ7SUFBckQsc0NBQXFEO0lBQXJELHVDQUFxRDtJQUFyRDtFQUFxRDs7TUFHbkQ7SUFBQTtFQUFnQjtBQUl4QjtBQUVBLHFEQUFxRDtBQUduRDtFQUFBO0FBQWE7QUFJYjtFQUFBLGFBQW1HO0VBQW5HLHNCQUFtRztFQUFuRyw4QkFBbUc7RUFBbkcsbUJBQW1HO0VBQW5HLGtCQUFtRztFQUFuRyx5REFBbUc7RUFBbkcsZUFBbUc7RUFBbkcsOEJBQW1HO0VBQW5HO0FBQW1HO0FBQW5HO0VBQUE7SUFBQTtFQUFtRztBQUFBO0FBR2pHO0VBQUEsa0JBQXdDO0VBQXhDLDJCQUF3QztFQUF4QyxZQUF3QztFQUF4QztBQUF3QztBQUd0QztFQUFBLDRCQUE0QjtFQUE1QjtBQUE0QjtBQUk1QjtFQUFBLGdCQUFpQztFQUFqQyxXQUFpQztFQUFqQyxXQUFpQztFQUFqQyxnQkFBaUM7RUFBakM7QUFBaUM7QUFTbkM7RUFBQSxzQkFBd0M7RUFBeEMsZ0JBQXdDO0VBQXhDLG9CQUF3QztFQUF4Qyw4Q0FBd0M7SUFDeEM7QUFEd0M7QUFLeEM7RUFBQSxtQkFBMkM7RUFBM0MsZ0JBQTJDO0VBQTNDLG9CQUEyQztFQUEzQyw4Q0FBMkM7SUFDM0M7QUFEMkM7QUFJN0M7SUFDRSx1QkFBdUI7RUFDekI7QUFFQTtJQUNFLHVEQUF1RDtFQU16RDtBQUpFO01BQ0Usc0NBQXNDO01BQ3RDLGtEQUEwSDtNQUExSCxvQ0FBMEg7TUFBMUgsNEJBQTBIO01BQTFILHFCQUEwSDtNQUExSCxnQkFBMEg7TUFBMUgsb0JBQTBIO01BQTFILG9CQUEwSDtNQUExSCw4Q0FBMEg7SUFDNUg7QUFJSjtFQUNFO0lBQ0Usa0VBQWtFO0VBQ3BFO0FBQ0Y7QUFFQSwyQkFBMkI7QUFFM0I7RUFDRSxhQUFhO0FBQ2Y7QUFFQSxvQkFBb0I7QUFDcEI7OztrREFHa0Q7QUFJOUM7RUFBQTtBQUFhO0FBSWI7TUFDRSxhQUFhO0lBQ2Y7QUFLRTtFQUFBLDRCQUFnQjtFQUFoQjtBQUFnQjtBQUtsQjtNQUNFLGFBQWE7SUFDZjtBQUdFO0VBQUE7QUFBVztBQUtqQjtFQUNFO0lBRUUseUVBQXlFO0lBQ3pFLHVFQUF1RTtFQUN6RTtBQUNGO0FBS0k7RUFBQSxpQkFBbUg7RUFBbkgsa0JBQW1IO0VBQW5ILG1CQUFtSDtFQUFuSCxxQkFBbUg7RUFBbkgsdUJBQW1IO0VBQW5ILGtCQUFtSDtFQUFuSCx3REFBbUg7RUFBbkgsZUFBbUg7RUFBbkgsa0JBQW1IO0VBQW5ILG1CQUFtSDtFQUFuSCxrQkFBbUg7RUFBbkgsb0JBQW1IO0VBQW5ILGdEQUFtSDtFQUFuSDtBQUFtSDtBQUFuSDtDQUFBLGlCQUFtSDtFQUFuSCx5QkFBbUg7QUFBQTtBQUFuSDtFQUFBO0lBQUEsb0JBQW1IO0lBQW5IO0VBQW1IO0FBQUE7QUFHakg7RUFBQSxvQkFBaUI7RUFBakI7QUFBaUI7QUFHbkI7QUFDRTtJQUFBLHFCQUFXO0lBQVg7RUFBVztJQUNiO0FBR0U7RUFBQSxvQkFBaUI7RUFBakI7QUFBaUI7QUFLdkIsc0NBQXNDO0FBR3BDO0VBQUEsa0JBQXFCO0VBQXJCO0FBQXFCO0FBR3ZCO0VBQ0UsNkJBQTZCO0VBRTdCLGtCQUE4SztFQUE5SyxTQUE4SztFQUE5SyxXQUE4SztFQUE5SyxzQkFBOEs7RUFBOUssaUJBQThLO0VBQTlLLGtCQUE4SztFQUE5SyxtQkFBOEs7RUFBOUsscUJBQThLO0VBQTlLLHNCQUE4SztFQUE5SywrTEFBOEs7RUFBOUssdUJBQThLO0VBQTlLLGtCQUE4SztFQUE5Syx3REFBOEs7RUFBOUssZUFBOEs7RUFBOUssa0JBQThLO0VBQTlLLG1CQUE4SztFQUE5SyxrQkFBOEs7RUFBOUssb0JBQThLO0VBQTlLLGdEQUE4SztFQUE5SywwQkFBOEs7QUFrQmhMO0FBbEJFO0NBQUEsaUJBQThLO0VBQTlLLHlCQUE4SztBQUFBO0FBQTlLO0VBQUE7SUFBQSxvQkFBOEs7SUFBOUs7RUFBOEs7QUFBQTtBQUhoTDtFQUlFLHVCQUFrQjtFQUFsQixrQkFBa0I7QUFpQnBCO0FBZEk7RUFBQSxvQkFBaUI7RUFBakI7QUFBaUI7QUFHbkI7SUFDRSxVQUFVO0VBQ1o7QUFFQTtBQUNFO0lBQUEscUJBQVc7SUFBWDtFQUFXO0VBQ2I7QUFHRTtFQUFBLG9CQUFpQjtFQUFqQjtBQUFpQjtBQUlyQiw4Q0FBOEM7QUFHNUM7RUFBQSxrQkFBcUI7RUFBckI7QUFBcUI7QUFBckI7Q0FBQSxpQkFBcUI7RUFBckIseUJBQXFCO0FBQUE7QUFHdkI7RUFJRSxZQUFZO0FBQ2Q7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7QUFDdkI7QUFFQSxxQkFBcUI7QUFLbkI7QUFIRjs7O0lBSUksOERBQThEO0lBQzlEO0FBRUo7RUFERTtBQUlBO0VBQUEsc0JBQWdFO0VBQWhFLGdCQUFnRTtFQUFoRSxrQkFBZ0U7RUFBaEUsZ0JBQWdFO0VBQWhFLG1CQUFnRTtFQUFoRSxvQkFBZ0U7RUFBaEU7QUFBZ0U7QUFJaEU7RUFBQSxnQkFBeUM7RUFBekMsbUJBQXlDO0VBQXpDO0FBQXlDO0FBRzNDO0VBQ0Usa0JBQWtCO0FBQ3BCO0FBRUE7RUFDRSxXQUFXO0VBQ1gsaUJBQWlCO0FBQ25CO0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIseUJBQXlCO0VBQ3pCLFlBQVk7QUFTZDtBQU5JO0VBQUEsNEJBQWdCO0VBQWhCO0FBQWdCO0FBR2Q7RUFBQTtBQUFhO0FBS25CO0VBQ0UsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtFQUNyQixVQUFVO0VBQ1YsVUFBVTtBQUNaO0FBRUE7RUFFRSw2REFBNkQ7QUFDL0Q7QUFFQTtFQUVFLHlDQUF5QztBQUMzQztBQUVBO0VBQ0UsNEJBQTRCO0FBQzlCO0FBRUE7RUFDRSwyQkFBMkI7QUFDN0I7QUFFQTtFQUNFO0lBQ0UsNkJBQTZCO0VBQy9COztFQUVBO0lBQ0UsNEJBQTRCO0VBQzlCO0FBQ0Y7QUFFQTtFQUNFO0lBQ0UsNkJBQTZCO0VBQy9COztFQUVBO0lBQ0UsNEJBQTRCO0VBQzlCO0FBQ0Y7QUFFQTtFQUNFO0lBQ0UsNEJBQTRCO0VBQzlCOztFQUVBO0lBQ0UsMkJBQTJCO0VBQzdCO0FBQ0Y7QUFFQTtFQUNFO0lBQ0UsNkJBQTZCO0VBQy9COztFQUVBO0lBQ0UsNEJBQTRCO0VBQzlCO0FBQ0Y7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQkc7QUFFSCxXQUFXO0FBQ1g7RUFFRSxjQUFjO0FBQ2hCO0FBRUE7RUFHRSxXQUFXO0FBQ2I7QUFFQTtFQUVFLG9CQUFvQjtBQUN0QjtBQUVBO0VBQ0U7SUFDRSx1REFBdUQ7RUFDekQ7QUFDRjtBQUVBLGdDQUFnQztBQUU5QjtJQUNFLGNBQWM7RUFDaEI7QUFJQTtFQUFBO0FBQVc7QUFJWDtJQUNFLGFBQWE7RUFDZjtBQUdGLGdDQUFnQztBQUVoQyxrQkFBa0I7QUFDbEIsNkJBQTZCO0FBRTNCO0VBQUE7QUFBa0I7QUFHcEIsOEJBQThCO0FBQzlCO0VBQ0Usc0VBQXNFO0FBQ3hFO0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7QUFFQSwwQkFBMEI7QUFDMUI7RUFDRSxhQUFhO0FBQ2Y7QUFFQTtFQUNFLHNDQUFzQztBQUN4QztBQUVBO0VBQ0Usc0JBQXNCO0FBQ3hCO0FBRUE7RUFDRSxnREFBZ0Q7QUFDbEQ7QUFFQSw4QkFBOEI7QUFDOUI7RUFDRSwyQkFBMkI7RUFDM0IsZ0JBQWdCO0VBQ2hCO2tCQUNnQjtBQUNsQjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLHlCQUF5QjtBQUMzQjtBQUdJO0VBQUEsNEJBQXNDO0VBQXRDLG1CQUFzQztJQUN0QztBQURzQztBQUV0QztNQUNFO1FBQ0UsdUJBQXVCO01BQ3pCO0lBQ0Y7QUFFRTtFQUFBO0FBQXlCO0FBQXpCO0VBQUE7SUFBQTtFQUF5QjtBQUFBO0FBTTdCO0VBQUEsZ0JBQWdIO0VBQWhILG1CQUFnSDtFQUFoSCxnQkFBZ0g7RUFBaEgsaUJBQWdIO0VBQWhILGNBQWdIO0VBQWhILHVCQUFnSDtFQUFoSCxrQkFBZ0g7RUFBaEgscUJBQWdIO0VBQWhILGtCQUFnSDtFQUFoSCx1REFBZ0g7RUFBaEgsa0JBQWdIO0VBQWhILG1CQUFnSDtFQUFoSCxtQkFBZ0g7RUFBaEgsc0JBQWdIO0VBQWhILDZCQUFnSDtFQUFoSCxvQkFBZ0g7RUFBaEgsZ0RBQWdIO0VBQWhIO0FBQWdIO0FBRTlHO0VBQUEsK0JBQStCO0VBQS9CLDJEQUErQjtFQUEvQixrQkFBK0I7SUFDL0I7QUFEK0I7QUFLakM7RUFBQSxhQUEwRDtFQUExRCxzQkFBMEQ7RUFBMUQsOEJBQTBEO0VBQTFEO0FBQTBEO0FBQTFEO0VBQUE7SUFBQTtFQUEwRDtBQUFBO0FBRXhEO0VBQUEsYUFBZ0Q7RUFBaEQsZUFBZ0Q7RUFBaEQsc0JBQWdEO0VBQWhELFlBQWdEO0VBQWhEO0FBQWdEO0FBRzlDO0VBQUE7QUFBVztBQUlYO0VBQUEsa0JBQTZDO0VBQTdDLGVBQTZDO0VBQTdDO0FBQTZDO0FBSy9DO0VBQUEsZUFBNEI7RUFBNUI7QUFBNEI7QUFJOUI7SUFDRSxlQUFlO0VBQ2pCO0FBS0U7RUFBQSxpQkFBZ0Y7RUFBaEYsa0JBQWdGO0VBQWhGLGNBQWdGO0VBQWhGLGVBQWdGO0VBQWhGLGdCQUFnRjtFQUFoRixvQkFBZ0Y7RUFBaEYsb0JBQWdGO0VBQWhGO0FBQWdGO0FBSWhGO0VBQUEsYUFBb0M7RUFBcEMsdUJBQW9DO0VBQXBDO0FBQW9DO0FBSXBDO0VBQUEsYUFBNEM7RUFBNUMsa0JBQTRDO0VBQTVDLGtCQUE0QztFQUE1QztBQUE0QztBQUloRCxXQUFXO0FBQ1g7RUFDRTtJQUNFO3lCQUNxQjtFQUN2Qjs7RUFFQTtJQUNFLHNCQUFzQjtJQUN0QixXQUFXO0lBQ1gsZUFBZTtFQUNqQjs7RUFFQTtJQUNFLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsZUFBZTtFQUNqQjtFQUNBO0lBQ0UsZ0JBQWdCO0VBQ2xCO0FBQ0Y7QUFHRTtFQUFBLGtCQUEwRjtFQUExRix5REFBMEY7RUFBMUYsaUJBQTBGO0VBQTFGLG9CQUEwRjtFQUExRiw2QkFBMEY7RUFBMUYsOEJBQTBGO0VBQTFGLGtCQUEwRjtFQUExRiw0QkFBMEY7RUFBMUYsb0JBQTBGO0VBQTFGO0FBQTBGO0FBRXhGO0VBQUEsOEJBQW9DO0VBQXBDO0FBQW9DO0FBSWxDO0VBQUEsZUFBNEM7RUFBNUMsYUFBNEM7RUFBNUMsbUJBQTRDO0VBQTVDO0FBQTRDO0FBTWhEO0VBQUEsWUFBeUI7RUFDekIsT0FBTztFQUNQO0FBRnlCO0FBTXpCO0VBQUEsbUJBQXNGO0VBQXRGLGdCQUFzRjtFQUF0RixlQUFzRjtFQUF0RixnQkFBc0Y7RUFBdEY7QUFBc0Y7QUFBdEY7RUFBQTtJQUFBO0VBQXNGO0FBQUE7QUFJdEY7RUFBQTtBQUFlO0FBSWY7RUFBQSxXQUFtRztFQUFuRyxhQUFtRztFQUFuRyxxQkFBbUc7RUFBbkcsdUJBQW1HO0VBQW5HLFNBQW1HO0VBQW5HLFlBQW1HO0VBQW5HLGdCQUFtRztFQUFuRyxtQkFBbUc7RUFBbkcsZ0JBQW1HO0VBQW5HO0FBQW1HO0FBSS9GO0VBQUEsb0JBQTJFO0VBQTNFLCtDQUEyRTtFQUEzRSxxQ0FBMkU7RUFBM0UsaUNBQTJFO0VBQTNFLHlDQUEyRTtFQUEzRTtBQUEyRTtBQUEzRTtFQUFBLG9CQUEyRTtFQUEzRTtBQUEyRTtBQUtqRjtFQUNFLGNBQWM7RUFDZCxxQkFBcUI7RUFDckIsaUJBQWlCO0FBQ25CO0FBRUE7RUFDRSxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLFNBQVM7QUFVWDtBQVJJO0VBQUE7QUFBbUI7QUFFakI7RUFBQSxZQUF3QjtFQUF4QjtBQUF3QjtBQUd4QjtFQUFBO0FBQWM7QUFNbEI7RUFBQSxhQUFrRjtFQUFsRixtQkFBa0Y7RUFBbEYsdUJBQWtGO0VBQWxGLGtCQUFrRjtFQUFsRix3REFBa0Y7RUFBbEYsb0JBQWtGO0VBQWxGLGdEQUFrRjtFQUFsRjtBQUFrRjtBQUFsRjtDQUFBLGlCQUFrRjtFQUFsRix5QkFBa0Y7QUFBQTtBQUVoRjtFQUFBLGdCQUFxQztFQUFyQyxtQkFBcUM7RUFBckMsaUJBQXFDO0VBQXJDLGtCQUFxQztFQUFyQztBQUFxQztBQUl6QztFQUNFLGNBQWM7QUFDaEI7QUFFRTtFQUFBLDZCQUFxQjtFQUFyQjtBQUFxQjtBQUd2QjtFQUNFLHlCQUF5QjtBQUMzQjtBQUVBLFlBQVk7QUFRUjtFQUFBO0lBQUEsOEJBQWtDO0lBQWxDO0VBQWtDO0FBQUE7QUFBbEM7RUFBQTtJQUFBLDRCQUFrQztJQUFsQztFQUFrQztFVi95Q3RDO0lBQUE7RUF1QkE7QVV3eENzQyIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQHRhaWx3aW5kIGJhc2U7XG4iLCJAdGFpbHdpbmQgdXRpbGl0aWVzO1xuIiwiQGltcG9ydCBcInRhaWx3aW5kY3NzL2Jhc2VcIjtcclxuQGltcG9ydCBcInRhaWx3aW5kY3NzL2NvbXBvbmVudHNcIjtcclxuQGltcG9ydCBcInRhaWx3aW5kY3NzL3V0aWxpdGllc1wiO1xyXG5cclxuLyogSW1wb3J0IHZhcmlhYmxlcyAqL1xyXG5AaW1wb3J0IFwiaW5jL192YXJpYWJsZXMucGNzc1wiO1xyXG5cclxuLyogUmVzZXRzICovXHJcbkBpbXBvcnQgXCJpbmMvX3Jlc2V0LnBjc3NcIjtcclxuXHJcbi8qIFNwYWNpbmdzICovXHJcbkBpbXBvcnQgXCJpbmMvX3NwYWNpbmdzLnBjc3NcIjtcclxuXHJcbi8qIEltcG9ydCBCbG9jay9UZW1wbGF0ZXMvUGF0dGVybnMgU3R5bGVzICovXHJcbkBpbXBvcnQtZ2xvYiBcIi4vaW5jL292ZXJyaWRlcy8qKi8qLnBjc3NcIjtcclxuXHJcbi8qIEltcG9ydCB0ZW1wbGF0ZXMsIHBhcnRzLCBwYXR0ZXJucyByZWxhdGVkIHN0eWxlcyAqL1xyXG5AaW1wb3J0IFwiaW5jL190ZW1wbGF0ZXMucGNzc1wiO1xyXG5AaW1wb3J0IFwiaW5jL190ZW1wbGF0ZS1wYXJ0cy5wY3NzXCI7XHJcbkBpbXBvcnQgXCJpbmMvX2Jsb2NrLXBhdHRlcm5zLnBjc3NcIjtcclxuXHJcbi8qIEdsb2JhbCBzdHlsZXMgKi9cclxuQGltcG9ydCBcImluYy9fZ2xvYmFsLnBjc3NcIjtcclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKiBBbGwgdmFyaWFibGVzICAgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLypcclxuICBUT0RPIE5leHQgdGhpbmdzIHRvIGltcGxlbWVudCBpbiB0aGVtZVxyXG4gLSBGbHVpZCB0eXBvZ3JhcGh5IChodHRwczovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDIyLzAxL21vZGVybi1mbHVpZC10eXBvZ3JhcGh5LWNzcy1jbGFtcC8pXHJcbiAtIEtlZXAgdGhlbWUuanNvbiB2YWx1ZXMgbW9iaWxlIGZpcnN0IGFzIHRhaWx3aW5kIGlzIG1vYmlsZSBmaXJzdFxyXG5cclxuKi9cclxuXHJcbi8qKioqKioqKioqKioqKiogQnJlYWtQb2ludHMgLSB0YWlsd2luZC5jb25maWcuanNvbiAqKioqKioqKioqKioqKipcclxuXHJcbiAgICB4czogXCI0ODBweFwiLFxyXG4gICAgc206IFwiNjQwcHhcIixcclxuICAgIG1kOiBcIjc2OHB4XCIsXHJcbiAgICBsZzogXCIxMDI0cHhcIixcclxuICAgIHhsOiBcIjEyODBweFwiLFxyXG4gICAgMnhsOiBcIjE1MzZweFwiLFxyXG5cclxuICAtIFRhaWx3aW5kIChDU1MpIHVzYWdlXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIHRoZW1lKHNjcmVlbnMueHMpXHJcblxyXG4gICovXHJcblxyXG4vKioqKioqKioqKioqKioqIEZvbnQgU2l6ZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4tIFNsdWdzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuZnMteHMgLSAxMnB4IC8gMC43NXJlbVxyXG5mcy1zbSAtIDE0cHggLyAwLjg3NXJlbVxyXG5mcy1jdXN0b20gLSAxNXB4IC8gMC45MzhyZW1cclxuZnMtYmFzZSAtIDE2cHggLyAxcmVtXHJcbmZzLWxnIC0gMThweCAvIDEuMTI1cmVtXHJcbmZzLXhsIC0gMjBweCAvIDEuMjVyZW1cclxuZnMtMi14bCAtIDI0cHggLyAxLjVyZW1cclxuZnMtMy14bCAtIDMwcHggLyAxLjg3NXJlbVxyXG5mcy00LXhsIC0gMzZweCAvIDIuMjVyZW1cclxuZnMtbWF4LTM2IC0gMzZweFxyXG5mcy1tYXgtNDggLSA0OHB4XHJcbmZzLW1heC02MCAtIDYwcHhcclxuZnMtbWF4LTcyIC0gNzJweFxyXG5cclxuLSBUYWlsd2luZCB1c2FnZVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbnRleHQtZnMteHNcclxuXHJcbi0gV1AgdXNhZ2VcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4tLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tZnMteHNcclxuLS13cC0tcHJlc2V0LS1mb250LXNpemUtLWZzLWN1c3RvbVxyXG4tLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tZnMtc21cclxuLS13cC0tcHJlc2V0LS1mb250LXNpemUtLWZzLWJhc2VcclxuLS13cC0tcHJlc2V0LS1mb250LXNpemUtLWZzLWxnXHJcbi0td3AtLXByZXNldC0tZm9udC1zaXplLS1mcy14bFxyXG4tLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tZnMtMi14bFxyXG4tLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tZnMtMy14bFxyXG4tLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tZnMtNC14bFxyXG4tLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tZnMtbWF4LTM2XHJcbi0td3AtLXByZXNldC0tZm9udC1zaXplLS1mcy1tYXgtNDhcclxuLS13cC0tcHJlc2V0LS1mb250LXNpemUtLWZzLW1heC02MFxyXG4tLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tZnMtbWF4LTcyXHJcblxyXG4qL1xyXG5cclxuLyoqKioqKioqKioqKioqKiBDb2xvcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4tIFNsdWdzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuY2xyLWJhc2UgLSAjRjRGNEY0IC8vIFJ1dGdlcnMgTGlnaHQgR3JleVxyXG5jbHItcHJpbWFyeSAtICNDQzAwMzMgLy8gUnV0Z2VycyBSZWRcclxuY2xyLXNlY29uZGFyeSAtICM1RjZBNzIgLy8gUnV0Z2VycyBEYXJrIGdyZXlcclxuY2xyLXdoaXRlIC0gI2ZmZlxyXG5jbHItYmxhY2sgLSAjMDAwXHJcblxyXG4tIFRhaWx3aW5kIHVzYWdlXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxudGV4dC1jbHItYmFzZVxyXG5iZy1jbHItYmFzZVxyXG5ib3JkZXItY2xyLWJhc2VcclxuXHJcbi0gV1AgdmFyaWFibGVzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLS13cC0tcHJlc2V0LS1jb2xvci0tY2xyLWJhc2VcclxuLS13cC0tcHJlc2V0LS1jb2xvci0tY2xyLXByaW1hcnlcclxuLS13cC0tcHJlc2V0LS1jb2xvci0tY2xyLXNlY29uZGFyeVxyXG4tLXdwLS1wcmVzZXQtLWNvbG9yLS1jbHItd2hpdGVcclxuLS13cC0tcHJlc2V0LS1jb2xvci0tY2xyLWJsYWNrXHJcblxyXG4qL1xyXG5cclxuLyoqKioqKioqKioqKioqKiBGb250IEZhbWlsaWVzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4vKlxyXG4tIFdQIGJhc2VkIG5hbWVzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi0tZmYtc2FuczogdmFyKC0td3AtLXByZXNldC0tZm9udC1mYW1pbHktLWZmLXNvdXJjZS1zYW5zKTtcclxuXHJcbiovXHJcblxyXG4vKioqKioqKioqKioqKioqIEZvbnQgV2VpZ2h0cyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbiAtIFNsdWdzXHJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiBmdy10aGluOiAxMDA7XHJcbiBmdy1leHRyYS1saWdodDogMjAwO1xyXG4gZnctbGlnaHQ6IDMwMDtcclxuIGZ3LXJlZ3VsYXI6IDQwMDtcclxuIGZ3LW1lZGl1bTogNTAwO1xyXG4gZnctc2VtaS1ib2xkOiA2MDA7XHJcbiBmdy1ib2xkOiA3MDA7XHJcbiBmdy1leHRyYS1ib2xkOiA4MDA7XHJcbiBmdy1ibGFjazogOTAwO1xyXG5cclxuIC0gVGFpbHdpbmQgdXNhZ2VcclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuIGZvbnQtZnctdGhpblxyXG5cclxuIC0gV1AgdXNhZ2VcclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLS13cC0tY3VzdG9tLS10eXBvZ3JhcGh5LS1mb250LXdlaWdodC0tZnctdGhpblxyXG4tLXdwLS1jdXN0b20tLXR5cG9ncmFwaHktLWZvbnQtd2VpZ2h0LS1mdy1leHRyYS1saWdodFxyXG4tLXdwLS1jdXN0b20tLXR5cG9ncmFwaHktLWZvbnQtd2VpZ2h0LS1mdy1saWdodFxyXG4tLXdwLS1jdXN0b20tLXR5cG9ncmFwaHktLWZvbnQtd2VpZ2h0LS1mdy1yZWd1bGFyXHJcbi0td3AtLWN1c3RvbS0tdHlwb2dyYXBoeS0tZm9udC13ZWlnaHQtLWZ3LW1lZGl1bVxyXG4tLXdwLS1jdXN0b20tLXR5cG9ncmFwaHktLWZvbnQtd2VpZ2h0LS1mdy1zZW1pLWJvbGRcclxuLS13cC0tY3VzdG9tLS10eXBvZ3JhcGh5LS1mb250LXdlaWdodC0tZnctYm9sZFxyXG4tLXdwLS1jdXN0b20tLXR5cG9ncmFwaHktLWZvbnQtd2VpZ2h0LS1mdy1leHRyYS1ib2xkXHJcbi0td3AtLWN1c3RvbS0tdHlwb2dyYXBoeS0tZm9udC13ZWlnaHQtLWZ3LWJsYWNrXHJcblxyXG5cclxuKi9cclxuXHJcbi8qKioqKioqKioqKioqKiogTGluZSBIZWlnaHRzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuLSBTbHVnc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5saC1ub25lXHQgICAgLy8gIDE7XHJcbmxoLXRpZ2h0XHQvLyAgMS4yNTtcclxubGgtc251Z1x0ICAgIC8vICAxLjM3NTtcclxubGgtbm9ybWFsXHQvLyAgMS41O1xyXG5saC1yZWxheGVkXHQvLyAgMS42MjU7XHJcbmxoLWxvb3NlXHQvLyAgMjtcclxuXHJcbi0gV1AgdXNhZ2VcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4tLXdwLS1jdXN0b20tLXR5cG9ncmFwaHktLWxpbmUtaGVpZ2h0LS1saC1ub25lOiAxO1xyXG4tLXdwLS1jdXN0b20tLXR5cG9ncmFwaHktLWxpbmUtaGVpZ2h0LS1saC10aWdodDogMS4yNTtcclxuLS13cC0tY3VzdG9tLS10eXBvZ3JhcGh5LS1saW5lLWhlaWdodC0tbGgtc251ZzogMS4zNzU7XHJcbi0td3AtLWN1c3RvbS0tdHlwb2dyYXBoeS0tbGluZS1oZWlnaHQtLWxoLW5vcm1hbDogMS41O1xyXG4tLXdwLS1jdXN0b20tLXR5cG9ncmFwaHktLWxpbmUtaGVpZ2h0LS1saC1yZWxheGVkOiAxLjYyNTtcclxuLS13cC0tY3VzdG9tLS10eXBvZ3JhcGh5LS1saW5lLWhlaWdodC0tbGgtbG9vc2U6IDI7XHJcblxyXG4qL1xyXG5cclxuLyoqKioqKioqKioqKioqKiBTcGFjaW5nICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuIC0gU2x1Z3NcclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuc3AtMCAgLy8gMCAtIDA7XHJcbnNwLXhzICAvLyAwLjVyZW0gLSA4cHg7XHJcbnNwLXNtICAvLyAxcmVtIC0gMTZweDtcclxuc3AtYmFzZSAgLy8gMS41cmVtIC0gMjRweDtcclxuc3AtbGc6IC8vIDJyZW0gLSAzMnB4O1xyXG5zcC14bDogLy8gMi41cmVtIC0gNDBweDtcclxuc3AtaW5uZXI6IC8vIDJyZW0gLSA0MHB4O1xyXG5cclxuXHJcbi0gdGFpbHdpbmQgY2xhc3Nlc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbnAtc3AtMFxyXG5wLXNwLXhzXHJcblxyXG5cclxuLSBXUCB1c2FnZVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtMCAgLy8gMCAtIDA7XHJcbi0td3AtLXByZXNldC0tc3BhY2luZy0tc3AteHMgIC8vIDAuNXJlbSAtIDhweDtcclxuLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1zbSAgLy8gMXJlbSAtIDE2cHg7XHJcbi0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtYmFzZSAgLy8gMS41cmVtIC0gMjRweDtcclxuLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1sZzogLy8gMnJlbSAtIDMycHg7XHJcbi0td3AtLXByZXNldC0tc3BhY2luZy0tc3AteGw6IC8vIDIuNXJlbSAtIDQwcHg7XHJcblxyXG5cclxuKi9cclxuXHJcbi8qKioqKioqKioqKioqKiogbGF5b3V0IFNpemVzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuLSBXUCBiYXNlZCBuYW1lc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAtLXdwLS1zdHlsZS0tZ2xvYmFsLS1jb250ZW50LXNpemUgICAgICAgICAvLyAxMjAwcHg7XHJcbiAtLXdwLS1zdHlsZS0tZ2xvYmFsLS13aWRlLXNpemUgICAgICAgICAgICAgLy8gMTI4MHB4O1xyXG5cclxuKi9cclxuXHJcbi8qKioqKioqKioqKioqKiogQmxvY2sgR2FwICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuLSBXUCBiYXNlZCBuYW1lc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAtLXdwLS1zdHlsZS0tYmxvY2stZ2FwXHJcblxyXG4qL1xyXG5cclxuOnJvb3Qge1xyXG4gIC0tZmYtc2FuczogdmFyKC0td3AtLXByZXNldC0tZm9udC1mYW1pbHktLWZmLXNvdXJjZS1zYW5zKTtcclxufVxyXG4iLCIvKiBDU1MgUmVzZXQgKi9cclxuQGxheWVyIGJhc2Uge1xyXG4gIC8qKioqKioqKioqKioqKioqKioqKiogQ1NTIFJFU0VUICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAvKiBodHRwczovL3BpY2NhbGlsLmxpL2Jsb2cvYS1tb2Rlcm4tY3NzLXJlc2V0LyAqL1xyXG5cclxuICAvKiBCb3ggc2l6aW5nIHJ1bGVzICovXHJcbiAgKixcclxuICAqOjpiZWZvcmUsXHJcbiAgKjo6YWZ0ZXIge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB9XHJcblxyXG4gICoge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gIC8qIFJlbW92ZSBsaXN0IHN0eWxlcyBvbiB1bCwgb2wgZWxlbWVudHMgd2l0aCBhIGxpc3Qgcm9sZSwgd2hpY2ggc3VnZ2VzdHMgZGVmYXVsdCBzdHlsaW5nIHdpbGwgYmUgcmVtb3ZlZCAqL1xyXG4gIHVsW3JvbGU9XCJsaXN0XCJdLFxyXG4gIG9sW3JvbGU9XCJsaXN0XCJdLFxyXG4gIHVsLFxyXG4gIG9sIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvKiBTZXQgY29yZSByb290IGRlZmF1bHRzICovXHJcbiAgaHRtbDpmb2N1cy13aXRoaW4ge1xyXG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XHJcbiAgfVxyXG5cclxuICBodG1sLFxyXG4gIGJvZHkge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLyogU2V0IGNvcmUgYm9keSBkZWZhdWx0cyAqL1xyXG4gIGJvZHkge1xyXG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gIH1cclxuXHJcbiAgLyogQSBlbGVtZW50cyB0aGF0IGRvbid0IGhhdmUgYSBjbGFzcyBnZXQgZGVmYXVsdCBzdHlsZXMgKi9cclxuICBhOm5vdChbY2xhc3NdKSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IGF1dG87XHJcbiAgfVxyXG5cclxuICAvKiBNYWtlIGltYWdlcyBlYXNpZXIgdG8gd29yayB3aXRoICovXHJcbiAgaW1nLFxyXG4gIHBpY3R1cmUsXHJcbiAgc3ZnIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLyogSW5oZXJpdCBmb250cyBmb3IgaW5wdXRzIGFuZCBidXR0b25zICovXHJcbiAgaW5wdXQsXHJcbiAgYnV0dG9uLFxyXG4gIHRleHRhcmVhLFxyXG4gIHNlbGVjdCB7XHJcbiAgICBmb250OiBpbmhlcml0O1xyXG4gIH1cclxuXHJcbiAgLyogcmVtb3ZlIGFuaW1hdGlvbnMgZm9yIHBlb3BsZSB3aG8ndmUgdHVybmVkIHRoZW0gb2ZmICovXHJcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcclxuICAgICosXHJcbiAgICAqOjpiZWZvcmUsXHJcbiAgICAqOjphZnRlciB7XHJcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XHJcbiAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcclxuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XHJcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogUkVTRVQgQWRkZWQgYnkgVEJvbmVzKi9cclxuXHJcbiAgYm9keSBhOndoZXJlKDpub3QoLndwLWVsZW1lbnQtYnV0dG9uKSksXHJcbiAgYSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG5cclxuICAuZmxvdyA+ICogKyAqIHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLWZsb3ctc3BhY2UsIDRlbSk7XHJcbiAgfVxyXG59XHJcbiIsIjpyb290IHtcclxuICAvKiBWZXJ0aWNhbCBTcGFjaW5ncyAqL1xyXG5cclxuICBib2R5IHtcclxuICAgIC53cC1zaXRlLWJsb2NrcyA+ICogKyAqLFxyXG4gICAgLmlzLWxheW91dC1jb25zdHJhaW5lZCA+ICogKyAqIHtcclxuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1iYXNlKTtcclxuICAgIH1cclxuXHJcbiAgICBoZWFkZXIgKyAud3AtYmxvY2stcG9zdC1jb250ZW50IHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC53cC1zaXRlLWJsb2NrcyB7XHJcbiAgICAgIGgxLFxyXG4gICAgICBoMixcclxuICAgICAgaDMsXHJcbiAgICAgIGg0Lmg1LFxyXG4gICAgICBoNiB7XHJcbiAgICAgICAgJiArICoge1xyXG4gICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1zbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogdGhlbWUoc2NyZWVucy5tZCkpIHtcclxuICAgICAgLndwLXNpdGUtYmxvY2tzID4gKiArICosXHJcbiAgICAgIC5pcy1sYXlvdXQtY29uc3RyYWluZWQgPiAqICsgKiB7XHJcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC14bCk7XHJcbiAgICAgIH1cclxuICAgICAgLndwLXNpdGUtYmxvY2tzIHtcclxuICAgICAgICBoMSxcclxuICAgICAgICBoMixcclxuICAgICAgICBoMyxcclxuICAgICAgICBoNC5oNSxcclxuICAgICAgICBoNiB7XHJcbiAgICAgICAgICAmICsgKiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtYmFzZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qRXhjZXB0aW9ucyovXHJcbi50YS12aWRlby1jb250YWluZXIge1xyXG4gIGdhcDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3Atc20pICFpbXBvcnRhbnQ7XHJcbiAgaDMgKyAqIHtcclxuICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AteHMpO1xyXG4gIH1cclxufVxyXG4iLCJib2R5IHtcclxuICBoMSxcclxuICBoMixcclxuICAmLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMSB7XHJcbiAgICBAYXBwbHkgdGV4dC1mcy0yLXhsIG1kOnRleHQtZnMtbWF4LTM2O1xyXG4gIH1cclxuICBoMyB7XHJcbiAgICBAYXBwbHkgdGV4dC1mcy1iYXNlIGxlYWRpbmctbGgtdGlnaHQgbWQ6dGV4dC1mcy14bDtcclxuICB9XHJcblxyXG4gIGgyLnRhLXNlY29uZGFyeS1oZWFkaW5nIHtcclxuICAgIEBhcHBseSB0ZXh0LWNsci1zZWNvbmRhcnk7XHJcbiAgfVxyXG4gIGgxIHtcclxuICAgIEBhcHBseSB0ZXh0LWNsci1iYXNlLTM7XHJcbiAgfVxyXG59XHJcbi5zaWRlYmFyIHtcclxuICBoMyB7XHJcbiAgICBAYXBwbHkgbGc6dGV4dC1mcy0yLXhsIHRleHQtY2xyLXByaW1hcnk7XHJcbiAgfVxyXG4gIC50YS1zaWRlYmFyLXNlYXJjaCB7XHJcbiAgICBoMyB7XHJcbiAgICAgIEBhcHBseSBsZzp0ZXh0LWZzLXhsIHRleHQtY2xyLWJsYWNrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiBCdWxsZXR0ZWQgbGlzdCAqL1xyXG5cclxuLnRhLWJ1bGxldGVkLWxpc3Qge1xyXG4gIEBhcHBseSBtbC0wLjU7XHJcbiAgbGkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogdXJsKFwiL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIyLzEyL3JpZ2h0LWNhcmV0LnN2Z1wiKTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiBRdWljayBMaW5rcyAqL1xyXG5cclxuZGl2IGRpdi53cC1ibG9jay1ncm91cC50YS1xdWljay1saW5rcyB7XHJcbiAgQGFwcGx5IGdhcC14LTUgbXQtNSBtYi0zO1xyXG5cclxuICAmID4gcCB7XHJcbiAgICBAYXBwbHkgZm9udC1ib2xkIHRleHQtYmFzZSBwYi1zcC14cztcclxuICB9XHJcblxyXG4gIC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXIge1xyXG4gICAgQGFwcGx5IGZsZXggZmxleC1yb3cgZmxleC13cmFwIGl0ZW1zLWNlbnRlciBnYXAteC01O1xyXG4gICAgLndwLWJsb2NrLW5hdmlnYXRpb24taXRlbV9fY29udGVudCB7XHJcbiAgICAgIEBhcHBseSBuby11bmRlcmxpbmUgcGItMiB0ZXh0LWJhc2UgYm9yZGVyLTAgYm9yZGVyLWItMiBib3JkZXItc29saWQgYm9yZGVyLXRyYW5zcGFyZW50ICAgdGV4dC1jbHItcHJpbWFyeSBmb250LWJvbGQgbGVhZGluZy00O1xyXG4gICAgICBmb250LXNpemU6IGNsYW1wKDAuODZyZW0sIDEuM3Z3LCAxcmVtKTtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgQGFwcGx5IGJvcmRlci0wIGJvcmRlci1iLTIgIGJvcmRlci1jbHItcHJpbWFyeTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcclxuICBkaXYgZGl2LnRhLXF1aWNrLWxpbmtzIHtcclxuICAgIEBhcHBseSBmbGV4LWNvbCBpdGVtcy1zdGFydDtcclxuICAgIGdhcDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtMDApO1xyXG4gIH1cclxufVxyXG5cclxuLnRhLXF1Y2tsaW5rcy0yIHtcclxuICBAYXBwbHkgIW10LTQgbGc6aGlkZGVuO1xyXG5cclxuICAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyIHtcclxuICAgIEBhcHBseSBmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXI7XHJcbiAgfVxyXG5cclxuICAud3AtYmxvY2stbmF2aWdhdGlvbi1pdGVtIHtcclxuICAgIEBhcHBseSBtci0xIG10LTMgc206bXItMjtcclxuICAgIEBleHRlbmQgLnRhLXRhZ3M7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBmb3IgdGFncyAmIGNhdGVnb3JpZXMsIGFuZCBxdWljayBsaW5rcyAqL1xyXG4udGEtdGFncyB7XHJcbiAgQGFwcGx5IHRleHQtd2hpdGUgdGV4dC14cyBiZy1jbHItcHJpbWFyeSByb3VuZGVkLWZ1bGwgZm9udC1ib2xkIHAtMiBweC0zIHNtOnRleHQtc20gc206cHgtNDtcclxuICBhIHtcclxuICAgIEBhcHBseSBuby11bmRlcmxpbmU7XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IHRoZW1lKHNjcmVlbnMubGcpKSB7XHJcbiAgICBAYXBwbHkgdGV4dC1iYXNlIHRleHQtY2xyLXByaW1hcnkgYmctdHJhbnNwYXJlbnQgZm9udC1ib2xkIHAtMSBweC00O1xyXG4gIH1cclxufVxyXG5cclxuLyogSGFtYnVyZ2VyIE1lbnUgKi9cclxuLmhhbWJ1cmdlciB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHdpZHRoOiAyNHB4O1xyXG4gIGhlaWdodDogMjRweDtcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uaGFtYnVyZ2VyLXRvcCxcclxuLmhhbWJ1cmdlci1taWRkbGUsXHJcbi5oYW1idXJnZXItYm90dG9tIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDI0cHg7XHJcbiAgaGVpZ2h0OiAycHg7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XHJcbiAgQGFwcGx5IGJnLWNsci1wcmltYXJ5O1xyXG59XHJcblxyXG4uaGFtYnVyZ2VyLW1pZGRsZSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDdweCk7XHJcbn1cclxuXHJcbi5oYW1idXJnZXItYm90dG9tIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTRweCk7XHJcbn1cclxuXHJcbi5vcGVuIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbn1cclxuXHJcbi5vcGVuIC5oYW1idXJnZXItdG9wIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSg2cHgpIHRyYW5zbGF0ZVgoNnB4KTtcclxufVxyXG5cclxuLm9wZW4gLmhhbWJ1cmdlci1taWRkbGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5vcGVuIC5oYW1idXJnZXItYm90dG9tIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoNnB4KSB0cmFuc2xhdGVYKC02cHgpO1xyXG59XHJcblxyXG4uZHJvcGRvd246aG92ZXIgLmRyb3Bkb3duLW1lbnUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi5kcm9wZG93bjpob3ZlciA+IGEge1xyXG4gIEBhcHBseSB0ZXh0LWNsci1wcmltYXJ5O1xyXG59XHJcblxyXG4uYWN0aXZlLW5hdi1pdGVtLXBhcmVudCA+IGEge1xyXG4gIEBhcHBseSB0ZXh0LWNsci1wcmltYXJ5O1xyXG59XHJcblxyXG4ud3AtYmxvY2stbmF2aWdhdGlvbl9fc3VibWVudS1jb250YWluZXJcclxuICAud3AtYmxvY2stbmF2aWdhdGlvbi1pdGVtLmN1cnJlbnQtbWVudS1pdGVtIHtcclxuICBAYXBwbHkgYmctY2xyLWJhc2Ugcm91bmRlZDtcclxufVxyXG5cclxuLndwLWJsb2NrLW5hdmlnYXRpb25fX2NvbnRhaW5lciA+IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xyXG4gIEBhcHBseSB0ZXh0LWNsci1wcmltYXJ5O1xyXG59XHJcblxyXG4uZHJvcGRvd24tbWVudSB7XHJcbiAgQGFwcGx5IGJnLXdoaXRlIHAtMyBzcGFjZS15LTEgei01MDtcclxuICBsaSB7XHJcbiAgICBAYXBwbHkgcC0zIHB5LTEgdGV4dC1zbTtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBAYXBwbHkgYmctY2xyLWJhc2Ugcm91bmRlZDtcclxuICAgIH1cclxuICB9XHJcbiAgcCB7XHJcbiAgICBAYXBwbHkgdGV4dC1mcy1zbTtcclxuICB9XHJcbn1cclxuXHJcbiNzaXRlLW1lbnUtd3JhcHBlciB7XHJcbiAgLmRyb3Bkb3duLW1lbnUgYSB7XHJcbiAgICBAYXBwbHkgbm8tdW5kZXJsaW5lO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIEBhcHBseSB0ZXh0LWNsci1ibGFjaztcclxuICAgIH1cclxuICB9XHJcbiAgLnRhLWRlc2t0b3AtbmF2IHtcclxuICAgIEBhcHBseSBoaWRkZW4gbGc6ZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWVuZCBsZzpzcGFjZS14LTQgbGc6dGV4dC1sZyB4bDp0ZXh0LWxnIHhsOnNwYWNlLXgtODtcclxuICB9XHJcbiAgJiA+IHVsID4gbGkgPiBhIHtcclxuICAgIEBhcHBseSBsZzp0ZXh0LWZzLWJhc2Ugbm8tdW5kZXJsaW5lO1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogdGhlbWUoc2NyZWVucy5sZykpIHtcclxuICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjlyZW0sIDEuNXZ3LCAxLjI1cmVtKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIE1haW4gTmF2aWdhdGlvbiBTdHlsZSB1c2luZyBDb3JlIGJsb2NrICovXHJcblxyXG4udGEtZGVza3RvcC1uYXYud3AtYmxvY2stbmF2aWdhdGlvbiB7XHJcbiAgLndwLWJsb2NrLW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XHJcbiAgICBAYXBwbHkgZ2FwLTAgIGxnOmZsZXggZmxleC1yb3cganVzdGlmeS1lbmQgbGc6c3BhY2UteC00IGxnOnRleHQtbGcgeGw6dGV4dC1sZyB4bDpzcGFjZS14LTg7XHJcblxyXG4gICAgLmFjdGl2ZS1uYXYtaXRlbS1wYXJlbnQsXHJcbiAgICAuYWN0aXZlLW5hdi1pdGVtLXRvcC1sdmwge1xyXG4gICAgICBAYXBwbHkgdGV4dC1jbHItcHJpbWFyeSAhYmctdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmFjdGl2ZS1uYXYtaXRlbSB7XHJcbiAgICAgIEBhcHBseSBiZy1jbHItYmFzZSByb3VuZGVkO1xyXG4gICAgICAud3AtYmxvY2stbmF2aWdhdGlvbi1pdGVtX19kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgQGFwcGx5IHRleHQtY2xyLWJsYWNrO1xyXG4gICAgICB9XHJcbiAgICAgICYuYWN0aXZlLW5hdi1pdGVtLXRvcC1sdmwge1xyXG4gICAgICAgIEBhcHBseSBiZy1jbHItd2hpdGUgcm91bmRlZC1ub25lIHRleHQtY2xyLXByaW1hcnk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud3AtYmxvY2stbmF2aWdhdGlvbi1pdGVtIHtcclxuICAgICAgQGFwcGx5IGlubGluZS1ibG9jayByZWxhdGl2ZTtcclxuICAgICAgYSB7XHJcbiAgICAgICAgQGFwcGx5IGZvbnQtYm9sZCBsZzp0ZXh0LWZzLWJhc2Ugbm8tdW5kZXJsaW5lO1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IHRoZW1lKHNjcmVlbnMubGcpKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuODZyZW0sIDEuM3Z3LCAxLjI1cmVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLyogc3VibWVudSBjb250YWluZXIgKi9cclxuICAgICAgLndwLWJsb2NrLW5hdmlnYXRpb25fX3N1Ym1lbnUtY29udGFpbmVyIHtcclxuICAgICAgICBAYXBwbHkgYm9yZGVyLW5vbmUgYmctd2hpdGUgcC0zIHNwYWNlLXktMSB6LTUwO1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBAYXBwbHkgdGV4dC1mcy1zbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLyogc3VibWVudSBzaW5nbGUgaXRlbSAqL1xyXG4gICAgICAgIC53cC1ibG9jay1uYXZpZ2F0aW9uLWl0ZW0ge1xyXG4gICAgICAgICAgQGFwcGx5IHAtMyBweS0xO1xyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIEBhcHBseSBiZy1jbHItYmFzZSByb3VuZGVkO1xyXG4gICAgICAgICAgICAud3AtYmxvY2stbmF2aWdhdGlvbi1pdGVtX19kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgICAgQGFwcGx5IHRleHQtY2xyLWJsYWNrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAud3AtYmxvY2stbmF2aWdhdGlvbi1pdGVtX19jb250ZW50IHtcclxuICAgICAgICAgICAgQGFwcGx5IGJsb2NrIHRleHQtc207XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAud3AtYmxvY2stbmF2aWdhdGlvbi1pdGVtX19sYWJlbCB7XHJcbiAgICAgICAgICAgIEBhcHBseSBibG9jayB0ZXh0LWNsci1wcmltYXJ5IGZvbnQtYm9sZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC53cC1ibG9jay1uYXZpZ2F0aW9uLWl0ZW1fX2Rlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgQGFwcGx5IGZvbnQtbm9ybWFsIGJsb2NrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLndwLWJsb2NrLW5hdmlnYXRpb25fX3Jlc3BvbnNpdmUtY29udGFpbmVyLWNsb3NlIHN2ZyxcclxuICAud3AtYmxvY2stbmF2aWdhdGlvbl9fcmVzcG9uc2l2ZS1jb250YWluZXItb3BlbiBzdmcge1xyXG4gICAgQGFwcGx5IGZpbGwtY2xyLXByaW1hcnk7XHJcbiAgfVxyXG5cclxuICAvKiBNYWtpbmcgYWJvdXQgbmF2J3Mgc3VibWVudSByaWdodCBhbGlnbmVkICovXHJcbiAgLnRhLWFib3V0LW5hdiB7XHJcbiAgICAud3AtYmxvY2stbmF2aWdhdGlvbl9fc3VibWVudS1jb250YWluZXIge1xyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAgICAgICByaWdodDogLTEwdnc7XHJcbiAgICAgICAgbGVmdDogdW5zZXQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIEZpeGluZyBSZXNwb25zaXZlbmVzcyBmb3IgdGhlIE1haW4gTWVudSAqL1xyXG5cclxuICAud3AtYmxvY2stbmF2aWdhdGlvbl9fcmVzcG9uc2l2ZS1jb250YWluZXItb3BlbiB7XHJcbiAgICBAYXBwbHkgZmxleDtcclxuICB9XHJcblxyXG4gIC53cC1ibG9jay1uYXZpZ2F0aW9uX19yZXNwb25zaXZlLWNvbnRhaW5lci1jbG9zZSB7XHJcbiAgICBAYXBwbHkgdG9wLTY7XHJcbiAgfVxyXG5cclxuICAud3AtYmxvY2stbmF2aWdhdGlvbl9fcmVzcG9uc2l2ZS1jb250YWluZXIge1xyXG4gICAgQGFwcGx5IGhpZGRlbjtcclxuICAgICYuaXMtbWVudS1vcGVuIHtcclxuICAgICAgQGFwcGx5IGZsZXg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAgIC53cC1ibG9jay1uYXZpZ2F0aW9uX19yZXNwb25zaXZlLWNvbnRhaW5lci1vcGVuIHtcclxuICAgICAgQGFwcGx5IGhpZGRlbjtcclxuICAgIH1cclxuICAgIC53cC1ibG9jay1uYXZpZ2F0aW9uX19yZXNwb25zaXZlLWNvbnRhaW5lciB7XHJcbiAgICAgIEBhcHBseSBibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5pcy1sYXlvdXQtY29uc3RyYWluZWQuYmctY2xyLXByaW1hcnl7XHJcbiBiYWNrZ3JvdW5kLWNvbG9yOjtcclxufSIsIi50YS1tb2JpbGUtc2VhcmNoIHtcclxuICBAYXBwbHkgbGc6aGlkZGVuO1xyXG59XHJcblxyXG4ud3AtYmxvY2stc2VhcmNoIHtcclxuICAud3AtYmxvY2stc2VhcmNoX19idXR0b24ge1xyXG4gICAgQGFwcGx5IG1sLTAgYmctY2xyLXNlY29uZGFyeSByb3VuZGVkLXIgYm94LWJvcmRlciBib3JkZXIgYm9yZGVyLWNsci1zZWNvbmRhcnk7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiB0aGVtZShzY3JlZW5zLm1kKSkgYW5kIChtYXgtd2lkdGg6IHRoZW1lKHNjcmVlbnMubGcpKSB7XHJcbiAgICAgIEBhcHBseSBweC0yO1xyXG4gICAgfVxyXG4gIH1cclxuICAud3AtYmxvY2stc2VhcmNoX19pbnNpZGUtd3JhcHBlciB7XHJcbiAgICBAYXBwbHkgcm91bmRlZCBib3JkZXItbm9uZTtcclxuICB9XHJcbiAgLndwLWJsb2NrLXNlYXJjaF9faW5wdXQge1xyXG4gICAgQGFwcGx5IHJvdW5kZWQtbCBwLTQgYm9yZGVyIGJvcmRlci1yLTAgYm9yZGVyLWNsci1zZWNvbmRhcnkgYm9yZGVyLXNvbGlkO1xyXG4gIH1cclxufVxyXG4iLCIvKiBTZWFyY2ggcmVzdWx0cyBhcmNoaXZlIC8gQmxvZyBwYWdlIHN0eWxpbmcgKi9cclxuLyogc2VhcmNoLmh0bWwgJiBhcmNoaXZlLmh0bWwgKi9cclxuLnRhLXBhZ2UtdGl0bGUge1xyXG4gIEBhcHBseSB0ZXh0LWNsci1wcmltYXJ5O1xyXG59XHJcblxyXG4udGEtcXVlcnktbG9vcC13cmFwcGVyIHtcclxuICAud3AtYmxvY2stcG9zdCB7XHJcbiAgICBAYXBwbHkgcC1zcC1sZyBiZy13aGl0ZSByb3VuZGVkO1xyXG4gICAgQGV4dGVuZCAudGEtYm90dG9tLWFsaWduZWQtYnV0dG9uLXBhcmVudDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBAYXBwbHkgc2hhZG93O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLndwLWJsb2NrLXBvc3QtdGl0bGUsXHJcbiAgLndwLWJsb2NrLXBvc3QtdGl0bGUgYSB7XHJcbiAgICBAYXBwbHkgdGV4dC1mcy0zLXhsIG5vLXVuZGVybGluZSB0ZXh0LWNsci1zZWNvbmRhcnkgbXQtNTtcclxuICB9XHJcblxyXG4gIC53cC1ibG9jay1wb3N0LWF1dGhvcl9fY29udGVudCB7XHJcbiAgICBAYXBwbHkgZmxleDtcclxuICAgIC53cC1ibG9jay1wb3N0LWF1dGhvcl9fYnlsaW5lIHtcclxuICAgICAgQGFwcGx5IHRleHQtZnMteGwgdy1hdXRvIHdoaXRlc3BhY2Utbm93cmFwIHByLTE7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC53cC1wb3N0LWltYWdlIHtcclxuICAgIEBhcHBseSByb3VuZGVkO1xyXG4gIH1cclxuXHJcbiAgLndwLWJsb2NrLXJlYWQtbW9yZSB7XHJcbiAgICBAZXh0ZW5kIC50YS1ib3R0b20tYWxpZ25lZC1idXR0b247XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTaW5nbGUgYmxvZyBwYWdlIC0gIHNpbmdsZS5odG1sICovXHJcblxyXG4udGEtc2luZ2xlLXBvc3QtY29udGVudC13cmFwcGVyIHtcclxuICAud3AtYmxvY2stcG9zdC10aXRsZSB7XHJcbiAgICBAYXBwbHkgbXQtNTtcclxuICB9XHJcbiAgLndwLXBvc3QtaW1hZ2Uge1xyXG4gICAgQGFwcGx5IHJvdW5kZWQ7XHJcbiAgfVxyXG4gIC53cC1ibG9jay1wb3N0LWF1dGhvcl9fY29udGVudCB7XHJcbiAgICBAYXBwbHkgZmxleDtcclxuICAgIC53cC1ibG9jay1wb3N0LWF1dGhvcl9fYnlsaW5lIHtcclxuICAgICAgQGFwcGx5IHRleHQtZnMteGwgdy1hdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuc2lkZWJhciB7XHJcbiAgJiA+IC53cC1ibG9jay1ncm91cCB7XHJcbiAgICBAYXBwbHkgcC1zcC1iYXNlIGJnLWNsci13aGl0ZSByb3VuZGVkO1xyXG4gIH1cclxufVxyXG4iLCIvKiBCQVNJQyBTVFlMSU5HICovXHJcbkBsYXllciBiYXNlIHtcclxuICBib2R5IHtcclxuICAgIEBhcHBseSBiZy1jbHItYmFzZTtcclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgQGFwcGx5IHRleHQtZnMtYmFzZSBtZDp0ZXh0LWZzLXhsO1xyXG4gIH1cclxufVxyXG5cclxuLndwLWJsb2NrLXBvc3QtY29udGVudCBhLFxyXG4ud3Atc2l0ZS1ibG9ja3MgYSB7XHJcbiAgQGFwcGx5IHVuZGVybGluZTtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBAYXBwbHkgdGV4dC1jbHItcHJpbWFyeTtcclxuICB9XHJcbn1cclxuXHJcbi53cC1ibG9jay1wb3N0LWNvbnRlbnQgLnRhLXF1Y2tsaW5rcy0yIGEge1xyXG4gICY6aG92ZXIge1xyXG4gICAgQGFwcGx5ICF0ZXh0LWNsci13aGl0ZTtcclxuICB9XHJcbn1cclxuXHJcbi53cC1ibG9jay1wb3N0LWNvbnRlbnQgLndwLWVsZW1lbnQtYnV0dG9uLFxyXG4ud3AtYmxvY2stcG9zdC1jb250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbmsge1xyXG4gIEBhcHBseSBuby11bmRlcmxpbmU7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgQGFwcGx5IHRleHQtY2xyLXdoaXRlO1xyXG4gIH1cclxufVxyXG5cclxuLnRhLXF1aWNrLWxpbmtzIHtcclxuICAud3AtYmxvY2stZ3JvdXAuaXMtbGF5b3V0LWZsZXgge1xyXG4gICAgPiBwIHtcclxuICAgICAgQGFwcGx5IHBiLXNwLXhzIHRleHQtZnMtYmFzZSBsZWFkaW5nLTYgZm9udC1mdy1ib2xkO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogbWVudSBzdHlsZSAqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAjc2l0ZS1tZW51LXdyYXBwZXIge1xyXG4gICAgPiB1bCB7XHJcbiAgICAgID4gbGkge1xyXG4gICAgICAgID4gYSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuMnJlbSwgMS4zdncsIDEuMzc1cmVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnRhLWRlc2t0b3AtbmF2LndwLWJsb2NrLW5hdmlnYXRpb24ge1xyXG4gICAgLndwLWJsb2NrLW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XHJcbiAgICAgIC53cC1ibG9jay1uYXZpZ2F0aW9uLWl0ZW0ge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjJyZW0sIDEuM3Z3LCAxLjM3NXJlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi53cC1ibG9jay1uYXZpZ2F0aW9uIHtcclxuICAud3AtYmxvY2stbmF2aWdhdGlvbi1pdGVtX19jb250ZW50LndwLWJsb2NrLW5hdmlnYXRpb24taXRlbV9fY29udGVudCB7XHJcbiAgICBAYXBwbHkgIXRleHQtY2xyLXByaW1hcnk7XHJcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBAYXBwbHkgIXRleHQtY2xyLXNlY29uZGFyeTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIG1lbnUgc3R5bGUgKi9cclxuXHJcbi8qIFNpZGViYXIgV2lkZ2V0cyAqL1xyXG5cclxuLnRhLXNpZGViYXItd2lkZ2V0IHtcclxuICBAYXBwbHkgcC03IGJnLXdoaXRlIHJvdW5kZWQtbGc7XHJcbn1cclxuXHJcbi8qIEN1c3RvbSBDbGFzc2VzL1N0eWxpbmcgKi9cclxuLnRhLXRlYW1ibG9jay1uYW1lIHtcclxuICBmb250LXNpemU6IDEuMTVyZW0gIWltcG9ydGFudDtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG4gIEBhcHBseSBmb250LWJvbGQ7XHJcbn1cclxuXHJcbi50YS10ZWFtYmxvY2stZGV0YWlscyB7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgQGFwcGx5IHRleHQtc207XHJcbn1cclxuXHJcbi50YS10ZWFtLWNvbnRhaW5lciBoMyB7XHJcbiAgLyogZm9udC1zaXplOiAxOXB4OyAqL1xyXG59XHJcblxyXG4udGEtdGVhbS1jb250YWluZXIgLnRhLXNlY3Rpb24td3JhcHBlciBwIHtcclxuICBmb250LXNpemU6IDEzcHg7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XHJcbn1cclxuXHJcbi50YS1yb3VuZGVkLWJvcmRlciB7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxufVxyXG5cclxuLnRhLXJvdW5kZWQtYm9yZGVyLWRpdiB7XHJcbiAgYm9yZGVyLXJhZGl1czogMCAwIDEwcHggMTBweDtcclxufVxyXG5cclxuLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC93cC1jb250ZW50L3VwbG9hZHMvMjAyMi8xMi9jYXJvdXNzZWwtYXJyb3ctbGVmdC5zdmcpO1xyXG59XHJcblxyXG4uc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIyLzEyL2Nhcm91c3NlbC1hcnJvdy1yaWdodC5zdmcpO1xyXG59XHJcblxyXG4uc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxyXG4uc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICBAYXBwbHkgdy0xMCBoLTEwO1xyXG4gIHRvcDogNDAlO1xyXG59XHJcblxyXG4uc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLFxyXG4uc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NzZweCkgYW5kIChtYXgtd2lkdGg6IDExMzVweCkge1xyXG4gICN0b3AtaGVhZGVyIC50YS1oZWFkZXItbG9nby1jb250YWluZXIge1xyXG4gICAgbWF4LXdpZHRoOiAyMiU7XHJcbiAgfVxyXG5cclxuICAjdG9wLWhlYWRlciAudGEtaGVhZGVyLWxvZ28ge1xyXG4gICAgd2lkdGg6IDcwJTtcclxuICB9XHJcbn1cclxuXHJcbiN0YS1zaWRlYmFyIHtcclxuICBpbnB1dCB7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgfVxyXG5cclxuICAudGEtdGFncyB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgfVxyXG59XHJcblxyXG4udGEtaW1hZ2UtdGV4dC1ibG9jay13cmFwcGVyIGgyIHtcclxuICBAYXBwbHkgbWItMztcclxufVxyXG5cclxuLnRhLWl0ZW0tc3BhY2luZ3MgcCxcclxuLnRhLWltYWdlLXRleHQtYmxvY2std3JhcHBlciBwIHtcclxuICBAYXBwbHkgbWItMztcclxufVxyXG5cclxuLnRhLWltYWdlLXRleHQtYmxvY2std3JhcHBlciBwIHtcclxuICBAYXBwbHkgdGV4dC1sZztcclxufVxyXG5cclxuLnRhLXNpZGViYXItc2VhcmNoIHtcclxuICBAYXBwbHkgaGlkZGVuIGxnOmJsb2NrO1xyXG59XHJcblxyXG4udGEtbW9iaWxlLXNlYXJjaCB7XHJcbiAgQGFwcGx5IGJsb2NrIGxnOmhpZGRlbjtcclxufVxyXG5cclxuLyogU3RhZmYgcGFnZSAqL1xyXG5cclxuLnRhLXRlYW0tbWVtYmVyLXdyYXBwZXIge1xyXG4gIEBhcHBseSBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gdy1mdWxsIGJnLXdoaXRlIHJvdW5kZWQtbGc7XHJcblxyXG4gIGltZyB7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMHB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTBweDtcclxuICB9XHJcblxyXG4gIC50YS10ZWFtLW1lbWJlci13cmFwcGVyLWlubmVyIHtcclxuICAgIEBhcHBseSBmbGV4IGZsZXgtY29sIHNtOmZsZXgtcm93IHctZnVsbCBpdGVtcy1zdGFydCBzbTppdGVtcy1zdGFydCBzZWxmLXN0YXJ0IG1heC1zbTpweC03IG1heC1zbTpweS03O1xyXG4gIH1cclxuXHJcbiAgLnRhLXRlYW0tbWVtYmVyLWF2YXRhciB7XHJcbiAgICBAYXBwbHkgdy1mdWxsIG1heC1sZzptYXgtdy1ub25lIG1heC1zbTp3LTQwIG1heC1tZDp3LTQ0IG1kOnctNTI7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBMb3R0aWUgQ29udGFpbmVyICovXHJcblxyXG4ud3Atc2l0ZS1ibG9ja3MgLnRhLWxvdHRpZS1jb250YWluZXIge1xyXG4gIEBhcHBseSBtdC0wO1xyXG4gIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtMCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogSGVhZGVycyAqL1xyXG5ib2R5IHtcclxuICAudGEtaGVhZGVyLTEge1xyXG4gICAgQGFwcGx5IGJnLWNsci1iYXNlIHB5LTU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmMGVlO1xyXG5cclxuICAgIC53cC1ibG9jay1zaXRlLWxvZ28gLmN1c3RvbS1sb2dvIHtcclxuICAgICAgQGFwcGx5IHctNDAgIW1heC1oLVs4NXB4XSBsZzp3LTgwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuYm9keSAud3Atc2l0ZS1ibG9ja3MgLnRhLWhlYWRlci0yLXdyYXBwZXIsXHJcbmJvZHkgLndwLXNpdGUtYmxvY2tzIC50YS1oZWFkZXItMSB7XHJcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xyXG59XHJcblxyXG5ib2R5IC53cC1ibG9jay1ncm91cC50YS1oZWFkZXItMiB7XHJcbiAgQGFwcGx5IGhpZGRlbiBsZzpmbGV4O1xyXG59XHJcblxyXG4udGEtaGVhZGVyLTIsXHJcbi50YS1oZWFkZXItMi13cmFwcGVyIHtcclxuICBAYXBwbHkgaGlkZGVuIGxnOmJsb2NrO1xyXG59XHJcblxyXG4vKiBGZWF0dXJlZCBJdGVtcyAqL1xyXG5ib2R5IC50YS1mZWF0dXJlZC1pdGVtcy53cC1ibG9jay1ncm91cCB7XHJcbiAgJiA+ICogKyAqIHtcclxuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcclxuICB9XHJcblxyXG4gIC5pcy1sYXlvdXQtZmxvdyA+ICogKyAqIHtcclxuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcclxuICB9XHJcblxyXG4gIC53cC1ibG9jay1jb2x1bW5zIHtcclxuICAgIGdhcDogMDtcclxuICB9XHJcblxyXG4gIGg0IHtcclxuICAgIEBhcHBseSBtdC0wIHRleHQtbGVmdCBsZWFkaW5nLTYgcGwtNSBiZy1bdXJsKFwiLi4vaW1hZ2VzL2J1bGxldC1pY29uLnN2Z1wiKV0gYmctW2xlZnRfdG9wXzAuMjVyZW1dIGJnLW5vLXJlcGVhdDtcclxuICB9XHJcblxyXG4gIC50YS1mbGV4LWZpeC1mZWF0dXJlZCB7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogdGhlbWUoc2NyZWVucy5tZCkpIGFuZCAobWF4LXdpZHRoOiB0aGVtZShzY3JlZW5zLmxnKSkge1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgIC53cC1ibG9jay1jb2x1bW4ge1xyXG4gICAgICAgIGZsZXg6IDUwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZmlndXJlLndwLWJsb2NrLWltYWdlIHtcclxuICAgIEBhcHBseSBoaWRkZW47XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiB0aGVtZShzY3JlZW5zLmxnKSkge1xyXG4gICAgJiA+ICogKyAqIHtcclxuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC14bCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmlzLWxheW91dC1mbG93ID4gKiArICoge1xyXG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXdwLS1wcmVzZXQtLXNwYWNpbmctLXNwLWJhc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIC53cC1ibG9jay1jb2x1bW5zIHtcclxuICAgICAgZ2FwOiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1iYXNlKTtcclxuICAgIH1cclxuXHJcbiAgICBmaWd1cmUud3AtYmxvY2staW1hZ2Uge1xyXG4gICAgICBAYXBwbHkgdGFibGU7XHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG4gICAgICBAYXBwbHkgdGV4dC1mcy1sZyB0ZXh0LWNlbnRlciBiZy1ub25lIG10LTUgcGwtMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09VG8gYmUgcmVtb3ZlZD09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogU3R1ZGVudCBTdWNjZXNzIFN0b3JpZXMgLyBTaWRlYmFyIEJsb2cgV2lkZ2V0ICAqL1xyXG5cclxuLyogZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgKi9cclxuLnRhLXNpZGViYXItYmxvZy13aWRnZXQge1xyXG4gIEBhcHBseSBmbGV4IGZsZXgtY29sIHNwYWNlLXktNjtcclxufVxyXG5cclxuLndwLWJsb2NrLXRib25lcy1wLXBvc3QtbGlzdCxcclxuLnRhLXNpZGViYXItYmxvZy13aWRnZXQge1xyXG4gIC50YS1zaWRlYmFyLWJsb2ctd2lkZ2V0IHtcclxuICAgIEBhcHBseSBmbGV4IGZsZXgtY29sIHNwYWNlLXktNjtcclxuICB9XHJcblxyXG4gIC50YS1zaWRlYmFyLWJsb2ctd2lkZ2V0X19ibG9nLWl0ZW0ge1xyXG4gICAgQGFwcGx5IGZsZXggZmxleC1jb2wgc3BhY2UteS0zIHBiLTYgYm9yZGVyLTAgYm9yZGVyLXNvbGlkIGJvcmRlci1iIGJvcmRlci1jbHItc2Vjb25kYXJ5IGJvcmRlci1vcGFjaXR5LTMwIGxhc3Q6Ym9yZGVyLTA7XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgQGFwcGx5IHBiLTA7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIEBhcHBseSBuby11bmRlcmxpbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnRhLXBvc3QtdGl0bGUge1xyXG4gICAgICBAYXBwbHkgdGV4dC1iYXNlIGZvbnQtYm9sZDtcclxuXHJcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGNvbG9yOiBncmVlbiAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhLWF1dGhvciB7XHJcbiAgICAgIEBhcHBseSB0ZXh0LWJhc2UgZm9udC1ib2xkO1xyXG4gICAgfVxyXG5cclxuICAgIC50YS1wb3N0LWRhdGUge1xyXG4gICAgICBAYXBwbHkgdGV4dC1zbTtcclxuICAgIH1cclxuXHJcbiAgICAudGEtbmFtZS1pbml0aWFscyB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIEBhcHBseSByb3VuZGVkLWZ1bGwgZmxleCBsZWFkaW5nLTQgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGJnLWNsci1zZWNvbmRhcnkgdXBwZXJjYXNlIHctMTIgaC0xMiB0ZXh0LXdoaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4udGEtY2F0ZWdvcnktbGlzdGluZyB7XHJcbiAgQGFwcGx5IG1iLTAgYmxvY2sgZ2FwLTE7XHJcblxyXG4gIC50YS10YWdzLFxyXG4gIFtyZWw9XCJ0YWdcIl0sXHJcbiAgYSB7XHJcbiAgICBAZXh0ZW5kIC50YS10YWdzO1xyXG4gICAgQGFwcGx5IGlubGluZS1ibG9jayBtYi0xIG1yLTE7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTc2cHgpIHtcclxuICAgICAgQGFwcGx5IG5vLXVuZGVybGluZSBiZy1jbHItcHJpbWFyeSB0ZXh0LXdoaXRlIHRleHQteHM7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIEBhcHBseSB0ZXh0LXdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLndwLWJsb2NrLXBvc3QtdGVybXNfX3NlcGFyYXRvciB7XHJcbiAgICBAYXBwbHkgaGlkZGVuO1xyXG4gIH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT1UbyBiZSByZW1vdmVkIGVuZHM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIFZpZGVvIFBvcHVwICovXHJcbi53cHpvb20tdmlkZW8tcG9wdXAtYmxvY2tfaWNvbiB7XHJcbiAgcGF0aCB7XHJcbiAgICBAYXBwbHkgZmlsbC13aGl0ZTtcclxuICB9XHJcbn1cclxuXHJcbi8qIEZvb3RlciBTdHlsaW5nICovXHJcbi50YS1mb290ZXItY29udGFpbmVyLmlzLWxheW91dC1jb25zdHJhaW5lZCB7XHJcbiAgQGFwcGx5IHAtc3AtYmFzZSBtdC0xMDtcclxuXHJcbiAgYSB7XHJcbiAgICBAYXBwbHkgbm8tdW5kZXJsaW5lO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBAYXBwbHkgdGV4dC1jbHItd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmID4gLndwLWJsb2NrLWdyb3VwOmZpcnN0LWNoaWxkIHtcclxuICAgIEBhcHBseSBtdC1zcC1sZztcclxuICB9XHJcblxyXG4gICYgPiAqICsgKiB7XHJcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDNyZW07XHJcbiAgfVxyXG5cclxuICAudGEtZm9vdGVyX19ib3R0b20tdGV4dCB7XHJcbiAgICBAYXBwbHkgdGV4dC1mcy1zbTtcclxuXHJcbiAgICBwIHtcclxuICAgICAgQGFwcGx5IHRleHQtZnMtYmFzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50YS1mb290ZXJfX21haW4tbmF2IHtcclxuICAgIC53cC1ibG9jay1uYXZpZ2F0aW9uLWl0ZW1fX2NvbnRlbnQge1xyXG4gICAgICBAYXBwbHkgdGV4dC1mcy1sZyBmb250LWZ3LWJvbGQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAud3AtYmxvY2staW1hZ2UgaW1nIHtcclxuICAgIEBhcHBseSBteC1hdXRvIG1kOm14LTA7XHJcbiAgfVxyXG5cclxuICAudGEtZm9vdGVyLW5hdi0xLFxyXG4gIC50YS1mb290ZXItbmF2LTIge1xyXG4gICAgLndwLWJsb2NrLW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XHJcbiAgICAgIEBhcHBseSBmbGV4IGZsZXgtY29sIGdhcC0yIG1kOmZsZXgtcm93IG1kOmdhcC1zcC1iYXNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRhLWZvb3Rlci1zb2NpYWwtaWNvbnMge1xyXG4gIH1cclxufVxyXG5cclxuLyogcGFnZSBjb250ZW50IHdyYXBwZXIgc3R5bGluZyovXHJcblxyXG5kaXYudGEtY29udGVudC13cmFwcGVyIHtcclxuICBAYXBwbHkgbWF4LWxnOiFmbGV4LXdyYXA7XHJcblxyXG4gIGRpdi50YS1sZWZ0LWNvbnRlbnQge1xyXG4gICAgQGFwcGx5IG1heC1sZzohYmFzaXMtZnVsbDtcclxuICB9XHJcblxyXG4gIGRpdi50YS1yaWdodC1jb250ZW50IHtcclxuICAgIEBhcHBseSBtYXgtbGc6IWJhc2lzLWZ1bGw7XHJcbiAgfVxyXG59XHJcblxyXG4ud3Atc2l0ZS1ibG9ja3Mge1xyXG4gID4gZGl2LndwLWJsb2NrLWdyb3VwLmFsaWduZnVsbCB7XHJcbiAgICAmOmhhcygudGEtY29udGVudC13cmFwcGVyKSB7XHJcbiAgICAgIC8qIEBhcHBseSBtYXgtbWQ6cHgtc3AtMDA7ICovXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiB0aGVtZShzY3JlZW5zLm1kKSkge1xyXG4gIC53cC1ibG9jay1ncm91cC5zaWRlYmFyIHtcclxuICAgID4gZGl2LndwLWJsb2NrLWdyb3VwIHtcclxuICAgICAgQGFwcGx5IHJvdW5kZWQtbm9uZTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLXdwLS1zdHlsZS0tcm9vdC0tcGFkZGluZy1yaWdodCkgKiAtMSkgIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0td3AtLXN0eWxlLS1yb290LS1wYWRkaW5nLWxlZnQpICogLTEpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBwYWdlIGNvbnRlbnQgd3JhcHBlciBzdHlsaW5nKi9cclxuXHJcbi8qIGNsYXNzIHBhZ2UgICovXHJcbi8qIC50YS1jbGFzcy1sZWZ0LWNvbnRlbnR7XHJcbiAgLmlzLWxheW91dC1mbGV4e1xyXG4gICAgZ2FwOiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1iYXNlKTtcclxuICB9XHJcbn0gKi9cclxuLyogY2xhc3MgcGFnZSAgKi9cclxuXHJcbi8qIFN0YWZmIHBhZ2UgKi9cclxuXHJcbi50YS1zdGFmZi1jYXJkIHtcclxuICBAYXBwbHkgdGV4dC1mcy1zbSBwLTcgcm91bmRlZCBiZy1jbHItd2hpdGUgbWQ6cC0wO1xyXG4gIEBhcHBseSBtZDptYXgtbGc6IWZsZXgtbm93cmFwO1xyXG5cclxuICAmLmlzLWxheW91dC1mbGV4IHtcclxuICAgIGdhcDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3Atc20pO1xyXG4gICAgQGFwcGx5IG1kOm1heC1sZzpnYXAtc3AtYmFzZTtcclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgQGFwcGx5IG1heC1sZzp0ZXh0LWZzLXNtIHRleHQteHMgbGVhZGluZy1saC10aWdodDtcclxuICB9XHJcblxyXG4gICYgKiArICoge1xyXG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC14cyk7XHJcbiAgfVxyXG5cclxuICAudGEtc3RhZmYtY2FyZF9faW5mby13cmFwcGVyIHtcclxuICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtMCk7XHJcbiAgICBAYXBwbHkgcC0zIHBsLTAgc2VsZi1zdGFydDtcclxuXHJcbiAgICAmICogKyAqIHtcclxuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC14cyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19uYW1lIHtcclxuICAgIEBhcHBseSBmb250LWZ3LWJvbGQgdGV4dC1jbHItYmxhY2sgdGV4dC1mcy14bCBtYXgtbWQ6dGV4dC1mcy0yLXhsO1xyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IHRoZW1lKHNjcmVlbnMubGcpKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMS4ydncsIDEuMjVyZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgQGFwcGx5IHVwcGVyY2FzZTtcclxuICB9XHJcblxyXG4gICZfX2VtYWlsIHtcclxuICAgIEBhcHBseSB0ZXh0LWNsci1wcmltYXJ5O1xyXG5cclxuICAgIGEge1xyXG4gICAgICBAYXBwbHkgdGV4dC1jbHItcHJpbWFyeTtcclxuICAgIH1cclxuXHJcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXdwLS1wcmVzZXQtLXNwYWNpbmctLXNwLTApO1xyXG4gIH1cclxuXHJcbiAgaW1nIHtcclxuICAgIEBhcHBseSByb3VuZGVkIG1kOnJvdW5kZWQtdGwgbWQ6cm91bmRlZC1ibCBtZDpyb3VuZGVkLXRyLW5vbmUgbWQ6cm91bmRlZC1ici1ub25lIGxnOm1heC14bDpyb3VuZGVkIHctNDQgbWQ6bWF4LWxnOnctZnVsbCB4bDp3LTUyO1xyXG4gICAgLyogQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogdGhlbWUoc2NyZWVucy5tZCkpIHtcclxuICAgICAgd2lkdGg6IDE1MHB4O1xyXG4gICAgfSAqL1xyXG4gIH1cclxuXHJcbiAgZGl2LndwLWJsb2NrLWNvbHVtbiB7XHJcbiAgICBAYXBwbHkgYmFzaXMtZnVsbCBsZzpiYXNpcy0xLzI7XHJcbiAgfVxyXG5cclxuICA+IGRpdi5pcy1sYXlvdXQtZmxvdy53cC1ibG9jay1jb2x1bW4ge1xyXG4gICAgJjpoYXMoLndwLWJsb2NrLWltYWdlKSB7XHJcbiAgICAgIEBhcHBseSBsZzptYXgteGw6cC0zIGxnOm1heC14bDpwci1zcC0wMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHRoZW1lKHNjcmVlbnMubWQpKSB7XHJcbiAgICBAYXBwbHkgcm91bmRlZC1ub25lO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLXdwLS1zdHlsZS0tcm9vdC0tcGFkZGluZy1yaWdodCkgKiAtMSkgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLXdwLS1zdHlsZS0tcm9vdC0tcGFkZGluZy1sZWZ0KSAqIC0xKSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuZGl2LnRhLXN0YWZmLWJsb2NrIHtcclxuICAud3AtYmxvY2stY29sdW1ucyB7XHJcbiAgICA+IC53cC1ibG9jay1jb2x1bW4ge1xyXG4gICAgICBAYXBwbHkgbWF4LWxnOiFiYXNpcy1mdWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiBkaXYud3AtYmxvY2stY29sdW1ucyB7XHJcbiAgICBAYXBwbHkgIWZsZXgtd3JhcCBsZzohZmxleC1ub3dyYXA7XHJcbiAgfVxyXG5cclxuICAudGEtc3RhZmYtY2FyZCB7XHJcbiAgICA+IGRpdi53cC1ibG9jay1jb2x1bW4ge1xyXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBAYXBwbHkgbWQ6bWF4LWxnOiFiYXNpcy0xLzM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50YS1zdGFmZi1ibG9jay1jb2x1bW5zIHtcclxuICAgID4gZGl2LmlzLWxheW91dC1mbG93LndwLWJsb2NrLWNvbHVtbiB7XHJcbiAgICAgIEBhcHBseSByb3VuZGVkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogdGhlbWUoc2NyZWVucy5sZykpIHtcclxuICAgIGgzLnRhLXN0YWZmLWJsb2NrLWhlYWRpbmcge1xyXG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXdwLS1wcmVzZXQtLXNwYWNpbmctLXNwLWJhc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIC50YS1zdGFmZi1ibG9jay1jb2x1bW5zIHtcclxuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1iYXNlKTtcclxuICAgIH1cclxuXHJcbiAgICAudGEtc3RhZmYtYmxvY2stY29sdW1ucy50YS1zdGFmZi1ibG9jay1oYXMtZW1wdHktY29sdW1uIHtcclxuICAgICAgZ2FwOiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC0wKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIHNlcnZpY2VzIGNvbHVtbnMgKi9cclxuLnRhLXNlcnZpY2VzLWNvbHVtbnMuaXMtbGF5b3V0LWZsZXgge1xyXG4gIGdhcDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtYmFzZSk7XHJcbn1cclxuXHJcbi50YS1zZXJ2aWNlcy1jb2x1bW5zLnRhLXNlcnZpY2VzLWNvbHVtbnMtd2l0aC1ibGFuay1jb2wge1xyXG4gIGdhcDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtMCk7XHJcbn1cclxuXHJcbi50YS1zZXJ2aWNlcy1jb2x1bW5zLXdpdGhvdXQtYnRuIHtcclxuICAudGEtaW5mby1ibG9jay1zbWFsbCB7XHJcbiAgICBAYXBwbHkgbWF4LW1kOiFwYi1zcC1iYXNlICFwYi1zcC1pbm5lcjtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDExNjBweCkge1xyXG4gIC50YS1zZXJ2aWNlcy1jb2x1bW5zIHtcclxuICAgIEBhcHBseSAhZmxleC13cmFwO1xyXG5cclxuICAgIC5pcy1sYXlvdXQtZmxvdy53cC1ibG9jay1jb2x1bW4ge1xyXG4gICAgICBAYXBwbHkgIWJhc2lzLWZ1bGw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiB0YS1zZXJ2aWNlcy1jb2x1bW5zICovXHJcblxyXG4vKiAgKi9cclxuXHJcbi8qICovXHJcblxyXG4vKiBGZWF0dXJlZCBCb3ggKi9cclxuXHJcbmJvZHkgLnRhLWZlYXR1cmVkLWJveCB7XHJcbiAgQGFwcGx5IGJnLWNsci13aGl0ZSByb3VuZGVkIHNoYWRvdy1zaC0wMSBtYXgtbGc6cC1zcC1iYXNlIHAtMTAgIXBiLTAgdGV4dC1jbHItc2Vjb25kYXJ5O1xyXG5cclxuICAud3AtYmxvY2stYnV0dG9uIHtcclxuICAgICY6aGFzKC53cC1ibG9jay1idXR0b25fX2xpbmspIHtcclxuICAgICAgQGFwcGx5IG14LWF1dG8gbWQ6bXgtMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xyXG4gICAgQGFwcGx5IHB4LTE0IG5vLXVuZGVybGluZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgQGFwcGx5IHRleHQtd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19jb2wtMSB7XHJcbiAgICBoMixcclxuICAgIGgzLFxyXG4gICAgaDQsXHJcbiAgICBoNSxcclxuICAgIGg2IHtcclxuICAgICAgQGFwcGx5IHRleHQtZnMtNC14bCB0ZXh0LWNsci1zZWNvbmRhcnk7XHJcbiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS43NXJlbSwgMi41dncsIDIuMjVyZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fY29sLTIge1xyXG4gICAgdWwge1xyXG4gICAgICAmICogKyAqIHtcclxuICAgICAgICBAYXBwbHkgbXQtMztcclxuICAgICAgfVxyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgIC8qIEBhcHBseSB0ZXh0LWZzLXhsOyAqL1xyXG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMi41dncsIDEuMjVyZW0pO1xyXG4gICAgICAgIEBhcHBseSB0ZXh0LWxlZnQgbGVhZGluZy03IHBsLTUgYmctW3VybChcIi4uL2ltYWdlcy9idWxsZXQtaWNvbi5zdmdcIildIGJnLVtsZWZ0X3RvcF8wLjVyZW1dIGJnLW5vLXJlcGVhdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50YS1mZWF0dXJlZC1ib3gtdWwge1xyXG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXdwLS1wcmVzZXQtLXNwYWNpbmctLXNwLXNtKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAyLjV2dywgMS4yNXJlbSk7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiB0aGVtZShzY3JlZW5zLmxnKSkge1xyXG4gICAgZ2FwOiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1iYXNlKTtcclxuICB9XHJcblxyXG4gIC50YS1mZWF0dXJlZC1ib3hfX2NvbC0yLXVsIHtcclxuICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3Atc20pO1xyXG4gIH1cclxuXHJcbiAgJjpub3QoOmhhcygud3AtYmxvY2stYnV0dG9ucykpIHtcclxuICAgIEBhcHBseSAhcGItc3AtYmFzZSBsZzohcC0xMDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHRoZW1lKHNjcmVlbnMubGcpKSB7XHJcbiAgYm9keSAudGEtZmVhdHVyZWQtYm94IHtcclxuICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtYmFzZSk7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBUZXh0IE92ZXIgSW1hZ2UgU2VjdGlvbiAqL1xyXG5ib2R5IC50YS10ZXh0LW92ZXItaW1hZ2Uud3AtYmxvY2stY292ZXIge1xyXG4gICYuaXMtc3R5bGUtYm90dG9tLWJ1dHRvbiB7XHJcbiAgICAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XHJcbiAgICAgIEBleHRlbmQgLnRhLWJvdHRvbS1hbGlnbmVkLWJ1dHRvbi1wYXJlbnQ7XHJcbiAgICAgIEBhcHBseSAhcGItMjA7XHJcblxyXG4gICAgICAmID4gLndwLWJsb2NrLWdyb3VwIHtcclxuICAgICAgICBAYXBwbHkgc3RhdGljO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndwLWJsb2NrLWJ1dHRvbnMge1xyXG4gICAgICBAZXh0ZW5kIC50YS1ib3R0b20tYWxpZ25lZC1idXR0b247XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLndwLWJsb2NrLWNvdmVyIHtcclxuICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XHJcbiAgICBhbGlnbi1pdGVtczogdW5zZXQ7XHJcbiAgICBwYWRkaW5nOiAzcmVtO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxuICB9XHJcblxyXG4gIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogNTAwcHg7XHJcbiAgICBAYXBwbHkgc2hhZG93LXNoLTAxIHAtc3AteGwgcm91bmRlZCB0ZXh0LWZzLWJhc2UgdGV4dC1jbHItc2Vjb25kYXJ5IGJnLWNsci13aGl0ZTtcclxuXHJcbiAgICAud3AtYmxvY2stZ3JvdXAgPiAqICsgKiB7XHJcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3Atc20pO1xyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAydncsIDIuMjVyZW0pO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICBmb250LXNpemU6IGNsYW1wKDFyZW0sIDJ2dywgMS4yNXJlbSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAud3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQge1xyXG4gICAgd2lkdGg6IDc1JTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogdW5zZXQ7XHJcbiAgICBvYmplY3QtcG9zaXRpb246IHRvcCByaWdodCAhaW1wb3J0YW50O1xyXG4gICAgQGFwcGx5IHJvdW5kZWQ7XHJcbiAgfVxyXG5cclxuICAud3AtYmxvY2stY292ZXJfX2JhY2tncm91bmQge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICB9XHJcblxyXG4gIC53cC1ibG9jay1jb3Zlcl9faW1hZ2UtYmFja2dyb3VuZCB7XHJcbiAgICBAYXBwbHkgcm91bmRlZDtcclxuICB9XHJcblxyXG4gIC8qIExlZnQgSW1hZ2UgKi9cclxuICAmLnRhLXRleHQtb3Zlci1pbWFnZV9fbGVmdCB7XHJcbiAgICBAYXBwbHkganVzdGlmeS1lbmQ7XHJcblxyXG4gICAgLndwLWJsb2NrLWNvdmVyX19pbWFnZS1iYWNrZ3JvdW5kIHtcclxuICAgICAgcmlnaHQ6IHVuc2V0O1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBvYmplY3QtcG9zaXRpb246IHRvcCBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogdGhlbWUoc2NyZWVucy5tZCkpIHtcclxuICAud3AtYmxvY2stY292ZXIudGEtdGV4dC1vdmVyLWltYWdlIHtcclxuICAgIEBhcHBseSBmbGV4LWNvbCAhcHktc3AtMDA7XHJcblxyXG4gICAgaW1nLndwLWJsb2NrLWNvdmVyX19pbWFnZS1iYWNrZ3JvdW5kIHtcclxuICAgICAgcG9zaXRpb246IHVuc2V0O1xyXG4gICAgICBAYXBwbHkgIXctZnVsbCByb3VuZGVkLXQgIXJvdW5kZWQtYi1ub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcclxuICAgICAgQGFwcGx5IG14LWF1dG8gIW1heC13LWZ1bGwgIXAtc3AtYmFzZSAhcm91bmRlZC10LW5vbmU7XHJcblxyXG4gICAgICAmOmhhcygud3AtYmxvY2stYnV0dG9ucykge1xyXG4gICAgICAgIEBhcHBseSAhcGItc3AtMDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEluZm8gYmxvY2sgU21hbGwgLSBCZXN0IGZpdHRlZCBpbnRvIDMgY29sIGxheW91dCAqL1xyXG5cclxuYm9keSAud3AtYmxvY2stY29sdW1uIC50YS1pbmZvLWJsb2NrLXNtYWxsIHtcclxuICBAYXBwbHkgaC1mdWxsO1xyXG59XHJcblxyXG5ib2R5IC50YS1pbmZvLWJsb2NrLXNtYWxsIHtcclxuICBAYXBwbHkgcC1zcC1iYXNlIG1kOnAtc3AtaW5uZXIgIXBiLTAgYmctY2xyLXdoaXRlIHRleHQtY2VudGVyIGZsZXggZmxleC1jb2wganVzdGlmeS1iZXR3ZWVuIHJvdW5kZWQ7XHJcblxyXG4gICYudGEtaW5mby1ibG9jay1zbWFsbC1jYXJvdXNlbCB7XHJcbiAgICBAYXBwbHkgcC0wICFwYi0xNiBqdXN0aWZ5LXN0YXJ0IHJlbGF0aXZlO1xyXG5cclxuICAgIC53cC1ibG9jay1pbWFnZSBpbWcge1xyXG4gICAgICBAYXBwbHkgcm91bmRlZC10bCByb3VuZGVkLXRyO1xyXG4gICAgfVxyXG5cclxuICAgIC50YS1pbmZvLWJveC1jYXJvdXNlbC10ZXh0LXdyYXBwZXIge1xyXG4gICAgICBAYXBwbHkgc3RhdGljIHAtNSBwYi0wIG0tMCB3LWZ1bGw7XHJcbiAgICB9XHJcblxyXG4gICAgLndwLWJsb2NrLWJ1dHRvbnMge1xyXG4gICAgICBAZXh0ZW5kIC50YS1ib3R0b20tYWxpZ25lZC1idXR0b247XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmIC50YS1pbmZvLWJsb2NrLXNtYWxsX190aXRsZSB7XHJcbiAgICBAYXBwbHkgdGV4dC1sZWZ0ICFtLTAgdGV4dC1jbHItc2Vjb25kYXJ5O1xyXG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjI1cmVtLCAydncsIDEuNXJlbSk7XHJcbiAgfVxyXG5cclxuICAmIC50YS1pbmZvLWJsb2NrLXNtYWxsX190ZXh0IHtcclxuICAgIEBhcHBseSB0ZXh0LWxlZnQgbWItYXV0byB0ZXh0LWNsci1zZWNvbmRhcnk7XHJcbiAgICBmb250LXNpemU6IGNsYW1wKDFyZW0sIDJ2dywgMS4yNXJlbSk7XHJcbiAgfVxyXG5cclxuICAud3AtYmxvY2stYnV0dG9ucyB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0td3AtLXByZXNldC0tc3BhY2luZy0tc3AtYmFzZSk7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBmb250LXNpemU6IGNsYW1wKDFyZW0sIDIuNXZ3LCAxLjI1cmVtKTtcclxuICAgICAgQGFwcGx5IHRleHQtbGVmdCB0ZXh0LWNsci1zZWNvbmRhcnkgbGVhZGluZy03IHBsLTUgYmctW3VybChcIi4uL2ltYWdlcy9idWxsZXQtaWNvbi5zdmdcIildIGJnLVtsZWZ0X3RvcF8wLjVyZW1dIGJnLW5vLXJlcGVhdDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHRoZW1lKHNjcmVlbnMubWQpKSB7XHJcbiAgLnRhLWluZm8tYmxvY2stc21hbGwudGEtaW5mby1ibG9jay1zbWFsbC1ncm91cCB7XHJcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXdwLS1wcmVzZXQtLXNwYWNpbmctLXNwLWJhc2UpICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBUZW1wbGF0ZSBIZWFkZXIgZm9vdGVyICovXHJcblxyXG4ud3AtYmxvY2stcG9zdC1jb250ZW50IHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG4vKiBDYXJvdXNlbCBjb21tb24gKi9cclxuLyogXHJcbmNvbnN0IGltYWdlQ2xhc3MgPSBzaG93SW1hZ2UgPyBcIlwiIDogXCJ0YS1pbWctaGlkZGVuXCI7XHJcbmNvbnN0IHdyYXBwZXJDbGFzcyA9IHNob3dJbWFnZSA/IFwiXCIgOiBcInRhLXdyYXBwZXItcm91bmRlZC1ib3JkZXJcIjtcclxuY29uc3QgY3RhQ2xhc3MgPSBzaG93Q1RBID8gXCJcIiA6IFwidGEtY3RhLWhpZGRlblwiOyAqL1xyXG5cclxuLnRhLWNhcm91c2VsLWNvbnRhaW5lciB7XHJcbiAgLnRhLWNhcm91c2VsLXRleHQtd3JhcHBlciB7XHJcbiAgICBAYXBwbHkgdy1mdWxsO1xyXG4gIH1cclxuXHJcbiAgJi50YS1pbWctaGlkZGVuIHtcclxuICAgIGltZyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnRhLXdyYXBwZXItcm91bmRlZC1ib3JkZXIge1xyXG4gICAgLnRhLWNhcm91c2VsLXRleHQtd3JhcHBlciB7XHJcbiAgICAgIEBhcHBseSByb3VuZGVkLXQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnRhLWN0YS1oaWRkZW4ge1xyXG4gICAgLnRhLWNhcm91c2VsX19idXR0b24ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC50YS1jYXJvdXNlbC10ZXh0LXdyYXBwZXIge1xyXG4gICAgICBAYXBwbHkgcGItNDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHRoZW1lKHNjcmVlbnMuc20pKSB7XHJcbiAgYm9keSAudGEtY2Fyb3VzZWwtY29udGFpbmVyLndwLWJsb2NrLWdyb3VwLFxyXG4gIGJvZHkgLnRhLWNhcm91c2VsLWNvbnRhaW5lci53cC1ibG9jay10Ym9uZXMtcC1jYXJvdXNlbC1zbGlkZXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLXdwLS1zdHlsZS0tcm9vdC0tcGFkZGluZy1yaWdodCkgKiAtMSkgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLXdwLS1zdHlsZS0tcm9vdC0tcGFkZGluZy1sZWZ0KSAqIC0xKSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuYm9keSAudGEtY2Fyb3VzZWwtY29udGFpbmVyLndwLWJsb2NrLWdyb3VwLFxyXG4ud3AtYmxvY2stdGJvbmVzLXAtY2Fyb3VzZWwtc2xpZGVyIHtcclxuICAudGEtY2Fyb3VzZWxfX2J1dHRvbiB7XHJcbiAgICBAYXBwbHkgbm8tdW5kZXJsaW5lIGlubGluZS1ibG9jayB0ZXh0LWNlbnRlciBtdC03IGp1c3RpZnktY2VudGVyIG14LWF1dG8gdGV4dC13aGl0ZSBiZy1jbHItcHJpbWFyeSBwLTIgcHgtNCBsZzpweC02O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBAYXBwbHkgdGV4dC13aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiB0aGVtZShzY3JlZW5zLmxnKSkgYW5kIChtYXgtd2lkdGg6IDExMDBweCkge1xyXG4gICAgICBAYXBwbHkgcHgtMztcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgQGFwcGx5IHRleHQtd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTdHlsaW5nIGZvciBib3R0b20gYWxpZ25lZCBidXR0b24gKi9cclxuXHJcbi50YS1ib3R0b20tYWxpZ25lZC1idXR0b24tcGFyZW50IHtcclxuICBAYXBwbHkgcmVsYXRpdmUgcGItMjA7XHJcbn1cclxuXHJcbi50YS1ib3R0b20tYWxpZ25lZC1idXR0b24ge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG5cclxuICBAYXBwbHkgYWJzb2x1dGUgIW0tMCB0cmFuc2Zvcm0gLXRyYW5zbGF0ZS14LTIvNCBsZWZ0LTEvMiBib3R0b20tMCBuby11bmRlcmxpbmUgaW5saW5lLWJsb2NrIHRleHQtY2VudGVyIG10LTcganVzdGlmeS1jZW50ZXIgbXgtYXV0byB0ZXh0LXdoaXRlIGJnLWNsci1wcmltYXJ5IHAtMiBweC00IGxnOnB4LTY7XHJcbiAgd2lkdGg6IG1heC1jb250ZW50O1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIEBhcHBseSB0ZXh0LXdoaXRlO1xyXG4gIH1cclxuXHJcbiAgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogdGhlbWUoc2NyZWVucy5sZykpIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcclxuICAgIEBhcHBseSBweC0zO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBAYXBwbHkgdGV4dC13aGl0ZTtcclxuICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XHJcbiAgQGFwcGx5IGJnLWNsci1wcmltYXJ5O1xyXG59XHJcblxyXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcclxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCxcclxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcclxuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcclxuICBib3R0b206IGF1dG87XHJcbn1cclxuXHJcbi5zd2lwZXIgLnN3aXBlci1wYWdpbmF0aW9uIHtcclxuICBtYXJnaW4tdG9wOiAzLjVyZW07XHJcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xyXG59XHJcblxyXG4vKiBDYXJvdXNlbCBTdHlsaW5nICovXHJcblxyXG4uaGFzLWdsb2JhbC1wYWRkaW5nXHJcbiAgOndoZXJlKC5oYXMtZ2xvYmFsLXBhZGRpbmcpXHJcbiAgPiAuYWxpZ25mdWxsLnRhLWNhcm91c2VsLWNvbnRhaW5lciB7XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogdGhlbWUoc2NyZWVucy5tZCkpIHtcclxuICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS13cC0tc3R5bGUtLXJvb3QtLXBhZGRpbmctcmlnaHQpICogLTEpO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0td3AtLXN0eWxlLS1yb290LS1wYWRkaW5nLWxlZnQpICogLTEpO1xyXG4gIH1cclxufVxyXG5cclxuLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1zbGlkZSBoNCB7XHJcbiAgQGFwcGx5IHRleHQteGwgZm9udC1ib2xkIGxlYWRpbmctNiBtYi0zIHRleHQtbGVmdCB0ZXh0LWNsci1ibGFjaztcclxufVxyXG5cclxuLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1zbGlkZSBwIHtcclxuICBAYXBwbHkgdGV4dC1mcy1jdXN0b20gbGVhZGluZy01IHRleHQtbGVmdDtcclxufVxyXG5cclxuLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci13cmFwcGVyIHtcclxuICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbn1cclxuXHJcbi5zZmFzLWNhcm91c2VsIC5zd2lwZXIge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcblxyXG4uc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLXNsaWRlIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAxOHB4O1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xyXG4gIG1hcmdpbjogMHB4O1xyXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbiAgb3BhY2l0eTogMC41O1xyXG5cclxuICBpbWcge1xyXG4gICAgQGFwcGx5IHJvdW5kZWQtdDtcclxuXHJcbiAgICAmLmltYWdlLWhpZGRlbiB7XHJcbiAgICAgIEBhcHBseSBoaWRkZW47XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLXNsaWRlLnN3aXBlci1zbGlkZS1hY3RpdmUge1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gIHotaW5kZXg6IDI7XHJcbiAgb3BhY2l0eTogMTtcclxufVxyXG5cclxuLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tcHJldixcclxuLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tbmV4dCB7XHJcbiAgLyogQGFwcGx5IHRleHQtd2hpdGUgYmctY2xyLXByaW1hcnkgcm91bmRlZC1mdWxsIHctMTAgaC0xMDsgKi9cclxufVxyXG5cclxuLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tbmV4dDphZnRlcixcclxuLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XHJcbiAgLyogQGFwcGx5IHRleHQtd2hpdGUgdGV4dC1zbSBmb250LWJvbGQ7ICovXHJcbn1cclxuXHJcbi5zZmFzLWNhcm91c2VsIC5zd2lwZXItYnV0dG9uLW5leHQge1xyXG4gIHJpZ2h0OiBjbGFtcCg2JSwgOC41dncsIDI4JSk7XHJcbn1cclxuXHJcbi5zZmFzLWNhcm91c2VsIC5zd2lwZXItYnV0dG9uLXByZXYge1xyXG4gIGxlZnQ6IGNsYW1wKDYlLCA4LjV2dywgMjglKTtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogdGhlbWUoc2NyZWVucy54cykpIHtcclxuICAuc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICAgIHJpZ2h0OiBjbGFtcCg2JSwgMTAuNXZ3LCAyOCUpO1xyXG4gIH1cclxuXHJcbiAgLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgICBsZWZ0OiBjbGFtcCg2JSwgMTAuNXZ3LCAyOCUpO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogdGhlbWUoc2NyZWVucy5zbSkpIHtcclxuICAuc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICAgIHJpZ2h0OiBjbGFtcCg2JSwgMTEuNXZ3LCAyOCUpO1xyXG4gIH1cclxuXHJcbiAgLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgICBsZWZ0OiBjbGFtcCg2JSwgMTEuNXZ3LCAyOCUpO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogdGhlbWUoc2NyZWVucy5tZCkpIHtcclxuICAuc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICAgIHJpZ2h0OiBjbGFtcCg2JSwgNi41dncsIDI4JSk7XHJcbiAgfVxyXG5cclxuICAuc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcclxuICAgIGxlZnQ6IGNsYW1wKDYlLCA2LjV2dywgMjglKTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IHRoZW1lKHNjcmVlbnMubGcpKSB7XHJcbiAgLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tbmV4dCB7XHJcbiAgICByaWdodDogY2xhbXAoNiUsIDE4dncsIDI4LjUlKTtcclxuICB9XHJcblxyXG4gIC5zZmFzLWNhcm91c2VsIC5zd2lwZXItYnV0dG9uLXByZXYge1xyXG4gICAgbGVmdDogY2xhbXAoNiUsIDE4dncsIDI4LjUlKTtcclxuICB9XHJcbn1cclxuXHJcbi8qIFxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiB0aGVtZShzY3JlZW5zLmxnKSkge1xyXG4gIC5zZmFzLWNhcm91c2VsIC5zd2lwZXItYnV0dG9uLW5leHQge1xyXG4gICAgcmlnaHQ6IDEwJTtcclxuICB9XHJcbiAgLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgICBsZWZ0OiAxMCU7XHJcbiAgfVxyXG4gIC5zZmFzLWNhcm91c2VsIC5zd2lwZXItc2xpZGUge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogdGhlbWUoc2NyZWVucy5tZCkpIHtcclxuICAuc2Zhcy1jYXJvdXNlbCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICAgIHJpZ2h0OiAyMyU7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiB0aGVtZShzY3JlZW5zLnhzKSkge1xyXG4gICAgICByaWdodDogOC41JTtcclxuICAgIH1cclxuICB9XHJcbiAgLnNmYXMtY2Fyb3VzZWwgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgICBsZWZ0OiAyMyU7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiB0aGVtZShzY3JlZW5zLnhzKSkge1xyXG4gICAgICBsZWZ0OiA4LjUlO1xyXG4gICAgfVxyXG4gIH1cclxufSAqL1xyXG5cclxuLyogQVJST1dTICovXHJcbi5zZmFzLWNhcm91c2VsIC5zd2lwZXItYnV0dG9uLXByZXYsXHJcbi5zZmFzLWNhcm91c2VsIC5zd2lwZXItYnV0dG9uLW5leHQge1xyXG4gIGNvbG9yOiAjZjY5MjU5O1xyXG59XHJcblxyXG4ubXlTd2lwZXIsXHJcbi5zZmFzLWNhcm91c2VsLFxyXG4udGEtdGVzdGltb25pYWxzLXN3aXBlciB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5zZmFzLWNhcm91c2VsLFxyXG4udGEtdGVzdGltb25pYWxzLXN3aXBlciB7XHJcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHRoZW1lKHNjcmVlbnMubGcpKSB7XHJcbiAgZGl2LndwLWJsb2NrLXRib25lcy1wLWNhcm91c2VsLXNsaWRlci50YS1jYXJvdXNlbC1jb250YWluZXIge1xyXG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1zcC1iYXNlKTtcclxuICB9XHJcbn1cclxuXHJcbi8qIGNoYW5nZXMgcmVsYXRlZCBicmVhZGNydW1icyAqL1xyXG5ib2R5LnRhLXNob3ctYnJlYWRjcnVtYnMge1xyXG4gIGRpdi55b2FzdC1icmVhZGNydW1icyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbmRpdi55b2FzdC1icmVhZGNydW1icyB7XHJcbiAgQGFwcGx5IHBiLTI7XHJcbn1cclxuXHJcbmJvZHkudGEtaGlkZS1icmVhZGNydW1icyB7XHJcbiAgZGl2LnlvYXN0LWJyZWFkY3J1bWJzIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBjaGFuZ2VzIHJlbGF0ZWQgYnJlYWRjcnVtYnMgKi9cclxuXHJcbi8qIFN0eWxlIHJlbGF0ZWQgKi9cclxuLyogR3JvdXAgd2l0aCBjZW50ZXJlZCB0ZXh0ICovXHJcbmJvZHkgLndwLWJsb2NrLWdyb3VwLmlzLXN0eWxlLWNlbnRlcmVkLXRleHQgKiB7XHJcbiAgQGFwcGx5IHRleHQtY2VudGVyO1xyXG59XHJcblxyXG4vKiBGaXhpbmcgZm9udCBmb3IgYW5pbWF0aW9uICovXHJcbi53cC1ibG9jay1scGItbG90dGllLXBsYXllciAubHBiTG90dGllUGxheWVyIGxvdHRpZS1wbGF5ZXIge1xyXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS13cC0tcHJlc2V0LS1mb250LWZhbWlseS0tZmYtc291cmNlLXNhbnMpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiN0YS1sb3R0aWUtYW5pbWF0aW9uICN3cGFkbWluYmFyIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIGhpZGUgbG90dGllIGFkbWluIGJhciAqL1xyXG4ucGFnZS1pZC01NjguYWRtaW4tYmFyIGRpdiN3cGFkbWluYmFyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ucGFnZS1pZC01NjguYWRtaW4tYmFyIC53cC1zaXRlLWJsb2NrcyB7XHJcbiAgbWFyZ2luLXRvcDogY2xhbXAoLTQ3cHgsIC0xNHZ3LCAtMzFweCk7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gIGZvbnQtZGlzcGxheTogb3B0aW9uYWw7XHJcbn1cclxuXHJcbi53cC1ibG9jay1scGItbG90dGllLXBsYXllciB7XHJcbiAgbWluLWhlaWdodDogY2xhbXAoMTUwcHgsIDQ0dncsIDEwMHZ3KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBWaXRhbGl0eSBTdHlsZS0gSG9tZSBwYWdlICovXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBcIkNhdGNoeSBNYWdlclwiO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL2J1aWxkL2ZvbnRzL2NhdGNoeS1tYWdlci9jYXRjaHlfbWFnZXJfcmVndWxhci13ZWJmb250LndvZmZcIilcclxuICAgIGZvcm1hdChcIndvZmZcIik7XHJcbn1cclxuLmhvdmVyLWJnIHtcclxuICAtLXR3LWJnLW9wYWNpdHk6IDE7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E4NDg0NTtcclxufVxyXG46cm9vdCB7XHJcbiAgYm9keSB7XHJcbiAgICBAYXBwbHkgZm9udC1mZi1zb3VyY2Utc2FucyAgdGV4dC1mcy1sZztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGYwZWU7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiB0aGVtZShzY3JlZW5zLm1kKSkge1xyXG4gICAgICAuY3VzdG9tLWJhbm5lci1ibG9jayB7XHJcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICBAYXBwbHkgbWQ6dGV4dC1mcy1sZyBtYi01O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5hLmNhbGwtYnRuLFxyXG5idXR0b24ge1xyXG4gIEBhcHBseSB3LW1heCBweC04IHB5LTIgbXktc3Atc20gYmctY2xyLXNlY29uZGFyeSB0ZXh0LWNsci13aGl0ZSBibG9jayBteC0wICFuby11bmRlcmxpbmUgcm91bmRlZC0zeGwgIXRleHQtZnMteGw7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBAYXBwbHkgIXRleHQtY2xyLXdoaXRlIGhvdmVyLWJnO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E4NDg0NTtcclxuICB9XHJcbn1cclxuLnNlY3Rpb25fdGhyZWUge1xyXG4gIEBhcHBseSBmbGV4IGZsZXgtY29sIG1kOmZsZXgtcm93IGp1c3RpZnktYmV0d2VlbiBnYXAtc3AtbGc7XHJcbiAgLmNvbnRlbnQtbGVmdCB7XHJcbiAgICBAYXBwbHkgYmFzaXMtWzQwJV0gdGV4dC1sZWZ0IGZsZXggZmxleC1jb2wgZ2FwLTU7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIEBhcHBseSBtYi0wO1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgQGFwcGx5IG1iLTAgdGV4dC1mcy1tYXgtMzYgZm9udC1mdy1leHRyYS1ib2xkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRlbnQtcmlnaHQge1xyXG4gICAgQGFwcGx5IGJhc2lzLVs2MCVdIHRleHQtbGVmdDtcclxuICB9XHJcbn1cclxuLnNlcnZpY2UtY2FyZCB7XHJcbiAgaDMge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiXCI7XHJcbiAgfVxyXG59XHJcblxyXG4udGVzdGltb25pYWxzIHtcclxuICAmX190aXRsZSB7XHJcbiAgICBAYXBwbHkgdGV4dC1jbHItYmxhY2sgIHRleHQtZnMtbWF4LTM2IGJsb2NrIG14LWF1dG8gZm9udC1mdy1leHRyYS1ib2xkIGxlYWRpbmctNztcclxuICB9XHJcblxyXG4gICZfX2dyaWQge1xyXG4gICAgQGFwcGx5IGZsZXggZ2FwLXNwLXNtIGp1c3RpZnktY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQge1xyXG4gICAgQGFwcGx5IGJhc2lzLVszMy4zMyVdIGgtWzM4MHB4XSBiZy1bI2M0YzNjM107XHJcbiAgfVxyXG59XHJcblxyXG4vKiBmb290ZXIgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgLmZvb3RlciB7XHJcbiAgICAvKiBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyAqL1xyXG4gIH1cclxuXHJcbiAgLmZvb3Rlcl9fbWVudSB7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAwLjVyZW07XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyX19zb2NpYWwge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBwYWRkaW5nOiAxLjVyZW07XHJcbiAgfVxyXG4gIC5mb290ZXJfX3NvY2lhbC1saW5rIHtcclxuICAgIG1hcmdpbjogMC41cmVtIDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZm9vdGVyIHtcclxuICBAYXBwbHkgYmctY2xyLWJhc2UtMyBweS1zcC0yeGwgZm9udC1mZi1zb3VyY2Utc2FucyAgdGV4dC1jbHItcHJpbWFyeSB0ZXh0LWNlbnRlciAhcHgtc3AteGw7XHJcbiAgPiAuaXMtbGF5b3V0LWZsZXgge1xyXG4gICAgQGFwcGx5IGp1c3RpZnktYmV0d2VlbiAhaXRlbXMtY2VudGVyO1xyXG4gIH1cclxuICAud3AtYmxvY2stY29sdW1ucyB7XHJcbiAgICA+IC53cC1ibG9jay1jb2x1bW4ge1xyXG4gICAgICBAYXBwbHkgbXQtMCBmbGV4IGp1c3RpZnktZXZlbmx5IGl0ZW1zLWNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXJfX2NvbHVtbiB7XHJcbiAgQGFwcGx5IGZsZXgtMSB0ZXh0LWNlbnRlcjtcclxuICBmbGV4OiAxO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmZvb3Rlcl9fbG9nbyB7XHJcbiAgQGFwcGx5IG1iLXNwLXNtIHRleHQtZnMtbWF4LTM2IGZvbnQtbWVkaXVtIGxlYWRpbmctWzUwcHhdIHRleHQtbGVmdCBtYXgtbWQ6dGV4dC1jZW50ZXI7XHJcbn1cclxuXHJcbi5mb290ZXJfX25hdiB7XHJcbiAgQGFwcGx5IG1iLXNwLXNtO1xyXG59XHJcblxyXG4uZm9vdGVyX19tZW51IHtcclxuICBAYXBwbHkgbGlzdC1ub25lIGdyaWQganVzdGlmeS1jZW50ZXIgZ2FwLXNwLXNtIHAtMCBtLTAgdGV4dC1mcy0zLXhsIGZvbnQtbWVkaXVtIGxlYWRpbmctOCB0ZXh0LWxlZnQ7XHJcblxyXG4gIGxpIHtcclxuICAgIGEge1xyXG4gICAgICBAYXBwbHkgIW5vLXVuZGVybGluZSAhc2hhZG93LW5vbmUgdGV4dC1jbHItcHJpbWFyeSBob3Zlcjp0ZXh0LWNsci1zZWNvbmRhcnk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZm9vdGVyX19saW5rIHtcclxuICBjb2xvcjogIzNhOTI4ZDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi5mb290ZXJfX3NvY2lhbCB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBnYXA6IDFyZW07XHJcbiAgbGkud3Atc29jaWFsLWxpbmsge1xyXG4gICAgQGFwcGx5IHJvdW5kZWQtbm9uZTtcclxuICAgIHN2ZyB7XHJcbiAgICAgIEBhcHBseSB3LVszMnB4XSBoLVszMnB4XTtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICBAYXBwbHkgcC1bMnB4XTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXJfX3NvY2lhbC1saW5rIHtcclxuICBAYXBwbHkgdGV4dC1jbHItd2hpdGUgbm8tdW5kZXJsaW5lIGJnLWNsci1wcmltYXJ5IGZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyO1xyXG4gICY6YmVmb3JlIHtcclxuICAgIEBhcHBseSB0ZXh0LWZzLTIteGwgcHktWzVweF0gcHgtWzhweF07XHJcbiAgfVxyXG59XHJcblxyXG4uZm9vdGVyX19zb2NpYWwtbGluazpob3ZlciB7XHJcbiAgY29sb3I6ICM1MmQxY2I7XHJcbn1cclxuLmZvb3Rlci1zZWN0aW9uIHtcclxuICBAYXBwbHkgIWJnLWNsci1iYXNlLTM7XHJcbn1cclxuXHJcbi5pcy1sYXlvdXQtY29uc3RyYWluZWQuYmctY2xyLXByaW1hcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzYTkyOGQ7XHJcbn1cclxuXHJcbi8qIHNwYWNpbmcgKi9cclxuYm9keSB7XHJcbiAgLnRhLWhlYWRlci0xLFxyXG4gIC50ZWFtLFxyXG4gIC5zZXJ2aWNlc19fY29udGFpbmVyLFxyXG4gIC5jdXN0b20tYmFubmVyLWJsb2NrID4gZGl2ID4gZGl2LFxyXG4gIC5zZWN0aW9uX3RocmVlLFxyXG4gIC50ZXN0aW1vbmlhbHMge1xyXG4gICAgQGFwcGx5IG1kOiFteC1zcC1iYXNlIGxnOiFteC1zcC14bDtcclxuICB9XHJcbn1cclxuIixudWxsXX0= */
