/*!****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/base.css ***!
  \****************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;500;600;700;900&display=swap);
/*!********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/base.css (1) ***!
  \********************************************************************************/
:root {
  --background-clr: #0b192e;
  --primary-clr: #05bfdb;
  --white-clr: #ffffff;
  --black-clr: #000000;
  --gray-clr: rgba(240, 248, 255, 0.4);
  --shadow: #084B83;
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  cursor: none;
}

html {
  scroll-behavior: smooth;
}

body {
  display: flex;
  flex-direction: column;
  background-color: var(--background-clr);
  font-family: 'Montserrat', sans-serif;
  user-select: none;
  box-sizing: border-box;

}

/* Hide scrollbar for Chrome, Safari and Opera */
body::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
body {
  -ms-overflow-style: none;
  /* IE and Edge */
  scrollbar-width: none;
  /* Firefox */
}

section {
  padding: 20vh 15vw;
  width: 100%;
}

.section-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 2rem;
}

.section-head-num {
  font-size: 1.2rem;
  color: var(--primary-clr);
}

.section-head-text {
  font-size: 1.7rem;
  font-weight: 700;
  color: var(--gray-clr);
}

.section-hr {
  width: 40%;
  height: 1px;
  background-color: var(--gray-clr);
  opacity: 0.5;
}

@media screen and (max-width: 768px) {
  section {
    padding: 15vh 15vw;
  }
}
/*!****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/logo.css ***!
  \****************************************************************************/
.header-logo {
  color: var(--primary-clr);
  width: 6rem;
  font-size: 2rem;
  font-weight: 300;
  position: relative;
  user-select: none;
  overflow: hidden;
}

.header-logo span {
  font-size: 1.5rem;
  font-weight: 500;
  display: inline-block;
  opacity: 0;
  transform: translateX(-30%);
  transition: all 0.6s ease-out;
}

.header-logo:hover span {
  opacity: 1;
  transform: translateX(0);
}
/*!***************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/nav.css ***!
  \***************************************************************************/
.nav ul {
  display: flex;
  gap: 0.7rem;
  color: var(--white-clr);
  list-style: none;
}

.nav-item {
  display: flex;
  align-items: flex-end;
  gap: 0.3rem;
  font-size: 0.9rem;
  font-weight: 300;
  border-radius: 1rem;
  padding: 0.4rem 1rem;
}

.nav-item-num {
  font-size: 1rem;
  color: var(--primary-clr);

}

.nav-item,
.nav-item-num {
  transition: all 0.5s ease-in-out;
}

.nav-item:hover,
.nav-item.active {
  background-color: var(--primary-clr);
  color: var(--black-clr);
}

.nav-item:hover .nav-item-num,
.nav-item.active .nav-item-num {
  color: var(--black-clr);
}

.nav a,
.nav a:visited {
  text-decoration: none;
  color: inherit;
}
/*!******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/header.css ***!
  \******************************************************************************/
.header {
  padding: 1.5rem 3rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: sticky;
  top: 0;
  background-color: var(--background-clr);
  z-index: 3;
}
/*!****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/home.css ***!
  \****************************************************************************/
#home {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.user-intro {
  font-size: 1.2rem;
  color: var(--primary-clr);
}

.user-name {
  font-size: 5rem;
  font-weight: 600;
  color: var(--white-clr);
}

.user-job {
  font-size: 4.5rem;
  font-weight: 600;
  color: var(--primary-clr);
  opacity: 0.8;
  margin-bottom: 3rem;
  text-shadow: -5px -5px 1px var(--shadow);
}

.learn-more-button-wrapper {
  background-color: var(--primary-clr);
  width: 10rem;
  height: 3rem;
  border-radius: 0.5rem;
}

.learn-more-button {
  width: 100%;
  height: 100%;
  font-size: 1.1rem;
  font-weight: 100;
  color: var(--primary-clr);
  background-color: var(--background-clr);
  border: 2px solid var(--primary-clr);
  border-radius: 0.5rem;
  transition: all 0.2s ease-in-out;
}

.learn-more-button:hover {
  transform: translate(4px, 4px);
}
/*!*****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/about.css ***!
  \*****************************************************************************/
.about-body {
  display: flex;
  gap: 2rem;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.about-content {
  font-size: 1.2rem;
  color: var(--gray-clr);
  display: flex;
  flex-direction: column;
  gap: 2rem;
  flex: 1;
  min-width: 25rem;
  text-align: justify;
}

.about-special-text {
  color: var(--primary-clr);
}

.profile-img-wrapper {
  width: 300px;
  height: 450px;
  border-radius: 1rem;
  background-color: var(--primary-clr);
}

.profile-img {
  border-radius: 1rem;
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: all 0.2s ease-out;
}

.profile-img:hover {
  /* border: 4px solid var(--primary-clr); */
  transform: translate(8px, -8px);
}
/*!*****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/works.css ***!
  \*****************************************************************************/
.projects-container {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}

.project-wrapper {
  display: flex;
}

.project-details {
  width: 20rem;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.project-category {
  color: var(--primary-clr);
}

.project-title {
  color: var(--white-clr);
  font-size: 1.5rem;
  font-weight: 700;
}

.project-desc {
  width: 22rem;
  font-size: 1.1rem;
  border-radius: 1rem;
  padding: 2rem;
  line-height: 1.5rem;
  color: var(--gray-clr);
  background-color: #011f38;
  box-shadow: -5px 5px 10px rgba(0, 0, 0, 0.5);
}

.project-tech-wrapper {
  color: var(--gray-clr);
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.project-image-wrapper {
  min-width: 20rem;
  max-width: 100%;
  border-radius: 1rem;
  background-color: var(--primary-clr);
}

@media (max-width: 768px) {
  .project-details {
    width: 100%;
  }

  .project-desc {
    width: 100%;
  }

  .project-wrapper {
    flex-direction: column;
    gap: 2rem;
  }
}

.project-image {
  border-radius: 1rem;
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: all 0.2s ease-out;
  border: 3px solid var(--primary-clr);
}

.project-image:hover {
  transform: translate(-5px, -8px);
}

.see-more-button-wrapper {
  background-color: var(--primary-clr);
  width: 10rem;
  height: 3rem;
  border-radius: 0.5rem;
  margin: 0 auto;
}

.see-more-button {
  width: 100%;
  height: 100%;
  font-size: 1.1rem;
  font-weight: 100;
  color: var(--primary-clr);
  background-color: var(--background-clr);
  border: 2px solid var(--primary-clr);
  border-radius: 0.5rem;
  transition: all 0.2s ease-in-out;
}

.see-more-button:hover {
  transform: translate(4px, 4px);
}

.project-links-wrapper {
  display: flex;
  gap: 1.5rem;
}

.project-link {
  text-align: center;
  color: var(--white-clr);
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.github-logo {
  width: 25px;
}
/*!*******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/contact.css ***!
  \*******************************************************************************/
.contact-section-body {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.section-body-heading {
  font-size: 2rem;
  font-weight: 700;
  color: var(--white-clr);
}

.section-body-msg {
  width: 70%;
  line-height: 1.5rem;
  color: var(--gray-clr);
}

.contact-buttons-container {
  display: flex;
  gap: 2rem;
}

.resume-button-wrapper,
.gmail-button-wrapper {
  background-color: var(--primary-clr);
  width: 10rem;
  height: 3rem;
  border-radius: 0.5rem;
  margin: 0 auto;
}

.resume-button,
.gmail-button {
  width: 100%;
  height: 100%;
  font-size: 1.1rem;
  font-weight: 100;
  color: var(--primary-clr);
  background-color: var(--background-clr);
  border: 2px solid var(--primary-clr);
  border-radius: 0.5rem;
  transition: all 0.2s ease-in-out;
}

.resume-button:hover,
.gmail-button:hover {
  transform: translate(4px, 4px);
}


.contact-container-msg,
.social-container-msg {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--gray-clr);
}

.social-buttons-container {
  display: flex;
  gap: 2rem;
}

.social-button {
  width: 2.5rem;
}
/*!******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/cursor.css ***!
  \******************************************************************************/
.main-cursor,
.secondary-cursor {
  position: fixed;
  z-index: 50;
  overflow: hidden;
  background-repeat: no-repeat;
  border-radius: 50%;
  pointer-events: none;
}

.main-cursor {
  width: 1rem;
  height: 1rem;
  background-color: white;
}

.secondary-cursor {
  width: 0.75rem;
  height: 0.75rem;
  background-color: #05BFDB;
}
/*!*********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/mobileNav.css ***!
  \*********************************************************************************/
/* Hamburger menu styles */
.hamburger-btn {
  display: none;
  background: none;
  border: none;
}

.bar {
  display: block;
  width: 30px;
  height: 3px;
  margin: 6px 0;
  background-color: var(--primary-clr);
  transition: 0.4s;
}

/* Mobile navigation container styles */
.mobile-nav-container {
  display: none;
  height: 100vh;
  width: 100vw;
  margin: auto;
  padding: 1.5rem;
  border-radius: 1rem;
  overflow-y: auto;
  background-color: var(--background-clr);
  flex-direction: column;
  border: none;
  z-index: 1000;
  cursor: default;
}

.mobile-nav-container ul {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.mobile-nav-container * {
  cursor: pointer;
}

.mobile-nav-container a {
  list-style: none;
  text-decoration: none;
  color: var(--primary-clr);
}

.mobile-nav-item {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  padding: 0.5rem;
  border-radius: 5px;
  transition: all 0.8s ease;
  text-align: center;
}

.mobile-nav-item:hover {
  background-color: var(--primary-clr);
  color: var(--background-clr);
}

.close-btn {
  align-self: flex-end;
  font-size: 2rem;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--primary-clr);
  justify-self: end;
  align-self: start;
}

/* Media query for small screens */
@media screen and (max-width: 768px) {
  .hamburger-btn {
    display: block;
  }

  .nav {
    display: none;
  }
}
/*!******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/stylesheets/styles.css ***!
  \******************************************************************************/


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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aW8vLi9zcmMvc3R5bGVzaGVldHMvYmFzZS5jc3MiLCJ3ZWJwYWNrOi8vcG9ydGZvbGlvLy4vc3JjL3N0eWxlc2hlZXRzL2xvZ28uY3NzIiwid2VicGFjazovL3BvcnRmb2xpby8uL3NyYy9zdHlsZXNoZWV0cy9uYXYuY3NzIiwid2VicGFjazovL3BvcnRmb2xpby8uL3NyYy9zdHlsZXNoZWV0cy9oZWFkZXIuY3NzIiwid2VicGFjazovL3BvcnRmb2xpby8uL3NyYy9zdHlsZXNoZWV0cy9ob21lLmNzcyIsIndlYnBhY2s6Ly9wb3J0Zm9saW8vLi9zcmMvc3R5bGVzaGVldHMvYWJvdXQuY3NzIiwid2VicGFjazovL3BvcnRmb2xpby8uL3NyYy9zdHlsZXNoZWV0cy93b3Jrcy5jc3MiLCJ3ZWJwYWNrOi8vcG9ydGZvbGlvLy4vc3JjL3N0eWxlc2hlZXRzL2NvbnRhY3QuY3NzIiwid2VicGFjazovL3BvcnRmb2xpby8uL3NyYy9zdHlsZXNoZWV0cy9jdXJzb3IuY3NzIiwid2VicGFjazovL3BvcnRmb2xpby8uL3NyYy9zdHlsZXNoZWV0cy9tb2JpbGVOYXYuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PU1vbnRzZXJyYXQ6d2dodEAxMDA7MjAwOzMwMDs1MDA7NjAwOzcwMDs5MDAmZGlzcGxheT1zd2FwJyk7XG5cbjpyb290IHtcbiAgLS1iYWNrZ3JvdW5kLWNscjogIzBiMTkyZTtcbiAgLS1wcmltYXJ5LWNscjogIzA1YmZkYjtcbiAgLS13aGl0ZS1jbHI6ICNmZmZmZmY7XG4gIC0tYmxhY2stY2xyOiAjMDAwMDAwO1xuICAtLWdyYXktY2xyOiByZ2JhKDI0MCwgMjQ4LCAyNTUsIDAuNCk7XG4gIC0tc2hhZG93OiAjMDg0QjgzO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGN1cnNvcjogbm9uZTtcbn1cblxuaHRtbCB7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG5ib2R5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jbHIpO1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxufVxuXG4vKiBIaWRlIHNjcm9sbGJhciBmb3IgQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhICovXG5ib2R5Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhpZGUgc2Nyb2xsYmFyIGZvciBJRSwgRWRnZSBhbmQgRmlyZWZveCAqL1xuYm9keSB7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgLyogSUUgYW5kIEVkZ2UgKi9cbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAvKiBGaXJlZm94ICovXG59XG5cbnNlY3Rpb24ge1xuICBwYWRkaW5nOiAyMHZoIDE1dnc7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2VjdGlvbi1oZWFkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5zZWN0aW9uLWhlYWQtbnVtIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNscik7XG59XG5cbi5zZWN0aW9uLWhlYWQtdGV4dCB7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogdmFyKC0tZ3JheS1jbHIpO1xufVxuXG4uc2VjdGlvbi1ociB7XG4gIHdpZHRoOiA0MCU7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWNscik7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMTV2aCAxNXZ3O1xuICB9XG59IiwiLmhlYWRlci1sb2dvIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbiAgd2lkdGg6IDZyZW07XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmhlYWRlci1sb2dvIHNwYW4ge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwJSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjZzIGVhc2Utb3V0O1xufVxuXG4uaGVhZGVyLWxvZ286aG92ZXIgc3BhbiB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn0iLCIubmF2IHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAwLjdyZW07XG4gIGNvbG9yOiB2YXIoLS13aGl0ZS1jbHIpO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGdhcDogMC4zcmVtO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgcGFkZGluZzogMC40cmVtIDFyZW07XG59XG5cbi5uYXYtaXRlbS1udW0ge1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNscik7XG5cbn1cblxuLm5hdi1pdGVtLFxuLm5hdi1pdGVtLW51bSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xufVxuXG4ubmF2LWl0ZW06aG92ZXIsXG4ubmF2LWl0ZW0uYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jbHIpO1xuICBjb2xvcjogdmFyKC0tYmxhY2stY2xyKTtcbn1cblxuLm5hdi1pdGVtOmhvdmVyIC5uYXYtaXRlbS1udW0sXG4ubmF2LWl0ZW0uYWN0aXZlIC5uYXYtaXRlbS1udW0ge1xuICBjb2xvcjogdmFyKC0tYmxhY2stY2xyKTtcbn1cblxuLm5hdiBhLFxuLm5hdiBhOnZpc2l0ZWQge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xufSIsIkBpbXBvcnQgdXJsKGxvZ28uY3NzKTtcbkBpbXBvcnQgdXJsKG5hdi5jc3MpO1xuXG4uaGVhZGVyIHtcbiAgcGFkZGluZzogMS41cmVtIDNyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNscik7XG4gIHotaW5kZXg6IDM7XG59IiwiI2hvbWUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDEuNXJlbTtcbn1cblxuLnVzZXItaW50cm8ge1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbn1cblxuLnVzZXItbmFtZSB7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLXdoaXRlLWNscik7XG59XG5cbi51c2VyLWpvYiB7XG4gIGZvbnQtc2l6ZTogNC41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jbHIpO1xuICBvcGFjaXR5OiAwLjg7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIHRleHQtc2hhZG93OiAtNXB4IC01cHggMXB4IHZhcigtLXNoYWRvdyk7XG59XG5cbi5sZWFybi1tb3JlLWJ1dHRvbi13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jbHIpO1xuICB3aWR0aDogMTByZW07XG4gIGhlaWdodDogM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xufVxuXG4ubGVhcm4tbW9yZS1idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jbHIpO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNscik7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5sZWFybi1tb3JlLWJ1dHRvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgNHB4KTtcbn0iLCIuYWJvdXQtYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMnJlbTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmFib3V0LWNvbnRlbnQge1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgY29sb3I6IHZhcigtLWdyYXktY2xyKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAycmVtO1xuICBmbGV4OiAxO1xuICBtaW4td2lkdGg6IDI1cmVtO1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG4uYWJvdXQtc3BlY2lhbC10ZXh0IHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbn1cblxuLnByb2ZpbGUtaW1nLXdyYXBwZXIge1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogNDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbn1cblxuLnByb2ZpbGUtaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuXG4ucHJvZmlsZS1pbWc6aG92ZXIge1xuICAvKiBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNscik7ICovXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgLThweCk7XG59IiwiLnByb2plY3RzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTByZW07XG59XG5cbi5wcm9qZWN0LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ucHJvamVjdC1kZXRhaWxzIHtcbiAgd2lkdGg6IDIwcmVtO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDFyZW07XG59XG5cbi5wcm9qZWN0LWNhdGVnb3J5IHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbn1cblxuLnByb2plY3QtdGl0bGUge1xuICBjb2xvcjogdmFyKC0td2hpdGUtY2xyKTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5wcm9qZWN0LWRlc2Mge1xuICB3aWR0aDogMjJyZW07XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICBwYWRkaW5nOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBjb2xvcjogdmFyKC0tZ3JheS1jbHIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDExZjM4O1xuICBib3gtc2hhZG93OiAtNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnByb2plY3QtdGVjaC13cmFwcGVyIHtcbiAgY29sb3I6IHZhcigtLWdyYXktY2xyKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxcmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5wcm9qZWN0LWltYWdlLXdyYXBwZXIge1xuICBtaW4td2lkdGg6IDIwcmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9qZWN0LWRldGFpbHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnByb2plY3QtZGVzYyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucHJvamVjdC13cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMnJlbTtcbiAgfVxufVxuXG4ucHJvamVjdC1pbWFnZSB7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tcHJpbWFyeS1jbHIpO1xufVxuXG4ucHJvamVjdC1pbWFnZTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01cHgsIC04cHgpO1xufVxuXG4uc2VlLW1vcmUtYnV0dG9uLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNscik7XG4gIHdpZHRoOiAxMHJlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uc2VlLW1vcmUtYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNscik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtY2xyKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tcHJpbWFyeS1jbHIpO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uc2VlLW1vcmUtYnV0dG9uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCA0cHgpO1xufVxuXG4ucHJvamVjdC1saW5rcy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxLjVyZW07XG59XG5cbi5wcm9qZWN0LWxpbmsge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZS1jbHIpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xufVxuXG4uZ2l0aHViLWxvZ28ge1xuICB3aWR0aDogMjVweDtcbn0iLCIuY29udGFjdC1zZWN0aW9uLWJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDJyZW07XG59XG5cbi5zZWN0aW9uLWJvZHktaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLXdoaXRlLWNscik7XG59XG5cbi5zZWN0aW9uLWJvZHktbXNnIHtcbiAgd2lkdGg6IDcwJTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgY29sb3I6IHZhcigtLWdyYXktY2xyKTtcbn1cblxuLmNvbnRhY3QtYnV0dG9ucy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDJyZW07XG59XG5cbi5yZXN1bWUtYnV0dG9uLXdyYXBwZXIsXG4uZ21haWwtYnV0dG9uLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNscik7XG4gIHdpZHRoOiAxMHJlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucmVzdW1lLWJ1dHRvbixcbi5nbWFpbC1idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jbHIpO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNscik7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5yZXN1bWUtYnV0dG9uOmhvdmVyLFxuLmdtYWlsLWJ1dHRvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgNHB4KTtcbn1cblxuXG4uY29udGFjdC1jb250YWluZXItbXNnLFxuLnNvY2lhbC1jb250YWluZXItbXNnIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB2YXIoLS1ncmF5LWNscik7XG59XG5cbi5zb2NpYWwtYnV0dG9ucy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDJyZW07XG59XG5cbi5zb2NpYWwtYnV0dG9uIHtcbiAgd2lkdGg6IDIuNXJlbTtcbn0iLCIubWFpbi1jdXJzb3IsXG4uc2Vjb25kYXJ5LWN1cnNvciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tYWluLWN1cnNvciB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuXG4uc2Vjb25kYXJ5LWN1cnNvciB7XG4gIHdpZHRoOiAwLjc1cmVtO1xuICBoZWlnaHQ6IDAuNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwNUJGREI7XG59IiwiLyogSGFtYnVyZ2VyIG1lbnUgc3R5bGVzICovXG4uaGFtYnVyZ2VyLWJ0biB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmJhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbjogNnB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbiAgdHJhbnNpdGlvbjogMC40cztcbn1cblxuLyogTW9iaWxlIG5hdmlnYXRpb24gY29udGFpbmVyIHN0eWxlcyAqL1xuLm1vYmlsZS1uYXYtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jbHIpO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3JkZXI6IG5vbmU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLm1vYmlsZS1uYXYtY29udGFpbmVyIHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxLjVyZW07XG59XG5cbi5tb2JpbGUtbmF2LWNvbnRhaW5lciAqIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubW9iaWxlLW5hdi1jb250YWluZXIgYSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktY2xyKTtcbn1cblxuLm1vYmlsZS1uYXYtaXRlbSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHMgZWFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubW9iaWxlLW5hdi1pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jbHIpO1xuICBjb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jbHIpO1xufVxuXG4uY2xvc2UtYnRuIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNscik7XG4gIGp1c3RpZnktc2VsZjogZW5kO1xuICBhbGlnbi1zZWxmOiBzdGFydDtcbn1cblxuLyogTWVkaWEgcXVlcnkgZm9yIHNtYWxsIHNjcmVlbnMgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5oYW1idXJnZXItYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/