/*-- -------------------------- -->
<---           Hero             -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #hero-143 {
    /* Centers button */
    text-align: center;
    /* 144px - 300px - leaving extra space for the navigation */
    padding: clamp(9rem, 25.95vw, 18.75rem) 1rem 0;
    /* 130px - 450px */
    padding-bottom: clamp(12.125rem, 30.95vw, 28.125rem);
    position: relative;
    z-index: 1;
    /* Prevents white rectangle pseudos from overlapping the sections below */
    overflow: hidden;
  }
  #hero-143:before {
    /* Left side of the triangle */
    content: "";
    width: 31.25rem;
    /* make really long so it covers the whole screen all the way to desktop */
    height: 250rem;
    background: #fff;
    opacity: 1;
    transform: rotate(-67deg);
    transform-origin: center;
    position: absolute;
    display: block;
    bottom: -139.6875rem;
    /* this makes the right edge sit at the 50% line at all times */
    right: 50%;
    z-index: 0;
  }
  #hero-143:after {
    /* Right side of the triangle */
    content: "";
    width: 31.25rem;
    height: 250rem;
    background: #fff;
    opacity: 1;
    transform: rotate(67deg);
    transform-origin: center;
    position: absolute;
    display: block;
    bottom: -139.6875rem;
    /* this makes the left edge sit at the 50% line at all times */
    left: 50%;
    z-index: 0;
  }
  #hero-143 .cs-background {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
  }
  #hero-143 .cs-background:before {
    /* Overlay */
    content: "";
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.7;
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    z-index: 1;
    /* prevents the cursor from interacting with it */
    pointer-events: none;
  }
  #hero-143 .cs-background img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #hero-143 .cs-container {
    width: 100%;
    max-width: 80rem;
    margin: auto;
  }
  #hero-143 .cs-title {
    /* 39px - 61px */
    font-size: clamp(2.4375rem, 6.4vw, 3.8125rem);
    font-weight: 700;
    line-height: 1.2em;
    text-align: center;
    max-width: 51.8125rem;
    /* 16px - 24px */
    margin: 0 auto clamp(1rem, 4vw, 1.5rem);
    color: #fff;
    position: relative;
  }
  #hero-143 .cs-title:after {
    /* Divider Line */
    content: "";
    /* 60px - 100px */
    width: clamp(3.75rem, 9.5vw, 6.25rem);
    /* 4px - 8px */
    height: clamp(0.25rem, 0.8vw, 0.5rem);
    /* 16px - 24px */
    margin: clamp(1rem, 4vw, 1.5rem) auto clamp(1rem, 4vw, 1.5rem);
    background: var(--primary);
    opacity: 1;
    position: relative;
    display: block;
  }
  #hero-143 .cs-text {
    /* 16px - 25px */
    font-size: clamp(1rem, 1.95vw, 1.5625rem);
    line-height: 1.5em;
    text-align: center;
    width: 100%;
    /* 464px - 800px */
    max-width: clamp(29rem, 60vw, 50rem);
    margin: 0 auto;
    /* 40px - 48px */
    margin-bottom: clamp(2.5rem, 4vw, 3rem);
    color: #fff;
  }
}
/* Desktop - 1300px (To make image background parallax) */
@media only screen and (min-width: 81.25rem) {
  #hero-143 {
    background: url("/assets/images/landing.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    /* makes the parallax effect */
    background-attachment: fixed;
  }
  #hero-143 .cs-background img {
    display: none;
  }
}
/* Dark Mode */
@media only screen and (min-width: 0rem) {
  body.dark-mode #hero-143:before,
  body.dark-mode #hero-143:after {
    background: var(--dark);
  }
  body.dark-mode #hero-143 .cs-background:before {
    opacity: 0.85;
  }
}
/*-- -------------------------- -->
<---         Services           -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #h-services-143 {
    /* 40px - 100px */
    padding: 0 1em clamp(2.5rem, 7.9vw, 6.25rem) 1rem;
    position: relative;
    /* give a higher z index than the hero so it can sit on top */
    z-index: 10;
  }
  #h-services-143 .cs-card-group {
    width: 100%;
    max-width: 29.0625rem;
    margin: 0 auto 0;
    /* negative margin pulls it up on top of the hero section */
    /* -46px to -76px - we're calculating whatever clamp is and multiplying by -1
            to make the value negative since clamp doesn't work with negative values */
    margin-top: calc(clamp(5rem, 13vw, 4.75rem)*-1);
    /* 40px - 60px top and bottom, 16px - 44px left & right */
    padding: clamp(2.5rem, 4.7vw, 3.75rem) clamp(1rem, 5.3vw, 2.75rem);
    box-shadow: 0px 20px 40px 0px rgba(0, 0, 0, 0.05);
    border-radius: 0.3125rem;
    border-top: 8px solid var(--primary);
    background-color: #fff;
    /* prevents padding and border from affecting height and width */
    box-sizing: border-box;
  }
  #h-services-143 .cs-item {
    list-style: none;
    margin: 0 auto 2rem;
    width: 100%;
    max-width: 22.5rem;
  }
  #h-services-143 .cs-item:last-of-type {
    margin-bottom: 0;
  }
  #h-services-143 .cs-icon {
    /* 68px - 88px */
    width: clamp(4.25rem, 8.8vw, 5.5rem);
    /* 68px - 88px */
    height: clamp(4.25rem, 8.8vw, 5.5rem);
    margin: auto;
    /* 20px - 24px */
    margin-bottom: clamp(1.25rem, 5vw, 1.5rem);
    background: var(--primary);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #h-services-143 .cs-icon img {
    /* 44px - 52px */
    width: clamp(2.75rem, 5.8vw, 3.25rem);
    height: auto;
  }
  #h-services-143 .cs-title {
    font-size: 1.25rem;
    line-height: 1.2em;
    text-transform: uppercase;
    text-align: center;
    margin: 0 auto 0.5rem;
    color: var(--headerColor);
  }
  #h-services-143 .cs-text {
    font-size: 1rem;
    text-align: center;
    line-height: 1.5em;
    max-width: 22.5rem;
    margin: 0 auto;
    color: var(--bodyTextColor);
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #h-services-143 .cs-card-group {
    max-width: 49rem;
    /* -76px to -320px - we're calculating whatever clamp is and multiplying by -1
               to make the value negative since clamp doesn't work with negative values */
    margin-top: calc(clamp(4.75rem, 20vw, 20rem)*-1);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
  }
  #h-services-143 .cs-item {
    width: 45%;
    max-width: 19.625rem;
  }
  #h-services-143 .cs-item:last-of-type {
    margin-bottom: 2rem;
  }
}
/* Desktop - 1300px */
@media only screen and (min-width: 81.25rem) {
  #h-services-143 .cs-card-group {
    max-width: 80rem;
    flex-wrap: nowrap;
  }
  #h-services-143 .cs-item {
    margin: 0;
  }
  #h-services-143 .cs-item:last-of-type {
    margin-bottom: 0;
  }
}
/* Dark Mode */
@media only screen and (min-width: 0rem) {
  body.dark-mode #h-services-143 .cs-card-group {
    background: var(--medium);
  }
  body.dark-mode #h-services-143 .cs-icon {
    background: var(--darkTint);
  }
  body.dark-mode #h-services-143 .cs-title {
    color: #fff;
  }
  body.dark-mode #h-services-143 .cs-text {
    color: #fff;
  }
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hc3NldHMvbGVzcy9jcml0aWNhbC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztrQ0FFa0M7QUFDbEMsbUJBQW1CO0FBU25CO0VBQ0k7SUFQQSxtQkFBbUI7SUFTZixrQkFBQTtJQVBKLDJEQUEyRDtJQVN2RCw4Q0FBQTtJQVBKLGtCQUFrQjtJQVNkLG9EQUFBO0lBQ0Esa0JBQUE7SUFDQSxVQUFBO0lBUEoseUVBQXlFO0lBU3JFLGdCQUFBO0VBUE47RUFTTTtJQVBKLDhCQUE4QjtJQVN0QixXQUFBO0lBQ0EsZUFBQTtJQVBSLDBFQUEwRTtJQVNsRSxjQUFBO0lBQ0EsZ0JBQUE7SUFDQSxVQUFBO0lBQ0EseUJBQUE7SUFDQSx3QkFBQTtJQUNBLGtCQUFBO0lBQ0EsY0FBQTtJQUNBLG9CQUFBO0lBUFIsK0RBQStEO0lBU3ZELFVBQUE7SUFDQSxVQUFBO0VBUFY7RUFVTTtJQVJKLCtCQUErQjtJQVV2QixXQUFBO0lBQ0EsZUFBQTtJQUNBLGNBQUE7SUFDQSxnQkFBQTtJQUNBLFVBQUE7SUFDQSx3QkFBQTtJQUNBLHdCQUFBO0lBQ0Esa0JBQUE7SUFDQSxjQUFBO0lBQ0Esb0JBQUE7SUFSUiw4REFBOEQ7SUFVdEQsU0FBQTtJQUNBLFVBQUE7RUFSVjtFQXBDRTtJQWdEUSxXQUFBO0lBQ0EsWUFBQTtJQUNBLGNBQUE7SUFDQSxrQkFBQTtJQUNBLE1BQUE7SUFDQSxPQUFBO0lBQ0EsV0FBQTtFQVRWO0VBV1U7SUFUUixZQUFZO0lBV0EsV0FBQTtJQUNBLFdBQUE7SUFDQSxZQUFBO0lBQ0EsZ0JBQUE7SUFDQSxZQUFBO0lBQ0Esa0JBQUE7SUFDQSxjQUFBO0lBQ0EsTUFBQTtJQUNBLE9BQUE7SUFDQSxVQUFBO0lBVFosaURBQWlEO0lBV3JDLG9CQUFBO0VBVGQ7RUE1REU7SUF5RVksa0JBQUE7SUFDQSxNQUFBO0lBQ0EsT0FBQTtJQUNBLFlBQUE7SUFDQSxXQUFBO0lBQ0Esb0JBQUE7T0FBQSxpQkFBQTtFQVZkO0VBcEVF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Ly8g4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4vLyBDUklUSUNBTCBQQUdFIFNUWUxFU1xuLy8gQWJvdmUtdGhlLWZvbGQgYW5kIGhpZ2gtcHJpb3JpdHkgc3R5bGVzIGZvciB0aGUgaG9tZSBwYWdlJ3MgbGFuZGluZyBzZWN0aW9uLlxuLy8gUHV0IHRoZSBmaXJzdCBzZWN0aW9uIG9mIHRoZSBob21lIHBhZ2UgaW4gaGVyZSwgc28gaXQgbG9hZHMgaW1tZWRpYXRlbHkuXG4vLyBUaGUgcmVzdCBvZiB0aGUgaG9tZSBwYWdlIHN0eWxlcyBpbiBsb2NhbC5jc3Mgd2lsbCBiZSBkZWZlcnJlZCBhbmRcbi8vIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4vKi0tIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC0tPlxuPC0tLSAgICAgICAgICAgSGVybyAgICAgICAgICAgICAtLT5cbjwtLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLSovXG5cbi8qIE1vYmlsZSAtIDM2MHB4ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDByZW0pIHtcbiAgICAjaGVyby0xNDMge1xuICAgICAgICAvKiBDZW50ZXJzIGJ1dHRvbiAqL1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC8qIDE0NHB4IC0gMzAwcHggLSBsZWF2aW5nIGV4dHJhIHNwYWNlIGZvciB0aGUgbmF2aWdhdGlvbiAqL1xuICAgICAgICBwYWRkaW5nOiBjbGFtcCg5cmVtLCAyNS45NXZ3LCAxOC43NXJlbSkgKDE2LzE2cmVtKSAwO1xuICAgICAgICAvKiAxMzBweCAtIDQ1MHB4ICovXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjbGFtcCgxMi4xMjVyZW0sIDMwLjk1dncsIDI4LjEyNXJlbSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgLyogUHJldmVudHMgd2hpdGUgcmVjdGFuZ2xlIHBzZXVkb3MgZnJvbSBvdmVybGFwcGluZyB0aGUgc2VjdGlvbnMgYmVsb3cgKi9cbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAvKiBMZWZ0IHNpZGUgb2YgdGhlIHRyaWFuZ2xlICovXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgd2lkdGg6ICg1MDAvMTZyZW0pO1xuICAgICAgICAgICAgLyogbWFrZSByZWFsbHkgbG9uZyBzbyBpdCBjb3ZlcnMgdGhlIHdob2xlIHNjcmVlbiBhbGwgdGhlIHdheSB0byBkZXNrdG9wICovXG4gICAgICAgICAgICBoZWlnaHQ6ICg0MDAwLzE2cmVtKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTY3ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm90dG9tOiAoLTIyMzUvMTZyZW0pO1xuICAgICAgICAgICAgLyogdGhpcyBtYWtlcyB0aGUgcmlnaHQgZWRnZSBzaXQgYXQgdGhlIDUwJSBsaW5lIGF0IGFsbCB0aW1lcyAqL1xuICAgICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIC8qIFJpZ2h0IHNpZGUgb2YgdGhlIHRyaWFuZ2xlICovXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgd2lkdGg6ICg1MDAvMTZyZW0pO1xuICAgICAgICAgICAgaGVpZ2h0OiAoNDAwMC8xNnJlbSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDY3ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm90dG9tOiAoLTIyMzUvMTZyZW0pO1xuICAgICAgICAgICAgLyogdGhpcyBtYWtlcyB0aGUgbGVmdCBlZGdlIHNpdCBhdCB0aGUgNTAlIGxpbmUgYXQgYWxsIHRpbWVzICovXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNzLWJhY2tncm91bmQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAtMjtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIC8qIE92ZXJsYXkgKi9cbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAvKiBwcmV2ZW50cyB0aGUgY3Vyc29yIGZyb20gaW50ZXJhY3Rpbmcgd2l0aCBpdCAqL1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY3MtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAoMTI4MC8xNnJlbSk7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAuY3MtdGl0bGUge1xuICAgICAgICAgICAgLyogMzlweCAtIDYxcHggKi9cbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi40Mzc1cmVtLCA2LjR2dywgMy44MTI1cmVtKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXgtd2lkdGg6ICg4MjkvMTZyZW0pO1xuICAgICAgICAgICAgLyogMTZweCAtIDI0cHggKi9cbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIGNsYW1wKDFyZW0sIDR2dywgMS41cmVtKTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAvKiBEaXZpZGVyIExpbmUgKi9cbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIC8qIDYwcHggLSAxMDBweCAqL1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjbGFtcCgzLjc1cmVtLCA5LjV2dywgNi4yNXJlbSk7XG4gICAgICAgICAgICAgICAgLyogNHB4IC0gOHB4ICovXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjbGFtcCgwLjI1cmVtLCAwLjh2dywgMC41cmVtKTtcbiAgICAgICAgICAgICAgICAvKiAxNnB4IC0gMjRweCAqL1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2xhbXAoMXJlbSwgNHZ3LCAxLjVyZW0pIGF1dG8gY2xhbXAoMXJlbSwgNHZ3LCAxLjVyZW0pO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNzLXRleHQge1xuICAgICAgICAgICAgLyogMTZweCAtIDI1cHggKi9cbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMS45NXZ3LCAxLjU2MjVyZW0pO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvKiA0NjRweCAtIDgwMHB4ICovXG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNsYW1wKDI5cmVtLCA2MHZ3LCA1MHJlbSk7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIC8qIDQwcHggLSA0OHB4ICovXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjbGFtcCgyLjVyZW0sIDR2dywgM3JlbSk7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogRGVza3RvcCAtIDEzMDBweCAoVG8gbWFrZSBpbWFnZSBiYWNrZ3JvdW5kIHBhcmFsbGF4KSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNXJlbSkge1xuICAgICNoZXJvLTE0MyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi9hc3NldHMvaW1hZ2VzL2xhbmRpbmcuanBnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIC8qIG1ha2VzIHRoZSBwYXJhbGxheCBlZmZlY3QgKi9cbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcblxuICAgICAgICAuY3MtYmFja2dyb3VuZCB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIERhcmsgTW9kZSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwcmVtKSB7XG4gICAgYm9keS5kYXJrLW1vZGUge1xuICAgICAgICAjaGVyby0xNDMge1xuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNzLWJhY2tncm91bmQge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44NTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLS0+XG48LS0tICAgICAgICAgU2VydmljZXMgICAgICAgICAgIC0tPlxuPC0tLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAtKi9cblxuLyogTW9iaWxlIC0gMzYwcHggKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMHJlbSkge1xuICAgICNoLXNlcnZpY2VzLTE0MyB7XG4gICAgICAgIC8qIDQwcHggLSAxMDBweCAqL1xuICAgICAgICBwYWRkaW5nOiAwICgxNi8xNmVtKSBjbGFtcCgyLjVyZW0sIDcuOXZ3LCA2LjI1cmVtKSAoMTYvMTZyZW0pO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8qIGdpdmUgYSBoaWdoZXIgeiBpbmRleCB0aGFuIHRoZSBoZXJvIHNvIGl0IGNhbiBzaXQgb24gdG9wICovXG4gICAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAgIC5jcy1jYXJkLWdyb3VwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAoNDY1LzE2cmVtKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDA7XG4gICAgICAgICAgICAvKiBuZWdhdGl2ZSBtYXJnaW4gcHVsbHMgaXQgdXAgb24gdG9wIG9mIHRoZSBoZXJvIHNlY3Rpb24gKi9cbiAgICAgICAgICAgIC8qIC00NnB4IHRvIC03NnB4IC0gd2UncmUgY2FsY3VsYXRpbmcgd2hhdGV2ZXIgY2xhbXAgaXMgYW5kIG11bHRpcGx5aW5nIGJ5IC0xXG4gICAgICAgICAgICB0byBtYWtlIHRoZSB2YWx1ZSBuZWdhdGl2ZSBzaW5jZSBjbGFtcCBkb2Vzbid0IHdvcmsgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMgKi9cbiAgICAgICAgICAgIG1hcmdpbi10b3A6IH5cImNhbGMoY2xhbXAoNXJlbSwgMTN2dywgNC43NXJlbSkqLTEpXCI7XG4gICAgICAgICAgICAvKiA0MHB4IC0gNjBweCB0b3AgYW5kIGJvdHRvbSwgMTZweCAtIDQ0cHggbGVmdCAmIHJpZ2h0ICovXG4gICAgICAgICAgICBwYWRkaW5nOiBjbGFtcCgyLjVyZW0sIDQuN3Z3LCAzLjc1cmVtKSBjbGFtcCgxcmVtLCA1LjN2dywgMi43NXJlbSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMjBweCA0MHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogKDUvMTZyZW0pO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogOHB4IHNvbGlkIHZhcigtLXByaW1hcnkpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIC8qIHByZXZlbnRzIHBhZGRpbmcgYW5kIGJvcmRlciBmcm9tIGFmZmVjdGluZyBoZWlnaHQgYW5kIHdpZHRoICovXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNzLWl0ZW0ge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvICgzMi8xNnJlbSk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogKDM2MC8xNnJlbSk7XG5cbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNzLWljb24ge1xuICAgICAgICAgICAgLyogNjhweCAtIDg4cHggKi9cbiAgICAgICAgICAgIHdpZHRoOiBjbGFtcCg0LjI1cmVtLCA4Ljh2dywgNS41cmVtKTtcbiAgICAgICAgICAgIC8qIDY4cHggLSA4OHB4ICovXG4gICAgICAgICAgICBoZWlnaHQ6IGNsYW1wKDQuMjVyZW0sIDguOHZ3LCA1LjVyZW0pO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgLyogMjBweCAtIDI0cHggKi9cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNsYW1wKDEuMjVyZW0sIDV2dywgMS41cmVtKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnkpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAvKiA0NHB4IC0gNTJweCAqL1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjbGFtcCgyLjc1cmVtLCA1Ljh2dywgMy4yNXJlbSk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNzLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogKDIwLzE2cmVtKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAoOC8xNnJlbSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taGVhZGVyQ29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNzLXRleHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAoMTYvMTZyZW0pO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAoMzYwLzE2cmVtKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJvZHlUZXh0Q29sb3IpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBUYWJsZXQgLSA3NjhweCAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAgICNoLXNlcnZpY2VzLTE0MyB7XG4gICAgICAgIC5jcy1jYXJkLWdyb3VwIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogKDc4NC8xNnJlbSk7XG4gICAgICAgICAgICAvKiAtNzZweCB0byAtMzIwcHggLSB3ZSdyZSBjYWxjdWxhdGluZyB3aGF0ZXZlciBjbGFtcCBpcyBhbmQgbXVsdGlwbHlpbmcgYnkgLTFcbiAgICAgICAgICAgICAgIHRvIG1ha2UgdGhlIHZhbHVlIG5lZ2F0aXZlIHNpbmNlIGNsYW1wIGRvZXNuJ3Qgd29yayB3aXRoIG5lZ2F0aXZlIHZhbHVlcyAqL1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogflwiY2FsYyhjbGFtcCg0Ljc1cmVtLCAyMHZ3LCAyMHJlbSkqLTEpXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6ICg0MC8xNnJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAuY3MtaXRlbSB7XG4gICAgICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAoMzE0LzE2cmVtKTtcbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAoMzIvMTZyZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEZXNrdG9wIC0gMTMwMHB4ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1cmVtKSB7XG4gICAgI2gtc2VydmljZXMtMTQzIHtcbiAgICAgICAgLmNzLWNhcmQtZ3JvdXAge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAoMTI4MC8xNnJlbSk7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jcy1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEYXJrIE1vZGUgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMHJlbSkge1xuICAgIGJvZHkuZGFyay1tb2RlIHtcbiAgICAgICAgI2gtc2VydmljZXMtMTQzIHtcbiAgICAgICAgICAgIC5jcy1jYXJkLWdyb3VwIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tZWRpdW0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY3MtaWNvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZGFya1RpbnQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY3MtdGl0bGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY3MtdGV4dCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0= */