* {
  box-sizing: border-box;
}
:root {
  --box: 17px;
  --bg: 34, 46, 70;
  --bg2: #eee;
  --border: #ccc;
  --text: #222;
  --width: 960px;
}
a {
  color: #0366d6;
  text-decoration: none;
}
b {
  font-weight: bold;
}
a:hover {
  text-decoration: underline;
}
a:active,
a:hover {
  outline-width: 0;
}
li {
  margin-top: 0.25em;
}
li:first-child {
  margin-top: 0;
}
body {
  padding: 0;
  position: relative;
  margin: 0;
  background: rgb(var(--bg));
  color: #fff;
  font-family: "Open Sans", sans-serif;
}
html {
  padding: 0;
  margin: 0;
  justify-content: center;
}
code {
  background: rgba(27, 31, 35, 0.05);
  border-radius: 3px;
  font-family: SFMono-Regular, Consolas, Liberation Mono, Menlo, Courier,
    monospace;
  margin: 0;
  padding: 0.2em 0.4em;
}

.Box:after,
.Box:before {
  position: absolute;
  content: " ";
  border-left: calc(var(--box) / 2) solid transparent;
  border-right: calc(var(--box) / 2) solid transparent;
}
.Box:before {
  border-top: calc(var(--box) / 2) solid rgba(255, 255, 255, 0.1);
}
.Box:after {
  bottom: 0;
  border-bottom: calc(var(--box) / 2) solid rgba(0, 0, 0, 0.1);
}
.Word-overlay-mirror:after {
  content: " ";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  box-sizing: content-box;
  z-index: 10;
  background: linear-gradient(
    0deg,
    rgba(var(--bg), 1) 0%,
    rgba(var(--bg), 0.85) 65%,
    rgba(var(--bg), 0.5) 100%
  );
}
.Word-mirror-false {
  padding-top: 300px;
}
.Word-mirror-true {
  box-sizing: content-box;
  padding-bottom: 300px;
}
.Word + .Word {
  padding-top: 1px;
}
.Word-overlay {
  position: relative;
}
.Word-overlay:after {
  content: " ";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
}

div.wrapper {
  color: var(--text);
  margin: auto;
  height: 100%;
}

.banners {
  margin: 0 0 5rem;
  padding: 2.5rem 0 0;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.section-content {
  width: var(--width);
  margin: auto;
}
.banners:after {
  content: " ";
  display: block;
  background: var(--bg2);
  height: 1px;
  width: 100%;
  position: absolute;
  bottom: 0;
}
.banners li {
  width: 50%;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
  justify-content: center;
  flex-direction: column;
  border-bottom: 1px solid var(--border);
}
.banners li img {
  width: 400px;
  height: auto;
  transform: translateY(-50%);
  position: relative;
  top: 50%;
  display: block;
}
.banners li a {
  transition-property: transform;
  transition-duration: 0.1s;
}
.banners li a:hover {
  transform: scale(1.075);
}
.heading {
  text-transform: uppercase;
  font-family: "Yanone Kaffeesatz", sans-serif;
  font-weight: 300;
}
h2.heading {
  font-size: 2rem;
}
h1.heading {
  font-size: 3.5rem;
  text-align: center;
  background: rgb(var(--bg));
  position: relative;
  height: 6rem;
  line-height: 6.5rem;
  user-select: none;
  -moz-user-select: none;
}
section.projects h1.heading {
  color: #eee;
  z-index: 100;
  margin-top: -8.5rem;
  display: block;
}
h1.heading a {
  vertical-align: baseline;
  line-height: 1px;
  text-decoration: none;
}
h1 a {
  color: inherit;
  text-decoration: none;
}
a.uparrow,
a.arrow {
  display: block;
  --size: 1.9rem;
  position: absolute;
  margin-left: calc(var(--size) / -1);
  border: 0 solid transparent;
  border-left-width: var(--size);
  border-right-width: var(--size);
}
a.arrow {
  border-top: var(--size) solid rgb(var(--bg));
  left: 50%;
  top: 100%;
  margin-top: -2px;
}
a.uparrow {
  right: 1rem;
  margin-bottom: -2px;
  bottom: 0;
  border-bottom: var(--size) solid var(--bg2);
}
#projects h1.heading {
  position: relative;
}
#projects h1.heading:after {
  content: " ";
  display: block;
  height: 40px;
  background: var(--bg2);
  position: absolute;
  top: 100%;
  z-index: -10;
  width: 100%;
}

.banners li a {
  flex-grow: 1;
  height: 170px;
  display: inline-block;
}
html,
body {
  height: 100%;
}
#Animation-root {
  height: 100%;
  display: flex;
  align-content: center;
  justify-content: center;
}

section.about {
  background: rgb(var(--bg));
  color: var(--bg2);
}
#about {
  min-height: 100%;
}

#about h1.heading {
  box-sizing: content-box;
  margin: 0;
  background: var(--bg2);
  color: var(--text);
}
h1.heading,
#about-heading {
  margin-bottom: 2rem;
}
#about-heading {
  background: linear-gradient(to top, rgb(var(--bg)) 29%, var(--bg2) 30%);
}
#about-heading .container {
  width: 100%;
  background: rgb(var(--bg));
  padding-bottom: 40px;
}
#about-heading.fixed .container {
  position: fixed;
  bottom: 0;
  background: linear-gradient(
    to top,
    rgb(var(--bg)) 29%,
    rgba(var(--bg), 0) 30%
  );
}
#about-heading.fixed h1 {
  background: linear-gradient(
    to top,
    rgba(238, 238, 238, 1) 0,
    rgba(238, 238, 238, 0) 100%
  );
}
#about-heading.fixed.static .container {
  position: absolute;
  top: 100%;
  bottom: auto;
  margin-top: -20px;
}
#about a.arrow {
  border-top-color: var(--bg2);
}
#about a.uparrow {
  border-bottom-color: rgb(var(--bg));
}

#about .section-content {
  text-align: center;
}
#about .section-social {
  text-align: left;
  display: flex;
  justify-content: center;
}
#about .section-social li,
#about .section-social ul {
  margin-left: 0;
  padding-left: 0;
}
#about .section-social ul {
  margin-left: 1em;
  margin: 2rem 0 2rem 1rem;
}

#about .section-content a {
  color: var(--bg2);
}
#projects .section-content {
  overflow: hidden;
}
#projects .section-bg {
  background: var(--bg2);
}
.section-contact p,
.section-portrait p {
  margin: 0;
}

.section-portrait {
  display: flex;
  justify-content: center;
}
.section-portrait svg {
  display: block !important;
}
.portrait-container {
  position: relative;
}
.portrait-container img {
  transition: opacity 0.1s ease-in-out;
}
.portrait-container:hover img {
  opacity: 0.2;
}
.portrait-container:hover .portrait-by {
  opacity: 1;
  text-indent: 0;
}
.portrait-by {
  transition: opacity 0.1s ease-in;
  position: absolute;
  top: 50%;
  width: 100%;
  opacity: 0;
  text-indent: -2000em;
}

:root {
  --p: 400px;
}
#portrait-image {
  width: var(--p);
  height: var(--p);
  overflow: hidden;
  clip-path: circle(50%);
}
#portrait-image img {
  margin-top: -81px;
  margin-left: -81px;
  transition-duration: 0.1s;
  transition-timing-function: ease-in-out;
  transition-property: opacity, transform;
}
.portrait-container:hover img {
  transform: scale(0.825);
  opacity: 0.5;
}
.portrait-container {
  position: relative;
}
.portrait-container svg {
  position: absolute;
  top: -5px;
  left: -5px;
}
#portrait-mask {
  top: 0;
  opacity: 0;
}

#Animation-root {
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  #projects .section-content,
  .section-content {
    width: auto;
    margin: 0 1rem;
    padding: 0 0 1rem;
    overflow: visible;
  }
  #projects .section-content {
    padding-top: 0.25rem;
  }
  .banners {
    display: block;
    padding-top: 0;
  }
  .banners li {
    width: auto;
  }
  .banners li img {
    max-width: 90%;
    margin: auto;
    transform: none;
    position: static;
  }
  .banners li a {
    height: auto;
  }
  #about {
    padding-bottom: 2rem;
    overflow: hidden;
  }
  #Animation-root .Animation {
    transform: scale(0.5);
  }
}
@media screen and (max-width: 960px) and (orientation: landscape) {
  #Animation-root .Animation {
    transform: scale(0.5) translateY(-50%);
  }
}
@media screen and (max-width: 560px) {
  #about-heading .container {
    position: static !important;
  }
  section.other h2.heading {
    margin-bottom: 0.25rem;
    margin-top: 0;
  }
  section.other {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 2rem;
    margin-left: -1rem;
  }
  section.other ul {
    margin-left: -1rem;
  }

  #Animation-root .Animation {
    transform: scale(0.3) translateY(-50%);
  }
}
#projects h1.heading {
  background: transparent;
}

@media screen and (orientation: landscape) and (max-width: 560px) {
  #Animation-root .Animation {
    transform: scale(0.3) translateY(-100%);
  }
}

.spinner {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 1;
}

#Animation-root {
  visibility: hidden;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zdGF0aWMvbWFpbi5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSIsImZpbGUiOiJtYWluLmQwNDAzOTRhNzQ5M2JhMmJhN2Y1LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuOnJvb3Qge1xuICAtLWJveDogMTdweDtcbiAgLS1iZzogMzQsIDQ2LCA3MDtcbiAgLS1iZzI6ICNlZWU7XG4gIC0tYm9yZGVyOiAjY2NjO1xuICAtLXRleHQ6ICMyMjI7XG4gIC0td2lkdGg6IDk2MHB4O1xufVxuYSB7XG4gIGNvbG9yOiAjMDM2NmQ2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5hOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwO1xufVxubGkge1xuICBtYXJnaW4tdG9wOiAwLjI1ZW07XG59XG5saTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5ib2R5IHtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQ6IHJnYih2YXIoLS1iZykpO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5odG1sIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbmNvZGUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI3LCAzMSwgMzUsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGZvbnQtZmFtaWx5OiBTRk1vbm8tUmVndWxhciwgQ29uc29sYXMsIExpYmVyYXRpb24gTW9ubywgTWVubG8sIENvdXJpZXIsXG4gICAgbW9ub3NwYWNlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMmVtIDAuNGVtO1xufVxuXG4uQm94OmFmdGVyLFxuLkJveDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBib3JkZXItbGVmdDogY2FsYyh2YXIoLS1ib3gpIC8gMikgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogY2FsYyh2YXIoLS1ib3gpIC8gMikgc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uQm94OmJlZm9yZSB7XG4gIGJvcmRlci10b3A6IGNhbGModmFyKC0tYm94KSAvIDIpIHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cbi5Cb3g6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IGNhbGModmFyKC0tYm94KSAvIDIpIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi5Xb3JkLW92ZXJsYXktbWlycm9yOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgei1pbmRleDogMTA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAwZGVnLFxuICAgIHJnYmEodmFyKC0tYmcpLCAxKSAwJSxcbiAgICByZ2JhKHZhcigtLWJnKSwgMC44NSkgNjUlLFxuICAgIHJnYmEodmFyKC0tYmcpLCAwLjUpIDEwMCVcbiAgKTtcbn1cbi5Xb3JkLW1pcnJvci1mYWxzZSB7XG4gIHBhZGRpbmctdG9wOiAzMDBweDtcbn1cbi5Xb3JkLW1pcnJvci10cnVlIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHBhZGRpbmctYm90dG9tOiAzMDBweDtcbn1cbi5Xb3JkICsgLldvcmQge1xuICBwYWRkaW5nLXRvcDogMXB4O1xufVxuLldvcmQtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5Xb3JkLW92ZXJsYXk6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbmRpdi53cmFwcGVyIHtcbiAgY29sb3I6IHZhcigtLXRleHQpO1xuICBtYXJnaW46IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmJhbm5lcnMge1xuICBtYXJnaW46IDAgMCA1cmVtO1xuICBwYWRkaW5nOiAyLjVyZW0gMCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zZWN0aW9uLWNvbnRlbnQge1xuICB3aWR0aDogdmFyKC0td2lkdGgpO1xuICBtYXJnaW46IGF1dG87XG59XG4uYmFubmVyczphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogdmFyKC0tYmcyKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbn1cbi5iYW5uZXJzIGxpIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTtcbn1cbi5iYW5uZXJzIGxpIGltZyB7XG4gIHdpZHRoOiA0MDBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmJhbm5lcnMgbGkgYSB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbn1cbi5iYW5uZXJzIGxpIGE6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDc1KTtcbn1cbi5oZWFkaW5nIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbmgyLmhlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG59XG5oMS5oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAzLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiKHZhcigtLWJnKSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA2cmVtO1xuICBsaW5lLWhlaWdodDogNi41cmVtO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbn1cbnNlY3Rpb24ucHJvamVjdHMgaDEuaGVhZGluZyB7XG4gIGNvbG9yOiAjZWVlO1xuICB6LWluZGV4OiAxMDA7XG4gIG1hcmdpbi10b3A6IC04LjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuaDEuaGVhZGluZyBhIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBsaW5lLWhlaWdodDogMXB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5oMSBhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmEudXBhcnJvdyxcbmEuYXJyb3cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLS1zaXplOiAxLjlyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tc2l6ZSkgLyAtMSk7XG4gIGJvcmRlcjogMCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IHZhcigtLXNpemUpO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IHZhcigtLXNpemUpO1xufVxuYS5hcnJvdyB7XG4gIGJvcmRlci10b3A6IHZhcigtLXNpemUpIHNvbGlkIHJnYih2YXIoLS1iZykpO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogLTJweDtcbn1cbmEudXBhcnJvdyB7XG4gIHJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICBib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLXNpemUpIHNvbGlkIHZhcigtLWJnMik7XG59XG4jcHJvamVjdHMgaDEuaGVhZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiNwcm9qZWN0cyBoMS5oZWFkaW5nOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB6LWluZGV4OiAtMTA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYmFubmVycyBsaSBhIHtcbiAgZmxleC1ncm93OiAxO1xuICBoZWlnaHQ6IDE3MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5odG1sLFxuYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbn1cbiNBbmltYXRpb24tcm9vdCB7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuc2VjdGlvbi5hYm91dCB7XG4gIGJhY2tncm91bmQ6IHJnYih2YXIoLS1iZykpO1xuICBjb2xvcjogdmFyKC0tYmcyKTtcbn1cbiNhYm91dCB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbiNhYm91dCBoMS5oZWFkaW5nIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmcyKTtcbiAgY29sb3I6IHZhcigtLXRleHQpO1xufVxuaDEuaGVhZGluZyxcbiNhYm91dC1oZWFkaW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiNhYm91dC1oZWFkaW5nIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiKHZhcigtLWJnKSkgMjklLCB2YXIoLS1iZzIpIDMwJSk7XG59XG4jYWJvdXQtaGVhZGluZyAuY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYih2YXIoLS1iZykpO1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cbiNhYm91dC1oZWFkaW5nLmZpeGVkIC5jb250YWluZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgIHRvIHRvcCxcbiAgICByZ2IodmFyKC0tYmcpKSAyOSUsXG4gICAgcmdiYSh2YXIoLS1iZyksIDApIDMwJVxuICApO1xufVxuI2Fib3V0LWhlYWRpbmcuZml4ZWQgaDEge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgdG8gdG9wLFxuICAgIHJnYmEoMjM4LCAyMzgsIDIzOCwgMSkgMCxcbiAgICByZ2JhKDIzOCwgMjM4LCAyMzgsIDApIDEwMCVcbiAgKTtcbn1cbiNhYm91dC1oZWFkaW5nLmZpeGVkLnN0YXRpYyAuY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG4jYWJvdXQgYS5hcnJvdyB7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWJnMik7XG59XG4jYWJvdXQgYS51cGFycm93IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiKHZhcigtLWJnKSk7XG59XG5cbiNhYm91dCAuc2VjdGlvbi1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2Fib3V0IC5zZWN0aW9uLXNvY2lhbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuI2Fib3V0IC5zZWN0aW9uLXNvY2lhbCBsaSxcbiNhYm91dCAuc2VjdGlvbi1zb2NpYWwgdWwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuI2Fib3V0IC5zZWN0aW9uLXNvY2lhbCB1bCB7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG4gIG1hcmdpbjogMnJlbSAwIDJyZW0gMXJlbTtcbn1cblxuI2Fib3V0IC5zZWN0aW9uLWNvbnRlbnQgYSB7XG4gIGNvbG9yOiB2YXIoLS1iZzIpO1xufVxuI3Byb2plY3RzIC5zZWN0aW9uLWNvbnRlbnQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuI3Byb2plY3RzIC5zZWN0aW9uLWJnIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmcyKTtcbn1cbi5zZWN0aW9uLWNvbnRhY3QgcCxcbi5zZWN0aW9uLXBvcnRyYWl0IHAge1xuICBtYXJnaW46IDA7XG59XG5cbi5zZWN0aW9uLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uc2VjdGlvbi1wb3J0cmFpdCBzdmcge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLnBvcnRyYWl0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5wb3J0cmFpdC1jb250YWluZXIgaW1nIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW4tb3V0O1xufVxuLnBvcnRyYWl0LWNvbnRhaW5lcjpob3ZlciBpbWcge1xuICBvcGFjaXR5OiAwLjI7XG59XG4ucG9ydHJhaXQtY29udGFpbmVyOmhvdmVyIC5wb3J0cmFpdC1ieSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRleHQtaW5kZW50OiAwO1xufVxuLnBvcnRyYWl0LWJ5IHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICB0ZXh0LWluZGVudDogLTIwMDBlbTtcbn1cblxuOnJvb3Qge1xuICAtLXA6IDQwMHB4O1xufVxuI3BvcnRyYWl0LWltYWdlIHtcbiAgd2lkdGg6IHZhcigtLXApO1xuICBoZWlnaHQ6IHZhcigtLXApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwLXBhdGg6IGNpcmNsZSg1MCUpO1xufVxuI3BvcnRyYWl0LWltYWdlIGltZyB7XG4gIG1hcmdpbi10b3A6IC04MXB4O1xuICBtYXJnaW4tbGVmdDogLTgxcHg7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xufVxuLnBvcnRyYWl0LWNvbnRhaW5lcjpob3ZlciBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuODI1KTtcbiAgb3BhY2l0eTogMC41O1xufVxuLnBvcnRyYWl0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5wb3J0cmFpdC1jb250YWluZXIgc3ZnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC01cHg7XG4gIGxlZnQ6IC01cHg7XG59XG4jcG9ydHJhaXQtbWFzayB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuI0FuaW1hdGlvbi1yb290IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICNwcm9qZWN0cyAuc2VjdGlvbi1jb250ZW50LFxuICAuc2VjdGlvbi1jb250ZW50IHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwIDAgMXJlbTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAjcHJvamVjdHMgLnNlY3Rpb24tY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIH1cbiAgLmJhbm5lcnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG4gIC5iYW5uZXJzIGxpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuYmFubmVycyBsaSBpbWcge1xuICAgIG1heC13aWR0aDogOTAlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICAuYmFubmVycyBsaSBhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgI2Fib3V0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gICNBbmltYXRpb24tcm9vdCAuQW5pbWF0aW9uIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgI0FuaW1hdGlvbi1yb290IC5BbmltYXRpb24ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KSB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAjYWJvdXQtaGVhZGluZyAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIH1cbiAgc2VjdGlvbi5vdGhlciBoMi5oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgc2VjdGlvbi5vdGhlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICB9XG4gIHNlY3Rpb24ub3RoZXIgdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgfVxuXG4gICNBbmltYXRpb24tcm9vdCAuQW5pbWF0aW9uIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMykgdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuI3Byb2plY3RzIGgxLmhlYWRpbmcge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAjQW5pbWF0aW9uLXJvb3QgLkFuaW1hdGlvbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMpIHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG59XG5cbi5zcGlubmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAxO1xufVxuXG4jQW5pbWF0aW9uLXJvb3Qge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/